@font-face{font-family:Fraunces;font-style:italic;font-weight:380;font-display:swap;src:url(/assets/fraunces-italic-vietnamese-7qcvk0MT.woff2) format("woff2");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:Fraunces;font-style:italic;font-weight:380;font-display:swap;src:url(/assets/fraunces-italic-latin-ext-DqFrfdxC.woff2) format("woff2");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:Fraunces;font-style:italic;font-weight:380;font-display:swap;src:url(/assets/fraunces-italic-latin-DR5riGUD.woff2) format("woff2");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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fraunces-italic-vietnamese-7qcvk0MT.woff2) format("woff2");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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fraunces-italic-latin-ext-DqFrfdxC.woff2) format("woff2");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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fraunces-italic-latin-DR5riGUD.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:340;font-display:swap;src:url(/assets/fraunces-vietnamese-CyLwYqxY.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:340;font-display:swap;src:url(/assets/fraunces-latin-ext-D0uXyjCy.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:340;font-display:swap;src:url(/assets/fraunces-latin-BOz5zopO.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:420;font-display:swap;src:url(/assets/fraunces-vietnamese-CyLwYqxY.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:420;font-display:swap;src:url(/assets/fraunces-latin-ext-D0uXyjCy.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:420;font-display:swap;src:url(/assets/fraunces-latin-BOz5zopO.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:560;font-display:swap;src:url(/assets/fraunces-vietnamese-CyLwYqxY.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:560;font-display:swap;src:url(/assets/fraunces-latin-ext-D0uXyjCy.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:560;font-display:swap;src:url(/assets/fraunces-latin-BOz5zopO.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:640;font-display:swap;src:url(/assets/fraunces-vietnamese-CyLwYqxY.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:640;font-display:swap;src:url(/assets/fraunces-latin-ext-D0uXyjCy.woff2) format("woff2");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:Fraunces;font-style:normal;font-weight:640;font-display:swap;src:url(/assets/fraunces-latin-BOz5zopO.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAaAABIAAAAADMwAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVIEgJx4AdC9MEQgKhGSEAAsgADCDOgE2AiQDOgQgBYdGB4EUGw8LIxEmZHIexT8PYyJTH6s540K0vrtCWaIRpUzRCqKVgSh/33L3iSgiBkN7EeGRTTw85UW9X5WkwZF7tJBx0g3Cac+S8lfO/UPNN4h5WrZiW1TT4nbixDB3vt1UJciEG0hoUc5XuE5OKAqYvtaSRANO3rv/tVb/oBJpOuAlQEikTDqxv3uuFVOLvC6aVeM2NBS8cplGyFpZ1RkosWs55KTlc8eza3siAl1ACKUQAiHQNt10sd4GuaWgrYCaBYG2BSwg+XhrehjdJgND8D69SDvFvJJ0SaoENkV7xx5CYy2QaJlypoYnsMkAPC/FV/nf/18l/xv+I3HLBzdAWiC9jZFSCE0J41WYJ514oKBNBfgC5g2oGAkHKYX4m64rCymGIJCRooirSE8jQTTyiPQ9eWRhKi992skqVhXL+JV4UY6QEupjD/kvCxDK5z0YGrfsUuYfjQABEjLGywLjFfYCxhrKkp6RtW15IVJxX/GqZtFR9xYv+VOTr9mDrLim6l1byfqVJkoNXD8wlMSObPvNzPMA8Z3LC1Fgye9EyU1t3ajeKV/0ouFvFf28Uc0aAFTMxI2vwyuYB/LI0nGFPCarIoFtH26NnJutwaDVGtvSGVcYdspesU+v3O/QbmfPzu7tHdrb7drZ4XZNXOZIT22Xzs43p62V1+jtlPa+RKF29nemThriq+VTHyptQ6/tohdnqz1JbrycqAhyXp5FwA7W7VX2SKwGSG1E8pK76a3obHdqBHfonTUF3dXlucvtvs1Ut/Riq65Z+8UuZplnbnU/fatmyRfuLTahevtXfMialNlPz9X/YX3InZN1V/ntv2xl9fH+Gb86qqYJLNra50g5J2upIRzN0xyo0D3qQtfKj1t9XaT8rESJ6ybu9LkNJawTt6qkiGNea49QPzW14hy0e31NVBe27G5oFYUxg8LWJGts5vWrF0paN+m3r3OTKE3cKtUl/f/Q7mGP2k5J586AC0sfsZ/fJqmhuexCb91FDp6iZVMw9iWPzIoCKsOr9vYZLLghRbwLVBcQqPRmiqA+W6WAF7VYHpYhLZAfRTC38fLpba1zkz3/fkJgOQOwAphoujlWtLr9iCy7Y75/D3hxLRCa5o4YDnxx12XKnZdW8xwffa+T/9X0zlV0njyBweD9owcOHTh2n2FAHud8JQFzrt7/+PFb/z9+gWrZar9mPtORGfJlWLMw08XUJbNw2BcFN+w8BazvOcvp4+Mp5iNjx1grXfjjDbHQaFsg8w865aWZ4azb//nbiNW3z4b6lWXDvMxevjRbMMxufnvrnJ7/1lsG0vtsanX9+SbPe/OT9sQyyFJH9kETE422CTL/oF3y9OVK9Wbrjx9/R6z//fyuo5Ut5m+n812WtPPX1f3j+dVpxvMf596UQ+OTJw8cE9QsU6n8/++JyywnhmlHJyTGRcv8uMT4qDEJzQr540cu0xiSTHmWWpVIKad0lsb3l+Z/vrOp/vwBvcnwHyCQVlAf85sVNRjFf9NWy18C3rm8vQl45/bFz16aW+emiPwoKgkEn2Z12skn6P/wOYSJ9u20WvUMBf5uUN0zHgEAfC7Aq05gYJ5slpyeTTp6nK8bR9HC08mZwDA9FZj043fMVosnsbBYXIGlqXEcVhaJTRL7VojxmYJuNLHQj9+x1PUvVpp+xYaxPsaO5dyLXcs4DXuWsAX2rWQiDnS1/+ZQG9sgpGgyWdrQJIS4smFtkrWgCcm0ykPIEFb5AOvr0ua5EZIREk3sruRYNoeLhRBqJ+XBNpRfUAk5TouzilHr9FBRXohPoA3witRyrWIt+TU8FlcLIbk2rQIdS0gi0JFa8AXZUrrcE7Z9rvxyWEuqjyJknC1jCctY2tKFyllm49ySS1ct2WTYJedoTXV87+YpCLluLW8kODW7FLCMbEcD7sTpLVtpQfkiGDeJbW3tb20lWvzntJB3tx1I6Gdpx+lWty9CKmivAQbdPJ+PZMptjYUi3PMA87wcyWqRo4gyqmjI0YxWtKNTrb1PC+7AWu1HCIOXWzsNhawfzSf908vHlAfuLZXShddLrR2c1t3GkN63vQ3/MIvgz1kYfbtt2aVWaAAAAAA=) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-D2jMJ_bk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-greek-D2nYnAec.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-vietnamese-CNlsqbWb.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext-Bnd2h4Br.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/jetbrains-mono-latin-Db4Uuiha.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(data:font/woff2;base64,d09GMgABAAAAAAaAABIAAAAADMwAAAYdAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVIEgJx4AdC9MEQgKhGSEAAsgADCDOgE2AiQDOgQgBYdGB4EUGw8LIxEmZHIexT8PYyJTH6s540K0vrtCWaIRpUzRCqKVgSh/33L3iSgiBkN7EeGRTTw85UW9X5WkwZF7tJBx0g3Cac+S8lfO/UPNN4h5WrZiW1TT4nbixDB3vt1UJciEG0hoUc5XuE5OKAqYvtaSRANO3rv/tVb/oBJpOuAlQEikTDqxv3uuFVOLvC6aVeM2NBS8cplGyFpZ1RkosWs55KTlc8eza3siAl1ACKUQAiHQNt10sd4GuaWgrYCaBYG2BSwg+XhrehjdJgND8D69SDvFvJJ0SaoENkV7xx5CYy2QaJlypoYnsMkAPC/FV/nf/18l/xv+I3HLBzdAWiC9jZFSCE0J41WYJ514oKBNBfgC5g2oGAkHKYX4m64rCymGIJCRooirSE8jQTTyiPQ9eWRhKi992skqVhXL+JV4UY6QEupjD/kvCxDK5z0YGrfsUuYfjQABEjLGywLjFfYCxhrKkp6RtW15IVJxX/GqZtFR9xYv+VOTr9mDrLim6l1byfqVJkoNXD8wlMSObPvNzPMA8Z3LC1Fgye9EyU1t3ajeKV/0ouFvFf28Uc0aAFTMxI2vwyuYB/LI0nGFPCarIoFtH26NnJutwaDVGtvSGVcYdspesU+v3O/QbmfPzu7tHdrb7drZ4XZNXOZIT22Xzs43p62V1+jtlPa+RKF29nemThriq+VTHyptQ6/tohdnqz1JbrycqAhyXp5FwA7W7VX2SKwGSG1E8pK76a3obHdqBHfonTUF3dXlucvtvs1Ut/Riq65Z+8UuZplnbnU/fatmyRfuLTahevtXfMialNlPz9X/YX3InZN1V/ntv2xl9fH+Gb86qqYJLNra50g5J2upIRzN0xyo0D3qQtfKj1t9XaT8rESJ6ybu9LkNJawTt6qkiGNea49QPzW14hy0e31NVBe27G5oFYUxg8LWJGts5vWrF0paN+m3r3OTKE3cKtUl/f/Q7mGP2k5J586AC0sfsZ/fJqmhuexCb91FDp6iZVMw9iWPzIoCKsOr9vYZLLghRbwLVBcQqPRmiqA+W6WAF7VYHpYhLZAfRTC38fLpba1zkz3/fkJgOQOwAphoujlWtLr9iCy7Y75/D3hxLRCa5o4YDnxx12XKnZdW8xwffa+T/9X0zlV0njyBweD9owcOHTh2n2FAHud8JQFzrt7/+PFb/z9+gWrZar9mPtORGfJlWLMw08XUJbNw2BcFN+w8BazvOcvp4+Mp5iNjx1grXfjjDbHQaFsg8w865aWZ4azb//nbiNW3z4b6lWXDvMxevjRbMMxufnvrnJ7/1lsG0vtsanX9+SbPe/OT9sQyyFJH9kETE422CTL/oF3y9OVK9Wbrjx9/R6z//fyuo5Ut5m+n812WtPPX1f3j+dVpxvMf596UQ+OTJw8cE9QsU6n8/++JyywnhmlHJyTGRcv8uMT4qDEJzQr540cu0xiSTHmWWpVIKad0lsb3l+Z/vrOp/vwBvcnwHyCQVlAf85sVNRjFf9NWy18C3rm8vQl45/bFz16aW+emiPwoKgkEn2Z12skn6P/wOYSJ9u20WvUMBf5uUN0zHgEAfC7Aq05gYJ5slpyeTTp6nK8bR9HC08mZwDA9FZj043fMVosnsbBYXIGlqXEcVhaJTRL7VojxmYJuNLHQj9+x1PUvVpp+xYaxPsaO5dyLXcs4DXuWsAX2rWQiDnS1/+ZQG9sgpGgyWdrQJIS4smFtkrWgCcm0ykPIEFb5AOvr0ua5EZIREk3sruRYNoeLhRBqJ+XBNpRfUAk5TouzilHr9FBRXohPoA3witRyrWIt+TU8FlcLIbk2rQIdS0gi0JFa8AXZUrrcE7Z9rvxyWEuqjyJknC1jCctY2tKFyllm49ySS1ct2WTYJedoTXV87+YpCLluLW8kODW7FLCMbEcD7sTpLVtpQfkiGDeJbW3tb20lWvzntJB3tx1I6Gdpx+lWty9CKmivAQbdPJ+PZMptjYUi3PMA87wcyWqRo4gyqmjI0YxWtKNTrb1PC+7AWu1HCIOXWzsNhawfzSf908vHlAfuLZXShddLrR2c1t3GkN63vQ3/MIvgz1kYfbtt2aVWaAAAAAA=) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-cyrillic-D2jMJ_bk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-greek-D2nYnAec.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-vietnamese-CNlsqbWb.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-latin-ext-Bnd2h4Br.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/jetbrains-mono-latin-Db4Uuiha.woff2) format("woff2");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:Public Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/public-sans-italic-vietnamese-g07D6LoD.woff2) format("woff2");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:Public Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/public-sans-italic-latin-ext-airw8xxA.woff2) format("woff2");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:Public Sans;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/public-sans-italic-latin-DQXQCCUd.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/public-sans-vietnamese-QcOXL3yd.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/public-sans-latin-ext-NN8edoJ2.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/public-sans-latin-CcEC6YbM.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/public-sans-vietnamese-QcOXL3yd.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/public-sans-latin-ext-NN8edoJ2.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/public-sans-latin-CcEC6YbM.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/public-sans-vietnamese-QcOXL3yd.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/public-sans-latin-ext-NN8edoJ2.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/public-sans-latin-CcEC6YbM.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/public-sans-vietnamese-QcOXL3yd.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/public-sans-latin-ext-NN8edoJ2.woff2) format("woff2");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:Public Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/public-sans-latin-CcEC6YbM.woff2) format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-cyrillic-ext-BZqS78Vh.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-cyrillic-BPOQnLwE.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-greek-CSXCir80.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-vietnamese-DXRAFsjn.woff2) format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-latin-ext-DvegtFMK.woff2) format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-italic-latin-C7AOp61y.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-cyrillic-ext-B8zddFQN.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-cyrillic-Aqgj6y3t.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-greek-Ga9a9KcS.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-vietnamese-CP1XV24Z.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-latin-ext-ClEbFkHp.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-serif-4-latin-DuZxYNfE.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-cyrillic-ext-B8zddFQN.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-cyrillic-Aqgj6y3t.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-greek-Ga9a9KcS.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-vietnamese-CP1XV24Z.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-latin-ext-ClEbFkHp.woff2) format("woff2");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:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-serif-4-latin-DuZxYNfE.woff2) format("woff2");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{--bg: #0d0e12;--bg-2: #0b0c10;--panel: #141821;--panel-2: #181d27;--panel-3: #101319;--line: rgba(233, 229, 216, .07);--line-strong: rgba(233, 229, 216, .14);--ink: #eeeae0;--ink-dim: #a7a89f;--ink-faint: #7e7f78;--ink-ghost: #858780;--gold: #e7bb63;--gold-hi: #f2cd7e;--gold-soft: rgba(231, 187, 99, .12);--gold-line: rgba(231, 187, 99, .38);--flame: #e78673;--flame-hi: #f0a892;--flame-soft: rgba(231, 134, 115, .1);--flame-line: rgba(231, 134, 115, .3);--green: #83cf92;--red: #e78673;--ink-on-gold: #17130a;--ink-on-flame: #2a0f0a;--surface-off: #1b2028;--surface-open: #252a35;--track: #2b303c;--track-hi: #323848;--r: 12px;--r-lg: 14px;--measure: 40rem;--display: "Fraunces", Georgia, serif;--serif: var(--display);--prose: "Source Serif 4", Georgia, serif;--sans: "Public Sans", -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-back: cubic-bezier(.34, 1.4, .5, 1);--dur-1: .14s;--dur-2: .3s;--dur-3: .55s;--t-figure-xl: 84px;--lh-figure-xl: 1;--tr-figure-xl: -.02em;--t-d1: 56px;--lh-d1: 1.06;--tr-d1: -.025em;--t-d2: 40px;--lh-d2: 1.1;--tr-d2: -.02em;--t-d3: 32px;--lh-d3: 1.14;--tr-d3: -.018em;--t-d4: 26px;--lh-d4: 1.2;--tr-d4: -.015em;--t-d5: 21px;--lh-d5: 1.28;--tr-d5: -.012em;--t-d6: 17px;--lh-d6: 1.35;--tr-d6: -.008em;--t-p1: 19px;--lh-p1: 1.6;--t-p2: 17px;--lh-p2: 1.65;--t-p3: 15px;--lh-p3: 1.6;--t-u1: 15px;--lh-u1: 1.4;--t-u2: 14px;--lh-u2: 1.4;--t-u3: 13px;--lh-u3: 1.38;--t-u4: 12px;--lh-u4: 1.35;--t-u5: 11px;--lh-u5: 1.3;--w-regular: 400;--w-medium: 500;--w-display: 520;--w-strong: 600;--tr-display: -.02em;--tr-tight: -.012em;--tr-none: 0;--tr-label: .1em;--tr-caps: .16em;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s7: 32px;--s8: 40px;--s9: 48px;--s10: 64px;--s11: 96px;--r-xs: 4px;--r-sm: 8px;--r-xl: 20px;--r-pill: 999px;--tabbar-h: 56px}*{margin:0;padding:0;box-sizing:border-box}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-reveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-iteration-count:1!important;animation-delay:0ms!important;transition-property:opacity,color,background-color,border-color,fill!important;transition-duration:var(--dur-1)!important}.net-banner,.consent-banner,.modal,.modal-bg,.err,.feedback,.solved-in,.burst-mark,.burst-xp,.burst-streak,.crest-stars .star,.crest-line,.crest-xp,.crest-days i.on,.mark-in{animation-name:fade-in!important;animation-duration:var(--dur-1)!important}.hero-ladder .hl-fill{animation:none!important;transform:scaleY(1)!important}.burst-rays line{animation:none!important;opacity:0!important}}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--t-u1);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>");background-size:140px 140px}@media (forced-colors: active){body:after{display:none}}.app{position:relative;min-height:100%;isolation:isolate;background-color:var(--bg);background-image:radial-gradient(70vmax 34vmax at 16% 0%,rgba(231,187,99,.06),transparent 66%);background-repeat:no-repeat}::selection{background:#e7bb6347;color:#fff}h1,h2,h3,.serif{font-family:var(--serif);font-weight:var(--w-display);letter-spacing:var(--tr-tight);line-height:1.14;font-optical-sizing:auto}h1{font-variation-settings:"opsz" 96}button{font-family:inherit;cursor:pointer;background:none}input,select{font-family:inherit}a{color:var(--gold);text-decoration:none}.katex{font-size:1.04em}.katex .mord.text{font-family:var(--prose)}.tex-block{margin:var(--s5) 0;overflow-x:auto;padding:var(--s1) 0}.tex-block .katex-display{margin:0}.wrap{max-width:1120px;margin:0 auto;padding:0 var(--s7)}.wrap-narrow{max-width:720px;margin:0 auto;padding:0 var(--s7)}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center}.boot-mark{font-family:var(--serif);font-style:italic;font-size:var(--t-d1);color:var(--gold);animation:boot-pulse 1.3s var(--ease) infinite}@keyframes boot-pulse{0%,to{opacity:.35;transform:scale(.94)}50%{opacity:1;transform:scale(1)}}.crash{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--s8) var(--s6);max-width:520px;margin:0 auto}.crash-mark{font-family:var(--serif);font-style:italic;font-size:var(--t-d1);color:var(--gold);margin-bottom:var(--s5)}.crash h1{font-size:var(--t-d3);margin-bottom:var(--s3);letter-spacing:var(--tr-display)}.crash p{color:var(--ink-dim);font-size:var(--t-u1);margin-bottom:var(--s7)}.crash-actions{display:flex;gap:var(--s3);flex-wrap:wrap;justify-content:center}.net-banner{position:fixed;left:50%;bottom:22px;z-index:200;display:flex;align-items:center;gap:var(--s3);background:var(--panel-2);border:1px solid var(--red);color:var(--ink);font-size:var(--t-u3);padding:var(--s3) var(--s4);border-radius:var(--r);opacity:1;transform:translate(-50%) translateY(0);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}@starting-style{.net-banner{opacity:0;transform:translate(-50%) translateY(14px)}}.net-banner[data-motion=out]{opacity:0;transform:translate(-50%) translateY(8px);transition-duration:.15s;pointer-events:none}.net-banner .dot{width:8px;height:8px;border-radius:50%;background:var(--red);flex-shrink:0;animation:pulse-dot 1.4s ease-in-out infinite}.net-banner button{background:none;border:1px solid var(--line-strong);color:var(--ink);border-radius:var(--r-sm);padding:var(--s1) var(--s3);font-size:var(--t-u4);font-weight:var(--w-strong)}@media (hover: hover) and (pointer: fine){.net-banner button:hover{border-color:var(--gold);color:var(--gold)}}@keyframes pulse-dot{0%,to{opacity:.4}50%{opacity:1}}.consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:300;display:flex;align-items:center;gap:var(--s5);flex-wrap:wrap;background:var(--panel-3);border-top:1px solid var(--line-strong);padding:var(--s4) var(--s6);opacity:1;transform:translateY(0);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}@starting-style{.consent-banner{opacity:0;transform:translateY(16px)}}.consent-banner[data-motion=out]{opacity:0;transform:translateY(10px);transition-duration:.15s;pointer-events:none}.consent-banner p{flex:1 1 420px;min-width:240px;margin:0;color:var(--ink-dim);font-size:var(--t-u3);line-height:1.65}.consent-banner button{flex:none}.topnav{position:sticky;top:0;z-index:40;background:#0d0e12db;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.topnav-in{max-width:1120px;margin:0 auto;padding:0 var(--s7);display:flex;align-items:center;gap:var(--s6);height:66px}.brand{font-family:var(--serif);font-size:var(--t-d5);font-weight:var(--w-strong);color:var(--ink);display:flex;align-items:baseline;gap:var(--s1);letter-spacing:var(--tr-tight);transition:opacity var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.brand:hover{opacity:.85}}.brand .lam{font-style:italic;margin-right:var(--s2);font-size:var(--t-d4);color:var(--gold);display:inline-block;padding:0 .08em}.navlinks{display:flex;gap:var(--s1);margin-left:var(--s3)}.navlink{position:relative;background:none;border:none;color:var(--ink-faint);font-size:var(--t-u3);padding:var(--s2) var(--s4);border-radius:var(--r);font-weight:var(--w-medium);transition:color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.navlink:hover{color:var(--ink)}}.navlink.active{color:var(--ink)}.navlink.active:after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:1px;background:var(--line-strong)}.nav-right{margin-left:auto;display:flex;align-items:center;gap:var(--s4)}.streak-pill{display:flex;align-items:center;gap:var(--s2);font-family:var(--mono);font-size:var(--t-u3);color:var(--ink-dim);border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--s2) var(--s4)}.streak-pill b{color:var(--flame);font-weight:var(--w-strong)}.xp-pill{color:var(--ink-dim);font-family:var(--mono);font-size:var(--t-u3)}.xp-pill b{color:var(--gold)}.btn{border:none;border-radius:var(--r);padding:var(--s4) var(--s6);font-size:var(--t-u1);font-weight:var(--w-strong);transition:background-color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease-out)}.btn-gold{background:var(--gold);color:var(--ink-on-gold);box-shadow:0 18px 44px -26px #e7bb63b3}@media (hover: hover) and (pointer: fine){.btn-gold:hover{background:var(--gold-hi)}}.btn-ghost{background:none;border:1px solid var(--line-strong);color:var(--ink-dim)}@media (hover: hover) and (pointer: fine){.btn-ghost:hover{border-color:var(--gold-line);color:var(--gold)}}.btn-quiet{background:var(--panel-2);color:var(--ink);border:1px solid var(--line)}@media (hover: hover) and (pointer: fine){.btn-quiet:hover{background:var(--panel);border-color:var(--line-strong)}}.btn-danger{background:var(--red);color:var(--ink-on-flame)}@media (hover: hover) and (pointer: fine){.btn-danger:hover{background:var(--flame-hi)}}.btn:active:not(:disabled){transform:scale(.97);transition-duration:.06s}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.btn-big{padding:var(--s4) var(--s7);font-size:var(--t-u1)}.hero{position:relative;overflow:hidden;padding:var(--s10) 0 var(--s2)}.constellation{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.28;-webkit-mask-image:radial-gradient(120% 90% at 50% 42%,#000 30%,transparent 78%);mask-image:radial-gradient(120% 90% at 50% 42%,#000 30%,transparent 78%)}.hero-in{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:0 var(--s7);display:flex;align-items:center;gap:var(--s10)}.hero-copy{flex:1;min-width:0}.hero-kicker{display:inline-block;font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s6)}.hero h1{font-size:clamp(40px,5.4vw,68px);font-weight:var(--w-medium);line-height:1;letter-spacing:var(--tr-display);max-width:13ch}.hero h1 em{font-style:italic;font-weight:var(--w-medium);color:var(--gold)}.hero-sub{color:var(--ink-dim);font-size:var(--t-p1);line-height:1.65;max-width:46ch;margin:var(--s6) 0 var(--s7)}.hero-cta{display:flex;align-items:center;gap:var(--s5);flex-wrap:wrap}.hero-cta-note{color:var(--ink-faint);font-size:var(--t-u3)}.hero-login{background:none;border:none;color:var(--ink-dim);font-size:var(--t-u2);padding:0;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line-strong)}@media (hover: hover) and (pointer: fine){.hero-login:hover{color:var(--gold)}}.hero-ladder{width:380px;flex-shrink:0;position:relative;padding-left:var(--s6)}.hero-ladder .hl-track{position:absolute;left:4px;top:8px;bottom:8px;width:2px;background:var(--line-strong);overflow:hidden}.hero-ladder .hl-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gold);transform-origin:top;transform:scaleY(0);animation:hl-fill 1.5s var(--ease-out) .25s forwards}@keyframes hl-fill{to{transform:scaleY(1)}}.hl-rung{position:relative;display:flex;align-items:baseline;gap:var(--s3);padding:var(--s2) 0;color:var(--ink-dim);font-size:var(--t-u2)}.hl-rung:before{content:"";position:absolute;left:-21px;top:50%;transform:translate(-50%,-50%);width:9px;height:9px;border-radius:50%;background:var(--accent);border:2px solid var(--bg)}.hl-rung .hl-name{font-family:var(--serif);font-size:var(--t-d6);color:var(--ink)}.hl-rung .hl-band{margin-left:auto;font-size:var(--t-u4);color:var(--ink-ghost)}.hl-rung.dim{opacity:.45}.proof-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4) var(--s6);padding:var(--s6) 0 0;margin-top:var(--s7);border-top:1px solid var(--line)}.proof-item{display:flex;align-items:baseline;gap:var(--s2)}.proof-item b{font-family:var(--serif);font-size:var(--t-d4);color:var(--ink);line-height:1;font-weight:var(--w-medium)}.proof-item>span{font-size:var(--t-u3);color:var(--ink-faint)}.shot{margin:0}.shot picture{display:block}.shot img{display:block;width:100%;height:auto;border:1px solid var(--line-strong);border-radius:var(--r);aspect-ratio:1600 / 1048}.shot figcaption{margin-top:var(--s4);color:var(--ink-dim);max-width:var(--measure);font-size:var(--t-p2);line-height:1.65}@media (max-width: 700px){.shot img{aspect-ratio:780 / 1440}.shot picture{max-width:320px;margin:0 auto}}.section{padding-top:var(--s11)}.section h2{font-size:clamp(28px,3.6vw,38px);letter-spacing:var(--tr-display);margin-bottom:var(--s3);max-width:var(--measure)}.section .sub{color:var(--ink-dim);margin-bottom:var(--s7);max-width:var(--measure);font-size:var(--t-p2)}.section h2+:not(.sub){margin-top:var(--s6)}.prose-block{max-width:var(--measure)}.prose-block p{color:var(--ink-dim);font-size:var(--t-p1);line-height:1.65}.prose-block p+p{margin-top:var(--s7)}.loop,.loop+.shot-section{padding-top:var(--s10)}.olymp-teaser{display:flex;gap:var(--s9);align-items:flex-start}.olymp-teaser .ot-copy{flex:1}.olymp-teaser h2{font-size:clamp(26px,2.5vw,32px)}.olymp-teaser .ot-problem{flex:1.15;border-left:2px solid var(--gold-line);padding:var(--s1) 0 var(--s1) var(--s6)}.ot-src{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--gold);margin-bottom:var(--s3)}.ot-statement{font-size:var(--t-p2);line-height:1.65;color:var(--ink)}.ot-note{margin-top:var(--s4);font-size:var(--t-u3);color:var(--ink-faint)}.ladder{display:flex;flex-direction:column}.rung{position:relative;width:100%;text-align:left;display:flex;align-items:center;gap:var(--s5);background:none;border:none;border-top:1px solid var(--line);padding:var(--s4) var(--s1);color:var(--ink);transition:background-color var(--dur-1) var(--ease)}.rung:last-child{border-bottom:1px solid var(--line)}@media (hover: hover) and (pointer: fine){.rung:hover{background:#ffffff05}}.rung .num{font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-ghost);width:22px;flex-shrink:0}.rung .rung-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:var(--accent)}.rung .nm{font-family:var(--serif);font-size:var(--t-d6)}.rung .bd{margin-left:auto;color:var(--ink-faint);font-size:var(--t-u4);text-align:right}.rung .rung-arrow{color:var(--ink-faint);font-size:var(--t-u1);opacity:0;transform:translate(-6px);transition:opacity var(--dur-1) var(--ease),transform var(--dur-1) var(--ease-out)}@media (hover: hover) and (pointer: fine){.rung:hover .rung-arrow{opacity:1;transform:translate(0)}}.land-cta{text-align:center;padding:var(--s11) var(--s7) var(--s10)}.land-cta h2{margin-bottom:var(--s5)}.land-cta-note{color:var(--ink-faint);font-size:var(--t-u3);margin-top:var(--s5)}.sig-note{max-width:46ch;margin:var(--s8) auto 0;font-family:var(--serif);font-style:italic;font-size:var(--t-u1);line-height:1.65;color:var(--ink-dim)}.sig-note a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.sig-note a:hover{color:var(--gold)}.hand-rule{display:block;width:15ch;max-width:220px;height:11px;margin:var(--s1) 0 var(--s6);color:var(--gold);opacity:.55;overflow:visible}.hero-br{display:none}@media (min-width: 640px){.hero-br{display:inline}}.onb-shell{display:flex;align-items:flex-start;justify-content:center;gap:var(--s11);max-width:1120px;margin:0 auto;padding:0 var(--s7)}.onb{max-width:520px;width:520px;margin:0 auto;padding:var(--s10) var(--s6) var(--s11)}.onb-aside{width:300px;flex-shrink:0;position:sticky;top:90px;padding-top:var(--s11)}.onb-aside-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.onb-aside-lead{color:var(--ink-dim);font-size:var(--t-p3);line-height:1.65;margin-bottom:var(--s6)}.onb-ladder{position:relative;padding-left:var(--s6)}.onb-ladder:before{content:"";position:absolute;left:4px;top:10px;bottom:10px;width:2px;background:var(--line)}.onb-rung{position:relative;display:flex;align-items:baseline;gap:var(--s3);padding:var(--s2) 0;opacity:.3;transition:opacity var(--dur-3) var(--ease)}.onb-rung.on{opacity:1}.onb-rung-dot{position:absolute;left:-17px;top:50%;transform:translate(-50%,-50%);width:7px;height:7px;border-radius:50%;background:var(--accent);border:2px solid var(--bg)}.onb-rung-name{font-family:var(--serif);font-size:var(--t-u2);color:var(--ink);white-space:nowrap}.onb-rung-band{margin-left:auto;font-size:var(--t-u5);color:var(--ink-ghost);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:var(--s3)}.onb-aside-figs{display:flex;gap:var(--s6);margin-top:var(--s7);padding-top:var(--s6);border-top:1px solid var(--line)}.onb-aside-figs>div{display:flex;flex-direction:column;gap:var(--s1)}.onb-aside-figs b{font-family:var(--serif);font-size:var(--t-d5);color:var(--ink);font-weight:var(--w-medium)}.onb-aside-figs span{font-size:var(--t-u5);color:var(--ink-faint)}@media (max-width: 1080px){.onb-shell{gap:0;padding:0}.onb-aside{display:none}.onb{width:auto}}.onb-step{font-family:var(--mono);font-size:var(--t-u4);letter-spacing:var(--tr-caps);color:var(--ink-faint);text-transform:uppercase;margin-bottom:var(--s4)}.onb h2{font-size:var(--t-d3);margin-bottom:var(--s2)}.onb .lead{color:var(--ink-dim);margin-bottom:var(--s7)}.field{margin-bottom:var(--s5)}.field label{display:block;font-size:var(--t-u3);font-weight:var(--w-strong);color:var(--ink-dim);margin-bottom:var(--s2)}.field input,.field select{width:100%;background:var(--panel);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--r);padding:var(--s3) var(--s4);font-size:var(--t-u1);outline:none;transition:border-color var(--dur-1) var(--ease)}.field input:focus,.field select:focus{border-color:var(--gold)}.field input.code-input{font-family:var(--mono);font-size:var(--t-d4);letter-spacing:var(--tr-caps);text-align:center;padding:var(--s4) var(--s4);text-indent:.42em;font-weight:var(--w-strong)}.field input.code-input::placeholder{color:var(--ink-ghost);letter-spacing:var(--tr-caps)}.err{color:var(--red);font-size:var(--t-u2);margin:var(--s3) 0;animation:slide-reveal var(--dur-2) var(--ease-out)}.helper-text{margin-top:var(--s6);font-size:var(--t-u2);color:var(--ink-faint)}.helper-text+.helper-text{margin-top:var(--s3)}.notice{display:flex;gap:var(--s3);align-items:flex-start;background:var(--flame-soft);border:1px solid var(--flame-line);border-radius:var(--r);padding:var(--s4) var(--s4);margin:var(--s4) 0;font-size:var(--t-u3);color:var(--ink-dim);line-height:1.65}.notice b{color:var(--ink)}.notice-icon{color:var(--red);font-size:var(--t-u1);flex:none;line-height:1.3}.onb-nav{display:flex;gap:var(--s3);margin-top:var(--s7)}.onb-nav .spacer{flex:1}.progressbar{height:3px;background:var(--panel-2);margin-bottom:var(--s8);overflow:hidden}.progressbar>div{height:100%;width:100%;background:var(--gold);transform-origin:left;transform:scaleX(var(--fill, 0));transition:transform var(--dur-3) var(--ease-out)}.chiprow{display:flex;flex-wrap:wrap;gap:var(--s2)}.chip{border:1px solid var(--line-strong);background:none;color:var(--ink);border-radius:var(--r-xl);padding:var(--s2) var(--s4);font-size:var(--t-u2);transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.chip:hover{border-color:var(--gold-line)}}.chip.on{background:var(--gold);color:var(--ink-on-gold);border-color:var(--gold);font-weight:var(--w-strong)}.ratewrap{display:flex;align-items:center;gap:var(--s4)}.ratewrap input[type=range]{flex:1;accent-color:var(--gold)}.rateval{font-family:var(--serif);font-size:var(--t-d3);color:var(--ink);width:52px;text-align:center}.quiz-q{border-top:1px solid var(--line);padding:var(--s6) 0}.quiz-q .qs{margin-bottom:var(--s4);font-size:var(--t-u1)}.climb{display:flex;align-items:flex-start;gap:0;padding-bottom:var(--s11)}.climb-main{flex:1;min-width:0;padding:var(--s9) var(--s8) 0 0}.climb-rail{width:340px;flex-shrink:0;border-left:1px solid var(--line);padding:var(--s9) 0 0 var(--s7);align-self:stretch}.climb-head h1{font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display)}.climb-sub{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);margin:var(--s3) 0 var(--s6);max-width:60ch}.path{position:relative;padding-left:var(--s9)}.path-track{position:absolute;left:17px;top:10px;bottom:10px;width:2px;background:var(--line-strong);overflow:hidden}.path-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gold);transform-origin:top;transition:transform .42s var(--ease-out)}.lvl{position:relative}.lvl+.lvl{margin-top:var(--s1)}.node{position:absolute;left:-52px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 16%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--bg));color:var(--accent);font-family:var(--mono);font-size:var(--t-u3)}.node.done{background:var(--accent);border-color:var(--accent);color:var(--bg)}.lvl-row{position:relative;display:flex;align-items:center;gap:var(--s4);min-height:56px;padding:var(--s2) 0;border-bottom:1px solid var(--line)}.lvl-name{font-family:var(--serif);font-size:var(--t-d6)}.lvl-band{color:var(--ink-ghost);font-size:var(--t-u4)}.lvl-tally{margin-left:auto;font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-faint);font-variant-numeric:tabular-nums}.lvl-tally .st{color:var(--accent);letter-spacing:1px}.lvl.current .lvl-row{border-bottom:none}.lvl.current .lvl-name{font-size:var(--t-d5)}.lvl-lessons{padding:var(--s1) 0 var(--s6);border-bottom:1px solid var(--line)}.lesson-row{position:relative;width:100%;text-align:left;display:flex;align-items:center;gap:var(--s4);background:none;border:1px solid transparent;border-radius:var(--r);padding:var(--s3) var(--s4);color:var(--ink-dim);font-size:var(--t-u2);transition:color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}.lesson-row:before{content:"";position:absolute;left:-39px;top:50%;margin-top:-var(--s1);width:7px;height:7px;border-radius:50%;background:var(--panel-2);border:1px solid var(--line-strong)}.lesson-row.done:before{background:var(--accent);border-color:var(--accent)}@media (hover: hover) and (pointer: fine){.lesson-row:hover:not(:disabled){color:var(--ink);background:#ffffff05}}.lesson-row .lr-title{display:block;font-family:var(--serif);font-size:var(--t-d6);color:var(--ink)}.lesson-row .lr-meta{margin-left:auto;font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);display:flex;align-items:center;gap:var(--s3);flex-shrink:0}.lesson-row .lr-stars{color:var(--accent);letter-spacing:1.5px}.lesson-row:disabled{opacity:.45;cursor:default}.lesson-row.lit{border-color:var(--gold-line);background:var(--gold-soft);color:var(--ink);padding:var(--s5) var(--s5);align-items:center}.lesson-row.lit:before{width:14px;height:14px;margin-top:-var(--s2);left:-42px;background:var(--gold);border-color:var(--gold);animation:lit-pulse 2.2s var(--ease) 2}@keyframes lit-pulse{0%,to{box-shadow:0 0 #e7bb6380}60%{box-shadow:0 0 0 8px #e7bb6300}}.lesson-row.lit .lr-title{font-size:var(--t-d6)}.lesson-row.lit .lr-sub{display:block;color:var(--ink-dim);font-size:var(--t-u3);margin-top:var(--s1)}.lesson-row.lit .lr-go{margin-left:auto;flex-shrink:0}.lvl.future{opacity:var(--dim, .4)}.lvl.future .lvl-row{min-height:48px}.lvl.summit{opacity:.75}.lvl-locktag{margin-left:auto;font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--s1) var(--s3)}.rail-block{padding:var(--s6) 0;border-bottom:1px solid var(--line)}.rail-block:first-child{padding-top:0}.rail-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s4)}.rail-head{display:flex;align-items:center;gap:var(--s4)}.rail-head .ic-flame{color:var(--flame)}.rail-num{font-family:var(--serif);font-size:var(--t-d2);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}.rail-num-k{color:var(--ink-faint);font-size:var(--t-u3)}.streak-days{display:flex;gap:var(--s1);margin:var(--s5) 0 var(--s3)}.streak-days i{flex:1;height:26px;border-radius:var(--r-xs);background:var(--panel-2);display:block}.streak-days i.on{background:var(--flame)}.streak-days i.today{background:none;border:1px solid var(--flame-line)}.rail-line{color:var(--ink-dim);font-size:var(--t-u3);line-height:1.65}.rail-line b{color:var(--ink)}.rank-ring{width:78px;height:78px;border-radius:50%;flex-shrink:0;background:conic-gradient(var(--gold) var(--pct),var(--panel-2) 0);display:block;position:relative}.rank-ring:after{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border-radius:50%;background:var(--bg)}.rank-ring .rr-num{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:78px;height:78px;line-height:78px;text-align:center;font-family:var(--serif);font-size:var(--t-d5);color:var(--gold);font-variant-numeric:tabular-nums}.rank-title{font-family:var(--serif);font-size:var(--t-d6);margin-bottom:var(--s1)}.mastered-list{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}.mastered-chip{font-size:var(--t-u4);padding:var(--s1) var(--s3);border-radius:var(--r-xl);border:1px solid var(--line-strong);color:var(--ink-dim)}.mastered-chip .ml{color:var(--ink-ghost);font-size:var(--t-u5)}.upsell{margin-top:var(--s6);border:1px solid var(--line);border-radius:var(--r);padding:var(--s5)}.upsell h4{font-family:var(--serif);font-size:var(--t-d6);font-weight:var(--w-medium);margin-bottom:var(--s2)}.upsell p{font-size:var(--t-u3);color:var(--ink-dim);line-height:1.65;margin-bottom:var(--s4)}.upsell button{background:none;border:1px solid var(--line-strong);color:var(--ink-dim);border-radius:var(--r-sm);padding:var(--s2) var(--s4);font-size:var(--t-u3);font-weight:var(--w-strong);width:100%;transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.upsell button:hover{border-color:var(--gold-line);color:var(--gold)}}.rail-focus{margin-top:var(--s4);font-size:var(--t-u3);color:var(--ink-faint);line-height:1.65}.focus-topics{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s3) 0}.focus-chip{font-size:var(--t-u4);padding:var(--s1) var(--s3);border-radius:var(--r-xl);border:1px solid var(--line);color:var(--ink-dim)}.record-pg{padding-top:var(--s9);padding-bottom:var(--s11);max-width:920px}.record-pg>h1{font-family:var(--display);font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s7)}.rec-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.rec-note{font-family:var(--prose);font-size:var(--t-p3);line-height:1.5;color:var(--ink-ghost);margin-top:var(--s3);max-width:40ch}.rec-body{font-family:var(--prose);font-size:var(--t-p3);line-height:1.65;color:var(--ink-dim);margin-bottom:var(--s4)}.rec-headline{display:grid;grid-template-columns:repeat(3,1fr);gap:0 var(--s7);padding-bottom:var(--s7);border-bottom:1px solid var(--line)}.rec-metric+.rec-metric{padding-left:var(--s7);border-left:1px solid var(--line)}.rec-fig{font-family:var(--display);font-size:var(--t-d1);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}.rec-gauge{display:flex;gap:var(--s1);margin-top:var(--s4)}.rec-gauge .rg{flex:1;height:4px;border-radius:var(--r-xl);background:var(--panel-2)}.rec-gauge .rg.on{background:var(--gold)}.rec-block{padding:var(--s7) 0;border-bottom:1px solid var(--line)}.rec-frontier{display:flex;flex-direction:column;gap:var(--s3);max-width:460px}.rf-row{display:flex;align-items:center;gap:var(--s4)}.rf-name{width:130px;flex:none;font-family:var(--display);font-size:var(--t-u1);color:var(--ink)}.rf-bar{display:flex;gap:var(--s1);flex:1}.rf-tick{flex:1;height:8px;border-radius:var(--r-xs);background:var(--panel-2)}.rf-tick.on{background:var(--gold)}.rf-val{width:44px;text-align:right;flex:none;font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-ghost)}.rec-rank{padding:var(--s6) 0;border-bottom:1px solid var(--line);font-size:var(--t-u2);color:var(--ink-faint)}.rec-rank b{color:var(--ink-dim);font-weight:var(--w-medium)}.rec-rank-next{color:var(--ink-ghost)}.rec-section{display:flex;gap:var(--s7);align-items:flex-start;padding:var(--s8) 0;border-bottom:1px solid var(--line)}.rec-slabel{width:210px;flex:none}.rec-slabel h3{font-family:var(--display);font-size:var(--t-d6);font-weight:var(--w-medium);margin-bottom:var(--s2)}.rec-slabel p{font-family:var(--prose);font-size:var(--t-u3);line-height:1.65;color:var(--ink-ghost)}.rec-scol{flex:1;min-width:0;border:1px solid var(--line);border-radius:var(--r);padding:var(--s2) var(--s5) var(--s5)}.rec-actions{display:flex;gap:var(--s3);flex-wrap:wrap;margin-top:var(--s5)}.ref-link{display:flex;gap:var(--s3);align-items:stretch;margin:var(--s5) 0 var(--s1)}.ref-link input{flex:1;min-width:0;background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:var(--s3) var(--s3);color:var(--ink-dim);font-family:var(--mono);font-size:var(--t-u3)}.ref-link input:focus{outline:none;border-color:var(--line-strong);color:var(--ink)}.ref-link .btn{flex:none}.ref-stats{margin-top:var(--s1)}.ref-stats .prof-line:last-child{border-bottom:none}@media (max-width: 520px){.ref-link{flex-direction:column}}.forge-start{display:flex;flex-direction:column;align-items:flex-start;margin:var(--s2) 0 var(--s9)}.forge-go{font-size:var(--t-u1);padding:var(--s4) var(--s7)}.forge-shapes{display:inline-flex;margin-top:var(--s5);border:1px solid var(--line-strong);border-radius:var(--r-sm);overflow:hidden}.forge-shape{background:none;border:none;color:var(--ink-faint);font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;padding:var(--s2) var(--s4);transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.forge-shape+.forge-shape{border-left:1px solid var(--line-strong)}@media (hover: hover) and (pointer: fine){.forge-shape:hover{color:var(--ink-dim)}}.forge-shape.on{background:var(--panel-2);color:var(--ink)}.forge-contract{margin-top:var(--s4);max-width:56ch;font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim)}.forge-cap{margin-top:var(--s3);font-size:var(--t-u3);color:var(--ink-ghost);max-width:56ch}.heat{height:6px;background:var(--panel-2);border-radius:var(--r-xl);overflow:hidden}.heat-fill{height:100%;width:100%;border-radius:var(--r-xl);background:linear-gradient(90deg,var(--green),var(--gold) 62%,var(--flame));transform-origin:left;transform:scaleX(var(--fill, 0));transition:transform var(--dur-2) var(--ease-out)}.forge-end{max-width:52ch;margin:0 auto;padding:var(--s11) var(--s6);text-align:left}.fe-mark{font-family:var(--display);font-style:italic;font-size:var(--t-d2);color:var(--ink-faint);line-height:1;margin-bottom:var(--s5)}.fe-mark.won{color:var(--gold)}.forge-end h2{font-family:var(--display);font-size:var(--t-d3);font-weight:var(--w-medium);letter-spacing:var(--tr-display)}.fe-body{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);margin:var(--s4) 0 var(--s7)}.section-head{margin-bottom:var(--s7)}.section-head>h1{font-family:var(--display);font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s2)}.section-head>.sub{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);max-width:66ch;margin-bottom:var(--s6)}.subtabs{display:flex;gap:var(--s6);border-bottom:1px solid var(--line);margin-bottom:var(--s7)}.subtab{background:none;border:none;padding:0 0 var(--s3);margin-bottom:-var(--s1);font-family:var(--sans);font-size:var(--t-u2);color:var(--ink-faint);border-bottom:2px solid transparent;transition:color var(--dur-1) var(--ease),border-color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.subtab:hover{color:var(--ink-dim)}}.subtab.on{color:var(--ink);border-bottom-color:var(--line-strong)}.aside-link{display:inline-block;margin-top:var(--s4);background:none;border:none;padding:0;font-family:var(--sans);font-size:var(--t-u3);color:var(--gold);text-align:left}@media (hover: hover) and (pointer: fine){.aside-link:hover{color:var(--gold-hi)}}.fe-board{display:block;margin-top:var(--s5)}button.techtag.as-link{cursor:pointer}@media (hover: hover) and (pointer: fine){button.techtag.as-link:hover{border-color:var(--gold-line);color:var(--ink)}}.today-why{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);max-width:60ch;margin:-var(--s5) 0 var(--s8)}.today-loop{--rail-x: 13px;position:relative;list-style:none;padding:0}.today-loop-rail{position:absolute;top:6px;bottom:6px;left:var(--rail-x);transform:translate(-50%);width:2px;background:var(--line-strong)}.today-step{position:relative;padding:0 0 var(--s7) var(--s9)}.today-step:last-child{padding-bottom:0}.today-dot{position:absolute;top:2px;left:var(--rail-x);transform:translate(-50%);width:14px;height:14px;border-radius:50%;background:var(--bg);border:2px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:var(--bg)}.today-step.active .today-dot{border-color:var(--gold);background:var(--gold)}.today-step.done .today-dot{border-color:var(--green);background:var(--green)}.today-stepname{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s2)}.today-step.active .today-stepname{color:var(--gold)}.today-stepblurb{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);max-width:54ch}.today-step.active .today-stepblurb{color:var(--ink)}.today-step.done .today-stepblurb{color:var(--ink-faint)}.today-go{margin-top:var(--s4)}.day-closed{padding:var(--s8) 0 var(--s5);max-width:54ch}.dc-mark{font-family:var(--display);font-style:italic;font-size:var(--t-d2);color:var(--gold);line-height:1;margin-bottom:var(--s6)}.day-closed h2{font-family:var(--display);font-size:var(--t-d3);font-weight:var(--w-medium);letter-spacing:var(--tr-display)}.dc-body{font-family:var(--prose);font-size:var(--t-p1);line-height:1.65;color:var(--ink-dim);margin-top:var(--s4)}.dc-earned{margin-top:var(--s6);font-family:var(--mono);font-size:var(--t-u4);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint)}.tgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--s1);margin:var(--s4) 0 var(--s3)}.tg{display:block;aspect-ratio:1;border-radius:var(--r-xs);background:var(--panel-2)}.tg.w1{background:#e7bb6338}.tg.w2{background:#e7bb6380}.tg.w3{background:var(--gold)}.rail-rank{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line);font-size:var(--t-u3);color:var(--ink-faint)}.rail-rank b{color:var(--ink-dim);font-family:var(--mono)}.frontier-pg{padding-top:var(--s9);padding-bottom:var(--s11)}.frontier-pg>h1{font-family:var(--display);font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s2)}.frontier-pg>.sub{font-family:var(--prose);font-size:var(--t-p2);line-height:1.65;color:var(--ink-dim);margin-bottom:var(--s7);max-width:66ch}.fb-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:var(--s2)}.fb{width:var(--fb-w)}.fb-head{display:flex;gap:var(--fb-gap);margin-bottom:var(--s3)}.fb-headlabel{width:var(--fb-label);flex:none;font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-ghost)}.fb-col{width:var(--fb-cell);flex:none;text-align:center;font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);color:var(--ink-faint)}.fb-grid{position:relative}.fb-row{display:flex;gap:var(--fb-gap);margin-bottom:var(--fb-gap)}.fb-label{width:var(--fb-label);flex:none;height:var(--fb-row);display:flex;align-items:center;gap:var(--s2)}.fb-strand{font-family:var(--display);font-size:var(--t-u1);line-height:1.14;color:var(--ink)}.fb-frontier{margin-left:auto;padding-right:var(--s3);font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-ghost)}.fb-cell{width:var(--fb-cell);height:var(--fb-row);flex:none;display:flex;align-items:center;justify-content:center;gap:var(--s1);flex-wrap:wrap;align-content:center;padding:0 var(--s2);background:var(--panel-3);border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--dur-1) var(--ease),background-color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){button.fb-cell:hover:not(:disabled){border-color:var(--line-strong);background:var(--panel)}}button.fb-cell:disabled{cursor:default}.fb-cell.complete{border-color:hsl(var(--hue) 40% 40% / .5)}.fb-pip{display:block;border-radius:50%;flex:none}.fb-pip.done{background:hsl(var(--hue) 46% 66%)}.fb-pip.open{background:var(--surface-open)}.fb-pip.locked{background:var(--surface-off)}.fb-cell.absent{border-style:dashed;border-color:#e9e5d80f;background-color:transparent;background-image:repeating-linear-gradient(45deg,rgba(233,229,216,.055) 0 1px,transparent 1px 6px)}.fb-line{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible}.fb-line polyline{fill:none;stroke:var(--gold);stroke-width:1.5;stroke-linejoin:miter;stroke-linecap:butt;opacity:.85}.fb-rail{display:flex;gap:var(--fb-gap);align-items:center;margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--line)}.fb-raillabel{width:var(--fb-label);flex:none;font-family:var(--display);font-style:italic;font-size:var(--t-u2);color:var(--ink-dim)}.fb-rail .fb-cell{height:var(--fb-rail);border-radius:var(--r-xs)}.fb-railnote{margin-top:var(--s3);padding-left:var(--fb-label);font-family:var(--prose);font-size:var(--t-u3);line-height:1.65;color:var(--ink-ghost);max-width:62ch}.fb-legend{display:flex;flex-wrap:wrap;gap:var(--s5);margin-top:var(--s7)}.fb-leg{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint)}.fb-sw{width:12px;height:12px;border-radius:var(--r-xs);border:1px solid var(--line);display:block}.fb-sw.done{background:#d0bb80;border-color:transparent}.fb-sw.open{background:var(--surface-open)}.fb-sw.locked{background:var(--surface-off)}.fb-sw.absent{border-style:dashed;background-image:repeating-linear-gradient(45deg,rgba(233,229,216,.14) 0 1px,transparent 1px 5px)}.fb-sw.line{height:0;border:none;border-top:1.5px solid var(--gold);border-radius:0;opacity:.85}.fb-upsell,.fb-override{margin-top:var(--s6);font-size:var(--t-u2);color:var(--ink-faint)}.levels-pg{padding-top:var(--s9);padding-bottom:var(--s11)}.levels-pg>h1{font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s2)}.levels-pg>.sub{color:var(--ink-dim);margin-bottom:var(--s8);max-width:66ch}.level-block{position:relative}.level-head{display:flex;align-items:center;gap:var(--s4)}.level-head .badge{font-family:var(--mono);font-size:var(--t-u5);padding:var(--s1) var(--s3);border-radius:var(--r-xl);border:1px solid var(--line);color:var(--ink-faint)}.level-head h2{font-size:var(--t-d5);font-weight:var(--w-display);letter-spacing:var(--tr-tight)}.level-head .band{color:var(--ink-ghost);font-size:var(--t-u4);margin-left:auto}.lockline{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0 var(--s5);color:var(--ink-faint);font-size:var(--t-u3)}.locktag{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-dim);border:1px solid var(--line-strong);padding:var(--s1) var(--s3);border-radius:var(--r-xl)}.mastery-line{display:flex;align-items:center;gap:var(--s3)}.mastery-badge{font-family:var(--mono);font-size:var(--t-u5);padding:var(--s1) var(--s2);border-radius:var(--r-xl);border:1px solid var(--line);color:var(--ink-faint)}.mastery-badge.tier-2{color:var(--green);border-color:#83cf9259}.mastery-badge.tier-3{color:var(--gold);border-color:var(--gold-line)}.drill-link{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint)}@media (hover: hover) and (pointer: fine){.drill-link:hover{color:var(--gold)}}.lesson-pg{padding-bottom:var(--s11)}.lesson-bar{position:sticky;top:66px;z-index:30;background:#0d0e12e6;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.lesson-bar-in{max-width:1120px;margin:0 auto;padding:0 var(--s7);display:flex;align-items:center;gap:var(--s5);height:54px}.lesson-back{background:none;border:none;color:var(--ink-dim);font-size:var(--t-u3);padding:0}@media (hover: hover) and (pointer: fine){.lesson-back:hover{color:var(--gold)}}.lesson-where{font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-faint)}.lesson-where .acc{color:var(--accent)}.lesson-xp-run{margin-left:auto;font-family:var(--mono);font-size:var(--t-u4);color:var(--gold);font-variant-numeric:tabular-nums}.lesson-track{height:3px;background:var(--panel-2);overflow:hidden}.lesson-track>div{height:100%;width:100%;background:var(--accent);transform-origin:left;transform:scaleX(var(--fill, 0));transition:transform var(--dur-3) var(--ease-out)}.lesson-segs{display:flex;gap:var(--s1);height:3px}.lesson-segs i{flex:1;background:var(--panel-2);display:block}.lesson-segs i.done{background:var(--green)}.lesson-segs i.now{background:var(--gold)}.lesson-body{display:flex;align-items:flex-start;gap:var(--s10);max-width:1120px;margin:0 auto;padding:var(--s9) var(--s7) 0}.lesson-col{width:680px;max-width:100%;flex-shrink:1}.lesson-col h1{font-family:var(--display);font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display)}.lesson-col .sub{font-family:var(--prose);color:var(--ink-dim);margin-top:var(--s2);font-size:var(--t-p2);line-height:1.65}.theory{margin-top:var(--s7);font-family:var(--prose);font-size:var(--t-p1);line-height:1.65}.theory p{margin-bottom:var(--s5);color:var(--ink)}.example{border-left:2px solid var(--accent);padding-left:var(--s6);margin:var(--s7) 0}.example .ex-t{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--accent);margin-bottom:var(--s3)}.example p{margin-bottom:var(--s3)}.example p:last-child{margin-bottom:0}.theory .tex-block{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--s6) 0;margin:var(--s7) 0;text-align:center}.practice-cta{margin-top:var(--s9);display:flex;gap:var(--s3);flex-wrap:wrap}.lesson-aside{position:sticky;top:140px;width:210px;flex-shrink:0;font-family:var(--prose);font-size:var(--t-p3);line-height:1.65;color:var(--ink-dim)}.aside-block+.aside-block{margin-top:var(--s6);padding-top:var(--s6);border-top:1px solid var(--line)}.aside-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.aside-stake{font-family:var(--serif);font-size:var(--t-d3);color:var(--gold);line-height:1}.aside-stake span{font-size:var(--t-p3);color:var(--ink-faint);margin-left:var(--s2)}.techrow{display:flex;gap:var(--s2);flex-wrap:wrap}.techtag{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-dim);border:1px solid var(--line);padding:var(--s1) var(--s2);border-radius:var(--r-xl)}.prob-card{max-width:680px}.prob-label{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);letter-spacing:var(--tr-caps);text-transform:uppercase;margin-bottom:var(--s5)}.prob-statement{font-family:var(--prose);font-size:var(--t-d4);line-height:1.5;margin-bottom:var(--s7)}.answer-row{display:flex;gap:var(--s3);align-items:center}.answer-row input{background:var(--panel);border:1px solid var(--line-strong);color:var(--ink);font-family:var(--mono);font-size:var(--t-u1);padding:var(--s3) var(--s4);border-radius:var(--r);width:220px;outline:none;transition:border-color var(--dur-1) var(--ease)}.answer-row input:focus{border-color:var(--gold)}.answer-wrap{position:relative;display:inline-flex;align-items:center}.answer-row input.ok{border-color:var(--green);background:#83cf9212;color:var(--ink)}.answer-row input.no{border-color:var(--red)}.answer-mark{position:absolute;right:-26px;top:50%;transform:translateY(-50%);font-size:var(--t-u1);line-height:1;color:var(--green);pointer-events:none;animation:mark-in var(--dur-2) var(--ease-back) both}.answer-mark.no{color:var(--red)}@keyframes mark-in{0%{opacity:0;transform:translateY(-50%) scale(.5)}to{opacity:1;transform:translateY(-50%) scale(1)}}.tally-beat{animation:tally-beat var(--dur-2) var(--ease-back) both}@keyframes tally-beat{0%{transform:scale(1)}45%{transform:scale(1.3);color:var(--gold)}to{transform:scale(1)}}.mcq{display:flex;flex-direction:column}.mcq button{display:flex;align-items:baseline;gap:var(--s4);text-align:left;background:none;border:none;border-top:1px solid var(--line);color:var(--ink);padding:var(--s4) var(--s3);font-size:var(--t-u1);width:100%;transition:background-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.mcq button:last-child{border-bottom:1px solid var(--line)}.mcq .opt-letter{font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-faint);flex-shrink:0}@media (hover: hover) and (pointer: fine){.mcq button:hover:not(:disabled){background:#ffffff05}}.mcq button.sel{background:var(--gold-soft)}.mcq button.sel .opt-letter{color:var(--gold)}.mcq button.correct{background:#83cf921a}.mcq button.correct .opt-letter{color:var(--green)}.mcq button.wrong{background:#e7867317}.mcq button.wrong .opt-letter{color:var(--red)}.feedback{padding:var(--s5) 0 0;margin-top:var(--s6);font-size:var(--t-u1);animation:slide-reveal var(--dur-2) var(--ease-out)}.feedback.good{border-left:2px solid var(--green);padding:var(--s1) 0 var(--s1) var(--s6)}.feedback.bad{border-left:2px solid var(--red);padding:var(--s1) 0 var(--s1) var(--s6)}.feedback.hint{border-left:2px solid var(--line-strong);padding:var(--s1) 0 var(--s1) var(--s6)}.feedback .fh{font-family:var(--serif);font-size:var(--t-d5);margin-bottom:var(--s2)}.feedback.good .fh{color:var(--green)}.feedback.bad .fh{color:var(--red)}.feedback.hint .fh{font-size:var(--t-u1);font-family:var(--sans);font-weight:var(--w-strong);color:var(--ink-dim)}.xp-float{color:var(--gold);font-family:var(--serif);font-size:var(--t-d4);font-weight:var(--w-medium);display:inline-block;margin-left:var(--s3);font-variant-numeric:tabular-nums;animation:stamp .46s var(--ease-back) both}@keyframes stamp{0%{opacity:0;transform:scale(2.2) rotate(-8deg)}60%{opacity:1}to{opacity:1;transform:scale(1) rotate(0)}}.prob-actions{display:flex;gap:var(--s3);margin-top:var(--s7);align-items:center}.enter-hint{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-ghost);margin-top:var(--s3)}.crest-wrap{overflow:hidden;min-height:calc(100vh - 66px);display:flex;align-items:center}.crest{text-align:center;max-width:620px;margin:0 auto;padding:var(--s8) var(--s6) var(--s10);width:100%}.crest-stars{display:flex;justify-content:center;gap:var(--s4);margin-bottom:var(--s6)}.crest-stars .star{font-size:var(--t-d1);line-height:1;color:var(--gold);animation:star-stamp .42s var(--ease-back) both}.crest-stars .star.off{color:var(--panel-2)}.crest-stars .star:nth-child(1){animation-delay:.06s}.crest-stars .star:nth-child(2){animation-delay:.12s}.crest-stars .star:nth-child(3){animation-delay:.18s}@keyframes star-stamp{0%{opacity:0;transform:scale(2.2) rotate(-12deg)}70%{opacity:1}to{opacity:1;transform:scale(1) rotate(0)}}.crest-flawless{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);animation:fade-up var(--dur-2) var(--ease-out) .22s both}.crest-title{font-size:var(--t-d1);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin:var(--s4) 0 0;animation:fade-up var(--dur-2) var(--ease-out) .26s both}.crest-xp{font-family:var(--serif);font-size:var(--t-figure-xl);line-height:1;color:var(--gold);font-variant-numeric:tabular-nums;margin:var(--s5) 0 var(--s2);animation:crest-xp-in .42s var(--ease-back) .32s both}.crest-xp span{font-size:var(--t-d4);color:var(--ink-faint);margin-left:var(--s2)}.crest-replay{font-size:var(--t-d6);color:var(--ink-faint);margin:var(--s6) 0 var(--s3);animation:fade-up var(--dur-2) var(--ease-out) .32s both}@keyframes crest-xp-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.crest-objects{display:flex;justify-content:center;gap:0;margin:var(--s7) 0 0;animation:fade-up var(--dur-2) var(--ease-out) .4s both}.crest-obj{flex:1;padding:0 var(--s5)}.crest-obj+.crest-obj{border-left:1px solid var(--line)}.crest-obj .co-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.crest-obj .co-v{font-family:var(--serif);font-size:var(--t-d4);color:var(--ink);font-variant-numeric:tabular-nums}.crest-obj .co-note{font-size:var(--t-u4);color:var(--ink-faint);margin-top:var(--s2)}.crest-obj .co-note.best{color:var(--flame)}.crest-days{display:flex;gap:var(--s1);justify-content:center;margin-bottom:var(--s2)}.crest-days i{width:7px;height:22px;border-radius:var(--r-xs);background:var(--panel-2);display:block}.crest-days i.on{background:var(--flame);animation:day-fill .28s var(--ease-out) both}.crest-days i.on:nth-child(1){animation-delay:.46s}.crest-days i.on:nth-child(2){animation-delay:.49s}.crest-days i.on:nth-child(3){animation-delay:.52s}.crest-days i.on:nth-child(4){animation-delay:.55s}.crest-days i.on:nth-child(5){animation-delay:.58s}.crest-days i.on:nth-child(6){animation-delay:.61s}.crest-days i.on:nth-child(7){animation-delay:.64s}@keyframes day-fill{0%{transform:scaleY(.2);opacity:.4}to{transform:scaleY(1);opacity:1}}.crest-ring{width:54px;height:54px;border-radius:50%;margin:0 auto var(--s2);position:relative;background:conic-gradient(var(--gold) var(--pct),var(--panel-2) 0)}.crest-ring:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:var(--bg)}.crest-next{color:var(--ink-dim);font-size:var(--t-u1);margin-top:var(--s7);line-height:1.65;animation:fade-up var(--dur-3) var(--ease-out) 1.1s both}.crest-next b{color:var(--ink)}.crest-actions{display:flex;gap:var(--s3);justify-content:center;flex-wrap:wrap;margin-top:var(--s7);animation:fade-up var(--dur-3) var(--ease-out) 1.2s both}.drills-pg{padding-top:var(--s9);padding-bottom:var(--s11)}.drills-pg>h1{font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s2)}.drills-pg>.sub{color:var(--ink-dim);margin-bottom:var(--s9);max-width:68ch}.drill-sec-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s5)}.forge-row{display:flex;align-items:center;gap:var(--s6);padding:var(--s5) 0;border-top:1px solid var(--line)}.forge-row:last-of-type{border-bottom:1px solid var(--line)}.forge-name{width:260px;flex-shrink:0}.forge-name .fn-t{font-family:var(--serif);font-size:var(--t-d6)}.forge-name .fn-s{color:var(--ink-faint);font-size:var(--t-u4)}.forge-bar{flex:1;height:4px;background:var(--panel-2);border-radius:var(--r-xs);overflow:hidden}.forge-bar>div{height:100%;width:100%;background:var(--accent);transform-origin:left;transform:scaleX(var(--fill, 0));transition:transform var(--dur-3) var(--ease-out)}.forge-togo{font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-dim);width:74px;text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums}.drill-all{margin-top:var(--s9)}.drill-rows{display:grid;grid-template-columns:repeat(3,1fr);gap:0 var(--s6)}.drow{display:flex;align-items:center;gap:var(--s3);text-align:left;width:100%;background:none;border:none;border-top:1px solid var(--line);padding:var(--s3) var(--s1);color:var(--ink-dim);font-size:var(--t-u3);transition:color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.drow:hover:not(:disabled){color:var(--ink)}}.drow:disabled{opacity:.4;cursor:default}.ddot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--track)}.ddot.prog{background:var(--accent)}.ddot.done{background:var(--gold)}.drow .dn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drow .dc{margin-left:auto;font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-ghost);flex-shrink:0;font-variant-numeric:tabular-nums}.drill-mastery{display:flex;align-items:center;gap:var(--s4);margin-top:var(--s4)}.diffrow{display:flex;align-items:center;gap:var(--s2);margin:var(--s6) 0 var(--s2);flex-wrap:wrap}.diffrow-label{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-right:var(--s1)}.diffchip{width:30px;height:30px;border-radius:var(--r-sm);border:1px solid var(--line);background:none;color:var(--ink-faint);font-size:var(--t-u3);font-variant-numeric:tabular-nums;transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.diffchip:hover{border-color:var(--line-strong);color:var(--ink)}}.diffchip.on{border-color:var(--gold-line);color:var(--gold)}.diffchip.d6.on{border-color:var(--flame-line);color:var(--red)}.diffrow-name{margin-left:var(--s2);font-size:var(--t-u4);color:var(--ink-faint)}.opt-list{display:flex;flex-direction:column;margin:var(--s6) 0 var(--s1)}.opt{text-align:left;padding:var(--s4) var(--s3);background:none;color:var(--ink);font-size:var(--t-u1);line-height:1.5;border:none;border-top:1px solid var(--line);transition:background-color var(--dur-1) var(--ease)}.opt:last-child{border-bottom:1px solid var(--line)}@media (hover: hover) and (pointer: fine){.opt:hover:not(:disabled){background:#ffffff05}}.opt.picked{background:var(--gold-soft)}.opt.right{background:#83cf921a;box-shadow:inset 2px 0 0 var(--green)}.opt.wrongpick{background:#e7867317;box-shadow:inset 2px 0 0 var(--red)}.opt:disabled{cursor:default}.pricing-pg{padding-top:var(--s10);padding-bottom:var(--s11);text-align:center}.pricing-pg h1{font-size:clamp(34px,4.6vw,50px);font-weight:var(--w-medium);letter-spacing:var(--tr-display)}.pricing-pg .sub{color:var(--ink-dim);margin:var(--s4) auto var(--s2);max-width:54ch}.pricing-pg .subsub{color:var(--ink-faint);font-size:var(--t-u3);margin-bottom:var(--s8)}.cycle-toggle{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--s1);margin-bottom:var(--s9);gap:var(--s1)}.cycle-toggle button{border:none;background:none;color:var(--ink-faint);padding:var(--s2) var(--s6);border-radius:var(--r-xl);font-size:var(--t-u2);font-weight:var(--w-strong);transition:background-color var(--dur-2) var(--ease),color var(--dur-2) var(--ease)}.cycle-toggle button.on{background:var(--panel-2);color:var(--ink)}.cycle-toggle .save{font-size:var(--t-u5);margin-left:var(--s2);opacity:.75}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);text-align:left}.price-invite{margin:var(--s7) auto 0;max-width:60ch;font-family:var(--prose);font-size:var(--t-p3);line-height:1.65;color:var(--ink-faint)}.plan{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s7) var(--s7);display:flex;flex-direction:column;position:relative}.plan.featured{border-color:var(--gold-line);box-shadow:0 24px 60px -40px #e7bb638c}.plan .flag{position:absolute;top:-11px;left:28px;background:var(--gold);color:var(--ink-on-gold);font-size:var(--t-u5);font-weight:var(--w-strong);padding:var(--s1) var(--s3);border-radius:var(--r-xl);letter-spacing:var(--tr-label)}.plan h3{font-size:var(--t-d5);display:flex;align-items:baseline;gap:var(--s3)}.plan h3 .sym{color:var(--ink-faint);font-size:var(--t-d6)}.plan .price{margin:var(--s5) 0 var(--s1);display:flex;align-items:baseline;gap:var(--s2)}.plan .price .amt{font-family:var(--serif);font-size:var(--t-d2);color:var(--ink);font-variant-numeric:tabular-nums}.plan .price .per{color:var(--ink-faint);font-size:var(--t-u2)}.plan .const-note{font-size:var(--t-u3);color:var(--ink-faint);margin-bottom:var(--s6);min-height:2.9em;line-height:1.3}.plan .const-note .katex{color:var(--ink-dim)}.plan-rungs{display:flex;flex-direction:column;gap:var(--s2);margin-bottom:var(--s6)}.plan-rung{display:flex;align-items:center;gap:var(--s3);font-size:var(--t-u4);color:var(--ink-dim)}.plan-rung .pr-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.plan-rung .pr-num{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);width:52px;flex-shrink:0;white-space:nowrap}.plan-rung.off{color:var(--ink-ghost)}.plan-rung.off .pr-dot{background:var(--track)}.plan-rung.group .pr-dots{display:flex;gap:var(--s1)}.plan ul{list-style:none;margin:var(--s1) 0 var(--s6);flex:1}.plan li{padding:var(--s2) 0;font-size:var(--t-u2);color:var(--ink-dim);display:flex;gap:var(--s3);align-items:flex-start}.plan li:before{content:"→";color:var(--ink-faint);flex-shrink:0}.plan .cur-tag{text-align:center;color:var(--green);font-weight:var(--w-strong);padding:var(--s3)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#05070bbf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--s5);opacity:1;transition:opacity var(--dur-2) var(--ease)}@starting-style{.modal-bg{opacity:0}}.modal-bg[data-motion=out]{opacity:0;transition-duration:.14s;pointer-events:none}.modal{background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--r-lg);padding:var(--s7);max-width:440px;width:100%;text-align:left;opacity:1;transform:translateY(0) scale(1);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}@starting-style{.modal{opacity:0;transform:translateY(12px) scale(.97)}}.modal-bg[data-motion=out] .modal{opacity:0;transform:translateY(6px) scale(.98);transition-duration:.14s}.modal h3{font-size:var(--t-d4);margin-bottom:var(--s2)}.modal .m-sub{color:var(--ink-dim);font-size:var(--t-p3);margin-bottom:var(--s6)}.modal .m-line{display:flex;justify-content:space-between;padding:var(--s3) 0;border-bottom:1px solid var(--line);font-size:var(--t-u2)}.modal .m-line b{font-family:var(--mono)}.modal .m-actions{display:flex;gap:var(--s3);margin-top:var(--s6)}.modal .demo-note{font-size:var(--t-u4);color:var(--ink-faint);margin-top:var(--s4)}.co{min-height:100vh;display:flex;flex-direction:column}.co-bar{display:flex;align-items:center;justify-content:space-between;max-width:1060px;width:100%;margin:0 auto;padding:var(--s6) var(--s7)}.co-brand{font-size:var(--t-d5)}.co-body{flex:1;display:flex;align-items:flex-start;gap:var(--s10);max-width:1060px;width:100%;margin:0 auto;padding:var(--s6) var(--s7) var(--s11)}.co-summary{width:380px;flex-shrink:0}.co-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s4)}.co-plan{font-size:var(--t-d3);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s6)}.co-price{font-family:var(--serif);font-size:var(--t-d1);line-height:1;color:var(--gold);font-variant-numeric:tabular-nums}.co-skeleton{display:inline-block;width:132px;height:46px;border-radius:var(--r-sm);background:var(--panel-2);animation:co-pulse 1.4s var(--ease) infinite}@keyframes co-pulse{0%,to{opacity:.5}50%{opacity:1}}.co-cycle{color:var(--ink-dim);font-size:var(--t-u2);margin-top:var(--s3)}.co-lines{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}.co-lines>div{display:flex;justify-content:space-between;padding:var(--s2) 0;font-size:var(--t-u2);color:var(--ink-dim)}.co-lines b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:var(--w-medium)}.co-lines .co-total{margin-top:var(--s2);padding-top:var(--s4);border-top:1px solid var(--line);font-size:var(--t-u1);color:var(--ink)}.co-unlocks{margin-top:var(--s8);padding-top:var(--s7);border-top:1px solid var(--line)}.co-rung{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) 0;font-size:var(--t-u2)}.co-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0}.co-num{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);width:34px}.co-name{color:var(--ink-dim)}.co-rung.off{opacity:.34}.co-rung.off .co-dot{background:var(--track)}.co-fine{margin-top:var(--s7);font-size:var(--t-u4);line-height:1.65;color:var(--ink-ghost)}.co-pay{flex:1;min-width:0;padding-top:var(--s7)}.co-window{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s7) var(--s7);max-width:420px}.co-window p{color:var(--ink-dim);font-size:var(--t-u2);line-height:1.65;margin-bottom:var(--s5)}.co-loading{color:var(--ink-faint);font-size:var(--t-u2);padding:var(--s8) 0}.co-secure{margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--line);font-size:var(--t-u4);color:var(--ink-ghost);line-height:1.65}.co-error{padding:var(--s8) 0;max-width:420px}.co-error h2{font-size:var(--t-d4);margin-bottom:var(--s3)}.co-error p{color:var(--ink-dim);font-size:var(--t-u2);margin-bottom:var(--s6)}@media (max-width: 900px){.co-body{flex-direction:column;gap:var(--s8);padding:var(--s5) var(--s5) var(--s10)}.co-summary{width:100%}.co-bar{padding:var(--s5)}.co-price{font-size:var(--t-d2)}.co-plan{font-size:var(--t-d4)}.co-pay{width:100%;padding-top:0}.co-unlocks{display:none}}.tech-pg{padding-top:var(--s9);padding-bottom:var(--s11)}.tech-pg>h1{font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s2)}.tech-pg>.sub{color:var(--ink-dim);margin-bottom:var(--s8);max-width:62ch}.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--s8)}.tech-card{border-top:1px solid var(--line);padding:var(--s6) 0}.tech-card h3{font-size:var(--t-d5);margin-bottom:var(--s1)}.tech-card .motto{font-family:var(--serif);font-style:italic;color:var(--ink-dim);margin-bottom:var(--s4);font-size:var(--t-u1)}.tech-card p{color:var(--ink-dim);font-size:var(--t-u2);margin-bottom:var(--s3)}.tech-card .used{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint);margin-top:var(--s3)}.tech-card.sealed{opacity:.5}.tech-card.sealed h3{color:var(--ink-dim)}.tech-progress{margin:-var(--s2) 0 var(--s6);font-size:var(--t-u3);color:var(--ink-faint)}.tech-progress b{color:var(--gold);font-family:var(--serif);font-size:var(--t-d6)}.tech-sealed-head{font-family:var(--serif);font-size:var(--t-d4);margin:var(--s9) 0 var(--s2);font-weight:var(--w-medium)}.seal{margin-top:var(--s4);font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint)}.profile-pg{padding-top:var(--s9);padding-bottom:var(--s11);max-width:640px}.profile-pg>h1{font-size:clamp(30px,4vw,42px);font-weight:var(--w-medium);letter-spacing:var(--tr-display);margin-bottom:var(--s6)}.prof-line{display:flex;justify-content:space-between;padding:var(--s3) 0;border-bottom:1px solid var(--line);font-size:var(--t-u2)}.prof-line .k{color:var(--ink-faint)}.badgegrid{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s5)}.badge-chip{border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--s2) var(--s4);font-size:var(--t-u3);color:var(--ink-faint)}.badge-chip.earned{border-color:var(--gold-line);color:var(--gold)}.olymp-pg{padding-top:var(--s9);padding-bottom:var(--s11)}.olymp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:0 var(--s6)}.olymp-card{text-align:left;padding:var(--s5) var(--s1);background:none;color:var(--ink);border:none;border-top:1px solid var(--line);transition:background-color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.olymp-card:hover{background:#ffffff05}}.oc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s3)}.oc-src{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint)}.oc-diff{width:22px;height:22px;border-radius:var(--r-sm);display:grid;place-items:center;font-family:var(--mono);font-size:var(--t-u5);border:1px solid var(--line);color:var(--ink-faint)}.oc-diff.d5,.oc-diff.d6{border-color:var(--flame-line);color:var(--red)}.oc-statement{font-size:var(--t-p3);line-height:1.65;color:var(--ink-dim);margin-bottom:var(--s3)}.oc-meta{display:flex;gap:var(--s3);font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-ghost)}.oc-done{color:var(--gold)}.olymp-hints{margin-top:var(--s5);display:flex;flex-direction:column;gap:var(--s3);align-items:flex-start}.rubric{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}.rubric h3{font-family:var(--serif);font-size:var(--t-d5);margin-bottom:var(--s2)}.rubric-lead{font-size:var(--t-u3);color:var(--ink-faint);margin-bottom:var(--s4);line-height:1.65}.rubric-item{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) var(--s3);margin-bottom:var(--s2);border:1px solid var(--line);border-radius:var(--r);cursor:pointer;font-size:var(--t-u2);line-height:1.5;transition:border-color var(--dur-1) var(--ease)}.rubric-item.on{border-color:var(--gold-line)}.rubric-item input{margin-top:var(--s1);accent-color:var(--gold)}.rubric-score{margin-top:var(--s4);font-size:var(--t-u2);color:var(--gold);font-family:var(--serif)}.footer{border-top:1px solid var(--line);padding:var(--s7) 0;text-align:center;color:var(--ink-faint);font-size:var(--t-u3);margin-top:var(--s7)}.footer .katex{color:var(--ink-dim)}.footer-links{margin-top:var(--s3);display:flex;gap:var(--s3);justify-content:center;align-items:center;flex-wrap:wrap;row-gap:var(--s2)}.footer-links a{color:var(--ink-dim);white-space:nowrap}@media (max-width: 620px){.footer-links{gap:var(--s2) var(--s4)}.footer-links>span[aria-hidden=true]{display:none}}@media (hover: hover) and (pointer: fine){.footer-links a:hover{color:var(--gold)}}.footer-social{margin-top:var(--s4);display:flex;gap:var(--s1);justify-content:center;align-items:center}.footer-social a{color:var(--ink-faint);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--r);transition:color var(--dur-1) var(--ease),background var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.footer-social a:hover{color:var(--ink);background:var(--panel)}}.footer-social a:focus-visible{outline:2px solid var(--gold-line);outline-offset:2px}.footer-fine{margin:var(--s4) auto 0;max-width:620px;font-size:var(--t-u5);line-height:1.65;color:var(--ink-ghost)}.legal{max-width:720px;margin:0 auto;padding:var(--s10) 0 var(--s6)}.legal h1{font-family:var(--serif);font-size:clamp(32px,4.6vw,44px);margin:var(--s3) 0 var(--s2);letter-spacing:var(--tr-display)}.legal-updated{color:var(--ink-faint);font-size:var(--t-u3);margin-bottom:var(--s7)}.legal-body{color:var(--ink-dim);font-size:var(--t-p3);line-height:1.65}.legal-body h2{font-family:var(--serif);color:var(--ink);font-size:var(--t-d5);margin:var(--s8) 0 var(--s3);font-weight:var(--w-medium)}.legal-body p{margin:0 0 var(--s4)}.legal-body ul{margin:0 0 var(--s5);padding-left:var(--s5)}.legal-body li{margin-bottom:var(--s2)}.legal-body b{color:var(--ink);font-weight:var(--w-strong)}.legal-foot{margin-top:var(--s9);padding-top:var(--s6);border-top:1px solid var(--line)}.legal-warn{border:1px solid var(--red);border-radius:var(--r);padding:var(--s4) var(--s4);margin-bottom:var(--s6);font-size:var(--t-p3);line-height:1.65;color:var(--ink);background:var(--flame-soft)}.legal-warn code{font-family:var(--mono);font-size:var(--t-u3);color:var(--gold)}.faq-pg{max-width:780px;margin:0 auto;padding:var(--s10) var(--s6) var(--s11)}.faq-pg h1{font-size:clamp(34px,4.6vw,44px);font-weight:var(--w-medium);margin:var(--s2) 0 var(--s4);letter-spacing:var(--tr-display)}.faq-pg .sub{color:var(--ink-dim);line-height:1.65;margin-bottom:var(--s9);max-width:62ch}.faq-item{border-top:1px solid var(--line)}.faq-item:last-of-type{border-bottom:1px solid var(--line)}.faq-q{width:100%;text-align:left;background:none;border:none;display:flex;align-items:flex-start;gap:var(--s4);padding:var(--s6) var(--s1);color:var(--ink);font-family:var(--serif);font-size:var(--t-d6);font-weight:var(--w-regular);line-height:1.3;transition:color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.faq-q:hover{color:var(--gold)}}.faq-mark{flex:none;margin-top:var(--s1);color:var(--ink-faint);font-family:var(--mono);font-size:var(--t-u1);transition:transform .18s var(--ease-out)}.faq-item.open .faq-mark{transform:rotate(45deg)}.faq-a{padding:0 var(--s1) var(--s6) var(--s8);color:var(--ink-dim);font-size:var(--t-p3);line-height:1.65;max-width:640px;animation:faq-open .18s var(--ease-out) both}@keyframes faq-open{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.faq-contact{margin-top:var(--s9);padding:var(--s6) 0 0;border-top:1px solid var(--line)}.faq-contact h3{font-size:var(--t-d6);font-weight:var(--w-regular);margin-bottom:var(--s2)}.faq-contact p{color:var(--ink-dim);font-size:var(--t-u2);line-height:1.65}@media (max-width: 620px){.faq-pg{padding:var(--s9) var(--s5) var(--s10)}.faq-pg h1{font-size:var(--t-d3)}.faq-q{font-size:var(--t-u1)}.faq-a{padding-left:var(--s7)}}.geo-fig{margin:var(--s4) 0 var(--s1);display:flex;justify-content:center;color:var(--ink-dim)}.geo-fig svg{width:100%;max-width:250px;height:auto;overflow:visible}.geo-label{font-family:var(--serif);font-size:var(--t-u3);fill:var(--ink);font-style:italic}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-var(--s1);overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.solved-in{animation:solved-rise .34s var(--ease-out) both}@keyframes solved-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.burst{position:relative;height:0}.burst-rays{position:absolute;left:-14px;top:-46px;width:96px;height:96px;pointer-events:none;overflow:visible}.burst-rays line{stroke:var(--gold);stroke-width:2;stroke-linecap:round;transform-origin:60px 60px;opacity:0;animation:ray .62s var(--ease-out) both}@keyframes ray{0%{opacity:0;transform:scale(.35)}45%{opacity:.95}to{opacity:0;transform:scale(1.12)}}.burst-mark{position:absolute;left:20px;top:-22px;font-size:var(--t-d4);color:var(--gold);animation:stamp .46s var(--ease-back) both}.burst-xp{position:absolute;left:58px;top:-20px;font-family:var(--serif);font-size:var(--t-d5);color:var(--gold);font-variant-numeric:tabular-nums;animation:xp-lift .7s var(--ease-out) both}@keyframes xp-lift{0%{opacity:0;transform:translateY(10px)}30%{opacity:1}to{opacity:1;transform:translateY(0)}}.burst-streak{position:absolute;left:58px;top:4px;font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint);animation:xp-lift .8s .12s var(--ease-out) both}.mpath{margin-top:var(--s6);padding-bottom:var(--s9);position:relative}.mpath-rail{position:relative;height:2px;background:var(--line-strong)}.mpath-fill{position:absolute;top:0;right:0;bottom:0;left:0;height:2px;background:var(--gold);transform-origin:left;transform:scaleX(var(--fill, 0));transition:transform .32s var(--ease-out)}.mpath-stop{position:absolute;top:-7px;transform:translate(-50%);text-align:center}.mpath-stop.first{transform:none;text-align:left}.mpath-stop.last{transform:translate(-100%);text-align:right}.mpath-dot{display:block;font-size:var(--t-u1);color:var(--line-strong);line-height:1;transition:color var(--dur-2) var(--ease)}.mpath-stop.on .mpath-dot{color:var(--gold)}.mpath-label{display:block;margin-top:var(--s2);font-family:var(--mono);font-size:var(--t-u5);line-height:1.3;letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--ink-faint);white-space:nowrap}.mpath-stop.on .mpath-label{color:var(--ink-dim)}.mpath-need{display:block;margin-top:var(--s1);font-family:var(--mono);font-size:var(--t-u5);line-height:1.3;color:var(--ink-ghost);white-space:nowrap}.mpath-toast{position:absolute;right:0;top:-4px;font-family:var(--serif);font-size:var(--t-u2);color:var(--gold);animation:toast-in 1.4s var(--ease-out) both}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}15%{opacity:1;transform:none}75%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.burst-rays line,.burst-mark,.burst-xp,.burst-streak,.solved-in,.mpath-toast{animation:none}.mpath-fill{transition:none}}.chip.dunno{border-style:dashed;color:var(--ink-faint)}.chip.dunno.on{border-color:var(--ink-dim);color:var(--ink-dim);background:none;border-style:solid}.topic-row{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s3);font-size:var(--t-u2)}.topic-name{width:118px;color:var(--ink-dim);flex-shrink:0}.topic-bar{flex:1;height:4px;background:var(--panel-2);overflow:hidden}.topic-fill{display:block;height:100%;width:100%;background:var(--ink-dim);transform-origin:left;transform:scaleX(var(--fill, 1));transition:transform var(--dur-2) var(--ease-out)}.topic-fill.weak{background:var(--red)}.topic-fill.strong{background:var(--green)}.topic-score{width:34px;text-align:right;color:var(--ink-faint);font-variant-numeric:tabular-nums;flex-shrink:0}.consent{display:flex;gap:var(--s3);align-items:flex-start;margin-top:var(--s5);padding:var(--s3) var(--s4);border:1px solid var(--line-strong);border-radius:var(--r);font-size:var(--t-u3);line-height:1.65;color:var(--ink-dim);cursor:pointer;transition:border-color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.consent:hover{border-color:var(--gold-line)}}.consent.on{border-color:var(--gold-line);color:var(--ink)}.consent input{margin-top:var(--s1);accent-color:var(--gold);flex-shrink:0}.lang-switch{display:inline-flex;gap:var(--s1);padding:var(--s1);border:1px solid var(--line);border-radius:var(--r-xl)}.lang-switch button{border:none;background:none;color:var(--ink-faint);font-family:var(--mono);font-size:var(--t-u4);padding:var(--s1) var(--s3);border-radius:var(--r-xl);transition:color var(--dur-1) var(--ease)}@media (hover: hover) and (pointer: fine){.lang-switch button:hover{color:var(--ink)}}.lang-switch button.on{color:var(--ink)}.lang-switch.compact button{padding:var(--s1) var(--s2)}.ic-flame{color:var(--flame);vertical-align:-.12em}.ic-inline{color:var(--ink-faint);vertical-align:-.12em}.cur-tag .ic-inline{color:var(--green)}.xp-pill,.streak-pill,.lr-meta,.prof-line,.lvl-tally{font-variant-numeric:tabular-nums}a:focus-visible,.navlink:focus-visible,.chip:focus-visible,.lesson-row:focus-visible,.drow:focus-visible,.rung:focus-visible,.olymp-card:focus-visible{outline:2px solid var(--gold-line);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--track) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--track);border-radius:var(--r-xl);border:2px solid var(--bg)}@media (hover: hover) and (pointer: fine){::-webkit-scrollbar-thumb:hover{background:var(--track-hi)}}::-webkit-scrollbar-track{background:transparent}.tabbar{display:none}@media (max-width: 900px){.climb{flex-direction:column}.climb-rail{width:auto;border-left:none;border-top:1px solid var(--line)}.climb-rail .rail-stats{display:flex;gap:var(--s3)}.hero-in{flex-direction:column}.hero-ladder{width:auto}.lesson-pg{flex-direction:column}.lesson-aside{position:static;width:auto;order:2}.drill-grid,.plan-grid,.lesson-grid,.tech-grid{grid-template-columns:1fr}.topnav .navlinks{display:none}.tabbar{display:flex}.today-loop{--rail-x: 10px}.today-step{padding-left:var(--s7)}.rec-headline{grid-template-columns:1fr;gap:0}.rec-metric+.rec-metric{padding-left:0;border-left:none;margin-top:var(--s6);padding-top:var(--s6);border-top:1px solid var(--line)}.rec-section{flex-direction:column;gap:var(--s5)}.rec-slabel{width:100%}}@media (max-width: 900px){.wrap,.wrap-narrow{padding:0 var(--s5)}.climb-main{padding:var(--s8) 0 0;width:100%}.climb-rail{padding:var(--s2) 0 0;width:100%}.climb-rail .rail-stats{align-items:stretch}.climb-rail .rail-stats .rail-block{flex:1;min-width:0;border-bottom:none;padding:var(--s6) 0}.climb-rail .rail-stats .rail-block+.rail-block{border-left:1px solid var(--line);padding-left:var(--s4)}.rail-head{flex-wrap:wrap}.mastered-chip{overflow-wrap:anywhere}.rank-ring,.rank-ring .rr-num{width:62px;height:62px;line-height:62px}.streak-days i{height:20px}.lesson-body{flex-direction:column;gap:0;padding:var(--s7) var(--s5) 0}.lesson-col{width:100%}.lesson-aside{position:static;width:100%;order:2;margin-top:var(--s8);padding-top:var(--s6);border-top:1px solid var(--line)}.lesson-bar-in{padding:0 var(--s5);gap:var(--s3);height:50px}.lesson-where{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.olymp-teaser{flex-direction:column;gap:var(--s7)}.olymp-teaser .ot-problem{padding-left:var(--s5)}.drill-rows{grid-template-columns:1fr}.forge-row{flex-wrap:wrap;gap:var(--s3)}.forge-name{width:100%}.forge-bar{flex:1 1 auto}.prob-statement{font-size:var(--t-d5)}.crest-title{font-size:var(--t-d3)}.crest-xp{font-size:var(--t-d1)}.crest-objects{flex-direction:column;gap:var(--s6)}.crest-obj+.crest-obj{border-left:none;border-top:1px solid var(--line);padding-top:var(--s6)}.proof-strip{gap:var(--s5) var(--s7)}.path{padding-left:var(--s9)}.path-track{left:15px}.node{left:-46px;width:32px;height:32px}.lesson-row:before{left:-34px}.lesson-row.lit:before{left:-37px}.topnav-in{gap:var(--s3);padding:0 var(--s5);height:60px}.brand{font-size:var(--t-d6)}.brand .lam{font-size:var(--t-d5)}.hero{padding-top:var(--s8)}.hero h1{max-width:none}.section{padding-top:var(--s10)}.loop,.loop+.shot-section{padding-top:var(--s8)}.land-cta{padding:var(--s10) var(--s5) var(--s8)}.app{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom))}}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:60;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#0d0e12f0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line)}.tabbar button{flex:1;min-height:44px;background:none;border:none;color:var(--ink-faint);font-size:var(--t-u5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s1);padding:var(--s2) var(--s1)}.tabbar button.on{color:var(--gold)}.tabbar .tb-dot{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:0}.tabbar button.on .tb-dot{opacity:1}@media (max-width: 620px){.climb-rail .rail-stats{flex-direction:column;gap:0}.climb-rail .rail-stats .rail-block+.rail-block{border-left:none;border-top:1px solid var(--line);padding-left:0}.nav-right{gap:var(--s2)}.nav-right .lang-switch{display:none}.nav-right .btn{padding:var(--s3) var(--s4);font-size:var(--t-u3)}.hero h1{font-size:var(--t-d3)}.hero-sub{font-size:var(--t-p2)}.plan-grid{grid-template-columns:1fr}.lvl-band{display:none}.forge-togo{width:auto}}:root[lang=uk],:root[lang=ru]{--display: "Source Serif 4", Georgia, serif;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}:root[lang=uk] .hero h1,:root[lang=ru] .hero h1{font-size:clamp(var(--t-d3),4.6vw,var(--t-d1));letter-spacing:var(--tr-tight);line-height:var(--lh-d2);max-width:19ch}:root[lang=uk] .hero-sub,:root[lang=ru] .hero-sub{max-width:60ch}:root[lang=uk] .hero-kicker,:root[lang=ru] .hero-kicker,:root[lang=uk] .onb-step,:root[lang=ru] .onb-step,:root[lang=uk] .flag,:root[lang=ru] .flag,:root[lang=uk] .rail-k,:root[lang=ru] .rail-k,:root[lang=uk] .aside-k,:root[lang=ru] .aside-k,:root[lang=uk] .drill-sec-k,:root[lang=ru] .drill-sec-k{letter-spacing:var(--tr-label)}:root[lang=uk] h1,:root[lang=ru] h1,:root[lang=uk] h2,:root[lang=ru] h2,:root[lang=uk] h3,:root[lang=ru] h3{letter-spacing:var(--tr-tight)}:root[lang=uk] .pricing-pg h1,:root[lang=ru] .pricing-pg h1,:root[lang=uk] .faq-pg h1,:root[lang=ru] .faq-pg h1{font-size:var(--t-d3)}:root[lang=uk] .rung .nm,:root[lang=ru] .rung .nm,:root[lang=uk] .cycle-toggle button,:root[lang=ru] .cycle-toggle button,:root[lang=uk] .navlink,:root[lang=ru] .navlink{letter-spacing:var(--tr-none)}:root[lang=uk] .proof-item span,:root[lang=ru] .proof-item span{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.ask-block{margin:var(--s7) 0;padding:var(--s6) var(--s6);background:var(--panel);border:1px solid var(--line-strong);border-left:2px solid var(--accent, var(--gold));border-radius:var(--r)}.ask-block.done{border-left-color:var(--green)}.ask-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--accent, var(--gold));margin-bottom:var(--s3)}.ask-block.done .ask-k{color:var(--ink-faint)}.ask-q{font-size:var(--t-u1);line-height:1.65;color:var(--ink)}.ask-row{display:flex;gap:var(--s3);margin-top:var(--s5);flex-wrap:wrap}.ask-row input{flex:1 1 180px;min-width:0;padding:var(--s3) var(--s4);font-family:var(--mono);font-size:var(--t-u1);color:var(--ink);background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--r)}.ask-row input:focus{outline:none;border-color:var(--accent, var(--gold))}.ask-ans{margin-left:var(--s3);font-weight:var(--w-regular);color:var(--ink-dim)}.ask-ans b{font-family:var(--mono);color:var(--ink)}.why-block{margin:var(--s7) 0;padding:var(--s6) var(--s6);background:var(--panel-3);border:1px solid var(--line);border-radius:var(--r)}.why-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.why-claim{font-family:var(--serif);font-size:var(--t-d6);line-height:1.65;color:var(--ink);margin-bottom:var(--s4)}.why-steps{margin:0;padding-left:var(--s5)}.why-steps li{font-size:var(--t-p3);line-height:1.65;color:var(--ink-dim);margin-bottom:var(--s3);padding-left:var(--s2)}.why-steps li::marker{color:var(--accent, var(--gold));font-family:var(--mono);font-size:var(--t-u4)}.pitfall-block{margin:var(--s7) 0;padding:var(--s5) var(--s6);background:var(--flame-soft);border:1px solid var(--flame-line);border-radius:var(--r)}.pitfall-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--flame);margin-bottom:var(--s3)}.pitfall-block p{font-size:var(--t-u2);line-height:1.65;color:var(--ink)}.pitfall-why{margin-top:var(--s3);color:var(--ink-dim)!important}.transfer-block{margin:var(--s7) 0;padding:var(--s6) var(--s6);border:1px dashed var(--line-strong);border-radius:var(--r)}.transfer-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--ink-faint);margin-bottom:var(--s3)}.transfer-block>p{font-size:var(--t-u2);line-height:1.65;color:var(--ink-dim)}.transfer-prompts{margin:var(--s4) 0 0;padding-left:var(--s5)}.transfer-prompts li{font-size:var(--t-u2);line-height:1.65;color:var(--ink);margin-bottom:var(--s3);padding-left:var(--s2)}.transfer-prompts li::marker{color:var(--accent, var(--gold))}.transfer-note{margin-top:var(--s4);font-size:var(--t-u4);color:var(--ink-ghost);font-style:italic}.insight{margin-top:var(--s4);padding:var(--s4) var(--s5);background:var(--panel-3);border-left:2px solid var(--gold-line);border-radius:0 var(--r) var(--r) 0}.insight-k{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);text-transform:uppercase;color:var(--gold);margin-bottom:var(--s2)}.insight{font-size:var(--t-u2);line-height:1.65;color:var(--ink-dim)}.theory-gate{margin-top:var(--s4);font-size:var(--t-u3);color:var(--ink-faint)}.aside-why{margin-top:var(--s3);font-size:var(--t-u3);line-height:1.65;color:var(--ink-faint)}@media (max-width: 640px){.ask-block,.why-block,.transfer-block{padding:var(--s5) var(--s4)}.ask-row{flex-direction:column}.ask-row .btn{width:100%}}.lt-pg{padding:var(--s9) 0 var(--s11)}.lt-passed{margin-bottom:var(--s6)}.lt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--s4);margin-top:var(--s6)}.lt-card{display:flex;flex-direction:column;gap:var(--s3);padding:var(--s6);background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--accent, var(--gold));border-radius:var(--r)}.lt-card.passed{border-top-color:var(--green)}.lt-card.exhausted,.lt-card.paywalled{opacity:.62;border-top-color:var(--line-strong)}.lt-top{display:flex;align-items:baseline;gap:var(--s3)}.lt-num{font-family:var(--mono);font-size:var(--t-u4);color:var(--accent, var(--gold));min-width:34px}.lt-name{font-family:var(--serif);font-size:var(--t-d6);color:var(--ink);flex:1}.lt-badge{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-label);color:var(--green);border:1px solid var(--green);border-radius:var(--r-xl);padding:var(--s1) var(--s2)}.lt-claim{font-size:var(--t-u3);line-height:1.65;color:var(--ink-dim);flex:1}.lt-meta{font-family:var(--mono);font-size:var(--t-u5);color:var(--ink-faint)}.lt-exhausted{color:var(--flame)}.lt-locked{color:var(--gold)}.lt-card .btn{width:100%}.lt-nofeedback{margin-top:var(--s4);font-size:var(--t-u4);color:var(--ink-ghost);font-style:italic}.lt-warn{margin-top:var(--s3);font-size:var(--t-u3);color:var(--flame)}.lt-jump{display:flex;flex-wrap:wrap;gap:var(--s2)}.lt-jump-b{width:32px;height:32px;font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-faint);background:var(--panel-3);border:1px solid var(--line);border-radius:var(--r-sm);cursor:pointer}.lt-jump-b.filled{color:var(--ink);border-color:var(--line-strong)}.lt-jump-b.on{border-color:var(--gold);color:var(--gold)}.lt-result{padding:var(--s9) 0 var(--s11)}.lt-verdict{font-family:var(--mono);font-size:var(--t-u5);letter-spacing:var(--tr-caps);margin-bottom:var(--s3)}.lt-verdict.pass{color:var(--green)}.lt-verdict.fail{color:var(--flame)}.lt-review-head{font-family:var(--serif);font-size:var(--t-d5);margin:var(--s8) 0 var(--s5);color:var(--ink)}.lt-review{padding:var(--s5) var(--s6);margin-bottom:var(--s4);background:var(--panel);border:1px solid var(--line);border-left:2px solid var(--line-strong);border-radius:var(--r)}.lt-review.right{border-left-color:var(--green)}.lt-review.wrong{border-left-color:var(--flame)}.lt-review-q{display:flex;gap:var(--s3);font-size:var(--t-u1);line-height:1.65;color:var(--ink)}.lt-review-n{font-family:var(--mono);font-size:var(--t-u4);color:var(--ink-faint);flex-shrink:0}.lt-review-a{display:flex;flex-wrap:wrap;gap:var(--s5);margin:var(--s4) 0 var(--s3);font-family:var(--mono);font-size:var(--t-u4)}.lt-review-a .ok{color:var(--ink-dim)}.lt-review-a .no{color:var(--flame)}.lt-review-a b{color:var(--ink)}.lt-review-s{font-size:var(--t-u2);line-height:1.65;color:var(--ink-dim)}.lt-actions{display:flex;gap:var(--s3);margin-top:var(--s7);flex-wrap:wrap}.rail-block.skills .topic-row{margin-top:var(--s3)}.topic-fill.unproven{background:repeating-linear-gradient(90deg,var(--line-strong) 0 3px,transparent 3px 7px)}.skill-verdict{margin-top:var(--s4)}.skill-verdict b.ok{color:var(--green)}.skill-verdict b.no{color:var(--flame)}.quiz-answer{display:flex;gap:var(--s3);align-items:stretch;flex-wrap:wrap;margin-top:var(--s3)}.quiz-answer input{flex:1 1 200px;min-width:0;padding:var(--s3) var(--s4);font-family:var(--mono);font-size:var(--t-u1);color:var(--ink);background:var(--panel-3);border:1px solid var(--line-strong);border-radius:var(--r)}.quiz-answer input:focus{outline:none;border-color:var(--gold)}.quiz-answer input:disabled{opacity:.4}.hero-count{color:var(--flame);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2);margin-bottom:var(--s3)}.hero-login-sep{color:var(--ink-ghost);margin:0 var(--s2)}.land-play{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5)}.play-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s6);text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:var(--s3);transition:border-color var(--dur-1) var(--ease),transform var(--dur-1) var(--ease)}.play-card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.pc-k{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u4);line-height:var(--lh-u4);text-transform:uppercase;letter-spacing:.08em}.pc-title{font-family:var(--display);font-size:var(--t-d5);line-height:var(--lh-d5);letter-spacing:var(--tr-d5)}.pc-body{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3);margin:0}.pc-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:var(--s3)}.pc-go{color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u2)}.play-card:hover .pc-go{color:var(--ink)}.pc-streak{display:inline-flex;align-items:center;gap:var(--s1);color:var(--flame);font-family:var(--sans);font-size:var(--t-u2)}.pc-streak svg{width:var(--s4);height:var(--s4)}.daily-wrap{max-width:46rem;margin:0 auto;padding:var(--s8) var(--s5) var(--s10)}.daily-kicker{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--s3)}.daily-title{font-family:var(--display);font-size:var(--t-d2);line-height:var(--lh-d2);letter-spacing:var(--tr-d2);margin-bottom:var(--s3)}.daily-sub{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3);max-width:var(--measure)}.daily-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4);margin-top:var(--s5);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2)}.daily-streak{display:inline-flex;align-items:center;gap:var(--s1);color:var(--ink-faint)}.daily-streak.on{color:var(--flame)}.daily-streak svg{width:var(--s4);height:var(--s4)}.daily-streak em{font-style:normal;color:var(--ink-faint)}.daily-dots{display:inline-flex;gap:var(--s1)}.daily-dots i{width:var(--s2);height:var(--s2);border-radius:50%;background:var(--track)}.daily-dots i.on{background:var(--flame)}.daily-dots i.now{box-shadow:0 0 0 1px var(--line-strong)}.daily-exam{color:var(--ink-faint)}.tier-tabs{display:flex;gap:var(--s2);margin:var(--s6) 0 var(--s4)}.tier-tab{display:inline-flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);background:var(--panel-3);border:1px solid var(--line);border-radius:var(--r);color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2);cursor:pointer;transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}.tier-tab.active{border-color:var(--line-strong);background:var(--panel);color:var(--ink)}.tier-tab.solved .tt-state{color:var(--green)}.tier-tab.played .tt-state{color:var(--ink-faint)}.daily-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s6)}.daily-card.shake{animation:daily-shake var(--dur-2) var(--ease)}@keyframes daily-shake{0%,to{transform:translate(0)}25%{transform:translate(calc(-1 * var(--s1)))}50%{transform:translate(var(--s1))}75%{transform:translate(calc(-1 * var(--s1)))}}.daily-card-src{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);margin-bottom:var(--s3)}.daily-statement{font-family:var(--prose);font-size:var(--t-p1);line-height:var(--lh-p1);margin-bottom:var(--s5)}.daily-answer{display:flex;gap:var(--s3)}.daily-answer input{flex:1;min-width:0;padding:var(--s3) var(--s4);background:var(--panel-3);color:var(--ink);font-family:var(--sans);font-size:var(--t-u1);line-height:var(--lh-u1);border:1px solid var(--line-strong);border-radius:var(--r)}.daily-answer input:focus{outline:none;border-color:var(--gold)}.daily-wrong{color:var(--red);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2);margin-top:var(--s3)}.daily-aids{display:flex;gap:var(--s3);margin-top:var(--s4)}.daily-hint{margin-top:var(--s4);padding:var(--s4);background:var(--panel-3);border-left:2px solid var(--line-strong);border-radius:var(--r);color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3)}.daily-hint b{color:var(--ink);font-family:var(--sans);font-size:var(--t-u2)}.daily-verdict{font-family:var(--sans);font-size:var(--t-u1);line-height:var(--lh-u1);margin-bottom:var(--s3);color:var(--ink-dim)}.daily-verdict.good{color:var(--green)}.daily-solution{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3)}.daily-solution b{color:var(--ink);font-family:var(--sans);font-size:var(--t-u2)}.daily-after{margin-top:var(--s5)}.daily-allclear{color:var(--green);font-family:var(--sans);font-size:var(--t-u1);line-height:var(--lh-u1);margin-bottom:var(--s3)}.daily-share-row{display:flex;gap:var(--s3);flex-wrap:wrap}.daily-tomorrow{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);margin-top:var(--s3)}.daily-cta{margin-top:var(--s10);border-top:1px solid var(--line);padding-top:var(--s7)}.daily-cta h2{font-family:var(--display);font-size:var(--t-d4);line-height:var(--lh-d4);letter-spacing:var(--tr-d4);margin-bottom:var(--s2)}.daily-cta p{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3);max-width:var(--measure)}.daily-cta-row{display:flex;gap:var(--s3);margin-top:var(--s4);flex-wrap:wrap}.diag-wrap{max-width:40rem;margin:0 auto;padding:var(--s8) var(--s5) var(--s10)}.diag-lead{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p2);line-height:var(--lh-p2);margin-bottom:var(--s5)}.diag-points{list-style:none;padding:0;margin:0 0 var(--s6)}.diag-points li{color:var(--ink-dim);font-family:var(--prose);font-size:var(--t-p3);line-height:var(--lh-p3);padding-left:var(--s5);position:relative;margin-bottom:var(--s2)}.diag-points li:before{content:"—";position:absolute;left:0;color:var(--ink-faint)}.diag-note{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);margin-top:var(--s4)}.diag-progress{margin-bottom:var(--s5)}.diag-progress>span{display:block;color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);margin-bottom:var(--s2)}.diag-q .qs{font-size:var(--t-p1);line-height:var(--lh-p1)}.diag-level{font-family:var(--display);font-size:var(--t-d1);line-height:var(--lh-d1);letter-spacing:var(--tr-d1);margin-bottom:var(--s4)}.diag-scorerow{display:flex;gap:var(--s5);color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2);margin-bottom:var(--s4)}.diag-bytopic{font-family:var(--display);font-size:var(--t-d5);line-height:var(--lh-d5);letter-spacing:var(--tr-d5);margin-bottom:var(--s3)}.diag-verdictline{margin-top:var(--s4);color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2)}.diag-weak{color:var(--flame)}.diag-result .btn-big{margin-top:var(--s6)}.diag-secondary{display:flex;align-items:center;gap:var(--s3);margin-top:var(--s6);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2)}.diag-secondary a{color:var(--ink-dim)}.diag-fine{color:var(--ink-faint);font-family:var(--sans);font-size:var(--t-u3);line-height:var(--lh-u3);margin-top:var(--s7);max-width:var(--measure)}.linklike{background:none;border:none;padding:0;color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u2);line-height:var(--lh-u2);text-decoration:underline;cursor:pointer}.linklike:hover{color:var(--ink)}.guest-badge{padding:var(--s1) var(--s3);border:1px solid var(--line-strong);border-radius:var(--r);color:var(--ink-dim);font-family:var(--sans);font-size:var(--t-u4);line-height:var(--lh-u4);margin-left:var(--s3);white-space:nowrap}@media (max-width: 700px){.land-play{grid-template-columns:1fr}.daily-wrap,.diag-wrap{padding:var(--s6) var(--s4) var(--s8)}.tier-tabs{flex-wrap:wrap}.daily-answer{flex-direction:column}}
