:root{--header-height:100px}*,:before,:after{box-sizing:border-box}html,body,#app{min-width:320px;min-height:100%;margin:0}body{background:var(--color-background);min-height:100vh;color:var(--color-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}input,textarea,select{color:var(--color-text);background-color:var(--color-surface)}input::placeholder,textarea::placeholder{color:var(--color-text-faint);opacity:1}dialog{color:var(--color-text);background:var(--color-surface)}::selection{background:var(--color-editor-selection)}:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#fff;--color-surface:#fff;--color-surface-subtle:#fafbfc;--color-surface-muted:#f2f4f7;--color-surface-hover:#eaedf2;--color-text:#20242b;--color-text-secondary:#475467;--color-text-muted:#667085;--color-text-faint:#94a0b5;--color-on-accent:#fff;--color-border:#d9dde4;--color-border-subtle:#eceef2;--color-border-strong:#bfc5cf;--color-primary:#6638b6;--color-primary-hover:#542d96;--color-action:#7425dc;--color-action-hover:#6220bc;--color-primary-soft:#f0eafa;--color-primary-subtle:#faf7ff;--color-primary-border:#d8cbed;--color-focus:#c4aff4;--color-exit-course-background:#087fa8;--color-exit-course-hover:#066b8f;--color-exit-course-text:#fff;--color-danger:#b42318;--color-danger-strong:#8f1c13;--color-danger-action:#d92d20;--color-danger-action-hover:#b42318;--color-danger-soft:#fef3f2;--color-danger-border:#f1b8b4;--color-success:#17784a;--color-success-action:#25c98b;--color-success-soft:#e9f8ef;--color-success-border:#b8e4ce;--color-warning:#78470d;--color-warning-action:#ffbb45;--color-objective-active-marker-border:var(--color-warning-action);--color-warning-soft:#fff5de;--color-warning-badge:#ffe6b1;--color-warning-border:#f5d38a;--color-info:#2768b8;--color-info-action:#3386cf;--color-info-soft:#edf6ff;--color-info-border:#bdd5f1;--color-progress-track:#e6e8ef;--color-progress-idle:#d3d7e0;--color-shadow-soft:#1b273d12;--color-shadow-medium:#1b273d24;--color-shadow-strong:#1b273d3d;--color-backdrop:#191e2a94;--color-info-shadow:#3386cf29;--color-info-overlay:#3386cf1f;--color-primary-shadow:#7440e829;--color-success-shadow:#25c98b29;--color-danger-shadow:#d92d2029;--color-warning-shadow:#af711224;--color-primary-overlay:#7440e81f;--color-success-overlay:#25c98b1f;--color-danger-overlay:#d92d201f;--color-warning-overlay:#ffbb451f;--color-surface-overlay:#fffffff0;--color-code-surface:#111827;--color-code-border:#303b4f;--color-code-text:#eef3ff;--color-code-muted:#7e8ca8;--color-code-hover:#1d293d;--color-code-selected:#59339a;--color-code-correct:#176b49;--color-code-incorrect:#9f3030;--syntax-plain:#eef3ff;--syntax-comment:#7e8ca8;--syntax-keyword:#c792ea;--syntax-type:#82aaff;--syntax-string:#c3e88d;--syntax-number:#f78c6c;--syntax-literal:#ff5370;--syntax-function:#82aaff;--syntax-annotation:#ffcb6b;--syntax-operator:#89ddff;--syntax-punctuation:#aeb8cc;--syntax-property:#f07178;--color-editor-plain:#26344b;--color-editor-keyword:#9d23ae;--color-editor-string:#ad5037;--color-editor-comment:#36804b;--color-editor-number:#2768b8;--color-editor-selection:#7560da3d;--color-path-active:#7440e8;--color-path-shadow:#b48cff;--color-path-idle:#ddd7e9;--color-path-idle-shadow:#eeeaf6;--color-node-border:#fff;--color-editor-surface:#fff;--color-editor-sidebar:#fff;--color-editor-toolbar:#fff;--color-inline-code-background:var(--color-surface-muted);--color-inline-code-text:var(--color-text-secondary);--color-requirement-number-background:var(--color-primary-subtle);--color-requirement-number-text:var(--color-primary);--color-editor-indent-guide:#d8d8d8;--color-editor-active-line:#f0f0f0;--color-editor-gutter:#f9fafc;--color-page-subtle:#f7f8fc;--color-file-java:#c66c32;--color-file-js:#cb9c15;--color-file-jsx:#329db9;--color-file-ts:#3178c6;--color-file-vue:#42b883;--color-file-svelte:#e86235;--color-file-py:#3776ab;--color-file-ipynb:#d18125;--color-file-html:#dd6540;--color-file-css:#4593bd;--color-file-scss:#bd6093;--color-file-json:#b59b31;--color-file-xml:#d58a43;--color-file-md:#6184ac;--color-file-txt:#8291a5;--color-file-c:#6886b7;--color-file-h:#9b78ad;--color-file-cs:#8656b1;--color-file-go:#3698b1;--color-file-rs:#a36b4d;--color-file-kt:#8f60d4;--color-file-swift:#e57842;--color-file-rb:#ba4855;--color-file-php:#7f82b8;--color-file-sql:#d29939;--color-file-yaml:#bc6272;--color-file-toml:#947767;--color-file-properties:#83946e;--color-file-gradle:#548b82;--color-file-sh:#699667;--color-file-r:#5381ae;--color-file-scala:#bf5358;--color-file-dart:#399cab;--color-file-ex:#856298;--color-file-hs:#8f709c;--color-file-fs:#6c89b2;--color-file-clj:#6a9871;--color-file-docker:#398bb5;--color-file-vue-detail:#466779;--color-file-python-detail:#d6ad43}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:#141414;--color-surface:#1c1c1c;--color-surface-subtle:#191919;--color-surface-muted:#242424;--color-surface-hover:#2c2c2c;--color-text:#f5f5f5;--color-text-secondary:#ededed;--color-text-muted:#dedede;--color-text-faint:#aaa;--color-on-accent:#fff;--color-border:#333;--color-border-subtle:#292929;--color-border-strong:#555;--color-primary:#b99aff;--color-primary-hover:#d0baff;--color-action:#7438df;--color-action-hover:#8650eb;--color-primary-soft:#302943;--color-primary-subtle:#24212b;--color-primary-border:#645180;--color-focus:#b99aff;--color-exit-course-background:#46c2f2;--color-exit-course-hover:#6bcff5;--color-exit-course-text:#10212a;--color-danger:#e55;--color-danger-strong:#ff7373;--color-danger-action:#bd3d36;--color-danger-action-hover:#d34d44;--color-danger-soft:#39282d;--color-danger-border:#7c4749;--color-success:#68dea9;--color-success-action:#25c98b;--color-success-soft:#203a32;--color-success-border:#3e7861;--color-warning:#ffd18a;--color-warning-action:#ffbb45;--color-objective-active-marker-border:var(--color-border);--color-warning-soft:#3a3024;--color-warning-badge:#5c4123;--color-warning-border:#927040;--color-info:#86bdff;--color-info-action:#3386cf;--color-info-soft:#243747;--color-info-border:#496780;--color-progress-track:#333;--color-progress-idle:#555;--color-shadow-soft:#0000001f;--color-shadow-medium:#00000038;--color-shadow-strong:#00000059;--color-backdrop:#000000b8;--color-info-shadow:#3386cf1a;--color-info-overlay:#86bdff26;--color-primary-shadow:#7440e81a;--color-success-shadow:#25c98b1a;--color-danger-shadow:#d92d201a;--color-warning-shadow:#af71121a;--color-primary-overlay:#b99aff26;--color-success-overlay:#25c98b26;--color-danger-overlay:#ee555526;--color-warning-overlay:#ffbb4526;--color-surface-overlay:#1c1c1cf5;--color-code-surface:#111;--color-code-border:#333;--color-code-text:#f5f5f5;--color-code-muted:#bbb;--color-code-hover:#252525;--color-code-selected:#483660;--color-code-correct:#204d3b;--color-code-incorrect:#673137;--syntax-plain:#f5f5f5;--syntax-comment:#89b69b;--syntax-keyword:#cba3ee;--syntax-type:#8fbaff;--syntax-string:#e8b18b;--syntax-number:#8fbaff;--syntax-literal:#d5a1f0;--syntax-function:#a2c4f5;--syntax-annotation:#e9c585;--syntax-operator:#b2d8ec;--syntax-punctuation:#c5c5c5;--syntax-property:#edb0b5;--color-editor-plain:#f5f5f5;--color-editor-keyword:#cba3ee;--color-editor-string:#e8b18b;--color-editor-comment:#89b69b;--color-editor-number:#8fbaff;--color-editor-selection:#b99aff3d;--color-path-active:#9674ed;--color-path-shadow:#645180;--color-path-idle:#333;--color-path-idle-shadow:#242424;--color-node-border:#1c1c1c;--color-editor-surface:#111;--color-editor-sidebar:#1c1c1c;--color-editor-toolbar:#242424;--color-inline-code-background:#3a3a3a;--color-inline-code-text:#fff;--color-requirement-number-background:#51406d;--color-requirement-number-text:#eadfff;--color-editor-indent-guide:#3b3b3b;--color-editor-active-line:#222;--color-editor-gutter:#191919;--color-page-subtle:#141414;--color-file-java:#c66c32;--color-file-js:#cb9c15;--color-file-jsx:#329db9;--color-file-ts:#3178c6;--color-file-vue:#42b883;--color-file-svelte:#e86235;--color-file-py:#3776ab;--color-file-ipynb:#d18125;--color-file-html:#dd6540;--color-file-css:#4593bd;--color-file-scss:#bd6093;--color-file-json:#b59b31;--color-file-xml:#d58a43;--color-file-md:#6184ac;--color-file-txt:#8291a5;--color-file-c:#6886b7;--color-file-h:#9b78ad;--color-file-cs:#8656b1;--color-file-go:#3698b1;--color-file-rs:#a36b4d;--color-file-kt:#8f60d4;--color-file-swift:#e57842;--color-file-rb:#ba4855;--color-file-php:#7f82b8;--color-file-sql:#d29939;--color-file-yaml:#bc6272;--color-file-toml:#947767;--color-file-properties:#83946e;--color-file-gradle:#548b82;--color-file-sh:#699667;--color-file-r:#5381ae;--color-file-scala:#bf5358;--color-file-dart:#399cab;--color-file-ex:#856298;--color-file-hs:#8f709c;--color-file-fs:#6c89b2;--color-file-clj:#6a9871;--color-file-docker:#398bb5;--color-file-vue-detail:#466779;--color-file-python-detail:#d6ad43}#app{min-height:100vh}@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}.profile-area[data-v-0983755f]{position:relative}.profile-trigger[data-v-0983755f]{min-height:54px;color:var(--color-text);background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;display:flex}.profile-trigger[data-v-0983755f]:hover,.profile-trigger[aria-expanded=true][data-v-0983755f]{background:var(--color-surface-hover)}.profile-avatar[data-v-0983755f],.summary-avatar[data-v-0983755f]{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.profile-avatar[data-v-0983755f]{width:40px;height:40px;font-size:14px}.profile-name[data-v-0983755f]{white-space:nowrap;font-size:15px;font-weight:400}.profile-chevron[data-v-0983755f]{width:18px;height:18px;color:var(--color-text-secondary);transition:transform .15s}.profile-chevron.open[data-v-0983755f]{transform:rotate(180deg)}.profile-menu[data-v-0983755f]{z-index:200;border:1px solid var(--color-border);background:var(--color-surface);width:340px;box-shadow:0 12px 30px var(--color-shadow-medium);border-radius:10px;position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}.profile-summary[data-v-0983755f]{align-items:center;gap:15px;padding:20px;display:flex}.summary-avatar[data-v-0983755f]{width:52px;height:52px;font-size:17px}.summary-information[data-v-0983755f]{min-width:0;display:grid}.summary-information strong[data-v-0983755f]{color:var(--color-text);font-size:17px;font-weight:500}.summary-information span[data-v-0983755f]{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.menu-section[data-v-0983755f]{border-top:1px solid var(--color-border);padding:9px}.menu-item[data-v-0983755f]{width:100%;color:var(--color-text);text-align:left;background:0 0;border:0;border-radius:7px;padding:12px 13px;font-size:15px}.menu-item[data-v-0983755f]:hover{background:var(--color-surface-subtle)}.logout-item[data-v-0983755f]{color:var(--color-danger)}.logout-item[data-v-0983755f]:hover{background:var(--color-danger-soft)}@media (width<=700px){.profile-name[data-v-0983755f]{display:none}.profile-menu[data-v-0983755f]{width:auto;position:fixed;top:78px;left:12px;right:12px}}.app-header[data-v-7c91337d]{--header-horizontal-padding:28px;z-index:100;height:var(--header-height);border-bottom:1px solid var(--color-border);background:var(--color-background);position:sticky;top:0}.header-content[data-v-7c91337d]{height:100%;padding:0 var(--header-horizontal-padding);align-items:center;display:flex}.logo-button[data-v-7c91337d]{background:0 0;border:0;align-items:center;padding:0;display:flex}.rwu-logo[data-v-7c91337d]{width:145px;height:auto;display:block}.main-navigation[data-v-7c91337d]{align-items:center;gap:30px;margin-left:34px;display:flex}.main-navigation[data-v-7c91337d] a{color:var(--color-text);align-items:center;font-size:16px;font-weight:400;text-decoration:none;display:flex}.main-navigation[data-v-7c91337d] a:hover,.main-navigation[data-v-7c91337d] a.router-link-active{color:var(--color-primary)}.header-profile[data-v-7c91337d]{flex-shrink:0;margin-left:auto;padding-left:24px}.header-profile[data-v-7c91337d] .profile-name{display:inline}.app-header--name-hidden .header-profile[data-v-7c91337d] .profile-name{display:none}.header-main-logo[data-v-7c91337d],.navigation-panel[data-v-7c91337d]{flex-shrink:0}.main-navigation[data-v-7c91337d] a{white-space:nowrap}.header-layout-probe[data-v-7c91337d]{visibility:hidden;pointer-events:none;align-items:center;width:max-content;display:flex;position:fixed;top:0;left:0}.header-layout-probe[data-v-7c91337d]>*{flex-shrink:0}.header-layout-probe[data-v-7c91337d] .profile-trigger{margin-left:24px}.header-layout-probe[data-v-7c91337d] .profile-name{display:inline}.navigation-toggle[data-v-7c91337d],.navigation-close[data-v-7c91337d]{width:44px;height:44px;color:var(--color-text);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex}.navigation-toggle[data-v-7c91337d]:hover,.navigation-close[data-v-7c91337d]:hover{background:var(--color-surface-hover)}.navigation-toggle svg[data-v-7c91337d],.navigation-close svg[data-v-7c91337d]{width:24px;height:24px}.app-header--compact[data-v-7c91337d]{height:72px}.app-header--compact .header-content[data-v-7c91337d]{grid-template-columns:44px minmax(0,1fr) 68px;gap:4px;padding:0 12px;display:grid}.app-header--compact .header-main-logo[data-v-7c91337d]{display:none}.app-header--compact .logo-button[data-v-7c91337d]{justify-self:center}.app-header--compact .navigation-heading .logo-button[data-v-7c91337d]:focus{box-shadow:none;outline:none}.app-header--compact .navigation-heading .logo-button[data-v-7c91337d]:focus-visible{background:0 0}.app-header--compact .navigation-panel--keyboard .navigation-heading .logo-button[data-v-7c91337d]:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.app-header--compact .rwu-logo[data-v-7c91337d]{width:145px;max-width:100%}.app-header--compact .header-profile[data-v-7c91337d]{grid-column:3;justify-self:end;margin-left:0;padding-left:0}.app-header--compact .header-profile[data-v-7c91337d] .profile-trigger{justify-content:center;width:68px;min-height:44px;padding:0}.app-header--compact .header-profile[data-v-7c91337d] .profile-name{display:none}.app-header--compact .header-profile[data-v-7c91337d] .profile-menu{width:min(340px,100% - 24px);position:fixed;top:80px;left:auto;right:12px}.app-header--compact .navigation-panel--compact[data-v-7c91337d]{box-sizing:border-box;width:min(320px,100% - 48px);max-width:none;height:100dvh;max-height:none;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px);background:var(--color-background);color:var(--color-text);box-shadow:12px 0 36px var(--color-shadow-medium);border:0;margin:0;position:fixed;inset:0 auto 0 0;overflow-y:auto}.app-header--compact .navigation-panel--compact[data-v-7c91337d]::backdrop{background:#0006}.app-header--compact .navigation-heading[data-v-7c91337d]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:72px;padding:0 16px;display:flex}.app-header--compact .main-navigation[data-v-7c91337d]{flex-direction:column;align-items:stretch;gap:0;width:100%;margin:0;display:flex}.app-header--compact .main-navigation[data-v-7c91337d] a{box-sizing:border-box;border-bottom:1px solid var(--color-border);border-radius:0;min-height:56px;padding:16px 20px;font-size:16px}.app-header--compact .main-navigation[data-v-7c91337d] a:hover{background:var(--color-surface-hover)}.app-header--compact .main-navigation[data-v-7c91337d] a.router-link-active{background:var(--color-primary);color:#fff}.course-page-heading[data-v-07be90da]{color:var(--color-text);justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.course-page-heading.course-page-heading--grid[data-v-07be90da]{margin-bottom:0}.course-page-heading__copy[data-v-07be90da]{min-width:0}.course-page-heading h2[data-v-07be90da]{margin:0;font-size:25px;font-weight:700;line-height:1.2}.course-page-heading p[data-v-07be90da]{color:var(--color-text-muted);margin:7px 0 0;font-size:16px;line-height:1.5}.course-page-heading__actions[data-v-07be90da]{flex:none}@media (width<=560px){.course-page-heading[data-v-07be90da]{flex-direction:column;gap:12px}}.markdown-preview[data-v-14c047de]{box-sizing:border-box;background:var(--color-surface);width:100%;min-height:520px;max-height:760px;color:var(--color-text);overflow-wrap:anywhere;padding:20px 22px;font-size:14px;line-height:1.65;overflow:auto}.markdown-preview[data-v-14c047de]>:first-child{margin-top:0}.markdown-preview[data-v-14c047de]>:last-child{margin-bottom:0}.markdown-preview h1[data-v-14c047de],.markdown-preview h2[data-v-14c047de],.markdown-preview h3[data-v-14c047de],.markdown-preview h4[data-v-14c047de],.markdown-preview h5[data-v-14c047de],.markdown-preview h6[data-v-14c047de]{color:var(--color-text);margin:1.35em 0 .55em;line-height:1.25}.markdown-preview h1[data-v-14c047de]{border-bottom:1px solid var(--color-border);padding-bottom:.35em;font-size:1.65rem}.markdown-preview h2[data-v-14c047de]{border-bottom:1px solid var(--color-border);padding-bottom:.3em;font-size:1.4rem}.markdown-preview h3[data-v-14c047de]{font-size:1.2rem}.markdown-preview h4[data-v-14c047de]{font-size:1.05rem}.markdown-preview h5[data-v-14c047de],.markdown-preview h6[data-v-14c047de]{font-size:.95rem}.markdown-preview p[data-v-14c047de]{margin:.8em 0}.markdown-preview ul[data-v-14c047de],.markdown-preview ol[data-v-14c047de]{margin:.75em 0;padding-left:1.7em}.markdown-preview li[data-v-14c047de]{margin:.28em 0;margin-left:calc(var(--markdown-list-depth,0) * 1.2em)}.markdown-preview blockquote[data-v-14c047de]{border-left:4px solid var(--color-primary-border);background:var(--color-primary-subtle);color:var(--color-text-muted);margin:1em 0;padding:.25em 1em}.markdown-preview pre[data-v-14c047de]{border:1px solid var(--color-border);background:var(--color-surface-subtle);max-width:100%;color:var(--color-text);white-space:pre;border-radius:7px;margin:1em 0;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;overflow:auto}.markdown-preview[data-v-14c047de] .markdown-math-display{text-align:center;max-width:100%;margin:1em 0;padding:.2em 0;overflow:auto hidden}.markdown-preview[data-v-14c047de] .markdown-math-inline{vertical-align:-.08em;max-width:100%;display:inline-block}.markdown-preview[data-v-14c047de] .katex{position:relative}.markdown-preview[data-v-14c047de] .katex-display{margin:0;overflow:auto hidden}.markdown-preview[data-v-14c047de] .katex-error{color:var(--color-danger,#b42318);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.markdown-preview[data-v-14c047de] .markdown-inline-code{background:var(--color-primary-soft);color:var(--color-primary);border-radius:4px;padding:.12em .38em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.markdown-preview[data-v-14c047de] a{color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.markdown-preview hr[data-v-14c047de]{border:0;border-top:1px solid var(--color-border);margin:1.4em 0}.markdown-table-wrapper[data-v-14c047de]{max-width:100%;margin:1em 0;overflow-x:auto}.markdown-preview table[data-v-14c047de]{border-collapse:collapse;width:100%;font-size:13px}.markdown-preview th[data-v-14c047de],.markdown-preview td[data-v-14c047de]{border:1px solid var(--color-border);vertical-align:top;padding:9px 11px}.markdown-preview th[data-v-14c047de]{background:var(--color-surface-subtle);font-weight:700}.markdown-empty-state[data-v-14c047de]{color:var(--color-text-muted);font-style:italic}@media (width<=700px){.markdown-preview[data-v-14c047de]{min-height:380px;padding:16px}}.inspector-dialog[data-v-6e2ac057]{border:1px solid var(--color-border);background:var(--color-surface);width:min(1320px,100vw - 48px);max-width:none;height:min(900px,100dvh - 48px);max-height:none;color:var(--color-text);box-shadow:0 24px 80px var(--color-shadow-strong);border-radius:14px;padding:0;overflow:hidden}.inspector-dialog[data-v-6e2ac057]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog-shell[data-v-6e2ac057]{flex-direction:column;height:100%;min-height:0;display:flex}.dialog-heading[data-v-6e2ac057]{justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 28px 16px;display:flex}h2[data-v-6e2ac057],h3[data-v-6e2ac057],p[data-v-6e2ac057]{margin:0}h2[data-v-6e2ac057]{font-size:24px;line-height:1.3}.dialog-heading p[data-v-6e2ac057]{color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:6px;font-size:14px}button[data-v-6e2ac057]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer;border-radius:7px;padding:8px 13px}button[data-v-6e2ac057]:hover:not(:disabled),button[aria-pressed=true][data-v-6e2ac057]{border-color:var(--color-primary);background:var(--color-primary-subtle)}button[data-v-6e2ac057]:focus-visible,input[data-v-6e2ac057]:focus-visible,summary[data-v-6e2ac057]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button[data-v-6e2ac057]:disabled{opacity:.5;cursor:default}.close-button[data-v-6e2ac057]{color:var(--color-text-muted);border:0;flex:none;padding:0 6px;font-size:28px;line-height:1}.dialog-feedback[data-v-6e2ac057]{min-height:32px;color:var(--color-text-muted);flex:none;padding:5px 28px;font-size:13px}.error[data-v-6e2ac057]{color:var(--color-danger)}.search-form[data-v-6e2ac057]{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:16px 28px 0;display:grid}.search-form input[data-v-6e2ac057]{border:1px solid var(--color-border);width:100%;min-width:0;color:var(--color-text);background:var(--color-surface);border-radius:7px;padding:10px 12px}.search-form small[data-v-6e2ac057]{color:var(--color-text-muted);grid-column:1/-1}button.primary[data-v-6e2ac057]{border-color:var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}button.primary[data-v-6e2ac057]:hover:not(:disabled){background:var(--color-action-hover);border-color:var(--color-action-hover);color:var(--color-on-accent)}.dialog-workspace[data-v-6e2ac057]{flex:1;grid-template-columns:minmax(250px,29%) minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.dialog-workspace.is-search[data-v-6e2ac057]{grid-template-columns:minmax(280px,40%) minmax(0,1fr)}.dialog-workspace.with-details[data-v-6e2ac057]{grid-template-columns:minmax(230px,25%) minmax(0,1fr) minmax(240px,26%)}.selection-pane[data-v-6e2ac057]{border-right:1px solid var(--color-border);flex-direction:column;min-width:0;min-height:0;padding:12px 20px 16px 28px;display:flex}.selection-pane h3[data-v-6e2ac057]{margin-bottom:12px;font-size:16px}.selection-list[data-v-6e2ac057]{flex:1;min-height:0;padding:3px;overflow:auto}.selection-item[data-v-6e2ac057]{text-align:left;grid-template-columns:24px minmax(0,1fr);gap:10px;width:100%;margin-bottom:7px;padding:12px;display:grid}.selection-item[aria-pressed=true][data-v-6e2ac057]{background:var(--color-primary-soft);border-color:var(--color-primary)}.selection-item strong[data-v-6e2ac057]{overflow-wrap:anywhere;font-size:13px;font-weight:600;display:block}.selection-item small[data-v-6e2ac057]{color:var(--color-text-muted);margin-top:4px;font-size:12px;display:block}.rank[data-v-6e2ac057]{color:var(--color-text-muted);font-weight:600}.hit-item[data-v-6e2ac057]{grid-template-columns:18px minmax(0,1fr) auto;gap:7px}.excerpt[data-v-6e2ac057]{color:var(--color-text-muted);margin-top:7px;font-size:12px;line-height:1.5;display:block}.similarity[data-v-6e2ac057]{background:var(--color-success-soft);color:var(--color-success);border-radius:5px;align-self:start;padding:3px 6px;font-size:12px;font-weight:600}.pager[data-v-6e2ac057]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin-top:12px;font-size:12px;display:flex}.pager button[data-v-6e2ac057]{padding:6px 9px}.content-pane[data-v-6e2ac057]{min-width:0;min-height:0;padding:12px 28px 24px;overflow:auto}.content-heading[data-v-6e2ac057]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:18px;display:flex}.content-heading h3[data-v-6e2ac057]{overflow-wrap:anywhere;margin-top:6px;font-size:21px}.content-heading small[data-v-6e2ac057],.content-heading p[data-v-6e2ac057]{color:var(--color-text-muted);font-size:12px}.content-heading p[data-v-6e2ac057]{margin-top:8px}.content-heading button[data-v-6e2ac057]{flex:none}.content-controls[data-v-6e2ac057]{gap:8px;margin:12px 0;display:flex}.content-controls[data-v-6e2ac057]:empty{display:none}[data-v-6e2ac057] .markdown-preview{min-height:0;max-height:none;padding:20px 0;overflow:visible}.children-list[data-v-6e2ac057]{border-top:1px solid var(--color-border);margin-top:12px;padding-top:16px}summary[data-v-6e2ac057]{cursor:pointer;padding:10px 0;font-weight:600}.children-list button[data-v-6e2ac057]{text-align:left;width:100%;margin-top:7px;display:block}.children-list button span[data-v-6e2ac057]{color:var(--color-text-muted);margin-top:4px;font-size:12px;display:block}.details-pane[data-v-6e2ac057]{border-left:1px solid var(--color-border);min-width:0;padding:12px 24px 24px;overflow:auto}.details-heading[data-v-6e2ac057]{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.details-heading button[data-v-6e2ac057]{border:0;padding:0 4px;font-size:22px;line-height:1}.details-pane h3[data-v-6e2ac057]{margin-bottom:18px;font-size:18px}dl[data-v-6e2ac057]{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:12px;margin:0;font-size:12px;display:grid}dt[data-v-6e2ac057]{color:var(--color-text-muted)}dd[data-v-6e2ac057]{overflow-wrap:anywhere;margin:0}.technical-details[data-v-6e2ac057]{border-top:1px solid var(--color-border);margin-top:24px}.technical-details summary[data-v-6e2ac057]{font-size:13px}.dialog-footer[data-v-6e2ac057]{border-top:1px solid var(--color-border);justify-content:flex-end;padding:12px 28px;display:flex}.empty[data-v-6e2ac057]{color:var(--color-text-muted);padding:12px 0;font-size:14px}.sr-only[data-v-6e2ac057]{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1000px){.dialog-workspace.with-details[data-v-6e2ac057]{grid-template-columns:minmax(200px,30%) minmax(0,1fr)}.details-pane[data-v-6e2ac057]{border-left:0;border-top:1px solid var(--color-border);grid-column:2;max-height:220px}.dialog-workspace.with-details .selection-pane[data-v-6e2ac057]{grid-row:span 2}}@media (width<=650px){.inspector-dialog[data-v-6e2ac057]{border-radius:10px;width:calc(100vw - 16px);height:calc(100dvh - 16px)}.dialog-heading[data-v-6e2ac057]{padding:16px}h2[data-v-6e2ac057]{font-size:20px}.dialog-tabs[data-v-6e2ac057]{padding:0 16px}.dialog-feedback[data-v-6e2ac057]{padding:5px 16px}.search-form[data-v-6e2ac057]{padding:12px 16px 0}.dialog-workspace[data-v-6e2ac057],.dialog-workspace.is-search[data-v-6e2ac057],.dialog-workspace.with-details[data-v-6e2ac057]{grid-template-rows:minmax(100px,32%) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.selection-pane[data-v-6e2ac057],.dialog-workspace.with-details .selection-pane[data-v-6e2ac057]{border-right:0;border-bottom:1px solid var(--color-border);grid-row:auto;padding:8px 16px}.selection-pane h3[data-v-6e2ac057]{margin-bottom:6px}.pager[data-v-6e2ac057]{margin-top:5px}.content-pane[data-v-6e2ac057]{padding:12px 16px}.content-heading h3[data-v-6e2ac057]{font-size:18px}.details-pane[data-v-6e2ac057]{background:var(--color-surface);z-index:1;grid-area:2/1;max-height:none;padding:12px 16px}.dialog-footer[data-v-6e2ac057]{padding:10px 16px}}.rag-inspector[data-v-ce38bf49]{gap:24px;min-width:0;display:grid}h1[data-v-ce38bf49],h2[data-v-ce38bf49],p[data-v-ce38bf49]{margin:0}h1[data-v-ce38bf49]{font-size:28px}h2[data-v-ce38bf49]{font-size:19px}.toolbar[data-v-ce38bf49]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.toolbar p[data-v-ce38bf49]{color:var(--color-text-muted);margin-top:6px;font-size:14px}.toolbar-actions[data-v-ce38bf49],.row-actions[data-v-ce38bf49]{flex-wrap:wrap;gap:8px;display:flex}button[data-v-ce38bf49]{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface);font:inherit;cursor:pointer;border-radius:7px;padding:9px 13px;font-size:13px}button[data-v-ce38bf49]:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-subtle)}button[data-v-ce38bf49]:focus-visible,summary[data-v-ce38bf49]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button[data-v-ce38bf49]:disabled{opacity:.5;cursor:default}button.primary[data-v-ce38bf49]{background:var(--color-action);color:var(--color-on-accent);border-color:var(--color-primary)}button.primary[data-v-ce38bf49]:hover:not(:disabled){background:var(--color-action-hover);border-color:var(--color-action-hover);color:var(--color-on-accent)}.card[data-v-ce38bf49]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;min-width:0;padding:24px}.card-heading[data-v-ce38bf49]{justify-content:space-between;align-items:center;gap:16px;display:flex}.search-card[data-v-ce38bf49]{justify-content:space-between;align-items:center;gap:20px;display:flex}.search-card p[data-v-ce38bf49]{color:var(--color-text-muted);margin-top:6px;font-size:14px;line-height:1.5}.search-card button[data-v-ce38bf49]{flex:none}.index-stats[data-v-ce38bf49]{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.5fr);gap:20px;margin:24px 0;display:grid}dt[data-v-ce38bf49],small[data-v-ce38bf49]{color:var(--color-text-muted)}dt[data-v-ce38bf49]{font-size:13px}dd[data-v-ce38bf49]{overflow-wrap:anywhere;margin:6px 0 0}.index-stats dd[data-v-ce38bf49]{font-size:25px;font-weight:600}.index-stats dd.date-value[data-v-ce38bf49]{padding-top:7px;font-size:14px;font-weight:400}summary[data-v-ce38bf49]{cursor:pointer;color:var(--color-text-muted);font-size:13px}.technical-summary[data-v-ce38bf49]{border-top:1px solid var(--color-border);padding-top:14px}.metadata[data-v-ce38bf49]{grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:10px 18px;margin:18px 0 0;font-size:13px;display:grid}.metadata dd[data-v-ce38bf49]{margin:0}.table-scroll[data-v-ce38bf49]{margin-top:18px;overflow-x:auto}table[data-v-ce38bf49]{border-collapse:collapse;text-align:left;width:100%;font-size:14px}th[data-v-ce38bf49]{color:var(--color-text-muted);font-size:12px;font-weight:600}th[data-v-ce38bf49],td[data-v-ce38bf49]{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:14px 10px}th[data-v-ce38bf49]:first-child,td[data-v-ce38bf49]:first-child{padding-left:0}tbody tr:last-child td[data-v-ce38bf49]{border-bottom:0}td strong[data-v-ce38bf49]{font-weight:600}small[data-v-ce38bf49]{overflow-wrap:anywhere;margin-top:4px;font-size:12px;display:block}.badge[data-v-ce38bf49]{border-radius:6px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-block}.positive[data-v-ce38bf49]{color:var(--color-success);background:var(--color-success-soft)}.negative[data-v-ce38bf49]{color:var(--color-danger);background:var(--color-danger-soft)}.neutral[data-v-ce38bf49]{color:var(--color-warning);background:var(--color-warning-soft)}.error[data-v-ce38bf49]{color:var(--color-danger)}.feedback[data-v-ce38bf49],.empty[data-v-ce38bf49]{color:var(--color-text-muted);font-size:14px}.confirm-dialog[data-v-ce38bf49]{border:1px solid var(--color-border);width:min(520px,100vw - 32px);color:var(--color-text);background:var(--color-surface);border-radius:12px;padding:24px}.confirm-dialog[data-v-ce38bf49]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog p[data-v-ce38bf49]{color:var(--color-text-muted);margin-top:14px}.confirm-actions[data-v-ce38bf49]{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}@media (width<=650px){.search-card[data-v-ce38bf49]{flex-direction:column;align-items:stretch;gap:14px}.card[data-v-ce38bf49]{padding:16px}.index-stats[data-v-ce38bf49]{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.metadata[data-v-ce38bf49]{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}th[data-v-ce38bf49],td[data-v-ce38bf49]{padding:10px 8px}}.content-maintenance[data-v-2c707e43]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:12px;margin:24px 0;padding:24px}h2[data-v-2c707e43]{margin:0 0 10px;font-size:22px}p[data-v-2c707e43]{color:var(--color-text-muted);margin:0;line-height:1.6}.course-layout[data-v-1c565156]{width:calc(100% - 56px);max-width:1180px;min-height:calc(100vh - var(--header-height));margin:0 auto;padding:42px 0 80px}.course-heading[data-v-1c565156]{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.eyebrow[data-v-1c565156]{color:var(--color-primary);margin:0 0 4px;font-size:14px;font-weight:600}.course-heading h1[data-v-1c565156]{margin:0;font-size:30px}.description[data-v-1c565156]{color:var(--color-text-muted);margin:7px 0 0}.role-label[data-v-1c565156]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:20px;padding:6px 11px;font-size:13px;font-weight:600}.course-navigation[data-v-1c565156]{border-bottom:1px solid var(--color-border);align-items:stretch;gap:28px;margin:30px 0;display:flex}.course-navigation a[data-v-1c565156],.more-menu summary[data-v-1c565156]{min-height:48px;color:var(--color-text-muted);white-space:nowrap;border-bottom:3px solid #0000;align-items:center;padding:0 2px;font-weight:600;text-decoration:none;display:flex}.course-navigation a[data-v-1c565156]:hover,.more-menu summary[data-v-1c565156]:hover{color:var(--color-primary)}.course-navigation a.router-link-active[data-v-1c565156]{border-bottom-color:var(--color-primary);color:var(--color-primary)}.more-menu[data-v-1c565156]{position:relative}.more-menu summary[data-v-1c565156]{cursor:pointer;gap:5px;list-style:none}.more-menu summary[data-v-1c565156]::-webkit-details-marker{display:none}.more-menu summary svg[data-v-1c565156]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px;transition:transform .15s}.more-menu[open] summary[data-v-1c565156]{border-bottom-color:var(--color-primary);color:var(--color-primary)}.more-menu[open] summary svg[data-v-1c565156]{transform:rotate(180deg)}.more-dropdown[data-v-1c565156]{z-index:20;border:1px solid var(--color-border);background:var(--color-surface);min-width:280px;box-shadow:0 10px 24px var(--color-shadow-medium);border-radius:0 0 8px 8px;padding:7px;position:absolute;top:100%;left:0}.more-dropdown button[data-v-1c565156]{width:100%;color:var(--color-text);text-align:left;background:0 0;border:0;border-radius:5px;padding:12px 14px;font-size:15px}.more-dropdown button[data-v-1c565156]:hover{background:var(--color-primary-subtle);color:var(--color-primary)}.delete-dialog[data-v-1c565156]{border:1px solid var(--color-border);background:var(--color-surface);width:min(100% - 32px,520px);color:var(--color-text);box-shadow:0 24px 60px var(--color-shadow-strong);border-radius:10px;padding:0}.delete-dialog[data-v-1c565156]::backdrop{background:var(--color-backdrop)}.dialog-heading[data-v-1c565156]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 24px;display:flex}.dialog-heading h2[data-v-1c565156]{margin:0;font-size:21px}.dialog-heading p[data-v-1c565156]{color:var(--color-text-muted);margin:6px 0 0;font-size:14px}.close-button[data-v-1c565156]{width:32px;height:32px;color:var(--color-text-muted);background:0 0;border:0;border-radius:5px;padding:0;font-size:24px}.close-button[data-v-1c565156]:hover:not(:disabled){background:var(--color-surface-hover)}.dialog-content[data-v-1c565156]{padding:22px 24px}.warning[data-v-1c565156]{border:1px solid var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning);border-radius:7px;padding:14px 15px}.warning strong[data-v-1c565156]{margin-bottom:4px;display:block}.warning p[data-v-1c565156]{margin:0;font-size:14px;line-height:1.5}.dialog-description[data-v-1c565156]{color:var(--color-text-muted);margin:18px 0 0;font-size:14px;line-height:1.5}.confirmation-field[data-v-1c565156]{gap:8px;margin-top:18px;display:grid}.confirmation-field label[data-v-1c565156]{color:var(--color-text);font-size:14px;line-height:1.5}.confirmation-field input[data-v-1c565156]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:42px;color:var(--color-text);font:inherit;border-radius:6px;padding:9px 11px}.confirmation-field input[data-v-1c565156]:focus{border-color:var(--color-primary);outline:2px solid color-mix(in srgb, var(--color-primary) 18%, transparent);outline-offset:1px}.confirmation-field input[data-v-1c565156]:disabled{cursor:wait;opacity:.6}.error-message[data-v-1c565156]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:6px;margin-top:18px;padding:11px 13px;font-size:14px}.dialog-actions[data-v-1c565156]{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;padding:17px 24px;display:flex}.cancel-button[data-v-1c565156],.delete-button[data-v-1c565156]{border-radius:6px;min-height:40px;padding:9px 16px;font-weight:600}.cancel-button[data-v-1c565156]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.delete-button[data-v-1c565156]{border:1px solid var(--color-danger-border);background:var(--color-danger-action);color:var(--color-on-accent)}.delete-button[data-v-1c565156]:hover:not(:disabled){background:var(--color-danger-action-hover)}.cancel-button[data-v-1c565156]:disabled,.close-button[data-v-1c565156]:disabled{cursor:wait;opacity:.6}.delete-button[data-v-1c565156]:disabled{cursor:not-allowed;opacity:.6}@media (width<=600px){.course-heading[data-v-1c565156]{display:block}.role-label[data-v-1c565156]{margin-top:16px;display:inline-block}.course-navigation[data-v-1c565156]{gap:18px;overflow-x:auto}.dialog-actions[data-v-1c565156]{flex-direction:column-reverse}.cancel-button[data-v-1c565156],.delete-button[data-v-1c565156]{width:100%}}@media (width<=650px){.course-layout[data-v-1c565156]{width:calc(100% - 32px)}}.experience-shell[data-v-047a8c2c]{--sidebar-width:260px;--sidebar-offset:20px;--sidebar-gap:20px;min-height:100vh}.experience-shell.sidebar-is-collapsed[data-v-047a8c2c]{--sidebar-width:110px}.course-sidebar[data-v-047a8c2c]{z-index:50;top:var(--sidebar-offset);bottom:var(--sidebar-offset);left:var(--sidebar-offset);width:var(--sidebar-width);scrollbar-width:none;border:1px solid var(--color-border-subtle);background:var(--color-surface);box-shadow:0 10px 32px var(--color-shadow-soft);border-radius:20px;flex-direction:column;justify-content:space-between;padding:14px 12px;transition:width .18s,box-shadow .18s;display:flex;position:fixed;overflow:hidden auto}.course-sidebar[data-v-047a8c2c]::-webkit-scrollbar{display:none}.sidebar-main[data-v-047a8c2c]{gap:24px;display:grid}.sidebar-heading[data-v-047a8c2c]{align-items:center;gap:12px;min-height:48px;display:flex}.sidebar-toggle[data-v-047a8c2c]{width:48px;height:48px;color:var(--color-text);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:0 0 48px;place-items:center;padding:0;display:grid}.sidebar-toggle[data-v-047a8c2c]:hover{background:var(--color-surface-hover)}.sidebar-toggle[data-v-047a8c2c]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.sidebar-toggle svg[data-v-047a8c2c]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:24px;height:24px}.course-name[data-v-047a8c2c]{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:750;text-decoration:none;overflow:hidden}.course-name[data-v-047a8c2c]:hover{color:var(--color-primary)}.course-navigation[data-v-047a8c2c]{gap:6px;display:grid}.sidebar-nav-label[data-v-047a8c2c]{color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:12px;font-weight:450;line-height:1.42}.course-navigation a[data-v-047a8c2c],.back-link[data-v-047a8c2c]{min-height:48px;color:var(--color-text-muted);border-radius:10px;align-items:center;gap:16px;padding:10px 14px;font-size:15px;font-weight:650;line-height:1.2;text-decoration:none;transition:color .14s,background-color .14s;display:flex}.course-navigation a[data-v-047a8c2c]:hover,.back-link[data-v-047a8c2c]:hover{background:var(--color-surface-subtle);color:var(--color-text)}.course-navigation a svg[data-v-047a8c2c],.back-link svg[data-v-047a8c2c]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 24px;width:24px;height:24px}.course-navigation a.router-link-exact-active[data-v-047a8c2c]{background:var(--color-primary-soft);color:var(--color-primary)}.course-navigation a.router-link-exact-active .sidebar-nav-label[data-v-047a8c2c]{color:var(--color-primary)}.back-link[data-v-047a8c2c]{flex-shrink:0}.course-sidebar-collapsed[data-v-047a8c2c]{border-radius:22px;padding-left:8px;padding-right:8px}.course-sidebar-collapsed .sidebar-main[data-v-047a8c2c]{gap:18px}.course-sidebar-collapsed .sidebar-heading[data-v-047a8c2c]{justify-content:center}.course-sidebar-collapsed .course-navigation[data-v-047a8c2c]{justify-items:center;gap:8px;width:100%;display:grid}.course-sidebar-collapsed .course-navigation a[data-v-047a8c2c],.course-sidebar-collapsed .back-link[data-v-047a8c2c]{box-sizing:border-box;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:86px;min-height:68px;margin-left:auto;margin-right:auto;padding:8px 4px}.course-sidebar-collapsed .back-link[data-v-047a8c2c]{align-self:center}.course-sidebar-collapsed .course-navigation a svg[data-v-047a8c2c]{width:23px;height:23px}.course-sidebar-collapsed .back-link svg[data-v-047a8c2c]{width:28px;height:28px}.experience-content[data-v-047a8c2c]{min-width:0;min-height:100vh;margin-right:var(--sidebar-gap);margin-left:calc(var(--sidebar-width) + var(--sidebar-offset) + var(--sidebar-gap));padding:40px 48px;transition:margin-left .18s}.experience-content[data-v-047a8c2c] .course-home,.experience-content[data-v-047a8c2c] .learning-profile,.experience-content[data-v-047a8c2c] .submissions{max-width:1260px;margin-left:auto;margin-right:auto}.experience-content[data-v-047a8c2c] .settings{margin-left:auto;margin-right:auto}@media (prefers-reduced-motion:reduce){.course-sidebar[data-v-047a8c2c],.experience-content[data-v-047a8c2c]{transition:none}}@media (width>=761px) and (width<=1280px){.experience-content[data-v-047a8c2c]{padding:24px}}@media (width<=760px){.experience-shell[data-v-047a8c2c]{--sidebar-width:220px;--sidebar-offset:8px;--sidebar-gap:8px}.experience-shell .course-sidebar-collapsed[data-v-047a8c2c]{width:76px}.experience-shell.sidebar-is-collapsed[data-v-047a8c2c]{--sidebar-width:76px}.course-sidebar[data-v-047a8c2c]{border-radius:16px;padding-left:8px;padding-right:8px}.compact-course-header[data-v-047a8c2c]{min-height:64px;padding:env(safe-area-inset-top,0px) 16px 0;color:var(--color-text);align-items:center;gap:12px;font-weight:700;display:flex}.experience-content[data-v-047a8c2c]{min-height:calc(100dvh - 64px);margin:0;padding:20px 24px}.experience-shell .course-sidebar[data-v-047a8c2c]{width:100%;max-width:none;height:100dvh;max-height:none;padding:calc(20px + env(safe-area-inset-top,0px)) 24px calc(24px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:var(--color-app-background,var(--color-surface));color:var(--color-text);border:0;border-radius:0;margin:0;position:fixed;inset:0}.course-sidebar[data-v-047a8c2c]:not([open]){display:none}.course-sidebar[data-v-047a8c2c]::backdrop{background:var(--color-backdrop)}.mobile-navigation-heading[data-v-047a8c2c]{justify-content:center;align-items:center;min-height:48px;margin-bottom:0;display:flex;position:relative}.mobile-navigation-heading h2[data-v-047a8c2c]{margin:0;font-size:20px}.mobile-navigation-heading .sidebar-toggle[data-v-047a8c2c]{position:absolute;top:0;right:0}.course-sidebar .sidebar-main[data-v-047a8c2c]{flex-direction:column;flex:1 0 auto;gap:24px;display:flex}.course-sidebar .course-navigation[data-v-047a8c2c]{flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;gap:clamp(20px,3dvh,32px);padding-block:24px;display:flex}.course-sidebar .course-navigation a[data-v-047a8c2c]{text-align:left;border-radius:16px;flex-direction:row;justify-content:center;gap:18px;width:min(280px,100%);min-height:84px;padding:16px}.course-sidebar .course-navigation a svg[data-v-047a8c2c]{flex-basis:28px;width:28px;height:28px}.course-sidebar .sidebar-nav-label[data-v-047a8c2c]{font-size:16px;font-weight:550;line-height:1.4}.course-sidebar .course-navigation .sidebar-nav-label[data-v-047a8c2c]{width:132px}.course-sidebar .back-link[data-v-047a8c2c]{text-align:left;justify-content:flex-start;min-height:56px;margin-top:24px}.experience-content[data-v-047a8c2c]{padding:16px}}.login-page[data-v-d133b78c]{background:var(--color-background);justify-content:center;align-items:center;min-height:100vh;padding:28px;display:flex}.login-card[data-v-d133b78c]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;max-width:430px;box-shadow:0 16px 42px var(--color-shadow-medium);border-radius:10px;padding:40px}.login-header[data-v-d133b78c]{margin-bottom:30px}.application-name[data-v-d133b78c]{color:var(--color-primary);margin:0 0 24px;font-size:18px;font-weight:700}h1[data-v-d133b78c]{margin:0;font-size:30px}.description[data-v-d133b78c]{color:var(--color-text-muted);margin:8px 0 0}.login-form[data-v-d133b78c]{flex-direction:column;gap:20px;display:flex}.form-field[data-v-d133b78c]{flex-direction:column;gap:8px;display:flex}label[data-v-d133b78c]{color:var(--color-text-secondary);font-size:14px;font-weight:600}input[data-v-d133b78c]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:7px;outline:none;padding:12px 14px}input[data-v-d133b78c]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-shadow)}.password-field[data-v-d133b78c]{position:relative}.password-field input[data-v-d133b78c]{padding-right:48px}.password-toggle[data-v-d133b78c]{width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-toggle[data-v-d133b78c]:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.password-toggle[data-v-d133b78c]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.password-toggle[data-v-d133b78c]:disabled{cursor:not-allowed;opacity:.55}.password-toggle svg[data-v-d133b78c]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:20px;height:20px}.login-button[data-v-d133b78c]{background:var(--color-action);width:100%;color:var(--color-on-accent);border:0;border-radius:7px;padding:12px 18px;font-weight:600}.login-button[data-v-d133b78c]:hover:not(:disabled){background:var(--color-action-hover)}.error-message[data-v-d133b78c]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:7px;padding:12px 14px}.profile-page[data-v-1b8f55ad]{min-height:calc(100vh - var(--header-height));background:var(--color-background);padding:48px 28px}.profile-card[data-v-1b8f55ad]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;width:100%;max-width:850px;margin:0 auto;padding:32px}.profile-card h1[data-v-1b8f55ad]{margin:0 0 28px}.information-row[data-v-1b8f55ad]{border-top:1px solid var(--color-border-subtle);grid-template-columns:190px 1fr;gap:20px;padding:17px 0;display:grid}.information-row span[data-v-1b8f55ad]{color:var(--color-text-muted)}@media (width<=600px){.information-row[data-v-1b8f55ad]{grid-template-columns:1fr;gap:5px}}.page[data-v-76c2690f]{width:calc(100% - 56px);max-width:1180px;min-height:calc(100vh - var(--header-height));margin:0 auto;padding:48px 0 80px}.page-heading[data-v-76c2690f]{margin-bottom:28px}.page-heading h1[data-v-76c2690f]{color:var(--color-text);margin:0;font-size:30px;font-weight:650}.page-heading p[data-v-76c2690f]{color:var(--color-text-muted);margin:6px 0 0}.search-field[data-v-76c2690f]{grid-template-columns:1fr auto;margin-bottom:24px;display:grid}.search-field input[data-v-76c2690f]{border:1px solid var(--color-border);background:var(--color-surface);min-height:48px;color:var(--color-text);border-right:0;border-radius:7px 0 0 7px;outline:none;padding:11px 15px}.search-field input[data-v-76c2690f]:focus{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.search-field button[data-v-76c2690f]{background:var(--color-action);min-width:105px;color:var(--color-on-accent);border:0;border-radius:0 7px 7px 0;font-weight:600}.search-field button[data-v-76c2690f]:hover{background:var(--color-action-hover)}.result-count[data-v-76c2690f]{color:var(--color-text);margin:0 0 16px;font-size:16px}.pagination[data-v-76c2690f]{margin-bottom:20px;display:flex}.pagination button[data-v-76c2690f]{border:1px solid var(--color-border);background:var(--color-surface);min-width:42px;min-height:38px;color:var(--color-primary);border-right:0}.pagination button[data-v-76c2690f]:first-child{border-radius:6px 0 0 6px}.pagination button[data-v-76c2690f]:last-child{border-right:1px solid var(--color-border);border-radius:0 6px 6px 0}.pagination button[data-v-76c2690f]:hover:not(:disabled){background:var(--color-primary-subtle)}.pagination button.active[data-v-76c2690f]{background:var(--color-action);color:var(--color-on-accent)}.pagination button[data-v-76c2690f]:disabled{cursor:not-allowed;color:var(--color-text-muted);background:var(--color-surface-subtle)}.course-results[data-v-76c2690f]{gap:10px;display:grid}.course-result[data-v-76c2690f]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);text-align:left;border-radius:8px;flex-direction:column;align-items:flex-start;padding:22px 24px;text-decoration:none;transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s;display:flex}.course-result[data-v-76c2690f]:hover{border-color:var(--color-primary);background:var(--color-primary-subtle);box-shadow:0 4px 14px var(--color-shadow-soft);text-decoration:none;transform:translateY(-1px)}.course-result[data-v-76c2690f]:focus-visible{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}.course-title-row[data-v-76c2690f]{align-items:center;gap:9px;display:flex}.course-title[data-v-76c2690f]{color:var(--color-primary);font-size:18px;font-weight:500;text-decoration:none}.enrollment-key-icon[data-v-76c2690f]{width:19px;height:19px;color:var(--color-text);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.enrollment-key-icon svg[data-v-76c2690f]{fill:currentColor;width:100%;height:100%;display:block}.course-description[data-v-76c2690f]{color:var(--color-text-secondary);margin-top:12px;line-height:1.6;text-decoration:none}.course-link[data-v-76c2690f]{color:var(--color-primary);margin-top:18px;font-size:14px;text-decoration:none}.course-result:hover .course-title[data-v-76c2690f],.course-result:hover .course-description[data-v-76c2690f],.course-result:hover .course-link[data-v-76c2690f]{text-decoration:none}.message[data-v-76c2690f]{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:8px;padding:28px}.message.error[data-v-76c2690f]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}@media (width<=650px){.page[data-v-76c2690f]{width:calc(100% - 32px);padding-top:32px}.search-field[data-v-76c2690f]{grid-template-columns:1fr;gap:8px}.search-field input[data-v-76c2690f],.search-field button[data-v-76c2690f]{border:1px solid var(--color-border);border-radius:7px;min-height:46px}.pagination[data-v-76c2690f]{overflow-x:auto}.course-result[data-v-76c2690f]{padding:19px}}.page[data-v-77363094]{width:calc(100% - 56px);max-width:1000px;min-height:calc(100vh - var(--header-height));margin:0 auto;padding:42px 0 80px}.breadcrumbs[data-v-77363094]{color:var(--color-text-muted);gap:9px;margin-bottom:20px;font-size:14px;display:flex}.breadcrumbs a[data-v-77363094]{color:var(--color-primary);text-decoration:none}.breadcrumbs a[data-v-77363094]:hover{color:var(--color-primary-hover)}.course-heading[data-v-77363094]{border-bottom:1px solid var(--color-border);padding-bottom:28px}.course-title-row[data-v-77363094]{align-items:center;gap:12px;display:flex}.course-heading h1[data-v-77363094]{margin:0;font-size:32px}.key-icon[data-v-77363094]{width:22px;height:22px;fill:var(--color-text);flex-shrink:0}.course-heading p[data-v-77363094]{max-width:760px;color:var(--color-text-muted);margin:10px 0 0;line-height:1.6}.enrollment-card[data-v-77363094]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;margin-top:28px}.enrollment-card>h2[data-v-77363094]{border-bottom:1px solid var(--color-border);margin:0;padding:18px 22px;font-size:21px}.enrollment-content[data-v-77363094]{padding:24px}.enrollment-content h3[data-v-77363094]{margin:0;font-size:18px}.enrollment-content p[data-v-77363094]{color:var(--color-text-muted);margin:8px 0 22px}.form-field[data-v-77363094]{gap:7px;max-width:460px;margin-bottom:18px;display:grid}.form-field label[data-v-77363094]{color:var(--color-text);font-size:14px;font-weight:600}.password-field[data-v-77363094]{position:relative}.password-field input[data-v-77363094]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-text);border-radius:6px;outline:none;padding:10px 48px 10px 13px}.password-field input[data-v-77363094]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-shadow)}.password-field input[data-v-77363094]:disabled{background:var(--color-surface-subtle)}.password-toggle[data-v-77363094]{width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-toggle[data-v-77363094]:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text)}.password-toggle[data-v-77363094]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.password-toggle[data-v-77363094]:disabled{cursor:not-allowed;opacity:.55}.password-toggle svg[data-v-77363094]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:20px;height:20px}.enrollment-error[data-v-77363094]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);max-width:460px;color:var(--color-danger);border-radius:6px;margin-bottom:18px;padding:11px 13px;font-size:14px}.primary-button[data-v-77363094]{background:var(--color-action);color:var(--color-on-accent);border:0;border-radius:6px;padding:10px 18px;font-weight:600}.primary-button[data-v-77363094]:hover:not(:disabled){background:var(--color-action-hover)}.primary-button[data-v-77363094]:disabled{cursor:wait;opacity:.65}.message[data-v-77363094]{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:8px;padding:28px}.message.error[data-v-77363094]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}@media (width<=600px){.page[data-v-77363094]{width:calc(100% - 32px);padding-top:32px}.course-heading h1[data-v-77363094]{font-size:27px}.enrollment-content[data-v-77363094]{padding:20px}}.create-form[data-v-c403d282]{border:1px solid var(--color-border);background:var(--color-primary-subtle);border-radius:8px;margin-bottom:28px;padding:24px}.form-heading[data-v-c403d282]{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.form-heading h2[data-v-c403d282]{margin:0;font-size:21px}.form-heading p[data-v-c403d282]{color:var(--color-text-muted);margin:5px 0 0}.close-button[data-v-c403d282]{color:var(--color-text);background:0 0;border:0;font-size:24px}form[data-v-c403d282]{gap:8px;margin-top:20px;display:grid}label[data-v-c403d282]{margin-top:8px;font-weight:600}.optional-label[data-v-c403d282]{color:var(--color-text-muted);margin-left:5px;font-size:12px;font-weight:500}input[data-v-c403d282],textarea[data-v-c403d282]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;width:100%;padding:11px 12px}input[data-v-c403d282]:focus,textarea[data-v-c403d282]:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}textarea[data-v-c403d282]{resize:vertical;min-height:100px}.field-help[data-v-c403d282]{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.45}.form-actions[data-v-c403d282]{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.primary-button[data-v-c403d282],.secondary-button[data-v-c403d282]{border-radius:6px;padding:10px 16px;font-weight:600}.primary-button[data-v-c403d282]{background:var(--color-action);color:var(--color-on-accent);border:0}.primary-button[data-v-c403d282]:hover:not(:disabled){background:var(--color-action-hover)}.secondary-button[data-v-c403d282]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.courses-page[data-v-1bd890ac]{width:calc(100% - 56px);max-width:1180px;margin:0 auto;padding:44px 0 72px}.page-heading[data-v-1bd890ac]{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.page-heading h1[data-v-1bd890ac]{margin:0;font-size:32px}.page-heading p[data-v-1bd890ac]{color:var(--color-text-muted);margin:7px 0 0;font-size:15px}.create-course-button[data-v-1bd890ac],.empty-state a[data-v-1bd890ac]{background:var(--color-action);min-height:40px;color:var(--color-on-accent);border:0;border-radius:7px;justify-content:center;align-items:center;padding:9px 15px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.create-course-button[data-v-1bd890ac]:hover:not(:disabled),.empty-state a[data-v-1bd890ac]:hover{background:var(--color-action-hover)}.create-course-button[data-v-1bd890ac]:disabled{cursor:wait;opacity:.65}.course-grid[data-v-1bd890ac]{grid-template-columns:repeat(auto-fill,minmax(250px,280px));justify-content:start;gap:18px;display:grid}.course-card[data-v-1bd890ac]{border:1px solid var(--color-border);background:var(--color-surface);min-height:238px;color:var(--color-text);border-radius:10px;grid-template-rows:74px minmax(112px,1fr) auto;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;overflow:hidden}.course-card[data-v-1bd890ac]:hover,.course-card[data-v-1bd890ac]:focus-visible{border-color:var(--color-primary);box-shadow:0 9px 22px var(--color-primary-shadow);transform:translateY(-2px)}.card-cover[data-v-1bd890ac]{background:linear-gradient(135deg, var(--color-primary-soft), var(--color-surface-muted));justify-content:flex-end;align-items:flex-start;padding:10px;display:flex}.role-badge[data-v-1bd890ac]{border:1px solid var(--color-primary-overlay);background:var(--color-surface);color:var(--color-primary);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.card-content[data-v-1bd890ac]{padding:16px 18px}.card-content h2[data-v-1bd890ac]{margin:0;font-size:18px;line-height:1.3}.card-content p[data-v-1bd890ac]{color:var(--color-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:7px 0 0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.card-footer[data-v-1bd890ac]{border-top:1px solid var(--color-border);color:var(--color-primary);justify-content:space-between;align-items:center;padding:12px 18px;font-size:14px;font-weight:700;display:flex}.message[data-v-1bd890ac],.empty-state[data-v-1bd890ac]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:10px;padding:22px}.message.error[data-v-1bd890ac]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.empty-state[data-v-1bd890ac]{text-align:center}.empty-state h2[data-v-1bd890ac]{color:var(--color-text);margin:0}.empty-state p[data-v-1bd890ac]{margin:9px 0 20px}@media (width<=640px){.courses-page[data-v-1bd890ac]{padding:34px 0 60px}.page-heading[data-v-1bd890ac]{flex-direction:column;align-items:flex-start}.course-grid[data-v-1bd890ac]{grid-template-columns:1fr}.course-card[data-v-1bd890ac]{width:100%}}@media (width<=650px){.courses-page[data-v-1bd890ac]{width:calc(100% - 32px)}}.courses-page[data-v-50f0fc84]{width:calc(100% - 56px);max-width:1180px;margin:0 auto;padding:44px 0 72px}.page-heading[data-v-50f0fc84]{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.page-heading h1[data-v-50f0fc84]{margin:0;font-size:32px}.page-heading p[data-v-50f0fc84]{color:var(--color-text-muted);margin:7px 0 0;font-size:15px}.course-grid[data-v-50f0fc84]{grid-template-columns:repeat(auto-fill,minmax(250px,280px));justify-content:start;gap:18px;display:grid}.course-card[data-v-50f0fc84]{border:1px solid var(--color-border);background:var(--color-surface);min-height:238px;color:var(--color-text);border-radius:10px;grid-template-rows:74px minmax(112px,1fr) auto;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;overflow:hidden}.course-card[data-v-50f0fc84]:hover,.course-card[data-v-50f0fc84]:focus-visible{border-color:var(--color-primary);box-shadow:0 9px 22px var(--color-primary-shadow);transform:translateY(-2px)}.card-cover[data-v-50f0fc84]{background:linear-gradient(135deg, var(--color-surface-muted), var(--color-primary-soft));justify-content:flex-end;align-items:flex-start;padding:10px;display:flex}.role-badge[data-v-50f0fc84]{background:var(--color-surface);color:var(--color-primary);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.card-content[data-v-50f0fc84]{padding:16px 18px}.card-content h2[data-v-50f0fc84]{margin:0;font-size:18px;line-height:1.3}.card-content p[data-v-50f0fc84]{color:var(--color-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:7px 0 0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.card-footer[data-v-50f0fc84]{border-top:1px solid var(--color-border);color:var(--color-primary);justify-content:space-between;align-items:center;padding:12px 18px;font-size:14px;font-weight:700;display:flex}.message[data-v-50f0fc84],.empty-state[data-v-50f0fc84]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:10px;padding:22px}.message.error[data-v-50f0fc84]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.empty-state[data-v-50f0fc84]{text-align:center}.empty-state h2[data-v-50f0fc84]{color:var(--color-text);margin:0}.empty-state p[data-v-50f0fc84]{margin:9px 0 0}@media (width<=640px){.courses-page[data-v-50f0fc84]{padding:34px 0 60px}.page-heading[data-v-50f0fc84]{flex-direction:column;align-items:flex-start}.course-grid[data-v-50f0fc84]{grid-template-columns:1fr}.course-card[data-v-50f0fc84]{width:100%}}@media (width<=650px){.courses-page[data-v-50f0fc84]{width:calc(100% - 32px)}}.jobs-load-more[data-v-9a815823]{border-top:1px solid var(--color-border);justify-content:center;padding:20px 22px;display:flex}.admin-page[data-v-9a815823]{width:calc(100% - 56px);max-width:1180px;color:var(--color-text);margin:0 auto;padding:44px 0 72px}.page-header[data-v-9a815823],.section-heading[data-v-9a815823],.filters[data-v-9a815823],.job-row[data-v-9a815823]{justify-content:space-between;align-items:center;gap:24px;display:flex}h1[data-v-9a815823],h2[data-v-9a815823],h3[data-v-9a815823],p[data-v-9a815823],dl[data-v-9a815823]{margin-top:0}h1[data-v-9a815823]{margin-bottom:5px;font-size:30px}h2[data-v-9a815823]{margin-bottom:4px;font-size:20px}h3[data-v-9a815823]{margin:0 0 12px;font-size:16px}.page-description[data-v-9a815823],.section-heading p[data-v-9a815823]{color:var(--color-text-muted);margin-bottom:0;font-size:14px}.secondary-button[data-v-9a815823],.small-button[data-v-9a815823],.filters input[data-v-9a815823],.filters select[data-v-9a815823]{border:1px solid var(--color-border);background:var(--color-surface);min-height:44px;color:var(--color-text);border-radius:9px}.secondary-button[data-v-9a815823],.small-button[data-v-9a815823]{padding:0 18px;font-weight:700}.secondary-button[data-v-9a815823]:disabled,.small-button[data-v-9a815823]:disabled{opacity:.5}.admin-tabs[data-v-9a815823]{border-bottom:1px solid var(--color-border);gap:28px;margin-top:28px;display:flex}.admin-tabs button[data-v-9a815823]{color:var(--color-text-muted);background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:14px 2px 12px;font-weight:700;display:flex}.admin-tabs button.active[data-v-9a815823]{border-bottom-color:var(--color-primary);color:var(--color-primary)}.admin-tabs span[data-v-9a815823],.badge[data-v-9a815823]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.badge.muted[data-v-9a815823]{background:var(--color-surface-muted);color:var(--color-text-muted)}.message[data-v-9a815823]{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:10px;margin:24px 0 0;padding:14px 16px}.message.error[data-v-9a815823]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.message.success[data-v-9a815823]{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.card[data-v-9a815823]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px}.budget-card[data-v-9a815823],.data-card[data-v-9a815823]{margin-top:24px}.budget-card[data-v-9a815823]{padding:22px}.budget-content[data-v-9a815823]{border-top:1px solid var(--color-border);grid-template-columns:minmax(250px,.8fr) minmax(460px,1.7fr);gap:28px;margin-top:22px;padding-top:22px;display:grid}.budget-primary[data-v-9a815823]{color:var(--color-text-muted);flex-direction:column;gap:3px;font-size:13px;display:flex}.budget-primary strong[data-v-9a815823]{color:var(--color-text);font-size:29px}.progress-track[data-v-9a815823]{background:var(--color-surface-muted);border-radius:999px;height:8px;margin-top:14px;overflow:hidden}.progress-track span[data-v-9a815823]{background:var(--color-action);height:100%;display:block}.budget-metrics[data-v-9a815823]{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:0;display:grid}.budget-metrics div[data-v-9a815823]{background:var(--color-primary-subtle);border-radius:9px;padding:14px}.budget-metrics dt[data-v-9a815823]{color:var(--color-text-muted);font-size:12px}.budget-metrics dd[data-v-9a815823]{margin:8px 0 0;font-size:15px;font-weight:700}.muted-text[data-v-9a815823]{color:var(--color-text-muted);margin:18px 0 0}.metrics-grid[data-v-9a815823]{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;display:grid}.metric[data-v-9a815823]{flex-direction:column;min-height:112px;padding:18px;display:flex}.metric span[data-v-9a815823],.metric small[data-v-9a815823]{color:var(--color-text-muted);font-size:12px}.metric strong[data-v-9a815823]{margin:auto 0 4px;font-size:26px}.data-card[data-v-9a815823]{overflow:hidden}.data-card>.section-heading[data-v-9a815823]{border-bottom:1px solid var(--color-border);padding:20px 22px}.filters[data-v-9a815823]{border-bottom:1px solid var(--color-border);justify-content:flex-start;padding:14px 22px}.filters input[data-v-9a815823]{width:min(520px,100%);padding:0 14px}.filters select[data-v-9a815823]{width:220px;padding:0 12px}.table-scroll[data-v-9a815823]{overflow-x:auto}table[data-v-9a815823]{border-collapse:collapse;width:100%;font-size:13px}th[data-v-9a815823]{background:var(--color-primary-subtle);color:var(--color-text-muted);text-align:left;text-transform:uppercase;letter-spacing:.04em;padding:13px 14px;font-size:11px}td[data-v-9a815823]{border-top:1px solid var(--color-border);vertical-align:top;padding:15px 14px}td strong[data-v-9a815823],td span[data-v-9a815823]{display:block}td span[data-v-9a815823]{color:var(--color-text-muted);margin-top:4px;font-size:12px}.primary-text[data-v-9a815823]{color:var(--color-primary)}.small-button[data-v-9a815823]{white-space:nowrap;min-height:36px;padding:0 12px}.role-badge[data-v-9a815823]{background:var(--color-surface-muted);border-radius:999px;padding:5px 9px;display:inline-block}.role-badge.admin[data-v-9a815823]{background:var(--color-primary-soft);color:var(--color-primary)}.empty[data-v-9a815823]{text-align:center;color:var(--color-text-muted);padding:28px}.empty.standalone[data-v-9a815823]{border-top:1px solid var(--color-border)}.job-summary[data-v-9a815823]{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px;display:grid}.job-summary div[data-v-9a815823]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;flex-direction:column;padding:18px;display:flex}.job-summary strong[data-v-9a815823]{font-size:26px}.job-summary span[data-v-9a815823]{color:var(--color-text-muted);font-size:13px}.job-groups>div[data-v-9a815823]{border-top:1px solid var(--color-border);padding:20px 22px}.job-groups>div[data-v-9a815823]:first-child{border-top:0}.job-row[data-v-9a815823]{border:1px solid var(--color-border);border-radius:10px;padding:14px}.job-row+.job-row[data-v-9a815823]{margin-top:10px}.job-row div[data-v-9a815823]{min-width:0}.job-row span[data-v-9a815823],.job-row small[data-v-9a815823]{color:var(--color-text-muted);overflow-wrap:anywhere;margin-top:5px;display:block}.job-row small[data-v-9a815823]{font-size:12px}@media (width<=900px){.budget-content[data-v-9a815823]{grid-template-columns:1fr}.budget-metrics[data-v-9a815823],.metrics-grid[data-v-9a815823]{grid-template-columns:repeat(2,1fr)}.admin-tabs[data-v-9a815823]{overflow-x:auto}.job-summary[data-v-9a815823]{grid-template-columns:1fr}}@media (width<=620px){.admin-page[data-v-9a815823]{padding:28px 0 48px}.page-header[data-v-9a815823],.section-heading[data-v-9a815823],.filters[data-v-9a815823],.job-row[data-v-9a815823]{flex-direction:column;align-items:stretch}.budget-metrics[data-v-9a815823],.metrics-grid[data-v-9a815823]{grid-template-columns:1fr}.filters select[data-v-9a815823]{width:100%}.job-row button[data-v-9a815823]{align-self:flex-start}}.job-row .job-status[data-v-9a815823]{background:var(--color-surface-muted);color:var(--color-text);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.job-filters input[data-v-9a815823]{flex:1}.job-filters select[data-v-9a815823]{width:190px}.job-timeline[data-v-9a815823]{padding:4px 22px 24px}.timeline-day[data-v-9a815823]{padding-top:22px}.timeline-day>h3[data-v-9a815823]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px 84px;font-size:12px;font-weight:700}.timeline-list[data-v-9a815823]{position:relative}.timeline-list[data-v-9a815823]:before{background:var(--color-border);content:"";width:1px;position:absolute;top:12px;bottom:12px;left:67px}.timeline-entry[data-v-9a815823]{grid-template-columns:48px 14px minmax(0,1fr) auto;align-items:start;gap:12px;padding:12px 0;display:grid;position:relative}.timeline-entry time[data-v-9a815823]{color:var(--color-text-muted);text-align:right;padding-top:3px;font-size:12px}.timeline-marker[data-v-9a815823]{z-index:1;border:3px solid var(--color-surface);background:var(--color-code-surface);width:11px;height:11px;box-shadow:0 0 0 1px var(--color-border);border-radius:50%;margin-top:4px}.timeline-marker.status-processing[data-v-9a815823],.timeline-marker.status-extracting[data-v-9a815823],.timeline-marker.status-extracting_knowledge[data-v-9a815823],.timeline-marker.status-reducing[data-v-9a815823],.timeline-marker.status-cleaning[data-v-9a815823],.timeline-marker.status-chunking[data-v-9a815823]{background:var(--color-action)}.timeline-marker.status-completed[data-v-9a815823],.timeline-marker.status-ready[data-v-9a815823]{background:var(--color-success-action)}.timeline-marker.status-failed[data-v-9a815823],.timeline-marker.retryable[data-v-9a815823]{background:var(--color-danger-action)}.timeline-content[data-v-9a815823]{border-bottom:1px solid var(--color-border);min-width:0;padding:0 0 14px}.timeline-title[data-v-9a815823]{align-items:center;gap:10px;min-height:20px;display:flex}.timeline-title strong[data-v-9a815823]{font-size:14px;line-height:1.45}.timeline-content>p[data-v-9a815823]{color:var(--color-text-muted);margin:5px 0 8px;font-size:13px;line-height:1.5}.timeline-meta[data-v-9a815823]{color:var(--color-text-muted);flex-wrap:wrap;gap:5px 16px;font-size:11px;display:flex}.timeline-meta span[data-v-9a815823]{position:relative}.timeline-meta span+span[data-v-9a815823]:before{content:"·";position:absolute;left:-9px}.job-status[data-v-9a815823]{background:var(--color-surface-muted);color:var(--color-text);border-radius:999px;flex:none;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.job-status.status-completed[data-v-9a815823],.job-status.status-ready[data-v-9a815823]{background:var(--color-success-soft);color:var(--color-success)}.job-status.status-processing[data-v-9a815823],.job-status.status-extracting[data-v-9a815823],.job-status.status-extracting_knowledge[data-v-9a815823],.job-status.status-reducing[data-v-9a815823],.job-status.status-cleaning[data-v-9a815823],.job-status.status-chunking[data-v-9a815823]{background:var(--color-primary-soft);color:var(--color-primary)}.job-status.status-failed[data-v-9a815823],.job-status.status-completed_with_errors[data-v-9a815823]{background:var(--color-danger-soft);color:var(--color-danger)}.technical-details[data-v-9a815823]{color:var(--color-text-muted);margin-top:9px;font-size:11px}.technical-details summary[data-v-9a815823]{cursor:pointer;width:max-content;font-weight:700}.technical-details p[data-v-9a815823]{overflow-wrap:anywhere;margin:7px 0}.technical-details code[data-v-9a815823]{background:var(--color-surface-subtle);border-radius:4px;padding:3px 6px;font-size:10px;display:inline-block}.technical-details .error-detail[data-v-9a815823]{color:var(--color-danger)}.retry-button[data-v-9a815823]{align-self:start;margin-left:10px}.timeline-entry:last-child .timeline-content[data-v-9a815823]{border-bottom:0}@media (width<=620px){.job-timeline[data-v-9a815823]{padding-inline:16px}.timeline-day>h3[data-v-9a815823]{margin-left:0}.timeline-list[data-v-9a815823]:before{left:5px}.timeline-entry[data-v-9a815823]{grid-template-columns:14px minmax(0,1fr)}.timeline-entry time[data-v-9a815823]{text-align:left;grid-column:2}.timeline-marker[data-v-9a815823]{grid-area:1/1/3}.timeline-content[data-v-9a815823]{grid-column:2}.retry-button[data-v-9a815823]{grid-column:2;margin:0}.timeline-title[data-v-9a815823]{flex-direction:column;align-items:flex-start;gap:6px}}@media (width<=650px){.admin-page[data-v-9a815823]{width:calc(100% - 32px)}}.instructor-dashboard[data-v-9e33c049]{width:100%;color:var(--color-text);padding:2rem}.page-heading[data-v-9e33c049]{margin-bottom:1.5rem}.page-heading h2[data-v-9e33c049]{margin:0}.page-heading p[data-v-9e33c049]{color:var(--color-text-muted);margin:.5rem 0 0}.dashboard-stats[data-v-9e33c049]{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.dashboard-stat[data-v-9e33c049]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;gap:.75rem;padding:1.5rem;display:grid}.dashboard-stat span[data-v-9e33c049]{color:var(--color-text-muted)}.dashboard-stat strong[data-v-9e33c049]{font-size:2rem}.dashboard-error[data-v-9e33c049]{color:var(--color-danger)}@media (width<=900px){.dashboard-stats[data-v-9e33c049]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.instructor-dashboard[data-v-9e33c049]{padding:1rem}.dashboard-stats[data-v-9e33c049]{grid-template-columns:1fr}}.mentor-lion[data-v-8d893bf5]{-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block}.mentor-lion__image[data-v-8d893bf5]{object-fit:contain;-webkit-user-drag:none;width:100%;height:100%;display:block}.mentor-typewriter[data-v-09ffa0e8]{min-width:0;color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;display:block;position:relative}.mentor-typewriter__visual[data-v-09ffa0e8]{color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;white-space:pre-wrap;display:block;position:relative}.mentor-typewriter__token--word[data-v-09ffa0e8]{white-space:nowrap;display:inline-block}.mentor-typewriter__character[data-v-09ffa0e8]{visibility:hidden;position:relative}.mentor-typewriter__character--visible[data-v-09ffa0e8]{visibility:visible}.mentor-typewriter__cursor[data-v-09ffa0e8]{opacity:.78;visibility:visible;background:currentColor;border-radius:1px;width:1px;height:1em;margin-left:.08em;animation:1.05s step-end infinite mentor-cursor-blink-09ffa0e8;display:block;position:absolute;top:.08em;left:100%}.mentor-typewriter__cursor--start[data-v-09ffa0e8]{margin-left:0;top:.08em;left:0}.mentor-typewriter__accessible[data-v-09ffa0e8]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes mentor-cursor-blink-09ffa0e8{0%,34%{opacity:.78}35%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.mentor-typewriter__cursor[data-v-09ffa0e8]{animation:none;display:none}}.course-dashboard[data-v-7977203d]{width:100%;min-height:calc(100dvh - 80px);color:var(--color-text);justify-content:center;align-items:center;display:flex}.dashboard-content[data-v-7977203d]{gap:44px;width:100%;max-width:900px;margin:0 auto;padding:12px 0 28px;display:grid}.mentor-welcome[data-v-7977203d]{grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:32px;width:min(720px,100%);min-height:250px;margin:0 auto;display:grid}.mentor-bubble[data-v-7977203d]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:22px;padding:22px 26px;position:relative}.mentor-bubble[data-v-7977203d]:after{border-top:1px solid var(--color-border-subtle);border-right:1px solid var(--color-border-subtle);background:var(--color-surface);content:"";width:14px;height:14px;position:absolute;top:50%;right:-8px;transform:translateY(-50%)rotate(45deg)}.mentor-bubble p[data-v-7977203d]{max-width:430px;color:var(--color-text);letter-spacing:0;text-align:left;-webkit-font-smoothing:antialiased;margin:0;font-size:1.3rem;font-weight:300;line-height:1.18}.mentor-figure[data-v-7977203d]{justify-content:center;align-items:center;height:250px;display:flex}.dashboard-mentor-lion[data-v-7977203d]{object-fit:contain;object-position:center;width:auto;max-width:100%;height:250px;display:block}.lesson-state-card[data-v-7977203d]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:22px;align-items:center;width:100%;min-height:340px;padding:56px 64px;display:flex}.lesson-state-copy[data-v-7977203d]{max-width:620px}.lesson-state-copy--active[data-v-7977203d]{width:100%;max-width:none}.lesson-state-copy--active h2[data-v-7977203d]{max-width:700px}.lesson-state-header[data-v-7977203d]{align-items:center;gap:16px;margin-bottom:20px;display:flex}.lesson-state-header .lesson-state-eyebrow[data-v-7977203d]{margin:0}.lesson-status[data-v-7977203d]{color:var(--color-text);-webkit-font-smoothing:antialiased;flex:none;align-items:center;gap:8px;padding-left:20px;font-size:15px;font-weight:500;line-height:1.2;display:inline-flex}.lesson-status--ready[data-v-7977203d]{color:var(--color-success)}.lesson-status svg[data-v-7977203d]{fill:none;width:17px;height:17px;stroke:var(--color-text-muted);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.lesson-status--ready svg[data-v-7977203d]{width:19px;height:19px;stroke:var(--color-success);stroke-width:2.6px;transform:translateY(1px)}.lesson-status--error svg[data-v-7977203d]{stroke:var(--color-danger)}.lesson-status__spinner[data-v-7977203d]{box-sizing:border-box;border:2px solid var(--color-primary-border);border-top-color:var(--color-primary);border-radius:50%;width:17px;height:17px;animation:.8s linear infinite dashboard-spin-7977203d}@media (width<=400px){.lesson-state-header[data-v-7977203d]{align-items:flex-start;gap:10px}.lesson-status[data-v-7977203d]{flex-shrink:1;max-width:50%}.lesson-status svg[data-v-7977203d],.lesson-status__spinner[data-v-7977203d]{flex:none}}@media (prefers-reduced-motion:reduce){.lesson-status__spinner[data-v-7977203d]{animation:none}}.lesson-state-eyebrow[data-v-7977203d]{color:var(--color-primary,var(--color-primary));letter-spacing:.08em;text-transform:uppercase;margin:0 0 20px;font-size:12px;font-weight:800}.lesson-state-card h2[data-v-7977203d]{color:var(--color-text);letter-spacing:-.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:26px;font-weight:800;line-height:1.2}.lesson-state-card p[data-v-7977203d]:not(.lesson-state-eyebrow){max-width:700px;color:var(--color-text-muted);-webkit-font-smoothing:ANTIALIASED;margin:16px 0 0;font-size:17px;line-height:1.55}.lesson-primary-link[data-v-7977203d]{background:var(--color-action,var(--color-action));min-height:44px;color:var(--color-on-accent);border-radius:7px;justify-content:center;align-items:center;gap:10px;margin-top:26px;padding:10px 18px;font-size:14px;font-weight:750;text-decoration:none;transition:background-color .14s,transform .14s;display:inline-flex}.lesson-primary-link[data-v-7977203d]:hover{background:var(--color-action-hover);transform:translateY(-1px)}.lesson-primary-link[data-v-7977203d]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.lesson-primary-link svg[data-v-7977203d]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.dashboard-message[data-v-7977203d]{border-radius:8px;width:100%;margin:0;padding:12px 14px;font-size:14px;line-height:1.45}.dashboard-message-error[data-v-7977203d]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.lesson-state-loading[data-v-7977203d]{gap:18px}.loading-spinner[data-v-7977203d]{border:3px solid var(--color-primary-border);border-top-color:var(--color-primary,var(--color-primary));border-radius:50%;flex:none;width:24px;height:24px;animation:.7s linear infinite dashboard-spin-7977203d}@keyframes dashboard-spin-7977203d{to{transform:rotate(360deg)}}@media (width<=900px){.mentor-welcome[data-v-7977203d]{grid-template-columns:minmax(0,1fr) 190px;gap:26px;width:min(680px,100%)}.mentor-figure[data-v-7977203d],.dashboard-mentor-lion[data-v-7977203d]{height:215px}.lesson-state-card[data-v-7977203d]{min-height:300px;padding:46px 44px}}@media (width<=660px){.course-dashboard[data-v-7977203d]{align-items:flex-start;min-height:auto}.dashboard-content[data-v-7977203d]{gap:24px;padding-bottom:28px}.mentor-welcome[data-v-7977203d]{grid-template-columns:1fr;gap:8px;min-height:auto}.mentor-bubble[data-v-7977203d]{order:2;padding:20px}.mentor-bubble[data-v-7977203d]:before,.mentor-bubble[data-v-7977203d]:after{display:none}.mentor-figure[data-v-7977203d]{order:1;height:175px}.dashboard-mentor-lion[data-v-7977203d]{height:175px}.lesson-state-card[data-v-7977203d]{min-height:0;padding:30px 24px}}.generation-status[data-v-6dbf87eb]{z-index:900;bottom:max(20px, env(safe-area-inset-bottom));border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;width:min(360px,100vw - 32px);position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0000004d}button[data-v-6dbf87eb]{font:inherit;cursor:pointer;color:var(--color-text)}.generation-status-open[data-v-6dbf87eb]{border-radius:inherit;text-align:left;background:0 0;border:0;gap:5px;width:100%;min-height:90px;padding:18px 42px 18px 18px;display:grid}.generation-status-open[data-v-6dbf87eb]:hover,.generation-results button[data-v-6dbf87eb]:hover{background:var(--color-primary-soft)}.generation-status-open strong[data-v-6dbf87eb]{color:var(--color-primary)}.generation-status-open span[data-v-6dbf87eb]{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.generation-status-open span[data-v-6dbf87eb],.generation-note[data-v-6dbf87eb]{color:var(--color-text-muted);font-size:.9rem}.generation-status-dismiss[data-v-6dbf87eb]{position:absolute;top:5px;right:5px}.generation-status-dismiss[data-v-6dbf87eb],.generation-dialog header button[data-v-6dbf87eb]{width:32px;height:32px;box-shadow:none;background:0 0;border:0;border-radius:8px;outline:none;justify-content:center;align-items:center;padding:0;font-size:24px;line-height:1;display:flex}.generation-status-dismiss[data-v-6dbf87eb]:focus,.generation-status-dismiss[data-v-6dbf87eb]:focus-visible,.generation-dialog header button[data-v-6dbf87eb]:focus,.generation-dialog header button[data-v-6dbf87eb]:focus-visible{box-shadow:none;border:0;outline:none}.generation-status-dismiss[data-v-6dbf87eb]:hover,.generation-dialog header button[data-v-6dbf87eb]:hover{background:var(--color-surface-hover);color:var(--color-text-secondary)}.generation-dialog[data-v-6dbf87eb]:focus,.generation-dialog[data-v-6dbf87eb]:focus-visible{outline:none}.generation-dialog[data-v-6dbf87eb]{width:min(620px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:24px;overflow-y:auto}.generation-dialog[data-v-6dbf87eb]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.generation-dialog header[data-v-6dbf87eb]{justify-content:space-between;align-items:start;gap:12px;display:flex}.generation-dialog h2[data-v-6dbf87eb]{margin:0;font-size:1.25rem}.generation-objective[data-v-6dbf87eb]{font-weight:600}.generation-results[data-v-6dbf87eb]{gap:8px;padding:0;list-style:none;display:grid}.generation-results button[data-v-6dbf87eb]{text-align:left;overflow-wrap:anywhere;width:100%}.generation-dialog footer[data-v-6dbf87eb]{flex-wrap:wrap;justify-content:end;gap:10px;margin-top:24px;display:flex}.generation-dialog footer button[data-v-6dbf87eb],.generation-results button[data-v-6dbf87eb]{border:1px solid var(--color-border);background:0 0;border-radius:8px;padding:10px 14px}@media (width<=600px){.generation-dialog[data-v-6dbf87eb]{padding:18px}}.practice-overlay[data-v-0ea089d3]{z-index:2000;box-sizing:border-box;width:100%;max-width:none;height:100%;max-height:none;color:inherit;background:var(--color-backdrop);-webkit-backdrop-filter:blur(7px);border:0;justify-content:center;align-items:center;margin:0;padding:24px;display:flex;position:fixed;inset:0}.practice-overlay[data-v-0ea089d3]:not([open]){display:none}.practice-overlay[data-v-0ea089d3]::backdrop{background:0 0}.practice-dialog[data-v-0ea089d3]{overscroll-behavior:contain;box-sizing:border-box;background:var(--color-surface);width:min(640px,100%);max-height:calc(100dvh - 48px);color:var(--color-text);box-shadow:0 24px 80px var(--color-shadow-strong);border-radius:22px;padding:36px;position:relative;overflow-y:auto}.practice-dialog h2[data-v-0ea089d3]{margin:0 36px 10px 0;font-size:25px}.practice-close[data-v-0ea089d3]{background:var(--color-surface-subtle);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:18px;right:18px}.practice-close svg[data-v-0ea089d3]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px}.practice-description[data-v-0ea089d3]{color:var(--color-text-muted);margin:0 0 20px;font-size:14px;line-height:1.6}.practice-objective[data-v-0ea089d3]{background:var(--color-primary-subtle);border-radius:12px;margin:20px 0;padding:12px 16px;font-weight:600}.practice-types[data-v-0ea089d3],.practice-count[data-v-0ea089d3]{border:0;min-width:0;margin:0 0 24px;padding:0}.practice-types[data-v-0ea089d3]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.practice-types.single[data-v-0ea089d3]{grid-template-columns:1fr}.practice-option[data-v-0ea089d3]{border:1.5px solid var(--color-border);cursor:pointer;border-radius:14px;align-items:flex-start;gap:10px;padding:18px 14px;display:flex}.practice-option.selected[data-v-0ea089d3]{border-color:var(--color-primary);background:var(--color-primary-subtle)}.practice-option.unavailable[data-v-0ea089d3]{opacity:.55;cursor:default}.practice-option input[data-v-0ea089d3]{accent-color:var(--color-primary);margin:3px 0 0}.practice-option strong[data-v-0ea089d3],.practice-option span span[data-v-0ea089d3],.practice-option small[data-v-0ea089d3]{display:block}.practice-option strong[data-v-0ea089d3]{margin-bottom:7px;font-size:15px}.practice-option span span[data-v-0ea089d3],.practice-option small[data-v-0ea089d3]{color:var(--color-text-muted);font-size:12px;line-height:1.5}.practice-option small[data-v-0ea089d3]{margin-top:8px}.practice-count legend[data-v-0ea089d3]{margin-bottom:12px;font-size:14px;font-weight:600}.practice-count-options[data-v-0ea089d3]{gap:10px;display:flex}.practice-count-options label[data-v-0ea089d3]{border:1px solid var(--color-border);text-align:center;cursor:pointer;border-radius:10px;flex:1;padding:12px}.practice-count-options label.selected[data-v-0ea089d3]{border-color:var(--color-primary);background:var(--color-primary-subtle)}.practice-count-options input[data-v-0ea089d3]{accent-color:var(--color-primary)}.practice-count .practice-description[data-v-0ea089d3]{margin:12px 0 0}.practice-preserve[data-v-0ea089d3]{color:var(--color-text-muted);margin:0 0 24px;font-size:13px}.practice-actions[data-v-0ea089d3]{justify-content:flex-end;gap:12px;display:flex}.practice-actions button[data-v-0ea089d3]{font:inherit;cursor:pointer;border-radius:10px;padding:13px 20px;font-size:14px;font-weight:600}.practice-cancel[data-v-0ea089d3]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted)}.practice-start[data-v-0ea089d3]{border:1px solid var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}button[data-v-0ea089d3]:disabled{opacity:.55;cursor:default}button[data-v-0ea089d3]:focus-visible,input[data-v-0ea089d3]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}.practice-error[data-v-0ea089d3]{color:var(--color-danger);font-size:14px}.sr-only[data-v-0ea089d3]{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=560px){.practice-overlay[data-v-0ea089d3]{padding:14px}.practice-dialog[data-v-0ea089d3]{max-height:calc(100dvh - 28px);padding:28px 20px}.practice-types[data-v-0ea089d3]{grid-template-columns:1fr}.practice-actions[data-v-0ea089d3]{flex-direction:column-reverse}.practice-actions button[data-v-0ea089d3]{width:100%}}.skill-node[data-v-be41e6b2]{z-index:3;width:68px;height:68px;color:var(--color-on-accent);font:inherit;cursor:pointer;background:0 0;border:0;outline:none;padding:0;position:absolute;transform:translate(-50%,-50%)}.skill-node[data-v-be41e6b2]:disabled{cursor:default}.node-circle[data-v-be41e6b2]{border:5px solid var(--color-node-border);background:var(--color-action);width:68px;height:68px;color:var(--color-on-accent);box-shadow:0 0 0 3px var(--color-primary-soft), 0 8px 20px var(--color-primary-shadow);border-radius:50%;place-items:center;transition:transform .15s,box-shadow .15s,background .15s;display:grid}.node-circle svg[data-v-be41e6b2]{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:27px;height:27px}.node-circle .play-icon[data-v-be41e6b2]{fill:currentColor;stroke:none;width:29px;height:29px}.skill-node:not(:disabled):hover .node-circle[data-v-be41e6b2]{transform:translateY(-2px)}.skill-node:focus-visible .node-circle[data-v-be41e6b2],.skill-node.is-selected .node-circle[data-v-be41e6b2]{box-shadow:0 0 0 5px var(--color-primary-shadow), 0 0 0 9px var(--color-primary-shadow), 0 8px 22px var(--color-primary-shadow)}.node-information[data-v-be41e6b2]{width:200px;color:var(--color-text);text-align:left;pointer-events:none;flex-direction:column;align-items:flex-start;display:flex;position:absolute;top:50%;left:92px;transform:translateY(-50%)}.label-left .node-information[data-v-be41e6b2]{text-align:right;align-items:flex-end;left:auto;right:92px}.skill-name[data-v-be41e6b2]{width:100%;max-height:50px;color:var(--color-text);text-align:left;-webkit-line-clamp:2;-webkit-font-smoothing:antialiased;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.label-left .skill-name[data-v-be41e6b2]{text-align:right}.objective-dots[data-v-be41e6b2],.empty-skill-dots[data-v-be41e6b2]{flex-wrap:wrap;justify-content:flex-start;gap:7px;min-height:8px;margin-top:8px;display:flex}.label-left .objective-dots[data-v-be41e6b2],.label-left .empty-skill-dots[data-v-be41e6b2]{justify-content:flex-end}.objective-dot[data-v-be41e6b2],.empty-skill-dots span[data-v-be41e6b2]{background:var(--color-progress-idle);border-radius:50%;width:8px;height:8px}.objective-dot.mastered[data-v-be41e6b2]{background:var(--color-success-action)}.objective-dot.ongoing[data-v-be41e6b2]{background:var(--color-warning-action)}.missing-objectives[data-v-be41e6b2]{justify-content:flex-start;align-items:center;min-height:17px;margin-top:7px;display:flex}.label-left .missing-objectives[data-v-be41e6b2]{justify-content:flex-end}.missing-objective-dot[data-v-be41e6b2]{background:var(--color-progress-idle);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-danger-shadow);border-radius:50%}.new-badge[data-v-be41e6b2]{background:var(--color-primary-soft);color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-top:5px;padding:2px 7px;font-size:9px;font-weight:850}.state-mastered .node-circle[data-v-be41e6b2]{background:var(--color-success-action);box-shadow:0 0 0 3px var(--color-success-soft), 0 8px 20px var(--color-success-shadow)}.is-content-blocked .node-circle[data-v-be41e6b2]{color:var(--color-warning);background:var(--color-warning-badge);box-shadow:0 0 0 3px var(--color-border-subtle)}.content-blocked-badge[data-v-be41e6b2]{color:var(--color-warning);margin-bottom:7px;font-size:11px;font-weight:600;line-height:1.3}.state-locked .node-circle[data-v-be41e6b2]{color:var(--color-text-muted);background:var(--color-surface-muted);box-shadow:0 0 0 3px var(--color-border-subtle), 0 7px 18px var(--color-shadow-soft)}.state-locked .skill-name[data-v-be41e6b2],.state-empty .skill-name[data-v-be41e6b2]{color:var(--color-text-muted)}.state-empty .node-circle[data-v-be41e6b2]{color:#0000;background:var(--color-surface-muted);box-shadow:0 0 0 2px var(--color-border-subtle), 0 5px 15px var(--color-shadow-soft)}.skill-node.has-active-lesson:focus-visible .node-circle[data-v-be41e6b2]{outline:3px solid var(--color-primary);outline-offset:9px}.active-lesson-badge[data-v-be41e6b2]{background:var(--color-warning-badge);color:var(--color-warning);white-space:nowrap;border-radius:999px;margin-bottom:7px;padding:4px 10px;font-size:11px;font-weight:500;line-height:1.3}@media (width<=820px){.node-information[data-v-be41e6b2]{width:160px;left:86px}.label-left .node-information[data-v-be41e6b2]{left:auto;right:86px}.skill-name[data-v-be41e6b2]{font-size:14px}}@media (width<=760px){.node-information[data-v-be41e6b2]{width:min(160px, calc(100cqw - var(--node-x) - 52px))}.label-left .node-information[data-v-be41e6b2]{width:min(160px, calc(var(--node-x) - 52px))}.skill-name[data-v-be41e6b2]{overflow-wrap:anywhere;white-space:normal;-webkit-line-clamp:unset;max-height:none;display:block;overflow:visible}.active-lesson-badge[data-v-be41e6b2],.content-blocked-badge[data-v-be41e6b2]{white-space:normal;overflow-wrap:anywhere;max-width:100%}}.skill-path-card[data-v-a9070c81]{width:100%;min-width:0;padding:4px 22px 40px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.skill-path-groups[data-v-a9070c81]{gap:18px;width:min(100%,920px);margin:0 auto;padding:0;list-style:none;display:grid}.skill-path-group[data-v-a9070c81]{min-width:0}.group-divider[data-v-a9070c81]{grid-template-columns:minmax(32px,1fr) auto minmax(32px,1fr);align-items:center;gap:18px;min-height:54px;margin:2px 0 8px;display:grid}.group-divider__line[data-v-a9070c81]{background:var(--color-surface-muted);height:1px}.group-divider__content[data-v-a9070c81]{min-width:0;color:var(--color-text);justify-content:center;align-items:center;display:inline-flex}.group-divider__content strong[data-v-a9070c81]{text-overflow:ellipsis;white-space:nowrap;max-width:520px;color:var(--color-text-muted);-webkit-font-smoothing:antialiased;font-size:17px;font-weight:750;line-height:1.25;overflow:hidden}.group-stage[data-v-a9070c81]{width:100%;min-width:0;position:relative}.group-path[data-v-a9070c81]{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.path-segment[data-v-a9070c81]{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.path-segment--base-shadow[data-v-a9070c81]{opacity:.26;stroke:var(--color-path-idle-shadow);stroke-width:25px}.path-segment--base[data-v-a9070c81]{stroke:var(--color-path-idle);stroke-width:11px}.path-segment--active-shadow[data-v-a9070c81]{opacity:.22;stroke:var(--color-path-shadow);stroke-width:31px}.path-segment--active[data-v-a9070c81]{stroke:var(--color-path-active);stroke-width:11px}@media (width<=820px){.skill-path-card[data-v-a9070c81]{padding-left:8px;padding-right:8px}.skill-path-groups[data-v-a9070c81]{width:100%}.group-divider[data-v-a9070c81]{gap:10px}.group-divider__content strong[data-v-a9070c81]{max-width:300px;font-size:15px}}@media (width<=760px){.skill-path-card[data-v-a9070c81]{padding-inline:16px}.group-stage[data-v-a9070c81]{container-type:inline-size}.group-divider__content strong[data-v-a9070c81]{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;text-align:center;max-width:100%;line-height:1.4;overflow:visible}}.responsive-skill-sheet[data-v-be642a88]{min-width:0}.is-compact[data-v-be642a88]{inset:auto var(--skill-sheet-right,0px) 0 var(--skill-sheet-left,0px);width:calc(100vw - var(--skill-sheet-left,0px) - var(--skill-sheet-right,0px));max-width:none;max-height:min(78dvh, calc(100dvh - 80px - env(safe-area-inset-top,0px)));box-sizing:border-box;overscroll-behavior:none;border:1px solid var(--color-border-subtle);background:var(--color-surface);color:var(--color-text);box-shadow:0 -12px 40px var(--color-shadow-strong);border-bottom:0;border-radius:22px 22px 0 0;margin:0 auto;padding:0;transition:transform .18s;position:fixed;overflow:hidden}.is-compact[data-v-be642a88]:not([open]){display:none}.is-compact[data-v-be642a88]::backdrop{-webkit-backdrop-filter:none;touch-action:none;background:0 0}.is-dragging[data-v-be642a88]{transition:none}.skill-sheet-grip[data-v-be642a88]{cursor:grab;touch-action:none;background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:44px;padding:0;display:flex}.skill-sheet-grip[data-v-be642a88]:active{cursor:grabbing}.skill-sheet-grip span[data-v-be642a88]{background:var(--color-text-muted);border-radius:999px;width:38px;height:4px}.skill-sheet-grip[data-v-be642a88]:focus,.skill-sheet-grip[data-v-be642a88]:focus-visible{box-shadow:none;outline:none}.skill-sheet-grip:focus-visible span[data-v-be642a88]{width:48px}.is-compact .skill-sheet-content[data-v-be642a88]{max-height:min(calc(78dvh - 44px), calc(100dvh - 124px - env(safe-area-inset-top,0px)));overscroll-behavior:contain;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto}.is-compact[data-v-be642a88] .skill-detail-sidebar{overscroll-behavior-y:contain;border:0;border-radius:0}@media (prefers-reduced-motion:reduce){.is-compact[data-v-be642a88]{transition:none}}.skill-detail-sidebar[data-v-8bbef723]{z-index:40;top:var(--skill-sidebar-offset,18px);right:var(--skill-sidebar-right,18px);bottom:var(--skill-sidebar-offset,18px);width:var(--skill-sidebar-width,332px);overscroll-behavior:contain;border:1px solid var(--color-border-subtle);background:var(--color-surface);min-width:0;color:var(--color-text);scrollbar-width:thin;scrollbar-color:var(--color-primary-border) transparent;border-radius:22px;position:fixed;overflow:hidden auto}.skill-detail-sidebar[data-v-8bbef723]::-webkit-scrollbar{width:7px}.skill-detail-sidebar[data-v-8bbef723]::-webkit-scrollbar-thumb{background:var(--color-primary-soft);border-radius:999px}.sidebar-content[data-v-8bbef723]{padding:22px 23px 20px}.skill-group-name[data-v-8bbef723]{color:var(--color-primary);letter-spacing:.055em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:850}.skill-description[data-v-8bbef723]{color:var(--color-text-muted);margin:11px 0 0;font-size:13px;line-height:1.45}.skill-state[data-v-8bbef723]{background:var(--color-primary-subtle);color:var(--color-primary);border-radius:999px;margin-top:11px;padding:5px 9px;font-size:10px;font-weight:750;display:inline-flex}.sidebar-section[data-v-8bbef723]{border-bottom:1px solid var(--color-border-subtle);padding-bottom:17px}.section-title-row[data-v-8bbef723]{align-items:center;gap:9px;display:flex}.section-title-row h3[data-v-8bbef723]{color:var(--color-primary);margin:0;font-size:13px;font-weight:850}.objective-summary[data-v-8bbef723]{color:var(--color-text-muted);margin-left:6px;font-size:10px;font-weight:750}.target-icon[data-v-8bbef723]{border:2px solid var(--color-primary);border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:relative}.target-icon[data-v-8bbef723]:before{border:2px solid var(--color-primary);content:"";border-radius:50%;width:9px;height:9px}.target-icon span[data-v-8bbef723]{background:var(--color-action);border-radius:50%;width:3px;height:3px;position:absolute}.objective-selection-label[data-v-8bbef723]{color:var(--color-primary);letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:11px;font-weight:850}.objective-list[data-v-8bbef723]{gap:2px;margin:18px 0 0;padding:0 0 0 8px;list-style:none;display:grid}.objective-list[data-v-8bbef723]:before{display:none}.objective-list li[data-v-8bbef723]{min-width:0;color:var(--color-text);font-size:12px;line-height:1.42;position:relative}.objective-list li[data-v-8bbef723]:after{z-index:0;background:var(--color-surface-muted);content:"";border-radius:999px;width:2px;position:absolute;top:50%;bottom:calc(-50% - 2px);left:21px}.objective-list li[data-v-8bbef723]:last-child:after{display:none}.objective-option[data-v-8bbef723]{z-index:1;width:100%;min-width:0;min-height:62px;color:inherit;font:inherit;line-height:inherit;text-align:left;box-sizing:border-box;background:0 0;border:1px solid #0000;border-radius:14px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:14px;padding:11px 14px 11px 10px;display:grid;position:relative}.objective-option[data-v-8bbef723]:not(:disabled){cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.objective-option[data-v-8bbef723]:not(:disabled):hover{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.objective-option[data-v-8bbef723]:disabled{opacity:1}.objective-option[data-v-8bbef723]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:1px}.objective-selected .objective-option[data-v-8bbef723]{border-color:var(--color-primary-border);background:var(--color-primary-subtle);box-shadow:0 0 0 1px var(--color-primary-shadow)}.objective-marker[data-v-8bbef723]{z-index:2;border:2px solid var(--color-border);background:var(--color-surface);width:18px;height:18px;box-shadow:0 0 0 4px var(--color-border-subtle);box-sizing:border-box;border-radius:50%;margin:0 auto;display:block;position:relative}.objective-marker[data-v-8bbef723]:after{content:"";position:absolute}.objective-copy[data-v-8bbef723]{min-width:0;display:block}.objective-text[data-v-8bbef723]{min-width:0;color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:13px;font-weight:500;line-height:1.42;display:block}.objective-passed[data-v-8bbef723]{color:var(--color-text)!important}.objective-passed .objective-marker[data-v-8bbef723]{border-color:var(--color-success-border);background:var(--color-success-action)}.objective-passed .objective-marker[data-v-8bbef723]:after{border-right:2px solid var(--color-border-subtle);border-bottom:2px solid var(--color-border-subtle);width:4px;height:8px;top:43%;left:50%;transform:translate(-50%,-52%)rotate(45deg)}.objective-unavailable .objective-option[data-v-8bbef723],.instructor-sidebar .objective-unavailable .objective-option[data-v-8bbef723]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.objective-unavailable .objective-option[data-v-8bbef723]:not(:disabled):hover,.instructor-sidebar .objective-unavailable .objective-option[data-v-8bbef723]:not(:disabled):hover{border-color:var(--color-danger-border);background:var(--color-danger-soft)}.objective-selected.objective-unavailable .objective-option[data-v-8bbef723],.instructor-sidebar .objective-selected.objective-unavailable .objective-option[data-v-8bbef723]{border-color:var(--color-danger-border);background:var(--color-danger-soft);box-shadow:inset 0 0 0 1px var(--color-danger-shadow);color:var(--color-danger)}.objective-unavailable .objective-marker[data-v-8bbef723],.objective-selected.objective-unavailable .objective-marker[data-v-8bbef723]{border-color:var(--color-danger-border);background:var(--color-danger-action);box-shadow:0 0 0 4px var(--color-border-subtle)}.objective-unavailable .objective-marker[data-v-8bbef723]:after,.objective-selected.objective-unavailable .objective-marker[data-v-8bbef723]:after{background:var(--color-surface);border:0;border-radius:999px;width:8px;height:2px;top:50%;left:50%;transform:translate(-50%,-50%)}.instructor-sidebar .objective-list[data-v-8bbef723]{gap:4px;margin-top:15px;padding-left:0;display:grid}.instructor-sidebar .objective-list li[data-v-8bbef723]:after{display:none}.instructor-sidebar .objective-option[data-v-8bbef723]{border-color:#0000;border-radius:8px;min-height:0;padding:9px 11px;display:grid}.instructor-sidebar .objective-option[data-v-8bbef723]:not(:disabled):hover{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.instructor-sidebar .objective-selected .objective-option[data-v-8bbef723]{border-color:var(--color-primary-border);background:var(--color-primary-subtle);box-shadow:inset 3px 0 var(--color-primary-soft);color:var(--color-primary)}.objective-in-progress .objective-option[data-v-8bbef723],.objective-in-progress .objective-option[data-v-8bbef723]:not(:disabled):hover,.instructor-sidebar .objective-in-progress .objective-option[data-v-8bbef723],.instructor-sidebar .objective-in-progress .objective-option[data-v-8bbef723]:not(:disabled):hover{border-color:var(--color-warning-border);background:var(--color-warning-soft);box-shadow:inset 5px 0 var(--color-warning-action)}.objective-in-progress .objective-marker[data-v-8bbef723]{border-color:var(--color-objective-active-marker-border)}.objective-active-badge[data-v-8bbef723]{background:var(--color-warning-badge);width:fit-content;color:var(--color-warning);border-radius:999px;margin-top:7px;padding:3px 9px;font-size:10px;font-weight:700;line-height:1.4;display:inline-block}.empty-objectives[data-v-8bbef723]{color:var(--color-text-muted);margin:13px 0 0;font-size:12px;line-height:1.42}.pool-unavailable-message[data-v-8bbef723]{border:1px solid var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-muted)}.facets-section[data-v-8bbef723]{padding-top:15px}.facets-disclosure[data-v-8bbef723]{border:1px solid var(--color-border-subtle);background:var(--color-surface-subtle);border-radius:10px;overflow:hidden}.facets-heading[data-v-8bbef723]{cursor:pointer;background:0 0;align-items:center;gap:10px;padding:10px 12px;list-style:none;display:flex}.facets-heading[data-v-8bbef723]::-webkit-details-marker{display:none}.facets-heading[data-v-8bbef723]:hover{background:var(--color-primary-subtle)}.facets-heading[data-v-8bbef723]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:1px}.facet-count[data-v-8bbef723]{color:var(--color-text-muted);margin-left:auto;font-size:13px;font-weight:500}.facet-chevron[data-v-8bbef723]{fill:none;width:16px;height:16px;stroke:var(--color-text-muted);stroke-width:1.5px;flex-shrink:0}.facets-disclosure[open]>.facets-heading .facet-chevron[data-v-8bbef723]{transform:rotate(90deg)}.facet-list[data-v-8bbef723]{gap:10px;margin:0;padding:4px 12px 12px 30px;list-style:outside;display:grid}.facet-title[data-v-8bbef723]::marker{color:var(--color-primary)}.facet-title[data-v-8bbef723]{overflow-wrap:anywhere}.facets-state[data-v-8bbef723]{color:var(--color-text-muted);margin:0;padding:4px 12px 12px;font-size:11px;line-height:1.5}.pool-details-section[data-v-8bbef723]{padding-top:15px}.pool-details-heading[data-v-8bbef723]{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.pool-details-label[data-v-8bbef723]{color:var(--color-primary);letter-spacing:.055em;text-transform:uppercase;margin:0;font-size:10px;font-weight:850}.pool-details-trigger[data-v-8bbef723]{color:var(--color-primary);cursor:pointer;font:inherit;background:0 0;border:0;margin:0;padding:0;font-size:10px;font-weight:800;line-height:1.3}.pool-details-trigger[data-v-8bbef723]:hover:not(:disabled){color:var(--color-primary-hover);text-underline-offset:2px;text-decoration:underline}.pool-details-trigger[data-v-8bbef723]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}.pool-details-trigger[data-v-8bbef723]:disabled{color:var(--color-text-muted);cursor:default}.pool-details-content[data-v-8bbef723]{gap:12px;display:grid}.generation-settings-summary[data-v-8bbef723]{border:1px solid var(--color-border-subtle);background:var(--color-surface-subtle);border-radius:10px;margin-top:14px;padding:12px}.generation-settings-heading[data-v-8bbef723]{color:var(--color-primary);letter-spacing:.045em;text-transform:uppercase;margin:0 0 8px;font-size:9px;font-weight:800}.generation-mode-selector[data-v-8bbef723]{gap:7px;display:grid}.generation-mode-option[data-v-8bbef723]{border:1px solid var(--color-border-subtle);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;border-radius:9px;align-items:flex-start;gap:9px;padding:9px 10px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:flex}.generation-mode-option[data-v-8bbef723]:hover{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.generation-mode-option-selected[data-v-8bbef723]{border-color:var(--color-primary);background:var(--color-primary-subtle);box-shadow:inset 3px 0 0 var(--color-primary-soft)}.generation-mode-option input[data-v-8bbef723]{width:14px;height:14px;accent-color:var(--color-primary);flex:none;margin:2px 0 0}.generation-mode-option[data-v-8bbef723]:has(input:disabled){cursor:wait;opacity:.68}.generation-mode-copy[data-v-8bbef723]{min-width:0}.generation-mode-copy strong[data-v-8bbef723],.generation-mode-copy small[data-v-8bbef723]{display:block}.generation-mode-copy strong[data-v-8bbef723]{color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:13px;font-weight:550;line-height:1.42}.generation-mode-copy small[data-v-8bbef723]{color:var(--color-text-muted);margin-top:2px;font-size:9px;font-weight:500;line-height:1.35}.generation-settings-source[data-v-8bbef723],.generation-settings-message[data-v-8bbef723]{color:var(--color-text-muted);margin:6px 0 0;font-size:10px;line-height:1.4}.generation-settings-error[data-v-8bbef723]{color:var(--color-danger)}.generation-module-list[data-v-8bbef723]{gap:7px;margin:11px 0 0;padding:0;list-style:none;display:grid}.generation-module-list li[data-v-8bbef723]{color:var(--color-text-secondary);justify-content:space-between;align-items:baseline;gap:10px;font-size:11px;line-height:1.4;display:flex}.generation-module-list strong[data-v-8bbef723]{color:var(--color-text-secondary);flex:none;font-weight:800}.generation-subsection[data-v-8bbef723]{border-top:1px solid var(--color-border-subtle);margin-top:12px;padding-top:11px}.generation-subsection-heading-row[data-v-8bbef723]{justify-content:space-between;align-items:center;gap:8px;display:flex}.generation-subsection-title[data-v-8bbef723]{color:var(--color-text-secondary);margin:0 0 7px;font-size:10px;font-weight:800}.starter-mode-selector[data-v-8bbef723]{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.starter-mode-option[data-v-8bbef723]{border:1px solid var(--color-border-subtle);background:var(--color-surface);cursor:pointer;border-radius:8px;align-items:flex-start;gap:7px;padding:8px;display:flex}.starter-mode-option-selected[data-v-8bbef723]{border-color:var(--color-primary);background:var(--color-primary-subtle)}.starter-mode-option input[data-v-8bbef723]{width:13px;height:13px;accent-color:var(--color-primary);flex:none;margin:2px 0 0}.starter-mode-option strong[data-v-8bbef723],.starter-mode-option small[data-v-8bbef723]{display:block}.starter-mode-option strong[data-v-8bbef723]{color:var(--color-text);-webkit-font-smoothing:antialiased;font-size:12px;font-weight:500;line-height:1.42}.starter-mode-option small[data-v-8bbef723]{color:var(--color-text-muted);margin-top:2px;font-size:8px;line-height:1.35}.starter-mode-option[data-v-8bbef723]:has(input:disabled){cursor:default;opacity:.62}.generation-reset-button[data-v-8bbef723],.generation-save-button[data-v-8bbef723]{font:inherit;cursor:pointer;border:0}.generation-reset-button[data-v-8bbef723]{color:var(--color-primary);background:0 0;padding:0;font-size:8px;font-weight:700}.generation-weight-list[data-v-8bbef723]{gap:6px;margin-top:9px;display:grid}.generation-weight-row[data-v-8bbef723]{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:9px;font-size:10px;font-weight:600;display:flex}.generation-weight-input-wrap[data-v-8bbef723]{color:var(--color-text-muted);align-items:center;gap:4px;display:flex}.generation-weight-input-wrap input[data-v-8bbef723]{border:1px solid var(--color-border);background:var(--color-surface);width:54px;color:var(--color-text-secondary);font:inherit;text-align:right;border-radius:6px;padding:5px 6px;font-weight:700}.generation-weight-footer[data-v-8bbef723]{color:var(--color-text-muted);justify-content:space-between;align-items:center;gap:8px;margin-top:9px;font-size:8px;display:flex}.generation-weight-sum-invalid[data-v-8bbef723]{color:var(--color-danger);font-weight:700}.generation-save-button[data-v-8bbef723]{background:var(--color-action);color:var(--color-on-accent);border-radius:6px;padding:6px 8px;font-size:8px;font-weight:800}.generation-save-button[data-v-8bbef723]:disabled,.generation-reset-button[data-v-8bbef723]:disabled{cursor:default;opacity:.5}.pool-details-list[data-v-8bbef723]{gap:8px;margin:0;display:grid}.pool-count-list[data-v-8bbef723]{border:1px solid var(--color-border-subtle);background:var(--color-surface-subtle);border-radius:10px;gap:0;overflow:hidden}.pool-count-list>div[data-v-8bbef723]{padding:9px 11px}.pool-count-list>div+div[data-v-8bbef723]{border-top:1px solid var(--color-border-subtle)}.pool-count-list dd[data-v-8bbef723]{color:var(--color-primary);font-size:13px}.pool-rules-label[data-v-8bbef723]{color:var(--color-text-muted);letter-spacing:.045em;text-transform:uppercase;margin:1px 0 -3px;font-size:9px;font-weight:800}.pool-details-list>div[data-v-8bbef723]{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pool-details-list dt[data-v-8bbef723],.pool-details-list dd[data-v-8bbef723]{margin:0;font-size:11px;line-height:1.35}.pool-details-list dt[data-v-8bbef723]{color:var(--color-text-muted);-webkit-font-smoothing:antialiased;font-size:12px;font-weight:450;line-height:1.42}.pool-details-list dd[data-v-8bbef723]{color:var(--color-text-secondary);text-align:right;font-weight:800}.pool-snapshot-note[data-v-8bbef723]{color:var(--color-text-muted);margin:10px 0 0;font-size:9px;line-height:1.35}.exercise-types-section[data-v-8bbef723]{padding-top:16px;padding-bottom:18px}.exercise-types-label[data-v-8bbef723]{color:var(--color-primary);letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:11px;font-weight:850}.exercise-type-badges[data-v-8bbef723]{align-items:flex-start;gap:16px;margin-top:12px;display:flex}.exercise-type-badge[data-v-8bbef723]{cursor:help;background:0 0;border:0;justify-content:center;align-items:center;width:84px;min-width:84px;padding:0;display:inline-flex;position:relative}.exercise-type-badge[data-v-8bbef723]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:4px;border-radius:14px}.exercise-type-badge-image[data-v-8bbef723]{object-fit:contain;width:72px;height:72px;filter:drop-shadow(0 6px 10px var(--color-primary-overlay));display:block}.exercise-type-tooltip[data-v-8bbef723]{z-index:1000;border:1px solid var(--color-border);background:var(--color-surface);width:max-content;max-width:min(280px,100vw - 24px);box-shadow:0 14px 32px var(--color-shadow-medium);color:var(--color-text-secondary);text-align:left;pointer-events:none;border-radius:12px;gap:3px;margin:0;padding:10px 12px;line-height:1.4;display:grid;position:fixed;inset:auto;overflow:visible;transform:translate(-50%,-100%)}.exercise-type-tooltip[data-v-8bbef723]:after{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface);content:"";width:12px;height:12px;position:absolute;top:calc(100% - 6px);left:50%;transform:translate(-50%)rotate(45deg)}.exercise-type-tooltip strong[data-v-8bbef723]{color:var(--color-text-secondary);font-size:11px;font-weight:800}.exercise-type-tooltip span[data-v-8bbef723]{color:var(--color-text-muted);font-size:10px;font-weight:550}.request-message[data-v-8bbef723]{border-radius:10px;gap:3px;margin-top:13px;padding:10px 12px;font-size:11px;line-height:1.4;display:grid}.request-message strong[data-v-8bbef723]{font-weight:850}.request-success[data-v-8bbef723]{border:1px solid var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.request-error[data-v-8bbef723]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.sidebar-actions[data-v-8bbef723]{gap:.7rem;padding-top:17px;display:grid}.practice-button[data-v-8bbef723]{border:1px solid var(--color-primary);background:var(--color-surface);width:100%;min-height:46px;color:var(--color-primary);cursor:pointer;font:inherit;border-radius:9px;padding:.8rem 1rem;font-weight:800}.practice-button[data-v-8bbef723]:disabled{cursor:not-allowed;opacity:.5}.request-exercise-button[data-v-8bbef723]{border:1px solid var(--color-primary);background:linear-gradient(135deg, var(--color-action), var(--color-action));width:100%;min-height:48px;color:var(--color-on-accent);box-shadow:0 9px 19px var(--color-primary-shadow);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:9px;padding:11px 15px;font-size:13px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.request-exercise-button[data-v-8bbef723]:not(:disabled):hover{box-shadow:0 12px 24px var(--color-primary-shadow);transform:translateY(-1px)}.request-exercise-button[data-v-8bbef723]:disabled{border-color:var(--color-primary-border);background:var(--color-primary-soft);box-shadow:none;cursor:not-allowed}.request-exercise-button svg[data-v-8bbef723]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.content-blocked-message[data-v-8bbef723]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.5}.is-content-blocked .request-exercise-button[data-v-8bbef723]:disabled,.is-content-blocked .practice-button[data-v-8bbef723]:disabled{border-color:var(--color-border-subtle);background:var(--color-warning-badge);color:var(--color-warning);box-shadow:none;opacity:1;justify-content:center;align-items:center;gap:9px;display:inline-flex}.is-content-blocked .practice-button svg[data-v-8bbef723]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.request-requirement[data-v-8bbef723]{color:var(--color-text-muted);text-align:center;margin:10px 0 0;font-size:10px;line-height:1.4}.sidebar-empty[data-v-8bbef723]{min-height:100%;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;padding:30px;display:grid}.sidebar-empty-icon[data-v-8bbef723]{background:var(--color-primary-subtle);width:50px;height:50px;color:var(--color-primary);border-radius:50%;place-items:center;font-size:26px;display:grid}.sidebar-empty h2[data-v-8bbef723]{color:var(--color-text);margin:16px 0 0;font-size:20px}.sidebar-empty p[data-v-8bbef723]{max-width:250px;margin:9px 0 0;font-size:12px;line-height:1.5}@media (width<=1024px){.practice-button[data-v-8bbef723],.request-exercise-button[data-v-8bbef723]{justify-self:center;width:min(300px,100%);max-width:100%}.skill-detail-sidebar[data-v-8bbef723]{border-radius:18px;width:100%;max-height:none;position:static;inset:auto;overflow:visible}.sidebar-content[data-v-8bbef723]{padding:20px 22px;display:block}.objectives-section[data-v-8bbef723]{border-bottom:1px solid var(--color-border-subtle);padding:0 0 17px}.request-message[data-v-8bbef723],.sidebar-actions[data-v-8bbef723],.content-blocked-message[data-v-8bbef723]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.5}.is-content-blocked .request-exercise-button[data-v-8bbef723]:disabled,.is-content-blocked .practice-button[data-v-8bbef723]:disabled{border-color:var(--color-border-subtle);background:var(--color-warning-badge);color:var(--color-warning);box-shadow:none;opacity:1;justify-content:center;align-items:center;gap:9px;display:inline-flex}.is-content-blocked .practice-button svg[data-v-8bbef723]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.request-requirement[data-v-8bbef723]{grid-column:1/-1}.sidebar-actions[data-v-8bbef723]{padding-top:44px}}@media (width>=761px) and (width<=1024px){.sidebar-actions[data-v-8bbef723]{align-content:start;align-self:end}}@media (width<=760px){.skill-detail-sidebar[data-v-8bbef723]{border-radius:15px}.sidebar-content[data-v-8bbef723]{padding:19px;display:block}.objectives-section[data-v-8bbef723]{border-bottom:1px solid var(--color-border-subtle);border-left:0;border-right:0;padding:17px 0}}.learning-profile[data-v-f72dcc61]{--skill-sidebar-width:400px;--skill-sidebar-gap:22px;--skill-sidebar-offset:18px;--skill-sidebar-right:max(18px, calc((100vw - 1600px) / 2));width:100%;max-width:1600px;margin:0 auto}.learning-profile-layout[data-v-f72dcc61]{width:100%;min-width:0;padding-right:calc(var(--skill-sidebar-width) + var(--skill-sidebar-gap))}.skill-path-slot[data-v-f72dcc61]{width:100%;min-width:0}.skill-path-slot.has-generation-status[data-v-f72dcc61]{padding-bottom:160px;scroll-padding-bottom:160px}.sidebar-slot[data-v-f72dcc61]{width:var(--skill-sidebar-width);min-width:0}.state[data-v-f72dcc61]{background:var(--color-surface);color:var(--color-text-muted);text-align:center;border-radius:10px;margin:0;padding:20px}.state.error[data-v-f72dcc61]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.pool-diagnostics-backdrop[data-v-f72dcc61]{z-index:1000;background:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);place-items:center;padding:28px;display:grid;position:fixed;inset:0}.pool-diagnostics-dialog[data-v-f72dcc61]{border:1px solid var(--color-border-subtle);background:var(--color-surface);width:min(920px,100%);max-height:min(820px,100vh - 56px);box-shadow:0 28px 80px var(--color-shadow-strong);color:var(--color-text);border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.pool-diagnostics-header[data-v-f72dcc61]{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 28px 22px;display:flex}.pool-diagnostics-eyebrow[data-v-f72dcc61]{letter-spacing:.055em;text-transform:uppercase;font-weight:850;color:var(--color-primary)!important;margin:0 0 6px!important;font-size:11px!important}.pool-diagnostics-header h2[data-v-f72dcc61]{margin:0;font-size:24px;line-height:1.2}.pool-diagnostics-header div>p[data-v-f72dcc61]:last-child{color:var(--color-text-muted);margin:8px 0 0;font-size:13px;line-height:1.45}.pool-diagnostics-close[data-v-f72dcc61]{background:var(--color-surface-subtle);width:38px;height:38px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.pool-diagnostics-close[data-v-f72dcc61]:hover{background:var(--color-surface-hover);color:var(--color-text-secondary)}.pool-diagnostics-close[data-v-f72dcc61]:focus-visible,.pool-diagnostics-footer button[data-v-f72dcc61]:focus-visible,.pool-diagnostics-error button[data-v-f72dcc61]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.pool-diagnostics-close svg[data-v-f72dcc61]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2px;width:19px}.pool-diagnostics-body[data-v-f72dcc61]{background:var(--color-surface-subtle);scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;min-height:250px;padding:22px 28px 28px;overflow-y:auto}.pool-diagnostics-summary[data-v-f72dcc61]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px;display:grid;overflow:hidden}.pool-diagnostics-summary>div[data-v-f72dcc61]{padding:13px 16px}.pool-diagnostics-summary>div+div[data-v-f72dcc61]{border-left:1px solid var(--color-border-subtle)}.pool-diagnostics-summary dt[data-v-f72dcc61]{color:var(--color-text-muted);margin:0 0 4px;font-size:11px;font-weight:700}.pool-diagnostics-summary dd[data-v-f72dcc61]{color:var(--color-text);margin:0;font-size:20px;font-weight:850}.pool-diagnostics-summary .summary-usable dd[data-v-f72dcc61]{color:var(--color-success)}.pool-diagnostics-summary .summary-excluded dd[data-v-f72dcc61]{color:var(--color-warning)}.pool-diagnostics-list[data-v-f72dcc61]{gap:11px;display:grid}.pool-diagnostic-item[data-v-f72dcc61]{cursor:pointer;border:1px solid var(--color-warning-border);border-left:3px solid var(--color-warning-border);background:var(--color-surface);border-radius:12px;padding:16px 17px}.pool-diagnostic-item[data-v-f72dcc61]:hover{background:var(--color-surface-hover)}.pool-diagnostic-item[data-v-f72dcc61]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.pool-diagnostics-load-more[data-v-f72dcc61]{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:8px;margin-top:16px;padding:10px 14px}.pool-diagnostics-load-more[data-v-f72dcc61]:disabled{opacity:.6;cursor:wait}.pool-diagnostic-item-usable[data-v-f72dcc61]{border-color:var(--color-success-border);border-left-color:var(--color-success-border)}.pool-diagnostic-item-heading[data-v-f72dcc61]{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.pool-diagnostic-item-copy[data-v-f72dcc61]{min-width:0}.pool-diagnostic-meta[data-v-f72dcc61]{color:var(--color-text-muted);flex-wrap:wrap;gap:6px;margin-bottom:5px;font-size:10px;font-weight:700;display:flex}.pool-diagnostic-item h3[data-v-f72dcc61]{color:var(--color-text);margin:0;font-size:14px;font-weight:750;line-height:1.42}.pool-diagnostic-status[data-v-f72dcc61]{border-radius:999px;flex:none;padding:5px 8px;font-size:10px;font-weight:800;line-height:1;display:inline-flex}.status-usable[data-v-f72dcc61]{background:var(--color-success-soft);color:var(--color-success)}.status-excluded[data-v-f72dcc61]{background:var(--color-warning-soft);color:var(--color-warning)}.pool-diagnostic-id[data-v-f72dcc61]{overflow-wrap:anywhere;color:var(--color-text-muted);margin:7px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.pool-diagnostic-usable-copy[data-v-f72dcc61]{color:var(--color-success);margin:10px 0 0;font-size:11px;line-height:1.45}.pool-diagnostic-reasons[data-v-f72dcc61]{background:var(--color-warning-soft);border-radius:8px;margin-top:11px;padding:10px 12px}.pool-diagnostic-reasons>p[data-v-f72dcc61]{color:var(--color-warning);margin:0 0 5px;font-size:10px;font-weight:800}.pool-diagnostic-reasons ul[data-v-f72dcc61]{color:var(--color-warning);gap:4px;margin:0;padding-left:17px;font-size:11px;line-height:1.45;display:grid}.pool-diagnostics-state[data-v-f72dcc61]{min-height:210px;color:var(--color-text-muted);text-align:center;place-items:center;margin:0;font-size:13px;display:grid}.pool-diagnostics-error[data-v-f72dcc61]{color:var(--color-danger);align-content:center;gap:12px}.pool-diagnostics-error p[data-v-f72dcc61]{margin:0}.pool-diagnostics-error button[data-v-f72dcc61]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);cursor:pointer;font:inherit;border-radius:8px;padding:8px 12px;font-weight:750}.pool-diagnostics-footer[data-v-f72dcc61]{border-top:1px solid var(--color-border-subtle);background:var(--color-surface);justify-content:space-between;align-items:center;gap:20px;padding:16px 28px;display:flex}.pool-diagnostics-footer p[data-v-f72dcc61]{color:var(--color-text-muted);margin:0;font-size:10px}.pool-diagnostics-footer button[data-v-f72dcc61]{background:var(--color-action);color:var(--color-on-accent);cursor:pointer;font:inherit;border:0;border-radius:8px;padding:9px 17px;font-size:12px;font-weight:800}.session-conflict-backdrop[data-v-f72dcc61]{z-index:1500;background:var(--color-backdrop);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.session-conflict-dialog[data-v-f72dcc61]{border:1px solid var(--color-border);background:var(--color-surface);width:min(31rem,100%);box-shadow:0 24px 70px var(--color-shadow-strong);border-radius:16px;padding:1.6rem}.repeat-conflict-dialog[data-v-f72dcc61]{box-sizing:border-box;width:min(560px,100% - 32px);max-width:none;max-height:calc(100dvh - 32px);margin:auto;position:fixed;inset:0;overflow-y:auto}.repeat-conflict-dialog[data-v-f72dcc61]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.repeat-conflict-dialog .repeat-conflict-note[data-v-f72dcc61]{border-left:3px solid var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning);border-radius:6px;padding:12px 14px}.repeat-conflict-dialog .repeat-conflict-error[data-v-f72dcc61]{color:var(--color-danger)}@media (width<=540px){.repeat-conflict-dialog .session-conflict-actions[data-v-f72dcc61]{flex-direction:column-reverse}}.session-conflict-dialog h2[data-v-f72dcc61]{color:var(--color-text);margin:0;font-size:1.35rem}.session-conflict-dialog p[data-v-f72dcc61]{color:var(--color-text-muted);margin:.75rem 0 0;line-height:1.55}.session-conflict-actions[data-v-f72dcc61]{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.session-conflict-actions button[data-v-f72dcc61]{cursor:pointer;font:inherit;border-radius:9px;padding:.75rem 1rem;font-weight:750}.session-conflict-actions button[data-v-f72dcc61]:disabled{cursor:wait;opacity:.6}.session-conflict-cancel[data-v-f72dcc61]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary)}.session-conflict-confirm[data-v-f72dcc61]{border:1px solid var(--color-danger-border);background:var(--color-danger-action);color:var(--color-on-accent)}@media (width>=1025px) and (width<=1280px){.learning-profile[data-v-f72dcc61]{--skill-sidebar-width:320px;--skill-sidebar-gap:18px}}@media (width<=1024px){.learning-profile[data-v-f72dcc61]{--skill-sidebar-width:100%;--skill-sidebar-gap:0;--skill-sidebar-right:auto;max-width:980px}.learning-profile-layout[data-v-f72dcc61]{grid-template-columns:minmax(0,1fr);grid-template-areas:"path";gap:20px;padding-right:0;display:grid}.skill-path-slot[data-v-f72dcc61]{grid-area:path}.sidebar-slot[data-v-f72dcc61]{grid-area:sidebar;width:100%}}@media (width<=760px){.learning-profile[data-v-f72dcc61]{max-width:100%}.learning-profile-layout[data-v-f72dcc61]{gap:16px}.pool-diagnostics-backdrop[data-v-f72dcc61]{padding:10px}.pool-diagnostics-dialog[data-v-f72dcc61]{border-radius:15px;max-height:calc(100vh - 20px)}.pool-diagnostics-header[data-v-f72dcc61],.pool-diagnostics-body[data-v-f72dcc61]{padding-left:17px;padding-right:17px}.pool-diagnostics-summary[data-v-f72dcc61]{grid-template-columns:1fr}.pool-diagnostics-summary>div+div[data-v-f72dcc61]{border-top:1px solid var(--color-border-subtle);border-left:0}.pool-diagnostic-item-heading[data-v-f72dcc61],.pool-diagnostics-footer[data-v-f72dcc61]{flex-direction:column;align-items:stretch}.pool-diagnostic-status[data-v-f72dcc61]{align-self:flex-start}.pool-diagnostics-footer[data-v-f72dcc61]{padding:14px 17px}}.submission-files[data-v-89e54fd8]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:12px;grid-template-columns:minmax(150px,240px) minmax(0,1fr);margin:1rem 0;display:grid;overflow:hidden}.file-tree[data-v-89e54fd8]{background:var(--color-surface-subtle);max-height:450px;padding:12px;overflow:auto}.folder[data-v-89e54fd8]{color:var(--color-text-muted);padding:5px;font-size:13px;display:block}.file-tree button[data-v-89e54fd8]{text-align:left;width:100%;color:var(--color-text-secondary);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:6px;display:block}.file-tree button.selected[data-v-89e54fd8]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:5px}.file-content[data-v-89e54fd8]{min-width:0}.file-content label[data-v-89e54fd8]{border-bottom:1px solid var(--color-border-subtle);overflow-wrap:anywhere;padding:12px;font-size:13px;display:block}.file-content textarea[data-v-89e54fd8]{resize:vertical;tab-size:4;white-space:pre;background:var(--color-surface);width:100%;min-height:350px;color:var(--color-text);border:0;padding:16px;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;display:block;overflow:auto}.file-tree button[data-v-89e54fd8]:focus-visible,textarea[data-v-89e54fd8]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}@media (width<=650px){.submission-files[data-v-89e54fd8]{grid-template-columns:1fr}.file-tree[data-v-89e54fd8]{max-height:160px}}.submission-dialog[data-v-2177ea56]{box-sizing:border-box;width:min(1120px,100% - 48px);max-width:none;max-height:calc(100dvh - 64px);color:var(--color-text);background:var(--color-surface);box-shadow:0 24px 80px var(--color-shadow-strong);font:inherit;border:0;border-radius:22px;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.submission-dialog[open][data-v-2177ea56]{flex-direction:column;display:flex}.submission-dialog[data-v-2177ea56]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(7px)}.dialog-header[data-v-2177ea56]{flex-shrink:0;padding:30px 72px 24px 36px;position:relative}.dialog-eyebrow[data-v-2177ea56]{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.dialog-header h2[data-v-2177ea56]{overflow-wrap:anywhere;margin:14px 0 8px;font-size:25px;line-height:1.35}.dialog-objective[data-v-2177ea56]{color:var(--color-text-muted);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.6}.dialog-meta[data-v-2177ea56]{color:var(--color-text-muted);flex-wrap:wrap;gap:8px 24px;margin-top:18px;font-size:12px;line-height:1.5;display:flex}.dialog-meta>span[data-v-2177ea56]:first-child{color:var(--color-primary);font-weight:650}.dialog-meta time[data-v-2177ea56]{margin-left:6px}button[data-v-2177ea56]{border:1px solid var(--color-border);min-height:40px;font:inherit;cursor:pointer;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:650;transition:background-color .15s,border-color .15s}button.secondary[data-v-2177ea56]{color:var(--color-primary);background:var(--color-surface)}button.secondary[data-v-2177ea56]:hover{background:var(--color-primary-subtle);border-color:var(--color-primary-border)}button.primary[data-v-2177ea56]{color:var(--color-on-accent);background:var(--color-action);border-color:var(--color-primary)}button.primary[data-v-2177ea56]:hover{background:var(--color-action-hover)}button[data-v-2177ea56]:disabled{opacity:.55;cursor:default}button[data-v-2177ea56]:focus-visible,[role=tabpanel][data-v-2177ea56]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:-3px}.dialog-close[data-v-2177ea56]{background:var(--color-surface-subtle);width:34px;height:34px;min-height:34px;color:var(--color-text-muted);border:none;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:20px;right:20px}.dialog-close[data-v-2177ea56]:hover{background:var(--color-primary-soft);color:var(--color-primary-hover)}.dialog-close svg[data-v-2177ea56]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:18px}.dialog-tabs[data-v-2177ea56]{border-bottom:1px solid var(--color-primary-border);flex-shrink:0;gap:24px;padding:0 36px;display:flex}.dialog-tabs button[data-v-2177ea56]{color:var(--color-text-muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:14px 0;font-size:14px;display:flex}.dialog-tabs button[data-v-2177ea56]:hover{color:var(--color-primary-hover)}.dialog-tabs button[aria-selected=true][data-v-2177ea56]{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-count[data-v-2177ea56]{background:var(--color-primary-soft);border-radius:6px;padding:2px 7px;font-size:11px}.dialog-body[data-v-2177ea56]{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:28px 36px;overflow-y:auto}h3[data-v-2177ea56]{margin:0 0 18px;font-size:16px}h4[data-v-2177ea56]{margin:0 0 6px;font-size:14px}h5[data-v-2177ea56]{color:var(--color-primary);margin:0 0 10px;font-size:12px;font-weight:750}.preserve-text[data-v-2177ea56]{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.75}.task-description>p[data-v-2177ea56]{margin:0}.requirements-title[data-v-2177ea56]{margin:26px 0 12px}.requirements[data-v-2177ea56]{margin:0;padding-left:22px;font-size:14px;line-height:1.75}.requirements li[data-v-2177ea56]{overflow-wrap:anywhere;margin-bottom:10px;padding-left:4px}.requirements li[data-v-2177ea56]:last-child{margin-bottom:0}.requirements li[data-v-2177ea56]::marker{color:var(--color-primary)}.attempt[data-v-2177ea56]{border:1px solid var(--color-border-subtle);border-radius:14px;margin-top:16px;padding:24px}.attempt-heading[data-v-2177ea56]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.attempt-heading time[data-v-2177ea56]{color:var(--color-text-muted);font-size:12px}.badge[data-v-2177ea56]{color:var(--color-primary);background:var(--color-primary-soft);border-radius:7px;padding:6px 10px;font-size:12px;font-weight:650;display:inline-flex}.badge.passed[data-v-2177ea56]{color:var(--color-success);background:var(--color-success-soft)}.badge.failed[data-v-2177ea56]{color:var(--color-danger);background:var(--color-danger-soft)}.badge.evaluation_error[data-v-2177ea56],.badge.task_invalid[data-v-2177ea56]{color:var(--color-warning);background:var(--color-warning-soft)}.feedback-box[data-v-2177ea56]{background:var(--color-primary-subtle);border-radius:12px;margin:20px 0;padding:18px}.feedback-box p[data-v-2177ea56]{margin:0}.muted[data-v-2177ea56]{color:var(--color-text-muted);font-size:14px;line-height:1.6}.attempt-actions[data-v-2177ea56]{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.solution-detail[data-v-2177ea56]{margin-top:24px}.solution-detail[data-v-2177ea56] textarea{box-sizing:border-box}.dialog-footer[data-v-2177ea56]{border-top:1px solid var(--color-primary-border);flex-shrink:0;justify-content:flex-end;padding:18px 36px;display:flex}.error[data-v-2177ea56]{color:var(--color-danger);background:var(--color-danger-soft);border-radius:10px;margin:0 0 20px;padding:14px 18px}@media (width<=640px){.submission-dialog[data-v-2177ea56]{border-radius:18px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.dialog-header[data-v-2177ea56]{padding:24px 52px 20px 20px}.dialog-header h2[data-v-2177ea56]{font-size:20px}.dialog-close[data-v-2177ea56]{top:14px;right:14px}.dialog-tabs[data-v-2177ea56]{gap:16px;padding:0 20px}.dialog-tabs button[data-v-2177ea56]{font-size:12px}.dialog-body[data-v-2177ea56]{padding:22px 20px}.dialog-footer[data-v-2177ea56]{padding:16px 20px}.attempt[data-v-2177ea56]{padding:16px}.attempt-actions button[data-v-2177ea56]{width:100%}}@media (prefers-reduced-motion:reduce){button[data-v-2177ea56]{transition:none}}.submission-history[data-v-f7c806e4]{color:var(--color-text-secondary)}button[data-v-f7c806e4]{border:1px solid var(--color-border);min-height:40px;font:inherit;cursor:pointer;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:650}button.secondary[data-v-f7c806e4]{color:var(--color-primary);background:var(--color-surface)}button.secondary[data-v-f7c806e4]:hover{background:var(--color-primary-subtle);border-color:var(--color-primary-border)}button.primary[data-v-f7c806e4]{color:var(--color-on-accent);background:var(--color-action);border-color:var(--color-primary)}button[data-v-f7c806e4]:disabled{opacity:.55;cursor:default}button[data-v-f7c806e4]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}.pull-refresh[data-v-f7c806e4]{opacity:0;justify-content:center;align-items:center;height:0;transition:height .2s,opacity .15s;display:flex;overflow:hidden}.pull-refresh.visible[data-v-f7c806e4]{opacity:1;height:52px}.history-filters[data-v-f7c806e4]{flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:24px;display:flex}.history-filters label[data-v-f7c806e4]{gap:7px;min-width:0;max-width:100%;font-size:12px;font-weight:650;display:grid}.history-filters select[data-v-f7c806e4]{appearance:none;border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;max-width:320px;min-height:40px;color:var(--color-text);font:inherit;border-radius:10px;padding:8px 42px 8px 12px}.history-select[data-v-f7c806e4]{min-width:0;max-width:320px;display:block;position:relative}.history-select svg[data-v-f7c806e4]{width:14px;height:14px;color:var(--color-text-muted);fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.history-filters .history-filter-objective .history-select[data-v-f7c806e4]{max-width:none}.history-filter-end[data-v-f7c806e4]{align-items:end;gap:8px;min-width:0;max-width:100%;display:flex}.history-filters .history-filter-objective[data-v-f7c806e4]{flex:1;width:360px}.history-filters .history-filter-objective select[data-v-f7c806e4]{max-width:none}button.filter-reset[data-v-f7c806e4]{width:32px;height:40px;color:var(--color-text-muted);background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;padding:0;display:grid}button.filter-reset[data-v-f7c806e4]:hover{color:var(--color-text);background:var(--color-surface-subtle)}.filter-reset svg[data-v-f7c806e4]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:17px;height:17px}.history-filters select[data-v-f7c806e4]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:2px}.refresh-indicator[data-v-f7c806e4]{background:var(--color-primary-subtle);border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.refresh-indicator svg[data-v-f7c806e4]{fill:none;stroke-width:2.5px;width:28px;height:28px;transform:rotate(-90deg)}.refresh-track[data-v-f7c806e4]{stroke:var(--color-primary-border)}.refresh-progress[data-v-f7c806e4]{stroke:var(--color-primary);stroke-linecap:round;stroke-dasharray:69.12}.refresh-indicator.spinning svg[data-v-f7c806e4]{animation:.8s linear infinite refresh-spin-f7c806e4}.sr-only[data-v-f7c806e4]{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes refresh-spin-f7c806e4{to{transform:rotate(270deg)}}@media (prefers-reduced-motion:reduce){.pull-refresh[data-v-f7c806e4]{transition:none}.refresh-indicator.spinning svg[data-v-f7c806e4]{animation:none}}.empty-state[data-v-f7c806e4]{background:var(--color-primary-subtle);text-align:center;border-radius:20px;justify-items:center;gap:14px;padding:64px 28px;display:grid}.empty-symbol[data-v-f7c806e4]{width:64px;height:64px;color:var(--color-primary);background:var(--color-primary-soft);border-radius:18px;place-items:center;display:grid}.empty-symbol svg[data-v-f7c806e4]{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round;width:30px;height:30px}.empty-state h2[data-v-f7c806e4]{margin:8px 0 0;font-size:20px}.empty-state p[data-v-f7c806e4]{max-width:450px;color:var(--color-text-muted);margin:0;line-height:1.6}.list-heading[data-v-f7c806e4],.task-summary[data-v-f7c806e4]{grid-template-columns:minmax(0,1fr) 165px 180px;align-items:center;gap:24px;display:grid}.list-heading[data-v-f7c806e4]{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;padding:0 24px 12px;font-size:11px;font-weight:750}.task-card[data-v-f7c806e4]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:16px;margin-bottom:14px;overflow:hidden}.task-summary[data-v-f7c806e4]{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-radius:0;padding:24px;font-weight:400}.task-summary[data-v-f7c806e4]:hover{background:var(--color-primary-subtle)}.task-title[data-v-f7c806e4]{min-width:0;display:block}.task-title strong[data-v-f7c806e4]{overflow-wrap:anywhere;margin:0;font-size:17px;line-height:1.45;display:block}.task-objective[data-v-f7c806e4]{color:var(--color-text-muted);margin:6px 0 0;font-size:13px;line-height:1.5;display:block}.task-date[data-v-f7c806e4]{color:var(--color-text-muted);font-size:12px}.task-status[data-v-f7c806e4]{justify-items:start;display:grid}.badge[data-v-f7c806e4]{color:var(--color-primary);background:var(--color-primary-soft);border-radius:7px;padding:6px 10px;font-size:12px;font-weight:650;display:inline-flex}.badge.passed[data-v-f7c806e4]{color:var(--color-success);background:var(--color-success-soft)}.badge.failed[data-v-f7c806e4]{color:var(--color-danger);background:var(--color-danger-soft)}.badge.evaluation_error[data-v-f7c806e4],.badge.task_invalid[data-v-f7c806e4]{color:var(--color-warning);background:var(--color-warning-soft)}.load-more[data-v-f7c806e4]{justify-content:center;margin:24px 0;display:flex}.error[data-v-f7c806e4]{color:var(--color-danger);background:var(--color-danger-soft);border-radius:10px;padding:14px 18px}@media (width<=1050px){.list-heading[data-v-f7c806e4]{display:none}.task-summary[data-v-f7c806e4]{grid-template-columns:minmax(0,1fr) auto;gap:12px}.task-date[data-v-f7c806e4]{grid-area:2/1}.task-status[data-v-f7c806e4]{grid-area:1/2/3}}@media (width<=640px){.task-summary[data-v-f7c806e4]{flex-direction:column;align-items:flex-start;padding:18px;display:flex}.task-status[data-v-f7c806e4]{justify-content:space-between;align-items:center;width:100%;display:flex}}.course-submissions[data-v-2e1d9a16]{width:100%;max-width:1260px;margin:0 auto}.programming-file-icon[data-v-f491cbd7]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 16px;width:16px;height:16px}.project-editor[data-v-359d2510]{box-sizing:border-box;grid-template-columns:minmax(0, min(var(--sidebar-width), calc(100% - 260px))) 16px minmax(0, 1fr);flex:1 0 500px;width:100%;height:auto;min-height:500px;display:grid}.file-sidebar[data-v-359d2510]{border:1px solid var(--color-border-subtle);background:var(--color-editor-sidebar);min-width:0;min-height:0;color:var(--color-text);box-shadow:0 1px 3px var(--color-shadow-soft);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.file-sidebar__heading[data-v-359d2510]{min-height:48px;color:var(--color-primary);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:5px 16px 0;font-size:10px;display:flex}.file-sidebar__add[data-v-359d2510]{width:28px;height:28px;color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0;font-size:22px;line-height:1}.file-sidebar__add[data-v-359d2510]:hover:not(:disabled){background:var(--color-primary-subtle)}.file-sidebar__add[data-v-359d2510]:disabled{opacity:.4;cursor:default}.file-sidebar__entries[data-v-359d2510]{flex:1;min-height:0;padding:0 12px 12px;overflow:auto}.file-sidebar__entry[data-v-359d2510]{border-radius:9px}.file-sidebar__drop-target[data-v-359d2510],.file-sidebar__root-target[data-v-359d2510]{background:var(--color-primary-soft);box-shadow:inset 0 0 0 1.5px var(--color-primary-soft)}.file-sidebar__drop-target .file-sidebar__file[data-v-359d2510],.file-sidebar__drop-target .file-sidebar__folder[data-v-359d2510],.file-sidebar__drop-target .file-sidebar__row[data-v-359d2510]{background:0 0}.file-sidebar__file[draggable=true][data-v-359d2510]{-webkit-user-select:none;user-select:none}.file-sidebar__file[data-v-359d2510],.file-sidebar__folder[data-v-359d2510]{box-sizing:border-box;width:100%;min-height:32px;color:var(--color-text);text-align:left;cursor:pointer;-webkit-font-smoothing:antialiased;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:7px 9px;font-size:14px;display:flex}.file-sidebar__file span[data-v-359d2510],.file-sidebar__folder span[data-v-359d2510]{overflow-wrap:anywhere;min-width:0}.file-sidebar__file svg[data-v-359d2510],.file-sidebar__folder svg[data-v-359d2510]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 14px;width:14px;height:14px}.file-sidebar__folder[data-v-359d2510]{color:var(--color-text);-webkit-font-smoothing:antialiased;gap:5px;font-family:inherit;font-size:14px;line-height:1.5}.file-sidebar__folder .folder-chevron[data-v-359d2510]{flex-basis:9px;width:9px;transform:rotate(90deg)}.file-sidebar__folder .folder-chevron.collapsed[data-v-359d2510]{transform:none}.file-sidebar__file[data-v-359d2510]:hover,.file-sidebar__folder[data-v-359d2510]:hover{background:var(--color-primary-subtle)}.file-sidebar__file.selected[data-v-359d2510]{background:var(--color-primary-subtle);color:var(--color-primary)}.file-sidebar__rename[data-v-359d2510]{min-height:32px;color:var(--color-text-muted);align-items:center;gap:8px;padding:0 9px;display:flex}.file-sidebar__rename input[data-v-359d2510]{box-sizing:border-box;border:1px solid var(--color-primary);background:var(--color-surface);width:100%;min-width:0;height:28px;color:var(--color-text-muted);border-radius:4px;outline:none;padding:3px 4px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.file-sidebar__rename--invalid input[data-v-359d2510]{border-color:var(--color-danger-border)}.rename-folder-icon[data-v-359d2510]{fill:none;stroke:currentColor;stroke-width:1.7px;flex:0 0 14px;width:14px;height:14px}.file-sidebar__rename-error[data-v-359d2510]{color:var(--color-danger);overflow-wrap:anywhere;margin:5px 8px;font-size:11px;line-height:1.5}.file-sidebar__row[data-v-359d2510]{border-radius:9px;align-items:center;display:flex}.file-sidebar__row.selected[data-v-359d2510]{background:var(--color-primary-subtle)}.file-sidebar__row .file-sidebar__file[data-v-359d2510]{flex:1;min-width:0}.file-action-menu[data-v-359d2510]{z-index:1200;box-sizing:border-box;border:1px solid var(--color-border-subtle);background:var(--color-surface);width:188px;box-shadow:0 8px 30px var(--color-shadow-medium);border-radius:12px;padding:6px;position:fixed}.file-action-menu__separator[data-v-359d2510]{background:var(--color-surface-muted);height:1px;margin:4px 6px}.file-action-menu button[data-v-359d2510]{width:100%;min-height:40px;color:var(--color-text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 12px;font-size:13px;display:block}.file-action-menu button[data-v-359d2510]:hover,.file-action-menu button[data-v-359d2510]:focus-visible{background:var(--color-primary-subtle);color:var(--color-primary-hover)}.file-action-menu .file-action-menu__delete[data-v-359d2510]{color:var(--color-danger)}.file-action-menu .file-action-menu__delete[data-v-359d2510]:hover,.file-action-menu .file-action-menu__delete[data-v-359d2510]:focus-visible{background:var(--color-danger-soft);color:var(--color-danger)}.file-sidebar__empty[data-v-359d2510]{color:var(--color-text-muted);padding:12px 8px;font-size:12px}.file-sidebar__footer[data-v-359d2510]{border-top:1px solid var(--color-border-subtle);margin-top:auto;padding:9px 12px}.editor-resizer[data-v-359d2510]{cursor:col-resize;touch-action:none;position:relative}.editor-resizer[data-v-359d2510]:after{content:"";background:0 0;border-radius:4px;width:4px;position:absolute;top:40%;bottom:40%;left:6px}.editor-resizer[data-v-359d2510]:hover:after,.editor-resizer[data-v-359d2510]:focus-visible:after,.editor-resizer[data-v-359d2510]:active:after{background:var(--color-primary-soft)}.editor-resizer[data-v-359d2510]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-3px;border-radius:5px}.editor-main[data-v-359d2510]{border:1px solid var(--color-border-subtle);background:var(--color-editor-surface);min-width:0;min-height:0;color:var(--color-editor-plain);box-shadow:0 1px 3px var(--color-shadow-soft);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.editor-toolbar[data-v-359d2510]{border-bottom:1px solid var(--color-border-subtle);background:var(--color-editor-toolbar);min-width:0;color:var(--color-text);-webkit-font-smoothing:antialiased;flex:0 0 38px;align-items:center;gap:12px;padding:0 16px;font-size:13px;display:flex}.editor-toolbar__path[data-v-359d2510]{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}button[data-v-359d2510]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.editor-body[data-v-359d2510]{flex:1;min-height:160px;display:flex}.editor-lines[data-v-359d2510]{box-sizing:border-box;background:var(--color-editor-gutter);width:40px;color:var(--color-text-faint);text-align:right;-webkit-user-select:none;user-select:none;-webkit-font-smoothing:antialiased;flex:0 0 40px;padding:16px 10px 100px;font-size:13px;overflow:hidden}.editor-lines span[data-v-359d2510]{display:block}.editor-lines .is-active-line[data-v-359d2510]{color:var(--color-editor-plain)}.editor-lines[data-v-359d2510],.editor-highlight[data-v-359d2510],.editor-code textarea[data-v-359d2510]{font-variant-ligatures:none;tab-size:2;font:13px/21px ui-monospace,SFMono-Regular,Consolas,monospace}.editor-code[data-v-359d2510]{--editor-text-padding:16px;background:var(--color-editor-surface);flex:1;min-width:0;position:relative;overflow:hidden}.editor-active-line[data-v-359d2510]{z-index:1;background:var(--color-editor-active-line);pointer-events:none;height:21px;position:absolute;left:0;right:0}.editor-indent-guides[data-v-359d2510]{z-index:1;pointer-events:none;font:13px/21px ui-monospace,SFMono-Regular,Consolas,monospace;position:absolute;inset:0;overflow:hidden}.editor-indent-guides span[data-v-359d2510]{background:var(--color-editor-indent-guide);width:1px;position:absolute}.editor-highlight[data-v-359d2510],.editor-code textarea[data-v-359d2510]{box-sizing:border-box;white-space:pre;overflow-wrap:normal;letter-spacing:0;-webkit-font-smoothing:antialiased;border:0;width:100%;height:100%;margin:0;padding:16px 16px 100px;font-size:13px;position:absolute;inset:0;overflow:auto}.editor-highlight[data-v-359d2510]{z-index:2;color:var(--color-editor-plain);pointer-events:none;-webkit-user-select:none;user-select:none;scrollbar-width:none;background:0 0}.editor-highlight[data-v-359d2510]::-webkit-scrollbar{display:none}.editor-code textarea[data-v-359d2510]{z-index:3;resize:none;color:#0000;-webkit-text-fill-color:transparent;caret-color:var(--color-editor-plain);background:0 0;outline:none}.editor-code textarea[data-v-359d2510]::selection{background:var(--color-editor-selection);color:#0000;-webkit-text-fill-color:transparent}.editor-code textarea[data-v-359d2510]:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary-soft)}.editor-code textarea[readonly][data-v-359d2510]{cursor:text}.syntax-keyword[data-v-359d2510]{color:var(--color-editor-keyword)}.syntax-string[data-v-359d2510]{color:var(--color-editor-string)}.syntax-comment[data-v-359d2510]{color:var(--color-editor-comment)}.syntax-number[data-v-359d2510]{color:var(--color-editor-number)}.editor-empty[data-v-359d2510]{min-height:160px;color:var(--color-text-muted);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:25px;font-size:13px;line-height:1.6;display:flex}.editor-empty strong[data-v-359d2510]{color:var(--color-text-muted);font-size:16px}.editor-empty span[data-v-359d2510]{max-width:44ch}.editor-footer[data-v-359d2510]{flex:none;min-width:0}@media (width<=760px){.project-editor[data-v-359d2510]{flex:none;grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;gap:12px;height:max(580px,75dvh)}.editor-resizer[data-v-359d2510]{display:none}.file-sidebar[data-v-359d2510]{border-radius:14px}.file-sidebar__heading[data-v-359d2510]{min-height:35px;padding-top:0}.file-sidebar__entries[data-v-359d2510]{flex:none;gap:4px;padding:0 8px 8px;display:flex;overflow-x:auto}.file-sidebar__entries>div[data-v-359d2510]{flex:none;padding-left:0!important}.file-sidebar__folder[data-v-359d2510],.file-sidebar__file[data-v-359d2510]{white-space:nowrap}.file-sidebar__footer[data-v-359d2510]{justify-content:flex-start;padding:4px 12px;display:flex}.editor-main[data-v-359d2510]{border-radius:14px}.editor-lines[data-v-359d2510]{flex-basis:33px;width:33px;padding-left:5px}.editor-code[data-v-359d2510]{--editor-text-padding:12px}.editor-highlight[data-v-359d2510],.editor-code textarea[data-v-359d2510]{padding:16px 12px 100px}}.task-introduction[data-v-e90dc1bc]{box-sizing:border-box;width:100%;min-height:100dvh;color:var(--color-text);grid-template-rows:1fr auto;margin:0;display:grid;position:relative}.introduction-main[data-v-e90dc1bc]{box-sizing:border-box;grid-template-columns:minmax(240px,340px) minmax(0,1fr);align-items:center;gap:clamp(48px,7vw,144px);width:min(1720px,100%);margin:auto;padding:72px clamp(24px,5vw,72px) 48px;display:grid}.introduction-tutor[data-v-e90dc1bc]{text-align:center;flex-direction:column;align-items:center;display:flex}.tutor-portrait[data-v-e90dc1bc]{width:min(340px,100%)}.tutor-portrait img[data-v-e90dc1bc]{width:100%;height:auto;display:block;position:relative}h1[data-v-e90dc1bc]{letter-spacing:-.035em;color:var(--color-text);overflow-wrap:anywhere;-webkit-font-smoothing:antialiased;margin:0 0 32px;font-size:clamp(28px,3.2vw,44px);line-height:1.15}.introduction-sections[data-v-e90dc1bc]{gap:26px;display:grid}.introduction-section[data-v-e90dc1bc]{border-left:3px solid var(--color-primary);padding-left:18px}h2[data-v-e90dc1bc]{color:var(--color-text-secondary);margin:0 0 8px;font-size:15px;line-height:1.4}p[data-v-e90dc1bc]{color:var(--color-text-muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:16px;line-height:1.7}code[data-v-e90dc1bc]{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:4px;padding:2px 4px;font:.92em ui-monospace,SFMono-Regular,Consolas,monospace}.introduction-close[data-v-e90dc1bc]{background:var(--color-primary-subtle);width:42px;height:42px;color:var(--color-primary);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:24px;right:clamp(20px,3vw,42px)}svg[data-v-e90dc1bc]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.introduction-actions[data-v-e90dc1bc]{padding:24px clamp(24px,5vw,80px);padding-bottom:max(24px, env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:20px;display:flex}.introduction-start[data-v-e90dc1bc]{background:var(--color-action);min-height:48px;color:var(--color-on-accent);font:inherit;cursor:pointer;border:0;border-radius:12px;justify-content:center;align-items:center;gap:12px;padding:13px 24px;font-size:14px;font-weight:650;display:inline-flex}.introduction-start[data-v-e90dc1bc]:hover:not(:disabled){background:var(--color-action-hover)}button[data-v-e90dc1bc]:disabled{opacity:.5;cursor:default}button[data-v-e90dc1bc]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}h1[data-v-e90dc1bc]:focus{outline:none}@media (width<=760px){.introduction-main[data-v-e90dc1bc]{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:72px}.tutor-portrait[data-v-e90dc1bc]{width:160px}h1[data-v-e90dc1bc]{margin-bottom:26px;font-size:30px}.introduction-sections[data-v-e90dc1bc]{gap:22px}.introduction-actions[data-v-e90dc1bc]{flex-direction:column;align-items:stretch}p[data-v-e90dc1bc]{font-size:15px}}.draft-status[data-v-dea71156]{color:var(--color-text-muted);flex-shrink:0;margin-left:auto;font-size:11px;font-weight:400}.draft-status--error[data-v-dea71156]{color:var(--color-danger)}@media (width<=600px){.draft-status[data-v-dea71156]{white-space:normal;text-align:right;max-width:110px;line-height:1.3}}.programming-task[data-v-dea71156]{box-sizing:border-box;width:100%;min-height:100dvh;padding:clamp(14px,2vw,28px);padding-bottom:calc(var(--submission-footer-height) + 28px);background:var(--color-page-subtle);color:var(--color-text);flex-direction:column;gap:18px;display:flex}.programming-workspace[data-v-dea71156]{display:contents}.programming-task--introduction[data-v-dea71156]{gap:0;padding:0}.task-heading[data-v-dea71156]{border:1px solid var(--color-border-subtle);background:var(--color-surface);box-shadow:0 1px 3px var(--color-shadow-soft);border-radius:20px;flex:none;padding:24px;position:relative}.task-heading__copy[data-v-dea71156]{padding-right:46px}.task-meta[data-v-dea71156]{color:var(--color-text-muted);flex-wrap:wrap;gap:12px;margin-bottom:10px;font-size:11px;display:flex}.task-meta>span[data-v-dea71156]:first-child{color:var(--color-primary);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.task-heading h1[data-v-dea71156]{color:var(--color-text);letter-spacing:-.025em;margin:0 0 10px;font-size:clamp(21px,1.8vw,27px);line-height:1.3}.task-description[data-v-dea71156]{max-width:95ch;color:var(--color-text);-webkit-font-smoothing:antialiased;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.task-heading code[data-v-dea71156],.lion-hints code[data-v-dea71156]{background:var(--color-inline-code-background);color:var(--color-inline-code-text);border-radius:4px;padding:2px 4px;font:.92em ui-monospace,SFMono-Regular,Consolas,monospace}.task-close[data-v-dea71156]{width:2.75rem;height:2.75rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:14px;right:14px}.task-close svg[data-v-dea71156]{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;width:1.45rem;height:1.45rem}.task-close[data-v-dea71156]:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text-secondary)}.task-close[data-v-dea71156]:disabled{opacity:.45;cursor:default}.task-close[data-v-dea71156]:focus-visible,button[data-v-dea71156]:focus-visible,summary[data-v-dea71156]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}.task-details[data-v-dea71156]{max-width:1000px;color:var(--color-text);-webkit-font-smoothing:antialiased;margin-top:14px;font-size:14px}.task-details>summary[data-v-dea71156]{cursor:pointer;width:fit-content;color:var(--color-primary);font-weight:600}.task-details__body[data-v-dea71156]{gap:18px;padding:16px 0 4px;display:grid}.task-details h2[data-v-dea71156]{color:var(--color-text-secondary);margin:0 0 8px;font-size:13px}.task-details ol[data-v-dea71156]{gap:12px;margin:0;padding:0;list-style:none;display:grid}.task-details li[data-v-dea71156]{overflow-wrap:anywhere;align-items:flex-start;gap:10px;padding:3px 0;line-height:1.6;display:flex}.requirement-number[data-v-dea71156]{background:var(--color-requirement-number-background);height:24px;color:var(--color-requirement-number-text);border-radius:50%;flex:0 0 24px;place-items:center;font-size:12px;font-weight:700;display:grid}.task-template[data-v-dea71156]{border-top:1px solid var(--color-border-subtle);margin-top:18px;padding-top:16px}.button-outline[data-v-dea71156],.button-primary[data-v-dea71156]{border:1px solid var(--color-primary);min-height:40px;font:inherit;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:9px 15px;font-size:12px;font-weight:650;display:inline-flex}.button-outline[data-v-dea71156]{background:var(--color-surface);color:var(--color-primary)}.button-primary[data-v-dea71156]{background:var(--color-action);color:var(--color-on-accent);box-shadow:0 2px 5px var(--color-primary-shadow)}.button-outline[data-v-dea71156]:hover:not(:disabled){background:var(--color-primary-subtle)}.button-primary[data-v-dea71156]:hover:not(:disabled){background:var(--color-action-hover)}.button-outline[data-v-dea71156]:disabled,.button-primary[data-v-dea71156]:disabled{opacity:.45;cursor:default;box-shadow:none}button svg[data-v-dea71156]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.project-tool[data-v-dea71156]{width:100%;color:var(--color-text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:9px 6px;font-size:11px;display:flex}.project-tool[data-v-dea71156]:hover:not(:disabled){background:var(--color-primary-subtle);color:var(--color-primary-hover)}.project-tool[data-v-dea71156]:disabled{opacity:.4;cursor:default}.evaluation[data-v-dea71156]{border-top:1px solid var(--color-primary-border);background:var(--color-primary-subtle);max-height:230px;padding:16px 18px;font-size:13px;overflow-y:auto}.evaluation--error[data-v-dea71156]{background:var(--color-warning-soft)}.evaluation__heading[data-v-dea71156]{color:var(--color-primary);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;display:flex}.evaluation__heading>span[data-v-dea71156]{color:var(--color-text-muted);font-size:12px}.evaluation p[data-v-dea71156]{white-space:pre-wrap;overflow-wrap:anywhere;margin:9px 0 0;line-height:1.65}.evaluation-history[data-v-dea71156]{color:var(--color-text-muted);margin-top:12px}.evaluation-history summary[data-v-dea71156]{cursor:pointer}.evaluation-history section[data-v-dea71156]{border-top:1px solid var(--color-primary-border);margin-top:12px;padding-top:12px}.upload-message[data-v-dea71156]{border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);overflow-wrap:anywhere;margin:0;padding:11px 18px;font-size:12px}.upload-message--error[data-v-dea71156]{color:var(--color-danger);background:var(--color-danger-soft)}.submission-bar[data-v-dea71156]{z-index:30;box-sizing:border-box;min-height:76px;padding-bottom:max(13px, env(safe-area-inset-bottom));box-shadow:0 -4px 20px var(--color-shadow-soft);padding:13px clamp(14px, 2vw, 28px) max(13px, env(safe-area-inset-bottom));border-top:1px solid var(--color-border-subtle);background:var(--color-surface);justify-content:space-between;align-items:center;gap:16px;transition:background .15s;display:flex;position:fixed;inset:auto 0 0}.submission-bar--dragging[data-v-dea71156]{background:var(--color-primary-soft);box-shadow:inset 0 0 0 2px var(--color-primary-soft)}.submission-upload[data-v-dea71156]{flex-wrap:nowrap;align-items:center;gap:10px 12px;min-width:0;display:flex}.introduction-help[data-v-dea71156]{width:42px;height:42px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:0 0 42px;place-items:center;padding:0;display:grid}.introduction-help[data-v-dea71156]:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text-secondary)}.introduction-help[data-v-dea71156]:disabled{opacity:.45;cursor:default}.introduction-help svg[data-v-dea71156]{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:23px;height:23px}.introduction-help circle[data-v-dea71156]{fill:currentColor;stroke:none}.upload-button[data-v-dea71156]{border:1px dashed var(--color-border);background:var(--color-surface);min-height:40px;color:var(--color-text-muted);font:inherit;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 13px;font-size:12px;display:inline-flex}.upload-button[data-v-dea71156]:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-subtle);color:var(--color-primary-hover)}.upload-button[data-v-dea71156]:disabled{opacity:.45;cursor:default}.submit-button[data-v-dea71156]{flex:none}.upload-help[data-v-dea71156]{margin-left:auto}.upload-help>summary[data-v-dea71156]{cursor:pointer}.upload-help>p[data-v-dea71156]{max-width:65ch;margin:8px 0;line-height:1.7}.visually-hidden[data-v-dea71156]{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.project-dialog[data-v-dea71156]{box-sizing:border-box;border:1px solid var(--color-border-subtle);background:var(--color-surface);width:min(500px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--color-text);border-radius:17px;margin:auto;padding:26px;overflow:auto}.project-dialog[data-v-dea71156]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.project-dialog__heading[data-v-dea71156]{justify-content:space-between;align-items:center;gap:14px;display:flex}.project-dialog h2[data-v-dea71156]{letter-spacing:-.02em;margin:0;font-size:20px}.project-dialog>p[data-v-dea71156]{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:14px;line-height:1.6}.dialog-close[data-v-dea71156]{background:var(--color-primary-subtle);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border:0;border-radius:8px;place-items:center;padding:0;font-size:25px;display:grid}.dialog-close[data-v-dea71156]:hover{background:var(--color-primary-soft);color:var(--color-primary-hover)}.dialog-actions[data-v-dea71156]{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:23px;display:flex}.new-file-label[data-v-dea71156]{color:var(--color-text-secondary);gap:9px;margin-top:23px;font-size:13px;font-weight:600;display:grid}.new-file-label input[data-v-dea71156]{box-sizing:border-box;border:1px solid var(--color-border);width:100%;color:var(--color-text-secondary);font:inherit;border-radius:9px;padding:12px 13px}.new-file-label input[data-v-dea71156]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.evaluation-status[data-v-dea71156]{color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;font-size:12px;display:inline-flex}.course-return[data-v-dea71156]{width:auto;margin-left:auto}.submission-dialog-close[data-v-dea71156]{position:absolute;top:12px;right:12px}.submission-dialog[data-v-dea71156]{width:min(860px,100% - 32px);max-width:none;margin:auto;padding:30px;position:fixed;inset:0}.submission-dialog .dialog-close[data-v-dea71156]{flex:none}.submission-dialog .dialog-close svg[data-v-dea71156]{stroke-width:2px;width:18px;height:18px}.attempt-summary[data-v-dea71156]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);color:var(--color-primary);border-radius:12px;gap:8px;padding:18px;font-size:14px;display:grid}.attempt-summary span[data-v-dea71156]{color:var(--color-text-muted)}.last-attempt[data-v-dea71156]{font-weight:600;color:var(--color-warning)!important}.submission-result[data-v-dea71156]{align-items:flex-start;gap:28px;display:flex}.submission-result__lion[data-v-dea71156]{object-fit:contain;flex:none;width:160px;height:200px}.submission-result__copy[data-v-dea71156]{flex:1;min-width:0}.submission-result__label[data-v-dea71156]{color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.submission-result h2[data-v-dea71156]{margin-top:10px;font-size:25px}.submission-result--passed h2[data-v-dea71156]{color:var(--color-success)}.submission-result--failed h2[data-v-dea71156]{color:var(--color-danger)}.submission-result__attempt[data-v-dea71156]{color:var(--color-text-muted);margin-top:12px;font-size:12px;display:block}.submission-result p[data-v-dea71156]{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:14px;line-height:1.75}.submission-result__feedback[data-v-dea71156]{white-space:pre-wrap}.submission-result code[data-v-dea71156]{background:var(--color-primary-soft);border-radius:4px;padding:2px 4px;font:.92em ui-monospace,SFMono-Regular,Consolas,monospace}.submission-result__waiting[data-v-dea71156]{align-items:center;gap:12px;display:flex}.evaluation-spinner[data-v-dea71156]{border:2px solid var(--color-primary-border);border-top-color:var(--color-primary);border-radius:50%;flex:none;width:18px;height:18px;animation:.8s linear infinite evaluation-spin-dea71156}@keyframes evaluation-spin-dea71156{to{transform:rotate(360deg)}}@media (width<=600px){.submission-dialog[data-v-dea71156]{padding:22px}.submission-result[data-v-dea71156]{flex-direction:column;gap:12px}.submission-result__lion[data-v-dea71156]{align-self:center;width:100px;height:120px}.submission-result h2[data-v-dea71156]{font-size:22px}}@media (prefers-reduced-motion:reduce){.evaluation-spinner[data-v-dea71156]{animation:none}}.programming-task[data-v-dea71156] .project-editor{flex:none;height:clamp(540px,74dvh,900px);min-height:540px;max-height:900px}.programming-task[data-v-dea71156] .editor-body{min-height:160px}.programming-task[data-v-dea71156] .editor-footer{max-height:30%;overflow:auto}.lion-hints[data-v-dea71156]{z-index:40;right:0;bottom:calc(var(--submission-footer-height) + 28px);width:105px;height:210px;position:fixed}.lion-hints__trigger[data-v-dea71156]{cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0;overflow:hidden}.lion-hints__trigger img[data-v-dea71156]{object-fit:contain;pointer-events:none;width:195px;max-width:none;height:210px;transition:transform .3s ease-out;display:block;transform:translate(14px)}.lion-hints--open .lion-hints__trigger img[data-v-dea71156]{transform:translate(-34px)}.lion-hints__card[data-v-dea71156]{width:min(470px,100vw - 125px);max-height:calc(100dvh - var(--submission-footer-height) - 56px);border:1px solid var(--color-border);background:var(--color-surface);opacity:0;visibility:hidden;border-radius:18px;flex-direction:column;transition:opacity .2s,transform .3s,visibility .2s;display:flex;position:absolute;bottom:0;right:105px;transform:translate(16px)}.lion-hints--open .lion-hints__card[data-v-dea71156]{opacity:1;visibility:visible;transform:translate(0)}.lion-hints__card header[data-v-dea71156]{border-bottom:1px solid var(--color-border-subtle);flex:none;padding:22px 46px 18px 24px;position:relative}.lion-hints__card header span[data-v-dea71156]{color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:750}.lion-hints__card h2[data-v-dea71156]{color:var(--color-text);margin:8px 0 0;font-size:21px}.lion-hints__card ul[data-v-dea71156]{color:var(--color-text-muted);margin:0;padding:22px 24px 24px 42px;font-size:14px;line-height:1.8;overflow:auto}.lion-hints__card li[data-v-dea71156]{overflow-wrap:anywhere;white-space:pre-wrap;padding-left:5px}.lion-hints__card li+li[data-v-dea71156]{margin-top:18px}.lion-hints__card li[data-v-dea71156]::marker{color:var(--color-primary)}.lion-hints__close[data-v-dea71156]{background:var(--color-primary-subtle);width:30px;height:30px;color:var(--color-primary);cursor:pointer;border:0;border-radius:8px;font-size:23px;position:absolute;top:14px;right:12px}@media (prefers-reduced-motion:reduce){.lion-hints__trigger img[data-v-dea71156],.lion-hints__card[data-v-dea71156]{transition:none}}@media (width<=760px){.programming-task[data-v-dea71156] .project-editor{height:clamp(600px,80dvh,900px);min-height:600px}.lion-hints[data-v-dea71156]{width:60px;height:135px;bottom:calc(var(--submission-footer-height) + 16px)}.lion-hints__trigger img[data-v-dea71156]{width:128px;height:135px;transform:translate(-1px)}.lion-hints--open .lion-hints__trigger img[data-v-dea71156]{transform:translate(-26px)}.lion-hints__card[data-v-dea71156]{width:calc(100vw - 76px);max-height:calc(100dvh - var(--submission-footer-height) - 32px);right:60px}.lion-hints__card header[data-v-dea71156]{padding:18px 38px 16px 18px}.lion-hints__card h2[data-v-dea71156]{font-size:18px}.lion-hints__card ul[data-v-dea71156]{padding:18px 18px 20px 32px;font-size:13px}.programming-task[data-v-dea71156]{height:auto}.task-heading[data-v-dea71156]{border-radius:16px;padding:19px}.task-heading__copy[data-v-dea71156]{padding-right:35px}.task-close[data-v-dea71156]{top:7px;right:7px}.task-meta[data-v-dea71156]{font-size:10px}.task-description[data-v-dea71156]{font-size:14px}.submission-bar[data-v-dea71156]{flex-wrap:wrap;align-items:stretch;gap:12px;padding:12px}.submission-upload[data-v-dea71156]{width:100%}.upload-button[data-v-dea71156]{flex:1;width:auto;min-width:0}.submit-button[data-v-dea71156]{margin-left:auto}.upload-help[data-v-dea71156]{margin-left:0}.project-dialog[data-v-dea71156]{padding:20px}}.lesson-feedback[data-v-72623073]{z-index:20;width:100%;min-height:var(--lesson-footer-height,7.5rem);border-top:1px solid;position:relative}.lesson-feedback__inner[data-v-72623073]{width:min(76rem,100% - 2rem);min-height:var(--lesson-footer-height,7.5rem);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.5rem;margin:0 auto;padding:1rem 1.5rem;display:grid}.lesson-feedback--correct[data-v-72623073]{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.lesson-feedback--incorrect[data-v-72623073]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.lesson-feedback__icon[data-v-72623073]{background:var(--color-surface);border-radius:50%;place-items:center;width:2.6rem;height:2.6rem;font-size:1.45rem;font-weight:900;display:grid}.lesson-feedback h2[data-v-72623073],.lesson-feedback p[data-v-72623073]{margin:0}.lesson-feedback h2[data-v-72623073]{font-size:1.1rem}.lesson-feedback__body>p[data-v-72623073]{max-width:54rem;margin-top:.25rem;line-height:1.4}.lesson-feedback__rating[data-v-72623073]{flex-wrap:wrap;align-items:center;gap:.45rem .8rem;min-height:3.2rem;margin-top:.7rem;display:flex}.lesson-feedback__rating-label[data-v-72623073]{flex:0 0 100%;font-size:.82rem;font-weight:700}.lesson-feedback__stars[data-v-72623073]{align-items:center;gap:.2rem;display:flex}.lesson-feedback__star[data-v-72623073]{width:1.8rem;height:1.8rem;color:var(--color-shadow-strong);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.lesson-feedback__star svg[data-v-72623073]{fill:#0000;stroke:currentColor;stroke-linejoin:round;stroke-width:1.8px;width:1.55rem;height:1.55rem;transition:color .12s,fill .12s,transform .12s}.lesson-feedback__star:hover svg[data-v-72623073],.lesson-feedback__star:focus-visible svg[data-v-72623073]{transform:translateY(-1px)scale(1.08)}.lesson-feedback__star[data-v-72623073]:focus-visible{outline-offset:2px;border-radius:5px;outline:2px solid}.lesson-feedback__star--active[data-v-72623073]{color:var(--color-warning)}.lesson-feedback__star--active svg[data-v-72623073]{fill:currentColor}.lesson-feedback__star[data-v-72623073]:disabled{cursor:wait;opacity:.6}.lesson-feedback__rating-state[data-v-72623073]{font-size:.78rem;font-weight:650}.lesson-feedback__rating-confirmation[data-v-72623073]{color:var(--color-text-muted);margin:0;font-size:.82rem;font-weight:500}.lesson-feedback__rating-error[data-v-72623073]{color:inherit;font-size:.78rem;font-weight:650}.lesson-feedback__button[data-v-72623073]{background:var(--color-success-action);min-width:12rem;color:var(--color-on-accent);cursor:pointer;font:inherit;white-space:nowrap;border:0;border-radius:11px;padding:.85rem 1.35rem;font-weight:800}.lesson-feedback--incorrect .lesson-feedback__button[data-v-72623073]{background:var(--color-danger-action)}.lesson-feedback__button[data-v-72623073]:disabled{cursor:wait;opacity:.62}@media (width<=900px){.lesson-feedback__inner[data-v-72623073]{width:100%;padding-inline:1rem}.lesson-feedback__body>p[data-v-72623073]{max-width:none}}@media (width<=720px){.lesson-feedback__inner[data-v-72623073]{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom,0px));grid-template-columns:auto minmax(0,1fr);gap:.65rem}.lesson-feedback__icon[data-v-72623073]{align-self:start}.lesson-feedback h2[data-v-72623073]{overflow-wrap:anywhere;font-size:1rem}.lesson-feedback__body>p[data-v-72623073]{overflow-wrap:anywhere;max-width:none;font-size:.9rem}.lesson-feedback__star[data-v-72623073]{width:2.75rem;height:2.75rem}.lesson-feedback__button[data-v-72623073]{white-space:normal;grid-column:1/-1;width:100%;min-width:0;min-height:2.75rem;padding:.7rem 1rem}.lesson-feedback__rating[data-v-72623073]{margin-top:.55rem}}.adaptive-summary[data-v-a01aff49]{background:var(--color-surface);width:100%;min-height:100dvh;color:var(--color-text);flex-direction:column;flex:1 0 auto;display:flex}.adaptive-summary__content[data-v-a01aff49]{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:min(46rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,8vh,5rem) 1rem clamp(2rem,6vh,3.5rem);display:flex}.adaptive-summary__hero[data-v-a01aff49]{grid-template-columns:minmax(0,1fr) minmax(11rem,15rem);align-items:center;gap:clamp(1.25rem,3vw,2.5rem);width:min(42rem,100%);display:grid}.adaptive-summary__lion[data-v-a01aff49]{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;max-height:17rem;display:block}.adaptive-summary__bubble[data-v-a01aff49]{border:1px solid var(--color-border);background:var(--color-surface);width:min(20rem,100%);color:var(--color-text);text-align:left;border-radius:1rem;justify-self:end;padding:1.15rem 1.35rem;font-size:1.45rem;font-weight:300;line-height:1.18;position:relative}.adaptive-summary__bubble[data-v-a01aff49]:before,.adaptive-summary__bubble[data-v-a01aff49]:after{content:"";border-style:solid;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.adaptive-summary__bubble[data-v-a01aff49]:before{border-width:.8rem 0 .8rem .9rem;border-color:transparent transparent transparent var(--color-border);right:-.9rem}.adaptive-summary__bubble[data-v-a01aff49]:after{border-width:.7rem 0 .7rem .8rem;border-color:transparent transparent transparent var(--color-border-subtle);right:-.77rem}.adaptive-summary__status[data-v-a01aff49]{gap:.8rem;width:min(30rem,100%);margin-top:clamp(1.5rem,4vh,2.4rem);display:grid}.adaptive-summary__status-row[data-v-a01aff49]{grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.75rem;font-size:.98rem;font-weight:600;line-height:1.4;display:grid}.adaptive-summary__status-icon[data-v-a01aff49]{border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.adaptive-summary__status-icon--practice[data-v-a01aff49]{background:var(--color-warning-soft);color:var(--color-warning);font-size:1.35rem;line-height:1}.adaptive-summary__status-icon--mastered[data-v-a01aff49]{background:var(--color-success-soft);color:var(--color-success)}.adaptive-summary__status-icon svg[data-v-a01aff49]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;width:1.1rem;height:1.1rem}.adaptive-summary__error[data-v-a01aff49]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);width:min(32rem,100%);color:var(--color-danger);text-align:center;border-radius:.6rem;margin:1rem 0 0;padding:.75rem .9rem;font-size:.9rem;line-height:1.45}.adaptive-summary__footer[data-v-a01aff49]{width:100%;min-height:var(--lesson-footer-height);border-top:1px solid var(--color-border-subtle);background:var(--color-surface);flex:none}.adaptive-summary__footer-inner[data-v-a01aff49]{width:min(62rem, calc(100% - (2 * var(--lesson-side-padding))));min-height:var(--lesson-footer-height);justify-content:flex-end;align-items:center;margin:0 auto;display:flex}.adaptive-summary__button[data-v-a01aff49]{background:var(--color-action);min-width:10.75rem;color:var(--color-on-accent);font:inherit;cursor:pointer;border:0;border-radius:.6rem;padding:.9rem 1.2rem;font-size:.95rem;font-weight:700}.adaptive-summary__button[data-v-a01aff49]:hover:not(:disabled){background:var(--color-action-hover)}.adaptive-summary__button[data-v-a01aff49]:disabled{cursor:wait;opacity:.62}@media (width<=700px){.adaptive-summary__content[data-v-a01aff49]{justify-content:flex-start;padding-top:2rem}.adaptive-summary__hero[data-v-a01aff49]{grid-template-columns:1fr;justify-items:center}.adaptive-summary__lion[data-v-a01aff49]{order:1;width:min(12rem,56vw)}.adaptive-summary__bubble[data-v-a01aff49]{text-align:center;order:2;justify-self:center;width:min(20rem,100%);font-size:1.3rem}.adaptive-summary__bubble[data-v-a01aff49]:before,.adaptive-summary__bubble[data-v-a01aff49]:after{top:-.9rem;left:50%;right:auto;transform:translate(-50%)}.adaptive-summary__bubble[data-v-a01aff49]:before{border-width:0 .8rem .9rem;border-color:transparent transparent var(--color-border) transparent}.adaptive-summary__bubble[data-v-a01aff49]:after{border-width:0 .7rem .8rem;border-color:transparent transparent var(--color-border-subtle) transparent;top:-.76rem}.adaptive-summary__footer-inner[data-v-a01aff49]{width:100%;padding:1rem var(--lesson-side-padding)}.adaptive-summary__button[data-v-a01aff49]{width:100%}}.mastery-success[data-v-37b49ad6]{background:var(--color-surface);width:100%;min-height:100dvh;color:var(--color-text);flex-direction:column;flex:1 0 auto;display:flex}.mastery-success__content[data-v-37b49ad6]{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:min(48rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,8vh,5rem) 1rem clamp(2rem,7vh,4rem);display:flex}.mastery-success__hero[data-v-37b49ad6]{grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);justify-content:center;align-items:center;gap:clamp(1.25rem,3.5vw,2.75rem);width:min(44rem,100%);display:grid}.mastery-success__lion[data-v-37b49ad6]{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;max-height:18rem;display:block}.mastery-success__bubble[data-v-37b49ad6]{border:1px solid var(--color-border);background:var(--color-surface);width:min(20rem,100%);color:var(--color-text);text-align:left;border-radius:1rem;padding:1.15rem 1.35rem;font-size:1.45rem;font-weight:300;line-height:1.18;position:relative}.mastery-success__bubble[data-v-37b49ad6]:before,.mastery-success__bubble[data-v-37b49ad6]:after{content:"";border-style:solid;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.mastery-success__bubble[data-v-37b49ad6]:before{border-width:.8rem .9rem .8rem 0;border-color:transparent var(--color-border) transparent transparent;left:-.9rem}.mastery-success__bubble[data-v-37b49ad6]:after{border-width:.72rem .82rem .72rem 0;border-color:transparent var(--color-border-subtle) transparent transparent;left:-.78rem}.mastery-success__eyebrow[data-v-37b49ad6]{color:var(--color-primary);letter-spacing:.08em;text-align:center;text-transform:uppercase;margin:clamp(1.4rem,4vh,2.3rem) 0 0;font-size:.8rem;font-weight:750;line-height:1.35}.mastery-success__confirmation[data-v-37b49ad6]{color:var(--color-text);text-align:center;justify-content:center;align-items:center;gap:.7rem;margin-top:.8rem;font-size:1rem;font-weight:650;line-height:1.45;display:flex}.mastery-success__check[data-v-37b49ad6]{background:var(--color-success-soft);width:2rem;height:2rem;color:var(--color-success);border-radius:50%;flex:none;place-items:center;display:grid}.mastery-success__check svg[data-v-37b49ad6]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;width:1.1rem;height:1.1rem}.mastery-success__footer[data-v-37b49ad6]{width:100%;min-height:var(--lesson-footer-height);border-top:1px solid var(--color-border-subtle);background:var(--color-surface);flex:none}.mastery-success__footer-inner[data-v-37b49ad6]{width:min(62rem, calc(100% - (2 * var(--lesson-side-padding))));min-height:var(--lesson-footer-height);justify-content:flex-end;align-items:center;margin:0 auto;display:flex}.mastery-success__button[data-v-37b49ad6]{background:var(--color-action);min-width:10.75rem;color:var(--color-on-accent);font:inherit;cursor:pointer;border:0;border-radius:.6rem;justify-content:center;align-items:center;gap:.6rem;padding:.9rem 1.2rem;font-size:.95rem;font-weight:700;transition:transform .12s,background .12s;display:inline-flex}.mastery-success__button svg[data-v-37b49ad6]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;width:1.05rem;height:1.05rem}.mastery-success__button[data-v-37b49ad6]:hover{background:var(--color-action-hover)}.mastery-success__button[data-v-37b49ad6]:active{transform:translateY(1px)}.mastery-success__button[data-v-37b49ad6]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}@media (width<=700px){.mastery-success__content[data-v-37b49ad6]{justify-content:flex-start;padding-top:2rem}.mastery-success__hero[data-v-37b49ad6]{grid-template-columns:1fr;justify-items:center;gap:.75rem}.mastery-success__lion[data-v-37b49ad6]{width:min(13rem,60vw)}.mastery-success__bubble[data-v-37b49ad6]{text-align:center;width:min(20rem,100%);font-size:1.3rem}.mastery-success__bubble[data-v-37b49ad6]:before,.mastery-success__bubble[data-v-37b49ad6]:after{top:auto;left:50%;transform:translate(-50%)}.mastery-success__bubble[data-v-37b49ad6]:before{border-width:0 .8rem .9rem;border-color:transparent transparent var(--color-border) transparent;top:-.9rem}.mastery-success__bubble[data-v-37b49ad6]:after{border-width:0 .72rem .82rem;border-color:transparent transparent var(--color-border-subtle) transparent;top:-.77rem}.mastery-success__confirmation[data-v-37b49ad6]{max-width:22rem;font-size:.95rem}.mastery-success__footer-inner[data-v-37b49ad6]{width:100%;padding:1rem var(--lesson-side-padding)}.mastery-success__button[data-v-37b49ad6]{width:100%}}@media (height<=760px) and (width>=701px){.mastery-success__content[data-v-37b49ad6]{padding-top:1rem;padding-bottom:1rem}.mastery-success__hero[data-v-37b49ad6]{grid-template-columns:minmax(9rem,12rem) minmax(0,1fr)}.mastery-success__lion[data-v-37b49ad6]{max-height:13rem}.mastery-success__bubble[data-v-37b49ad6]{font-size:1.35rem}.mastery-success__eyebrow[data-v-37b49ad6]{margin-top:1rem}}.verification-summary[data-v-5d1558b5]{background:var(--color-surface);width:100%;min-height:100dvh;color:var(--color-text);flex-direction:column;flex:1 0 auto;display:flex}.verification-summary__content[data-v-5d1558b5]{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:min(46rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,8vh,5rem) 1rem clamp(2rem,6vh,3.5rem);display:flex}.verification-summary__hero[data-v-5d1558b5]{grid-template-columns:minmax(0,1fr) minmax(11rem,15rem);align-items:center;gap:clamp(1.25rem,3vw,2.5rem);width:min(42rem,100%);display:grid}.verification-summary__lion[data-v-5d1558b5]{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;max-height:17rem;display:block}.verification-summary__bubble[data-v-5d1558b5]{border:1px solid var(--color-border);background:var(--color-surface);width:min(22rem,100%);color:var(--color-text);text-align:left;border-radius:1rem;justify-self:end;padding:1.1rem 1.3rem;font-size:1.35rem;font-weight:300;line-height:1.35;position:relative}.verification-summary__bubble[data-v-5d1558b5]:before,.verification-summary__bubble[data-v-5d1558b5]:after{content:"";border-style:solid;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.verification-summary__bubble[data-v-5d1558b5]:before{border-width:.8rem 0 .8rem .9rem;border-color:transparent transparent transparent var(--color-border);right:-.9rem}.verification-summary__bubble[data-v-5d1558b5]:after{border-width:.7rem 0 .7rem .8rem;border-color:transparent transparent transparent var(--color-border-subtle);right:-.77rem}.verification-summary__status[data-v-5d1558b5]{gap:.8rem;width:min(30rem,100%);margin-top:clamp(1.5rem,4vh,2.4rem);display:grid}.verification-summary__status-row[data-v-5d1558b5]{grid-template-columns:2rem minmax(0,1fr);align-items:center;gap:.75rem;font-size:.98rem;font-weight:600;line-height:1.4;display:grid}.verification-summary__status-icon[data-v-5d1558b5]{border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid}.verification-summary__status-icon--pending[data-v-5d1558b5]{background:var(--color-warning-soft)}.verification-summary__status-icon--mastered[data-v-5d1558b5]{background:var(--color-success-soft);color:var(--color-success)}.verification-summary__status-icon svg[data-v-5d1558b5]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;width:1.1rem;height:1.1rem}.verification-summary__error[data-v-5d1558b5]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);width:min(32rem,100%);color:var(--color-danger);text-align:center;border-radius:.6rem;margin:1rem 0 0;padding:.75rem .9rem;font-size:.9rem;line-height:1.45}.verification-summary__footer[data-v-5d1558b5]{width:100%;min-height:var(--lesson-footer-height);border-top:1px solid var(--color-border-subtle);background:var(--color-surface);flex:none}.verification-summary__footer-inner[data-v-5d1558b5]{width:min(62rem, calc(100% - (2 * var(--lesson-side-padding))));min-height:var(--lesson-footer-height);justify-content:flex-end;align-items:center;margin:0 auto;display:flex}.verification-summary__button[data-v-5d1558b5]{background:var(--color-action);min-width:14rem;color:var(--color-on-accent);font:inherit;cursor:pointer;border:0;border-radius:.6rem;padding:.9rem 1.2rem;font-size:.95rem;font-weight:700}.verification-summary__button[data-v-5d1558b5]:hover:not(:disabled){background:var(--color-action-hover)}.verification-summary__button[data-v-5d1558b5]:disabled{cursor:wait;opacity:.62}@media (width<=700px){.verification-summary__content[data-v-5d1558b5]{justify-content:flex-start;padding-top:2rem}.verification-summary__hero[data-v-5d1558b5]{grid-template-columns:1fr;justify-items:center}.verification-summary__lion[data-v-5d1558b5]{order:1;width:min(12rem,56vw)}.verification-summary__bubble[data-v-5d1558b5]{text-align:center;order:2;justify-self:center;width:min(22rem,100%)}.verification-summary__bubble[data-v-5d1558b5]:before,.verification-summary__bubble[data-v-5d1558b5]:after{top:-.9rem;left:50%;right:auto;transform:translate(-50%)}.verification-summary__bubble[data-v-5d1558b5]:before{border-width:0 .8rem .9rem;border-color:transparent transparent var(--color-primary-border) transparent}.verification-summary__bubble[data-v-5d1558b5]:after{border-width:0 .7rem .8rem;border-color:transparent transparent var(--color-border-subtle) transparent;top:-.76rem}.verification-summary__footer-inner[data-v-5d1558b5]{width:100%;padding:1rem var(--lesson-side-padding)}.verification-summary__button[data-v-5d1558b5]{width:100%}}.syntax-code-theme,.syntax-code-theme .syntax-token--plain{color:var(--syntax-plain)}.syntax-code-theme .syntax-token--comment{color:var(--syntax-comment);font-style:italic}.syntax-code-theme .syntax-token--keyword{color:var(--syntax-keyword);font-weight:650}.syntax-code-theme .syntax-token--type{color:var(--syntax-type)}.syntax-code-theme .syntax-token--string{color:var(--syntax-string)}.syntax-code-theme .syntax-token--number{color:var(--syntax-number)}.syntax-code-theme .syntax-token--literal{color:var(--syntax-literal)}.syntax-code-theme .syntax-token--function{color:var(--syntax-function)}.syntax-code-theme .syntax-token--annotation{color:var(--syntax-annotation)}.syntax-code-theme .syntax-token--operator{color:var(--syntax-operator)}.syntax-code-theme .syntax-token--punctuation{color:var(--syntax-punctuation)}.syntax-code-theme .syntax-token--property{color:var(--syntax-property)}.bug-hunt[data-v-2d957698]{gap:1.4rem;display:grid}.bug-hunt__eyebrow[data-v-2d957698]{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .45rem;font-size:.78rem;font-weight:800}.bug-hunt__prompt[data-v-2d957698]{max-width:60rem;color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;font-size:1.7rem;font-weight:650;line-height:1.3}.bug-hunt__code-shell[data-v-2d957698]{border:1px solid var(--color-code-border);background:var(--color-code-surface);box-shadow:0 12px 30px var(--color-shadow-medium);border-radius:14px;overflow:hidden}.bug-hunt__code-header[data-v-2d957698]{border-bottom:1px solid var(--color-code-border);color:var(--color-code-muted);text-transform:uppercase;justify-content:space-between;padding:.7rem 1rem;font-size:.78rem;font-weight:700;display:flex}.bug-hunt__lines[data-v-2d957698]{margin:0;padding:.65rem 0;list-style:none}.bug-hunt__line[data-v-2d957698]{width:100%;color:var(--color-code-text);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:3rem 1fr;align-items:baseline;padding:.24rem 1rem .24rem 0;display:grid}.bug-hunt__line[data-v-2d957698]:hover{background:var(--color-code-hover)}.bug-hunt__line--selected[data-v-2d957698],.bug-hunt__line--selected[data-v-2d957698]:hover{background:var(--color-code-selected)}.bug-hunt__line--correct[data-v-2d957698],.bug-hunt__line--correct[data-v-2d957698]:hover{background:var(--color-code-correct)}.bug-hunt__line--incorrect[data-v-2d957698],.bug-hunt__line--incorrect[data-v-2d957698]:hover{background:var(--color-code-incorrect)}.bug-hunt__line-number[data-v-2d957698]{color:var(--color-code-muted);text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.bug-hunt__line--selected .bug-hunt__line-number[data-v-2d957698]{color:var(--color-code-muted)}.bug-hunt__line code[data-v-2d957698]{overflow-wrap:anywhere;white-space:pre-wrap;padding-left:.85rem;font-size:.88rem}@media (height<=820px){.bug-hunt[data-v-2d957698]{gap:.9rem}.bug-hunt__eyebrow[data-v-2d957698]{margin-bottom:.3rem}.bug-hunt__code-header[data-v-2d957698]{padding:.55rem .9rem}.bug-hunt__lines[data-v-2d957698]{padding:.45rem 0}.bug-hunt__line[data-v-2d957698]{padding-top:.18rem;padding-bottom:.18rem}}@media (height<=700px){.bug-hunt[data-v-2d957698]{gap:.65rem}.bug-hunt__code-header[data-v-2d957698]{padding:.45rem .8rem}.bug-hunt__lines[data-v-2d957698]{padding:.3rem 0}}@media (width<=760px){.bug-hunt[data-v-2d957698]{gap:1rem;min-width:0}.bug-hunt__prompt[data-v-2d957698]{overflow-wrap:anywhere;font-size:clamp(1.25rem,5vw,1.5rem)}.bug-hunt__eyebrow[data-v-2d957698]{font-size:.7rem;line-height:1.5}.bug-hunt__code-header[data-v-2d957698]{gap:.75rem;padding:.65rem .75rem;font-size:.7rem}.bug-hunt__lines[data-v-2d957698]{overscroll-behavior-x:contain;grid-template-columns:minmax(100%,max-content);padding-block:.4rem;display:grid;overflow-x:auto}.bug-hunt__line[data-v-2d957698]{grid-template-columns:2.25rem minmax(0,1fr);align-items:center;min-height:2.75rem;padding-block:.4rem}.bug-hunt__line code[data-v-2d957698]{overflow-wrap:normal;white-space:pre;padding-left:.65rem;font-size:.82rem}}@media (width<=600px){.bug-hunt__line[data-v-2d957698]{min-height:1.5rem;padding-block:.2rem}.bug-hunt__line-number[data-v-2d957698],.bug-hunt__line code[data-v-2d957698]{line-height:1.45}}.choice-item[data-v-e18c4db8]{gap:1.75rem;display:grid}.choice-item__fieldset[data-v-e18c4db8]{border:0;min-width:0;margin:0;padding:0}.choice-item__prompt[data-v-e18c4db8]{max-width:48rem;color:var(--color-text);-webkit-font-smoothing:antialiased;margin-bottom:1.5rem;padding:0;font-size:30px;font-weight:750;line-height:1.35}.choice-item__options[data-v-e18c4db8]{gap:.8rem;display:grid}.choice-item__code[data-v-e18c4db8]{border:1px solid var(--color-border-strong);background:var(--color-code-surface);color:var(--color-on-accent);box-shadow:0 12px 28px var(--color-shadow-medium);border-radius:14px;margin:0 0 1.5rem;overflow:hidden}.choice-item__code-header[data-v-e18c4db8]{border-bottom:1px solid var(--color-border-strong);color:var(--color-text-faint);letter-spacing:.08em;text-transform:uppercase;padding:.65rem 1rem;font-size:.75rem;font-weight:800}.choice-item__code pre[data-v-e18c4db8]{tab-size:2;white-space:pre;margin:0;padding:1rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.95rem;line-height:1.65;overflow-x:auto}.choice-item__code code[data-v-e18c4db8]{font:inherit}.choice-option[data-v-e18c4db8]{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:.9rem;padding:1rem 1.1rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.choice-option[data-v-e18c4db8]:hover{border-color:var(--color-primary);transform:translateY(-1px)}.choice-option--selected[data-v-e18c4db8]{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-shadow)}.choice-option__input[data-v-e18c4db8]{opacity:0;width:1px;height:1px;position:absolute}.choice-option__marker[data-v-e18c4db8]{background:var(--color-primary-soft);width:2.2rem;height:2.2rem;color:var(--color-primary);border-radius:10px;place-items:center;font-weight:800;display:grid}.choice-option--selected .choice-option__marker[data-v-e18c4db8]{background:var(--color-action);color:var(--color-on-accent)}.choice-option--correct[data-v-e18c4db8]{border-color:var(--color-success-border);background:var(--color-success-soft);box-shadow:0 0 0 3px var(--color-success-shadow)}.choice-option--correct .choice-option__marker[data-v-e18c4db8]{background:var(--color-success-action);color:var(--color-on-accent)}.choice-option--incorrect[data-v-e18c4db8]{border-color:var(--color-danger-border);background:var(--color-danger-soft);box-shadow:0 0 0 3px var(--color-danger-shadow)}.choice-option--incorrect .choice-option__marker[data-v-e18c4db8]{background:var(--color-danger-action);color:var(--color-on-accent)}.choice-option__text[data-v-e18c4db8]{color:var(--color-text-secondary);font-size:1rem;line-height:1.55}@media (height<=820px){.choice-item[data-v-e18c4db8]{gap:1rem}.choice-item__prompt[data-v-e18c4db8]{margin-bottom:.9rem;font-size:clamp(1.25rem,1.8vw,1.7rem)}.choice-item__code[data-v-e18c4db8]{margin-bottom:.9rem}.choice-item__code-header[data-v-e18c4db8]{padding:.5rem .85rem}.choice-item__code pre[data-v-e18c4db8]{padding:.7rem .85rem;line-height:1.5}.choice-item__options[data-v-e18c4db8]{gap:.55rem}.choice-option[data-v-e18c4db8]{gap:.75rem;padding:.7rem .9rem}.choice-option__marker[data-v-e18c4db8]{width:2rem;height:2rem}}@media (height<=700px){.choice-item__prompt[data-v-e18c4db8]{margin-bottom:.65rem;font-size:1.2rem}.choice-item__code[data-v-e18c4db8]{margin-bottom:.65rem}.choice-item__options[data-v-e18c4db8]{gap:.4rem}.choice-option[data-v-e18c4db8]{padding:.55rem .8rem}}@media (width<=760px){.choice-item[data-v-e18c4db8]{min-width:0}.choice-item__prompt[data-v-e18c4db8]{overflow-wrap:anywhere;margin-bottom:1rem;font-size:clamp(1.25rem,5vw,1.5rem)}.choice-option[data-v-e18c4db8]{grid-template-columns:auto minmax(0,1fr);gap:.75rem;padding:.8rem}.choice-option__text[data-v-e18c4db8]{overflow-wrap:anywhere;min-width:0;font-size:.94rem}.choice-item__code pre[data-v-e18c4db8]{overscroll-behavior-x:contain;font-size:.82rem}}.unsupported-module[data-v-7b0e23cc]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:14px;padding:1.5rem}.unsupported-module__label[data-v-7b0e23cc]{text-transform:uppercase;margin:0 0 .4rem;font-size:.8rem;font-weight:800}.unsupported-module h2[data-v-7b0e23cc],.unsupported-module p[data-v-7b0e23cc]{margin:0}.unsupported-module p[data-v-7b0e23cc]:last-child{margin-top:.75rem}.mentor-hint[data-v-6680bfa9]{justify-items:center;gap:.55rem;width:12rem;display:grid}.mentor-hint__bubble[data-v-6680bfa9]{border:1px solid var(--color-primary-border);background:linear-gradient(145deg, var(--color-primary-subtle) 0%, var(--color-primary-soft) 100%);width:11.25rem;color:var(--color-text);border-radius:18px;padding:.95rem 1rem;position:relative}.mentor-hint__bubble[data-v-6680bfa9]:before{border-right:1px solid var(--color-primary-border);border-bottom:1px solid var(--color-primary-border);background:var(--color-primary-soft);content:"";width:1.35rem;height:1.35rem;position:absolute;bottom:-.7rem;right:1.55rem;transform:rotate(45deg)}.mentor-hint__bubble p[data-v-6680bfa9]{z-index:1;max-width:430px;color:var(--color-text);letter-spacing:0;text-align:left;margin:0;font-size:1rem;font-weight:350;line-height:1.4;position:relative}.mentor-hint__lion[data-v-6680bfa9]{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:9.25rem;max-height:10.5rem;display:block}@media (width<=1280px){.mentor-hint[data-v-6680bfa9]{justify-content:flex-end;align-items:flex-end;gap:.75rem;width:min(22rem,100%);display:flex}.mentor-hint__bubble[data-v-6680bfa9]{border-radius:16px;flex:auto;width:auto;min-width:0;margin-bottom:1.5rem;padding:.8rem .9rem}.mentor-hint__bubble[data-v-6680bfa9]:before,.mentor-hint__bubble[data-v-6680bfa9]:after{content:"";pointer-events:none;background:0 0;border:.7rem solid #0000;border-width:.7rem 0 .7rem .9rem;width:0;height:0;position:absolute;bottom:1rem;right:-.9rem;transform:none}.mentor-hint__bubble[data-v-6680bfa9]:before{border-left-color:var(--color-primary-border)}.mentor-hint__bubble[data-v-6680bfa9]:after{border-width:calc(.7rem - 1px) 0 calc(.7rem - 1px) .9rem;border-left-color:var(--color-primary-soft);bottom:calc(1rem + 1px);right:calc(1.5px - .9rem)}.mentor-hint__lion[data-v-6680bfa9]{flex:none;width:6rem;max-height:7rem}}@media (width<=760px){.mentor-hint[data-v-6680bfa9]{gap:.6rem;width:min(19rem,100%)}.mentor-hint__bubble[data-v-6680bfa9]{border-radius:14px;margin-bottom:1.25rem;padding:.75rem .85rem}.mentor-hint__bubble p[data-v-6680bfa9]{overflow-wrap:anywhere;font-size:.9rem;line-height:1.4}.mentor-hint__lion[data-v-6680bfa9]{width:4.75rem;max-height:5.5rem}}.lesson-generation[data-v-16881317]{background:var(--color-surface);width:100%;min-height:100dvh;color:var(--color-text);flex-direction:column;flex:1 0 auto;display:flex}.lesson-generation__content[data-v-16881317]{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:min(48rem,100% - 2rem);margin:0 auto;padding:clamp(2rem,8vh,5rem) 1rem;display:flex}.lesson-generation__hero[data-v-16881317]{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem);justify-content:center;align-items:center;gap:clamp(1.25rem,3.5vw,2.75rem);width:min(44rem,100%);display:grid}.lesson-generation__lion[data-v-16881317]{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;max-height:18rem;display:block}.lesson-generation__bubble[data-v-16881317]{border:1px solid var(--color-border);background:var(--color-surface);width:min(20rem,100%);color:var(--color-text);text-align:left;border-radius:1rem;justify-self:end;padding:1.15rem 1.35rem;font-size:1.45rem;font-weight:300;line-height:1.18;position:relative}.lesson-generation__bubble[data-v-16881317]:before,.lesson-generation__bubble[data-v-16881317]:after{content:"";border-style:solid;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.lesson-generation__bubble[data-v-16881317]:before{border-width:.8rem 0 .8rem .9rem;border-color:transparent transparent transparent var(--color-border);right:-.9rem}.lesson-generation__bubble[data-v-16881317]:after{border-width:.72rem 0 .72rem .82rem;border-color:transparent transparent transparent var(--color-surface);right:-.78rem}.lesson-generation__accessible-message[data-v-16881317]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lesson-generation__dashboard-navigation[data-v-16881317]{flex-direction:column;align-items:center;margin-top:clamp(3.5rem,7vh,5rem);display:flex}.lesson-generation__dashboard-link[data-v-16881317]{color:var(--color-text-muted);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:.45rem;padding:.45rem .25rem;font-size:.95rem;font-weight:550;transition:color .16s;display:inline-flex}.lesson-generation__dashboard-link[data-v-16881317]:hover,.lesson-generation__dashboard-link[data-v-16881317]:focus-visible{color:var(--color-primary-hover)}.lesson-generation__dashboard-link[data-v-16881317]:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:.35rem}.lesson-generation__dashboard-link svg[data-v-16881317]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.05rem;height:1.05rem}.lesson-generation__dashboard-description[data-v-16881317]{color:var(--color-text-muted);text-align:center;margin:.1rem 0 0;font-size:.82rem;font-weight:400;line-height:1.4}@media (width<=700px){.lesson-generation__content[data-v-16881317]{justify-content:center;padding-block:2rem}.lesson-generation__hero[data-v-16881317]{grid-template-columns:1fr;justify-items:center;gap:.75rem}.lesson-generation__lion[data-v-16881317]{order:1;width:min(13rem,60vw)}.lesson-generation__bubble[data-v-16881317]{text-align:center;order:2;justify-self:center;width:min(20rem,100%);font-size:1.3rem}.lesson-generation__bubble[data-v-16881317]:before,.lesson-generation__bubble[data-v-16881317]:after{top:auto;left:50%;right:auto;transform:translate(-50%)}.lesson-generation__bubble[data-v-16881317]:before{border-width:0 .8rem .9rem;border-color:transparent transparent var(--color-border) transparent;top:-.9rem}.lesson-generation__bubble[data-v-16881317]:after{border-width:0 .72rem .82rem;border-color:transparent transparent var(--color-surface) transparent;top:-.77rem}.lesson-generation__dashboard-navigation[data-v-16881317]{margin-top:2.75rem}}@media (height<=760px) and (width>=701px){.lesson-generation__content[data-v-16881317]{padding-top:1rem;padding-bottom:1rem}.lesson-generation__hero[data-v-16881317]{grid-template-columns:minmax(0,1fr) minmax(9rem,12rem)}.lesson-generation__lion[data-v-16881317]{max-height:13rem}.lesson-generation__bubble[data-v-16881317]{font-size:1.35rem}.lesson-generation__dashboard-navigation[data-v-16881317]{margin-top:2.5rem}}.lesson-exit-dialog[data-v-26666228]{box-sizing:border-box;background:var(--color-surface);width:min(27rem,100vw - 2rem);max-height:calc(100dvh - 2rem);box-shadow:0 24px 64px var(--color-shadow-medium), 0 4px 12px var(--color-shadow-soft);color:var(--color-text);text-align:center;border:0;border-radius:18px;margin:auto;padding:2rem 1.9rem 1.8rem;position:fixed;overflow:auto}.lesson-exit-dialog[data-v-26666228]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lesson-exit-dialog h2[data-v-26666228]{color:var(--color-text);margin:0 0 .65rem;font-size:1.5rem;font-weight:700;line-height:1.3}.lesson-exit-dialog h2[data-v-26666228]:focus{outline:none}.lesson-exit-dialog>p[data-v-26666228]{color:var(--color-text-muted);margin:0;font-size:.98rem;line-height:1.5}.lesson-exit-dialog__actions[data-v-26666228]{gap:.6rem;margin-top:1.6rem;display:grid}.lesson-exit-dialog__actions button[data-v-26666228]{cursor:pointer;width:100%;min-height:3.15rem;font:inherit;border:0;border-radius:11px;padding:.75rem 1rem;font-weight:650;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s}.lesson-exit-dialog__course[data-v-26666228]{background:var(--color-exit-course-background);color:var(--color-exit-course-text)}.lesson-exit-dialog__abandon[data-v-26666228]{color:var(--color-danger);background:0 0}.lesson-exit-dialog__abandon--confirm[data-v-26666228]{background:var(--color-danger-action);color:var(--color-on-accent)}.lesson-exit-dialog__continue[data-v-26666228]{color:var(--color-text-secondary);background:0 0}.lesson-exit-dialog__actions button[data-v-26666228]:disabled{cursor:not-allowed;opacity:.5}.lesson-exit-dialog button[data-v-26666228]:focus-visible{box-shadow:inset 0 -2px 0 var(--color-text-muted);outline:0}.lesson-exit-dialog>.lesson-exit-dialog__error[data-v-26666228]{color:var(--color-danger);margin-top:1rem}@media (hover:hover){.lesson-exit-dialog__course[data-v-26666228]:hover{background:var(--color-exit-course-hover)}.lesson-exit-dialog__abandon[data-v-26666228]:hover{background:var(--color-danger-soft)}.lesson-exit-dialog__abandon--confirm[data-v-26666228]:hover{background:var(--color-danger-action-hover)}.lesson-exit-dialog__continue[data-v-26666228]:hover{background:var(--color-surface-hover);color:var(--color-text)}}.lesson-exit-dialog__actions button[data-v-26666228]:not(:disabled):active{box-shadow:none;transform:translateY(1px)}@media (prefers-reduced-motion:reduce){.lesson-exit-dialog__actions button[data-v-26666228]{transition:none}.lesson-exit-dialog__actions button[data-v-26666228]:not(:disabled):active{transform:none}}.lesson-view[data-v-26666228]{--lesson-header-height:6rem;--lesson-footer-height:10.5rem;--lesson-side-padding:clamp(1rem, 5vw, 4rem);--mentor-line-offset:8px;background:var(--color-surface);min-height:100dvh;color:var(--color-text);flex-direction:column;display:flex}.lesson-view--unavailable[data-v-26666228],.lesson-view--generation-error[data-v-26666228]{--lesson-header-height:0rem}.lesson-header[data-v-26666228]{box-sizing:border-box;z-index:10;width:min(64rem,100%);min-width:0;height:var(--lesson-header-height);background:var(--color-surface);flex:none;grid-template-columns:2.75rem minmax(0,1fr) 5rem;justify-content:center;align-items:center;gap:1rem;margin:0 auto;padding:1rem 1.25rem;display:grid;position:relative}.lesson-header__close[data-v-26666228]{width:2.75rem;height:2.75rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-self:center;place-items:center;padding:0;display:grid}.lesson-header__close svg[data-v-26666228]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:3px;width:1.45rem;height:1.45rem;display:block}.lesson-header__close[data-v-26666228]:hover{background:var(--color-surface-hover);color:var(--color-text-secondary)}.lesson-header__close[data-v-26666228]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.lesson-header__progress[data-v-26666228]{width:100%;min-width:0;position:relative}.lesson-header__track[data-v-26666228]{background:var(--color-surface-muted);border-radius:999px;width:100%;height:.75rem;overflow:hidden}.lesson-header__track span[data-v-26666228]{border-radius:inherit;background:var(--color-action);height:100%;transition:width .26s;display:block}.lesson-header__pool-position[data-v-26666228]{color:var(--color-text-muted);text-align:center;font-size:.8rem;font-weight:350;line-height:1;position:absolute;top:calc(100% + 1rem);left:0;right:0}.lesson-header__streak[data-v-26666228]{color:var(--color-text-muted);text-align:center;text-transform:uppercase;font-size:.75rem}.lesson-header__streak strong[data-v-26666228]{color:var(--color-primary);font-size:1.25rem;display:block}.lesson-stage[data-v-26666228]{width:100%;min-height:calc(100dvh - var(--lesson-header-height));flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;display:flex}.lesson-stage--programming[data-v-26666228]{justify-content:flex-start;min-height:100dvh}.lesson-stage--summary[data-v-26666228]{justify-content:flex-start;min-height:100dvh;padding:0}.lesson-stage--abandoned[data-v-26666228]{background:var(--color-surface);justify-content:center;padding:clamp(1rem,4vw,3rem)}.lesson-stage--programming-success[data-v-26666228]{justify-content:center;min-height:100dvh;padding:clamp(1rem,4vw,3rem)}.programming-success[data-v-26666228]{width:min(100%,68rem);padding:clamp(1rem,4vw,3rem)}.programming-success__card[data-v-26666228]{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(1rem,4vw,3rem);min-height:29rem;padding:clamp(2rem,5vw,4rem);display:grid}.programming-success__lion[data-v-26666228]{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;max-height:23rem;display:block}.programming-success__content[data-v-26666228]{text-align:center;min-width:0}.programming-success__badge[data-v-26666228]{background:var(--color-success-soft);color:var(--color-success);border-radius:999px;align-items:center;gap:.55rem;padding:.45rem .8rem;font-size:.9rem;font-weight:750;display:inline-flex}.programming-success__badge svg[data-v-26666228]{width:1.3rem;height:1.3rem;fill:var(--color-success);stroke:var(--color-border-subtle);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px}.programming-success__content h1[data-v-26666228]{color:var(--color-text);margin:1.25rem 0 1.8rem;font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.15}.programming-success__content button[data-v-26666228]{background:var(--color-action);min-height:3.25rem;color:var(--color-on-accent);cursor:pointer;font:inherit;border:0;border-radius:10px;justify-content:center;align-items:center;padding:.75rem 1.35rem;font-weight:4000;display:inline-flex}.programming-success__content button[data-v-26666228]:hover{background:var(--color-action-hover)}.programming-success__content button[data-v-26666228]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:3px}.programming-success__content button svg[data-v-26666228]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1.1rem;height:1.1rem}@media (width<=680px){.programming-success__card[data-v-26666228]{text-align:center;grid-template-columns:minmax(0,1fr);gap:.5rem;min-height:0}.programming-success__lion[data-v-26666228]{max-height:13rem}.programming-success__content h1[data-v-26666228]{margin-bottom:1.5rem}}.lesson-abandoned[data-v-26666228]{width:min(100%,56rem)}.lesson-abandoned__card[data-v-26666228]{grid-template-columns:minmax(0,15rem) minmax(0,1fr);align-items:center;gap:clamp(2.5rem,6vw,5rem);padding:clamp(1.5rem,4vw,3rem) 0;display:grid}.lesson-abandoned__illustration[data-v-26666228]{place-items:center;display:grid}.lesson-abandoned__illustration img[data-v-26666228]{width:100%;max-width:15rem;height:auto;display:block}.lesson-abandoned__content[data-v-26666228]{width:100%;min-width:0;color:var(--color-text-secondary);text-align:left}.lesson-abandoned h1[data-v-26666228]{letter-spacing:-.025em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.65rem,3vw,2.1rem);font-weight:650;line-height:1.25}.lesson-abandoned__description[data-v-26666228]{max-width:28rem;color:var(--color-text-muted);text-wrap:pretty;margin:.9rem 0 0;font-size:.98rem;line-height:1.65}.lesson-abandoned__actions[data-v-26666228]{margin-top:1.75rem;display:flex}.lesson-abandoned__actions button[data-v-26666228]{cursor:pointer;min-height:3rem;font:inherit;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem 1.4rem;font-size:.9rem;font-weight:600;transition:background-color .15s,color .15s,box-shadow .15s;display:inline-flex}.lesson-abandoned__actions svg[data-v-26666228]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;flex-shrink:0;width:1.1rem;height:1.1rem}.lesson-abandoned__course[data-v-26666228]{background:linear-gradient(110deg, var(--color-action), var(--color-action));width:min(100%,19rem);color:var(--color-on-accent);box-shadow:0 5px 16px var(--color-primary-shadow)}.lesson-abandoned__actions button[data-v-26666228]:disabled{cursor:wait;opacity:.6}.lesson-abandoned__actions button[data-v-26666228]:focus-visible{outline:3px solid var(--color-primary-border);outline-offset:4px}@media (hover:hover){.lesson-abandoned__course[data-v-26666228]:not(:disabled):hover{background:linear-gradient(110deg, var(--color-action-hover), var(--color-action-hover));box-shadow:0 6px 20px var(--color-primary-shadow)}}@media (width<=560px){.lesson-abandoned__card[data-v-26666228]{grid-template-columns:5rem minmax(0,1fr);align-items:start;gap:1.25rem;padding:1.5rem 0}.lesson-abandoned__illustration[data-v-26666228]{padding-top:.25rem}.lesson-abandoned h1[data-v-26666228]{font-size:1.5rem}.lesson-abandoned__description[data-v-26666228]{font-size:.94rem}.lesson-abandoned__course[data-v-26666228]{width:100%}.lesson-abandoned__actions button[data-v-26666228]{padding-inline:.75rem}}@media (prefers-reduced-motion:reduce){.lesson-abandoned__actions button[data-v-26666228]{transition:none}}.lesson-stage--mastery-success[data-v-26666228],.lesson-stage--verification-summary[data-v-26666228]{min-height:100dvh;padding:0}.lesson-active-layout[data-v-26666228]{width:100%;min-height:calc(100dvh - var(--lesson-header-height));flex-direction:column;flex:1 0 auto;display:flex;position:relative}.lesson-content-area[data-v-26666228]{width:100%;padding-inline:var(--lesson-side-padding);flex:1 0 auto;grid-template-columns:minmax(0,1fr) minmax(0,52rem) minmax(0,1fr);display:grid}.lesson-content-area__task[data-v-26666228]{grid-column:2;justify-content:center;align-items:center;min-width:0;padding-block:clamp(1.5rem,4vh,3.5rem) clamp(3rem,6vh,5rem);display:flex}.lesson-card[data-v-26666228]{background:var(--color-surface);border:0;gap:1rem;width:min(52rem,100%);padding:0;display:grid}.lesson-content-area__mentor-slot[data-v-26666228]{grid-column:3;justify-content:center;align-items:flex-end;min-width:0;display:flex}.lesson-content-area__mentor[data-v-26666228]{z-index:25;transform:translateX(calc(var(--lesson-side-padding) / 2)) translateY(var(--mentor-line-offset));flex:none;margin:0}.lesson-footer-shell[data-v-26666228]{flex:none;width:100%;margin-top:auto;position:relative}.lesson-action-bar[data-v-26666228]{z-index:20;width:100%;min-height:var(--lesson-footer-height);border-top:1px solid var(--color-border-strong);background:var(--color-surface);position:relative}.lesson-action-bar__inner[data-v-26666228]{width:min(64rem,100%);min-height:var(--lesson-footer-height);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1.5rem;margin:0 auto;padding:1rem 1.25rem;display:grid}.lesson-action-bar__skip[data-v-26666228]{border:1px solid var(--color-primary);background:var(--color-surface);min-width:9rem;color:var(--color-primary);cursor:pointer;font:inherit;border-radius:12px;padding:.9rem 1.2rem;font-weight:800}.lesson-action-bar__skip[data-v-26666228]:disabled{cursor:not-allowed;opacity:.5}.lesson-action-bar__spacer[data-v-26666228]{min-width:0}.lesson-action-bar__error[data-v-26666228]{color:var(--color-danger);margin:0;font-size:.9rem;font-weight:650}.lesson-action-bar__button[data-v-26666228]{background:var(--color-action);min-width:11.5rem;color:var(--color-on-accent);cursor:pointer;font:inherit;border:0;border-radius:12px;grid-column:-2/-1;padding:.9rem 1.4rem;font-weight:800;transition:background .16s,transform .16s}.lesson-action-bar__button[data-v-26666228]:not(:disabled):hover{background:var(--color-action-hover);transform:translateY(-1px)}.lesson-action-bar__button[data-v-26666228]:disabled{background:var(--color-progress-track);color:var(--color-on-accent);cursor:not-allowed}.lesson-state[data-v-26666228]{text-align:center;flex-direction:column;align-items:center;max-width:38rem;margin:auto;padding:2rem 1.25rem;display:flex}.lesson-state__spinner[data-v-26666228]{border:4px solid var(--color-primary-border);border-top-color:var(--color-primary);border-radius:50%;width:3rem;height:3rem;animation:.8s linear infinite lesson-spin-26666228}.lesson-state__eyebrow[data-v-26666228]{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;margin:1rem 0 0;font-size:.78rem;font-weight:850}.lesson-state h1[data-v-26666228]{color:var(--color-text);margin:.65rem 0 0;font-size:clamp(1.7rem,4vw,2.5rem)}.lesson-state p[data-v-26666228]{color:var(--color-text-muted);margin:.75rem 0 0;line-height:1.65}.lesson-state button[data-v-26666228]{background:var(--color-action);color:var(--color-on-accent);cursor:pointer;font:inherit;border:0;border-radius:10px;margin-top:1.2rem;padding:.8rem 1.15rem;font-weight:750}.lesson-state__actions[data-v-26666228]{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.2rem;display:flex}.lesson-state__actions button[data-v-26666228]{margin-top:0}.lesson-state button[data-v-26666228]:disabled{cursor:wait;opacity:.65}.lesson-state .lesson-state__secondary-action[data-v-26666228]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted)}.lesson-state .lesson-state__action-error[data-v-26666228]{color:var(--color-danger);font-weight:700}.lesson-state__symbol[data-v-26666228]{background:var(--color-danger-soft);width:3.5rem;height:3.5rem;color:var(--color-danger);border-radius:50%;place-items:center;font-size:1.7rem;font-weight:900;display:grid}@keyframes lesson-spin-26666228{to{transform:rotate(360deg)}}@media (width<=1280px){.lesson-content-area[data-v-26666228]{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.lesson-content-area__task[data-v-26666228]{grid-column:1;padding-block:clamp(1.5rem,4vh,3rem) clamp(1.5rem,3vh,2.5rem)}.lesson-content-area__mentor-slot[data-v-26666228]{grid-column:1;justify-content:flex-end;padding-bottom:0}.lesson-content-area__mentor[data-v-26666228]{width:min(22rem,100%);transform:translateY(var(--mentor-line-offset))}}@media (width>=761px) and (width<=1280px){.lesson-content-area__task[data-v-26666228]{padding-block:2rem 1.5rem}}@media (width<=760px){.lesson-view[data-v-26666228]:not(.lesson-view--unavailable):not(.lesson-view--generation-error){--lesson-header-height:4rem}.lesson-header[data-v-26666228]{grid-template-columns:2.75rem minmax(0,1fr) 3rem;gap:.65rem;width:100%;padding:.5rem 1rem}.lesson-header__track[data-v-26666228]{height:.5rem}.lesson-header__streak[data-v-26666228]{min-width:0;font-size:.65rem;line-height:1.2}.lesson-header__streak strong[data-v-26666228]{font-size:1.1rem}.lesson-content-area[data-v-26666228]{padding-inline:1rem}.lesson-content-area__task[data-v-26666228]{padding-block:1.25rem 1rem}.lesson-content-area__mentor-slot[data-v-26666228]{padding-top:.75rem}.lesson-content-area__mentor[data-v-26666228]{width:min(19rem,100%);transform:translateY(var(--mentor-line-offset))}.lesson-active-layout[data-v-26666228]{--lesson-footer-height:5.5rem}.lesson-action-bar__inner[data-v-26666228]{padding:.85rem 1rem calc(.85rem + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.lesson-action-bar__spacer[data-v-26666228]{display:none}.lesson-action-bar__error[data-v-26666228]{grid-column:1/-1}.lesson-action-bar__skip[data-v-26666228],.lesson-action-bar__button[data-v-26666228]{overflow-wrap:anywhere;min-width:0;min-height:2.75rem;padding:.75rem .5rem;font-size:.9rem}}@media (height<=820px) and (width>=761px){.lesson-content-area__task[data-v-26666228]{padding-top:1rem;padding-bottom:2.5rem}}@media (height<=700px) and (width>=761px){.lesson-content-area__task[data-v-26666228]{padding-top:.75rem;padding-bottom:2rem}}.theme-setting__label[data-v-903e0526]{justify-content:space-between;align-items:center;gap:20px;font-weight:650;display:flex}select[data-v-903e0526]{border:1px solid var(--color-border);background:var(--color-surface);max-width:100%;min-height:42px;color:var(--color-text);font:inherit;border-radius:8px;padding:9px 12px;font-weight:400}select[data-v-903e0526]:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}p[data-v-903e0526]{color:var(--color-text-muted);margin:8px 0 0;font-size:14px}@media (width<=600px){.theme-setting__label[data-v-903e0526]{flex-direction:column;align-items:stretch;gap:10px}}.settings[data-v-af370166]{gap:20px;width:100%;max-width:900px;margin:0 auto;display:grid}.settings-card[data-v-af370166]{border:1px solid var(--color-border-subtle);background:var(--color-surface);border-radius:12px;padding:24px}.settings-card>header[data-v-af370166]{margin-bottom:20px}.settings-card h2[data-v-af370166]{margin:0;font-size:21px}.settings-card header p[data-v-af370166]{color:var(--color-text-muted);margin:6px 0 0}dl[data-v-af370166]{margin:0;display:grid}dl>div[data-v-af370166]{border-top:1px solid var(--color-border-subtle);grid-template-columns:minmax(140px,.35fr) minmax(0,1fr);gap:20px;padding:15px 0;display:grid}dt[data-v-af370166]{color:var(--color-text-muted)}dd[data-v-af370166]{margin:0;font-weight:650}.setting-row[data-v-af370166]{border-top:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:20px;padding-top:18px;display:flex}.setting-row>div[data-v-af370166]{gap:3px;display:grid}.setting-row span[data-v-af370166]{color:var(--color-text-muted);font-size:14px}.setting-row button[data-v-af370166]{border:1px solid var(--color-border);background:var(--color-surface-muted);min-height:38px;color:var(--color-text-muted);border-radius:7px;padding:8px 14px}.setting-row .sound-toggle[data-v-af370166]{cursor:pointer;flex-shrink:0;min-width:4.25rem;font-weight:750}.setting-row .sound-toggle--active[data-v-af370166]{border-color:var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}.setting-row .sound-toggle[data-v-af370166]:hover{border-color:var(--color-primary)}.setting-row .sound-toggle[data-v-af370166]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.danger-card[data-v-af370166]{border-color:var(--color-danger-border)}.danger-card h2[data-v-af370166]{color:var(--color-danger)}.danger-row[data-v-af370166]{border-top-color:var(--color-danger-border)}.setting-row .danger-button[data-v-af370166]{border-color:var(--color-danger-border);background:var(--color-danger-action);color:var(--color-on-accent);cursor:pointer;flex-shrink:0;font-weight:700}.setting-row .danger-button[data-v-af370166]:hover:not(:disabled){border-color:var(--color-danger-border);background:var(--color-danger-action-hover)}.setting-row .danger-button[data-v-af370166]:focus-visible{outline:3px solid var(--color-danger-overlay);outline-offset:2px}.setting-row .danger-button[data-v-af370166]:disabled{cursor:wait;opacity:.65}.error-message[data-v-af370166]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:8px;margin:16px 0 0;padding:12px 14px;font-size:14px}@media (width<=600px){dl>div[data-v-af370166]{grid-template-columns:1fr;gap:5px}.setting-row[data-v-af370166]{flex-direction:column;align-items:flex-start}.setting-row .danger-button[data-v-af370166],.setting-row .sound-toggle[data-v-af370166]{width:100%}}.overview[data-v-221fcdaf]{gap:24px;display:grid}.overview__heading[data-v-221fcdaf],.panel__heading[data-v-221fcdaf],.coverage-item__heading[data-v-221fcdaf]{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.overview__heading h2[data-v-221fcdaf],.panel__heading h3[data-v-221fcdaf],.empty-state p[data-v-221fcdaf]{margin:0}.overview__heading h2[data-v-221fcdaf]{font-size:22px}.overview__heading p[data-v-221fcdaf],.panel__heading p[data-v-221fcdaf]{color:var(--color-text-muted);margin:5px 0 0}.overview__heading p[data-v-221fcdaf]{font-size:15px}.refresh-button[data-v-221fcdaf]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:8px;align-items:center;gap:8px;padding:9px 12px;font-weight:600;display:inline-flex}.refresh-button[data-v-221fcdaf]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.refresh-button[data-v-221fcdaf]:disabled{opacity:.55}.refresh-button svg[data-v-221fcdaf],.attention-item svg[data-v-221fcdaf]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.refresh-button svg[data-v-221fcdaf]{width:17px;height:17px}.notice[data-v-221fcdaf],.loading-card[data-v-221fcdaf]{border-radius:9px;padding:14px 16px;font-size:14px}.notice[data-v-221fcdaf]{border:1px solid var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning)}.loading-card[data-v-221fcdaf]{border:1px solid var(--color-border);background:var(--color-primary-subtle);color:var(--color-text-muted)}.metrics[data-v-221fcdaf]{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card[data-v-221fcdaf]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;min-height:154px;padding:18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative}.metric-card[data-v-221fcdaf]:hover{border-color:var(--color-primary);box-shadow:0 8px 22px var(--color-primary-shadow);transform:translateY(-1px)}.metric-card__label[data-v-221fcdaf]{color:var(--color-text-muted);padding-right:38px;font-size:13px;font-weight:600}.metric-card strong[data-v-221fcdaf]{align-self:end;margin-top:19px;font-size:30px;line-height:1}.metric-card small[data-v-221fcdaf]{color:var(--color-text-muted);margin-top:8px;font-size:12px}.overview-grid[data-v-221fcdaf]{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:16px;display:grid}.panel[data-v-221fcdaf]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;overflow:hidden}.panel__heading[data-v-221fcdaf]{border-bottom:1px solid var(--color-border-subtle);padding:20px 22px 17px}.panel__heading h3[data-v-221fcdaf]{font-size:17px}.panel__heading p[data-v-221fcdaf]{font-size:13px}.count-label[data-v-221fcdaf]{background:var(--color-primary-soft);min-width:27px;color:var(--color-primary);text-align:center;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700}.attention-list[data-v-221fcdaf]{display:grid}.attention-item[data-v-221fcdaf]{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:11px;min-height:54px;padding:11px 18px;font-size:14px;font-weight:600;text-decoration:none;display:grid}.attention-item[data-v-221fcdaf]:last-child{border-bottom:0}.attention-item[data-v-221fcdaf]:hover{background:var(--color-primary-subtle);color:var(--color-primary)}.attention-item__indicator[data-v-221fcdaf]{border-radius:50%;place-items:center;width:27px;height:27px;font-size:13px;font-weight:800;display:grid}.attention-item__indicator--warning[data-v-221fcdaf]{background:var(--color-warning-soft);color:var(--color-warning)}.attention-item__indicator--danger[data-v-221fcdaf]{background:var(--color-danger-soft);color:var(--color-danger)}.attention-item svg[data-v-221fcdaf]{width:17px;height:17px}.empty-state[data-v-221fcdaf]{align-items:center;gap:13px;padding:24px 22px;display:flex}.empty-state>span[data-v-221fcdaf]{background:var(--color-success-soft);width:34px;height:34px;color:var(--color-success);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.empty-state p[data-v-221fcdaf]{color:var(--color-text-muted);margin-top:2px;font-size:13px}.coverage-list[data-v-221fcdaf]{gap:18px;padding:20px 22px;display:grid}.coverage-item__heading[data-v-221fcdaf]{align-items:center;font-size:13px}.coverage-item__heading strong[data-v-221fcdaf]{font-size:12px}.progress-track[data-v-221fcdaf]{background:var(--color-surface-muted);border-radius:999px;height:7px;margin-top:8px;overflow:hidden}.progress-track span[data-v-221fcdaf]{border-radius:inherit;background:var(--color-action);height:100%;transition:width .2s;display:block}.panel-link[data-v-221fcdaf]{border-top:1px solid var(--color-border-subtle);color:var(--color-primary);justify-content:space-between;align-items:center;padding:14px 22px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.panel-link[data-v-221fcdaf]:hover{background:var(--color-primary-subtle)}@media (width<=900px){.metrics[data-v-221fcdaf]{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid[data-v-221fcdaf]{grid-template-columns:1fr}}@media (width<=560px){.overview__heading[data-v-221fcdaf]{flex-direction:column;align-items:stretch}.refresh-button[data-v-221fcdaf]{justify-content:center}.metrics[data-v-221fcdaf]{grid-template-columns:1fr}}.participants-page[data-v-4cf22445]{width:100%}.page-heading[data-v-4cf22445]{margin-bottom:26px}.page-heading h2[data-v-4cf22445]{color:var(--color-text);margin:0;font-size:24px}.page-heading p[data-v-4cf22445]{color:var(--color-text-muted);margin:6px 0 0}.participant-count[data-v-4cf22445]{color:var(--color-text);margin:0 0 14px;font-size:15px}.table-container[data-v-4cf22445]{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);width:100%;overflow-x:auto}.participants-table[data-v-4cf22445]{border-collapse:collapse;background:var(--color-surface);width:100%;min-width:720px}.participants-table th[data-v-4cf22445],.participants-table td[data-v-4cf22445]{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;padding:14px 18px}.participants-table th[data-v-4cf22445]{background:var(--color-surface);color:var(--color-primary);font-size:14px;font-weight:600}.participants-table tbody tr[data-v-4cf22445]:nth-child(odd){background:var(--color-surface-subtle)}.participants-table tbody tr[data-v-4cf22445]:nth-child(2n){background:var(--color-surface)}.participants-table tbody tr[data-v-4cf22445]:hover{background:var(--color-primary-soft)}.participants-table tbody tr:last-child td[data-v-4cf22445]{border-bottom:0}.name-column[data-v-4cf22445]{width:45%}.role-column[data-v-4cf22445]{width:180px}.participant-name[data-v-4cf22445]{align-items:center;gap:12px;display:flex}.participant-name strong[data-v-4cf22445]{color:var(--color-primary);font-size:15px;font-weight:600}.avatar[data-v-4cf22445]{background:var(--color-surface-muted);width:38px;height:38px;color:var(--color-text-secondary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex}.email[data-v-4cf22445]{color:var(--color-text-secondary)}.message[data-v-4cf22445]{border:1px solid var(--color-border);background:var(--color-surface);text-align:center;border-radius:8px;padding:28px}.message.error[data-v-4cf22445]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}@media (width<=700px){.participants-table th[data-v-4cf22445],.participants-table td[data-v-4cf22445]{padding:12px 14px}.page-heading h2[data-v-4cf22445]{font-size:22px}}.context-page[data-v-18b86927]{width:100%}.page-heading[data-v-18b86927]{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.page-heading h2[data-v-18b86927]{color:var(--color-text);margin:0;font-size:24px}.page-heading p[data-v-18b86927]{max-width:760px;color:var(--color-text-muted);margin:7px 0 0;line-height:1.55}.refresh-button[data-v-18b86927],.secondary-button[data-v-18b86927],.open-button[data-v-18b86927],.rename-button[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.refresh-button[data-v-18b86927]{border-radius:6px;flex:none;padding:9px 14px}.refresh-button[data-v-18b86927]:hover:not(:disabled),.open-button[data-v-18b86927]:hover,.rename-button[data-v-18b86927]:hover{border-color:var(--color-primary);color:var(--color-primary)}.message[data-v-18b86927]{border-radius:7px;margin-bottom:18px;padding:12px 14px;font-size:14px;line-height:1.5}.message-heading[data-v-18b86927]{margin-bottom:2px;display:block}.duplicate-file-list[data-v-18b86927]{gap:6px;margin:10px 0 0;padding-left:22px;display:grid}.duplicate-file-list li[data-v-18b86927]{overflow-wrap:anywhere;padding-left:2px}.duplicate-file-list li strong[data-v-18b86927]{margin-right:4px}.error-message[data-v-18b86927]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.success-message[data-v-18b86927]{border:1px solid var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.upload-card[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:24px}.upload-heading[data-v-18b86927]{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.upload-heading h3[data-v-18b86927]{margin:0;font-size:19px}.upload-heading p[data-v-18b86927]{color:var(--color-text-muted);margin:6px 0 0;font-size:14px}.file-limit[data-v-18b86927]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:14px;padding:5px 9px;font-size:12px;font-weight:600}.file-input[data-v-18b86927]{display:none}.drop-zone[data-v-18b86927]{border:2px dashed var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:pointer;border-radius:8px;justify-items:center;gap:5px;margin-top:22px;padding:34px 20px;transition:border-color .15s,background-color .15s;display:grid}.drop-zone strong[data-v-18b86927]{color:var(--color-primary)}.drop-zone small[data-v-18b86927]{margin-top:4px}.drop-zone[data-v-18b86927]:hover,.drop-zone.dragging[data-v-18b86927]{border-color:var(--color-primary);background:var(--color-primary-subtle)}.drop-zone.disabled[data-v-18b86927]{cursor:wait;opacity:.6}.selected-area[data-v-18b86927]{margin-top:20px}.selected-area>header[data-v-18b86927]{justify-content:space-between;gap:20px;margin-bottom:9px;font-size:14px;display:flex}.selected-area>header span[data-v-18b86927]{color:var(--color-text-muted)}.selected-files[data-v-18b86927]{gap:7px;margin:0;padding:0;list-style:none;display:grid}.selected-files li[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface-subtle);border-radius:6px;justify-content:space-between;align-items:center;gap:18px;padding:10px 12px;display:flex}.selected-files li>div[data-v-18b86927]{gap:2px;display:grid}.selected-files span[data-v-18b86927]{color:var(--color-text-muted);font-size:12px}.selected-files button[data-v-18b86927]{color:var(--color-danger);background:0 0;border:0}.upload-actions[data-v-18b86927]{border-top:1px solid var(--color-border);justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;display:flex}.primary-button[data-v-18b86927],.secondary-button[data-v-18b86927]{border-radius:6px;min-height:40px;padding:9px 16px;font-weight:600}.primary-button[data-v-18b86927]{border:1px solid var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}.primary-button[data-v-18b86927]:hover:not(:disabled){background:var(--color-action-hover)}.primary-button[data-v-18b86927]:disabled,.secondary-button[data-v-18b86927]:disabled,.refresh-button[data-v-18b86927]:disabled{cursor:wait;opacity:.55}.materials-section[data-v-18b86927]{margin-top:28px}.materials-heading[data-v-18b86927]{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:14px;display:flex}.materials-heading h3[data-v-18b86927]{margin:0;font-size:20px}.materials-heading p[data-v-18b86927]{color:var(--color-text-muted);margin:4px 0 0;font-size:14px}.processing-notice[data-v-18b86927]{color:var(--color-primary);font-size:13px;font-weight:600}.empty-state[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);text-align:center;border-radius:8px;padding:42px 24px}.empty-state strong[data-v-18b86927]{color:var(--color-text);display:block}.empty-state p[data-v-18b86927]{margin:6px 0 0}.materials-table-container[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;overflow-x:auto}.materials-table[data-v-18b86927]{border-collapse:collapse;width:100%;min-width:1120px}.materials-table th[data-v-18b86927]:first-child,.materials-table td[data-v-18b86927]:first-child{width:44%}.materials-table th[data-v-18b86927],.materials-table td[data-v-18b86927]{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;padding:14px 16px}.materials-table th[data-v-18b86927]{background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:13px}.materials-table tbody tr:last-child td[data-v-18b86927]{border-bottom:0}.material-row[data-v-18b86927]{cursor:grab}.material-row[data-v-18b86927]:active{cursor:grabbing}.material-row[data-v-18b86927]:hover{background:var(--color-primary-subtle)}.material-row.dragging-row[data-v-18b86927]{opacity:.45}.material-row.drag-target-row[data-v-18b86927]{background:var(--color-primary-subtle);box-shadow:inset 0 2px 0 var(--color-primary)}.material-row[data-v-18b86927]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.file-information[data-v-18b86927]{align-items:center;gap:11px;display:flex}.drag-handle[data-v-18b86927]{color:var(--color-text-muted);letter-spacing:-4px;pointer-events:none;-webkit-user-select:none;user-select:none;flex:none;padding:8px 4px;font-size:16px}.context-index[data-v-18b86927]{background:var(--color-primary-soft);width:30px;height:30px;color:var(--color-primary);font-variant-numeric:tabular-nums;border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.context-metadata[data-v-18b86927]{gap:3px;min-width:0;display:grid}.context-metadata span[data-v-18b86927]{color:var(--color-text-muted);font-size:12px}.context-metadata strong[data-v-18b86927],.context-description[data-v-18b86927]{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.context-metadata strong[data-v-18b86927]{-webkit-line-clamp:2}.context-description[data-v-18b86927]{-webkit-line-clamp:2;line-height:1.4}.original-filename[data-v-18b86927]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-container[data-v-18b86927]{gap:5px;display:grid}.status[data-v-18b86927]{border-radius:14px;justify-self:start;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.status-uploaded[data-v-18b86927],.status-unknown[data-v-18b86927]{background:var(--color-surface-muted);color:var(--color-text-secondary)}.status-processing[data-v-18b86927]{background:var(--color-primary-soft);color:var(--color-primary)}.status-ready[data-v-18b86927]{background:var(--color-success-soft);color:var(--color-success)}.status-failed[data-v-18b86927]{background:var(--color-danger-soft);color:var(--color-danger)}.status-description[data-v-18b86927],.processing-error[data-v-18b86927]{max-width:260px;font-size:12px;line-height:1.4}.status-description[data-v-18b86927]{color:var(--color-text-muted)}.processing-error[data-v-18b86927]{color:var(--color-danger)}.spinner[data-v-18b86927]{border:2px solid var(--color-primary-overlay);border-top-color:var(--color-primary);border-radius:50%;width:11px;height:11px;animation:.8s linear infinite rotate-spinner-18b86927}.row-actions[data-v-18b86927]{gap:8px;display:flex}.open-button[data-v-18b86927],.rename-button[data-v-18b86927],.delete-button[data-v-18b86927]{border-radius:5px;padding:7px 10px;font-size:12px}.delete-button[data-v-18b86927]{border:1px solid var(--color-danger-border);background:var(--color-surface);color:var(--color-danger)}.delete-button[data-v-18b86927]:hover:not(:disabled){background:var(--color-danger-soft)}.delete-button[data-v-18b86927]:disabled{cursor:wait;opacity:.5}.rename-dialog[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);width:min(620px,100% - 32px);max-height:calc(100vh - 40px);color:var(--color-text);box-shadow:0 24px 64px var(--color-shadow-strong);border-radius:12px;padding:0;overflow:auto}.rename-dialog[data-v-18b86927]::backdrop{background:var(--color-backdrop)}.rename-form[data-v-18b86927]{gap:18px;padding:24px;display:grid}.rename-form h3[data-v-18b86927]{margin:0;font-size:21px}.rename-form header>p[data-v-18b86927]:not(.dialog-eyebrow){color:var(--color-text-muted);margin:7px 0 0;font-size:13px;line-height:1.5}.dialog-eyebrow[data-v-18b86927]{color:var(--color-primary);margin:0 0 4px;font-size:12px;font-weight:700}.ai-placeholder[data-v-18b86927]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:8px;grid-template-columns:1fr auto;gap:7px 16px;padding:14px;display:grid}.ai-placeholder>div[data-v-18b86927]{gap:3px;display:grid}.ai-placeholder strong[data-v-18b86927]{color:var(--color-primary);font-size:13px}.ai-placeholder span[data-v-18b86927],.ai-placeholder small[data-v-18b86927]{color:var(--color-text-muted);font-size:12px;line-height:1.4}.ai-placeholder button[data-v-18b86927]{border:1px solid var(--color-primary-border);background:var(--color-surface);color:var(--color-primary);border-radius:6px;align-self:center;padding:8px 11px;font-weight:600}.ai-placeholder button[data-v-18b86927]:disabled{cursor:not-allowed;opacity:.55}.ai-placeholder small[data-v-18b86927]{grid-column:1/-1}.rename-form label[data-v-18b86927]{gap:7px;font-size:13px;font-weight:700;display:grid}.rename-form input[data-v-18b86927],.rename-form textarea[data-v-18b86927]{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:6px;padding:9px 11px}.rename-form input[data-v-18b86927]{min-height:42px}.rename-form textarea[data-v-18b86927]{resize:vertical;min-height:96px;line-height:1.45}.rename-form input[data-v-18b86927]:focus,.rename-form textarea[data-v-18b86927]:focus{border-color:var(--color-primary);outline:2px solid var(--color-primary-overlay);outline-offset:1px}.character-count[data-v-18b86927]{color:var(--color-text-muted);justify-self:end;font-size:11px;font-weight:400}.dialog-message[data-v-18b86927]{margin:0}.original-file-note[data-v-18b86927]{background:var(--color-surface-subtle);border-radius:7px;gap:3px;padding:11px 12px;display:grid}.original-file-note span[data-v-18b86927]{color:var(--color-text-muted);font-size:11px}.original-file-note strong[data-v-18b86927]{overflow-wrap:anywhere;font-size:13px}.dialog-actions[data-v-18b86927]{justify-content:flex-end;gap:10px;display:flex}@keyframes rotate-spinner-18b86927{to{transform:rotate(360deg)}}@media (width<=700px){.page-heading[data-v-18b86927],.upload-heading[data-v-18b86927],.materials-heading[data-v-18b86927]{display:grid}.refresh-button[data-v-18b86927]{justify-self:start}.upload-actions[data-v-18b86927]{flex-direction:column-reverse}.primary-button[data-v-18b86927],.secondary-button[data-v-18b86927]{width:100%}.dialog-actions[data-v-18b86927]{flex-direction:column-reverse}.ai-placeholder[data-v-18b86927]{grid-template-columns:1fr}.ai-placeholder button[data-v-18b86927]{justify-self:stretch}}.original-file-row[data-v-18b86927]{align-items:center;gap:10px;min-width:0;display:flex}.original-file-row strong[data-v-18b86927]{overflow-wrap:anywhere;min-width:0}.original-download-button[data-v-18b86927]{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:7px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.original-download-button[data-v-18b86927]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.original-download-button[data-v-18b86927]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.original-download-button[data-v-18b86927]:disabled{opacity:.5;cursor:wait}.original-download-error[data-v-18b86927]{color:var(--color-danger);margin:0;font-size:13px}.detail-page[data-v-4dbf8eb6]{width:100%}.detail-heading[data-v-4dbf8eb6]{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.back-button[data-v-4dbf8eb6]{color:var(--color-primary);background:0 0;border:0;margin-bottom:12px;padding:0;font-size:14px}.back-button[data-v-4dbf8eb6]:hover{text-decoration:underline}.detail-heading h2[data-v-4dbf8eb6]{margin:0;font-size:24px}.detail-heading p[data-v-4dbf8eb6]{max-width:720px;color:var(--color-text-muted);margin:7px 0 0;line-height:1.5}.detail-heading .original-filename[data-v-4dbf8eb6]{overflow-wrap:anywhere;margin-top:5px;font-size:13px}.detail-heading .context-description[data-v-4dbf8eb6]{max-width:760px;color:var(--color-text);margin-top:8px;font-size:14px}.heading-actions[data-v-4dbf8eb6]{align-items:center;gap:10px;display:flex}.edit-button[data-v-4dbf8eb6],.secondary-button[data-v-4dbf8eb6]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.edit-button[data-v-4dbf8eb6]{border-radius:6px;padding:8px 12px}.rename-dialog[data-v-4dbf8eb6]{background:var(--color-surface);width:min(620px,100% - 32px);box-shadow:0 20px 50px var(--color-shadow-strong);border:0;border-radius:10px;padding:0}.rename-dialog[data-v-4dbf8eb6]::backdrop{background:var(--color-backdrop)}.processing-confirm-dialog[data-v-4dbf8eb6]{width:min(520px,100% - 32px);color:var(--color-text);border-radius:18px}.processing-confirm-dialog[data-v-4dbf8eb6]::backdrop{background:var(--color-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rename-form[data-v-4dbf8eb6]{gap:22px;padding:26px;display:grid}.rename-form h3[data-v-4dbf8eb6]{margin:3px 0 0;font-size:21px}.rename-form header>p[data-v-4dbf8eb6]:not(.dialog-eyebrow){color:var(--color-text-muted);margin:8px 0 0;line-height:1.5}.dialog-eyebrow[data-v-4dbf8eb6]{color:var(--color-primary);margin:0;font-size:12px;font-weight:700}.dialog-message[data-v-4dbf8eb6]{margin:0}.ai-placeholder[data-v-4dbf8eb6]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:8px;grid-template-columns:1fr auto;gap:7px 16px;padding:14px;display:grid}.ai-placeholder>div[data-v-4dbf8eb6]{gap:3px;display:grid}.ai-placeholder strong[data-v-4dbf8eb6]{color:var(--color-primary);font-size:13px}.ai-placeholder span[data-v-4dbf8eb6],.ai-placeholder small[data-v-4dbf8eb6]{color:var(--color-text-muted);font-size:12px;line-height:1.4}.ai-placeholder button[data-v-4dbf8eb6]{border:1px solid var(--color-primary-border);background:var(--color-surface);color:var(--color-primary);border-radius:6px;align-self:center;padding:8px 11px;font-weight:600}.ai-placeholder button[data-v-4dbf8eb6]:disabled{cursor:not-allowed;opacity:.55}.ai-placeholder small[data-v-4dbf8eb6]{grid-column:1/-1}.rename-form label[data-v-4dbf8eb6]{gap:8px;font-size:14px;font-weight:600;display:grid}.rename-form input[data-v-4dbf8eb6],.rename-form textarea[data-v-4dbf8eb6]{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-width:0;color:var(--color-text);font:inherit;border-radius:7px;padding:11px 12px}.rename-form textarea[data-v-4dbf8eb6]{resize:none;min-height:96px;line-height:1.45}.rename-form input[data-v-4dbf8eb6]:focus,.rename-form textarea[data-v-4dbf8eb6]:focus{outline:2px solid color-mix(in srgb, var(--color-primary) 25%, transparent);border-color:var(--color-primary)}.character-count[data-v-4dbf8eb6]{color:var(--color-text-muted);justify-self:end;font-size:11px;font-weight:400}.original-file-note[data-v-4dbf8eb6]{background:var(--color-background);color:var(--color-text-muted);overflow-wrap:anywhere;border-radius:7px;gap:4px;margin:0;padding:11px 12px;font-size:13px;display:grid}.original-file-note span[data-v-4dbf8eb6]{color:var(--color-text);font-weight:600}.dialog-actions[data-v-4dbf8eb6]{justify-content:flex-end;gap:10px;display:flex}.message[data-v-4dbf8eb6]{border-radius:7px;margin-bottom:18px;padding:12px 14px;font-size:14px}.message p[data-v-4dbf8eb6]{margin:5px 0 0}.error-message[data-v-4dbf8eb6]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.success-message[data-v-4dbf8eb6]{border:1px solid var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.loading-state[data-v-4dbf8eb6]{border:1px solid var(--color-border);text-align:center;border-radius:8px;padding:40px}.editor-grid[data-v-4dbf8eb6]{grid-template-rows:auto clamp(380px,65vh,760px) auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.editor-card[data-v-4dbf8eb6]{grid-row:span 3;grid-template-rows:subgrid;border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;min-width:0;display:grid;overflow:hidden}.editor-heading[data-v-4dbf8eb6]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.editor-heading h3[data-v-4dbf8eb6]{margin:0;font-size:18px}.editor-heading p[data-v-4dbf8eb6]{color:var(--color-text-muted);margin:5px 0 0;font-size:13px}.editor-heading-actions[data-v-4dbf8eb6]{flex:none;align-items:center;gap:14px;display:flex}.editor-footer-info[data-v-4dbf8eb6]{align-items:center;gap:10px;display:flex}.download-text-button[data-v-4dbf8eb6]{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.download-text-button[data-v-4dbf8eb6]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-subtle)}.download-text-button[data-v-4dbf8eb6]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.download-text-button[data-v-4dbf8eb6]:disabled{opacity:.4;cursor:not-allowed}.preview-toggle[data-v-4dbf8eb6]{color:var(--color-text-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:600;display:inline-flex}.preview-toggle input[data-v-4dbf8eb6]{width:15px;height:15px;accent-color:var(--color-primary);cursor:pointer;margin:0}.change-status[data-v-4dbf8eb6]{color:var(--color-text-muted);flex:none;font-size:12px}.change-status.changed[data-v-4dbf8eb6]{color:var(--color-warning);font-weight:600}.editor-card[data-v-4dbf8eb6] .markdown-preview{contain:layout;min-width:0;height:100%;min-height:0;max-height:none}.text-editor[data-v-4dbf8eb6]{resize:none;background:var(--color-surface);width:100%;height:100%;min-height:0;color:var(--color-text);border:0;outline:none;padding:17px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.55;display:block}.text-editor[data-v-4dbf8eb6]:focus{box-shadow:inset 0 0 0 2px var(--color-primary-shadow)}.text-editor[data-v-4dbf8eb6]:disabled{background:var(--color-surface-subtle);cursor:wait}.editor-footer[data-v-4dbf8eb6]{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:13px 17px;display:flex}.editor-footer span[data-v-4dbf8eb6]{color:var(--color-text-muted);font-size:12px}.secondary-button[data-v-4dbf8eb6],.primary-button[data-v-4dbf8eb6]{border-radius:6px;padding:8px 13px;font-weight:600}.secondary-button[data-v-4dbf8eb6]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.primary-button[data-v-4dbf8eb6]{border:1px solid var(--color-primary);background:var(--color-action);color:var(--color-on-accent);flex:none}.primary-button[data-v-4dbf8eb6]:hover:not(:disabled){background:var(--color-action-hover)}.primary-button[data-v-4dbf8eb6]:disabled,.secondary-button[data-v-4dbf8eb6]:disabled{cursor:wait;opacity:.55}.processing-actions[data-v-4dbf8eb6]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;justify-content:space-between;align-items:center;gap:28px;margin-top:20px;padding:20px;display:flex}.processing-actions p[data-v-4dbf8eb6]{max-width:720px;color:var(--color-text-muted);margin:5px 0 0;font-size:14px}.status[data-v-4dbf8eb6]{border-radius:15px;align-items:center;gap:6px;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}.status-uploaded[data-v-4dbf8eb6]{background:var(--color-surface-muted);color:var(--color-text-secondary)}.status-processing[data-v-4dbf8eb6]{background:var(--color-primary-soft);color:var(--color-primary)}.status-ready[data-v-4dbf8eb6]{background:var(--color-success-soft);color:var(--color-success)}.status-failed[data-v-4dbf8eb6]{background:var(--color-danger-soft);color:var(--color-danger)}.spinner[data-v-4dbf8eb6]{border:2px solid var(--color-primary-overlay);border-top-color:var(--color-primary);border-radius:50%;width:11px;height:11px;animation:.8s linear infinite rotate-spinner-4dbf8eb6}@keyframes rotate-spinner-4dbf8eb6{to{transform:rotate(360deg)}}@media (width<=1050px){.editor-grid[data-v-4dbf8eb6]{grid-template-rows:none;grid-template-columns:1fr;gap:18px}.editor-card[data-v-4dbf8eb6]{grid-row:auto;grid-template-rows:auto clamp(380px,65vh,760px) auto}}@media (width<=700px){.detail-heading[data-v-4dbf8eb6],.processing-actions[data-v-4dbf8eb6]{display:grid}.heading-actions[data-v-4dbf8eb6]{justify-content:flex-start}.primary-button[data-v-4dbf8eb6]{width:100%}.editor-card[data-v-4dbf8eb6] .markdown-preview{contain:layout;min-width:0;height:100%;min-height:0;max-height:none}.text-editor[data-v-4dbf8eb6]{height:100%;min-height:380px}.editor-heading[data-v-4dbf8eb6]{display:grid}.editor-heading-actions[data-v-4dbf8eb6]{justify-content:space-between}.dialog-actions[data-v-4dbf8eb6]{display:grid}.ai-placeholder[data-v-4dbf8eb6]{grid-template-columns:1fr}.ai-placeholder button[data-v-4dbf8eb6]{justify-self:stretch}}.original-file-row[data-v-4dbf8eb6]{align-items:center;gap:10px;min-width:0;display:flex}.original-file-row strong[data-v-4dbf8eb6]{overflow-wrap:anywhere;min-width:0}.original-download-button[data-v-4dbf8eb6]{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;border-radius:7px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.original-download-button[data-v-4dbf8eb6]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.original-download-button[data-v-4dbf8eb6]:focus-visible{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.original-download-button[data-v-4dbf8eb6]:disabled{opacity:.5;cursor:wait}.original-download-error[data-v-4dbf8eb6]{color:var(--color-danger);margin:0;font-size:13px}.exercise-mode[data-v-f53d6d84]{border:1px solid var(--color-border-subtle);border-radius:12px;margin:18px 0;padding:18px}.exercise-mode legend[data-v-f53d6d84]{padding:0 6px;font-weight:700}.exercise-mode label[data-v-f53d6d84]{cursor:pointer;align-items:flex-start;gap:12px;margin:14px 0;display:flex}.exercise-mode input[data-v-f53d6d84]{width:auto;accent-color:var(--color-primary);margin:4px 0}.exercise-mode strong[data-v-f53d6d84],.exercise-mode small[data-v-f53d6d84]{display:block}.exercise-mode small[data-v-f53d6d84],.exercise-mode p[data-v-f53d6d84]{color:var(--color-text-muted);font-size:13px;font-weight:400;line-height:1.5}.exercise-mode p[data-v-f53d6d84]{margin:12px 0 0}html{scrollbar-gutter:stable;overflow-y:scroll}.learning-structure[data-v-37e41944]{gap:24px;display:grid}.page-heading[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-heading h2[data-v-37e41944]{margin:0;font-size:24px}.page-heading p[data-v-37e41944]:not(.eyebrow){max-width:760px;color:var(--color-text-muted);margin:8px 0 0;line-height:1.55}.eyebrow[data-v-37e41944]{color:var(--color-primary);margin:0 0 4px;font-size:13px;font-weight:700}.card[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:24px}.structure-workspace[data-v-37e41944]{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.content-panel[data-v-37e41944]{gap:20px;min-width:0;display:grid}.panel-heading[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel-heading h3[data-v-37e41944]{margin:0;font-size:20px}.panel-heading p[data-v-37e41944]:not(.eyebrow){color:var(--color-text-muted);margin:6px 0 0;font-size:14px;line-height:1.5}.skill-group-panel-heading[data-v-37e41944]{grid-template-columns:minmax(0,1fr);gap:14px;width:100%;min-width:0;display:grid}.skill-group-panel-heading[data-v-37e41944]>*{min-width:0}.skill-group-heading-row[data-v-37e41944]{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;width:100%;min-width:0;display:grid}.skill-group-heading-title[data-v-37e41944]{min-width:0}.skill-group-heading-title h3[data-v-37e41944]{overflow-wrap:anywhere;max-width:none}.skill-group-heading-row .entity-actions[data-v-37e41944]{flex-wrap:wrap;justify-content:flex-start;align-items:stretch;width:100%;max-width:100%;min-height:40px;display:flex}.skill-group-heading-row .entity-actions button[data-v-37e41944]{white-space:nowrap;flex:none}.skill-group-description-panel[data-v-37e41944]{box-sizing:border-box;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);justify-self:stretch;width:auto;min-width:0}.skill-group-description-panel summary[data-v-37e41944]{box-sizing:border-box;width:100%;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:11px 2px;font-size:13px;font-weight:700;list-style:none;display:flex}.skill-group-description-panel summary[data-v-37e41944]::-webkit-details-marker{display:none}.description-chevron[data-v-37e41944]{color:var(--color-text-muted);font-size:14px;transition:transform .16s;display:inline-block}.skill-group-description-panel[open] .description-chevron[data-v-37e41944]{transform:rotate(180deg)}.skill-group-description-content[data-v-37e41944]{width:100%;padding:0 2px 13px}.skill-group-description-content p[data-v-37e41944]{white-space:pre-wrap;max-width:none}.icon-button[data-v-37e41944]{border:1px solid var(--color-primary);background:var(--color-action);width:36px;height:36px;color:var(--color-on-accent);border-radius:7px;place-items:center;padding:0;font-size:23px;line-height:1;display:inline-grid}.icon-button[data-v-37e41944]:hover{filter:brightness(.94)}.group-list[data-v-37e41944]{gap:8px;margin-top:20px;display:grid}.group-item[data-v-37e41944]{width:100%;color:var(--color-text);text-align:left;cursor:grab;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;padding:12px;transition:border-color .15s,background .15s,box-shadow .15s,opacity .15s;display:flex}.group-item[data-v-37e41944]:hover{background:var(--color-primary-subtle)}.group-item[data-v-37e41944]:active{cursor:grabbing}.group-item[data-v-37e41944]:disabled{cursor:wait;opacity:.7}.group-item.active[data-v-37e41944]{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.group-item.dragging[data-v-37e41944]{opacity:.42}.group-item.drag-before[data-v-37e41944]{box-shadow:0 -3px 0 var(--color-primary)}.group-item.drag-after[data-v-37e41944]{box-shadow:0 3px 0 var(--color-primary)}.group-symbol[data-v-37e41944]{background:var(--color-primary-soft);width:38px;height:38px;color:var(--color-primary);font-variant-numeric:tabular-nums;border-radius:8px;flex:none;place-items:center;font-weight:700;display:inline-grid}.group-copy[data-v-37e41944],.skill-select-button>span[data-v-37e41944]:first-child{gap:3px;min-width:0;display:grid}.group-copy strong[data-v-37e41944],.skill-item strong[data-v-37e41944]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-copy small[data-v-37e41944],.skill-item small[data-v-37e41944]{color:var(--color-text-muted);font-size:12px}.inline-form[data-v-37e41944],.skill-form[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:8px;gap:14px;margin-top:18px;padding:16px;display:grid}.form-grid[data-v-37e41944]{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}label[data-v-37e41944]{color:var(--color-text);gap:6px;font-size:13px;font-weight:600;display:grid}label>small[data-v-37e41944]{color:var(--color-text-muted);font-size:11px;font-weight:400;line-height:1.4}input[data-v-37e41944],textarea[data-v-37e41944],select[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:6px}input[data-v-37e41944],select[data-v-37e41944]{min-height:40px;padding:8px 10px}textarea[data-v-37e41944]{resize:vertical;min-height:78px;padding:10px}input[data-v-37e41944]:focus,textarea[data-v-37e41944]:focus,select[data-v-37e41944]:focus{border-color:var(--color-primary);outline:2px solid var(--color-primary-overlay);outline-offset:1px}input[data-v-37e41944]:disabled,textarea[data-v-37e41944]:disabled,select[data-v-37e41944]:disabled{cursor:not-allowed;opacity:.6}.form-actions[data-v-37e41944]{justify-content:flex-end;gap:10px;display:flex}.primary-button[data-v-37e41944],.secondary-button[data-v-37e41944],.danger-button[data-v-37e41944]{border-radius:6px;min-height:40px;padding:9px 15px;font-weight:600}.primary-button[data-v-37e41944]{border:1px solid var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}.primary-button[data-v-37e41944]:hover:not(:disabled){filter:brightness(.94)}.secondary-button[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.secondary-button[data-v-37e41944]:hover:not(:disabled){border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.primary-button[data-v-37e41944]:disabled,.secondary-button[data-v-37e41944]:disabled,.danger-button[data-v-37e41944]:disabled{cursor:wait;opacity:.6}.danger-button[data-v-37e41944]{border:1px solid var(--color-danger-border);background:var(--color-surface);color:var(--color-danger)}.danger-button[data-v-37e41944]:hover:not(:disabled){background:var(--color-danger-soft)}.entity-actions[data-v-37e41944]{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.skill-list[data-v-37e41944]{gap:9px;margin-top:20px;display:grid}.skill-item[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;transition:border-color .15s,background .15s,box-shadow .15s,opacity .15s;display:flex;position:relative}.skill-item[data-v-37e41944]:hover{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.skill-item.active[data-v-37e41944]{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.skill-item.dragging[data-v-37e41944]{opacity:.42}.skill-item.drag-before[data-v-37e41944]{box-shadow:0 -3px 0 var(--color-primary)}.skill-item.drag-after[data-v-37e41944]{box-shadow:0 3px 0 var(--color-primary)}.skill-item[draggable=true][data-v-37e41944]{cursor:grab}.skill-item[draggable=true][data-v-37e41944]:active,.skill-item.dragging[data-v-37e41944]{cursor:grabbing}.skill-index[data-v-37e41944]{background:var(--color-primary-soft);width:38px;height:38px;color:var(--color-primary);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;border-radius:8px;flex:none;place-items:center;margin-left:12px;font-weight:700;display:inline-grid}.skill-select-button[data-v-37e41944]{min-width:0;color:var(--color-text);text-align:left;background:0 0;border:0;flex:auto;justify-content:space-between;align-items:center;gap:16px;padding:14px 15px;display:flex}.skill-actions[data-v-37e41944]{flex:none;gap:3px;padding-right:8px;display:flex}.skill-actions button[data-v-37e41944]{min-height:34px;color:var(--color-text-muted);background:0 0;border:0;border-radius:5px;padding:6px 8px;font-size:12px;font-weight:600}.skill-actions button[data-v-37e41944]:hover{background:var(--color-primary-soft);color:var(--color-primary)}.skill-actions .danger-text-button[data-v-37e41944]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.meta-count[data-v-37e41944],.count-label[data-v-37e41944]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:20px;flex:none;padding:5px 9px;font-size:12px;font-weight:700}.meta-counts[data-v-37e41944]{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:6px;display:flex}.proposal-count[data-v-37e41944]{background:var(--color-primary-subtle);color:var(--color-primary)}.details-card[data-v-37e41944]{gap:18px;display:grid}.detail-tabs[data-v-37e41944]{border-bottom:1px solid var(--color-border);gap:24px;display:flex}.detail-tab[data-v-37e41944]{min-height:42px;color:var(--color-text-muted);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1px;padding:0 1px;font-size:14px;font-weight:700;display:inline-flex}.detail-tab[data-v-37e41944]:hover,.detail-tab.active[data-v-37e41944]{color:var(--color-primary)}.detail-tab.active[data-v-37e41944]{border-bottom-color:var(--color-primary)}.detail-tab span[data-v-37e41944],.objective-section-heading>span[data-v-37e41944]{background:var(--color-primary-soft);min-width:23px;min-height:23px;color:var(--color-primary);border-radius:20px;place-items:center;padding:2px 7px;font-size:11px;font-weight:800;display:inline-grid}.detail-toolbar[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.detail-toolbar>p[data-v-37e41944]{max-width:650px;color:var(--color-text-muted);margin:0;font-size:14px;line-height:1.5}.detail-actions[data-v-37e41944]{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:8px;display:flex}.exercise-settings-section[data-v-37e41944],.exercise-settings-form[data-v-37e41944]{gap:18px;display:grid}.exercise-settings-loading[data-v-37e41944]{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:8px;padding:18px;font-size:13px}.exercise-settings-loading.compact[data-v-37e41944]{padding:12px}.exercise-module-list[data-v-37e41944]{gap:9px;display:grid}.exercise-module-row[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;grid-template-columns:minmax(0,1fr) 104px;align-items:center;gap:18px;padding:14px;display:grid}.exercise-module-row.disabled[data-v-37e41944]{background:var(--color-surface-subtle)}.exercise-module-selection[data-v-37e41944]{cursor:pointer;align-items:flex-start;gap:11px;min-width:0;display:flex}.exercise-module-selection input[data-v-37e41944],.settings-mode-option input[data-v-37e41944]{flex:none;width:17px;min-height:17px;margin:2px 0 0;padding:0}.exercise-module-selection>span[data-v-37e41944]{gap:3px;min-width:0;display:grid}.exercise-module-selection strong[data-v-37e41944]{font-size:13px}.exercise-module-selection small[data-v-37e41944]{color:var(--color-text-muted);font-size:11px;font-weight:400;line-height:1.4}.module-weight-field[data-v-37e41944]{grid-template-columns:72px auto;justify-content:end;align-items:center;gap:7px;display:grid}.module-weight-field input[data-v-37e41944]{text-align:right;font-variant-numeric:tabular-nums}.module-weight-field>span[data-v-37e41944]:last-child{color:var(--color-text-muted);font-weight:700}.exercise-settings-footer[data-v-37e41944]{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding-top:14px;display:flex}.weight-total[data-v-37e41944]{font-variant-numeric:tabular-nums;font-size:13px;font-weight:750}.weight-total.valid[data-v-37e41944]{color:var(--color-success)}.weight-total.invalid[data-v-37e41944]{color:var(--color-danger)}.objective-exercise-settings[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:8px;gap:10px;min-width:0;margin:0;padding:15px;display:grid}.objective-exercise-settings legend[data-v-37e41944]{color:var(--color-text);padding:0 5px;font-size:13px;font-weight:750}.objective-exercise-settings>p[data-v-37e41944]{color:var(--color-text-muted);margin:0 0 2px;font-size:12px;line-height:1.45}.settings-mode-option[data-v-37e41944]{cursor:pointer;align-items:flex-start;gap:9px;display:flex}.settings-mode-option span[data-v-37e41944]{line-height:1.45}.objective-module-list[data-v-37e41944]{margin-top:5px}.objective-module-list .exercise-module-row[data-v-37e41944]{padding:11px 12px}.objective-weight-total[data-v-37e41944]{justify-content:flex-end;padding-top:4px;display:flex}.sr-only[data-v-37e41944]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.ai-button[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);min-height:40px;color:var(--color-primary);border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:9px 14px;font-weight:700;display:inline-flex}.ai-button[data-v-37e41944]:hover{border-color:var(--color-primary);background:var(--color-primary-subtle)}.ai-button span[data-v-37e41944]{font-size:17px;line-height:1}.group-suggestion-trigger[data-v-37e41944]{width:100%;margin-top:16px}.info-message[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);color:var(--color-primary)}.objective-section[data-v-37e41944]{gap:10px;margin-top:18px;display:grid}.facet-preparation-status[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);color:var(--color-text-muted);border-radius:12px;gap:8px;margin:16px 0 20px;padding:14px 16px;display:grid}.facet-preparation-status__heading[data-v-37e41944]{color:var(--color-primary);justify-content:space-between;align-items:center;gap:12px;display:flex}.facet-preparation-status__bar[data-v-37e41944]{background:var(--color-primary-soft);border-radius:999px;height:7px;overflow:hidden}.facet-preparation-status__bar span[data-v-37e41944]{border-radius:inherit;background:var(--color-action);height:100%;transition:width .25s;display:block}.facet-preparation-status p[data-v-37e41944]{margin:0;font-size:13px}.objective-section-heading[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.objective-section-heading h4[data-v-37e41944]{margin:0;font-size:15px}.objective-section-heading p[data-v-37e41944]{color:var(--color-text-muted);margin:4px 0 0;font-size:12px;line-height:1.45}.objective-list[data-v-37e41944]{gap:9px;display:grid}.objective-item--editable[data-v-37e41944]{cursor:pointer}.objective-item--editable.dragging[data-v-37e41944]{opacity:.42;cursor:grabbing}.objective-item--editable.drag-before[data-v-37e41944]{box-shadow:0 -3px 0 var(--color-primary)}.objective-item--editable.drag-after[data-v-37e41944]{box-shadow:0 3px 0 var(--color-primary)}.objective-item--editable[data-v-37e41944]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.objective-actions .objective-remove-button[data-v-37e41944]{justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.objective-actions .objective-remove-button[data-v-37e41944]:hover{background:var(--color-danger-subtle,#dc262614)}.objective-item[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;align-items:flex-start;gap:12px;padding:14px;display:flex}.objective-item[data-v-37e41944]:hover{border-color:var(--color-primary-border)}.objective-icon[data-v-37e41944]{background:var(--color-action);width:24px;height:24px;color:var(--color-on-accent);border-radius:50%;flex:none;place-items:center;margin-top:1px;font-size:13px;font-weight:800;display:inline-grid}.objective-copy[data-v-37e41944]{flex:auto;gap:6px;min-width:0;display:grid}.objective-title-row[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.objective-title-row h5[data-v-37e41944]{margin:1px 0 0;font-size:14px}.objective-kind[data-v-37e41944]{color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.objective-copy>p[data-v-37e41944]{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.45}.objective-copy>.objective-ai-instruction[data-v-37e41944]{background:var(--color-primary-subtle);color:var(--color-primary);border-radius:6px;padding:8px 10px}.objective-ai-instruction strong[data-v-37e41944]{color:var(--color-primary)}.objective-badges[data-v-37e41944]{flex-wrap:wrap;gap:6px;display:flex}.meta-badge[data-v-37e41944]{background:var(--color-surface-muted);color:var(--color-text-secondary);border-radius:4px;padding:3px 7px;font-size:10px;font-weight:700}.meta-badge--prepared[data-v-37e41944],.meta-badge--ready[data-v-37e41944]{background:var(--color-success-soft);color:var(--color-success)}.meta-badge--pending[data-v-37e41944],.meta-badge--open[data-v-37e41944]{background:var(--color-warning-soft);color:var(--color-warning)}.meta-badge--processing[data-v-37e41944]{background:var(--color-primary-soft);color:var(--color-primary)}.meta-badge--failed[data-v-37e41944]{background:var(--color-danger-soft);color:var(--color-danger)}.facet-editor[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:8px;gap:12px;margin-top:8px;padding:14px;display:grid}.facet-editor__heading[data-v-37e41944],.facet-editor__footer[data-v-37e41944],.facet-editor__item-heading[data-v-37e41944]{justify-content:space-between;align-items:center;gap:12px;display:flex}.facet-editor__heading[data-v-37e41944]{color:var(--color-primary);font-size:13px}.facet-editor__heading button[data-v-37e41944]{color:var(--color-primary);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:700}.facet-editor__list[data-v-37e41944]{gap:10px;display:grid}.facet-editor__item[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-surface);border-radius:7px;gap:8px;padding:11px;display:grid}.facet-editor__item label[data-v-37e41944]{color:var(--color-text-muted);gap:4px;font-size:11px;font-weight:700;display:grid}.facet-editor__item-heading label[data-v-37e41944]{align-items:center;gap:5px;font-weight:600;display:flex}.facet-editor__item input[type=text][data-v-37e41944],.facet-editor__item input[type=number][data-v-37e41944],.facet-editor__item textarea[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:5px;padding:7px 8px;font-size:12px}.facet-editor__footer[data-v-37e41944]{color:var(--color-text-muted);font-size:11px}.objective-actions[data-v-37e41944],.proposal-actions[data-v-37e41944]{flex:none;justify-content:flex-end;align-items:center;gap:4px;display:flex}.objective-actions button[data-v-37e41944],.proposal-edit-button[data-v-37e41944]{min-height:31px;color:var(--color-text-muted);background:0 0;border:0;border-radius:5px;padding:5px 7px;font-size:11px;font-weight:700}.objective-actions button[data-v-37e41944]:hover,.proposal-edit-button[data-v-37e41944]:hover{background:var(--color-primary-soft);color:var(--color-primary)}.objective-actions .danger-text-button[data-v-37e41944]:hover{background:var(--color-danger-soft);color:var(--color-danger)}.objective-empty[data-v-37e41944]{padding-top:20px;padding-bottom:16px}.proposal-section[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:9px;gap:10px;margin-top:18px;padding:14px;display:grid}.proposal-item[data-v-37e41944]{background:var(--color-surface)}.proposal-icon[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary)}.compact-button[data-v-37e41944]{min-height:32px;padding:6px 10px;font-size:11px}.ai-button[data-v-37e41944]:disabled{cursor:not-allowed;opacity:.58}.rejected-section[data-v-37e41944]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);border-radius:9px;margin-top:18px;padding:12px 14px}.rejected-section summary[data-v-37e41944]{cursor:pointer;color:var(--color-danger);justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:750;list-style:none;display:flex}.rejected-section summary[data-v-37e41944]::-webkit-details-marker{display:none}.rejected-section summary[data-v-37e41944]:before{content:"›";color:var(--color-danger);margin-right:2px;font-size:18px;line-height:1;transition:transform .16s;transform:rotate(0)}.rejected-section[open] summary[data-v-37e41944]:before{transform:rotate(90deg)}.rejected-section summary>span[data-v-37e41944]:first-child{flex:auto}.rejected-count[data-v-37e41944]{background:var(--color-danger-soft);min-width:24px;height:24px;color:var(--color-danger);border-radius:999px;place-items:center;padding:0 7px;font-size:11px;display:inline-grid}.rejected-explanation[data-v-37e41944]{color:var(--color-text-muted);margin:10px 0 12px 24px;font-size:12px;line-height:1.5}.rejected-item[data-v-37e41944]{background:var(--color-surface)}.rejected-icon[data-v-37e41944]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.rejected-kind[data-v-37e41944]{color:var(--color-danger)}.empty-state[data-v-37e41944]{text-align:center;padding:28px 20px}.empty-state.compact[data-v-37e41944]{margin-top:18px;padding:20px 10px 8px}.empty-state strong[data-v-37e41944]{display:block}.empty-state p[data-v-37e41944]{max-width:520px;color:var(--color-text-muted);margin:7px auto 16px;font-size:14px;line-height:1.5}.message[data-v-37e41944]{border-radius:7px;padding:13px 15px;font-size:14px}.message p[data-v-37e41944]{margin:5px 0 12px}.error-message[data-v-37e41944]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.error-message button[data-v-37e41944]{border:1px solid var(--color-danger-border);min-height:36px;color:var(--color-danger);background:0 0;border-radius:5px;padding:7px 12px;font-weight:600}.loading-card[data-v-37e41944]{color:var(--color-text-muted)}.entity-dialog[data-v-37e41944]{border:1px solid var(--color-border);background:var(--color-surface);width:min(560px,100% - 32px);max-height:calc(100vh - 40px);color:var(--color-text);box-shadow:0 24px 64px var(--color-shadow-strong);border-radius:12px;padding:0;overflow:auto}.learning-objective-dialog[data-v-37e41944]{box-sizing:border-box;width:min(860px,100% - 32px);height:min(760px,100dvh - 40px);overflow:hidden}.learning-objective-dialog .dialog-content[data-v-37e41944]{box-sizing:border-box;flex-direction:column;height:100%;display:flex;overflow:hidden}.objective-dialog-nav[data-v-37e41944]{border-bottom:1px solid var(--color-border);gap:4px;display:flex;overflow-x:auto}.objective-dialog-nav button[data-v-37e41944]{min-height:44px;color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:10px 16px;font-weight:650}.objective-dialog-nav button[data-v-37e41944]:hover{background:var(--color-primary-subtle);color:var(--color-primary)}.objective-dialog-nav button.active[data-v-37e41944]{border-bottom-color:var(--color-primary);color:var(--color-primary)}.objective-dialog-nav button[data-v-37e41944]:focus-visible{outline:2px solid var(--color-primary);outline-offset:-3px}.objective-dialog-panel[data-v-37e41944]{flex:1;align-content:start;gap:16px;min-height:0;display:grid;overflow-y:auto}.objective-dialog-panel>h4[data-v-37e41944],.objective-dialog-panel>p[data-v-37e41944]{margin:0}.objective-dialog-panel>p[data-v-37e41944]{color:var(--color-text-muted);line-height:1.5}.objective-dialog-panel .facet-editor[data-v-37e41944]{margin-top:0}.facet-editor__hint[data-v-37e41944]{color:var(--color-text-muted);margin:0;font-size:12px}.skill-suggestion-dialog[data-v-37e41944]{width:min(860px,100% - 32px)}.skill-suggestion-loading[data-v-37e41944]{min-height:160px;color:var(--color-primary);justify-content:center;align-items:center;display:flex}.skill-suggestion-loading-message[data-v-37e41944]{justify-content:center;align-items:center;gap:10px;display:flex}.skill-suggestion-loading-copy[data-v-37e41944]{gap:6px;display:grid}.skill-suggestion-loading-copy p[data-v-37e41944]{margin:0}.skill-suggestion-loading-icon[data-v-37e41944]{font-size:22px}.skill-suggestion-timer[data-v-37e41944]{color:var(--color-text-muted);align-items:baseline;gap:7px;font-size:13px;display:flex}.skill-suggestion-timer strong[data-v-37e41944]{color:var(--color-primary);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:14px}.skill-suggestion-timer span[data-v-37e41944]{color:inherit}.skill-suggestion-list[data-v-37e41944]{gap:12px;display:grid}.skill-suggestion-item[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-surface);border-radius:9px;gap:10px;padding:16px;display:grid}.skill-suggestion-item>p[data-v-37e41944],.skill-scope-box p[data-v-37e41944]{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.skill-suggestion-heading[data-v-37e41944]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.skill-suggestion-heading span[data-v-37e41944]{color:var(--color-primary);letter-spacing:.05em;text-transform:uppercase;font-size:10px;font-weight:800}.skill-suggestion-heading h4[data-v-37e41944]{margin:3px 0 0}.skill-suggestion-actions[data-v-37e41944]{gap:7px;display:flex}.skill-scope-box[data-v-37e41944]{background:var(--color-primary-subtle);border-radius:7px;padding:10px 12px}.suggested-objectives-preview[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:7px;padding:10px 12px}.suggested-objectives-preview>strong[data-v-37e41944]{color:var(--color-primary);font-size:11px}.suggested-objectives-preview>p[data-v-37e41944]{color:var(--color-text-muted);margin:3px 0 7px;font-size:11px}.suggested-objectives-preview ul[data-v-37e41944]{color:var(--color-text-muted);gap:4px;margin:0;padding-left:18px;font-size:12px;line-height:1.45;display:grid}.suggested-objectives-preview li[data-v-37e41944]{padding-left:2px}.suggested-objectives-preview li strong[data-v-37e41944],.suggested-objectives-preview li span[data-v-37e41944]{display:block}.suggested-objectives-preview li strong[data-v-37e41944]{color:var(--color-text);font-size:12px}.suggested-objectives-preview li span[data-v-37e41944]{color:var(--color-text-muted);margin-top:2px;font-size:11px}.skill-scope-box strong[data-v-37e41944]{color:var(--color-primary);margin-bottom:4px;font-size:11px;display:block}.field-hint[data-v-37e41944]{color:var(--color-text-muted);margin-top:5px;font-size:11px;line-height:1.4;display:block}.group-ai-requirement[data-v-37e41944]{font-weight:600;color:var(--color-warning)!important;font-size:12px!important}.entity-dialog[data-v-37e41944]::backdrop{background:var(--color-backdrop)}.dialog-content[data-v-37e41944]{gap:16px;padding:24px;display:grid}.dialog-content h3[data-v-37e41944]{margin:0;font-size:21px}.dialog-content header>p[data-v-37e41944]:not(.eyebrow){color:var(--color-text-muted);margin:7px 0 0;font-size:13px;line-height:1.5}.objective-validation[data-v-37e41944]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);color:var(--color-primary);border-radius:7px;align-items:flex-start;gap:9px;padding:11px 12px;display:flex}.objective-validation span[data-v-37e41944]{background:var(--color-action);width:20px;height:20px;color:var(--color-on-accent);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:800;display:inline-grid}.objective-validation p[data-v-37e41944]{margin:0;font-size:12px;line-height:1.45}.dialog-content>p[data-v-37e41944]{color:var(--color-text-muted);margin:0;line-height:1.5}.dialog-content .delete-warning[data-v-37e41944]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:7px;padding:12px 14px}.danger-copy[data-v-37e41944]{color:var(--color-danger)}@media (width<=900px){.structure-workspace[data-v-37e41944]{grid-template-columns:1fr}.group-list[data-v-37e41944]{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}@media (width<=650px){.panel-heading[data-v-37e41944],.page-heading[data-v-37e41944],.detail-toolbar[data-v-37e41944]{display:grid}.panel-heading .primary-button[data-v-37e41944],.entity-actions[data-v-37e41944]{width:100%}.entity-actions button[data-v-37e41944]{flex:auto}.skill-group-heading-row[data-v-37e41944]{display:grid}.detail-actions[data-v-37e41944]{grid-template-columns:1fr;width:100%;display:grid}.detail-actions button[data-v-37e41944],.ai-button[data-v-37e41944]{width:100%}.detail-tabs[data-v-37e41944]{gap:16px;overflow-x:auto}.detail-tab[data-v-37e41944]{flex:none}.exercise-module-row[data-v-37e41944]{grid-template-columns:1fr;gap:12px}.module-weight-field[data-v-37e41944]{justify-content:start;padding-left:28px}.exercise-settings-footer[data-v-37e41944]{flex-direction:column;align-items:stretch}.form-grid[data-v-37e41944]{grid-template-columns:1fr}.form-actions[data-v-37e41944]{flex-direction:column-reverse}.form-actions button[data-v-37e41944]{width:100%}.skill-item[data-v-37e41944],.skill-select-button[data-v-37e41944]{flex-direction:column;align-items:stretch}.skill-index[data-v-37e41944]{align-self:flex-start;margin:12px 0 0 12px}.skill-actions[data-v-37e41944]{justify-content:flex-end;padding:0 8px 8px}.meta-counts[data-v-37e41944]{justify-content:flex-start}.objective-title-row[data-v-37e41944]{display:grid}.objective-actions[data-v-37e41944],.proposal-actions[data-v-37e41944]{flex-wrap:wrap;justify-content:flex-start}}.programming-pool-content[data-v-172faa6e]{min-width:0;color:var(--color-text);gap:20px;display:grid}h2[data-v-172faa6e],h3[data-v-172faa6e],p[data-v-172faa6e]{margin:0}h2[data-v-172faa6e]{font-size:22px}h3[data-v-172faa6e]{margin-bottom:10px;font-size:14px}.field[data-v-172faa6e],.file-editor[data-v-172faa6e]{gap:8px;display:grid}.field span[data-v-172faa6e]{font-size:13px;font-weight:650}input[data-v-172faa6e],textarea[data-v-172faa6e],button[data-v-172faa6e]{box-sizing:border-box;font:inherit;border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted);border-radius:10px}input[data-v-172faa6e],textarea[data-v-172faa6e]{width:100%;padding:10px 12px}textarea[data-v-172faa6e]{resize:vertical}button[data-v-172faa6e]{cursor:pointer;padding:8px 12px}button[data-v-172faa6e]:hover,button.selected[data-v-172faa6e]{background:var(--color-primary-subtle);border-color:var(--color-primary-border)}button[data-v-172faa6e]:disabled{opacity:.5;cursor:default}.list-entry[data-v-172faa6e]{align-items:start;gap:8px;margin-bottom:10px;display:flex}.file-list[data-v-172faa6e]{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.file-editor[data-v-172faa6e]{margin-bottom:12px}.code-editor[data-v-172faa6e]{tab-size:2;white-space:pre;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.task-text[data-v-172faa6e],li[data-v-172faa6e]{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}li+li[data-v-172faa6e]{margin-top:8px}.language-label[data-v-172faa6e]{color:var(--color-text-muted);font-size:12px}code[data-v-172faa6e]{background:var(--color-surface-muted);border-radius:4px;padding:2px 4px;font:.92em ui-monospace,SFMono-Regular,Consolas,monospace}[data-v-172faa6e] .project-editor{max-height:520px}.save-status[data-v-f74cad7b]{color:var(--color-text-muted);flex:1;margin:0;font-size:12px;line-height:1.4}.pool-mentor-hint[data-v-f74cad7b]{color:var(--color-text);margin:0 0 18px;line-height:1.5}.dialog-backdrop[data-v-f74cad7b]{z-index:1000;background:var(--color-backdrop);overscroll-behavior:none;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.management-dialog[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);width:min(980px,100%);max-height:min(920px,100dvh - 48px);box-shadow:0 24px 70px var(--color-shadow-strong);border-radius:14px;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;overflow:hidden}.dialog-header[data-v-f74cad7b],.dialog-footer[data-v-f74cad7b]{justify-content:space-between;gap:24px;padding:20px 24px;display:flex}.dialog-header[data-v-f74cad7b]{border-bottom:1px solid var(--color-border);align-items:flex-start}.dialog-header h2[data-v-f74cad7b]{margin:8px 0 0;font-size:21px}.dialog-header p[data-v-f74cad7b],.section-heading p[data-v-f74cad7b]{color:var(--color-text-muted);margin:5px 0 0;font-size:13px}.module-label[data-v-f74cad7b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.close-button[data-v-f74cad7b]{background:var(--color-surface-subtle);width:34px;height:34px;color:var(--color-text-muted);border:0;border-radius:50%;flex:none;place-items:center;font-size:23px;line-height:1;display:grid}.editor-view-tabs[data-v-f74cad7b]{border-bottom:1px solid var(--color-border);gap:24px;padding:0 24px;display:flex}.editor-view-tabs button[data-v-f74cad7b]{min-height:46px;color:var(--color-text-muted);font:inherit;background:0 0;border:0;padding:0;font-size:13px;font-weight:700;position:relative}.editor-view-tabs button[data-v-f74cad7b]:after{content:"";background:0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.editor-view-tabs button[data-v-f74cad7b]:hover,.editor-view-tabs button.is-active[data-v-f74cad7b]{color:var(--color-primary)}.editor-view-tabs button.is-active[data-v-f74cad7b]:after{background:var(--color-action)}.editor-form[data-v-f74cad7b]{overscroll-behavior:contain;gap:22px;padding:24px;display:grid;overflow-y:auto}.preview-view[data-v-f74cad7b]{overscroll-behavior:contain;background:var(--color-surface);align-content:start;gap:18px;padding:24px;display:grid;overflow-y:auto}.preview-view__header[data-v-f74cad7b]{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.preview-view__eyebrow[data-v-f74cad7b],.preview-view__module[data-v-f74cad7b]{border-radius:999px;width:fit-content;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.preview-view__eyebrow[data-v-f74cad7b]{background:var(--color-surface-subtle);color:var(--color-info)}.preview-view__module[data-v-f74cad7b]{background:var(--color-primary-soft);color:var(--color-primary);flex:none}.preview-view__header h3[data-v-f74cad7b]{color:var(--color-text);margin:8px 0 0;font-size:18px}.preview-view__header p[data-v-f74cad7b]{max-width:620px;color:var(--color-text-muted);margin:5px 0 0;font-size:12px;line-height:1.5}.information-view[data-v-f74cad7b]{overscroll-behavior:contain;background:var(--color-surface);align-content:start;gap:18px;padding:24px;display:grid;overflow-y:auto}.information-view__header[data-v-f74cad7b]{gap:5px;display:grid}.information-view__eyebrow[data-v-f74cad7b]{background:var(--color-primary-soft);width:fit-content;color:var(--color-primary);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.information-view__header h3[data-v-f74cad7b]{color:var(--color-text);margin:3px 0 0;font-size:18px}.information-view__header p[data-v-f74cad7b]{max-width:680px;color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.5}.information-grid[data-v-f74cad7b]{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.information-card[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:18px}.information-card h4[data-v-f74cad7b]{color:var(--color-text);margin:0;font-size:14px}.information-card dl[data-v-f74cad7b]{margin:12px 0 0;display:grid}.information-card dl>div[data-v-f74cad7b]{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(120px,.8fr) minmax(0,1.4fr);gap:14px;padding:10px 0;display:grid}.information-card dl>div[data-v-f74cad7b]:first-child{padding-top:0}.information-card dl>div[data-v-f74cad7b]:last-child{border-bottom:0;padding-bottom:0}.information-card dt[data-v-f74cad7b]{color:var(--color-text-muted);font-size:11px;font-weight:600}.information-card dd[data-v-f74cad7b]{min-width:0;color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:600}.information-id[data-v-f74cad7b]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px!important}.information-status[data-v-f74cad7b]{background:var(--color-success-soft);width:fit-content;color:var(--color-success);border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.information-status--disabled[data-v-f74cad7b],.information-status--unassigned[data-v-f74cad7b]{background:var(--color-surface-muted);color:var(--color-text-muted)}.information-status--quarantined[data-v-f74cad7b]{background:var(--color-warning-soft);color:var(--color-warning)}.information-card--billing[data-v-f74cad7b]{gap:16px;display:grid}.information-billing__header[data-v-f74cad7b]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.information-billing__header p[data-v-f74cad7b]{color:var(--color-text-muted);margin:5px 0 0;font-size:11px;line-height:1.5}.information-billing__header>span[data-v-f74cad7b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700}.information-invoice[data-v-f74cad7b]{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.information-invoice__row[data-v-f74cad7b]{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;padding:12px 14px;display:flex}.information-invoice__row>div[data-v-f74cad7b]{gap:3px;min-width:0;display:grid}.information-invoice__row strong[data-v-f74cad7b],.information-invoice__row b[data-v-f74cad7b]{color:var(--color-text);font-size:12px}.information-invoice__row span[data-v-f74cad7b]{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:11px}.information-invoice__row small[data-v-f74cad7b]{color:var(--color-text-muted);font-size:10px}.information-invoice__row>b[data-v-f74cad7b]{font-variant-numeric:tabular-nums;flex:none}.information-invoice__total[data-v-f74cad7b]{background:var(--color-primary-subtle);border-bottom:0}.information-invoice__total strong[data-v-f74cad7b],.information-invoice__total b[data-v-f74cad7b]{color:var(--color-primary);font-size:13px}.preview-card[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 10px 30px var(--color-shadow-soft);border-radius:12px;gap:20px;padding:clamp(20px,4vw,38px);display:grid}.preview-card[data-v-f74cad7b] .choice-item__prompt,.preview-card[data-v-f74cad7b] .bug-hunt__prompt{font-size:clamp(1.2rem,2vw,1.55rem)}.preview-card[data-v-f74cad7b] .choice-option{border-radius:10px;padding:.8rem .9rem}.preview-card[data-v-f74cad7b] .bug-hunt__code-shell{border-radius:10px}.preview-card__footer[data-v-f74cad7b]{justify-content:flex-end;padding-top:2px;display:flex}.preview-card__footer button[data-v-f74cad7b]{border:1px solid var(--color-primary);background:var(--color-action);min-height:40px;color:var(--color-on-accent);border-radius:7px;padding:9px 17px;font-size:12px;font-weight:700}.preview-card__footer button[data-v-f74cad7b]:disabled{cursor:not-allowed;opacity:.45}.preview-card__footer .preview-reset-button[data-v-f74cad7b]{color:var(--color-primary);background:0 0;border-color:#0000;margin-right:auto}.preview-card__footer .preview-reset-button[data-v-f74cad7b]:hover{background:var(--color-primary-soft)}.preview-feedback[data-v-f74cad7b]{border:1px solid;border-radius:8px;padding:12px 14px;font-size:12px}.preview-feedback strong[data-v-f74cad7b]{margin-bottom:4px;display:block}.preview-feedback p[data-v-f74cad7b]{margin:0;line-height:1.5}.preview-feedback--correct[data-v-f74cad7b]{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.preview-feedback--incorrect[data-v-f74cad7b]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.preview-unsupported[data-v-f74cad7b]{border:1px dashed var(--color-border);color:var(--color-text-muted);text-align:center;border-radius:8px;margin:0;padding:28px}.field[data-v-f74cad7b]{gap:7px;min-width:0;display:grid}.field>span[data-v-f74cad7b],.option-editor legend[data-v-f74cad7b]{color:var(--color-text);font-size:12px;font-weight:700}.field input[data-v-f74cad7b],.field textarea[data-v-f74cad7b],.field select[data-v-f74cad7b],.option-row>input[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);font:inherit;border-radius:7px;font-size:13px}.field input[data-v-f74cad7b],.field select[data-v-f74cad7b],.option-row>input[data-v-f74cad7b]{min-height:41px;padding:9px 11px}.field textarea[data-v-f74cad7b]{resize:vertical;min-height:90px;padding:10px 11px;line-height:1.5}.field input[data-v-f74cad7b]:focus,.field textarea[data-v-f74cad7b]:focus,.field select[data-v-f74cad7b]:focus,.option-row>input[data-v-f74cad7b]:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}.field small[data-v-f74cad7b]{color:var(--color-text-muted);font-size:11px}.code-fields[data-v-f74cad7b],.feedback-fields[data-v-f74cad7b]{grid-template-columns:1fr 1fr;gap:16px;display:grid}.code-fields .field--wide[data-v-f74cad7b]{grid-column:1/-1}.language-field[data-v-f74cad7b]{max-width:240px}.code-input[data-v-f74cad7b]{tab-size:2;background:var(--color-code-surface)!important;min-height:180px!important;color:var(--color-text-faint)!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;font-size:12px!important}.option-editor[data-v-f74cad7b]{border:0;min-width:0;margin:0;padding:0}.section-heading[data-v-f74cad7b]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.section-heading h3[data-v-f74cad7b],.section-heading legend[data-v-f74cad7b]{margin:0;font-size:14px}.section-heading button[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);border-radius:6px;padding:7px 10px;font-size:12px;font-weight:700}.option-list[data-v-f74cad7b]{gap:9px;margin-top:14px;display:grid}.option-row[data-v-f74cad7b]{grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:9px;display:grid}.correct-option[data-v-f74cad7b]{place-items:center;width:38px;height:38px;display:grid}.correct-option input[data-v-f74cad7b]{opacity:0;position:absolute}.correct-option span[data-v-f74cad7b]{border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-muted);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.correct-option input:checked+span[data-v-f74cad7b]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.remove-option[data-v-f74cad7b]{background:var(--color-danger-soft);width:34px;height:34px;color:var(--color-danger);border:0;border-radius:6px;font-size:18px}.remove-option[data-v-f74cad7b]:disabled,.section-heading button[data-v-f74cad7b]:disabled{cursor:not-allowed;opacity:.45}.assignment-section[data-v-f74cad7b]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);border-radius:10px;gap:16px;padding:18px;display:grid}.assignment-count[data-v-f74cad7b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;flex:none;padding:5px 9px;font-size:11px;font-weight:700}.availability-section[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-primary-subtle);border-radius:8px;justify-content:space-between;align-items:center;gap:20px;padding:13px 14px;display:flex}.availability-section strong[data-v-f74cad7b]{font-size:13px;display:block}.availability-section p[data-v-f74cad7b]{max-width:540px;color:var(--color-text-muted);margin:4px 0 0;font-size:11px;line-height:1.45}.availability-section label[data-v-f74cad7b]{flex:0 0 190px}.availability-section select[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:39px;color:var(--color-text);font:inherit;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:650}.availability-section select[data-v-f74cad7b]:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}.objective-search[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:7px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:0 12px;display:grid}.objective-search[data-v-f74cad7b]:focus-within{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}.objective-search svg[data-v-f74cad7b]{fill:none;width:18px;stroke:var(--color-text-muted);stroke-linecap:round;stroke-width:1.8px}.objective-search input[data-v-f74cad7b]{min-height:42px;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;padding:9px 0;font-size:13px}.objective-tree[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px}.tree-group+.tree-group[data-v-f74cad7b]{border-top:1px solid var(--color-border)}.tree-children[data-v-f74cad7b],.tree-objectives[data-v-f74cad7b],.tree-facets[data-v-f74cad7b]{position:relative}.tree-children[data-v-f74cad7b]{border-left:1px solid var(--color-primary-border);margin-left:27px}.tree-objectives[data-v-f74cad7b]{border-left:1px solid var(--color-primary-border);margin-left:24px}.tree-row[data-v-f74cad7b]{width:100%;min-height:42px;color:var(--color-text);font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:16px 18px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 12px;font-size:12px;display:grid;position:relative}.tree-row[data-v-f74cad7b]:hover{background:var(--color-primary-subtle)}.tree-row[data-v-f74cad7b]:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary-soft);outline:0}.tree-row--group[data-v-f74cad7b]{font-weight:700}.tree-row--skill[data-v-f74cad7b]{padding-left:8px;font-weight:650}.tree-row--objective[data-v-f74cad7b]{grid-template-columns:16px 18px minmax(0,1fr) auto auto;padding:9px 12px 9px 8px;line-height:1.4}.tree-row--skill[data-v-f74cad7b]:before,.tree-row--objective[data-v-f74cad7b]:before{border-top:1px solid var(--color-primary-border);content:"";width:8px;position:absolute;top:50%;left:0}.tree-row--objective.is-selected[data-v-f74cad7b]{background:var(--color-primary-soft);color:var(--color-primary)}.tree-row small[data-v-f74cad7b]{color:var(--color-text-muted);font-size:10px;font-weight:500}.tree-chevron[data-v-f74cad7b]{color:var(--color-text-muted);text-align:center;font-size:18px;line-height:1}.tree-folder[data-v-f74cad7b]{width:18px;fill:var(--color-text-faint);stroke:var(--color-primary);stroke-linejoin:round;stroke-width:1.4px}.tree-row .assignment-state[data-v-f74cad7b]{background:var(--color-success-soft);color:var(--color-success);border-radius:999px;padding:3px 7px;font-weight:700}.tree-row .assignment-state--removed[data-v-f74cad7b]{background:var(--color-danger-soft);color:var(--color-danger)}.tree-row .preparation-badge[data-v-f74cad7b]{background:var(--color-warning-soft);color:var(--color-warning);border-radius:999px;padding:3px 6px;font-weight:700}.tree-empty[data-v-f74cad7b]{color:var(--color-text-muted);text-align:center;margin:0;padding:18px;font-size:12px}.tree-facets[data-v-f74cad7b]{border-left:1px solid var(--color-primary-border);background:var(--color-primary-subtle);gap:8px;margin-left:24px;padding:8px 12px 14px 32px;display:grid}.tree-facet[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);cursor:pointer;border-radius:7px;align-items:flex-start;gap:9px;padding:10px 11px;font-size:12px;line-height:1.4;transition:border-color .12s,background-color .12s,color .12s;display:flex;position:relative}.tree-facet[data-v-f74cad7b]:before,.tree-preparation[data-v-f74cad7b]:before,.tree-facets__empty[data-v-f74cad7b]:before{border-top:1px solid var(--color-primary-border);content:"";width:32px;position:absolute;top:20px;left:-33px}.tree-facet[data-v-f74cad7b]:hover{border-color:var(--color-primary-border);background:var(--color-primary-subtle)}.tree-facet.is-selected[data-v-f74cad7b]{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.tree-facet input[data-v-f74cad7b]{accent-color:var(--color-primary);flex:none;margin:2px 0 0}.tree-facets__empty[data-v-f74cad7b]{border:1px dashed var(--color-border);color:var(--color-text-muted);text-align:center;border-radius:7px;margin:0;padding:12px;font-size:11px;position:relative}.tree-preparation[data-v-f74cad7b]{border:1px solid var(--color-warning-border);background:var(--color-warning-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px;font-size:12px;display:flex;position:relative}.tree-preparation strong[data-v-f74cad7b]{margin-bottom:3px;display:block}.tree-preparation p[data-v-f74cad7b]{color:var(--color-text-muted);margin:0;line-height:1.45}.tree-preparation button[data-v-f74cad7b]{border:1px solid var(--color-primary);background:var(--color-action);min-height:36px;color:var(--color-on-accent);border-radius:7px;flex:none;padding:8px 10px;font-size:11px;font-weight:700}.tree-preparation button[data-v-f74cad7b]:disabled{cursor:not-allowed;opacity:.55}.sr-only[data-v-f74cad7b]{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.assignment-warning[data-v-f74cad7b],.dialog-error[data-v-f74cad7b]{border-radius:7px;margin:0;padding:11px 12px;font-size:12px}.assignment-warning[data-v-f74cad7b]{background:var(--color-warning-soft);color:var(--color-warning)}.dialog-error[data-v-f74cad7b]{background:var(--color-danger-soft);color:var(--color-danger)}.dialog-footer[data-v-f74cad7b]{border-top:1px solid var(--color-border);background:var(--color-primary-subtle);align-items:center}.dialog-footer__actions[data-v-f74cad7b]{justify-content:flex-end;gap:9px;display:flex}.dialog-footer button[data-v-f74cad7b]{border-radius:7px;min-height:39px;padding:9px 13px;font-size:12px;font-weight:700}.delete-button[data-v-f74cad7b]{border:1px solid var(--color-danger-border);background:var(--color-surface);color:var(--color-danger)}.secondary-button[data-v-f74cad7b]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.primary-button[data-v-f74cad7b]{border:1px solid var(--color-primary);background:var(--color-action);color:var(--color-on-accent)}.dialog-footer button[data-v-f74cad7b]:disabled{cursor:not-allowed;opacity:.5}@media (width<=720px){.dialog-backdrop[data-v-f74cad7b]{padding:0}.management-dialog[data-v-f74cad7b]{border:0;border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}.dialog-header[data-v-f74cad7b],.dialog-footer[data-v-f74cad7b],.editor-form[data-v-f74cad7b],.preview-view[data-v-f74cad7b],.information-view[data-v-f74cad7b],.editor-view-tabs[data-v-f74cad7b]{padding-left:16px;padding-right:16px}.preview-view__header[data-v-f74cad7b]{flex-direction:column;gap:12px}.preview-card[data-v-f74cad7b]{padding:16px}.information-grid[data-v-f74cad7b]{grid-template-columns:1fr}.information-card dl>div[data-v-f74cad7b]{grid-template-columns:1fr;gap:4px}.information-invoice__row[data-v-f74cad7b]{flex-direction:column;align-items:flex-start;gap:8px}.information-invoice__total[data-v-f74cad7b]{flex-direction:row}.code-fields[data-v-f74cad7b],.feedback-fields[data-v-f74cad7b]{grid-template-columns:1fr}.code-fields .field--wide[data-v-f74cad7b]{grid-column:auto}.dialog-footer[data-v-f74cad7b]{flex-direction:column-reverse;align-items:stretch}.tree-preparation[data-v-f74cad7b]{flex-direction:column;align-items:stretch}.tree-facets[data-v-f74cad7b]{padding-left:36px}.availability-section[data-v-f74cad7b]{flex-direction:column;align-items:stretch}.availability-section label[data-v-f74cad7b]{flex-basis:auto}.dialog-footer__actions[data-v-f74cad7b]{display:grid}.delete-button[data-v-f74cad7b]{width:100%}}.exercise-pool-view[data-v-c314316b]{gap:24px;display:grid}.view-heading[data-v-c314316b]{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.view-heading h2[data-v-c314316b]{margin:0;font-size:24px}.view-heading p[data-v-c314316b]{color:var(--color-text-muted);margin:7px 0 0}.item-count[data-v-c314316b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;flex:none;padding:7px 11px;font-size:13px;font-weight:600}.action-message[data-v-c314316b]{border:1px solid;border-radius:8px;margin:0;padding:11px 13px;font-size:12px}.action-message--success[data-v-c314316b]{border-color:var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.action-message--error[data-v-c314316b]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.filter-panel[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-primary-subtle);border-radius:10px;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) repeat(3,minmax(135px,1fr));gap:10px;padding:14px;display:grid}.filter-panel label[data-v-c314316b]{min-width:0}.filter-panel input[data-v-c314316b],.filter-panel select[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:42px;color:var(--color-text);border-radius:7px;font-size:13px}.filter-panel input[data-v-c314316b]{padding:9px 12px 9px 38px}.filter-panel select[data-v-c314316b]{padding:9px 30px 9px 11px}.filter-panel input[data-v-c314316b]:focus,.filter-panel select[data-v-c314316b]:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}.filter-panel select[data-v-c314316b]:disabled{cursor:not-allowed;opacity:.55}.search-field[data-v-c314316b]{grid-column:span 2;position:relative}.search-field svg[data-v-c314316b]{z-index:1;fill:none;width:17px;height:17px;stroke:var(--color-text-muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.clear-filters[data-v-c314316b]{width:fit-content;color:var(--color-primary);background:0 0;border:0;grid-column:1/-1;padding:4px 0;font-size:13px;font-weight:600}.selection-toolbar[data-v-c314316b]{border:1px solid var(--color-primary-border);background:var(--color-primary-subtle);min-height:50px;color:var(--color-primary);border-radius:9px;justify-content:space-between;align-items:center;gap:18px;padding:9px 13px;font-size:12px;display:flex}.selection-toolbar>div[data-v-c314316b]{gap:8px;display:flex}.selection-toolbar button[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);min-height:34px;color:var(--color-text);border-radius:6px;padding:7px 11px;font-size:12px;font-weight:700}.selection-toolbar .selection-toolbar__delete[data-v-c314316b]{border-color:var(--color-danger-border);color:var(--color-danger)}.selection-toolbar .selection-toolbar__archive[data-v-c314316b]{color:var(--color-primary)}.selection-toolbar button[data-v-c314316b]:disabled{cursor:not-allowed;opacity:.48}.state-message[data-v-c314316b]{border:1px solid var(--color-border);color:var(--color-text-muted);text-align:center;border-radius:10px;padding:38px 24px}.state-message strong[data-v-c314316b]{color:var(--color-text)}.state-message p[data-v-c314316b]{margin:7px 0 0}.state-message button[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);border-radius:6px;margin-top:15px;padding:8px 13px;font-weight:600}.state-message--error[data-v-c314316b]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.exercise-table[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;overflow:hidden}.exercise-table__header[data-v-c314316b],.exercise-row[data-v-c314316b]{grid-template-columns:30px minmax(280px,1.2fr) minmax(300px,1.45fr) minmax(110px,.5fr) minmax(110px,auto);align-items:center;gap:18px;display:grid}.exercise-table__header[data-v-c314316b]{border-bottom:1px solid var(--color-border);background:var(--color-primary-subtle);min-height:43px;color:var(--color-text-muted);letter-spacing:.03em;text-transform:uppercase;padding:0 17px;font-size:11px;font-weight:600}.exercise-row[data-v-c314316b]{border-bottom:1px solid var(--color-border);cursor:pointer;min-height:94px;padding:15px 17px;transition:background-color .12s,box-shadow .12s}.exercise-row[data-v-c314316b]:hover,.exercise-row[data-v-c314316b]:focus-visible{background:var(--color-primary-subtle);box-shadow:inset 3px 0 0 var(--color-primary);outline:none}.exercise-row--selected[data-v-c314316b]{background:var(--color-primary-subtle)}.exercise-row[data-v-c314316b]:last-child{border-bottom:0}.exercise-cell[data-v-c314316b]{min-width:0}.select-cell[data-v-c314316b]{cursor:pointer;align-self:start;place-items:center;min-width:30px;min-height:34px;display:grid}.select-cell input[data-v-c314316b]{width:16px;height:16px;accent-color:var(--color-primary);margin:0}.exercise-table__header .select-cell[data-v-c314316b]{align-self:center}.exercise-prompt[data-v-c314316b]{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.exercise-meta[data-v-c314316b]{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;font-size:11px;display:flex}.type-label[data-v-c314316b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:4px 7px;font-weight:600}.hierarchy[data-v-c314316b]{gap:4px;padding-left:20px;display:grid}.hierarchy small[data-v-c314316b]{color:var(--color-text-muted);font-size:11px;line-height:1.35}.exercise-table__header>span[data-v-c314316b]:nth-of-type(2){padding-left:20px}.hierarchy-path[data-v-c314316b]{min-width:0;color:var(--color-text-muted);align-items:center;gap:7px;font-size:11px;line-height:1.4;display:flex}.hierarchy-path span[data-v-c314316b]:first-child,.hierarchy-path strong[data-v-c314316b]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hierarchy-path strong[data-v-c314316b]{color:var(--color-text);font-size:12px}.hierarchy-path__separator[data-v-c314316b]{color:var(--color-text-muted);flex:none;font-size:15px}.hierarchy>small[data-v-c314316b]{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.more-assignments[data-v-c314316b]{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;margin-left:5px;padding:1px 5px;font-size:10px;font-weight:700;display:inline-flex}.rating-summary[data-v-c314316b]{gap:3px;display:grid}.rating-summary strong[data-v-c314316b]{color:var(--color-text);white-space:nowrap;font-size:13px}.rating-summary strong span[data-v-c314316b]{color:var(--color-warning)}.rating-summary small[data-v-c314316b]{color:var(--color-text-muted);font-size:10px;line-height:1.3}.status-label[data-v-c314316b]{white-space:nowrap;border-radius:999px;width:fit-content;padding:5px 8px;font-size:11px;font-weight:600;display:inline-flex}.status-label--active[data-v-c314316b]{background:var(--color-success-soft);color:var(--color-success)}.status-label--disabled[data-v-c314316b]{background:var(--color-surface-muted);color:var(--color-text-muted)}.status-label--quarantined[data-v-c314316b]{background:var(--color-warning-soft);color:var(--color-warning)}.status-label--unassigned[data-v-c314316b]{background:var(--color-danger-soft);color:var(--color-danger)}.pagination[data-v-c314316b]{color:var(--color-text-muted);grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;gap:18px;padding:4px 2px 0;font-size:12px;display:grid}.pagination__summary strong[data-v-c314316b]{color:var(--color-text)}.page-size[data-v-c314316b]{align-items:center;gap:9px;display:flex}.page-size select[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);min-height:34px;color:var(--color-text);border-radius:6px;padding:6px 28px 6px 9px;font-size:12px}.pagination__pages[data-v-c314316b]{justify-content:flex-end;align-items:center;gap:5px;display:flex}.pagination__pages button[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);min-width:34px;height:34px;color:var(--color-text-muted);border-radius:6px;place-items:center;padding:0 8px;font-size:12px;font-weight:600;display:grid}.pagination__pages button[data-v-c314316b]:hover:not(:disabled),.pagination__pages button.is-active[data-v-c314316b]{border-color:var(--color-primary);color:var(--color-primary)}.pagination__pages button.is-active[data-v-c314316b]{background:var(--color-primary-soft)}.pagination__pages button[data-v-c314316b]:disabled{cursor:not-allowed;opacity:.45}.pagination__gap[data-v-c314316b]{text-align:center;min-width:20px}.editor-loading[data-v-c314316b],.confirm-backdrop[data-v-c314316b]{z-index:1100;background:var(--color-backdrop);place-items:center;display:grid;position:fixed;inset:0}.editor-loading[data-v-c314316b]{color:var(--color-on-accent);font-size:13px;font-weight:700}.confirm-backdrop[data-v-c314316b]{padding:20px}.confirm-dialog[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);width:min(440px,100%);box-shadow:0 24px 70px var(--color-shadow-strong);border-radius:12px;padding:23px}.confirm-dialog h2[data-v-c314316b]{margin:0;font-size:19px}.confirm-dialog p[data-v-c314316b]{color:var(--color-text-muted);margin:10px 0 0;font-size:13px;line-height:1.55}.confirm-dialog>div[data-v-c314316b]{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.confirm-dialog button[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);min-height:39px;color:var(--color-text);border-radius:7px;padding:9px 13px;font-size:12px;font-weight:700}.confirm-dialog .confirm-dialog__delete[data-v-c314316b]{border-color:var(--color-danger-border);background:var(--color-danger-action);color:var(--color-on-accent)}.confirm-dialog button[data-v-c314316b]:disabled{cursor:not-allowed;opacity:.5}.sr-only[data-v-c314316b]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.filter-panel[data-v-c314316b]{grid-template-columns:repeat(3,minmax(0,1fr))}.search-field[data-v-c314316b]{grid-column:span 2}.exercise-table[data-v-c314316b]{overflow-x:auto}.exercise-table__header[data-v-c314316b],.exercise-row[data-v-c314316b]{min-width:1000px}}@media (width<=720px){.view-heading[data-v-c314316b]{gap:12px;display:grid}.item-count[data-v-c314316b]{width:fit-content}.filter-panel[data-v-c314316b]{grid-template-columns:1fr}.selection-toolbar[data-v-c314316b]{flex-direction:column;align-items:stretch}.selection-toolbar>div[data-v-c314316b]{display:grid}.search-field[data-v-c314316b]{grid-column:auto}.exercise-table[data-v-c314316b]{background:0 0;border:0;border-radius:0;overflow:visible}.exercise-table__header[data-v-c314316b]{display:none}.exercise-row[data-v-c314316b]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:9px;grid-template-columns:1fr;gap:16px;min-width:0;min-height:0;margin-bottom:12px;padding:17px;display:grid}.hierarchy[data-v-c314316b]{padding-left:0}.exercise-row[data-v-c314316b]:last-child{border-bottom:1px solid var(--color-border)}.pagination[data-v-c314316b]{grid-template-columns:1fr;justify-items:start}.pagination__pages[data-v-c314316b]{flex-wrap:wrap;justify-content:flex-start;max-width:100%}.exercise-cell[data-v-c314316b]:not(.exercise-cell--question):before{color:var(--color-text-muted);content:attr(data-label);letter-spacing:.03em;text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:600;display:block}}.analytics-page[data-v-cb2300a3]{width:100%;color:var(--color-text);font-size:14px}.page-heading[data-v-cb2300a3],.panel-heading[data-v-cb2300a3],.student-heading[data-v-cb2300a3],.detail-card>header[data-v-cb2300a3],.modal-header[data-v-cb2300a3],.modal-footer[data-v-cb2300a3],.skill-row[data-v-cb2300a3],.detail-progress-list li>div[data-v-cb2300a3]:first-child,.cost-line[data-v-cb2300a3],.cost-total[data-v-cb2300a3]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.page-heading[data-v-cb2300a3]{margin-bottom:1.75rem}.page-heading h2[data-v-cb2300a3],.panel-heading h3[data-v-cb2300a3],.detail-card h3[data-v-cb2300a3],.modal-header h2[data-v-cb2300a3]{margin:0}.page-heading h2[data-v-cb2300a3]{font-size:22px}.page-heading p[data-v-cb2300a3],.panel-heading p[data-v-cb2300a3],.detail-card header p[data-v-cb2300a3],.modal-header p[data-v-cb2300a3]{color:var(--color-text-muted);margin:.45rem 0 0;line-height:1.5}.page-heading p[data-v-cb2300a3]{font-size:15px}button[data-v-cb2300a3],input[data-v-cb2300a3],select[data-v-cb2300a3]{font:inherit}button[data-v-cb2300a3],select[data-v-cb2300a3]{cursor:pointer}button[data-v-cb2300a3]:disabled{cursor:not-allowed;opacity:.5}.refresh-button[data-v-cb2300a3],.direction-button[data-v-cb2300a3],.pagination button[data-v-cb2300a3],.primary-button[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);min-height:2.75rem;color:var(--color-text-secondary);border-radius:.65rem;padding:.65rem 1rem;font-weight:700}.refresh-button[data-v-cb2300a3]:hover,.direction-button[data-v-cb2300a3]:hover,.pagination button[data-v-cb2300a3]:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary-hover)}.notice[data-v-cb2300a3],.loading-card[data-v-cb2300a3],.empty-state[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);border-radius:.8rem;padding:1.25rem}.notice--error[data-v-cb2300a3]{border-color:var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger);margin-bottom:1rem}.analytics-stack[data-v-cb2300a3]{gap:1rem;display:grid}.skill-overview-card[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:5.5rem;color:var(--color-text);text-align:left;border-radius:.9rem;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.15rem 1.35rem;transition:border-color .14s,background .14s,box-shadow .14s;display:flex}.skill-overview-card[data-v-cb2300a3]:hover,.skill-overview-card[data-v-cb2300a3]:focus-visible{border-color:var(--color-primary);background:var(--color-primary-subtle);box-shadow:0 0 0 2px var(--color-primary-shadow);outline:0}.skill-overview-copy[data-v-cb2300a3]{gap:.35rem;min-width:0;display:grid}.skill-overview-copy strong[data-v-cb2300a3]{font-size:17px}.skill-overview-copy>span[data-v-cb2300a3]{color:var(--color-text-muted);font-size:13px;line-height:1.45}.skill-overview-action[data-v-cb2300a3]{color:var(--color-primary);white-space:nowrap;align-items:center;gap:.8rem;font-size:13px;font-weight:800;display:flex}.overview-chevron[data-v-cb2300a3]{font-size:1.6rem;font-weight:400;line-height:1}.panel[data-v-cb2300a3],.detail-card[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.9rem;overflow:hidden}.panel-heading[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);align-items:flex-start;padding:1.35rem}.panel-heading h3[data-v-cb2300a3],.detail-card h3[data-v-cb2300a3]{font-size:17px}.panel-heading p[data-v-cb2300a3],.detail-card header p[data-v-cb2300a3]{font-size:13px}.skill-list[data-v-cb2300a3],.detail-progress-list[data-v-cb2300a3],.task-list[data-v-cb2300a3]{margin:0;padding:0;list-style:none}.skill-list li[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);padding:1.25rem 1.35rem}.skill-list li[data-v-cb2300a3]:last-child{border-bottom:0}.skill-row[data-v-cb2300a3]{align-items:flex-start;margin-bottom:.75rem}.skill-row strong[data-v-cb2300a3]{font-size:14px;line-height:1.4}.skill-row span[data-v-cb2300a3]{color:var(--color-text-muted);white-space:nowrap;font-size:13px;font-weight:700}.skill-list small[data-v-cb2300a3],.student-table small[data-v-cb2300a3],.task-list small[data-v-cb2300a3],.cost-line small[data-v-cb2300a3]{color:var(--color-text-muted);margin-top:.42rem;font-size:12px;line-height:1.35;display:block}.progress-track[data-v-cb2300a3]{background:var(--color-surface-muted);border-radius:999px;height:.45rem;overflow:hidden}.progress-track>span[data-v-cb2300a3]{border-radius:inherit;background:var(--color-action);height:100%;transition:width .18s;display:block}.result-count[data-v-cb2300a3],.status-badge[data-v-cb2300a3],.currency-badge[data-v-cb2300a3]{background:var(--color-primary-soft);color:var(--color-primary);white-space:nowrap;border-radius:999px;padding:.42rem .72rem;font-size:12px;font-weight:800}.student-toolbar[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:minmax(14rem,1fr) auto auto;gap:.75rem;padding:1rem 1.35rem;display:grid}.student-toolbar input[data-v-cb2300a3],.student-toolbar select[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:2.75rem;color:var(--color-text);border-radius:.65rem;padding:.65rem .8rem;font-size:14px}.student-toolbar input[data-v-cb2300a3]:focus,.student-toolbar select[data-v-cb2300a3]:focus,.student-table tr[data-v-cb2300a3]:focus{outline:2px solid var(--color-primary);outline-offset:1px}.table-scroll[data-v-cb2300a3]{overflow-x:auto}.student-table[data-v-cb2300a3]{border-collapse:collapse;width:100%;min-width:60rem}.student-table th[data-v-cb2300a3]{background:var(--color-primary-subtle);color:var(--color-text-muted);letter-spacing:.05em;text-align:left;text-transform:uppercase;font-size:12px}.student-table th[data-v-cb2300a3],.student-table td[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;padding:1rem}.student-table td[data-v-cb2300a3]{font-size:14px}.student-table tbody tr[data-v-cb2300a3]{cursor:pointer;transition:background .14s}.student-table tbody tr[data-v-cb2300a3]:hover,.student-table tbody tr[data-v-cb2300a3]:focus{background:var(--color-primary-subtle)}.student-table tbody tr:last-child td[data-v-cb2300a3]{border-bottom:0}.student-table td[data-v-cb2300a3]:first-child{min-width:13rem}.student-table td[data-v-cb2300a3]:nth-child(2){max-width:19rem}.student-table td:nth-child(2) strong[data-v-cb2300a3],.student-table td:nth-child(2) small[data-v-cb2300a3]{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.student-table td[data-v-cb2300a3]:nth-child(5),.student-table td[data-v-cb2300a3]:nth-child(6){white-space:nowrap}.table-progress[data-v-cb2300a3]{grid-template-columns:auto minmax(4rem,1fr);align-items:center;gap:.65rem;min-width:7.5rem;display:grid}.open-cell[data-v-cb2300a3]{width:2rem;color:var(--color-primary);text-align:right;font-size:1.6rem}.pagination[data-v-cb2300a3]{border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted);justify-content:flex-end;align-items:center;gap:1rem;padding:1rem 1.35rem;display:flex}.modal-backdrop[data-v-cb2300a3]{z-index:1000;background:var(--color-backdrop);overscroll-behavior:none;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.student-modal[data-v-cb2300a3]{background:var(--color-surface);width:min(67rem,100%);max-height:calc(100dvh - 2.5rem);box-shadow:0 1.75rem 5rem var(--color-shadow-strong);border-radius:1rem;grid-template-rows:auto minmax(0,1fr) auto;font-size:14px;display:grid;overflow:hidden}.skill-progress-modal[data-v-cb2300a3]{width:min(46rem,100%)}.skill-progress-content[data-v-cb2300a3]{padding:0}.skill-progress-content .empty-state[data-v-cb2300a3]{margin:1.4rem 1.6rem}.modal-header[data-v-cb2300a3]{border-bottom:1px solid var(--color-border);padding:1.4rem 1.6rem}.modal-eyebrow[data-v-cb2300a3]{letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800;color:var(--color-primary)!important}.modal-header h2[data-v-cb2300a3]{margin-top:.35rem;font-size:21px}.close-button[data-v-cb2300a3]{background:var(--color-surface-subtle);width:2.8rem;height:2.8rem;color:var(--color-text-muted);border:0;border-radius:50%;flex:none;place-items:center;font-size:1.8rem;line-height:1;display:grid}.close-button[data-v-cb2300a3]:hover{background:var(--color-primary-soft);color:var(--color-primary-hover)}.modal-content[data-v-cb2300a3]{overscroll-behavior:contain;background:var(--color-surface);min-height:12rem;padding:1.4rem 1.6rem;overflow-y:auto}.detail-metrics[data-v-cb2300a3]{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.detail-metrics article[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.75rem;flex-direction:column;justify-content:space-between;min-height:6.5rem;padding:1rem;display:flex}.detail-metrics span[data-v-cb2300a3]{color:var(--color-text-muted);font-size:13px;font-weight:700}.detail-metrics strong[data-v-cb2300a3]{font-size:24px}.last-activity[data-v-cb2300a3]{color:var(--color-text-muted);margin:.85rem 0 1.25rem;font-size:13px}.last-activity strong[data-v-cb2300a3]{color:var(--color-text-secondary)}.detail-card[data-v-cb2300a3]{margin-top:1rem}.detail-card>header[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);align-items:flex-start;padding:1rem 1.15rem}.current-card>.objective-name[data-v-cb2300a3],.current-card>h4[data-v-cb2300a3],.current-card>.task-list[data-v-cb2300a3],.current-card>.empty-copy[data-v-cb2300a3]{margin-left:1.15rem;margin-right:1.15rem}.objective-name[data-v-cb2300a3]{margin-top:1rem;line-height:1.45;display:block}.current-card h4[data-v-cb2300a3]{margin-top:1.25rem;margin-bottom:.65rem;font-size:14px}.current-card>.task-list[data-v-cb2300a3],.current-card>.empty-copy[data-v-cb2300a3]{margin-bottom:1.15rem}.task-list li[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.task-list li[data-v-cb2300a3]:last-child{border-bottom:0}.task-list li>div[data-v-cb2300a3]{min-width:0}.task-list li>div>strong[data-v-cb2300a3]{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-list li>span[data-v-cb2300a3],.task-list time[data-v-cb2300a3]{color:var(--color-text-muted);white-space:nowrap;flex:none;font-size:12px}.recent-list[data-v-cb2300a3],.detail-progress-list[data-v-cb2300a3],.cost-lines[data-v-cb2300a3],.detail-card>.empty-copy[data-v-cb2300a3],.mastered-state[data-v-cb2300a3]{padding:.35rem 1.15rem 1rem}.detail-progress-list li[data-v-cb2300a3]{padding:.75rem 0}.detail-progress-list li>div[data-v-cb2300a3]:first-child{margin-bottom:.55rem}.detail-progress-list span[data-v-cb2300a3]{color:var(--color-text-muted)}.analytics-objective-tree[data-v-cb2300a3]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:.7rem;margin:.35rem 1.15rem 1rem;overflow:hidden}.analytics-tree-group+.analytics-tree-group[data-v-cb2300a3]{border-top:1px solid var(--color-border-subtle)}.analytics-tree-row[data-v-cb2300a3]{background:var(--color-surface);width:100%;min-height:3.15rem;color:var(--color-text);text-align:left;border:0;grid-template-columns:1rem 1.35rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.75rem 1rem;display:grid}button.analytics-tree-row[data-v-cb2300a3]{cursor:pointer}button.analytics-tree-row[data-v-cb2300a3]:hover{background:var(--color-primary-subtle)}button.analytics-tree-row[data-v-cb2300a3]:focus-visible{z-index:2;outline:2px solid var(--color-primary);outline-offset:-2px;position:relative}.analytics-tree-row--group[data-v-cb2300a3],.analytics-tree-row--skill[data-v-cb2300a3]{font-weight:750}.analytics-tree-row--skill[data-v-cb2300a3]{padding-left:2.15rem}.analytics-tree-row--objective[data-v-cb2300a3]{border-top:1px solid var(--color-border-subtle);min-height:3rem;color:var(--color-text-secondary);grid-template-columns:1.35rem minmax(0,1fr) auto;padding-left:4.8rem}.analytics-tree-children[data-v-cb2300a3],.analytics-tree-objectives[data-v-cb2300a3]{position:relative}.analytics-tree-children[data-v-cb2300a3]:before,.analytics-tree-objectives[data-v-cb2300a3]:before{background:var(--color-surface-muted);content:"";width:1px;position:absolute;top:0;bottom:0}.analytics-tree-children[data-v-cb2300a3]:before{left:1.6rem}.analytics-tree-objectives[data-v-cb2300a3]:before{left:3.7rem}.analytics-tree-chevron[data-v-cb2300a3]{color:var(--color-text-muted);text-align:center;font-size:1.25rem;font-weight:800;line-height:1}.analytics-tree-folder[data-v-cb2300a3]{width:1.25rem;height:1.25rem;fill:var(--color-text-faint);stroke:var(--color-primary);stroke-linejoin:round;stroke-width:1.6px}.analytics-tree-label[data-v-cb2300a3]{min-width:0;line-height:1.4}.analytics-tree-row small[data-v-cb2300a3]{color:var(--color-text-muted);white-space:nowrap;font-size:12px;font-weight:700}.analytics-tree-objective-marker[data-v-cb2300a3]{border:2px solid var(--color-border);background:var(--color-surface);border-radius:50%;width:.5rem;height:.5rem}.analytics-complete[data-v-cb2300a3]{background:var(--color-success-soft);width:1.4rem;height:1.4rem;color:var(--color-success);border-radius:50%;place-items:center;display:grid}.analytics-complete svg[data-v-cb2300a3]{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:.95rem;height:.95rem}.analytics-complete--objective[data-v-cb2300a3]{width:1.3rem;height:1.3rem}.analytics-open-status[data-v-cb2300a3]{color:var(--color-primary)!important}.empty-copy[data-v-cb2300a3],.mastered-state[data-v-cb2300a3]{color:var(--color-text-muted);line-height:1.5}.mastered-state[data-v-cb2300a3]{color:var(--color-success)}.cost-line[data-v-cb2300a3]{border-bottom:1px solid var(--color-border-subtle);padding:.95rem 0}.cost-line>strong[data-v-cb2300a3],.cost-total>strong[data-v-cb2300a3]:last-child{white-space:nowrap}.cost-total[data-v-cb2300a3]{background:var(--color-primary-subtle);color:var(--color-primary);margin:0 -1.15rem -1rem;padding:1rem 1.15rem}.tracking-warning[data-v-cb2300a3]{border-top:1px solid var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning);margin:0;padding:.85rem 1.15rem;font-size:13px}.modal-footer[data-v-cb2300a3]{border-top:1px solid var(--color-border);background:var(--color-surface);justify-content:flex-end;padding:1rem 1.6rem}.primary-button[data-v-cb2300a3]{border-color:var(--color-primary);background:var(--color-action);color:var(--color-on-accent);min-width:8rem}.primary-button[data-v-cb2300a3]:hover{background:var(--color-action-hover)}.sr-only[data-v-cb2300a3]{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=78rem){.skill-list[data-v-cb2300a3]{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.skill-list li[data-v-cb2300a3]:nth-child(odd){border-right:1px solid var(--color-border-subtle)}}@media (width<=52rem){.detail-metrics[data-v-cb2300a3]{grid-template-columns:repeat(2,minmax(0,1fr))}.student-toolbar[data-v-cb2300a3]{grid-template-columns:1fr 1fr}.search-field[data-v-cb2300a3]{grid-column:1/-1}.skill-list[data-v-cb2300a3]{grid-template-columns:1fr}.skill-list li[data-v-cb2300a3]:nth-child(odd){border-right:0}.modal-backdrop[data-v-cb2300a3]{padding:0}.student-modal[data-v-cb2300a3]{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.skill-overview-action>span[data-v-cb2300a3]:not(.result-count):not(.overview-chevron){display:none}}@media (width<=38rem){.page-heading[data-v-cb2300a3],.student-heading[data-v-cb2300a3],.modal-header[data-v-cb2300a3]{align-items:flex-start}.page-heading[data-v-cb2300a3]{flex-direction:column}.refresh-button[data-v-cb2300a3]{width:100%}.skill-overview-card[data-v-cb2300a3]{align-items:flex-start}.skill-overview-action .result-count[data-v-cb2300a3]{display:none}.detail-metrics[data-v-cb2300a3],.student-toolbar[data-v-cb2300a3]{grid-template-columns:1fr}.search-field[data-v-cb2300a3]{grid-column:auto}.modal-content[data-v-cb2300a3],.modal-header[data-v-cb2300a3],.modal-footer[data-v-cb2300a3]{padding-left:1rem;padding-right:1rem}.task-list li[data-v-cb2300a3],.cost-line[data-v-cb2300a3]{flex-direction:column;align-items:flex-start}.analytics-tree-row[data-v-cb2300a3]{padding-left:.7rem;padding-right:.7rem}.analytics-tree-row--skill[data-v-cb2300a3]{padding-left:1.55rem}.analytics-tree-row--objective[data-v-cb2300a3]{padding-left:3.25rem}.analytics-tree-children[data-v-cb2300a3]:before{left:1.15rem}.analytics-tree-objectives[data-v-cb2300a3]:before{left:2.55rem}}.settings-page[data-v-e1ca9fd1]{max-width:820px}.settings-heading[data-v-e1ca9fd1]{margin-bottom:24px}.settings-heading h2[data-v-e1ca9fd1]{margin:0;font-size:25px}.settings-heading p[data-v-e1ca9fd1]{color:var(--color-text-muted);margin:7px 0 0}.settings-form[data-v-e1ca9fd1]{gap:20px;display:grid}.settings-card[data-v-e1ca9fd1]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;padding:24px}.card-heading[data-v-e1ca9fd1]{margin-bottom:22px}.card-heading h3[data-v-e1ca9fd1]{margin:0;font-size:19px}.card-heading p[data-v-e1ca9fd1]{color:var(--color-text-muted);margin:6px 0 0;font-size:14px;line-height:1.5}.field-group[data-v-e1ca9fd1]{gap:7px;display:grid}.field-group+.field-group[data-v-e1ca9fd1]{margin-top:20px}label[data-v-e1ca9fd1]{font-weight:600}.optional-label[data-v-e1ca9fd1]{color:var(--color-text-muted);margin-left:5px;font-size:12px;font-weight:500}input[type=text][data-v-e1ca9fd1],input[type=number][data-v-e1ca9fd1],textarea[data-v-e1ca9fd1]{border:1px solid var(--color-border);background:var(--color-surface);width:100%;color:var(--color-text);border-radius:6px;padding:11px 12px}input[type=text][data-v-e1ca9fd1]:focus,input[type=number][data-v-e1ca9fd1]:focus,textarea[data-v-e1ca9fd1]:focus{border-color:var(--color-primary);outline:3px solid var(--color-primary-overlay)}input[type=text][data-v-e1ca9fd1]:disabled,input[type=number][data-v-e1ca9fd1]:disabled,textarea[data-v-e1ca9fd1]:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted)}textarea[data-v-e1ca9fd1]{resize:vertical;min-height:120px}.field-help[data-v-e1ca9fd1]{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.visibility-setting[data-v-e1ca9fd1]{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.generation-limit-grid[data-v-e1ca9fd1]{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.generation-limit-setting[data-v-e1ca9fd1]{border:1px solid var(--color-border);background:var(--color-surface-subtle);border-radius:9px;grid-template-rows:1fr auto;gap:20px;padding:18px;display:grid}.generation-limit-setting label[data-v-e1ca9fd1]{color:var(--color-text);font-size:14px}.generation-limit-setting p[data-v-e1ca9fd1]{color:var(--color-text-muted);margin:7px 0 0;font-size:13px;line-height:1.5}.generation-limit-control[data-v-e1ca9fd1]{border-top:1px solid var(--color-border);gap:7px;padding-top:14px;display:grid}.generation-limit-control>small[data-v-e1ca9fd1]{color:var(--color-text-muted);font-size:11px;font-weight:400}.generation-limit-input[data-v-e1ca9fd1]{color:var(--color-text-muted);align-items:center;gap:9px;font-size:13px;display:flex}.generation-limit-input input[data-v-e1ca9fd1]{text-align:right;width:96px;padding:8px 10px}.generation-limit-input input[aria-invalid=true][data-v-e1ca9fd1]{border-color:var(--color-danger-border)}.generation-limit-note[data-v-e1ca9fd1]{color:var(--color-text-muted);margin:14px 0 0;font-size:12px;line-height:1.5}.pool-warning[data-v-e1ca9fd1]{border:1px solid var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning);border-radius:8px;margin-top:16px;padding:14px 16px;font-size:13px;line-height:1.5}.pool-warning p[data-v-e1ca9fd1]{margin:6px 0 0}.pool-warning ul[data-v-e1ca9fd1]{gap:4px;margin:10px 0 0;padding-left:20px;display:grid}.visibility-setting>div[data-v-e1ca9fd1]{max-width:520px}.visibility-setting .field-help[data-v-e1ca9fd1]{margin-top:5px}.switch[data-v-e1ca9fd1]{cursor:pointer;flex-shrink:0;align-items:center;gap:9px;font-size:14px;font-weight:600;display:flex}.switch input[data-v-e1ca9fd1]{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.switch-track[data-v-e1ca9fd1]{background:var(--color-progress-track);border-radius:999px;width:42px;height:24px;transition:background .15s;position:relative}.switch-thumb[data-v-e1ca9fd1]{background:var(--color-surface);width:18px;height:18px;box-shadow:0 1px 3px var(--color-shadow-strong);border-radius:50%;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+.switch-track[data-v-e1ca9fd1]{background:var(--color-action)}.switch input:checked+.switch-track .switch-thumb[data-v-e1ca9fd1]{transform:translate(18px)}.switch input:focus-visible+.switch-track[data-v-e1ca9fd1]{outline:3px solid var(--color-primary-overlay);outline-offset:2px}.switch input:disabled+.switch-track[data-v-e1ca9fd1],.switch input:disabled~.switch-state[data-v-e1ca9fd1]{cursor:not-allowed;opacity:.6}.enrollment-field[data-v-e1ca9fd1]{border-top:1px solid var(--color-border);margin-top:24px;padding-top:22px}.message[data-v-e1ca9fd1]{border-radius:7px;margin:0;padding:12px 14px;font-size:14px}.error-message[data-v-e1ca9fd1]{border:1px solid var(--color-danger-border);background:var(--color-danger-soft);color:var(--color-danger)}.success-message[data-v-e1ca9fd1]{border:1px solid var(--color-success-border);background:var(--color-success-soft);color:var(--color-success)}.form-actions[data-v-e1ca9fd1]{justify-content:flex-end;display:flex}.save-button[data-v-e1ca9fd1]{background:var(--color-action);min-width:190px;min-height:42px;color:var(--color-on-accent);border:0;border-radius:6px;padding:10px 17px;font-weight:600}.save-button[data-v-e1ca9fd1]:hover:not(:disabled){background:var(--color-action-hover)}.save-button[data-v-e1ca9fd1]:disabled{cursor:not-allowed;opacity:.55}@media (width<=680px){.settings-card[data-v-e1ca9fd1]{padding:20px}.visibility-setting[data-v-e1ca9fd1]{flex-direction:column;align-items:flex-start;gap:16px}.generation-limit-grid[data-v-e1ca9fd1]{grid-template-columns:1fr}.form-actions[data-v-e1ca9fd1],.save-button[data-v-e1ca9fd1]{width:100%}}
