@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-devanagari-700-normal-O-jipLrW.woff2)format("woff2"),url(/assets/poppins-devanagari-700-normal-fHs-vx92.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-ext-700-normal-cby-RkWa.woff2)format("woff2"),url(/assets/poppins-latin-ext-700-normal-DctTR6Tg.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2"),url(/assets/poppins-latin-700-normal-BVuQR_eA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/poppins-devanagari-800-normal-ACzlZF75.woff2)format("woff2"),url(/assets/poppins-devanagari-800-normal-BLmXVokE.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/poppins-latin-ext-800-normal-CDgOlX-1.woff2)format("woff2"),url(/assets/poppins-latin-ext-800-normal-CIZaRbSk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/poppins-latin-800-normal-Bd8-pIP1.woff2)format("woff2"),url(/assets/poppins-latin-800-normal-YoItoZZV.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-vietnamese-400-normal-DoLa7jNB.woff2)format("woff2"),url(/assets/lexend-vietnamese-400-normal-mPlHoWg5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-ext-400-normal-D38JI5AK.woff2)format("woff2"),url(/assets/lexend-latin-ext-400-normal-D9P7pMo-.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lexend-latin-400-normal-CwRJVcUA.woff2)format("woff2"),url(/assets/lexend-latin-400-normal-CHypAkT3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-vietnamese-500-normal-Bos7Oy9U.woff2)format("woff2"),url(/assets/lexend-vietnamese-500-normal-EFAPmUTE.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-ext-500-normal-Bo17xs96.woff2)format("woff2"),url(/assets/lexend-latin-ext-500-normal-DbCmXT_D.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lexend-latin-500-normal-Dl-X5nog.woff2)format("woff2"),url(/assets/lexend-latin-500-normal-D9x1QWTH.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-vietnamese-600-normal-Cr1ePs6O.woff2)format("woff2"),url(/assets/lexend-vietnamese-600-normal-BxEVPgxw.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-latin-ext-600-normal-hDcqLAH9.woff2)format("woff2"),url(/assets/lexend-latin-ext-600-normal-BXtyp5LP.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/lexend-latin-600-normal-DdvlkEkX.woff2)format("woff2"),url(/assets/lexend-latin-600-normal-DSBzZxpA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-vietnamese-700-normal-BrGlFDtO.woff2)format("woff2"),url(/assets/lexend-vietnamese-700-normal-NEp7hM5T.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-ext-700-normal-CcWyeg4T.woff2)format("woff2"),url(/assets/lexend-latin-ext-700-normal-iR1cPiNX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lexend-latin-700-normal-DqO8md6r.woff2)format("woff2"),url(/assets/lexend-latin-700-normal-DVyJlN8t.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-ext-500-normal-B5KKQIFO.woff2)format("woff2"),url(/assets/sora-latin-ext-500-normal-DwxUJRqY.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sora-latin-500-normal-01eiPEn0.woff2)format("woff2"),url(/assets/sora-latin-500-normal-w58xtEt9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-ext-700-normal-DM0oy5s8.woff2)format("woff2"),url(/assets/sora-latin-ext-700-normal-Oc7uZIYt.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sora-latin-700-normal-9waGdLWo.woff2)format("woff2"),url(/assets/sora-latin-700-normal-BKPfQAnC.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary:#5e7d5a;--color-primary-dark:#4a6446;--color-primary-soft:#e8efe3;--color-primary-text:#4a6446;--color-success:#4caf7d;--color-success-dark:#3d9268;--color-success-soft:#e6f4ec;--color-success-text:#2b7750;--color-maintenance:#3b82f6;--color-maintenance-soft:#e6effe;--color-maintenance-text:#0b4fb8;--color-completed:#c2185b;--color-completed-soft:#fce4ec;--color-progress:#60a5fa;--color-warning:#f59e0b;--color-warning-text:#92400e;--color-warning-soft:#f7ede4;--color-error:#ef4444;--color-error-text:#c62828;--color-error-soft:#fdeaea;--band-low:#ef4444;--band-mid:#f59e0b;--band-high:#eab308;--band-mastery:#4caf7d;--band-low-strong:#d32f2f;--band-mid-strong:#b45309;--band-mastery-strong:#2e7d52;--band-mid-label:#b45309;--band-mastery-label:#2e7d52;--marker-assigned:#6b7280;--marker-mastered:#4caf7d;--marker-maintenance:#3b82f6;--marker-completed:#3d9268;--marker-returned:#f59e0b;--gray-900:#1f2933;--gray-700:#3e4c59;--gray-600:#52606d;--gray-500:#7b8794;--gray-400:#9aa5b1;--gray-300:#cbd2d9;--gray-200:#e4e7eb;--gray-100:#f5f7fa;--gray-50:#fafbfc;--white:#fff;--bg-app:#f4f2ea;--bg-surface:var(--white);--border:#e7e3d7;--worksheet-edit-rest:#cbd2d9;--text:var(--gray-900);--text-muted:#5d6b7a;--text-faint:#7b8794;--surface:var(--bg-surface);--surface-2:#f6f7f9;--surface-muted:#f4f6f9;--bg-muted:var(--gray-100);--text-strong:#1d2939;--bg-atmosphere:radial-gradient(60rem 45rem at 12% -8%, #5e7d5a1a, transparent 60%), radial-gradient(55rem 40rem at 108% 6%, #4caf7d12, transparent 55%);--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--radius-pill:999px;--shadow-sm:0 1px 2px #363c2c0f, 0 1px 3px #363c2c0d;--shadow-md:0 6px 18px #363c2c1a;--sidebar-width:240px;--context-width:320px;--mobile-bar-height:56px;--tabbar-height:64px;--content-wide:1100px;--content-read:760px;--font-body:"Inter", system-ui, -apple-system, Segoe UI, sans-serif;--font-display:"Sora", "Inter", system-ui, -apple-system, Segoe UI, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-sm:14px;--text-md:16px;--text-lg:18px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:36px;font-family:var(--font-body);color:var(--text)}[data-theme=dark]{--gray-900:#e9edf2;--gray-700:#c5cdd6;--gray-600:#aeb8c2;--gray-500:#97a1ad;--gray-400:#6e7a86;--gray-300:#45525f;--gray-200:#2b333c;--gray-100:#161b21;--gray-50:#10141a;--white:#1b222a;--bg-app:#11161c;--bg-surface:#1b222a;--border:#2b333c;--text:#e9edf2;--text-muted:#97a1ad;--text-faint:#6e7a86;--surface-2:#232b35;--surface-muted:#202832;--text-strong:#f2f5f8;--color-warning-soft:#3a2f1d;--color-primary-soft:#1f3320;--color-success-soft:#173a2a;--color-primary-text:#8fb489;--color-success-text:#4fc892;--color-error-text:#f87171;--color-maintenance-soft:#16263f;--color-maintenance-text:#60a5fa;--color-completed:#f472b6;--color-completed-soft:#3a1522;--color-error-soft:#3a1d1d;--color-warning-text:#fbbf24;--band-mid-label:#f59e0b;--band-mastery-label:#4caf7d;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--bg-atmosphere:radial-gradient(60rem 45rem at 12% -8%, #6e916433, transparent 60%), radial-gradient(55rem 40rem at 108% 6%, #4caf7d1f, transparent 55%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--gray-900:#e9edf2;--gray-700:#c5cdd6;--gray-600:#aeb8c2;--gray-500:#97a1ad;--gray-400:#6e7a86;--gray-300:#45525f;--gray-200:#2b333c;--gray-100:#161b21;--gray-50:#10141a;--white:#1b222a;--bg-app:#11161c;--bg-surface:#1b222a;--border:#2b333c;--text:#e9edf2;--text-muted:#97a1ad;--text-faint:#6e7a86;--surface-2:#232b35;--surface-muted:#202832;--text-strong:#f2f5f8;--color-warning-soft:#3a2f1d;--color-primary-soft:#1f3320;--color-success-soft:#173a2a;--color-primary-text:#8fb489;--color-success-text:#4fc892;--color-error-text:#f87171;--color-maintenance-soft:#16263f;--color-maintenance-text:#60a5fa;--color-completed:#f472b6;--color-completed-soft:#3a1522;--color-error-soft:#3a1d1d;--color-warning-text:#fbbf24;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--bg-atmosphere:radial-gradient(60rem 45rem at 12% -8%, #6e916433, transparent 60%), radial-gradient(55rem 40rem at 108% 6%, #4caf7d1f, transparent 55%);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}[data-theme=high-contrast]{--gray-900:#000;--gray-700:#000;--gray-600:#000;--gray-500:#1a1a1a;--gray-400:#000;--gray-300:#000;--gray-200:#000;--gray-100:#fff;--gray-50:#fff;--white:#fff;--bg-app:#fff;--bg-surface:#fff;--border:#000;--text:#000;--text-muted:#1a1a1a;--text-faint:#1a1a1a;--surface-2:#fff;--surface-muted:#fff;--text-strong:#000;--color-warning-soft:#f4e4cf;--color-primary:#14521f;--color-primary-dark:#0d3a16;--color-primary-soft:#d6ead8;--color-primary-text:#0d3a16;--color-success:#0a6b3b;--color-success-dark:#064d2a;--color-success-soft:#d3f0e0;--color-success-text:#064d2a;--color-maintenance:#0b4fb8;--color-maintenance-soft:#d5e4fb;--color-maintenance-text:#0b4fb8;--color-completed:#a01050;--color-completed-soft:#fbdce8;--color-progress:#0b4fb8;--color-warning:#8a4b00;--color-warning-text:#5c3200;--color-error:#b00000;--color-error-text:#b00000;--color-error-soft:#fbd8d8;--band-low:#b00000;--band-mid:#8a4b00;--band-high:#6b5300;--band-mastery:#0a6b3b;--band-mid-label:#8a4b00;--band-mastery-label:#0a6b3b;--marker-assigned:#1a1a1a;--marker-mastered:#0a6b3b;--marker-maintenance:#0b4fb8;--marker-completed:#064d2a;--marker-returned:#8a4b00;--shadow-sm:0 0 0 1px #000;--shadow-md:0 0 0 2px #000;--bg-atmosphere:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media print{:root,:root:not([data-theme=light]),[data-theme=dark],[data-theme=high-contrast]{--gray-900:#1f2933;--gray-700:#3e4c59;--gray-600:#52606d;--gray-500:#7b8794;--gray-400:#9aa5b1;--gray-300:#cbd2d9;--gray-200:#e4e7eb;--gray-100:#f5f7fa;--gray-50:#fafbfc;--white:#fff;--bg-app:#fff;--bg-surface:#fff;--border:#e7e3d7;--text:#1f2933;--text-muted:#5d6b7a;--text-faint:#7b8794;--surface-2:#f6f7f9;--surface-muted:#f4f6f9;--text-strong:#1d2939;--color-warning-soft:#f7ede4;--color-primary:#5e7d5a;--color-primary-dark:#4a6446;--color-primary-soft:#e8efe3;--color-primary-text:#4a6446;--color-success:#4caf7d;--color-success-dark:#3d9268;--color-success-soft:#e6f4ec;--color-success-text:#2b7750;--color-maintenance:#3b82f6;--color-maintenance-soft:#e6effe;--color-maintenance-text:#0b4fb8;--color-completed:#c2185b;--color-completed-soft:#fce4ec;--color-progress:#60a5fa;--color-warning:#f59e0b;--color-warning-text:#92400e;--color-error:#ef4444;--color-error-text:#c62828;--color-error-soft:#fdeaea;--band-low:#ef4444;--band-mid:#f59e0b;--band-high:#eab308;--band-mastery:#4caf7d;--band-mid-label:#b45309;--band-mastery-label:#2e7d52;--marker-assigned:#6b7280;--marker-mastered:#4caf7d;--marker-maintenance:#3b82f6;--marker-completed:#3d9268;--marker-returned:#f59e0b;--shadow-sm:0 1px 2px #363c2c0f, 0 1px 3px #363c2c0d;--shadow-md:0 6px 18px #363c2c1a;--bg-atmosphere:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body,.report-doc,.print-region,.placement-print{color:#1f2933!important;background:#fff!important}.bubble__fill,.graph__legend-swatch,.recharts-surface,.recharts-surface *{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background-color:var(--bg-app);background-image:var(--bg-atmosphere);-webkit-font-smoothing:antialiased;background-repeat:no-repeat;min-height:100vh}html:has(.shell){overflow:hidden}html:has(.modal){overflow:hidden}h1,h2,h3{font-family:var(--font-display)}p{font-size:var(--text-md)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}main:focus-visible{outline:none}::placeholder{color:var(--text-faint);opacity:1}.skip-link{left:var(--space-2);z-index:200;padding:var(--space-2) var(--space-3);background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);font-weight:600;transition:top .15s;position:absolute;top:-60px}.skip-link:focus{top:var(--space-2)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[data-theme=high-contrast] a:focus-visible,[data-theme=high-contrast] button:focus-visible,[data-theme=high-contrast] input:focus-visible,[data-theme=high-contrast] select:focus-visible,[data-theme=high-contrast] textarea:focus-visible,[data-theme=high-contrast] [tabindex]:focus-visible,[data-theme=high-contrast] [role=button]:focus-visible{outline-offset:2px;outline:3px solid #000}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}*{scrollbar-width:thin;scrollbar-color:var(--gray-400) transparent}.shell{grid-template-columns:var(--sidebar-width) 1fr;height:100dvh;display:grid}.shell.has-context{grid-template-columns:var(--sidebar-width) 1fr var(--context-width)}.mobile-bar{display:none}.shell__backdrop{border:none;padding:0;display:none}.sidebar{background:var(--bg-surface);border-right:1px solid var(--border);padding:var(--space-4) var(--space-3);gap:var(--space-4);flex-direction:column;min-height:0;display:flex;overflow:hidden}.sidebar__brand{align-items:center;gap:var(--space-2);padding:0 var(--space-2);font-weight:700;font-size:var(--text-xl);display:flex}.logo{align-items:center;gap:var(--space-2);display:inline-flex}.logo__mark{color:var(--color-primary);flex:none;display:block}.logo__wordmark{letter-spacing:-.02em;color:var(--color-primary);font-weight:700;line-height:1}.sidebar__nav{gap:var(--space-1);background:linear-gradient(var(--bg-surface) 30%, transparent), linear-gradient(transparent, var(--bg-surface) 70%) 0 100%, linear-gradient(to bottom, color-mix(in srgb, var(--border) 60%, transparent), transparent), linear-gradient(to top, color-mix(in srgb, var(--border) 60%, transparent), transparent) 0 100%;background-repeat:no-repeat;background-color:var(--bg-surface);background-size:100% 40px,100% 40px,100% 10px,100% 10px;background-attachment:local,local,scroll,scroll;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.sidebar__section{gap:var(--space-1);flex-direction:column;display:flex}.sidebar__section+.sidebar__section{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.sidebar__section--footer{border-top:1px solid var(--border);padding-top:var(--space-3)}.sidebar__section-label{padding:0 var(--space-3);margin-bottom:var(--space-1);font-size:var(--text-md);color:var(--text);font-weight:700}.nav-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--gray-700);font-weight:500;font-size:var(--text-sm);display:flex}.nav-item:hover{background:var(--gray-100)}.nav-item.active{background:var(--color-primary-soft);color:var(--color-primary-text)}.nav-item__icon{justify-content:center;align-items:center;width:20px;display:flex}svg.lucide{vertical-align:middle;flex:none}.sidebar__user{border-top:1px solid var(--border);padding-top:var(--space-3);gap:var(--space-2);flex-direction:column;flex:none;display:flex}.sidebar__user-name{font-weight:600;font-size:var(--text-sm)}.sidebar__user-role{font-size:var(--text-sm);color:var(--text-muted);text-transform:capitalize}.main{padding:var(--space-5) var(--space-6);padding-bottom:calc(var(--space-5) + 60px + var(--space-4));position:relative;overflow-y:auto}.page-title{margin:0 0 var(--space-4);font-size:var(--text-2xl);font-weight:700}.tri-edition{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:inline-flex}.tri-edition select{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);font-size:var(--text-sm)}.placeholder-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm);color:var(--text-muted)}.empty-state{text-align:center;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);background:var(--bg-surface);border:1px dashed var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex}.empty-state__icon{margin-bottom:var(--space-1);color:var(--text-muted);justify-content:center;line-height:1;display:flex}.empty-state__title{font-family:var(--font-display);font-size:var(--text-md);color:var(--text);margin:0;font-weight:700}.empty-state__message{max-width:42ch;margin:0}.empty-state__action{margin-top:var(--space-3)}.empty-state__actions{margin-top:var(--space-3);justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}@media (width<=480px){.empty-state__actions{flex-direction:column;align-items:stretch;width:100%}.empty-state__actions .btn{width:100%}}.skeleton{background:var(--gray-200);background-image:linear-gradient(90deg, var(--gray-200) 0%, var(--gray-100) 50%, var(--gray-200) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.3s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.skeleton-card__avatar{border-radius:50%;width:72px;height:72px}.skeleton-card__line{width:60%;height:12px}.skeleton-card__line--wide{width:80%;height:14px}.skeleton-card__line--narrow{width:40%}.skeleton-list{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-row{gap:var(--space-2);padding:var(--space-3);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex}.skeleton-row__line{height:12px}.skeleton-row__line--wide{width:70%}.skeleton-row__line--narrow{width:45%}.skeleton-text{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-text__line{width:100%;height:12px}.skeleton-text__line:last-child{width:60%}.context-panel{background:var(--bg-surface);border-left:1px solid var(--border);padding:var(--space-4);overflow-y:auto}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);border:1px solid #0000;min-height:44px;font-weight:600;transition:background-color .12s,background-image .12s,box-shadow .12s,border-color .12s,color .12s,transform 60ms;display:inline-flex}.btn--primary{background-color:var(--color-primary);background-image:linear-gradient(180deg, var(--color-primary), var(--color-primary-dark));color:var(--white);box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff24}.btn--primary:hover{background-image:linear-gradient(180deg, var(--color-primary-dark), var(--color-primary-dark));box-shadow:var(--shadow-md), inset 0 1px 0 #ffffff24}.btn--primary:active{box-shadow:var(--shadow-sm);transform:translateY(1px)}.btn--primary:disabled,.btn--primary[aria-disabled=true],.btn--primary[aria-disabled=true]:hover,.btn--primary[aria-disabled=true]:active{background-image:none;background-color:var(--gray-300);color:var(--white);box-shadow:none;cursor:not-allowed;transform:none}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed}.btn:disabled:not(.btn--primary),.btn[aria-disabled=true]:not(.btn--primary){opacity:.5}.btn--ghost{background:var(--bg-surface);color:var(--gray-700);border-color:var(--border)}.btn--ghost:hover{border-color:var(--color-primary);color:var(--color-primary-text)}.btn--ghost:active{transform:translateY(1px)}.btn--icon{padding:var(--space-2);min-width:44px}.btn--block{width:100%}.login{justify-content:center;align-items:center;gap:var(--space-4);min-height:100vh;padding:var(--space-6) var(--space-4);flex-direction:column;display:flex;position:relative;overflow:hidden}.login:before,.login:after{content:"";filter:blur(8px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.login:before{background:radial-gradient(circle,#5e7d5a2e,#0000 62%);width:38rem;height:38rem;top:-16rem;left:-12rem}.login:after{background:radial-gradient(circle,#4caf7d29,#0000 62%);width:34rem;height:34rem;bottom:-14rem;right:-10rem}.login>*{z-index:1;position:relative}.login__hero{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;display:flex}.login__hero .logo{gap:var(--space-3);flex-direction:column}.login__hero .logo__mark{box-sizing:border-box;background:linear-gradient(155deg, #fff, var(--color-primary-soft));border-radius:50%;width:92px;height:92px;padding:18px;box-shadow:0 12px 28px #4a64462e,inset 0 0 0 1px #5e7d5a29}.login__hero .logo__wordmark{font-family:var(--font-display,inherit);font-size:var(--text-4xl)}.login__tagline{color:var(--text-muted);font-size:var(--text-sm);margin:0}.login__features{justify-content:center;gap:var(--space-3);margin:var(--space-3) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.login__feature{align-items:center;gap:var(--space-1);width:92px;font-size:var(--text-sm);color:var(--gray-700);flex-direction:column;font-weight:600;display:flex}.login__feature-icon{border-radius:var(--radius-pill);background:var(--bg-surface);width:44px;height:44px;color:var(--color-primary);box-shadow:var(--shadow-sm);border:1px solid var(--border);place-items:center;display:inline-grid}.login__feature-label{line-height:1.2}.login__card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border);width:100%;max-width:408px;padding:var(--space-5) var(--space-5) var(--space-4);animation:.4s both login-rise;position:relative;overflow:hidden;box-shadow:0 1px 2px #363c2c0d,0 18px 48px #363c2c24}.login__card:before{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-success));height:4px;position:absolute;inset:0 0 auto}@keyframes login-rise{0%{opacity:0;transform:translateY(12px)}}.login__card-head{margin-bottom:var(--space-4)}.login__card-title{font-family:var(--font-display,inherit);font-size:var(--text-xl);margin:0;font-weight:700}.login__card-sub{color:var(--text-muted);font-size:var(--text-sm);margin:var(--space-1) 0 0}.login__submit{margin-top:var(--space-3);justify-content:center;align-items:center;gap:var(--space-2);font-size:var(--text-md);background:linear-gradient(180deg, var(--color-primary), var(--color-primary-dark));letter-spacing:.01em;min-height:50px;display:inline-flex}.login__secure{justify-content:center;align-items:center;gap:var(--space-1);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);font-weight:600;display:flex}.login__secure svg{color:var(--color-success-text)}.login__footer{color:var(--text-muted);font-size:var(--text-sm);margin:0}.login__card .field input{border-radius:var(--radius-md);background:var(--bg-app);border-color:var(--border);min-height:50px;transition:background .12s,border-color .12s,box-shadow .12s}.login__card .field input:focus{background:var(--bg-surface);border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft);outline:none}.login__card .input-affix__icon{left:calc(var(--space-3) + 2px)}.input-affix{align-items:center;display:flex;position:relative}.input-affix__icon{left:var(--space-3);color:var(--text-muted);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-affix input{width:100%;padding-left:calc(var(--space-3) + 26px)}.input-affix:has(.input-affix__toggle) input{padding-right:calc(var(--space-2) + 44px)}.input-affix__toggle{right:var(--space-2);border-radius:var(--radius-pill);width:44px;height:44px;color:var(--text-muted);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute}.input-affix__toggle:hover{color:var(--color-primary)}.search-input input{font-family:inherit;font-size:var(--text-md);padding-block:var(--space-2);padding-right:var(--space-3);border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);flex:1;min-height:48px}.search-input input:focus{outline:2px solid var(--color-primary-soft);border-color:var(--color-primary)}.field{gap:var(--space-1);margin-bottom:var(--space-3);flex-direction:column;display:flex}.field label{font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=search],.field input[type=number],.field input[type=date],.field input[type=datetime-local],.field select,.field textarea,.goal-edit input,.goal-edit textarea,.settings-field select,.settings-field input[type=number],.add-goal__field select,.add-goal__field input[type=text],.add-goal__field input[type=number],.manage-trials__filters input,.manage-trials__filters select,.manage-trials__reason input,.behavior-incident__void-form input,.behavior-tab__filters select,.behavior-tab__filters input[type=date]{font-family:inherit;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);min-height:44px;color:var(--text)}.field input[type=text],.field input[type=number],.field input[type=date],.field input[type=datetime-local],.field select,.field textarea,.add-goal__field select,.add-goal__field input[type=text]{width:100%}.field textarea,.goal-edit textarea,.goal-edit input,.add-goal__text{resize:vertical}.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--color-error)}.field .input-affix input{padding-left:calc(var(--space-3) + 26px)}.field .input-affix:has(.input-affix__toggle) input{padding-right:calc(var(--space-3) + 26px)}.login__row{margin-bottom:var(--space-4);margin-top:var(--space-1);font-size:var(--text-sm);justify-content:space-between;align-items:flex-start;display:flex}.login__remember{align-items:center;gap:var(--space-2);color:var(--gray-700);cursor:pointer;min-height:44px;display:flex}.login__remember input{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.login__forgot{min-height:44px;color:var(--color-primary-text);align-items:center;font-weight:600;display:inline-flex}.login__forgot:hover{text-decoration:underline}.login__error{background:var(--color-error-soft);color:var(--color-error);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);margin-bottom:var(--space-3)}.login__lock-countdown{margin-top:var(--space-1);font-size:var(--text-sm);opacity:.85;font-weight:600;display:block}.login__notice{background:var(--color-primary-soft);color:var(--color-primary)}.login__success{background:var(--color-success-soft);color:var(--color-success-text);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);margin-bottom:var(--space-3);font-weight:600}.login__reset-done{align-items:center;gap:var(--space-2);display:flex}@media (width<=900px){.login{padding:var(--space-5) var(--space-3)}}@media (width<=480px){.login{padding:var(--space-4) var(--space-3)}.login__card{padding:var(--space-4) var(--space-3) var(--space-3)}}.page-header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.page-header .page-title{margin:0}.page-header .btn{flex-shrink:0}.toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.toolbar__sort{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--gray-700);font-weight:600;display:flex}.toolbar__sort select{font-family:inherit;font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);min-height:44px}.list-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.list-head__title{font-family:var(--font-display,inherit);font-size:var(--text-lg);margin:0;font-weight:600}.view-toggle{background:var(--bg-app);border:1px solid var(--border);border-radius:var(--radius-pill);gap:2px;padding:3px;display:inline-flex}.view-toggle button{border-radius:var(--radius-pill);width:44px;height:40px;color:var(--text-muted);background:0 0;border:none;place-items:center;display:inline-grid}.view-toggle button.is-active{background:var(--bg-surface);color:var(--color-primary-text);box-shadow:var(--shadow-sm)}.toolbar__search-wrap{flex:1}.student-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.student-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-4) var(--space-3);text-align:center;align-items:center;gap:var(--space-2);color:var(--text);flex-direction:column;transition:box-shadow .12s,transform .12s;display:flex}.student-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.student-card--static{cursor:default}.student-card--static:hover{box-shadow:var(--shadow-sm);transform:none}.student-card__name{font-weight:600;font-size:var(--text-md)}.pill,.tag,.count,.role-pill,.skill-status,.tri-badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);white-space:nowrap;background:var(--pill-bg,var(--gray-100));color:var(--pill-fg,var(--gray-700));font-weight:600;display:inline-flex}.count{font-weight:400}.count strong{font-weight:700}.count--active{--pill-bg:var(--color-success-soft);--pill-fg:var(--color-success-text)}.count--maintenance{--pill-bg:var(--color-maintenance-soft);--pill-fg:var(--color-maintenance)}.avatar{background:var(--color-primary-soft);color:var(--color-primary-text);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:inline-grid;overflow:hidden}.avatar__img{object-fit:cover;width:100%;height:100%}.avatar-ring{border-radius:50%;flex-shrink:0;place-items:center;display:inline-grid}.avatar-ring__inner{background:var(--bg-surface);border-radius:50%;place-items:center;padding:2px;display:inline-grid}.student-card__goals{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.student-card__footer{flex-direction:column;align-items:center;gap:2px;display:flex}.student-card__sortkey{font-size:var(--text-sm);color:var(--text-strong);font-weight:600}.student-card__meta{font-size:var(--text-sm);color:var(--text-muted);text-align:center;text-wrap:balance;font-weight:600}.toolbar__archived{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;font-weight:600;display:inline-flex}.student-group{margin-bottom:var(--space-5)}.student-group__title{font-size:var(--text-md);margin:0 0 var(--space-2);font-weight:600}.student-group__hint{font-size:var(--text-sm);margin:0 0 var(--space-3)}.student-card-wrap{gap:var(--space-2);flex-direction:column;display:flex}.student-card-wrap--archived{opacity:.72}.student-card-wrap__action{align-self:center}.roster-table__wrap{margin-bottom:var(--space-4)}.roster-table th{white-space:nowrap}.roster-table__sort{align-items:center;gap:var(--space-1);font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;display:inline-flex}.roster-table__sort.is-active{color:var(--text-strong)}.roster-table__name{color:var(--color-primary-text);font-weight:600;text-decoration:none}.roster-table__name:hover{text-decoration:underline}.muted{color:var(--text-muted)}.error-text{color:var(--color-error)}.form-page{max-width:560px}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-5)}.form .req{color:var(--color-error)}.field__error{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-error);font-weight:600}.field__warning{margin:0 0 var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-warning-text);background:var(--color-warning-soft);border-radius:var(--radius-sm);font-weight:600}.modal__note{margin-top:var(--space-2);font-size:var(--text-sm)}.field-row{gap:var(--space-3);display:flex}.field-row .field{flex:1;min-width:0}.photo-field{align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.photo-field__preview{border:2px dashed var(--gray-300);background:var(--gray-100);border-radius:50%;flex-shrink:0;place-items:center;width:96px;height:96px;padding:0;display:grid;overflow:hidden}.photo-field__preview:hover{border-color:var(--color-primary)}.photo-field__placeholder{color:var(--text-muted);font-size:var(--text-sm);font-weight:600}.photo-field__meta{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.photo-field__hint{font-size:var(--text-sm);margin:0}.cropper{z-index:300;padding:var(--space-4);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cropper__panel{background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:420px;overflow:hidden;box-shadow:0 20px 60px #00000059}.cropper__panel--wide{max-width:640px}.cropper__panel--wide .cropper__stage{height:60vh;max-height:440px}.cropper__title{padding:var(--space-4) var(--space-4) 0;font-size:var(--text-lg);margin:0;font-weight:600}.cropper__stage{background:var(--gray-900,#1a1a1a);width:100%;height:320px;position:relative}.cropper__stage:focus-visible{outline:3px solid var(--color-primary);outline-offset:-3px}.cropper__controls{gap:var(--space-2);padding:var(--space-4);flex-direction:column;display:flex}.cropper__controls input[type=range]{width:100%}.cropper__zoom-label{font-weight:600;font-size:var(--text-sm)}.cropper__hint{font-size:var(--text-sm);margin:0}.cropper__actions{justify-content:flex-end;gap:var(--space-2);padding:0 var(--space-4) var(--space-4);display:flex}@media (width<=480px){.cropper__stage{height:260px}}.modal{z-index:300;padding:var(--space-4);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal__panel{background:var(--bg-surface);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:480px;max-height:min(90vh,720px);display:flex;overflow:hidden;box-shadow:0 20px 60px #00000059}.modal__head{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-2);display:flex}.modal__title{font-size:var(--text-lg);margin:0}.modal__close{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--gray-600,#555);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.modal__close:hover{background:var(--gray-100,#f1f1f1)}.modal__body{gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.modal__actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--gray-200,#eee);display:flex}.modal__actions .wizard-back{margin-inline-end:auto}@media (width<=900px){.modal{align-items:flex-end;padding:0}.modal__panel{border-bottom-right-radius:0;border-bottom-left-radius:0;max-width:none;max-height:90dvh}}.wizard-steps{padding:0 var(--space-4) var(--space-2)}.wizard-steps__list{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.wizard-steps__step{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:inline-flex}.wizard-steps__marker{background:var(--gray-100,#f1f1f1);width:24px;height:24px;color:var(--text-muted);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.wizard-steps__step.is-current{color:var(--color-primary-text);font-weight:600}.wizard-steps__step.is-current .wizard-steps__marker{background:var(--color-primary);color:#fff}.wizard-steps__step.is-done .wizard-steps__marker{background:var(--color-primary-soft);color:var(--color-primary-text)}.user-list__note{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;text-align:right;flex:0 auto;min-width:0;overflow:hidden}.skill-status-change{padding:2px var(--space-2);font-size:var(--text-sm)}.override-current{font-size:var(--text-sm);color:var(--gray-700);align-items:center;gap:var(--space-2);margin:0;display:flex}.override-choices{gap:var(--space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.override-choices legend{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--gray-700);padding:0;font-weight:600}.override-choice{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-2);border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;display:flex}.override-choice:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.override-consequence{font-size:var(--text-sm);color:var(--gray-700);margin:0;line-height:1.5}.override-success{font-size:var(--text-sm);margin:0;line-height:1.5}.override-error{font-size:var(--text-sm);color:var(--color-error);margin:0}.info-trigger{border-radius:var(--radius-pill);width:18px;height:18px;color:var(--text-muted);cursor:pointer;vertical-align:middle;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .12s,background .12s;display:inline-flex;position:relative}.info-trigger:before{content:"";width:44px;height:44px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.info-trigger:hover{color:var(--color-primary);background:var(--gray-200)}.info-modal__panel{max-width:360px}.info-modal__body{line-height:1.55}.info-modal__body p{margin:0}.status-help{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.status-help__item{margin:0}.status-help__term{align-items:center;gap:var(--space-2);flex-wrap:wrap;font-weight:700;display:flex}.status-help__band{font-weight:400;font-size:var(--text-sm)}.status-help__def{margin:var(--space-1) 0 0;color:var(--text);font-size:var(--text-sm)}.status-help__dot{background:var(--text-muted);border-radius:50%;flex:none;width:10px;height:10px}.status-help__dot--mastered{background:var(--band-mastery)}.status-help__dot--emerging{background:var(--band-high)}.status-help__dot--not-demo{background:var(--band-low)}.status-help__dot--not-assessed{background:var(--text-muted)}.status-help__note{margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--text);font-size:var(--text-sm);line-height:1.4}.skill-picker{border:1px solid var(--gray-200,#eee);border-radius:var(--radius-sm);max-height:320px;margin:0;padding:0;list-style:none;overflow-y:auto}.skill-picker__item{width:100%;padding:var(--space-2) var(--space-3);border:none;border-bottom:1px solid var(--gray-100,#f1f1f1);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;flex-direction:column;gap:2px;display:flex}.assign-skill__count{font-size:var(--text-sm);align-self:center;margin-right:auto}.modal__panel--narrow{max-width:380px}.assign-skill__confirm-list{margin:var(--space-2) 0 0;padding-left:var(--space-4)}.assign-skill__confirm-list li{margin-bottom:var(--space-1)}.skill-picker li:last-child .skill-picker__item{border-bottom:none}.skill-picker__item:hover{background:var(--gray-50,#fafafa)}.skill-picker__item.is-selected{background:var(--color-primary-soft)}.skill-picker__item--check{align-items:center;gap:var(--space-3);flex-direction:row;min-height:44px}.skill-picker__check{border:2px solid var(--gray-400);border-radius:var(--radius-sm);background:var(--white);width:20px;height:20px;color:var(--white);flex:none;justify-content:center;align-items:center;display:inline-flex}.skill-picker__item--check.is-selected .skill-picker__check{background:var(--color-primary);border-color:var(--color-primary)}.skill-picker__text{flex-direction:column;gap:2px;min-width:0;display:flex}.assign-skill__groups{border:1px solid var(--gray-200,#eee);border-radius:var(--radius-sm);max-height:320px;overflow-y:auto}.assign-skill__groups .skill-picker{border:none;border-radius:0;max-height:none;overflow:visible}.skill-picker__group-label{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);background:var(--gray-50,#fafafa);margin:0;font-weight:700;position:sticky;top:0}.skill-picker__empty{padding:var(--space-3);font-size:var(--text-sm);margin:0}.skill-picker__name{font-weight:600;font-size:var(--text-sm)}.skill-picker__meta{font-size:var(--text-sm)}.status-choice{gap:var(--space-2);border:none;margin:0;padding:0;display:flex}.status-choice__legend{font-weight:600;font-size:var(--text-sm);margin-bottom:var(--space-2);padding:0}.status-choice__option{padding:var(--space-2) var(--space-3);border:1px solid var(--gray-300);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;flex:1;gap:2px;display:flex}.status-choice__option.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.status-choice__option input{opacity:0;pointer-events:none;position:absolute}.status-choice__label{font-weight:600;font-size:var(--text-sm)}.status-choice__hint{font-size:var(--text-sm)}@media (width<=480px){.status-choice{flex-direction:column}}.form__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.profile{max-width:var(--content-wide)}.profile__header{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.profile__id{flex:1}.profile__header .page-title{margin:0}.profile__grade{margin:var(--space-1) 0 0;color:var(--text-muted)}.stat-row{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.stat{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-3);align-items:center;gap:var(--space-1);border-top:3px solid var(--gray-300);flex-direction:column;display:flex}.stat__value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:var(--text-3xl);font-weight:700}.stat__label{font-size:var(--text-sm);color:var(--text-muted)}.stat--mastered{border-top-color:var(--color-success)}.stat--active{border-top-color:var(--band-high)}.stat--maintenance{border-top-color:var(--color-maintenance)}.stat--inactive{border-top-color:var(--gray-500)}.profile__header-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.profile__sections{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.tabs--folder{background:var(--gray-200);border-bottom:1px solid var(--border);gap:0;margin:0}.tabs--folder .tab{min-height:48px;padding:var(--space-3) var(--space-4);border:none;border-right:1px solid var(--border);white-space:nowrap;color:var(--text-muted);background:0 0;border-radius:0;flex:none;margin:0}.tabs--folder .tab:not(.tab--active):hover{color:var(--text);background:#ffffff73}.tabs--folder .tab.tab--active{color:var(--color-primary-text);background:var(--bg-surface);border-bottom:1px solid var(--bg-surface);box-shadow:inset 0 3px 0 0 var(--color-primary);margin-bottom:-1px;font-weight:700}.profile__sections--underline .tabs--folder{gap:var(--space-1);padding:var(--space-2) var(--space-4) 0;background:0 0}.profile__sections--underline .tabs--folder .tab{min-height:44px;padding:var(--space-2) var(--space-3);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px}.profile__sections--underline .tabs--folder .tab:not(.tab--active):hover{color:var(--text);background:0 0}.profile__sections--underline .tabs--folder .tab.tab--active{color:var(--color-primary-text);border-bottom-color:var(--color-primary);box-shadow:none;background:0 0}.profile__panel{background:var(--bg-surface);padding:var(--space-4);min-height:140px}.profile__panel .panel{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.tab:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px;border-radius:var(--radius-sm)}.tabs--folder .tab:focus-visible{outline-offset:-3px;border-radius:0}.panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-4)}.panel__title{margin:0 0 var(--space-3);font-size:var(--text-lg);font-weight:700}.domain-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.domain__head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:var(--text-sm);display:flex}.domain__name{font-weight:600}.domain__count{align-items:center;gap:var(--space-2);flex:none;display:inline-flex}.domain__head-right{align-items:center;gap:var(--space-3);flex:none;display:inline-flex}.bar{background:var(--gray-200);border-radius:var(--radius-pill);height:8px;overflow:hidden}.bar__fill{background:var(--color-success);border-radius:var(--radius-pill);height:100%;transition:width .2s}.skill-progress__group .bar__fill{background:var(--color-progress)}.skill-progress__group+.skill-progress__group{margin-top:var(--space-4)}.skill-progress__domain{margin:0 0 var(--space-2);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.skill-progress__tag{margin-left:var(--space-2);vertical-align:middle}.stat--filter{cursor:pointer;width:100%;font:inherit;color:inherit;text-align:center;transition:box-shadow .15s,border-color .15s,transform 50ms}.stat--filter:hover{box-shadow:var(--shadow-md)}.stat--filter:active{transform:translateY(1px)}.stat--filter:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.stat--filter.is-active{border-color:var(--color-primary);box-shadow:inset 0 0 0 2px var(--color-primary), var(--shadow-sm);background:var(--color-primary-soft,var(--bg-surface))}.overview-filter{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--bg-muted,var(--gray-100));border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.overview-suggest{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-primary-soft);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.overview-suggest__text{gap:2px;min-width:0;display:grid}.overview-suggest__lead{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-primary-text);flex-wrap:wrap;margin:0;display:flex}.overview-suggest__sample{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;overflow:hidden}@media (width<=480px){.overview-suggest__sample{white-space:normal}}.overview-baseline{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--border);font-size:var(--text-sm)}.goal-filters{margin-bottom:var(--space-3);max-width:100%;overflow-x:auto}.goal-filters .segmented__btn{white-space:nowrap;font-size:var(--text-sm)}.next-iep{gap:var(--space-4);grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}@media (width<=900px){.next-iep{grid-template-columns:1fr}}.next-iep__rail{gap:var(--space-3);display:grid}.next-iep__steps{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.next-iep__step{gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;align-items:flex-start;display:flex}.next-iep__step.is-active{background:var(--color-primary-soft)}.next-iep__num{border:1.5px solid var(--border);width:22px;height:22px;font-size:var(--text-sm);color:var(--text-muted);background:var(--bg-surface);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;font-weight:600;display:inline-flex}.next-iep__step.is-active .next-iep__num{border-color:var(--color-primary);color:var(--color-primary-text)}.next-iep__step-label{font-weight:600;font-size:var(--text-sm);display:block}.next-iep__step.is-active .next-iep__step-label{color:var(--color-primary-text)}.next-iep__step-hint{font-size:var(--text-sm);line-height:1.4;display:block}.next-iep__rail .draft-panel{margin:0}.next-iep__triennial{border:1px dashed var(--border);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);font-size:var(--text-sm);justify-items:start;display:grid}.next-iep__triennial p{margin:0}.overview-filter__label{text-transform:capitalize}.overview-filter__clear{padding:var(--space-1) var(--space-2);min-height:44px;color:var(--color-primary);font:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;font-weight:600}.overview-filter__clear:hover{text-decoration:underline}.overview-filter__clear:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.domain--interactive{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.domain--interactive.is-open{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.domain__open{width:100%;padding:var(--space-3);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;min-height:44px;margin:0;transition:background .15s;display:block}.domain__open:hover{background:var(--gray-100)}.domain__open:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.domain__row-actions{align-items:center;gap:var(--space-2) var(--space-3);padding:0 var(--space-3) var(--space-3);flex-wrap:wrap;display:flex}.streak-pip{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--gray-100);border:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:center;font-weight:600;display:inline-flex}.streak-pip__unit{font-weight:400}.streak-pip--near{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-text)}.drawer__stat-value--near{color:var(--color-success-text)}.reports__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.reports__head .page-title{margin:0}.reports__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.tabs{gap:var(--space-1);flex-wrap:wrap;display:flex}.tabs--underline{border-bottom:1px solid var(--border);margin-bottom:var(--space-4)}.tab{appearance:none;padding:var(--space-2) var(--space-3);min-height:44px;font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:600}.tab:hover{color:var(--text)}.tab--active{color:var(--color-primary-text);border-bottom-color:var(--color-primary)}.sectionsel{margin-bottom:var(--space-4);position:relative}.sectionsel__label{margin-bottom:var(--space-1);font-size:var(--text-sm);color:var(--text-muted);font-weight:600;display:block}.sectionsel__button{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;height:46px;padding:0 var(--space-3);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:var(--text-sm);cursor:pointer;font-weight:600;display:flex}.sectionsel__button:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.sectionsel__current{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sectionsel__chevron{color:var(--text-muted);flex:none;transition:transform .16s}.sectionsel__chevron.is-open{transform:rotate(180deg)}.sectionsel__menu{z-index:30;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);margin:0;padding:6px;list-style:none;animation:.16s sectionsel-in;position:absolute;top:calc(100% + 6px);left:0;right:0}@keyframes sectionsel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sectionsel__option{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:none;font-weight:600;display:flex}.sectionsel__option:hover{background:var(--gray-100)}.sectionsel__option.is-selected{background:var(--color-primary-soft)}.sectionsel__option:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.sectionsel__check{width:18px;color:var(--color-primary);flex:none;align-items:center;display:inline-flex}@media (width<=900px){.profile__sections{box-shadow:none;background:0 0;border:none;border-radius:0;overflow:visible}}.reports__body{gap:var(--space-4);flex-direction:column;display:flex}.report-skill+.report-skill{border-top:1px solid var(--border);padding-top:var(--space-3)}.report-skill__head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.report-skill__head--detail{margin:var(--space-3) 0}.report-skill__name{font-weight:600}.domain__breakdown{margin-top:var(--space-1);font-size:var(--text-sm)}.report-picker{gap:var(--space-1);margin-bottom:var(--space-2);flex-direction:column;display:flex}.report-picker__label{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}legend.report-picker__label{margin-bottom:var(--space-2)}.report-picker select{padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;background:var(--bg-surface)}.panel__subtitle{margin:calc(-1 * var(--space-2)) 0 var(--space-3);font-size:var(--text-sm)}.skill-multiselect{margin:0 0 var(--space-3);border:0;min-width:0;padding:0}.skill-multiselect__list{margin:var(--space-1) 0 0;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);gap:2px;max-height:220px;list-style:none;display:grid;overflow-y:auto}.skill-multiselect__option{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);display:flex}.skill-multiselect__option:hover{background:var(--color-primary-soft)}.skill-multiselect__option input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer;flex:none}.skill-chart-card+.skill-chart-card{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.report-range{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.report-range__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.report-range__custom{gap:var(--space-3);flex-wrap:wrap;display:flex}.report-range__field{gap:var(--space-1);flex-direction:column;display:flex}.report-range__field input{min-height:44px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;background:var(--bg-surface)}.reports__skill-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.reports__skill-actions .btn{align-items:center;gap:var(--space-2);display:inline-flex}.skill-multiselect__quick{align-items:center;gap:var(--space-2);margin:var(--space-1) 0 var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.skill-multiselect__hint{font-size:var(--text-sm)}.skill-multiselect__badge{margin-left:var(--space-2);vertical-align:middle}.tag--edited{--pill-bg:#fef3c7;--pill-fg:#92400e}.goal-text{white-space:pre-wrap}.goal-objectives{padding-left:var(--space-5);gap:var(--space-2);margin:0;display:grid}.goal-objective{white-space:pre-wrap}.goal-actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.goal-note{margin-top:var(--space-2);font-size:var(--text-sm)}.goal-edit{gap:var(--space-3);flex-direction:column;display:flex}.goal-edit__field{gap:var(--space-1);flex-direction:column;display:flex}.prompt-allowance-edit{gap:var(--space-3);flex-wrap:wrap;display:flex}.prompt-allowance-edit__field{gap:var(--space-1);flex-direction:column;font-weight:600;display:flex}.prompt-allowance-edit__field input{max-width:8rem}@media (width<=480px){.prompt-allowance-edit{flex-direction:column}}.pl-disclaimer{font-size:var(--text-sm);margin-top:0}.settings-section{margin-bottom:var(--space-6)}.settings-section:last-child{margin-bottom:0}.settings-section__head{margin-bottom:var(--space-3)}.settings-section__title{font-size:var(--text-lg);margin:0;font-weight:700}.settings-section__subtitle{margin:var(--space-1) 0 0;font-size:var(--text-sm)}.settings-admin-warning{margin:0 0 var(--space-4);padding:var(--space-3);font-size:var(--text-sm);color:var(--color-warning-text);background:var(--color-warning-soft);border-inline-start:4px solid var(--color-warning);border-radius:var(--radius-sm)}.settings-admin-warning strong{font-weight:700}.settings-mail-warning{margin:0 0 var(--space-4);padding:var(--space-3);font-size:var(--text-sm);color:var(--color-warning-text);background:var(--color-warning-soft);border-inline-start:4px solid var(--color-warning);border-radius:var(--radius-sm);line-height:1.5}.settings-mail-warning strong{margin-bottom:var(--space-1);font-weight:700;display:block}.settings-mail-warning code{font-size:var(--text-sm);overflow-wrap:anywhere}.settings-form{gap:var(--space-4);flex-direction:column;display:flex}.settings-field{gap:var(--space-1);flex-direction:column;display:flex}.settings-field__label{font-weight:600}.settings-field__hint{font-size:var(--text-sm)}.settings-field__consequence{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-left:3px solid var(--color-primary);background:var(--bg-surface);border-radius:var(--radius-sm)}.settings-field select{align-self:flex-start;min-width:200px}.settings-field input[type=number]{align-self:flex-start;width:6rem}.settings-field__status{min-height:1.25em;font-size:var(--text-sm);color:var(--text-muted)}.settings-field--row{align-items:flex-start;gap:var(--space-2);flex-direction:row}.settings-field--row input{margin-top:3px}.settings-field--toggle{cursor:pointer;align-items:center;min-height:44px}.settings-field--toggle input{width:20px;height:20px;margin-top:0}.main__bar{justify-content:flex-end;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.field input[type=search]{min-height:48px;font-size:var(--text-md)}.week-label{flex-direction:column;flex-shrink:0;align-items:flex-end;line-height:1.1;display:inline-flex}.week-label__caption{font-size:var(--text-sm);color:var(--text-muted)}.week-label__range{font-size:var(--text-sm);color:var(--text);font-weight:600}.tabbar{display:none}.site-switcher{position:relative}.site-switcher__button{align-items:center;gap:var(--space-2);appearance:none;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);min-height:44px;padding:0 var(--space-3);color:var(--gray-700);font-size:var(--text-sm);cursor:pointer;font-weight:600;line-height:1;display:inline-flex}.site-switcher__button:hover{border-color:var(--color-primary);color:var(--color-primary-text)}.site-switcher__name{text-overflow:ellipsis;white-space:nowrap;max-width:20ch;overflow:hidden}.site-switcher__panel{right:0;top:calc(100% + var(--space-1));background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);width:260px;max-width:90vw;max-height:70vh;box-shadow:var(--shadow-md);z-index:50;position:absolute;overflow-y:auto}.site-switcher__head{gap:var(--space-1);padding:var(--space-3);border-bottom:1px solid var(--border);flex-direction:column;display:flex}.site-switcher__title{font-weight:700;font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.site-switcher__current{font-weight:700;font-size:var(--text-md);color:var(--text);overflow-wrap:anywhere}.site-switcher__list{padding:var(--space-1);margin:0;list-style:none}.site-switcher__empty{padding:var(--space-3);font-size:var(--text-sm);margin:0}.site-switcher__error{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-error);border-bottom:1px solid var(--border);margin:0}.site-switcher__item{justify-content:space-between;align-items:center;gap:var(--space-2);appearance:none;border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);min-height:44px;font-size:var(--text-md);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.site-switcher__item-name{overflow-wrap:anywhere;min-width:0}.site-switcher__item:hover{background:var(--gray-100)}.site-switcher__item.is-active{color:var(--color-primary-text);font-weight:700}.site-switcher__foot{border-top:1px solid var(--border);padding:var(--space-1)}.site-switcher__manage{align-items:center;gap:var(--space-2);appearance:none;border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);min-height:44px;font-size:var(--text-sm);color:var(--gray-700);cursor:pointer;background:0 0;border:none;display:flex}.site-switcher__manage:hover{background:var(--gray-100);color:var(--color-primary-text)}.site-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.site-list__row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex}.site-list__name{align-items:center;gap:var(--space-2);color:var(--text);font-weight:600;display:inline-flex}.site-filters{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.site-filters__archived{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.site-list__row.is-archived{opacity:.7}.site-list__badge{font-size:var(--text-sm);color:var(--color-primary-text);background:var(--color-primary-soft);border-radius:var(--radius-pill);padding:2px var(--space-2);font-weight:700}.site-list__badge--muted{color:var(--text-muted);background:var(--gray-100)}.site-list__actions{align-items:center;gap:var(--space-2);flex:none;display:inline-flex}@media (width<=900px){.site-switcher__panel{width:min(280px, calc(100vw - var(--space-3) * 2))}}@media (width<=480px){.site-list__row{flex-direction:column;align-items:flex-start}.site-switcher__name{max-width:14ch}}.user-filters{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.user-filters__search{flex:240px;margin:0}.user-filters__role,.user-filters__sort{flex:none;min-width:160px;margin:0}.user-filters__archived{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.user-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.user-list__row{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex}.user-list__row.is-archived{opacity:.7}.user-list__main{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:inline-flex}.user-list__avatar{border-radius:var(--radius-pill);background:var(--color-primary-soft);width:40px;height:40px;color:var(--color-primary-text);font-weight:700;font-size:var(--text-md);flex:none;place-items:center;display:inline-grid}.user-list__id{flex-direction:column;min-width:0;display:flex}.user-list__name{align-items:center;gap:var(--space-2);color:var(--text);min-width:0;font-weight:600;display:inline-flex}.user-list__name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.user-list__email{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-list__badge{font-size:var(--text-sm);color:var(--color-primary-text);background:var(--color-primary-soft);border-radius:var(--radius-pill);padding:2px var(--space-2);flex:none;font-weight:700}.user-list__badge--muted{color:var(--text-muted);background:var(--gray-100)}.user-list__actions{align-items:center;gap:var(--space-2);flex:none;justify-content:flex-end;display:inline-flex}.role-pill{padding:2px var(--space-3);--pill-fg:var(--text-muted);flex:none;font-weight:700}.role-pill--administrator,.role-pill--super_admin{--pill-bg:var(--color-primary-soft);--pill-fg:var(--color-primary-text)}.user-list__meta{gap:var(--space-4);flex:none;display:inline-flex}.user-list__meta-item{flex-direction:column;min-width:0;display:flex}.user-list__meta-label{font-size:var(--text-sm)}.user-list__meta-value{font-size:var(--text-sm);color:var(--text);white-space:nowrap;font-weight:600}.user-activity__list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.user-activity__row{padding:var(--space-2) 0;border-top:1px solid var(--border);font-size:var(--text-sm);flex-direction:column;gap:2px;display:flex}.user-activity__desc{color:var(--text);font-weight:600}.user-activity__meta{font-size:var(--text-sm)}.assign-list{margin:0 0 var(--space-3);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.assign-list__row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex}.assign-list__name{align-items:center;gap:var(--space-2);font-weight:600;display:inline-flex}.assign-add{align-items:flex-end}.assign-add .field{flex:auto;margin:0}.assign-add-wrap{gap:var(--space-2);flex-direction:column;display:flex}.assign-add-search{margin:0}.assign-add__hint{font-size:var(--text-sm);margin:0}.assign-cols{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}.assign-panel{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.assign-panel__head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.assign-panel__title{font-size:var(--text-lg);margin:0}.assign-check,.assign-selectall{align-items:center;gap:var(--space-2);cursor:pointer;min-height:44px;font-weight:600;display:flex}.assign-selectall{min-height:44px;font-size:var(--text-sm);font-weight:500}.assign-check input[type=checkbox],.assign-selectall input[type=checkbox]{cursor:pointer;flex:none;width:20px;height:20px}.assign-check{width:100%}.assign-list--scroll{max-height:260px;margin-bottom:0;overflow-y:auto}.assign-list--scroll .assign-list__row{padding:0 var(--space-3)}.assign-shortcuts{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,transparent);flex-direction:column;display:flex}.assign-shortcut{align-items:flex-end;gap:var(--space-2)}.assign-shortcut .field{flex:auto;min-width:0;margin:0}.assign-chips{gap:var(--space-2);flex-wrap:wrap;max-height:140px;display:flex;overflow-y:auto}.assign-chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill,999px);background:var(--color-primary-soft,#5e7d5a26);font-size:var(--text-sm);display:inline-flex}.assign-chip__x{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin:-8px -6px -8px 0;padding:0;display:inline-flex;position:relative}.assign-chip__x:before{content:"";position:absolute;inset:-6px}.assign-chip__x:hover{background:#0000001f}@media (width<=900px){.assign-cols{grid-template-columns:1fr}}.user-pager{justify-content:center;align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.user-pager__status{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.password-field__tools{align-items:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.password-field__tools .btn.is-done{color:var(--color-success-text)}.password-field__strength{font-size:var(--text-sm);margin-left:auto;font-weight:600}.password-field__strength--weak{color:var(--band-low-strong)}.password-field__strength--ok{color:var(--color-warning-text)}.password-field__strength--strong{color:var(--color-success-text)}@media (width<=720px){.user-list__row{flex-wrap:wrap}.user-list__actions{justify-content:flex-end;width:100%}.user-list__note{text-align:left;order:2;width:100%}.user-list__meta{gap:var(--space-3);flex-wrap:wrap;order:3;width:100%}.user-list__meta-item{align-items:baseline;gap:var(--space-1);flex-direction:row}}@media (width<=480px){.password-field__strength{margin-left:0}.password-field__tools .btn{flex:auto;justify-content:center}.user-pager{gap:var(--space-2)}}.notif{position:relative}.notif__bell{appearance:none;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);width:44px;height:44px;color:var(--gray-700);cursor:pointer;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.notif__badge{border-radius:var(--radius-pill);background:var(--color-error);color:#fff;min-width:18px;height:18px;font-size:var(--text-sm);justify-content:center;align-items:center;padding:0 4px;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px}.notif__panel{right:0;top:calc(100% + var(--space-1));background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);width:320px;max-width:90vw;max-height:70vh;box-shadow:var(--shadow-md);z-index:50;position:absolute;overflow-y:auto}.notif__head{padding:var(--space-3);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.notif__title{font-size:var(--text-md);margin:0;font-weight:700}.notif__markall{appearance:none;color:var(--color-primary-text);font:inherit;font-size:var(--text-sm);min-height:44px;padding:0 var(--space-2);cursor:pointer;background:0 0;border:none}.notif__empty{padding:var(--space-4);text-align:center}.notif__list{margin:0;padding:0;list-style:none}.notif__item{border-bottom:1px solid var(--border)}.notif__item:last-child{border-bottom:none}.notif__item--unread{background:var(--color-primary-soft)}.notif__item-btn{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-3);appearance:none;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.notif__item-btn:hover{background:var(--gray-100)}.notif__item-btn:focus-visible{background:var(--gray-100);outline:2px solid var(--color-primary);outline-offset:-2px}.notif__item--unread .notif__item-btn:hover{background:0 0}.notif__body{flex-direction:column;flex:1;gap:2px;display:flex}.notif__msg,.notif__when{font-size:var(--text-sm)}.notif__dot{border-radius:var(--radius-pill);background:var(--color-primary);flex-shrink:0;width:8px;height:8px;margin-top:6px}.notif-list{margin:0;padding:0;list-style:none}.notif-row{align-items:stretch;gap:var(--space-1);border-bottom:1px solid var(--border);display:flex}.notif-row:last-child{border-bottom:none}.notif-row--unread{background:var(--color-primary-soft)}.notif-row__link,.notif-row__static{align-items:flex-start;gap:var(--space-2);min-width:0;padding:var(--space-3);text-align:left;color:inherit;flex:1;text-decoration:none;display:flex}.notif-row__link{appearance:none;font:inherit;cursor:pointer;background:0 0;border:none}.notif-row__link:hover{background:var(--gray-100)}.notif-row--unread .notif-row__link:hover{background:0 0}.notif-row__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.notif-row__icon{color:var(--text-muted);flex:none;align-items:center;display:flex}.notif-row__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-row__msg{font-size:var(--text-sm)}.notif-row--unread .notif-row__msg{font-weight:600}.notif-row__when{font-size:var(--text-sm)}.notif-row__dot{border-radius:var(--radius-pill);background:var(--color-primary);flex:none;width:8px;height:8px;margin-top:6px}.notif-row__dismiss{min-width:44px;min-height:44px;padding:var(--space-1);cursor:pointer;font-size:var(--text-lg);color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex:none;justify-content:center;align-self:flex-start;align-items:center;line-height:1;display:inline-flex}.notif-row__dismiss:hover{color:var(--color-error);background:var(--color-error-soft)}.notif-row--card{padding:var(--space-3);border-bottom:1px solid var(--border);display:block}.notif-row--card:last-child{border-bottom:none}.notif-row--card.notif-row--unread{background:var(--color-primary-soft)}.notif__item--card{cursor:default;padding:var(--space-3);display:block}.notif__item--card:hover{background:0 0}.notif__item--card.notif__item--unread,.notif__item--card.notif__item--unread:hover{background:var(--color-primary-soft)}.notif-card__head{align-items:flex-start;gap:var(--space-2);display:flex}.notif-card__msg{font-size:var(--text-sm);flex:1;font-weight:600}.notif-card__options{margin:var(--space-2) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.notif-card__pick{align-items:flex-start;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;display:flex}.notif-card__pick input[type=checkbox]{flex-shrink:0;margin-top:3px}.notif-card__pick--added{cursor:default;background:var(--gray-100);color:var(--text-muted)}.notif-card__added-icon{color:var(--color-success,var(--color-primary));flex-shrink:0;align-items:center;margin-top:2px;display:flex}.notif-card__option-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-card__option-name{font-size:var(--text-sm);font-weight:600}.notif-card__option-meta{font-size:var(--text-sm)}.notif-card__added-tag{font-size:var(--text-sm);flex-shrink:0;align-self:center}.notif-card__empty,.notif-card__error{font-size:var(--text-sm);margin:var(--space-2) 0 0}.notif-card__actions{gap:var(--space-2);margin-top:var(--space-3);display:flex}.app-loading{min-height:100vh;color:var(--text-muted);opacity:0;place-items:center;animation:.3s .2s forwards app-loading-in;display:grid}.app-loading .logo__mark{color:var(--color-primary);animation:1.4s ease-in-out infinite app-loading-pulse}@keyframes app-loading-in{to{opacity:1}}@keyframes app-loading-pulse{0%,to{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}@media (prefers-reduced-motion:reduce){.app-loading .logo__mark{opacity:1;animation:none}}.boot-unreachable__card{text-align:center;align-items:center;gap:var(--space-3);width:min(24rem,100%);padding:var(--space-6) var(--space-5);background-color:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.boot-unreachable__title{font-size:var(--text-xl);color:var(--text);margin:0;font-weight:700}.boot-unreachable__message{font-size:var(--text-md);color:var(--text-muted);margin:0;line-height:1.5}.boot-unreachable__hint{font-size:var(--text-sm);color:var(--text-muted);margin:0}.boot-unreachable__card .btn{margin-top:var(--space-2)}@media (width<=480px){.boot-unreachable__card{padding:var(--space-5) var(--space-4)}}.app-error{min-height:100vh;padding:var(--space-5);place-items:center;display:grid}.app-error__card{text-align:center;align-items:center;gap:var(--space-3);width:min(28rem,100%);padding:var(--space-6) var(--space-5);background-color:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.app-error__title{font-size:var(--text-xl);color:var(--text);margin:0;font-weight:700}.app-error__body{font-size:var(--text-md);color:var(--text-muted);margin:0;line-height:1.5}.app-error__actions{justify-content:center;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=480px){.app-error__card{padding:var(--space-5) var(--space-4)}}:root{--bubble-size:80px}.bubble{width:var(--bubble-size);height:var(--bubble-size);border:2px solid var(--gray-300);background:var(--gray-100);border-radius:50%;flex:none;place-items:center;padding:0;transition:transform .15s,box-shadow .15s;display:grid;position:relative;overflow:hidden}.bubble--clickable{cursor:pointer}.bubble--clickable:hover{border-color:var(--gray-500)}.bubble--selected{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--bg-surface), 0 0 0 6px var(--color-primary), 0 6px 14px #0000002e;z-index:1;transform:scale(1.05)}.bubble--maintenance{border-color:var(--color-maintenance)}.bubble__badge{z-index:2;background:var(--color-maintenance);width:20px;height:20px;color:var(--white);font-size:var(--text-sm);border:2px solid var(--white);border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:-2px;right:-2px}.bubble__fill{background:var(--gray-300);height:0;transition:height .25s;position:absolute;bottom:0;left:0;right:0}.bubble__fill[data-band=low]{background:var(--band-low)}.bubble__fill[data-band=mid]{background:var(--band-mid)}.bubble__fill[data-band=high]{background:var(--band-high)}.bubble__fill[data-band=mastery]{background:var(--band-mastery)}.bubble__fill[data-band=none]{background:var(--gray-200)}.bubble__content{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0 6px;display:flex;position:relative}.bubble__name{font-size:var(--text-sm);color:var(--gray-900);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.1;display:-webkit-box;overflow:hidden}.bubble__count{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--gray-900);font-weight:700}.bubble__target{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.drawer__head{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.drawer__code{font-size:var(--text-sm);color:var(--text-muted);font-weight:700}.drawer__name{font-size:var(--text-lg);margin:2px 0 0;font-weight:700}.drawer__close{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.drawer__close:hover{background:var(--gray-100)}.drawer__tags{gap:var(--space-2);margin:var(--space-2) 0 var(--space-3);flex-wrap:wrap;display:flex}.drawer__stats{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.drawer__stat{padding:var(--space-2);background:var(--gray-100);border-radius:var(--radius-sm);flex-direction:column;align-items:center;display:flex}.drawer__stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:var(--text-xl);font-weight:700}.drawer__stat-label{text-align:center;font-size:var(--text-sm);color:var(--text-muted);align-self:stretch}.drawer__stat-label .info-trigger{margin-left:2px}.drawer__mastery-why{align-items:flex-start;gap:var(--space-2);margin:var(--space-3) 0 0;padding:var(--space-2) var(--space-3);background:var(--color-success-soft);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text);line-height:1.45;display:flex}.drawer__mastery-why-icon{color:var(--color-success-text);flex:none;margin-top:1px}.graph{margin:0}.graph__status{background:var(--gray-100);border:1px dashed var(--gray-300);border-radius:var(--radius-sm);height:96px;font-size:var(--text-sm);place-items:center;margin:0;display:grid}.graph__caption{font-size:var(--text-sm);margin:0 0 var(--space-2)}.graph__legend{gap:var(--space-2) var(--space-3);margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.graph__legend-item{align-items:center;gap:6px;display:inline-flex}.graph__legend-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.graph__legend-swatch--gap{background:color-mix(in srgb, var(--gray-500) 22%, transparent);border:1px solid var(--border);border-radius:2px;width:14px;height:10px}.graph__legend-line{border-top:2px solid var(--color-primary);flex-shrink:0;width:18px;height:0}.graph__legend-line--series{border-top-color:var(--color-primary);border-top-style:solid}.graph__legend-dot{box-sizing:border-box;border-radius:50%;flex-shrink:0;width:11px;height:11px}.graph__legend-dot--qualifying{background:var(--color-primary);border:1px solid var(--color-primary)}.graph__legend-dot--partial{background:var(--surface,#fff);border:2px solid var(--color-error);width:8px;height:8px}.graph__toolbar{margin-bottom:var(--space-2);justify-content:flex-end;display:flex}.graph__table-toggle{min-height:32px;font-size:var(--text-sm);color:var(--color-primary-text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:inline-flex}.graph__table-toggle:hover{background:var(--color-primary-soft)}.graph__table-toggle[aria-pressed=true]{background:var(--color-primary-soft);border-color:var(--color-primary)}@media (width<=600px){.graph__table-toggle{min-height:44px}}.graph__table-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);overflow-x:auto}.graph__table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.graph__table th,.graph__table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 10px}.graph__table thead th{color:var(--text-muted);background:var(--gray-100);font-weight:700}.graph__table tbody tr:last-child th,.graph__table tbody tr:last-child td{border-bottom:0}.graph__table tbody th{font-weight:600}.graph__print-table{display:none}@media print{.graph__print-table{margin-top:var(--space-2);break-inside:avoid;display:block}.graph__table-wrap--interactive{display:none!important}}.graph-tooltip{background:var(--surface,#fff);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);font-size:var(--text-sm);line-height:1.4;box-shadow:0 4px 12px #0000001a}.graph-tooltip__date{margin-bottom:2px;font-weight:600}.graph-tooltip__acc{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:var(--text-md);color:var(--color-primary-text);font-weight:700}.graph-tooltip__counts{font-variant-numeric:tabular-nums;color:var(--text-muted)}.graph .recharts-cartesian-axis-tick-value{font-family:var(--font-display);font-variant-numeric:tabular-nums}.graph-tooltip__maint{color:var(--color-maintenance);margin-top:2px}.drawer__section{border-top:1px solid var(--border);padding-top:var(--space-3);margin-top:var(--space-3)}.drawer__section-title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--gray-700);margin:0 0 var(--space-2);font-weight:700}.trial-history{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.trial-history__item{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.trial-history__when{color:var(--text-muted);font-size:var(--text-sm);margin-left:auto}.trial-history__dot{border-radius:50%;flex:none;width:8px;height:8px}.trial-history__item--correct .trial-history__dot{background:var(--color-success)}.trial-history__item--incorrect .trial-history__dot{background:var(--color-error)}.trial-buttons{gap:var(--space-3);display:flex}.trial-btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);color:#fff;font-size:var(--text-lg);padding:var(--space-3) var(--space-5);border:none;min-width:140px;min-height:64px;font-weight:700;display:inline-flex}.trial-btn--correct{background:var(--band-mastery-strong)}.trial-btn--correct:hover{background:#276749}.trial-btn--incorrect{background:var(--band-low-strong)}.trial-btn--incorrect:hover{filter:brightness(.95)}.trial-btn:disabled,.trial-btn[aria-disabled=true]{cursor:not-allowed}.trial-btn--recording{opacity:.55}.value-entry{align-items:center;gap:var(--space-3);display:flex}.value-entry__target{font-size:var(--text-md);white-space:nowrap;font-weight:600}.value-entry__inputs{align-items:center;gap:var(--space-1);display:inline-flex}.value-entry__inputs input[type=number]{width:4rem;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;text-align:center;background:var(--bg-surface)}.value-entry__sep{font-weight:700}.value-entry__step{border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);min-width:40px;min-height:44px;font-size:var(--text-lg);cursor:pointer;font-weight:700;line-height:1}.value-entry__step:disabled{cursor:not-allowed;opacity:.55}.value-entry__log{min-width:96px;min-height:64px}.value-entry__preview{font-size:var(--text-sm);white-space:nowrap;min-width:8ch;font-weight:600}@media (width<=480px){.value-entry{flex-wrap:wrap}.value-entry__log{flex:1 0 100%}.value-entry__preview{text-align:center;flex:1 0 100%}}.freq-entry{align-items:stretch;gap:var(--space-2);flex-direction:column;min-width:180px;display:flex}.freq-entry__target{font-size:var(--text-sm);text-align:center;white-space:nowrap;font-weight:600}.freq-entry__counter{justify-content:center;align-items:center;min-height:56px;display:flex;position:relative}.freq-entry__count,.freq-entry__edit{font-size:var(--text-4xl);font-variant-numeric:tabular-nums;text-align:center;color:var(--color-primary);font-weight:700;line-height:1}.freq-entry__count{min-width:3ch;min-height:44px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none}.freq-entry__count:disabled{cursor:not-allowed;opacity:.7}.freq-entry__edit{width:4ch;padding:var(--space-1);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--bg-surface)}.freq-entry__minus{border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);min-width:44px;min-height:44px;font-size:var(--text-lg);cursor:pointer;font-weight:700;line-height:1;position:absolute;top:50%;left:0;transform:translateY(-50%)}.freq-entry__minus:disabled{cursor:not-allowed;opacity:.4}.freq-entry__plus{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;width:100%;min-height:72px;font-size:var(--text-4xl);cursor:pointer;border:none;font-weight:700;line-height:1}.freq-entry__plus:hover{background:var(--color-primary-dark)}.freq-entry__plus:disabled{cursor:not-allowed;opacity:.55}.freq-entry__log{width:100%;min-height:44px}.timer-entry{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.timer-entry__target{font-size:var(--text-sm);white-space:nowrap;font-weight:600}.timer-entry__start{min-width:140px;min-height:64px}.timer-entry__elapsed{font-size:var(--text-3xl);font-variant-numeric:tabular-nums;text-align:center;min-width:4.5ch;color:var(--color-primary);font-weight:700;line-height:1}.timer-entry__elapsed--sm{font-size:var(--text-2xl)}.timer-entry__actions{align-items:center;gap:var(--space-2);display:inline-flex}.timer-entry__actions .btn{min-width:84px;min-height:64px}.timer-entry__result{align-items:center;gap:var(--space-2);display:inline-flex}.timer-entry__elapsed-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.timer-entry__met{align-items:center;gap:var(--space-1);font-size:var(--text-sm);white-space:nowrap;font-weight:700;display:inline-flex}.timer-entry__met--yes{color:var(--color-success)}.timer-entry__met--no{color:var(--color-error)}.timer-entry__actions--review{gap:var(--space-4)}.timer-entry__discard{min-width:0;color:var(--text-muted)}.timer-entry__discard:hover:not(:disabled){color:var(--color-error);text-decoration:underline}.timer-entry__judge-label{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-success);white-space:nowrap;font-weight:700;display:inline-flex}.timer-entry__restart{min-width:0;color:var(--text-muted)}.timer-entry__restart:hover:not(:disabled){color:var(--color-primary);text-decoration:underline}@media (width<=480px){.timer-entry{justify-content:space-between}.timer-entry__actions{flex:1 0 100%}.timer-entry__actions .btn{flex:1}.timer-entry__actions--review .timer-entry__discard{flex:none}.timer-entry__start{flex:1 0 100%}}.task-entry{gap:var(--space-3);flex-direction:column;min-width:min(420px,100%);display:flex}.task-entry__empty{font-size:var(--text-sm);margin:0}.task-entry__legend{font-size:var(--text-sm);color:var(--text-muted);margin:0;line-height:1.5;display:none}.task-entry__legend-item{white-space:nowrap}.task-entry__legend-sep{color:var(--border)}.task-entry__steps{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.task-entry__step{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.task-entry__step-name{align-items:center;gap:var(--space-2);font-size:var(--text-md);flex:40%;min-width:0;font-weight:500;display:inline-flex}.task-entry__step-num{background:var(--gray-100);width:22px;height:22px;color:var(--text-muted);font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.task-entry__scores{gap:var(--space-1);flex:none;display:inline-flex}.task-entry__score{align-items:center;gap:var(--space-1);border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);min-height:44px;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;font-weight:600;display:inline-flex}.task-entry__score-short{font-weight:800;display:none}.task-entry__score:disabled{cursor:not-allowed;opacity:.55}.task-entry__score--independent.is-selected{background:var(--band-mastery-strong);border-color:var(--band-mastery-strong);color:#fff}.task-entry__score--prompted.is-selected{background:var(--band-mid-strong);border-color:var(--band-mid-strong);color:#fff}.task-entry__score--incorrect.is-selected{background:var(--band-low-strong);border-color:var(--band-low-strong);color:#fff}.task-entry__score--not_attempted.is-selected{background:var(--gray-200);border-color:var(--gray-300);color:var(--text-muted)}.task-entry__footer{justify-content:flex-end;align-items:center;gap:var(--space-3);display:flex}.task-entry__progress{font-size:var(--text-sm)}.task-entry__save{min-height:48px}@media (width<=600px){.task-entry{min-width:100%}.task-entry__legend{display:block}.task-entry__score-label{display:none}.task-entry__score-short{display:inline}.task-entry__scores{gap:var(--space-2)}.task-entry__score{min-width:44px;padding-inline:var(--space-2);justify-content:center}}.step-analysis{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.step-analysis__row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(6rem,1.2fr) 2fr auto;display:grid}.step-analysis__name{font-size:var(--text-sm);align-items:center;gap:var(--space-2);min-width:0;font-weight:500;display:inline-flex}.step-analysis__flag{font-size:var(--text-sm);color:var(--band-low);background:color-mix(in srgb, var(--band-low) 14%, transparent);border-radius:var(--radius-sm);padding:0 var(--space-2);white-space:nowrap;font-weight:700}.step-analysis__bar{border-radius:var(--radius-pill,999px);background:var(--gray-100);height:12px;display:block;overflow:hidden}.step-analysis__fill{border-radius:inherit;min-width:2px;height:100%;transition:width .2s;display:block}.step-analysis__fill[data-band=low]{background:var(--band-low)}.step-analysis__fill[data-band=mid]{background:var(--band-mid)}.step-analysis__fill[data-band=high]{background:var(--band-high)}.step-analysis__fill[data-band=mastery]{background:var(--band-mastery)}.step-analysis__fill[data-band=none]{background:var(--gray-200)}.step-analysis__value{font-size:var(--text-sm);white-space:nowrap;text-align:right;font-weight:600}.step-analysis__count{font-weight:400}@media (width<=480px){.step-analysis__row{row-gap:var(--space-1);grid-template-columns:1fr auto;grid-template-areas:"name value""bar bar"}.step-analysis__name{grid-area:name}.step-analysis__value{grid-area:value}.step-analysis__bar{grid-area:bar}}.add-goal__steps{gap:var(--space-2);flex-direction:column;display:flex}.add-goal__step-row{align-items:center;gap:var(--space-2);display:flex}.add-goal__step-row input[type=text]{flex:1;min-width:0}.add-goal__step-num{background:var(--gray-100);width:22px;height:22px;color:var(--text-muted);font-size:var(--text-sm);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.add-goal__step-actions{gap:var(--space-1);flex:none;display:inline-flex}.add-goal__step-remove{color:var(--color-error)}.add-goal__step-add{align-self:flex-start}.class-selector{gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.class-chip{--accent:var(--color-primary);gap:var(--space-2);min-width:172px;max-width:240px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-left:5px solid var(--accent);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text);box-shadow:var(--shadow-sm);flex-direction:column;flex:none;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.class-chip:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.class-chip:not(.is-active){background:var(--surface-muted);border-left-width:3px}.class-chip.is-active{opacity:1;border-color:var(--color-primary);background:var(--color-primary-soft);box-shadow:0 0 0 3px var(--color-primary), var(--shadow-sm);cursor:default}.class-chip.is-active:hover{box-shadow:0 0 0 3px var(--color-primary), var(--shadow-sm);transform:none}.class-chip.is-active .class-chip__name{color:var(--color-primary-text)}.class-chip__badge{padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--color-primary);color:#fff;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;align-self:flex-start;align-items:center;gap:4px;font-weight:700;display:inline-flex}.class-chip__body{flex-direction:column;gap:2px;min-width:0;display:flex}.class-chip__name{font-family:var(--font-display,inherit);font-weight:600;font-size:var(--text-md);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.class-chip__count{font-size:var(--text-sm)}@media (width<=480px){.class-selector{gap:var(--space-1);padding:var(--space-1) 0 var(--space-2);margin-bottom:var(--space-2)}.class-chip{flex:1 1 calc(50% - var(--space-1));align-items:center;gap:var(--space-2);min-width:0;max-width:none;padding:6px var(--space-2);border-radius:var(--radius-sm);border-left-width:4px;flex-direction:row}.class-chip__name{font-size:var(--text-sm)}.class-chip.is-active{box-shadow:0 0 0 2px var(--color-primary), var(--shadow-sm)}.class-chip__badge{flex:none;gap:0;padding:3px;font-size:0}}.goal-list{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.collect-key-help{margin-bottom:var(--space-2);justify-content:flex-end;display:flex}@media (width<=480px){.collect-key-help{justify-content:flex-start}}.collect-key-help .info-trigger{width:44px;height:44px}.goal-row{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:box-shadow .12s}.goal-row--maintenance{background:var(--color-maintenance-soft);box-shadow:var(--shadow-sm), inset 4px 0 0 var(--color-maintenance)}.goal-row.is-open{box-shadow:var(--shadow-sm), inset 4px 0 0 var(--color-primary)}.goal-row--maintenance.is-open{box-shadow:var(--shadow-sm), inset 4px 0 0 var(--color-maintenance)}.goal-row__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);row-gap:var(--space-2);flex-wrap:wrap;display:flex;position:relative}.goal-row--saved{animation:1.8s ease-out goal-row-saved-tint}.goal-row__saved{top:var(--space-2);right:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--band-mastery-strong);color:#fff;font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-md);transform-origin:100%;align-items:center;gap:6px;font-weight:700;animation:1.8s ease-out forwards goal-row-saved-pop;display:inline-flex;position:absolute}@keyframes goal-row-saved-pop{0%{opacity:0;transform:scale(.6)}12%{opacity:1;transform:scale(1.08)}22%{transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes goal-row-saved-tint{0%{background:color-mix(in srgb, var(--band-mastery-strong) 22%, var(--bg-surface))}to{background:var(--bg-surface)}}.goal-row--maintenance.goal-row--saved{animation:none}@media (prefers-reduced-motion:reduce){.goal-row--saved{animation:none}.goal-row__saved{animation:1.8s ease-out forwards goal-row-saved-fade}@keyframes goal-row-saved-fade{0%,85%{opacity:1}to{opacity:0}}}.goal-row__main{align-items:flex-start;gap:var(--space-1);flex-direction:column;flex:16rem;min-width:0;display:flex}.goal-row__toggle,.goal-row__meta-toggle{font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;padding:0}@media (width<=900px){.goal-row__toggle,.goal-row__meta-toggle{min-height:44px}}.goal-row__name{align-items:center;gap:var(--space-1);row-gap:var(--space-1);flex-wrap:wrap;min-width:0;display:inline-flex}.goal-row__toggle{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-md);font-weight:600;display:inline-flex}.goal-row__toggle:hover{color:var(--color-primary-text)}.script-hint{flex:none;align-items:center;display:inline-flex;position:relative}.script-hint__trigger{min-width:44px;min-height:44px;padding:var(--space-1);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.script-hint__trigger:hover,.script-hint__trigger:focus-visible{color:var(--color-primary-text);background:var(--gray-100)}.script-hint__backdrop{background:0 0;border:none;padding:0;display:none}.script-hint__bubble{top:calc(100% + var(--space-1));z-index:30;width:max-content;max-width:min(260px, calc(100vw - var(--space-4)));padding:var(--space-2) var(--space-3);background:var(--gray-100);border:1px solid var(--gray-300);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:var(--text);font-size:var(--text-sm);text-align:left;white-space:pre-line;font-weight:400;line-height:1.4;position:absolute;left:0}.script-hint__bubble--right{left:auto;right:0}.script-hint__close{top:var(--space-1);right:var(--space-1);border-radius:var(--radius-pill);min-width:44px;min-height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:none;position:absolute}.script-hint__close:hover,.script-hint__close:focus-visible{color:var(--text);background:var(--gray-200)}@media (width<=480px){.script-hint__backdrop{z-index:60;background:#14181073;width:100%;height:100%;display:block;position:fixed;inset:0}.script-hint__bubble,.script-hint__bubble--right{z-index:61;width:auto;max-width:none;max-height:70vh;padding:var(--space-5) var(--space-4) calc(var(--space-5) + env(safe-area-inset-bottom,0px));border-radius:var(--radius-lg) var(--radius-lg) 0 0;font-size:var(--text-md);border:none;line-height:1.5;position:fixed;inset:auto 0 0;overflow-y:auto}.script-hint__close{top:var(--space-2);right:var(--space-2);display:inline-flex}.script-hint__body{padding-right:var(--space-5);display:block}}.kit-hint .script-hint__bubble{font-size:var(--text-md)}.kit-hint__num{margin-right:var(--space-2);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-text);font-size:var(--text-sm);white-space:nowrap;padding:2px 8px;font-weight:600;display:inline-block}.goal-row__tag{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:#fff;border-radius:var(--radius-sm);background:#0b4fb8;padding:1px 6px;font-weight:700}.goal-row__tag--custom{background:var(--color-primary)}.goal-row__prompt{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border:1px solid var(--color-warning);border-radius:var(--radius-pill);background:var(--color-warning-soft);color:var(--color-warning-text);font-size:var(--text-sm);flex:none;font-weight:600;display:inline-flex}.goal-row__flashcards{justify-content:center;align-items:center;gap:var(--space-1);min-width:44px;min-height:44px;padding:2px var(--space-2);border:1px solid var(--color-primary);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-text);font-size:var(--text-sm);cursor:pointer;flex:none;font-weight:600;display:inline-flex}.goal-row__flashcards:hover,.goal-row__flashcards:focus-visible{background:var(--color-primary);color:var(--white)}.flashcards__skill{color:var(--text-muted);font-weight:400}.flashcards__body{align-items:stretch}.flashcards__status{align-items:center;gap:var(--space-3);padding:var(--space-4) 0;text-align:center;flex-direction:column;display:flex}.flashcards__progress{text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.flashcards__card{height:260px;padding:var(--space-3);border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-app,var(--bg-surface));justify-content:center;align-items:center;display:flex}.flashcards__word{text-align:center;justify-content:center;align-items:center;width:100%;height:100%;font-weight:700;display:flex}.flashcards__listen{padding:0 var(--space-4);text-align:center;font-size:var(--text-md);margin:0}.flashcards__image{object-fit:contain;width:220px;height:220px}.flashcards__question{text-align:center;font-size:var(--text-lg);color:var(--text-strong,#1d2939);font-weight:600}.flashcards .trial-buttons{justify-content:center}.flashcards__say{text-align:center;font-size:var(--text-lg);color:var(--text-muted,#667085);font-weight:600}.flashcards__say-text{color:var(--text-strong,#1d2939)}.flashcards__say-embed{margin-top:var(--space-1);display:block}.flashcards__hint{text-align:center;font-size:var(--text-sm)}.flashcards__results{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;text-align:center;flex-direction:column;display:flex}.flashcards__score{flex-direction:column;align-items:center;display:flex}.flashcards__score-acc{font-size:var(--text-4xl);color:var(--color-primary-text);font-weight:700;line-height:1.1}.flashcards__score-count{font-size:var(--text-md);color:var(--text-muted)}.flashcards__controls{gap:var(--space-2);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.flashcards__nav-btn,.flashcards__skip{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:0 0;font-weight:600;display:inline-flex}.flashcards__nav-btn:hover,.flashcards__skip:hover{color:var(--text);border-color:var(--text-muted)}.flashcards__finished{align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-3);text-align:center;flex-direction:column;display:flex}.flashcards__finished-title{font-size:var(--text-3xl);color:var(--color-primary);margin:0;font-weight:800}.flashcards__finished-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}@media (width<=480px){.flashcards__card{height:200px}.flashcards__image{width:160px;height:160px}}.flashcards__panel--media{max-width:560px;max-height:94vh}.flashcards__card--media{height:auto;min-height:0;max-height:min(60vh,520px);padding:var(--space-2)}.flashcards__card--media .flashcards__image{width:auto;height:auto;max-height:min(60vh,520px)}.flashcards__panel--text{max-width:560px;max-height:94vh}.flashcards__card--text{height:auto;min-height:120px;max-height:min(48vh,360px);padding:var(--space-4);align-items:flex-start;overflow-y:auto}.flashcards__passage{text-align:left;width:100%;font-size:var(--text-lg);color:var(--text-strong,#1d2939);margin:0;line-height:1.5}.flashcards__assessor{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.flashcards__answer{font-size:var(--text-md);color:var(--text-muted,#667085);margin:0}.flashcards__answer span{color:var(--text-strong,#1d2939);font-weight:700}.flashcards__reveal{font-size:var(--text-md);color:var(--text-muted,#667085);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius-md,8px);padding:var(--space-2) var(--space-4);cursor:pointer;background:0 0}.flashcards__reveal:hover{color:var(--text-strong,#1d2939);border-color:var(--text-muted,#667085)}.flashcards__zoom{cursor:zoom-in;background:0 0;border:none;justify-content:center;align-items:center;max-width:100%;min-height:0;max-height:100%;padding:0;display:flex;position:relative}.flashcards__zoom-badge{bottom:var(--space-2);right:var(--space-2);border-radius:var(--radius-md);width:34px;height:34px;color:var(--white);pointer-events:none;background:#0000008c;justify-content:center;align-items:center;display:inline-flex;position:absolute}.flashcards__lightbox{z-index:10;justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-4);cursor:zoom-out;background:#000000e0;flex-direction:column;display:flex;position:fixed;inset:0}.flashcards__lightbox-img{object-fit:contain;border-radius:var(--radius-md);max-width:96vw;max-height:82vh}.flashcards__lightbox-caption{color:var(--white);font-size:var(--text-xl);text-align:center;margin:0;font-weight:600}.flashcards__lightbox-close{top:var(--space-4);right:var(--space-4);border-radius:var(--radius-md);width:44px;height:44px;color:var(--white);cursor:pointer;background:#ffffff2e;border:none;justify-content:center;align-items:center;display:inline-flex;position:absolute}.custom-goals__head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.custom-goals__hint{margin:var(--space-1) 0 var(--space-3)}.add-goal{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-3);display:grid}.add-goal__field{gap:var(--space-1);display:grid}.add-goal__text,.add-goal__checkbox{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.add-goal__method{gap:var(--space-3);padding:var(--space-3);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--bg-muted,transparent);display:grid}.add-goal__method-row{gap:var(--space-3);flex-wrap:wrap;align-items:end;display:flex}.add-goal__field--inline{margin:0}.add-goal__field--inline input[type=number]{width:6rem}.add-goal__target{border:0;min-width:0;margin:0;padding:0}.add-goal__duration{align-items:center;gap:var(--space-2);display:flex}.add-goal__duration input[type=number]{width:4.5rem}.add-goal__unit{font-size:var(--text-sm);color:var(--text-muted,inherit)}.add-goal__method-hint{font-size:var(--text-sm);margin:0}@media (width<=480px){.add-goal__method-row{flex-direction:column;align-items:stretch}.add-goal__field--inline input[type=number]{width:100%}}.custom-goal-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.custom-goal{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);display:grid}.custom-goal--met{opacity:.7}.custom-goal--iep{border-left:3px solid var(--color-warning)}.custom-goal__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.custom-goal__name{font-weight:600}.custom-goal__text{white-space:pre-wrap;margin:0}.custom-goal__measure{font-size:var(--text-sm);margin:0}.custom-goals__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.populate{max-width:760px}.populate__intro{margin:var(--space-1) 0 var(--space-3)}.populate__subjects{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.populate__subject{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-3);display:grid}.populate__subject-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.populate__subject-name{font-size:var(--text-xl);margin:0}.populate__group{gap:var(--space-1);display:grid}.populate__group-label{font-size:var(--text-sm)}.populate__chiplist{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.populate__chip{border:1px solid var(--border);border-radius:var(--radius-pill,999px);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);align-items:center;gap:var(--space-1);display:inline-flex}.populate__chip--custom{border-color:var(--color-primary)}.populate__proposed{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.populate__group-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.populate__selectall{align-items:center;gap:var(--space-1);min-width:44px;min-height:44px;padding:var(--space-1) var(--space-2);cursor:pointer;font-size:var(--text-sm);border-radius:var(--radius-md);font-weight:600;display:inline-flex}.populate__selectall input{width:20px;height:20px}.populate__option{align-items:center;gap:var(--space-2);cursor:pointer;min-height:44px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);display:flex}.populate__option:hover{background:var(--surface-muted)}.populate__option input{flex:none;width:20px;height:20px}.populate__option-text{align-items:baseline;gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.populate__option-name{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;font-weight:600;display:inline-flex}.populate__empty{gap:var(--space-3);justify-items:start;display:grid}.populate__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.populate__done{gap:var(--space-3);justify-items:start;display:grid}@media (width<=900px){.populate{max-width:none}}@media (width<=480px){.populate__subject{padding:var(--space-2)}.populate__option-text{flex-direction:column;gap:0}.populate__actions .btn,.populate__empty .btn{text-align:center;width:100%}}.goalrec{max-width:820px}.goalrec__applied{align-items:center;gap:var(--space-1);color:var(--color-success-text);font-size:var(--text-sm);margin:0 0 var(--space-2);display:inline-flex}.goalrec__group{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-3);gap:var(--space-3);display:grid}.goalrec__group-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.goalrec__group-name{font-size:var(--text-xl);overflow-wrap:anywhere;min-width:0;margin:0}.goalrec__current{gap:var(--space-1);display:grid}.goalrec__current-label{font-size:var(--text-sm)}.goalrec__chiplist{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.goalrec__chip{border:1px solid var(--border);border-radius:var(--radius-pill,999px);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);align-items:center;gap:var(--space-1);display:inline-flex}.goalrec__list{gap:var(--space-2);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.goalrec__card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);min-width:0;display:grid}.goalrec__card--selected{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}.goalrec__card-top{justify-content:space-between;align-items:baseline;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.goalrec__accept{align-items:baseline;gap:var(--space-2);cursor:pointer;display:flex}.goalrec__name{font-weight:600;font-size:var(--text-lg);overflow-wrap:anywhere;flex:auto;min-width:0}.goalrec__badges{gap:var(--space-1);flex-wrap:wrap;min-width:0;max-width:100%;display:inline-flex}.goalrec__badge{border:1px solid var(--border);border-radius:var(--radius-pill,999px);padding:2px var(--space-2);font-size:var(--text-sm);font-weight:600}.goalrec__badge--high{color:var(--color-warning-text);border-color:var(--color-warning)}.goalrec__badge--medium{color:var(--color-primary);border-color:var(--color-primary)}.goalrec__badge--low,.goalrec__badge--type{color:var(--text-muted)}.goalrec__badge--draft{align-items:center;gap:var(--space-1);color:var(--color-primary-text);border-color:var(--color-primary);background:var(--color-primary-soft);display:inline-flex}.goalrec__legend{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-sm)}.goalrec__legend>summary{cursor:pointer;color:var(--text-muted);font-weight:600}.goalrec__legend-body{margin-top:var(--space-3);gap:var(--space-3);display:grid}@media (width>=640px){.goalrec__legend-body{grid-template-columns:1fr 1fr}}.goalrec__legend-col{gap:var(--space-2);display:grid}.goalrec__legend-heading{font-weight:600}.goalrec__legend-list{gap:var(--space-2);margin:0;display:grid}.goalrec__legend-row{align-items:baseline;gap:var(--space-1) var(--space-2);grid-template-columns:minmax(0,auto) 1fr;display:grid}.goalrec__legend-row dt{margin:0}.goalrec__legend-row dd{color:var(--text-muted);margin:0}.goalrec__meta{font-size:var(--text-sm);margin:0}.goalrec__goal{margin:0}.goalrec__edit{width:100%;font:inherit;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm,6px);background:var(--bg-surface);color:inherit}.goalrec__reason{font-size:var(--text-sm);color:var(--text-muted);align-items:baseline;gap:var(--space-1);overflow-wrap:anywhere;min-width:0;margin:0;display:flex}.goalrec__card-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.goalrec__iep{align-items:center;gap:var(--space-1);font-size:var(--text-sm);display:inline-flex}.goalrec__toggle{align-items:center;gap:var(--space-2);font-size:var(--text-lg);cursor:pointer;margin-inline-end:auto;font-weight:600;display:inline-flex}.goalrec__toggle input{appearance:none;border:2px solid var(--color-primary);border-radius:var(--radius-sm,6px);background:var(--bg-surface);cursor:pointer;flex:none;block-size:1.35rem;inline-size:1.35rem;transition:background .15s,border-color .15s;position:relative}.goalrec__toggle input:after{content:"";border:3px solid #fff;border-width:0 3px 3px 0;block-size:.75rem;inline-size:.4rem;transition:transform .15s;position:absolute;inset-block-start:.05rem;inset-inline-start:.38rem;transform:rotate(45deg)scale(0)}.goalrec__toggle input:checked{background:var(--color-primary);border-color:var(--color-primary)}.goalrec__toggle input:checked:after{transform:rotate(45deg)scale(1)}.goalrec__toggle input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.goalrec__more{margin-top:var(--space-3)}.goalrec__more-label{align-items:center;gap:var(--space-2);font-size:var(--text-lg);flex-wrap:wrap;display:flex}.goalrec__more-label select{font-size:var(--text-md);padding:var(--space-1) var(--space-2)}.goalrec__actions{gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.goalrec__selected-count{font-size:var(--text-lg);color:var(--text-muted);font-weight:600}@media (width<=480px){.goalrec__card-top{flex-direction:column;align-items:stretch}.goalrec__card-actions{gap:var(--space-2)}.goalrec__actions{flex-direction:column;align-items:stretch}.goalrec__actions .btn{justify-content:center;width:100%}}.draft-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-3);gap:var(--space-2);margin-block-end:var(--space-3);display:grid}.draft-panel__head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.draft-panel__title{align-items:center;gap:var(--space-2);font-size:var(--text-lg);margin:0;display:inline-flex}.draft-panel__count{color:var(--text-muted);font-weight:600}.draft-panel__link{flex:none}.draft-panel__empty{font-size:var(--text-sm);margin:0}.draft-panel__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.draft-panel__item{justify-content:space-between;align-items:center;gap:var(--space-2);border-block-end:1px solid var(--border);flex-wrap:wrap;padding-block-end:var(--space-2);display:flex}.draft-panel__item:last-child{border-block-end:none;padding-block-end:0}.draft-panel__name{min-width:0;font-weight:600}.draft-panel__tags{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.draft-panel__also{align-items:center;gap:var(--space-1);display:inline-flex}@media (width<=480px){.draft-panel__head{align-items:flex-start}.draft-panel__item{flex-direction:column;align-items:flex-start}}.setup{max-width:720px}.setup__intro{margin:var(--space-1) 0 var(--space-3)}.setup-return{margin-bottom:var(--space-3)}.setup-return__link{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-primary-soft);color:var(--color-primary-text);border-radius:var(--radius-md);font-weight:600;display:inline-flex}.setup-return__link:hover{text-decoration:underline}.setup__steps{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.setup__step{gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);display:flex}.setup__step-marker{border-radius:var(--radius-pill);background:var(--bg-surface);border:1px solid var(--border);flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-weight:600;display:inline-flex}.setup__step--done .setup__step-marker{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.setup__step-body{gap:var(--space-1);flex:1;display:grid}.setup__step-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.setup__step-title{font-size:var(--text-lg);margin:0}.setup__step-blurb{margin:0}.setup__step .btn{justify-self:start}.setup__actions{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.setup-progress{gap:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid}.setup-progress__head{align-items:center;gap:var(--space-2);display:flex}.setup-progress__name{min-width:0;font-size:var(--text-lg);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.setup-progress__pct{font-weight:700;font-size:var(--text-md);color:var(--color-success-text);flex:none}.setup-progress__bar{height:10px}.setup-progress__bar .bar__fill{background:var(--color-progress)}.setup-progress__steps{gap:var(--space-2);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.setup-progress__step{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-sm);display:flex}.setup-progress__marker{border-radius:var(--radius-pill);border:2px solid var(--gray-300);color:#fff;background:0 0;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.setup-progress__step--done .setup-progress__marker{background:var(--color-success);border-color:var(--color-success)}.setup-progress__step--current .setup-progress__marker{border-color:var(--band-mid)}.setup-progress__step--current .setup-progress__label{font-weight:600}.setup-progress__step--todo .setup-progress__label{color:var(--text-muted)}.setup-progress__action{margin-top:var(--space-1);justify-self:start}.home-list--setup{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}.home-list--setup>li{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md)}.home-card__foot-btn{margin-top:var(--space-3);display:flex}.home-card__more{margin:var(--space-3) 0 0;font-size:var(--text-sm)}.profile__setup{margin-bottom:var(--space-3);gap:var(--space-2);display:grid}.custom-goal__badges{gap:var(--space-1);flex-wrap:wrap;display:flex}.custom-goal__foot{align-items:center;gap:var(--space-3);display:flex}.custom-goal__manage{gap:var(--space-2);display:flex}.custom-goal__links{gap:var(--space-1);display:grid}.custom-goal__links-label{font-size:var(--text-sm)}.custom-goal__chiplist{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.custom-goal__chip{align-items:center;gap:var(--space-2);background:var(--color-primary-soft);border-radius:var(--radius-sm);padding:2px var(--space-2);font-size:var(--text-sm);display:inline-flex}.custom-goal__chip--mastered{background:var(--color-success-soft);color:var(--color-success-text)}.goal-progress{gap:var(--space-2);margin-top:var(--space-3);display:grid}.goal-progress__summary{align-items:center;gap:var(--space-2) var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.goal-progress__stat{align-items:center;gap:var(--space-1);display:inline-flex}.goal-progress__label{color:var(--text-muted);font-weight:600}.goal-progress__empty{font-size:var(--text-sm);margin:0}.goal-progress__full{margin-top:var(--space-2)}.sparkline{width:100%;max-width:340px}@media (width<=480px){.sparkline{max-width:100%}}.btn-link{color:var(--color-primary);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.btn-link:hover{text-decoration:none}.btn-link:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.baseline-note{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 0;font-size:var(--text-sm);flex-wrap:wrap;display:flex}.iep-switch{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;min-height:32px;font-weight:600;display:inline-flex}.iep-switch:disabled{cursor:default}.iep-switch--busy{opacity:.6}.iep-switch__track{border-radius:var(--radius-pill);background:var(--gray-300);flex:none;width:38px;height:22px;transition:background .15s;position:relative}.iep-switch__thumb{background:var(--white);width:18px;height:18px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.iep-switch--on .iep-switch__track{background:var(--color-warning)}.iep-switch--on .iep-switch__thumb{transform:translate(16px)}.iep-switch--on .iep-switch__label{color:var(--color-warning)}.iep-switch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (width<=900px){.iep-switch{min-height:44px}}.iep-switch-wrap{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:inline-flex}.iep-switch__error{font-size:var(--text-sm);color:var(--color-error);font-weight:600}.goal-row__meta{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:flex}.goal-row__count{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.accuracy-chip{font-size:var(--text-sm);color:#fff;border-radius:var(--radius-pill);white-space:nowrap;padding:1px 8px;font-weight:700}.accuracy-chip[data-band=low]{background:var(--band-low-strong)}.accuracy-chip[data-band=mid]{background:var(--band-mid-strong)}.accuracy-chip[data-band=high]{color:#3a3000;background:#eab308}.accuracy-chip[data-band=mastery]{background:var(--band-mastery-strong)}.accuracy-chip--last-week{align-items:baseline;gap:var(--space-1);display:inline-flex}.accuracy-chip__when{font-size:var(--text-sm);font-style:italic;font-weight:500}.goal-row__notice{padding:0 var(--space-3) var(--space-3);font-size:var(--text-sm);margin:0}.goal-row__undo{min-width:44px;min-height:44px;padding:var(--space-1);border-radius:var(--radius-pill);color:var(--color-warning-text,var(--text-muted));cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:inline-flex}.goal-row__undo:hover:not(:disabled):not([aria-disabled=true]),.goal-row__undo:focus-visible{background:var(--color-warning-soft);color:var(--color-warning-text,var(--text))}.goal-row__undo:disabled,.goal-row__undo[aria-disabled=true]{opacity:.5;cursor:not-allowed}.goal-row__done{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--band-mastery-strong);font-size:var(--text-sm);white-space:nowrap;flex:none;font-weight:700;display:inline-flex}.goal-row--done{opacity:.82}.undo-snackbar{left:50%;bottom:var(--space-5);z-index:45;align-items:center;gap:var(--space-3);max-width:min(92vw,32rem);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-radius:var(--radius-pill);color:#fff;box-shadow:var(--shadow-md);font-size:var(--text-sm);background:#1f2933;font-weight:600;animation:.15s undo-snackbar-in;display:inline-flex;position:fixed;transform:translate(-50%)}.undo-snackbar--error{background:var(--color-error)}.undo-snackbar__msg{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.undo-snackbar__action{min-height:44px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);color:#fff;font:inherit;cursor:pointer;background:#ffffff29;border:none;flex:none;align-items:center;gap:6px;font-weight:700;display:inline-flex}.undo-snackbar__action:hover:not(:disabled):not([aria-disabled=true]),.undo-snackbar__action:focus-visible{background:#ffffff47}.undo-snackbar__action:disabled,.undo-snackbar__action[aria-disabled=true]{opacity:.6;cursor:not-allowed}@keyframes undo-snackbar-in{0%{opacity:0;transform:translate(-50%, var(--space-3))}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.undo-snackbar{animation:none}}@media (width<=900px){.undo-snackbar{bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + var(--space-3) + 60px + var(--space-3))}}.sync-slot{margin:var(--space-3) 0;min-height:calc(1.5 * var(--text-sm) + 2 * var(--space-2) + 2px)}.sync-pill{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-sm);border:1px solid #0000;font-weight:600;animation:.15s sync-pill-in;display:flex}@keyframes sync-pill-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sync-pill{animation:none}}.sync-pill--offline{background:var(--color-error-soft);color:var(--color-warning-text)}.sync-pill--error{background:var(--color-error-soft);color:var(--color-error);border-color:var(--color-error)}.sync-pill__spinner{border-radius:var(--radius-pill);border:2px solid;border-top-color:#0000;flex:none;width:14px;height:14px;animation:.7s linear infinite sync-pill-spin}.sync-pill__dismiss{padding:0 var(--space-1);color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;margin-left:auto;text-decoration:underline}@keyframes sync-pill-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sync-pill__spinner{animation-duration:2s}}.mini-timer{left:var(--space-4);bottom:var(--space-5);z-index:40;width:max-content;max-width:min(320px, calc(100vw - 2 * var(--space-4)));border:1px solid var(--border);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);background:var(--surface);color:var(--text);box-shadow:var(--shadow-md);font-size:var(--text-sm);position:fixed}.mini-timer--paused,.mini-timer--review{border-left-color:var(--color-warning)}.mini-timer__head{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-2);display:flex}.mini-timer__return{align-items:center;gap:var(--space-2);min-width:0;min-height:44px;padding:0 var(--space-1);color:inherit;font:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;flex:auto;font-weight:600;display:inline-flex}.mini-timer__return:hover,.mini-timer__return:focus-visible{background:var(--bg-muted)}.mini-timer__glyph{flex:none}.mini-timer--running .mini-timer__glyph{animation:1.4s ease-in-out infinite mini-timer-pulse}.mini-timer__label{flex-direction:column;flex:auto;min-width:0;line-height:1.2;display:flex}.mini-timer__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-timer__student{text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.mini-timer__time{font-variant-numeric:tabular-nums;flex:none}.mini-timer__badge{padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-sm);flex:none}.mini-timer__toggle{width:44px;height:44px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;flex:none;place-items:center;display:inline-grid}.mini-timer__toggle:hover,.mini-timer__toggle:focus-visible{background:var(--bg-muted);color:var(--text)}.mini-timer__toggle svg{transition:transform .15s}.mini-timer__toggle.is-open svg{transform:rotate(180deg)}.mini-timer__panel{border-top:1px solid var(--border);padding:var(--space-2);gap:var(--space-2);flex-direction:column;display:flex}.mini-timer__session{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.mini-timer__session-info{flex-direction:column;min-width:0;display:flex}.mini-timer__session-name{text-overflow:ellipsis;white-space:nowrap;max-width:22ch;font-weight:600;overflow:hidden}.mini-timer__session-name--link{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.mini-timer__session-name--link:hover,.mini-timer__session-name--link:focus-visible{text-decoration-color:currentColor}.mini-timer__session-student{font-size:var(--text-sm)}.mini-timer__session-time{font-variant-numeric:tabular-nums;color:var(--text-muted)}.mini-timer__controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.mini-timer__controls .btn--sm{min-height:44px}.mini-timer__others{border-top:1px solid var(--border);gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mini-timer__others .mini-timer__session{padding-top:var(--space-2)}@keyframes mini-timer-pulse{0%,to{opacity:1}50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.mini-timer--running .mini-timer__glyph{animation:none}}@media (width<=900px){.mini-timer{left:var(--space-3);right:auto;bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + var(--space-3));max-width:calc(100vw - 60px - 3 * var(--space-3))}}@media (width<=600px){.goal-row__head{flex-direction:column;align-items:stretch}.goal-row .trial-buttons{width:100%}.goal-row .trial-btn{flex:1 1 0;min-width:0}.goal-row__name{row-gap:var(--space-1);flex-wrap:wrap}.goal-row__toggle{flex:auto;min-width:8rem}.collect-undo__btn{justify-content:center;width:100%}.goal-row__saved{right:var(--space-2)}}.skill-domain{margin-bottom:var(--space-5)}.skill-domain__title{font-size:var(--text-md);margin:0 0 var(--space-2);padding-bottom:var(--space-1);border-bottom:1px solid var(--border);font-weight:700}.skill-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.skill-row{align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border);display:flex}.skill-row:hover{border-color:var(--color-primary);background:var(--color-primary-soft)}.skill-row__code{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;flex-shrink:0;min-width:56px;font-weight:700}.skill-row__name{flex:1;min-width:0;font-weight:500}.skill-row__level{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.skill-row__badge{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;padding:2px var(--space-2);border:1px dashed var(--border);border-radius:var(--radius-pill);font-weight:600}.skill-row__subject{flex-shrink:0;align-self:center}@media (width<=480px){.skill-row{align-items:baseline;column-gap:var(--space-3);row-gap:var(--space-1);grid-template-columns:auto 1fr;grid-template-areas:"code name""level name";display:grid}.skill-row__code{grid-area:code}.skill-row__level{grid-area:level}.skill-row__name{grid-area:name}.skill-row__badge,.skill-row__subject{grid-column:1/-1;justify-self:start}}.worksheet-empty{margin:var(--space-2) 0 0;color:var(--text-muted)}.skill-detail{max-width:var(--content-read)}.back-link{align-items:center;gap:var(--space-1);margin-bottom:var(--space-3);color:var(--color-primary-text);font-weight:600;display:inline-flex}.probe-runner__nav{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.probe-runner__nav .probe-nav-btn:not(.probe-nav-btn--prev){justify-content:center;min-width:8.5rem}.probe-runner__nav-left{align-items:center;gap:var(--space-2);display:flex}.probe-nav-btn--prev{font-size:var(--text-sm);padding:var(--space-1) var(--space-3);min-height:36px;font-weight:600}.probe-nav-btn{align-items:center;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--color-primary-text);font-size:var(--text-md);padding:var(--space-2) var(--space-5);min-height:48px;font-weight:700;display:inline-flex}.probe-nav-btn:hover{background:var(--bg-app)}.probe-nav-btn--next{background:var(--color-primary);border-color:var(--color-primary);color:var(--white)}.probe-nav-btn--next:hover{background:var(--color-primary-dark)}.skill-detail__code{font-size:var(--text-sm);color:var(--text-muted);font-weight:700}.skill-detail__header .page-title{margin:var(--space-1) 0 var(--space-2)}.skill-detail__meta{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.skill-detail__actions{align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.skill-detail__actions .btn{align-items:center;gap:var(--space-1);display:inline-flex}.skill-students{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.skill-students__row{align-items:center;gap:var(--space-2);padding:var(--space-1) 0;display:flex}.skill-students__link{align-items:center;gap:var(--space-2);min-width:0;min-height:44px;color:inherit;flex:1;text-decoration:none;display:flex}.skill-students__link:hover .skill-students__name{text-decoration:underline}.skill-students__name{overflow-wrap:anywhere;min-width:0;font-weight:500}.tag--soft{--pill-bg:var(--color-primary-soft);--pill-fg:var(--color-primary-text)}.tag--iep{--pill-bg:transparent;--pill-fg:var(--color-warning-text);box-shadow:inset 0 0 0 1px var(--color-warning)}.tag--warning{--pill-bg:var(--color-warning-soft);--pill-fg:var(--color-warning-text)}.tag--info{align-items:center;gap:var(--space-1);padding-right:var(--space-1);display:inline-flex}.panel+.panel,.skill-detail .panel{margin-top:var(--space-3)}.standard+.standard{margin-top:var(--space-2)}.standard__grade{font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.standard__text{margin:var(--space-1) 0 0;font-size:var(--text-md)}.copy-btn{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:36px;color:var(--color-primary-text);font-size:var(--text-sm);background:0 0;flex:none;font-weight:600;display:inline-flex}.copy-btn:hover{background:var(--color-primary-soft);border-color:var(--color-primary)}.copy-btn--done{color:var(--color-success-text);border-color:var(--color-success);background:var(--color-success-soft)}.copy-btn--failed{color:var(--color-error);border-color:var(--color-error);background:var(--color-error-soft)}.copy-btn-wrap{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;flex:none;display:inline-flex}.copy-btn__hint{font-size:var(--text-sm);color:var(--color-error);flex-basis:100%;font-weight:600}.copyable{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.copyable>p{margin:0}.standard__head,.drawer__section-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.drawer__section-head{margin-bottom:var(--space-2)}.drawer__section-head .drawer__section-title{margin:0}.drawer__kit{align-items:center;gap:var(--space-2);margin:0;display:flex}.drawer__kit-num{border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-primary-text);font-size:var(--text-sm);white-space:nowrap;flex:none;padding:2px 8px;font-weight:600}.drawer__script{white-space:pre-line;margin:0}.related-group+.related-group{margin-top:var(--space-3)}.related-group__title{font-size:var(--text-sm);margin:0 0 var(--space-2);font-weight:600}.skill-detail__objectives{margin-top:var(--space-4)}.related-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.related-chip{align-items:baseline;gap:var(--space-1);font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border);display:inline-flex}.related-chip:hover{border-color:var(--color-primary)}.related-chip__code{font-weight:700;font-size:var(--text-sm);color:var(--text-muted)}.placement__apply{align-items:flex-start;gap:var(--space-2) var(--space-3);padding:var(--space-3);margin-bottom:var(--space-3);background:var(--surface-muted,#f4f6f9);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.placement__apply-main{gap:var(--space-2);flex-direction:column;flex:18rem;display:flex}.placement__apply-main .btn{align-self:flex-start;min-height:44px}.placement__apply-help{font-size:var(--text-sm);margin:0}.placement__apply-result{color:var(--text-muted);font-size:var(--text-sm);flex:16rem;margin:0}@media (width<=480px){.placement__apply-main .btn{align-self:stretch;width:100%}}.placement__start{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-3);padding:var(--space-4);background:var(--color-primary-soft,#eef3ec);border:1px solid var(--color-primary,#5e7d5a);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.placement__start-copy{flex:18rem;min-width:0}.placement__start-title{margin:0 0 var(--space-1);font-size:var(--text-lg);font-weight:700}.placement__start-btn{align-items:center;gap:var(--space-2);min-height:48px;font-size:var(--text-md);display:inline-flex}.placement__start-hint{color:var(--text-muted);font-size:var(--text-sm);margin:0}@media (width<=480px){.placement__start-btn{width:100%}}.placement__resume{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-warning-soft);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-text);flex-wrap:wrap;display:flex}.placement__resume-text{align-items:center;gap:var(--space-2);font-weight:600;display:inline-flex}.placement__resume-btn{align-items:center;gap:var(--space-1);white-space:nowrap;display:inline-flex}.placement-row__skipped{padding:1px var(--space-2);font-size:var(--text-sm);color:var(--color-warning-text);background:var(--color-warning-soft);border:1px solid var(--color-warning);border-radius:var(--radius-pill);white-space:nowrap;font-weight:700}.placement__toolbar{margin-bottom:var(--space-3);justify-content:flex-end;display:flex}.placement-print{display:none}.placement-print__domain{margin-bottom:var(--space-4);break-inside:avoid}.placement-print__domain-name{font-size:var(--text-md);margin:0 0 var(--space-1)}.recommended__actions{margin:var(--space-2) 0 var(--space-3)}.recommended__feedback{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid #0000}.recommended__feedback--success{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-text)}.recommended__feedback--error{align-items:flex-start;gap:var(--space-2);background:var(--color-error-soft);border-color:var(--color-error);color:var(--color-error);display:flex}.recommended__feedback-head{align-items:center;gap:var(--space-2);margin:0;font-weight:600;display:flex}.recommended__feedback-list{margin:var(--space-2) 0 0;padding-left:calc(18px + var(--space-2));gap:2px;display:grid}.recommended__feedback-note{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.recommended__feedback--error svg{flex:none;margin-top:2px}.recommended__group{margin-bottom:var(--space-3)}.recommended__domain{margin:var(--space-3) 0 var(--space-1);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.recommended__list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.recommended-row{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface)}.recommended-row__main{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.recommended-row__boxwrap{padding:var(--space-2);margin:calc(-1 * var(--space-2)) 0;cursor:pointer;flex:none;justify-content:center;align-items:center;display:inline-flex}.recommended-row__box{cursor:pointer;flex:none;width:24px;height:24px}.recommended-row__toggle{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) 0;cursor:pointer;text-align:left;color:inherit;font:inherit;background:0 0;border:0;flex:1;display:flex}.recommended-row__chevron{color:var(--text-muted);flex:none;transition:transform .15s}.recommended-row__toggle[aria-expanded=true] .recommended-row__chevron{transform:rotate(180deg)}.recommended__name{min-width:0}.recommended__level,.recommended__dest{flex:none}.recommended__code{font-size:var(--text-sm);flex:none}.recommended-row__panel{padding:var(--space-2) var(--space-3) var(--space-3);border-top:1px solid var(--border);gap:var(--space-2);display:grid}.recommended-row__why{margin:0}.recommended-row__why-label{margin-right:var(--space-1);color:var(--color-success-text);font-weight:600;display:inline-block}.recommended-row__facts{gap:var(--space-2);margin:0;display:grid}.recommended-row__fact{gap:2px;display:grid}.recommended-row__fact dt{font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.recommended-row__fact dd{margin:0}.recommended-row__link{align-items:center;gap:var(--space-1);font-weight:600;display:inline-flex}@media (width<=480px){.recommended-row__main{align-items:flex-start}.recommended__code{flex-basis:100%}}.placement__domain{margin-bottom:var(--space-4)}.placement__rows{margin:0;padding:0;list-style:none}.placement-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border,#e7e9ee);grid-template-columns:1fr auto auto;display:grid}.placement-row:first-child{border-top:none}.placement-row__skill{align-items:baseline;gap:var(--space-1) var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.placement-row__name{overflow-wrap:anywhere;min-width:0;font-weight:600}.placement-row__level{font-size:var(--text-sm);white-space:nowrap}.placement-row__auto{font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:var(--radius-pill);color:#fff;background:var(--color-warning);padding:1px 6px;font-weight:700}.status-selector{flex-wrap:wrap;gap:4px;display:flex}.status-chip{min-height:44px;padding:0 var(--space-3);border:1px solid var(--border,#d7dae1);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text);font:inherit;font-size:var(--text-sm);cursor:pointer;font-weight:600;transition:background .12s,color .12s,border-color .12s}.status-chip:hover:not(:disabled){border-color:var(--text-muted)}.status-chip:disabled{cursor:default;opacity:.7}.status-chip.is-selected{color:#fff;border-color:#0000}.status-chip--mastered.is-selected{background:var(--band-mastery-strong)}.status-chip--emerging.is-selected{color:#3a3000;background:#eab308}.status-chip--not-demo.is-selected{background:var(--band-low-strong)}.status-chip--not-assessed.is-selected{background:#52606d}.placement-row__status{align-items:center;gap:var(--space-2);min-width:0;display:flex}.status-readout{align-items:center;gap:var(--space-2);display:flex}.status-readout__label{font-size:var(--text-sm);color:var(--text-muted);display:none}.status-clear{min-height:44px;padding:var(--space-1) var(--space-2);color:var(--text-muted);font:inherit;font-size:var(--text-sm);text-underline-offset:2px;cursor:pointer;border-radius:var(--radius-sm);white-space:nowrap;background:0 0;border:none;justify-content:center;align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}.status-clear:hover{color:var(--text)}.status-clear--reserved{visibility:hidden}.placement-row__actions{gap:var(--space-2);justify-content:flex-end;display:flex}.row-probe{min-width:0}.row-probe__toggle{align-items:center;gap:var(--space-1);min-height:44px;padding:0 var(--space-2);color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;border-radius:var(--radius-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;font-weight:600;list-style:none;display:inline-flex}.row-probe__toggle::-webkit-details-marker{display:none}.row-probe__toggle:hover,.row-probe[open] .row-probe__toggle{color:var(--text)}.row-probe__menu{gap:var(--space-2);margin-top:var(--space-1);display:flex}.placement-row__probe{white-space:nowrap;color:var(--color-maintenance)}.placement-row__probe--digital{background:var(--bg-surface,#fff);border:1px solid var(--color-maintenance,#3b82f6)}.placement-row__probe--digital:hover{background:var(--color-maintenance-soft,#e6effe)}.placement-row__probe--manual{background:var(--bg-surface,#fff);border:1px solid #bcd3fb}.placement-row__probe--manual:hover{background:var(--color-maintenance-soft,#e6effe)}.probe__skill{margin-bottom:var(--space-4)}.probe__code{font-weight:700;font-size:var(--text-sm);color:var(--text-muted)}.probe__name{margin:2px 0 var(--space-2);font-size:var(--text-xl)}.probe__tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.probe__goal{margin-top:var(--space-3);max-width:60ch}.probe__score{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background:var(--surface-2,#f6f7f9);border-radius:var(--radius-md);display:flex}.probe__score-main{align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.probe__score-hint{font-size:var(--text-sm);color:var(--text-muted);flex-basis:100%}.probe__score-acc{font-size:var(--text-4xl);font-weight:800;line-height:1}.probe__score-count{color:var(--text-muted);font-weight:600}.probe__score-actions{gap:var(--space-2);display:flex}.probe__save{margin-top:var(--space-5)}.probe__save-title{margin-bottom:var(--space-2)}.placement-session__top{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.placement-session__count{font-size:var(--text-sm);font-weight:600}.placement-session__progress{border-radius:var(--radius-pill);background:var(--surface-2,#f6f7f9);height:8px;margin-bottom:var(--space-4);overflow:hidden}.placement-session__progress-fill{background:var(--color-primary);border-radius:inherit;height:100%;transition:width .2s}.placement-session__actions{margin-top:var(--space-4);justify-content:center;display:flex}.placement-session__probe-cta{align-items:center;gap:var(--space-3);margin:var(--space-4) 0;padding:var(--space-5) var(--space-4);text-align:center;background:var(--surface-2,#f6f7f9);border-radius:var(--radius-lg,16px);flex-direction:column;display:flex}.placement-session__probe-btn{align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--text-lg);display:inline-flex}.placement-session__probe-hint{max-width:32rem;font-size:var(--text-sm);margin:0}.placement-session__by-hand{min-height:44px}.placement-session__materials{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--text-md);display:flex}.placement-session__back-to-probe{align-items:center;gap:var(--space-1);margin-bottom:var(--space-3);min-height:44px;display:inline-flex}.placement-session__done{align-items:center;gap:var(--space-2);text-align:center;color:var(--color-primary);flex-direction:column;display:flex}.placement-session__done-title{margin:0}.placement-session__done .btn{margin-top:var(--space-2)}.drawer__probe{margin-bottom:var(--space-3);align-self:flex-start;display:inline-flex}.main:has(.probe-runner){flex-direction:column;display:flex}.probe-runner{width:100%;max-width:640px;min-height:0;padding:var(--space-4) 0;flex-direction:column;flex:auto;margin:0 auto;display:flex}.probe-runner.probe-runner--fullscreen{z-index:100;max-width:none;padding:var(--space-5);background:var(--bg-app,#f6f7f9);justify-content:safe center;margin:0;padding-bottom:168px;position:fixed;inset:0;overflow:auto}.probe-runner--fullscreen .probe-runner__nav,.probe-runner--fullscreen .probe-runner__head,.probe-runner--fullscreen .probe-runner__progress,.probe-runner--fullscreen .probe-runner__resumed{display:none}.probe-runner__fs-exit{top:var(--space-3);right:var(--space-3);z-index:110;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);background:var(--bg-surface,#fff);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;font-weight:600;display:inline-flex;position:fixed}.probe-runner__fs-exit:hover{color:var(--text);border-color:var(--text-muted)}.probe-runner__resumed{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--color-success-text);background:var(--color-primary-soft);border:1px solid var(--color-primary);border-radius:var(--radius-md);font-weight:600;display:flex}.probe-runner__retry{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.probe-runner__retry .btn{align-items:center;gap:var(--space-1);display:inline-flex}.probe-teacher-strip{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);z-index:115;align-items:center;gap:var(--space-3);max-height:40vh;padding:var(--space-2) var(--space-3);background:var(--bg-surface,#fff);border:1px solid var(--border);border-radius:var(--radius-md);opacity:.92;flex-wrap:wrap;justify-content:space-between;display:flex;position:fixed;overflow:auto;box-shadow:0 4px 14px #00000029}.probe-teacher-strip:hover,.probe-teacher-strip:focus-within{opacity:1}.probe-teacher-strip__info{gap:var(--space-1);flex-direction:column;flex:260px;min-width:0;display:flex}.probe-teacher-strip__progress{font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.probe-teacher-strip__info .probe-runner__script,.probe-teacher-strip__info .probe-runner__assessor{font-size:var(--text-sm);margin:0}.probe-teacher-strip__info .probe-runner__assessor{gap:var(--space-1);flex-direction:column;display:flex}.probe-teacher-strip__controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:flex-end;display:flex}.probe-teacher-strip__lock{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:0 0;min-height:44px;font-weight:600;display:inline-flex}.probe-teacher-strip__lock.is-on{color:var(--color-error);border-color:var(--color-error);background:var(--color-error-soft)}.probe-teacher-strip__next{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:0 0;font-weight:600;display:inline-flex}.probe-teacher-strip__next:hover{color:var(--text);border-color:var(--text-muted)}.probe-teacher-strip__verdict{font-size:var(--text-sm);color:var(--text-muted);font-weight:700}.probe-teacher-strip__score{gap:var(--space-2);display:flex}.probe-teacher-strip__btn{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;min-height:44px;font-weight:700;display:inline-flex}.probe-teacher-strip__btn.is-correct{color:var(--color-success-text);background:var(--color-success-soft);border-color:var(--color-success)}.probe-teacher-strip__btn.is-incorrect{color:var(--color-error-text);background:var(--color-error-soft);border-color:var(--color-error)}.probe-teacher-strip__btn.is-skip{color:var(--text-muted);border-color:var(--border);background:0 0;font-weight:600}.probe-teacher-strip__btn.is-skip:hover{color:var(--text);border-color:var(--text-muted)}.probe-runner__skip-row{margin-top:var(--space-3);justify-content:center;display:flex}.probe-runner__skip{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:0 0;min-height:44px;font-weight:600;display:inline-flex}.probe-runner__skip:hover{color:var(--text);border-color:var(--text-muted)}.probe-runner__skipped-note{color:var(--text-muted);font-weight:600}.probe-runner__skip-later{min-height:44px;margin-top:var(--space-2);padding:var(--space-2) var(--space-1);font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}.probe-runner__skip-later:hover:not(:disabled){color:var(--text)}.probe-runner__skip-later:disabled{opacity:.5;cursor:default}.probe-runner__image-failed{align-items:center;gap:var(--space-2);color:var(--band-low,#b42318);text-align:center;flex-direction:column;display:flex}.probe-runner__image-failed-title{font-size:var(--text-lg);margin:0;font-weight:700}.probe-runner__image-failed-hint{font-size:var(--text-sm);color:var(--text-muted);margin:0}.probe-runner__present-done{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;flex:auto;display:flex}.probe-runner__present-done-title{font-size:var(--text-3xl);color:var(--color-primary);margin:0;font-weight:800}.probe-runner__finished{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-3);text-align:center;flex-direction:column;display:flex}.probe-runner__finished-title{font-size:var(--text-3xl);color:var(--color-primary);margin:0;font-weight:800}.probe-runner__finished-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.probe-runner.is-touch-locked .probe-runner__stage,.probe-runner.is-touch-locked .match-board,.probe-runner.is-touch-locked .seq-board,.probe-runner.is-touch-locked .trial-buttons,.probe-runner.is-touch-locked .probe-runner__fs-exit{pointer-events:none}@media (width<=900px){.probe-runner.probe-runner--fullscreen{padding-bottom:208px}.probe-teacher-strip{align-items:stretch;gap:var(--space-2);flex-direction:column}.probe-teacher-strip__controls{justify-content:space-between}}@media (width<=480px){.probe-runner.probe-runner--fullscreen{padding-bottom:232px}.probe-teacher-strip__score{flex-wrap:wrap;flex:auto}.probe-teacher-strip__btn{flex:auto;justify-content:center}}.probe-runner--matching{max-width:1000px}.probe-runner--image,.probe-runner--sorting{max-width:900px}.probe-runner--sorting .match-tile--target{box-shadow:none;background:0 0;border:none;padding:0}.probe-runner--sorting .match-tile__img{width:150px;height:200px}.probe-runner--sorting .match-board__target-row{min-height:216px}.probe-runner--sorting .match-board__choices{align-self:stretch;gap:var(--space-4)}.probe-runner--sorting .match-tile--choice{min-height:200px;padding:var(--space-4) var(--space-3);background:var(--surface-2,#f6f7f9);border-style:solid;flex-direction:column;flex:1 1 0;justify-content:flex-start}.probe-runner--sorting .match-tile__label{min-width:0;min-height:auto;font-size:var(--text-md);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted,#667085);font-weight:800}.probe-runner__head{margin-bottom:var(--space-4)}.probe-runner__skill{margin-top:var(--space-1);color:var(--text-muted)}.probe-runner__skill-name{color:var(--text);font-weight:600}.probe-runner__progress{margin-bottom:var(--space-3);font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);font-weight:700}.probe-runner__stage{min-height:0;padding:var(--space-5);margin-bottom:var(--space-4);text-align:center;background:var(--surface-2,#f6f7f9);border-radius:var(--radius-lg,16px);flex:auto;justify-content:center;align-items:center;display:flex}.probe-runner__stage--empty{flex:none;min-height:160px}.probe-runner__prompt{flex:auto;justify-content:center;align-self:stretch;align-items:center;min-width:0;min-height:0;font-weight:800;line-height:1.05;display:flex}.fit-text__inner{text-align:center;overflow-wrap:anywhere;word-break:break-word;max-width:100%;display:block}.probe-runner__image{object-fit:contain;width:auto;max-width:100%;height:100%;max-height:100%}.probe-runner__passage-block{gap:var(--space-4);text-align:left;flex-direction:column;max-width:640px;display:flex}.probe-runner__passage{font-size:var(--text-2xl);margin:0;font-weight:600;line-height:1.4}.probe-runner__question{font-size:var(--text-lg);margin:0;font-weight:700;line-height:1.25}.probe-runner__answer{font-size:var(--text-md);color:var(--text-muted,#667085);margin:0}.probe-runner__answer span{color:var(--text-strong,#1d2939);font-weight:700}.probe-runner__empty{font-size:var(--text-lg);color:var(--text-muted,#667085);margin:0;font-style:italic}.probe-runner__assessor{align-items:center;gap:var(--space-2);margin-top:var(--space-4);flex-direction:column;display:flex}.probe-runner__assessor .probe-runner__script{margin-top:0}.probe-runner__aside{text-align:center;font-size:var(--text-lg);color:var(--text-muted,#667085);margin:0;font-weight:600}.probe-runner__aside span{color:var(--text-strong,#1d2939)}.probe-runner__reveal{margin-top:var(--space-2);font-size:var(--text-md);color:var(--text-muted,#667085);border:1px solid var(--border,#d0d5dd);border-radius:var(--radius-md,8px);padding:var(--space-2) var(--space-4);cursor:pointer;background:0 0}.probe-runner__reveal:hover{color:var(--text-strong,#1d2939);border-color:var(--text-muted,#667085)}.probe-runner .trial-buttons{gap:var(--space-3);display:flex}.probe-runner .trial-btn{flex:1 1 0}.probe-runner__script{margin-top:var(--space-4);text-align:center;font-size:var(--text-lg);color:var(--text-muted,#667085);font-weight:600}.probe-runner__script-text{color:var(--text-strong,#1d2939)}.probe-runner__script-say{margin-top:var(--space-2);display:block}.match-board{align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.match-board__target-row{justify-content:center;min-height:128px;display:flex}.match-tile{min-width:80px;min-height:80px;padding:var(--space-3);font-size:var(--text-4xl);background:var(--bg-surface,#fff);border:2px solid var(--border,#d0d5dd);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}.match-tile__img{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none;width:200px;height:150px;display:block}.match-tile__label{pointer-events:none;justify-content:center;align-items:center;min-width:132px;min-height:100px;font-size:4.5rem;line-height:1;display:flex}.match-tile--target{border-color:var(--color-primary,#5e7d5a);cursor:grab;touch-action:none;box-shadow:0 2px 8px #00000014}.match-tile--target:active{cursor:grabbing}.match-tile--dragging{opacity:.25}.match-tile--ghost{pointer-events:none;opacity:.95;background:var(--bg-surface,#fff);z-index:60;margin:0;position:fixed;box-shadow:0 6px 18px #00000038}.match-tile--ghost.is-snapping{opacity:1;transition:left .13s ease-out,top .13s ease-out}.match-board__choices{justify-content:center;gap:var(--space-3);flex-wrap:nowrap;display:flex}.match-tile--choice{position:relative}.match-tile--choice.is-hover{border-color:var(--color-primary,#5e7d5a);background:var(--color-primary-soft,#eaf0e8)}.match-tile--choice.is-correct{border-color:var(--color-success);background:var(--color-success-soft)}.match-tile--choice.is-incorrect{border-color:var(--color-error);background:var(--color-error-soft)}.match-tile--choice.is-placed{border-color:var(--color-primary,#5e7d5a);background:var(--color-primary-soft,#eaf0e8)}.match-tile--choice.is-focus{border-color:var(--color-primary,#5e7d5a);box-shadow:0 0 0 3px var(--color-primary-soft,#eaf0e8)}.match-tile--target.is-picked{border-color:var(--color-primary,#5e7d5a);box-shadow:0 0 0 3px var(--color-primary-soft,#eaf0e8), 0 4px 12px #00000029;transform:translateY(-2px)}.match-tile--choice:disabled{cursor:default;opacity:1}.match-tile__mark{z-index:70;display:inline-flex;position:absolute;top:-10px;right:-10px}.match-tile--choice.is-correct .match-tile__mark{color:var(--color-success-text)}.match-tile--choice.is-incorrect .match-tile__mark{color:var(--color-error)}.match-board__result{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.match-board__verdict{font-size:var(--text-2xl);margin:0;font-weight:800}.match-board__verdict.is-correct{color:var(--color-success-text)}.match-board__verdict.is-incorrect{color:var(--color-error)}.match-board__actions{gap:var(--space-3);align-items:center;display:flex}.match-board__next{align-items:center;gap:var(--space-1);display:inline-flex}.probe-runner--sequencing{max-width:1120px}.seq-board{align-items:center;gap:var(--space-5);flex-direction:column;display:flex}.seq-board__passage{padding:var(--space-4);font-size:var(--text-xl);text-align:left;background:var(--surface-2,#f6f7f9);border-radius:var(--radius-lg,16px);align-self:stretch;margin:0;font-weight:600;line-height:1.45}.seq-board__slots,.seq-board__tray{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.seq-board__tray{min-height:190px;padding:var(--space-3);border:2px dashed var(--border,#d0d5dd);border-radius:var(--radius-md);align-self:stretch;align-items:center}.seq-board__tray-empty{font-size:var(--text-sm)}.seq-slot{background:var(--surface-2,#f6f7f9);border:2px dashed var(--border,#d0d5dd);border-radius:var(--radius-md);justify-content:center;align-items:center;width:190px;height:175px;display:flex;position:relative}.seq-slot__num{font-size:var(--text-lg);color:var(--text-muted,#667085);font-weight:800;position:absolute;top:6px;left:8px}.seq-slot.is-hover{border-style:solid;border-color:var(--color-primary,#5e7d5a);background:var(--color-primary-soft,#eaf0e8)}.seq-slot.is-correct{border-style:solid;border-color:var(--color-success);background:var(--color-success-soft)}.seq-slot.is-incorrect{border-style:solid;border-color:var(--color-error);background:var(--color-error-soft)}.seq-slot.is-placed{border-style:solid;border-color:var(--color-primary,#5e7d5a);background:var(--color-primary-soft,#eaf0e8)}.seq-slot.is-focus{border-style:solid;border-color:var(--color-primary,#5e7d5a);box-shadow:0 0 0 3px var(--color-primary-soft,#eaf0e8)}.seq-slot[role=button]{cursor:pointer}.seq-card{background:var(--bg-surface,#fff);border:2px solid var(--border,#d0d5dd);border-radius:var(--radius-md);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;padding:0;display:block;overflow:hidden;box-shadow:0 2px 8px #00000014}.seq-card:active{cursor:grabbing}.seq-card__img{object-fit:contain;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;pointer-events:none;width:180px;height:165px;display:block}.seq-card--text{width:180px;height:165px;padding:var(--space-3);justify-content:center;align-items:center;display:flex}.seq-card__text{font-size:var(--text-md);text-align:center;pointer-events:none;font-weight:600;line-height:1.35}.seq-card--placed{box-shadow:none}.seq-card--dragging{opacity:.25}.seq-card--picked{outline:3px solid var(--color-primary,#5e7d5a);outline-offset:2px;box-shadow:0 4px 12px #0000002e}.seq-card--ghost{pointer-events:none;opacity:.95;z-index:60;margin:0;position:fixed;box-shadow:0 6px 18px #00000038}.seq-board__hint{text-align:center;font-size:var(--text-sm);margin:0}.seq-board__tablet-hint{align-items:center;gap:var(--space-1);font-size:var(--text-sm);align-self:stretch;margin:0;display:none}.seq-board__result{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.seq-board__verdict{font-size:var(--text-2xl);margin:0;font-weight:800}.seq-board__verdict.is-correct{color:var(--color-success-text)}.seq-board__verdict.is-incorrect{color:var(--color-error)}.seq-board__actions{gap:var(--space-3);align-items:center;display:flex}.seq-board__next{align-items:center;gap:var(--space-1);display:inline-flex}.probe-runner__score{align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.probe-runner__suggested{margin-bottom:var(--space-4);font-size:var(--text-lg)}.probe-runner__done{align-items:flex-start;gap:var(--space-3);flex-direction:column;display:flex}.probe-runner__notice{margin-top:var(--space-3);padding:var(--space-4)}@media (width<=900px){.match-board__choices{flex-wrap:wrap}.match-tile__img{width:150px;height:112px}.match-tile__label{min-width:104px;min-height:88px;font-size:3.5rem}.seq-slot{width:158px;height:150px}.seq-card__img,.seq-card--text{width:148px;height:140px}.seq-board__passage{font-size:var(--text-lg)}}@media (width<=480px){.probe-runner__stage{min-height:180px;padding:var(--space-4)}.probe-runner__passage{font-size:var(--text-xl)}.probe-runner__question{font-size:var(--text-md)}.match-tile{min-width:64px;min-height:64px;font-size:var(--text-3xl);padding:var(--space-2)}.match-tile__img{width:144px;height:108px}.match-tile__label{min-width:80px;min-height:72px;font-size:2.75rem}.match-board__target-row{min-height:96px}.probe-runner--sequencing .seq-board__slots{align-self:stretch;gap:var(--space-2);flex-flow:column;width:100%}.probe-runner--sequencing .seq-slot{width:100%;height:auto;min-height:116px;padding:var(--space-2) var(--space-2) var(--space-2) 34px}.probe-runner--sequencing .seq-slot .seq-card__img,.probe-runner--sequencing .seq-slot .seq-card--text{width:208px;height:100px}.seq-board__tablet-hint{display:flex}.seq-slot{width:134px;height:128px}.seq-card__img,.seq-card--text{width:124px;height:118px}.seq-card__text{font-size:var(--text-sm)}.seq-board__passage{font-size:var(--text-md)}}@media (width<=900px){:root{--bubble-size:70px}.placement-row{gap:var(--space-2);padding:var(--space-3) 0;grid-template-columns:1fr}.placement-row__status{align-items:stretch;gap:var(--space-2);flex-direction:column;width:100%}.status-selector{width:100%}.status-chip{flex:1 1 0;min-height:44px}.status-readout{justify-content:space-between;width:100%}.status-readout__label{display:inline}.status-clear{flex:none;min-height:44px}.placement-row__actions{justify-content:flex-start;width:100%}.row-probe{width:100%}.row-probe__toggle{justify-content:flex-start}.row-probe__menu{width:100%}.placement-row__probe{flex:1 1 0}.probe__score{align-items:flex-start;gap:var(--space-2);flex-direction:column}.probe__save .status-chip{flex:1 1 0;min-height:44px}.shell,.shell.has-context{grid-template-columns:1fr}.mobile-bar{align-items:center;gap:var(--space-3);height:calc(var(--mobile-bar-height) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) var(--space-3) 0;background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:30;display:flex;position:fixed;top:0;left:0;right:0}.mobile-bar .notif{margin-left:auto}.mobile-bar__toggle{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--gray-700);background:0 0;border:none;justify-content:center;align-items:center;line-height:1;display:inline-flex}.mobile-bar__toggle:hover{background:var(--gray-100)}.mobile-bar__brand{align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--text-lg);white-space:nowrap;flex-shrink:0;display:flex}.sidebar{width:min(80vw, var(--sidebar-width));z-index:50;box-shadow:var(--shadow-md);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.shell.menu-open .sidebar{transform:translate(0)}.shell.menu-open .shell__backdrop{z-index:40;background:#1f293366;display:block;position:fixed;inset:0}.shell.menu-open .ws-fab,.shell.menu-open .mini-timer{display:none}.shell.menu-open .main{overflow-y:hidden}.main{padding:calc(var(--mobile-bar-height) + env(safe-area-inset-top,0px) + var(--space-3)) var(--space-3) calc(var(--tabbar-height) + env(safe-area-inset-bottom,0) + var(--space-3) + 60px + var(--space-4))}.main__bar{margin-bottom:0}.main__bar:has(.site-switcher){margin-bottom:var(--space-3)}.main__bar .notif{display:none}.tabbar{height:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0));padding-bottom:env(safe-area-inset-bottom,0);background:var(--bg-surface);border-top:1px solid var(--border);z-index:30;align-items:flex-start;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar__item{color:var(--text-muted);font-size:var(--text-sm);height:var(--tabbar-height);min-height:var(--tabbar-height);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;min-width:0;padding-inline:2px;font-weight:600;display:flex;position:relative}.tabbar__item>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tabbar__item.is-active{color:var(--color-primary);font-weight:700}.tabbar__item.is-active:before{content:"";border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--color-primary);width:40%;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.context-panel{border-left:none;border-top:1px solid var(--border);padding-bottom:calc(var(--tabbar-height) + var(--space-4))}.page-header,.profile__header{flex-wrap:wrap}.toolbar{flex-direction:column;align-items:stretch}.toolbar__sort{justify-content:space-between}.toolbar__archived{justify-content:flex-start;gap:var(--space-2);min-height:44px}.roster-table__sort{min-height:44px;padding:var(--space-2) 0}.student-grid,.stat-row{grid-template-columns:repeat(2,1fr)}.profile__header-actions{width:100%}.profile__header-actions .btn{text-align:center;flex:auto}.field-row{flex-direction:column;gap:0}}@media (width<=480px){.student-grid{grid-template-columns:1fr}.student-grid .student-card{text-align:left;place-items:center start;column-gap:var(--space-3);padding:var(--space-3);grid-template-rows:auto auto auto;grid-template-columns:auto 1fr;row-gap:0;display:grid}.student-grid .student-card>:first-child{grid-area:1/1/4}.student-grid .student-card>:nth-child(2){grid-area:1/2}.student-grid .student-card>:nth-child(3){grid-area:2/2}.student-grid .student-card>:nth-child(4){grid-area:3/2}.student-grid .student-card__footer{align-items:flex-start}.domain__head:has(.domain__head-right){flex-wrap:wrap}.domain__head:has(.domain__head-right) .domain__name{flex:100%}.domain__head-right{flex:100%;justify-content:space-between}.stat-row{gap:var(--space-2);margin-bottom:var(--space-3)}.stat{justify-content:center;align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top-width:2px;flex-direction:row}.stat__value{font-size:var(--text-xl)}}.class-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.class-card{--accent:var(--color-primary);gap:var(--space-3);padding:var(--space-4);border-left:5px solid var(--accent);color:var(--text);flex-direction:column;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.class-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.class-card__top{align-items:center;gap:var(--space-3);display:flex}.class-card__icon{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 14%, transparent);width:48px;height:48px;color:var(--accent);flex:none;place-items:center;display:inline-grid}.class-card__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.class-card__name{font-family:var(--font-display,inherit);font-weight:600;font-size:var(--text-lg)}.class-card__count{font-size:var(--text-sm)}.class-card__stats{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);display:flex}.class-stat{flex-direction:column;flex:1 1 0;gap:2px;min-width:0;display:flex}.class-stat__num{font-family:var(--font-display,inherit);font-weight:700;font-size:var(--text-lg);font-variant-numeric:tabular-nums;color:var(--text);align-items:center;gap:6px;display:inline-flex}.class-stat__label{font-size:var(--text-sm);color:var(--text-muted);font-weight:600;line-height:1.2}.class-card__go{border-radius:var(--radius-pill);background:var(--bg-app);width:36px;height:36px;color:var(--gray-700);flex:none;place-items:center;display:inline-grid}.class-card:hover .class-card__go{background:var(--color-primary-soft);color:var(--color-primary-text)}.class-card__manage{padding-top:var(--space-3);border-top:1px solid var(--border);justify-content:flex-end;display:flex}.class-card__edit{font-size:var(--text-sm);color:var(--gray-700);align-items:center;gap:6px;font-weight:600;display:inline-flex}.class-card:hover .class-card__edit{color:var(--color-primary-text)}.class-card__subject{margin-top:var(--space-1)}.class-subject-chip{max-width:100%}.class-subject-chip__name{text-overflow:ellipsis;white-space:nowrap;max-width:12ch;overflow:hidden}.class-subject-chip--manual{--pill-bg:var(--gray-100);--pill-fg:var(--text-muted)}.class-subject-chip-group{align-items:center;gap:var(--space-1);max-width:100%;display:inline-flex}.class-filters{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.class-filters__archived{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.class-archived{margin-top:var(--space-4)}.class-archived__title{font-size:var(--text-lg);color:var(--text-muted);margin-bottom:var(--space-3);font-weight:600}.class-card--archived{--accent:var(--gray-300);opacity:.75;cursor:default}.class-card--archived:hover{box-shadow:none;transform:none}.class-card__archived-badge{--pill-bg:var(--gray-100);--pill-fg:var(--text-muted);flex:none;align-self:flex-start}.field__warning{align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-warning-soft);color:var(--color-warning-text);font-size:var(--text-sm);line-height:1.4;display:flex}.field__warning svg{flex:none;margin-top:2px}.field__label{font-size:var(--text-sm);color:var(--gray-700);font-weight:600}.icon-picker{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(48px,1fr));display:grid}.icon-picker__option{min-height:48px;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--gray-700);cursor:pointer;place-items:center;gap:2px;transition:border-color .12s,background .12s,color .12s,box-shadow .12s;display:inline-grid}.icon-picker__option:hover{border-color:var(--color-primary);color:var(--color-primary-text)}.icon-picker__option.is-selected{border-color:var(--accent,var(--color-primary));background:color-mix(in srgb, var(--accent,var(--color-primary)) 16%, transparent);color:var(--text);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent,var(--color-primary)) 30%, transparent)}.icon-picker__option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.icon-picker__option--auto{gap:var(--space-1);grid-column:span 2;grid-auto-flow:column}.icon-picker__auto-label{font-size:var(--text-sm);font-weight:600}.color-picker{gap:var(--space-2);flex-wrap:wrap;display:flex}.color-picker__swatch{background:var(--swatch,var(--gray-200));width:40px;height:40px;color:var(--white);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;transition:transform .12s,box-shadow .12s;display:inline-grid;box-shadow:inset 0 0 0 1px #0000001f}.color-picker__swatch:hover{transform:scale(1.08)}.color-picker__swatch.is-selected{box-shadow:0 0 0 2px var(--bg-surface), 0 0 0 4px var(--swatch,var(--color-primary))}.color-picker__swatch:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.color-picker__swatch--auto{width:auto;min-width:56px;height:40px;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--bg-surface);color:var(--gray-700);box-shadow:inset 0 0 0 1px var(--border)}.color-picker__swatch--auto.is-selected{box-shadow:inset 0 0 0 2px var(--color-primary);color:var(--color-primary-text)}.color-picker__auto-label{font-size:var(--text-sm);font-weight:600}.class-detail__title{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.class-detail__icon{border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent,var(--color-primary)) 16%, transparent);width:40px;height:40px;color:var(--accent,var(--color-primary));flex:none;place-items:center;display:inline-grid}.page-header__heading{flex-direction:column;gap:2px;display:flex}.page-subtitle{font-size:var(--text-sm);margin:0}.class-detail__heading{gap:var(--space-1);flex-direction:column;display:flex}.class-detail__actions{gap:var(--space-2);display:flex}.class-manage{gap:var(--space-3);grid-template-columns:minmax(260px,1fr) 1.4fr;align-items:start;display:grid}.class-manage__roster,.class-manage__skills{padding:var(--space-3)}.class-manage__section-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.class-manage__section-title{font-family:var(--font-display,inherit);font-size:var(--text-md);margin:0;font-weight:600}.roster-list{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.roster-list__row{border-radius:var(--radius-md);border:1px solid #0000;align-items:center;transition:background .12s,border-color .12s;display:flex}.roster-list__row.is-selected{background:var(--color-primary-soft);border-color:var(--color-primary)}.roster-list__pick{align-items:center;gap:var(--space-2);padding:var(--space-2);font:inherit;color:var(--text);text-align:left;cursor:pointer;border-radius:var(--radius-md);background:0 0;border:0;flex:1;display:flex}.roster-list__pick:hover{background:var(--gray-100)}.roster-list__row.is-selected .roster-list__pick:hover{background:0 0}.roster-list__name{font-weight:500}.roster-list__remove{width:44px;height:44px;margin-left:var(--space-2);margin-right:var(--space-1);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.roster-list__remove:hover{background:var(--color-error-soft);color:var(--color-error)}.assigned-skills{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.assigned-skills__row{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.assigned-skills__info{flex-direction:column;flex:1;min-width:0;display:flex}.assigned-skills__name{font-weight:500}.assigned-skills__name .tag{margin-left:var(--space-1);vertical-align:middle}.assigned-skills__meta{font-size:var(--text-sm)}.assigned-skills__move{align-items:center;gap:var(--space-1);display:inline-flex}.assigned-skills__move select{max-width:12rem}.class-manage__toolbar{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.class-manage__toolbar-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.segmented{border:1px solid var(--border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.segmented__btn{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-2) var(--space-3);background:var(--bg-surface);border:0;border-inline-start:1px solid var(--border);font:inherit;color:var(--text-muted);cursor:pointer;font-weight:600;display:inline-flex}.segmented__btn:first-child{border-inline-start:0}.segmented__btn[aria-pressed=true]{background:var(--color-primary-soft);color:var(--color-primary-text)}.roster-list__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.roster-list__go{color:var(--text-muted);flex:none}.roster-badges{gap:var(--space-1);flex-wrap:wrap;display:flex}.roster-badge{padding:1px var(--space-1);border-radius:var(--radius-pill);font-size:var(--text-sm);background:var(--gray-100);color:var(--text-muted);align-items:center;gap:3px;font-weight:600;display:inline-flex}.roster-badge--iep{background:var(--color-success-soft);color:var(--color-success-text)}.class-manage__skills-heading{align-items:center;gap:var(--space-2);min-width:0;display:flex}.class-manage__section-title:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.class-manage__back{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-1) var(--space-2);font:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:0;font-weight:600;display:none}.removed-skills{margin-top:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-2)}.removed-skills__toggle{align-items:center;gap:var(--space-1);min-height:44px;padding:var(--space-1) 0;font:inherit;color:var(--text-muted);cursor:pointer;background:0 0;border:0;font-weight:600;display:inline-flex}.removed-skills__chevron{transition:transform .15s}.removed-skills__chevron.is-open{transform:rotate(180deg)}.removed-skills__list{margin:var(--space-1) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.removed-skills__row{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px dashed var(--border);border-radius:var(--radius-md);display:flex}.removed-skills__info{flex-direction:column;flex:1;min-width:0;display:flex}.removed-skills__name{font-weight:500}.removed-skills__meta{font-size:var(--text-sm)}.class-matrix{--matrix-border:var(--border)}.class-matrix__print-title{display:none}.class-matrix__scroll{border:1px solid var(--matrix-border);border-radius:var(--radius-lg);max-height:70vh;overflow:auto}.class-matrix__table{border-collapse:collapse;width:max-content;min-width:100%}.class-matrix__table th,.class-matrix__table td{border-bottom:1px solid var(--matrix-border);padding:var(--space-2);text-align:left;vertical-align:middle}.class-matrix__corner,.class-matrix__skill{z-index:1;background:var(--bg-surface);border-inline-end:1px solid var(--matrix-border);position:sticky;left:0}.class-matrix__corner{z-index:2}.class-matrix__table thead th{background:var(--bg-surface);z-index:1;position:sticky;top:0}.class-matrix__table thead .class-matrix__corner{z-index:3}.class-matrix__skill{min-width:160px;max-width:260px;font-size:var(--text-sm)}.class-matrix__skill-name{white-space:normal;overflow-wrap:anywhere;font-weight:600;display:block}.class-matrix__skill-code{font-size:var(--text-sm);font-weight:400;display:block}.class-matrix__student{min-width:150px;font-size:var(--text-sm);font-weight:500}.class-matrix__student-inner{align-items:center;gap:var(--space-2);display:flex}.class-matrix__student-body{flex-direction:column;min-width:0;display:flex}.class-matrix__student-name{white-space:nowrap}.class-matrix__student-count{font-size:var(--text-sm);font-weight:400}.class-matrix__cell{text-align:center}.class-matrix__cell-star{align-items:center;display:inline-flex}.class-matrix__empty{color:var(--text-muted)}.skill-status{text-transform:capitalize;--pill-bg:var(--gray-200);flex:none}.skill-status--active{--pill-bg:var(--color-primary-soft);--pill-fg:var(--color-primary-text)}.skill-status--maintenance{--pill-bg:var(--color-maintenance-soft);--pill-fg:var(--color-maintenance-text)}.skill-status--mastered{--pill-bg:var(--color-success-soft);--pill-fg:var(--color-success-text)}.skill-status--inactive{--pill-bg:var(--color-completed-soft);--pill-fg:var(--color-completed)}.skill-status--inactive:before{content:"🎉";font-size:1em;line-height:1}.roster-picker{margin:var(--space-2) 0 0;gap:var(--space-1);flex-direction:column;max-height:320px;padding:0;list-style:none;display:flex;overflow-y:auto}.roster-picker__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;color:var(--text);text-align:left;cursor:pointer;transition:border-color .12s,background .12s;display:flex}.roster-picker__item:hover:not(:disabled),.roster-picker__item.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.roster-picker__item.is-selected .roster-picker__add{color:var(--color-primary)}.roster-picker__name{flex:1;font-weight:500}.roster-picker__add{color:var(--color-primary);align-items:center;display:inline-flex}.roster-picker__item input[type=checkbox]{cursor:pointer;flex:none;width:20px;height:20px}.assign-skill__hint{margin:0 0 var(--space-2);font-size:var(--text-sm)}.roster-strip{align-items:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-1);margin-bottom:var(--space-3);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.roster-tile{align-items:center;gap:var(--space-1);width:124px;padding:var(--space-2) var(--space-1);border-radius:var(--radius-md);font:inherit;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;flex-direction:column;flex:none;transition:background .15s,border-color .15s,opacity .15s,filter .15s,box-shadow .15s;display:flex}.roster-tile:hover{background:var(--gray-100)}.roster-strip.is-focused .roster-tile:not(.is-selected){opacity:.45;filter:grayscale(.7)}.roster-strip.is-focused .roster-tile:not(.is-selected):hover{opacity:.8;filter:grayscale(.2)}.roster-tile.is-selected{background:var(--color-primary-soft);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.roster-tile.is-selected .avatar-ring{box-shadow:0 0 0 3px var(--color-primary-soft);border-radius:50%}.roster-tile__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:var(--text-sm);font-weight:500;overflow:hidden}.roster-tile.is-selected .roster-tile__name{color:var(--color-primary-text);font-weight:600}.btn--sm{min-height:36px;padding:0 var(--space-3);font-size:var(--text-sm)}.btn--danger{background-color:var(--color-error);color:var(--white);border-color:var(--color-error);background-image:none}.btn--danger:hover{filter:brightness(.95);box-shadow:var(--shadow-sm)}.btn--danger:active{transform:translateY(1px)}.btn--danger:disabled{opacity:.55;cursor:not-allowed;filter:none;transform:none}.btn--danger.btn--ghost{background:var(--bg-surface);color:var(--color-error-text);border-color:var(--border);filter:none}.btn--danger.btn--ghost:hover{background:var(--color-error-soft);color:var(--color-error-text);border-color:var(--color-error);filter:none}@media (width<=900px){.class-manage{grid-template-columns:1fr}.class-manage__roster,.class-manage__skills{min-width:0}.class-manage:not(.class-manage--detail) .class-manage__skills,.class-manage--detail .class-manage__roster{display:none}.class-manage__back{display:inline-flex}}@media (width<=480px){.class-grid{gap:var(--space-2);grid-template-columns:1fr}.class-detail__actions,.class-manage__section-head,.assigned-skills__row{flex-wrap:wrap}.assigned-skills__info{flex-basis:100%}.class-card{padding:var(--space-3);gap:var(--space-2)}.class-card__icon{width:40px;height:40px}.class-card__stats{padding-top:var(--space-2)}.roster-strip{gap:var(--space-1);padding:var(--space-2) 0}.roster-tile{width:108px}}.report-docs__toolbar{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.report-docs__actions{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.report-docs__generated{font-size:var(--text-sm)}@media (width<=480px){.report-docs__actions{width:100%}.report-docs__actions .btn{flex:auto}.report-docs__generated{flex-basis:100%}}.report-doc{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);max-width:820px}.report-doc__head{border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-3);margin-bottom:var(--space-4)}.report-doc__title{font-size:var(--text-3xl);color:var(--text);margin:0}.report-doc__meta{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.report-doc__section{margin-bottom:var(--space-5);break-inside:avoid}.report-doc__heading{font-size:var(--text-lg);color:var(--color-primary-text);margin:0 0 var(--space-2)}.iep-area__text{font-size:var(--text-md);margin:0;line-height:1.6}.iep-area__text--print-only{display:none}@media print{.iep-area__text--print-only{display:block}}.iep-workspace__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.iep-workspace__head .page-title{margin:0}.iep-assembler__area+.iep-assembler__area{border-top:1px solid var(--border);padding-top:var(--space-4)}.iep-assembler__needs,.iep-assembler__standards{margin:var(--space-2) 0 0;padding-left:var(--space-4);font-size:var(--text-md);line-height:1.6}.iep-assembler__needs li,.iep-assembler__standards li{margin-bottom:var(--space-1)}.iep-assembler__standard{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.iep-assembler__standard-text{min-width:0}@media (width<=480px){.iep-assembler__standard{align-items:flex-start;gap:var(--space-1);flex-direction:column}.iep-assembler__standard .copy-btn{min-height:44px}}.iep-area__controls{align-items:center;gap:var(--space-2);display:inline-flex}.iep-area__editor{gap:var(--space-2);flex-direction:column;display:flex}.iep-area__textarea{box-sizing:border-box;width:100%;font:inherit;font-size:var(--text-md);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);resize:vertical;line-height:1.6}.iep-area__hint{font-size:var(--text-sm);margin:0}.iep-area__editor-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.iep-areas__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.iep-areas__head .pl-disclaimer{flex:20rem;max-width:46rem;margin:0}.iep-areas__plain-toggle{align-items:center;gap:var(--space-2);min-height:44px;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;display:inline-flex}.iep-areas__plain-toggle input{cursor:pointer;width:1.1rem;height:1.1rem}@media (width<=480px){.iep-areas__plain-toggle{white-space:normal}}.iep-area--untagged{padding:var(--space-3);border-left:3px solid var(--color-warning);border-radius:var(--radius-md);background:var(--color-warning-soft,#f7ede4)}.iep-area__warning{margin:0 0 var(--space-2);font-size:var(--text-sm);color:var(--color-warning-text);line-height:1.5}.iep-draft__toolbar{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.iep-draft__toolbar .pl-disclaimer{flex:20rem;max-width:46rem}.iep-draft__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.iep-draft__actions .btn--primary.is-done{background-color:var(--color-success);background-image:linear-gradient(180deg, var(--color-success), var(--color-success-dark))}.iep-draft__doc{margin-top:var(--space-2)}.iep-draft__goals{margin:0;padding:0;list-style:none}.iep-draft__goal{margin-bottom:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.iep-draft__goal:first-child{border-top:none;padding-top:0}.iep-draft__goal-name{align-items:center;gap:var(--space-2);font-size:var(--text-lg);margin:0 0 var(--space-2);flex-wrap:wrap;display:flex}.iep-draft__label{font-size:var(--text-md);margin:var(--space-3) 0 0}.iep-draft .custom-goals__head+.choose-goal__statement,.iep-draft .custom-goals__head+p{margin-top:var(--space-1)}.iep-draft__empty{margin:0}.iep-draft__area+.iep-draft__area{padding-top:var(--space-4);border-top:1px solid var(--border)}.iep-draft__area-block{margin-top:var(--space-4)}.iep-draft__area-block:first-of-type{margin-top:var(--space-2)}.iep-draft__area-block .iep-area__empty{margin:var(--space-1) 0 0;font-size:var(--text-md)}@media (width<=900px){.iep-draft__toolbar{flex-direction:column}.iep-draft__actions{width:100%}}@media (width<=480px){.iep-draft__actions{flex-direction:column}.iep-draft__actions .btn{justify-content:center;width:100%}}.report-doc__prose{margin:0;line-height:1.6}.report-doc__source{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.report-doc__list{padding-left:var(--space-4);margin:0;line-height:1.7}.report-doc__stats{gap:var(--space-3);flex-wrap:wrap;display:flex}.report-doc__stat{min-width:84px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;align-items:center;display:flex}.report-doc__stat-num{font-size:var(--text-2xl);color:var(--color-primary-text);font-weight:700}.report-doc__stat-label{font-size:var(--text-sm);color:var(--text-muted)}.report-doc__table-wrap{max-width:100%;overflow-x:auto}.report-doc__table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.report-doc__table th,.report-doc__table td{text-align:left;padding:var(--space-2);border-bottom:1px solid var(--border);vertical-align:top}.report-doc__table th{color:var(--text-muted);font-weight:600}.report-doc__code{margin-right:var(--space-2);color:var(--text-muted);font-variant-numeric:tabular-nums;display:inline-block}.report-doc__footer{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--text-muted)}@media (width<=720px){.report-doc{padding:var(--space-4)}}.iep-summary__toolbar{justify-content:space-between;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.iep-summary__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.iep-summary__doc{margin-top:0}.iep-summary__notice{margin:0 0 var(--space-3);padding:var(--space-1) var(--space-2);border-left:3px solid var(--border);font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.iep-summary__scroll{overflow-x:auto}.iep-summary__table{min-width:640px}.iep-summary__table th[scope=row]{font-weight:600}.iep-summary__goal{gap:var(--space-1);flex-direction:column;max-width:22rem;display:flex}.iep-summary__goal-text{font-size:var(--text-sm);color:var(--text-muted);font-weight:400;line-height:1.5}.iep-summary__subject{align-self:flex-start}.iep-summary__sub{font-size:var(--text-sm);display:block}.iep-summary__trend{white-space:nowrap;font-size:var(--text-sm)}.iep-summary__trend--improving{color:var(--color-success-text,#2f7d4f)}.iep-summary__trend--declining{color:var(--color-error,#c0392b)}.iep-summary__mastery{gap:var(--space-1);flex-direction:column;align-items:flex-start;display:flex}.iep-summary__mastery-detail{font-size:var(--text-sm)}.iep-summary__student+.iep-summary__student{break-before:page;page-break-before:always}@media print{.iep-summary__scroll{overflow:visible!important}.iep-summary__table{min-width:0}.iep-summary__notice{color:#333}}.caseload-report__controls{gap:var(--space-4);flex-direction:column;display:flex}.caseload-report__pickers{gap:var(--space-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}.caseload-report__filters{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.caseload-report__search{flex:12rem}.caseload-report__bulk{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.caseload-report__count{font-size:var(--text-sm);margin-left:auto}.caseload-report__student-list{max-height:22rem;overflow-y:auto}.caseload-report__type-desc{font-size:var(--text-sm);line-height:1.4;display:block}.caseload-report__scope-options{gap:var(--space-1);flex-direction:column;display:flex}.caseload-report__skillpick{margin-top:var(--space-3)}.caseload-report__period{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.caseload-report__skill-list{max-height:18rem;overflow-y:auto}.caseload-report__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.caseload-report__hint{font-size:var(--text-sm);margin:0}.caseload-report__doc{margin-top:var(--space-4)}.caseload-report__student-head{margin-bottom:var(--space-3)}.caseload-report__student+.caseload-report__student{break-before:page;page-break-before:always}.caseload-report__doc-error{margin-bottom:var(--space-4)}.caseload-report__compare-note{margin:var(--space-2) 0 0}.skill-compare__head{margin-bottom:var(--space-4)}.skill-compare__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));display:grid}.skill-compare__card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);break-inside:avoid;flex-direction:column;display:flex}.skill-compare__card-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.skill-compare__name{font-weight:600}.skill-compare__metric{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.skill-compare__metric-when{font-size:var(--text-sm)}.skill-compare__unassigned,.skill-compare__nodata{font-size:var(--text-sm);margin:0}@media (width<=480px){.skill-compare__grid{grid-template-columns:1fr}}@media (width<=900px){.caseload-report__pickers{grid-template-columns:1fr}}@media print{.sidebar,.mobile-bar,.tabbar,.context-panel,.shell__backdrop,.main__bar,.back-link,.profile__header,.stat-row,.tabs--folder,.tabs--underline,.sectionsel,.next-iep__rail,.report-docs__toolbar,.report-docs__no-print,.setup-progress,.reports__actions,.ws-fab,.graph__toolbar,.recharts-tooltip-wrapper{display:none!important}.next-iep{display:block!important}.shell,.shell.has-context{height:auto!important;display:block!important}.main{padding:0!important;overflow:visible!important}.report-doc{border:none;border-radius:0;max-width:none;padding:0}.report-doc__section{break-inside:avoid}.report-doc__table-wrap{overflow:visible}.placement__screen{display:none!important}.placement-print{display:block!important}}.choose-goal .panel+.panel{margin-top:var(--space-3)}.choose-goal__statement{font-size:var(--text-md);margin:0;line-height:1.5}.choose-goal__source{margin:var(--space-2) 0 0}.choose-goal__objectives{padding-left:var(--space-4);gap:var(--space-2);flex-direction:column;margin:0;display:flex}.choose-goal__objective{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.objectives-editor{gap:var(--space-3);flex-direction:column;display:flex}.objectives-editor__list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.objectives-editor__row{align-items:flex-end;gap:var(--space-2);display:flex}.objectives-editor__field{gap:var(--space-1);flex-direction:column;flex:auto;min-width:0;display:flex}.objectives-editor__field textarea{resize:vertical;width:100%}.objectives-editor__remove{flex:none;min-height:44px}.objectives-editor__add{align-self:flex-start;min-height:44px}.objectives-editor__empty{margin:0}@media (width<=480px){.choose-goal__objective{align-items:flex-start;gap:var(--space-1);flex-direction:column}.choose-goal__objective .copy-btn{min-height:44px}.objectives-editor__row{flex-direction:column;align-items:stretch}.objectives-editor__remove{align-self:flex-start}}.framework-admin{margin-top:var(--space-4)}.framework-admin__stats{gap:var(--space-4);margin:var(--space-2) 0 0;flex-wrap:wrap;display:flex}.framework-admin__stats dt{font-size:var(--text-sm)}.framework-admin__stats dd{font-size:var(--text-lg);margin:0;font-weight:600}.framework-admin__history{margin-top:var(--space-4)}.framework-admin__history-title{margin:0 0 var(--space-2);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-weight:600}.framework-admin__history-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.framework-admin__history-row{justify-content:space-between;gap:var(--space-2);padding:var(--space-2) 0;border-top:1px solid var(--border);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.framework-admin__history-when{font-weight:600}.framework-diff{margin-top:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface)}.framework-diff__head{margin-bottom:var(--space-2)}.framework-diff__title{font-size:var(--text-lg);margin:0;font-weight:600}.framework-diff__summary{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-muted)}.framework-diff__alert{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--color-error);border-radius:var(--radius-md);background:var(--color-error-soft);color:var(--color-error);font-size:var(--text-sm);font-weight:600}.framework-diff__groups{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.framework-diff__group{border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;padding:var(--space-2)}.framework-diff__group--danger{border-color:var(--color-error)}.framework-diff__group-title{margin:0 0 var(--space-1);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.framework-diff__group-count{color:var(--text-muted)}.framework-diff__list{max-height:260px;margin:0;padding:0;list-style:none;overflow-y:auto}.framework-diff__empty{font-size:var(--text-sm);margin:0}.framework-diff__item{align-items:baseline;gap:var(--space-1) var(--space-2);padding:var(--space-1) var(--space-2);border-top:1px solid var(--border);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.framework-diff__item:first-child{border-top:none}.framework-diff__item--danger{background:var(--color-error-soft);border-radius:var(--radius-sm)}.framework-diff__code{font-variant-numeric:tabular-nums;font-weight:600}.framework-diff__name{flex:1;min-width:0}.framework-diff__meta{font-size:var(--text-sm)}.framework-diff__flag{font-size:var(--text-sm);color:var(--color-error);font-weight:600}.framework-diff__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3);display:flex}@media (width<=900px){.framework-diff__groups{grid-template-columns:1fr}}@media (width<=480px){.framework-diff__actions{flex-direction:column-reverse}.framework-diff__actions .btn{width:100%}}.home__grid{align-items:flex-start;gap:var(--space-4);display:flex}.home__col{gap:var(--space-4);flex-direction:column;flex:1;min-width:0;display:flex}.home__grid .home-card{margin-top:0}@media (width<=900px){.home__grid{flex-direction:column}}.home-card__head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.home-card__head .btn{white-space:nowrap;flex:none}.home-card__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.home-card__lead{align-items:center;gap:var(--space-3);flex:auto;min-width:0;display:flex}.home-card__icon{border-radius:var(--radius-md);background:var(--color-primary-soft);width:48px;height:48px;color:var(--color-primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.home-card__icon svg{width:24px;height:24px}.home-card__icon--alert{background:var(--color-error);color:#fff}.home-card__lead-text{min-width:0}.home-card__lead-text .panel__title{margin:0}.home-card__empty{font-size:var(--text-sm);margin:2px 0 0}@media (width<=480px){.home-card__head{flex-wrap:wrap}.home-card__head .btn,.home-card__actions{width:100%}}.home-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.home-reminders__group+.home-reminders__group{margin-top:var(--space-3)}.home-reminders__heading{margin:0 0 var(--space-2);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:600}.home-reminder{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:inherit;text-decoration:none;display:flex}.home-reminder:hover{border-color:var(--color-primary);background:var(--surface-2,#f6f7f9)}.home-reminder__name{overflow-wrap:anywhere;min-width:0;font-weight:500}.home-reminder__chevron{color:var(--text-muted);font-size:var(--text-lg);flex:none}.home-feed__row{justify-content:flex-start}.home-feed__text{overflow-wrap:anywhere;min-width:0;font-size:var(--text-sm);flex:1}.home-feed__pip{flex:none}.home-feed__when{font-size:var(--text-sm);white-space:nowrap;flex:none}.home-feed__tier+.home-feed__tier{margin-top:var(--space-3)}.home-feed__item{align-items:stretch;gap:var(--space-1);display:flex}.home-feed__item .home-feed__row{flex:1;min-width:0}.home-feed__row--static{cursor:default}.home-feed__row--static:hover{border-color:var(--border);background:0 0}.home-feed__icon{width:24px;height:24px;color:var(--color-primary);flex:none;justify-content:center;align-items:center;display:inline-flex}.home-feed__tag{text-align:center;border-radius:var(--radius-pill);min-width:5.5rem;font-size:var(--text-sm);white-space:nowrap;background:var(--color-primary-soft);color:var(--color-primary-text);flex:none;align-self:flex-start;padding:2px 8px;font-weight:600}.home-feed__tag--adjust{background:var(--color-warning-soft);color:var(--color-warning-text)}.home-feed__tag--collect{background:var(--color-maintenance-soft);color:var(--color-maintenance-text)}.home-feed__tag--checkin{background:var(--color-error-soft);color:var(--color-error)}.home-feed__tag--win{background:var(--color-success-soft);color:var(--color-success-text)}.home-feed__tag--choose{background:var(--color-completed-soft);color:var(--color-completed)}.home-feed__dismiss{min-width:44px;min-height:44px;padding:var(--space-1);cursor:pointer;color:var(--text-muted);font-size:var(--text-lg);border-radius:var(--radius-md);background:0 0;border:none;flex:none;justify-content:center;align-self:center;align-items:center;line-height:1;display:inline-flex}.home-feed__dismiss:hover{color:var(--color-error);background:var(--color-error-soft)}.home-feed__card{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3)}.home-card__head--bare{margin-bottom:var(--space-2);justify-content:flex-end}.home-announce{border-left:3px solid var(--color-primary);padding:var(--space-1) 0 var(--space-1) var(--space-3)}.home-announce__head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.home-announce__title{font-weight:600}.home-announce__body{margin:var(--space-1) 0;white-space:pre-wrap}.home-announce__meta{font-size:var(--text-sm);margin:0}.home-announce__del{cursor:pointer;min-width:44px;min-height:44px;font-size:var(--text-lg);color:var(--text-muted);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.home-announce-form{gap:var(--space-2);margin-bottom:var(--space-3);display:grid}.home-announce-form__title,.home-announce-form__body{width:100%;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);font:inherit;background:var(--bg-surface)}.home-announce-form__body{resize:vertical}.home-notif{align-items:center;gap:var(--space-1);display:flex}.home-notif__link{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:inherit;flex:1;min-width:0;text-decoration:none;display:flex}.home-notif__dismiss{cursor:pointer;font-size:var(--text-lg);padding:var(--space-1);color:var(--text-muted);border-radius:var(--radius-sm);background:0 0;border:none;flex:none;line-height:1}.home-notif__dismiss:hover{color:var(--color-error);background:var(--color-error-soft)}.home-notif__link:hover{background:var(--color-primary-soft)}.home-notif__msg{flex:1}.home-notif--unread .home-notif__msg{font-weight:600}.home-notif__dot{background:var(--color-primary);border-radius:50%;flex:none;width:8px;height:8px}.home-notif__when{font-size:var(--text-sm);flex:none}.manage-trials__head{margin-bottom:var(--space-4)}.manage-trials__filters{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.manage-trials__filters .field,.manage-trials__reason{flex-direction:column;gap:2px;display:flex}.data-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.data-table th,.data-table td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border)}.data-table th{color:var(--text-muted);background:var(--bg-app);font-weight:600}.data-table tbody tr:last-child td,.data-table tr:last-child td{border-bottom:none}.data-table__wrap,.manage-trials__tablewrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.manage-trials__table th,.manage-trials__table td{white-space:nowrap}.manage-trials__check{text-align:center;width:36px}.manage-trials__table tr.is-voided{color:var(--text-muted);background:var(--bg-app)}.manage-trials__result{text-transform:capitalize;font-weight:600}.manage-trials__result--correct{color:var(--color-success-text)}.manage-trials__result--incorrect{color:var(--color-error)}.manage-trials__voided{color:var(--text-muted);font-weight:600}.manage-trials__actions{align-items:flex-end;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.manage-trials__reason{flex:280px;margin-bottom:0}.manage-trials__void-btn{background:var(--color-error);color:#fff;border-color:var(--color-error)}.manage-trials__void-btn:hover:not(:disabled){filter:brightness(.94)}.manage-trials__notice{color:var(--color-success-text);margin:0 0 var(--space-3)}.manage-trials__truncated{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border-left:3px solid var(--color-warning);background:var(--color-error-soft);color:var(--text);font-size:var(--text-sm)}.manage-trials__confirm .manage-trials__breakdown{margin:var(--space-3) 0 0;border:1px solid var(--border);border-radius:var(--radius-md);max-height:40vh;padding:0;list-style:none;overflow-y:auto}.manage-trials__breakdown li{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);display:flex}.manage-trials__breakdown li:not(:last-child){border-bottom:1px solid var(--border)}.manage-trials__breakdown-count{color:var(--text-muted);white-space:nowrap}.manage-trials__selectbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.manage-trials__selectall{align-items:center;gap:var(--space-2);cursor:pointer;min-height:44px;font-weight:600;display:inline-flex}.manage-trials__selectall input{width:20px;height:20px}.manage-trials__selectcount{color:var(--text-muted);font-size:var(--text-sm)}.manage-trials__cards{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.mt-card{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.mt-card__select{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);cursor:pointer;min-height:44px;display:flex}.mt-card__check{border:2px solid var(--gray-400);border-radius:var(--radius-sm);background:var(--bg-surface);flex:none;width:24px;height:24px;margin-top:2px;transition:background .12s,border-color .12s}.mt-card__select.is-selected{background:var(--color-success-soft);box-shadow:inset 0 0 0 2px var(--color-success)}.mt-card__select.is-selected .mt-card__check{border-color:var(--color-success);background:var(--color-success);position:relative}.mt-card__select.is-selected .mt-card__check:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:3px;left:7px;transform:rotate(45deg)}.mt-card__select:focus-within{outline:2px solid var(--color-primary);outline-offset:-2px}.mt-card__body{flex-direction:column;gap:2px;min-width:0;display:flex}.mt-card__skill{overflow-wrap:anywhere;font-weight:600}.mt-card__meta{font-size:var(--text-sm);color:var(--text-muted);overflow-wrap:anywhere}.mt-card__tags{align-items:center;gap:var(--space-2);font-size:var(--text-sm);margin-top:2px;display:flex}.mt-card__type{color:var(--text-muted)}.mt-card--voided{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);color:var(--text-muted);background:var(--bg-app);display:flex}@media (width<=480px){.manage-trials__filters .field,.manage-trials__reason{flex:100%}.manage-trials__reason{margin-bottom:var(--space-3)}.manage-trials__actions .manage-trials__void-btn{width:100%}}.form-section{margin-top:var(--space-5)}.form-section__title{font-size:var(--text-lg);color:var(--text);margin:0 0 var(--space-3)}.form-section__subtitle{font-size:var(--text-md);color:var(--text);margin:var(--space-5) 0 var(--space-2)}.tri-list{margin:var(--space-4) 0 0;gap:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.tri-card{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.tri-card__main{min-width:0;color:inherit;flex-direction:column;flex:1;gap:2px;text-decoration:none;display:flex}.tri-card__title{color:var(--text);font-weight:600}.tri-card__meta{font-size:var(--text-sm);color:var(--text-muted)}.tri-card--link{padding:0;transition:border-color .12s,box-shadow .12s,transform .12s}.tri-card--link .tri-card__main{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);flex-direction:row}.tri-card--link:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.tri-card--link:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.tri-card__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.tri-card__check{border-radius:var(--radius-pill);background:var(--color-primary-soft);width:28px;height:28px;color:var(--color-primary-text);flex:none;place-items:center;display:inline-grid}.tri-card__status{border-radius:var(--radius-pill);flex:none;place-items:center;width:28px;height:28px;display:inline-grid}.tri-card__status--complete{background:var(--color-success-soft);color:var(--color-success-text)}.tri-card__status--partial{background:var(--color-warning-soft);color:var(--color-warning-text)}.tri-card__dot{border-radius:var(--radius-pill);background:var(--color-warning);width:10px;height:10px}.tri-card__status-label{font-size:var(--text-sm);font-weight:600}.tri-card__status-label--complete{color:var(--color-success-text)}.tri-card__status-label--partial{color:var(--color-warning-text)}.tri-card__go{color:var(--text-muted);flex:none;place-items:center;transition:transform .12s,color .12s;display:inline-grid}.tri-card--link:hover .tri-card__go,.tri-card--link:focus-within .tri-card__go{color:var(--color-primary);transform:translate(2px)}.tri-card__delete{margin-right:var(--space-4);flex:none}.tri-badge{padding:2px 10px;font-weight:400}.tri-badge--draft{--pill-fg:var(--text-muted)}.tri-badge--final{--pill-bg:var(--color-success-soft);--pill-fg:var(--color-success-text)}.form-page.triennial-workspace{max-width:var(--content-wide)}.triennial-workspace__status{align-items:center;gap:var(--space-3);display:flex}.triennial-workspace__date-row{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.triennial-workspace__placeholder{gap:var(--space-3);padding:var(--space-4);background:var(--gray-100);border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text-muted);align-items:flex-start;display:flex}.triennial-workspace__issues{background:var(--color-error-soft);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.triennial-workspace__issues ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}@media (width<=480px){.tri-card{flex-wrap:wrap}}@media print{.no-print{display:none!important}body.printing-class-matrix *{visibility:hidden}body.printing-class-matrix .print-region,body.printing-class-matrix .print-region *{visibility:visible}body.printing-class-matrix .print-region{width:100%;position:absolute;top:0;left:0}body.printing-class-matrix .class-matrix__print-title{font-size:var(--text-xl);color:#000;margin:0 0 12pt;font-weight:700;display:block}body.printing-class-matrix .class-matrix__scroll{border:0;max-height:none;overflow:visible}body.printing-class-matrix .class-matrix__corner,body.printing-class-matrix .class-matrix__skill,body.printing-class-matrix .class-matrix__table thead th{position:static}body.printing-class-matrix .class-matrix__table th,body.printing-class-matrix .class-matrix__table td{color:#000;border:.5pt solid #000}}.tri-narrative__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tri-narrative__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.tri-narrative__text{white-space:pre-wrap;line-height:1.6}.tri-narrative__source{font-size:var(--text-sm);color:var(--text-muted);font-style:italic}.tri-narrative__edit textarea{width:100%}.tri-validation{padding:var(--space-3);margin:0 0 var(--space-3);border-radius:var(--radius-md);background:var(--gray-100);list-style:none}.tri-validation--error{color:var(--color-error)}.tri-validation--warning{color:var(--color-warning-text)}.tri-review{margin:var(--space-3) 0 0;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.tri-review__empty{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;color:var(--color-success-text);font-weight:600;display:flex}.tri-review__item{border:1px solid var(--border);border-left:3px solid var(--gray-400);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-3)}.tri-review__item--warning{border-left-color:var(--color-warning)}.tri-review__item--info{border-left-color:var(--color-primary)}.tri-review__item--note{border-left-color:var(--gray-400)}.tri-review__summary{align-items:baseline;gap:var(--space-2);cursor:pointer;flex-wrap:wrap;display:flex}.tri-review__summary--static{cursor:default}.tri-review__disclosure>summary{list-style:none}.tri-review__disclosure>summary::-webkit-details-marker{display:none}.tri-review__tag{font-size:var(--text-sm);padding:1px var(--space-2);border-radius:var(--radius-pill);border:1px solid;flex:none;font-weight:600}.tri-review__tag--warning{color:var(--color-warning-text)}.tri-review__tag--info{color:var(--color-primary)}.tri-review__tag--note{color:var(--text-muted)}.tri-review__sections{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.tri-review__what{min-width:0;font-size:var(--text-md);flex:12rem}.tri-review__toggle{font-size:var(--text-sm);color:var(--color-primary-text);white-space:nowrap;flex:none;margin-left:auto;font-weight:600}.tri-review__toggle:after{content:"Show details"}.tri-review__disclosure[open] .tri-review__toggle:after{content:"Hide details"}.tri-review__detail{margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--gray-700);white-space:pre-wrap}.tri-review__meta{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.tri-review__stale{align-items:center;gap:var(--space-2);margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--color-warning-text);font-weight:600;display:flex}.tri-review__item{align-items:flex-start;gap:var(--space-2);display:flex}.tri-review__item>.tri-review__disclosure,.tri-review__item>.tri-review__summary--static{flex:auto;min-width:0}.tri-review__check{min-width:44px;min-height:44px;margin:calc(-1 * var(--space-2)) 0 0 calc(-1 * var(--space-1));cursor:pointer;flex:none;justify-content:center;align-items:center;display:inline-flex}.tri-review__check input{cursor:pointer;width:20px;height:20px}.tri-review__item--resolved{opacity:.6}.tri-review__item--resolved .tri-review__what{text-decoration:line-through}.triennial-workspace__issues .tri-checklist{margin:var(--space-2) 0 0;gap:var(--space-1);flex-direction:column;padding:0;list-style:none;display:flex}.tri-checklist li{align-items:flex-start;gap:var(--space-2);font-size:var(--text-md);display:flex}.tri-checklist svg{flex:none;margin-top:2px}.tri-checklist--blocking svg{color:var(--color-warning-text)}.tri-checklist--advisory{color:var(--text-muted)}.tri-checklist--advisory svg{color:var(--color-primary)}.tri-checklist__tag{font-weight:700}.confirm-dialog__type{margin-top:var(--space-3);text-align:left;gap:var(--space-1)}.confirm-dialog__type input{width:100%}.tri-scores{overflow-x:auto}.tri-scores table{border-collapse:collapse;width:100%}.tri-scores th,.tri-scores td{text-align:left;padding:var(--space-2);border-bottom:1px solid var(--border);white-space:nowrap}.tri-scores__domain td{color:var(--text);background:var(--gray-100);font-weight:600}.tri-scores input,.tri-scores select{width:100%;min-width:5rem}.tri-scores input[type=number]{min-width:4.5rem}.tri-scores th:first-child,.tri-scores td:first-child{z-index:1;background:var(--bg-surface);box-shadow:1px 0 0 var(--border);position:sticky;left:0}.tri-scores thead th:first-child{z-index:2}.tri-scores thead th:first-child,.tri-scores tbody tr:not(.tri-scores__domain) td:first-child:not(.muted){white-space:normal;max-width:10rem}.tri-scores tr.tri-scores__domain td:first-child{background:var(--gray-100)}.tri-missing{margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);background:var(--color-warning-soft);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-text)}.tri-missing__title{align-items:center;gap:var(--space-2);margin:0;font-weight:600;display:flex}.tri-missing__list{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.tri-missing__list li{margin-top:var(--space-1)}.tri-cell{position:relative}.tri-cell--filled{background:#3b82a829}.tri-cell--filled:after{content:"";background:#3b82a8;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.tri-row--filled>td{background:#3b82a81f}.tri-import-legend{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--text-muted);display:inline-flex}.tri-import-legend__swatch{background:#3b82a838;border:1px solid #3b82a8;border-radius:3px;width:14px;height:14px}.tri-import-conflicts{margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-warning);border-radius:var(--radius-md);background:var(--gray-100);border-left-width:3px}.tri-import-conflicts__title{margin:0 0 var(--space-2);font-size:var(--text-md);font-weight:600}.tri-import-conflicts__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tri-import-conflict{align-items:center;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.tri-import-conflict__text{flex:14rem;min-width:0}.tri-import-conflicts__actions{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.score-import{margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-md)}.score-import__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.score-import__title{font-size:var(--text-md);margin:0;font-weight:600}.score-import__hint{margin:var(--space-1) 0 var(--space-3);font-size:var(--text-sm)}.score-import__text{resize:vertical;width:100%}.score-import__actions{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.score-import__file{font-size:var(--text-sm)}.score-import__msg{margin:var(--space-3) 0 0;font-size:var(--text-sm)}.score-import__msg--warn{color:var(--color-warning-text)}.tri-check{align-items:center;gap:var(--space-2);display:flex}.tri-add-assessment{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.tri-add-assessment select{flex:auto;min-width:12rem}.tri-chart{margin-top:var(--space-2)}@media (width<=480px){.tri-narrative__head{flex-direction:column;align-items:flex-start}.tri-add-assessment{flex-direction:column;align-items:stretch}}.tri-narrative__transforms{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.triennial-doc__toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.triennial-doc__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.triennial-doc{max-width:800px;margin:var(--space-4) auto 0;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-6);line-height:1.6}.triennial-doc__title{font-size:var(--text-2xl);text-align:center;margin:0 0 var(--space-5)}.triennial-doc__info{border-collapse:collapse;width:100%;margin-bottom:var(--space-5)}.triennial-doc__info th{text-align:left;vertical-align:top;width:12rem;color:var(--text);padding:4px 8px}.triennial-doc__info td{padding:4px 8px}.triennial-doc__assessment{margin-top:var(--space-6)}.triennial-doc__h2{font-size:var(--text-xl);border-bottom:2px solid var(--border);padding-bottom:4px}.triennial-doc__h3{font-size:var(--text-lg);margin-top:var(--space-4);margin-bottom:var(--space-2)}.triennial-doc__meta{color:var(--text-muted);font-style:italic}.triennial-doc__p{margin:var(--space-2) 0;white-space:pre-wrap}.triennial-doc__table-wrap{max-width:100%;overflow-x:auto}.triennial-doc__scores{border-collapse:collapse;width:100%;margin:var(--space-3) 0}.triennial-doc__scores th,.triennial-doc__scores td{border:1px solid var(--border);text-align:left;padding:6px 10px}.triennial-doc__notes-col{white-space:normal;min-width:12rem;max-width:22rem}.triennial-doc__signature{margin-top:var(--space-6)}.triennial-doc__sig-lines{gap:var(--space-6);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.triennial-doc__sig-field{flex-direction:column;flex:16rem;min-width:16rem;display:flex}.triennial-doc__sig-line{border-bottom:1px solid var(--text);height:var(--space-6)}.triennial-doc__sig-label{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--text-muted)}.triennial-doc__running-head,.triennial-doc__running-foot{display:none}@media print{.triennial-doc{border:none;border-radius:0;max-width:none;margin:0;padding:0}@page triennial{size:letter;margin:.9in .75in;@bottom-center{content:"Page " counter(page);font-size:9pt;color:#555}@top-right{content:"Confidential";font-size:9pt;color:#555}}.triennial-doc{page:triennial}.triennial-doc__assessment{break-before:page}.triennial-doc__assessment:first-of-type{break-before:auto}.triennial-doc__table-wrap{overflow:visible}.triennial-doc__scores tr,.triennial-doc__scores thead,.triennial-doc__signature,.triennial-doc__sig-field{break-inside:avoid;page-break-inside:avoid}.triennial-doc__running-head,.triennial-doc__running-foot{color:#555;text-align:center;font-size:9pt;display:block;position:fixed;left:0;right:0}.triennial-doc__running-head{top:0}.triennial-doc__running-foot{bottom:0}}.tri-audit{margin:var(--space-2) 0 0;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.tri-audit__row{justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.tri-audit__meta{color:var(--text-muted);font-size:var(--text-sm)}.tri-danger__btn{color:var(--color-error);border-color:var(--color-error)}.worksheet-intro{margin:calc(-1 * var(--space-3)) 0 var(--space-4);max-width:60ch}.worksheet-recent{margin-bottom:var(--space-5)}.worksheet-recent__empty{margin:0}.worksheet-recent__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.worksheet-recent__row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);display:flex}.worksheet-recent__meta{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.worksheet-recent__title{overflow-wrap:anywhere;font-weight:600}.worksheet-recent__sub{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);flex-wrap:wrap;display:flex}.worksheet-recent__dot{color:var(--border)}.worksheet-recent__student{color:var(--text);font-weight:600}.worksheet-recent__actions{gap:var(--space-2);flex-shrink:0;display:flex}.worksheet-recent__keep.is-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--white)}.worksheet-recent__delete{color:var(--color-error)}@media (width<=480px){.worksheet-recent__row{flex-direction:column;align-items:stretch}.worksheet-recent__actions{justify-content:stretch}.worksheet-recent__actions .btn{flex:1;min-height:44px}}.worksheet-create{margin-bottom:var(--space-5)}.card__title{margin:0 0 var(--space-3);font-size:var(--text-lg)}.worksheet-step{padding:var(--space-3) 0;border-top:1px solid var(--border)}.worksheet-step:first-of-type{border-top:none;padding-top:0}@keyframes worksheet-step-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.worksheet-step--reveal{animation:.22s ease-out worksheet-step-in}@media (prefers-reduced-motion:reduce){.worksheet-step--reveal{animation:none}}.worksheet-step__label{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--text-md);font-weight:600;display:flex}.worksheet-step__num{border-radius:var(--radius-pill);background:var(--color-primary-soft);width:24px;height:24px;color:var(--color-primary-text);font-size:var(--text-sm);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.worksheet-chosen{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--color-primary-soft);flex-wrap:wrap;display:flex}.worksheet-chosen__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.worksheet-chosen__skill{align-items:center;gap:var(--space-2);min-width:0;display:flex}.worksheet-chosen__check{border-radius:var(--radius-pill);background:var(--color-primary);width:22px;height:22px;color:var(--white);flex:none;justify-content:center;align-items:center;display:inline-flex}.worksheet-chosen__check svg{width:15px;height:15px;display:block}.worksheet-skill-list{max-height:min(60vh,480px);margin-top:var(--space-3);overflow-y:auto}.worksheet-skill-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.worksheet-recents{margin-top:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.worksheet-recents__label{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.worksheet-recents__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.worksheet-recents__chip{align-items:center;gap:var(--space-2);max-width:100%;display:inline-flex}.worksheet-recents__chipname{text-overflow:ellipsis;white-space:nowrap;max-width:16ch;overflow:hidden}.skill-row--button{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none}.worksheet-choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.worksheet-type{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);text-align:left;cursor:pointer;flex-direction:column;flex:220px;min-width:220px;max-width:260px;display:flex;position:relative}.worksheet-type.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);background:var(--color-primary-soft)}.worksheet-type__thumb{aspect-ratio:120/84;width:100%;margin-bottom:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-app);color:var(--text-muted);display:block;overflow:hidden}.worksheet-type__thumb svg{width:100%;height:100%;display:block}.worksheet-type__thumb .wt-accent{color:var(--color-primary)}.worksheet-type.is-selected .worksheet-type__thumb{border-color:var(--color-primary)}.worksheet-type__name{font-weight:600}.worksheet-type__desc{font-size:var(--text-sm);color:var(--text-muted)}.worksheet-check{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-pill);background:var(--color-primary);width:20px;height:20px;color:var(--white);justify-content:center;align-items:center;display:inline-flex;position:absolute}.worksheet-check svg{width:14px;height:14px;display:block}.chip{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg-surface);font-size:var(--text-md);cursor:pointer;display:inline-flex;position:relative}.chip--selected{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-text);font-weight:600}.chip .worksheet-check{width:16px;height:16px;position:static}.chip .worksheet-check svg{width:11px;height:11px}.worksheet-create__actions{margin-top:var(--space-4);align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.worksheet-create__hint{font-size:var(--text-sm)}.worksheet-create__hint--empty{margin-top:var(--space-4)}.worksheet-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.worksheet-toolbar__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.worksheet-toolbar__count{align-items:center;gap:var(--space-1);display:inline-flex}.worksheet-toolbar__count-label{font-size:var(--text-sm);color:var(--text-muted)}.worksheet-toolbar__count-chip{min-width:2.5em;padding:var(--space-1) var(--space-2)}.worksheet-toolbar__count-chip.is-active{background:var(--color-primary);border-color:var(--color-primary);color:var(--white)}.worksheet-toolbar__lead{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:inline-flex}.worksheet-status-badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-primary-soft);color:var(--color-primary-text);font-size:var(--text-sm);font-weight:600;display:inline-flex}.worksheet-toolbar__delete:not(:disabled):hover{color:var(--color-error);border-color:var(--color-error)}.overflow-menu{display:inline-flex;position:relative}.overflow-menu__trigger{padding:var(--space-2)}.overflow-menu__panel{top:calc(100% + var(--space-1));z-index:40;min-width:12rem;max-height:min(70vh,22rem);max-width:calc(100vw - var(--space-4));padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface,var(--white));box-shadow:var(--shadow-md);flex-direction:column;display:flex;position:absolute;right:0;overflow-y:auto}.overflow-menu__group{flex-direction:column;display:flex}.overflow-menu__divider{height:1px;margin:var(--space-1) var(--space-2);background:var(--border)}.overflow-menu__item{align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;font-size:var(--text-md);text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.overflow-menu__item:not(:disabled):hover,.overflow-menu__item:focus-visible{background:var(--surface-muted)}.overflow-menu__item:disabled{opacity:.5;cursor:default}.overflow-menu__item--danger{color:var(--color-error)}.overflow-menu__item--danger:not(:disabled):hover,.overflow-menu__item--danger:focus-visible{background:var(--color-error-soft)}.worksheet-medit{margin-bottom:var(--space-4)}.worksheet-medit__toggle{justify-content:center;width:100%;min-height:44px}.worksheet-medit__panel{margin-top:var(--space-3);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface,var(--white));flex-direction:column;display:flex}.worksheet-medit__hint{font-size:var(--text-sm);color:var(--text-muted);margin:0}.worksheet-medit__field{gap:var(--space-1);flex-direction:column;display:flex}.worksheet-medit__label,.worksheet-medit__itemhead{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.worksheet-medit__item{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border);flex-direction:column;display:flex}.worksheet-medit__input{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--white);color:var(--text);font-family:inherit;font-size:var(--text-md)}textarea.worksheet-medit__input{resize:vertical;line-height:1.4}.worksheet-medit__input--num{text-align:center;width:5em;min-width:0}.worksheet-medit__fact{align-items:center;gap:var(--space-2);display:inline-flex}.worksheet-medit__factop{font-size:var(--text-lg);font-weight:600}@media (width<=900px){.worksheet-toolbar .btn{min-height:44px}.worksheet-toolbar__actions{width:100%}.worksheet-toolbar__primary{flex:100%;order:-1;justify-content:center}.worksheet-toolbar__regen{flex:100%;justify-content:center}}.worksheet-doc{--font-ws-title:"Poppins", var(--font-display), system-ui, sans-serif;--font-ws-body:"Lexend", var(--font-body), system-ui, sans-serif;background:var(--white);color:#111;width:8.5in;min-height:11in;font-family:var(--font-ws-body);margin:0 auto;padding:.7in .75in;line-height:1.5;box-shadow:0 2px 14px #0000002e}.worksheet-editor{max-width:none}.worksheet-batch__bar{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.worksheet-batch__heading{flex:auto}.worksheet-batch__item{margin-bottom:var(--space-6)}.worksheet-batch__label{font-size:var(--text-md);margin-bottom:var(--space-2);font-weight:600}.worksheet-editor--embedded{padding:0!important}.worksheet-doc__fs{border:0;min-width:0;margin:0;padding:0}.worksheet-doc__fs:disabled{--worksheet-edit-rest:transparent}.worksheet-preview{width:100%;padding:var(--space-5) var(--space-4);background:var(--bg-muted,#f4f4f2);border-radius:var(--radius-md);justify-content:center;display:flex;overflow:auto}.worksheet-preview__frame{flex:none;position:relative}.worksheet-preview__scaler{transform-origin:0 0;position:absolute;top:0;left:0}.worksheet-doc__header{gap:var(--space-2);padding-bottom:var(--space-4);border-bottom:3px solid #000;flex-direction:column;display:flex}.worksheet-doc__hfields{gap:var(--space-5);width:100%;font-size:var(--text-md);font-weight:600;display:flex}.worksheet-doc__hfield{align-items:flex-end;gap:var(--space-2);flex:1;display:flex}.worksheet-doc__rule,.worksheet-item__writeline,.worksheet-item__pw-line{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-image:repeating-linear-gradient(90deg,#000 0 8px,#0000 8px 16px);background-position:50%;background-repeat:no-repeat;background-size:100% 2px;border-top:2px solid #000;border-bottom:2px solid #000}.worksheet-doc__rule{flex:1;min-width:90px;height:2.2em}.worksheet-doc__score{align-self:flex-end;align-items:flex-end;gap:var(--space-1);font-size:var(--text-sm);white-space:nowrap;order:-1;font-weight:600;display:flex}.worksheet-doc__score-slash{font-weight:700}.worksheet-doc__scoreblank{border-bottom:2px solid #000;width:28px;height:1em;display:inline-block}.worksheet-doc__title-input{width:100%;margin:var(--space-4) 0 var(--space-2);border:1px dashed var(--worksheet-edit-rest);font-family:var(--font-ws-title);font-size:var(--text-2xl);letter-spacing:.01em;text-align:center;color:#000;resize:none;overflow-wrap:break-word;box-sizing:border-box;background:0 0;padding:0;font-weight:800;line-height:1.1;display:block;overflow:hidden}.worksheet-doc__directions-input{width:100%;max-width:42rem;margin:0 auto var(--space-5);border:1px dashed var(--worksheet-edit-rest);font-size:var(--text-md);text-align:center;color:#333;white-space:nowrap;text-overflow:ellipsis;background:0 0;font-weight:400;line-height:1.4;display:block;overflow:hidden}.worksheet-doc__title-input:hover,.worksheet-doc__title-input:focus,.worksheet-doc__directions-input:hover,.worksheet-doc__directions-input:focus,.worksheet-item__q:hover,.worksheet-item__q:focus{border-color:var(--gray-400);outline:none}.worksheet-doc__items{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.worksheet-item{align-items:center;gap:var(--space-2);display:flex}.worksheet-item__num{min-width:1.8em;font-weight:600;font-size:var(--text-lg)}.worksheet-item__q{border:1px dashed var(--worksheet-edit-rest);width:100%;font:inherit;font-size:var(--text-lg);color:#000;resize:none;field-sizing:content;background:0 0;line-height:1.3;display:block;overflow:hidden}.worksheet-item__blank{border-bottom:1px solid #000;flex:1;min-width:60px;height:1.2em}.worksheet-item{position:relative}.worksheet-item__controls--overlay{z-index:3;gap:var(--space-1);opacity:0;pointer-events:none;transition:opacity .12s;display:flex;position:absolute;top:0;right:0}.worksheet-item:hover>.worksheet-item__controls--overlay,.worksheet-item:focus-within>.worksheet-item__controls--overlay,.worksheet-item__controls--overlay:focus-within{opacity:1;pointer-events:auto}.worksheet-item__ctrl{justify-content:center;align-items:center;gap:var(--space-1);border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--surface);min-height:36px;color:var(--gray-700);font-size:var(--text-sm);cursor:pointer;padding:4px 8px;line-height:1;display:inline-flex;box-shadow:0 1px 3px #0000001f}.worksheet-item__ctrl:not(:disabled):hover{border-color:var(--gray-400);background:var(--gray-50)}.worksheet-item__ctrl:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.worksheet-item__ctrl:disabled{opacity:.5;cursor:default}.worksheet-item__ctrl--danger:not(:disabled):hover{color:var(--color-error);border-color:var(--color-error)}.worksheet-item__controls--overlay .worksheet-item__ctrl-label{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.worksheet-medit__itemwrap{gap:var(--space-2);flex-direction:column;display:flex}.worksheet-item__controls--stacked{gap:var(--space-2);display:flex}.worksheet-item__controls--stacked .worksheet-item__ctrl{min-height:44px;font-size:var(--text-md);flex:1}.worksheet-item__vmath{align-items:baseline;gap:3px var(--space-2);font-size:var(--text-xl);font-variant-numeric:tabular-nums;grid-template-columns:1.2ch 3ch;display:inline-grid}.worksheet-item__vmath-op{text-align:center}.worksheet-item__vmath-num{border:1px dashed var(--worksheet-edit-rest);text-align:right;width:3ch;font:inherit;color:#000;background:0 0;padding:0}.worksheet-item__vmath-num:hover,.worksheet-item__vmath-num:focus{border-color:var(--gray-400);outline:none}.worksheet-item__vmath-rule{border-top:2px solid #000;grid-column:1/-1;height:0}.worksheet-item__vmath-answer{grid-column:1/-1;height:1.6em}.worksheet-doc__items--vmath{border-top:2px solid #000;border-left:2px solid #000;grid-template-columns:repeat(3,1fr);gap:0}.worksheet-item--vmath{padding:var(--space-5) var(--space-2);break-inside:avoid;border-bottom:2px solid #000;border-right:2px solid #000;justify-content:center;min-height:1.6in}.worksheet-item--vmath .worksheet-item__num{display:none}.worksheet-item--vmath .worksheet-item__vmath{font-size:var(--text-4xl)}.worksheet-doc__items--wordproblem{gap:var(--space-5);grid-template-columns:1fr 1fr}.worksheet-item--wordproblem{border-radius:var(--radius-md);padding:var(--space-4);break-inside:avoid;border:2px solid #000;align-items:stretch;min-height:3.3in}.worksheet-item__wp{gap:var(--space-3);flex-direction:column;flex:1;display:flex}.worksheet-item__wp-text{border:1px dashed var(--worksheet-edit-rest);font:inherit;font-size:var(--text-lg);color:#000;resize:none;background:0 0;flex:1;width:100%;line-height:1.4}.worksheet-item__wp-answer{align-items:baseline;gap:var(--space-2);font-size:var(--text-md);margin-top:auto;display:flex}.worksheet-doc__items--compare_numerals{border:2px solid #000;border-bottom:none;gap:0}.worksheet-item--compare_numerals{border-bottom:2px solid #000;align-items:stretch;gap:0;min-height:1in}.worksheet-item--compare_numerals .worksheet-item__num{border-right:2px solid #000;justify-content:center;align-items:center;min-width:2.6em;display:flex}.worksheet-item__compare{flex:1;grid-template-columns:1fr 1fr;align-items:center;display:grid}.worksheet-item__compare-prompt{font-size:var(--text-lg);color:#000;padding:var(--space-3) var(--space-4);border-right:2px solid #000}.worksheet-item__compare-nums{justify-content:space-around;align-items:center;gap:var(--space-4);padding:var(--space-3);display:flex}.worksheet-item__compare-num{font-size:var(--text-4xl);color:#000;padding:var(--space-1) var(--space-3);font-weight:700}.worksheet-doc__items--tracing{gap:var(--space-4) var(--space-6);grid-template-rows:repeat(5,auto);grid-auto-columns:1fr;grid-auto-flow:column}.worksheet-item--tracing{align-items:flex-start;min-width:0}.worksheet-item__trace{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__trace-glyphs{justify-content:space-around;align-items:baseline;gap:var(--space-3);width:100%;max-width:100%;display:flex;overflow:hidden}.worksheet-item__token{border:1px dashed var(--worksheet-edit-rest);field-sizing:content;text-align:center;min-width:1ch;font-size:var(--text-4xl);letter-spacing:.12em;color:#b6b6b6;background:0 0;font-family:inherit}.worksheet-item__token:hover,.worksheet-item__token:focus{border-color:var(--gray-400);outline:none}.worksheet-item__writeline{align-self:stretch;min-width:120px;height:2.9em}.worksheet-item__pw{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.worksheet-item__pw-img{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:240px;height:110px;padding:6px}.worksheet-item__pw-line{width:160px;height:2.6em}.worksheet-wordbank{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0 var(--space-5);border:2px solid #000}.worksheet-wordbank__label{font-weight:700;font-size:var(--text-md);text-transform:uppercase;letter-spacing:.04em;text-align:center;margin-bottom:var(--space-2);display:block}.worksheet-wordbank__words{justify-content:center;gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}.worksheet-wordbank__word{font-size:var(--text-lg);line-height:1.4}.worksheet-emotion{flex-direction:column;display:flex}.worksheet-emotion__page{break-after:page;page-break-after:always}.worksheet-emotion__page:last-child{break-after:auto;page-break-after:auto}.worksheet-emotion__page+.worksheet-emotion__page{padding-top:.6in}.worksheet-emotion__grid{gap:var(--space-6) var(--space-5);grid-template-columns:1fr 1fr;display:grid}.worksheet-emotion__item{text-align:center;align-items:center;gap:var(--space-2);break-inside:avoid;page-break-inside:avoid;flex-direction:column;display:flex;position:relative}.worksheet-emotion__item:hover>.worksheet-item__controls--overlay,.worksheet-emotion__item:focus-within>.worksheet-item__controls--overlay{opacity:1;pointer-events:auto}.worksheet-emotion__num{font-weight:700;font-size:var(--text-md);align-self:flex-start}.worksheet-emotion__img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1px solid #000;width:auto;max-width:100%;height:1.9in}.worksheet-emotion__q{font-size:var(--text-md);font-weight:600}.worksheet-emotion__options{justify-content:center;gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}.worksheet-emotion__option{font-size:var(--text-lg);padding:0 var(--space-2);line-height:1.4}.worksheet-emotion__item .worksheet-item__writeline{align-self:center;width:85%;min-width:150px;height:2.4em}.worksheet-cause .worksheet-emotion__item{text-align:left;align-items:stretch}.worksheet-cause .worksheet-emotion__img{align-self:center;height:1.5in}.worksheet-cause .worksheet-emotion__q{text-align:center}.worksheet-cause__options{gap:var(--space-2);flex-direction:column;display:flex}.worksheet-cause__option{font-size:var(--text-md);padding:1px var(--space-2);line-height:1.35}.worksheet-numberline{border-radius:var(--radius-md);padding:var(--space-4) var(--space-5) var(--space-3);margin:var(--space-3) 0 var(--space-5);border:2px solid #000}.worksheet-numberline__track{border-top:2px solid #000;justify-content:space-between;display:flex}.worksheet-numberline__tick{flex-direction:column;align-items:center;display:flex}.worksheet-numberline__tick:before{content:"";background:#000;width:2px;height:.6rem}.worksheet-numberline__num{font-size:var(--text-md);margin-top:.15rem;font-weight:600;line-height:1}.worksheet-match{padding-top:var(--space-4);justify-content:space-between;gap:1.6in;display:flex}.worksheet-match__col{flex-direction:column;flex:1;justify-content:space-between;min-width:0;min-height:7.5in;display:flex}.worksheet-match__item{justify-content:flex-start;align-items:center;gap:var(--space-3);display:flex}.worksheet-match__item--right{justify-content:flex-end}.worksheet-match__content{font-size:var(--text-2xl);color:#000;align-items:center;font-weight:600;display:flex}.worksheet-match--sentences{gap:.8in}.worksheet-match--sentences .worksheet-match__col--right{flex:1.6}.worksheet-match--sentences .worksheet-match__item--right{justify-content:flex-start}.worksheet-match--sentences .worksheet-match__item--right .worksheet-match__content{font-size:var(--text-md);text-align:left;font-weight:500}.worksheet-match__content img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:2.6in;height:1.1in}.worksheet-doc__items--main_idea{gap:var(--space-4)}.worksheet-item--main_idea{align-items:flex-start}.worksheet-item__mainidea{gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__mi-img{-webkit-print-color-adjust:exact;print-color-adjust:exact;align-self:center;width:auto;max-width:1.3in;height:auto;max-height:1.05in;display:block}.worksheet-item__mi-passage{border:1px dashed var(--worksheet-edit-rest);width:100%;font:inherit;font-size:var(--text-lg);color:#111;resize:none;field-sizing:content;background:0 0;line-height:1.5;overflow:hidden}.worksheet-item__mi-passage:hover,.worksheet-item__mi-passage:focus{border-color:var(--gray-400);outline:none}.worksheet-item__mi-prompt{gap:var(--space-2);flex-direction:column;display:flex}.worksheet-item__mi-label{font-size:var(--text-md);color:#000;font-weight:700}.worksheet-item--main_idea .worksheet-item__writeline{align-self:stretch;min-width:120px;height:2em}.worksheet-doc__items--write_prompt{gap:var(--space-6)}.worksheet-item--write_prompt{align-items:flex-start}.worksheet-item__write{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__write-prompt{border:1px dashed var(--worksheet-edit-rest);width:100%;font:inherit;font-size:var(--text-lg);color:#000;background:0 0;font-weight:700}.worksheet-item__write-prompt:hover,.worksheet-item__write-prompt:focus{border-color:var(--gray-400);outline:none}.worksheet-item--write_prompt .worksheet-item__writeline{align-self:stretch;min-width:120px;height:2.4em}.worksheet-journal{flex-direction:column;display:flex}.worksheet-journal__page{gap:var(--space-6);break-after:page;page-break-after:always;flex-direction:column;display:flex}.worksheet-journal__page:last-child{break-after:auto;page-break-after:auto}.worksheet-journal__page+.worksheet-journal__page{padding-top:.6in}.worksheet-journal__prompt{gap:var(--space-3);break-inside:avoid;page-break-inside:avoid;flex-direction:column;display:flex}.worksheet-journal__head{align-items:baseline;gap:var(--space-2);display:flex}.worksheet-journal__num{font-weight:700;font-size:var(--text-lg);color:#000}.worksheet-journal__text{border:1px dashed var(--worksheet-edit-rest);min-width:0;font:inherit;font-size:var(--text-lg);color:#000;background:0 0;flex:1;font-weight:700}.worksheet-journal__text:hover,.worksheet-journal__text:focus{border-color:var(--gray-400);outline:none}.worksheet-journal__lines{gap:var(--space-4);flex-direction:column;display:flex}.worksheet-journal .worksheet-item__writeline{min-width:120px;height:2.2em}.worksheet-item__journal-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;align-self:flex-start;width:auto;max-width:100%;height:1.1in;padding:4px}@media (width<=480px){.worksheet-item__journal-img{height:.9in}}.worksheet-today{gap:var(--space-3);margin-top:var(--space-3);flex-direction:column;display:flex}.worksheet-today__writebox{border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);gap:var(--space-3);border:2px solid #000;flex-direction:column;display:flex}.worksheet-today__writerow{align-items:flex-end;gap:var(--space-3);display:flex}.worksheet-today__prompt{font-size:var(--text-lg);color:#000;white-space:nowrap;font-weight:600}.worksheet-today__writerow .worksheet-item__writeline{flex:1;min-width:120px;height:2.6em}.worksheet-today__daybox{border-radius:var(--radius-lg);padding:var(--space-3) var(--space-5);align-items:center;gap:var(--space-2);border:2px solid #000;flex-direction:column;display:flex;position:relative}.worksheet-today__heading{font-family:var(--font-ws-title);font-size:var(--text-2xl);color:#000;text-align:center;font-weight:700}.worksheet-today__days{justify-content:space-between;align-items:baseline;gap:var(--space-2);width:100%;padding:0 var(--space-2);flex-wrap:nowrap;display:flex}.worksheet-today__day{font-size:var(--text-lg);color:#000;white-space:nowrap}.worksheet-today__circleone{font-size:var(--text-sm);color:#000;font-style:italic}.worksheet-today__star{top:var(--space-3);width:26px;height:26px;position:absolute}.worksheet-today__star--left{left:var(--space-4)}.worksheet-today__star--right{right:var(--space-4)}.worksheet-doc--blank_calendar{flex-direction:column;height:11in;display:flex}.worksheet-cal{min-height:0;margin-top:var(--space-3);flex-direction:column;flex:1;display:flex}.worksheet-cal__month{border-radius:var(--radius-lg);height:.55in;margin-bottom:var(--space-3);border:2px solid #000;flex:none}.worksheet-cal__grid{border-top:2px solid #000;border-left:2px solid #000;flex:1;grid-template-rows:auto repeat(5,1fr);grid-template-columns:repeat(7,1fr);min-height:0;display:grid}.worksheet-cal__dayhead{padding:var(--space-2);font-family:var(--font-ws-title);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.02em;text-align:center;color:#000;border-bottom:2px solid #000;border-right:2px solid #000;font-weight:700}.worksheet-cal__cell{border-bottom:2px solid #000;border-right:2px solid #000;min-height:0;position:relative}.worksheet-cal__date{top:var(--space-1);left:var(--space-2);font-size:var(--text-md);color:#000;position:absolute}.worksheet-doc--monthly_calendar{flex-direction:column;width:11in;height:8.5in;min-height:8.5in;padding:.4in .5in;display:flex}.worksheet-monthcal{gap:var(--space-4);min-height:0;margin-top:var(--space-2);flex:1;display:flex}.worksheet-monthcal__cal{flex-direction:column;flex:0 0 67%;min-width:0;display:flex}.worksheet-monthcal__monthname{font-family:var(--font-ws-title);font-size:var(--text-xl);text-align:center;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1);color:#000;font-weight:700}.worksheet-monthcal__grid{border-top:2px solid #000;border-left:2px solid #000;flex:1;grid-template-columns:repeat(7,1fr);min-height:0;display:grid}.worksheet-monthcal__dayhead{font-family:var(--font-ws-title);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.02em;text-align:center;color:#000;border-bottom:2px solid #000;border-right:2px solid #000;padding:3px 2px;font-weight:700}.worksheet-monthcal__cell{border-bottom:2px solid #000;border-right:2px solid #000;min-width:0;min-height:0;position:relative;overflow:hidden}.worksheet-monthcal__date{font-size:var(--text-sm);color:#000;font-weight:700;line-height:1;position:absolute;top:1px;right:4px}.worksheet-monthcal__event{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1px;height:100%;padding:.02in 2px 2px;line-height:1;display:flex}.worksheet-monthcal__icon{object-fit:contain;width:auto;max-width:88%;height:.32in}.worksheet-monthcal__evtitle{font-size:var(--text-sm);color:#000;overflow-wrap:break-word;font-weight:600;line-height:1.02}.worksheet-monthcal__evtime{font-size:var(--text-sm);color:#000}.worksheet-monthcal__questions{counter-reset:monthcal-q;flex-direction:column;flex:1;justify-content:space-between;min-width:0;margin:0;padding:0;list-style:none;display:flex}.worksheet-monthcal__q{counter-increment:monthcal-q;flex-direction:column;gap:4px;display:flex}.worksheet-monthcal__qtext{font-size:var(--text-sm);color:#111;line-height:1.25}.worksheet-monthcal__qtext:before{content:counter(monthcal-q) ". ";font-weight:700}.worksheet-monthcal__answerline{border-bottom:2px solid #000;width:100%;height:.3in;display:block}.worksheet-doc__items--follow_directions{gap:var(--space-5)}.worksheet-item--follow_directions{align-items:flex-start}.worksheet-item__follow{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__follow-direction{border:1px dashed var(--worksheet-edit-rest);width:100%;font:inherit;font-size:var(--text-lg);color:#000;background:0 0}.worksheet-item__follow-direction:hover,.worksheet-item__follow-direction:focus{border-color:var(--gray-400);outline:none}.worksheet-item__follow-box{border-radius:var(--radius-sm);border:2px solid #000;align-self:stretch;height:4.5em}.worksheet-item__tally{align-items:center;gap:var(--space-4);flex:1;min-width:0;display:flex}.worksheet-item__tally-num{font-size:var(--text-3xl);color:#000;text-align:center;min-width:1.5em;font-weight:700}.worksheet-item__tally-box{border-radius:var(--radius-sm);border:2px solid #000;flex:1;height:3em}.worksheet-doc--measure{padding-left:.5in;padding-right:.5in}.worksheet-doc__items--measure{gap:var(--space-6)}.worksheet-item--measure{align-items:flex-start}.worksheet-item__measure{gap:var(--space-5);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__measure-line{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#000;border-radius:1px;height:3px;margin-top:.5em;display:block}.worksheet-item__measure-answer{justify-content:flex-start;align-items:baseline;gap:var(--space-2);font-size:var(--text-lg);color:#000;display:flex}.worksheet-item__measure-label{font-weight:600}.worksheet-item__measure-blank{border-bottom:1px solid #000;width:.9in;height:1.2em;display:inline-block}.worksheet-doc--image_page{flex-direction:column;height:11in;display:flex}.worksheet-imagepage{min-height:0;margin-top:var(--space-4);flex:1;justify-content:center;align-items:center;display:flex}.worksheet-imagepage__img{object-fit:contain;max-width:100%;max-height:100%}.worksheet-doc__items--circle_word{gap:var(--space-4) var(--space-6);grid-template-rows:repeat(5,auto);grid-auto-columns:1fr;grid-auto-flow:column}.worksheet-item--circle_word{align-items:center;min-width:0}.worksheet-item__cw{align-items:center;gap:var(--space-4);display:flex}.worksheet-item__cw-img{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:90px;height:90px;padding:6px}.worksheet-item__cw-words{font-size:var(--text-lg);flex-direction:column;gap:2px;line-height:1.4;display:flex}.worksheet-doc__items--colfill{column-count:2;column-gap:var(--space-6);display:block}.worksheet-doc__items--colfill>.worksheet-item{min-width:0;margin-bottom:var(--space-4);break-inside:avoid;page-break-inside:avoid}.worksheet-doc__legend{margin:0 0 var(--space-3);font-size:var(--text-md);font-weight:600}.worksheet-item--sort_line{align-items:center}.worksheet-item__sortline{align-items:center;gap:var(--space-5);flex:1;min-width:0;display:flex}.worksheet-item__sortline-img{object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:80px;height:80px;padding:5%}.worksheet-item__sortline-targets{gap:var(--space-4);margin-left:auto;display:flex}.worksheet-item__sortline-target{min-width:72px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);text-align:center;border:1.5px solid #000;font-weight:600}.worksheet-sortcut__hint{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-md);font-weight:600}.worksheet-sortcut__pieces{gap:var(--space-3);flex-wrap:wrap;display:flex}.worksheet-sortcut__piece{border-radius:var(--radius-sm);border:1.5px dashed #000;justify-content:center;align-items:center;width:96px;height:96px;display:flex}.worksheet-sortcut__piece img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;max-width:84px;max-height:84px}.worksheet-sortcut__bins{gap:var(--space-4);margin-top:var(--space-3);display:flex}.worksheet-sortcut__bin{border-radius:var(--radius-md);min-height:220px;padding:var(--space-2);border:2px solid #000;flex:1}.worksheet-doc--sort_cut{flex-direction:column;display:flex}.worksheet-doc--sort_cut .worksheet-sortcut{flex-direction:column;flex:1;display:flex}.worksheet-doc--sort_cut .worksheet-sortcut__bins{flex:1}.worksheet-sortcut__bin-label{font-weight:700;font-size:var(--text-lg)}.worksheet-item--passage{align-items:flex-start}.worksheet-item__passage{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__passage-text{border:1px dashed var(--worksheet-edit-rest);border-radius:var(--radius-sm);resize:vertical;width:100%;font:inherit;font-size:var(--text-md);color:#000;padding:var(--space-1) 0;background:0 0;line-height:1.5}.worksheet-item__passage-text:hover,.worksheet-item__passage-text:focus{border-color:var(--gray-400);outline:none}.worksheet-item__answerline{height:1.6em;margin-top:var(--space-1);border-bottom:1px solid #000}.worksheet-item--choice{align-items:flex-start}.worksheet-item__choice{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__options{gap:var(--space-4);flex-wrap:wrap;display:flex}.worksheet-item__option{align-items:center;gap:var(--space-2);font-size:var(--text-md);display:inline-flex}.worksheet-item__bubble{border-radius:var(--radius-pill);border:1.5px solid #000;width:16px;height:16px;display:inline-block}.worksheet-doc__items--graph{gap:var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--graph{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0;min-height:3.2in}.worksheet-item__graph{gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__graph-img{border:1px solid var(--border);border-radius:var(--radius-sm);-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%;max-width:100%;height:auto;display:block}.worksheet-doc__items--count_objects,.worksheet-doc__items--count_ten_frame{gap:var(--space-5) var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--count_objects,.worksheet-item--count_ten_frame{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0}.worksheet-item__count{align-items:flex-start;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__count-objects{align-content:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1.5px solid #000;flex-wrap:wrap;width:300px;max-width:100%;min-height:132px;display:flex}.worksheet-item__count-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:46px;height:46px}.worksheet-item__count-write{width:88px;height:2.4em;margin-left:var(--space-1);border-bottom:2px solid #000}.worksheet-item__tenframe{-webkit-print-color-adjust:exact;print-color-adjust:exact;border-top:2px solid #000;border-left:2px solid #000;grid-template-columns:repeat(5,46px);grid-auto-rows:46px;display:grid}.worksheet-item__tenframe-cell{border-bottom:2px solid #000;border-right:2px solid #000;place-items:center;display:grid}.worksheet-item__count--frame .worksheet-item__count-img{width:34px;height:34px}.worksheet-doc__items--compare_groups{gap:var(--space-5);grid-template-columns:1fr}.worksheet-item--compare_groups{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0}.worksheet-item__groups{gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__groups-prompt{font-size:var(--text-lg);color:#000}.worksheet-item__groups-sets{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.worksheet-item__group{place-content:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1.5px solid #000;flex-wrap:wrap;min-height:128px;display:flex}.worksheet-item__group-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:42px;height:42px}.worksheet-doc__items--tell_time{gap:var(--space-5) var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--tell_time{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0}.worksheet-item__time{align-items:center;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__time-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:132px;height:132px}.worksheet-item__time-write{border-bottom:2px solid #000;width:132px;height:2.4em}.worksheet-doc__items--circle_time{gap:var(--space-5) var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--circle_time{break-inside:avoid;page-break-inside:avoid;align-items:center;min-width:0}.worksheet-item__ct{align-items:center;gap:var(--space-5);flex:1;min-width:0;display:flex}.worksheet-item__ct-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:118px;height:118px}.worksheet-item__ct-times{gap:var(--space-2);font-size:var(--text-xl);color:#000;flex-direction:column;font-weight:600;line-height:1.4;display:flex}.worksheet-item__price{align-items:flex-start;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__price-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:200px;max-width:100%;height:auto}.worksheet-item__price-write{width:120px;height:2.4em;margin-left:var(--space-1);border-bottom:2px solid #000}.worksheet-item__sign{align-items:flex-start;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__sign-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:150px;max-width:100%;height:auto}.worksheet-item__sign-write{width:160px;height:2.4em;margin-left:var(--space-1);border-bottom:2px solid #000}.worksheet-doc__items--write_one_word{gap:var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--write_one_word{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0}.worksheet-item__ww{align-items:center;gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__ww-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:100%;height:1.05in}.worksheet-doc--write_one_word .worksheet-doc__title-input{margin:var(--space-3) 0 var(--space-1)}.worksheet-doc--write_one_word .worksheet-doc__directions-input{margin:0 auto var(--space-4)}.worksheet-item--letter_sound{break-inside:avoid;page-break-inside:avoid;align-items:center}.worksheet-item__ls{align-items:center;gap:var(--space-5);flex:1;min-width:0;display:flex}.worksheet-item__ls-model{text-align:center;width:1.5in;font-size:var(--text-4xl);letter-spacing:.08em;color:#b6b6b6;-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;font-weight:700}.worksheet-item__ls-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;width:auto;max-width:1.2in;height:.85in;padding:4px}.worksheet-item__ls-write{flex:1;align-self:center;min-width:120px;height:2.6em}.worksheet-doc__items--write_phrase{gap:var(--space-4);grid-template-columns:1fr 1fr}.worksheet-item--write_phrase{break-inside:avoid;page-break-inside:avoid;align-items:flex-start;min-width:0}.worksheet-item__wp{align-items:center;gap:var(--space-2);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__wp-img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:100%;height:1.05in}.worksheet-item--write_phrase .worksheet-item__writeline{align-self:stretch;height:2.2em}.worksheet-doc--write_phrase .worksheet-doc__title-input{margin:var(--space-3) 0 var(--space-1)}.worksheet-doc--write_phrase .worksheet-doc__directions-input{margin:0 auto var(--space-4)}.worksheet-doc--mc .worksheet-doc__title-input{margin:var(--space-3) 0 var(--space-1)}.worksheet-doc--mc .worksheet-doc__directions-input{text-align:center;margin-bottom:var(--space-3)}.worksheet-doc__items--sequence{gap:var(--space-5)}.worksheet-item--sequence{border-radius:var(--radius-md);padding:var(--space-4);border:2px dashed #000;align-items:stretch;min-height:1.1in}.worksheet-item--sequence .worksheet-item__num{display:none}.worksheet-item__sequence{align-items:center;gap:var(--space-3);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__sequence-img{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:2in;max-width:45%;height:auto;display:block}.worksheet-item__sequence-text{border:1px dashed var(--worksheet-edit-rest);field-sizing:content;width:100%;font:inherit;font-size:var(--text-xl);text-align:center;color:#000;resize:none;background:0 0;line-height:1.5}.worksheet-item__sequence-text:hover,.worksheet-item__sequence-text:focus{border-color:var(--gray-400);outline:none}.worksheet-seqcut{gap:var(--space-6);margin-top:var(--space-5);flex-direction:column;display:flex}.worksheet-seqcut__boxes,.worksheet-seqcut__cards{justify-content:center;gap:var(--space-5);break-inside:avoid;page-break-inside:avoid;display:flex}.worksheet-seqcut__box,.worksheet-seqcut__card{aspect-ratio:1;flex:1 1 0;justify-content:center;align-items:center;max-width:2.4in;display:flex}.worksheet-seqcut__box{border-radius:var(--radius-md);background:#fff;border:3px solid #000;position:relative}.worksheet-seqcut__box-num{top:var(--space-2);left:var(--space-3);font-size:var(--text-4xl);color:#000;font-weight:800;line-height:1;position:absolute}.worksheet-seqcut__card{border-radius:var(--radius-md);border:2.5px dashed #000}.worksheet-seqcut__card img{object-fit:contain;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:auto;max-width:80%;height:auto;max-height:80%}.worksheet-seqcut__cut{align-items:center;gap:var(--space-2);display:flex}.worksheet-seqcut__scissors{font-size:var(--text-xl);color:#000;line-height:1}.worksheet-seqcut__cutline{border-top:2px dashed #000;flex:1}.worksheet-seqtext{gap:var(--space-5);margin-top:var(--space-4);flex-direction:column;display:flex}.worksheet-seqtext__passage{border-radius:var(--radius-md);padding:var(--space-4);break-inside:avoid;page-break-inside:avoid;border:2px solid #000}.worksheet-seqtext__passage p{font-size:var(--text-lg);margin:0;line-height:1.6}.worksheet-seqtext__boxes,.worksheet-seqtext__cards{gap:var(--space-4);flex-direction:column;display:flex}.worksheet-seqtext__box,.worksheet-seqtext__card{min-height:.85in;padding:var(--space-3) var(--space-4);break-inside:avoid;page-break-inside:avoid;align-items:center;display:flex}.worksheet-seqtext__box{border-radius:var(--radius-md);background:#fff;border:3px solid #000}.worksheet-seqtext__box-num{font-size:var(--text-3xl);color:#000;font-weight:800;line-height:1}.worksheet-seqtext__card{border-radius:var(--radius-md);font-size:var(--text-lg);border:2.5px dashed #000;line-height:1.4}.worksheet-doc__illustration{width:2.5in;max-width:60%;height:auto;margin:0 auto var(--space-4);-webkit-print-color-adjust:exact;print-color-adjust:exact;display:block}.worksheet-doc__passage{width:100%;max-width:34rem;margin:0 auto var(--space-6);border:1px dashed var(--worksheet-edit-rest);border-radius:var(--radius-sm);resize:none;field-sizing:content;font:inherit;font-size:var(--text-xl);text-align:center;color:#111;background:0 0;line-height:1.7;display:block}.worksheet-doc__passage:hover,.worksheet-doc__passage:focus{border-color:var(--gray-400);outline:none}.worksheet-doc__items--mc{gap:var(--space-2)}.worksheet-item--mc{align-items:flex-start;gap:var(--space-2);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);border:2px solid #000}.worksheet-item--mc .worksheet-item__num{font-family:var(--font-ws-title);font-size:var(--text-lg);min-width:1.4em;font-weight:800}.worksheet-item__mc{align-items:flex-start;gap:var(--space-3);flex-direction:row;flex:1;min-width:0;display:flex}.worksheet-item__mc-img{-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;width:auto;max-width:.85in;height:auto;max-height:.95in;display:block}.worksheet-item__mc-body{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.worksheet-item__mc-passage{font-size:var(--text-md);line-height:1.25}.worksheet-item__mc-body>.worksheet-item__q{font-size:var(--text-md);font-weight:700}.worksheet-item__mc-options{align-items:baseline;gap:var(--space-1) var(--space-4);flex-flow:wrap;display:flex}.worksheet-item__mc-option{align-items:baseline;gap:var(--space-1);padding:0 var(--space-1);border-radius:var(--radius-sm);display:inline-flex}.worksheet-item__mc-letter{font-weight:700;font-size:var(--text-md)}.worksheet-item__mc-option.is-correct{background:var(--color-primary-soft)}.worksheet-item__choice-input{field-sizing:content;border:1px dashed var(--worksheet-edit-rest);min-width:2ch;font:inherit;font-size:var(--text-md);color:#000;background:0 0}.worksheet-item__choice-input:hover,.worksheet-item__choice-input:focus{border-color:var(--gray-400);outline:none}.worksheet-scale-banner{align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--color-warning,#c2703d);border-radius:var(--radius-md);background:var(--color-warning-soft,#f7ede4);font-size:var(--text-sm);display:flex}.worksheet-scale-banner__dismiss{padding:var(--space-1);color:inherit;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.worksheet-scale-banner__dismiss:hover{background:#0000000f}.worksheet-doc__pages{display:block}.worksheet-doc__page{box-sizing:border-box;padding-bottom:.5in;overflow:hidden}.worksheet-doc__page--last{padding-bottom:0;overflow:visible}.worksheet-doc__page--cont{padding-top:.6in}.worksheet-doc__sheetedges{pointer-events:none;z-index:2;position:absolute;inset:0}.worksheet-doc__sheetedge{background:var(--bg-muted,#f4f4f2);height:16px;position:absolute;left:0;right:0;transform:translateY(-50%);box-shadow:0 -1px 6px #00000029,0 1px 6px #00000029}.worksheet-doc__sheetedge-label{right:var(--space-3);padding:2px var(--space-2);border-radius:var(--radius-pill);background:var(--gray-600,#4b5563);color:#fff;font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;font-weight:600;position:absolute;top:50%;transform:translateY(-50%)}@media (width<=480px){.worksheet-type{flex-basis:auto;width:100%;min-width:0;max-width:none}.worksheet-recents__chip{min-height:44px}}@media print{.sidebar,.mobile-bar,.tabbar,.context-panel,.shell__backdrop,.main__bar,.back-link,.worksheet-toolbar,.no-print{display:none!important}.shell,.shell.has-context{height:auto!important;display:block!important}.main{padding:0!important;overflow:visible!important}.form-page{max-width:none!important;padding:0!important}@page worksheet{size:letter;margin:0}@page monthly-cal{size:letter landscape;margin:0}.worksheet-doc--monthly_calendar{page:monthly-cal;width:11in;height:8.5in}.worksheet-preview{background:0 0!important;padding:0!important;display:block!important;overflow:visible!important}.worksheet-preview__frame{width:auto!important;height:auto!important}.worksheet-preview__scaler{position:static!important;transform:none!important}.worksheet-doc{page:worksheet;box-shadow:none;--worksheet-edit-rest:transparent;min-height:0;margin:0}.worksheet-item__mc-option.is-correct{background:0 0!important}.worksheet-item{break-inside:avoid;page-break-inside:avoid}.worksheet-doc__page{break-after:page;page-break-after:always;height:auto!important;overflow:visible!important}.worksheet-doc__page--last{break-after:auto;page-break-after:auto}.worksheet-batch__item{break-after:page;page-break-after:always}.worksheet-batch__item:last-child{break-after:auto;page-break-after:auto}}.ws-portfolio__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.ws-portfolio__head-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ws-year-filter{margin-bottom:var(--space-4)}.ws-year-filter .field{min-width:180px;max-width:220px;margin-bottom:0}.ws-portfolio__nudge{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-primary-soft);color:var(--text-strong,inherit);font-size:var(--text-sm);flex-wrap:wrap;font-weight:600;display:flex}.ws-portfolio__nudge>span{margin-right:auto}.ws-portfolio__filters{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.ws-portfolio__filters .field{min-width:180px}.ws-portfolio__filters .btn{margin-bottom:2px}.ws-portfolio__more{margin-top:var(--space-4);justify-content:center;display:flex}@media (width<=480px){.ws-portfolio__filters .field{flex:100%;min-width:0}}.ws-capture{align-items:center;gap:var(--space-2);display:inline-flex}.ws-capture__btn{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.ws-fab__flash{font-size:var(--text-sm);font-weight:600}.ws-fab__flash--ok{color:var(--color-success-text)}.ws-fab__flash--error{color:var(--color-error)}.ws-month+.ws-month{margin-top:var(--space-4)}.ws-month__label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-2);font-weight:600}.ws-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin:0;padding:0;list-style:none;display:grid}.ws-thumb{aspect-ratio:1;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;width:100%;box-shadow:var(--shadow-sm);padding:0;transition:transform 80ms,box-shadow .12s;display:block;position:relative;overflow:hidden}.ws-thumb:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.ws-thumb img{object-fit:cover;width:100%;height:100%;display:block}.ws-thumb--skeleton{aspect-ratio:1;height:auto}.ws-thumb__day{left:var(--space-2);bottom:var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#141810a8;padding:2px 8px;font-weight:600;position:absolute}.ws-fab{right:var(--space-4);bottom:var(--space-5);z-index:40;align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex;position:fixed}body.skill-drawer-open .ws-fab{display:none}.fab{color:#fff;background:var(--color-primary);width:60px;height:60px;box-shadow:var(--shadow-md);cursor:pointer;opacity:1;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform 80ms,background .12s,box-shadow .15s;display:inline-flex}.fab:hover,.fab:focus-visible{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 10px 24px #363c2c38}.fab:active{transform:scale(.95)}.fab[aria-busy=true]{opacity:.7;cursor:progress}.fab--extended{border-radius:var(--radius-pill);width:auto;padding:0 var(--space-4) 0 var(--space-3);gap:var(--space-2)}.fab__label{font-size:var(--text-md);white-space:nowrap;font-weight:600}.ws-fab__flash{border-radius:var(--radius-pill);background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:4px 10px}.toast-viewport{bottom:var(--space-5);z-index:350;gap:var(--space-2);width:min(420px, calc(100vw - var(--space-4) * 2));pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}html:has(.modal) .toast-viewport{top:calc(env(safe-area-inset-top,0px) + var(--space-4));bottom:auto}.toast-stack{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.toast{pointer-events:auto;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border);border-left:4px solid var(--color-primary);box-shadow:var(--shadow-md);font-size:var(--text-sm);color:var(--text);animation:.18s toast-in;display:flex}.toast--success{border-left-color:var(--color-success)}.toast--success .toast__icon{color:var(--color-success-text)}.toast--error{border-left-color:var(--color-error)}.toast--error .toast__icon{color:var(--color-error)}.toast--info .toast__icon{color:var(--color-primary)}.toast__icon{flex:none;margin-top:1px}.toast__msg{flex:auto;line-height:1.35}.toast__action{min-height:32px;padding:0 var(--space-2);color:inherit;border-radius:var(--radius-sm);font:inherit;cursor:pointer;background:0 0;border:1px solid;flex:none;font-weight:600}.toast__action:hover,.toast__action:focus-visible{background:#ffffff26}.toast__close{width:28px;height:28px;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin:-4px -4px -4px 0;display:inline-flex}.toast__close:hover,.toast__close:focus-visible{background:var(--gray-100);color:var(--text)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}@media (width<=900px){.toast-viewport{left:var(--space-3);right:var(--space-3);width:auto;bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + var(--space-3) + 60px + var(--space-3) + 52px + var(--space-2));transform:none}}.ws-lightbox{z-index:300;padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ws-lightbox__backdrop{cursor:zoom-out;background:#141810b8;border:none;position:absolute;inset:0}.ws-lightbox__panel{z-index:1;gap:var(--space-3);background:var(--bg-surface);border-radius:var(--radius-lg);max-width:min(920px,100%);max-height:100%;box-shadow:var(--shadow-md);padding:var(--space-3);flex-direction:column;min-width:0;display:flex;position:relative}.ws-lightbox__bar{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.ws-lightbox__meta{font-size:var(--text-sm);color:var(--text-muted);min-width:0;font-weight:600}.ws-lightbox__bar-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;display:inline-flex}.ws-lightbox__counter{font-variant-numeric:tabular-nums;white-space:nowrap}.ws-lightbox__stage-wrap{min-height:0;display:flex;position:relative}.ws-lightbox__stage-wrap .ws-lightbox__stage{flex:1;min-width:0}.ws-lightbox__zoom{align-items:center;gap:2px;display:inline-flex}.ws-lightbox__bar-actions .btn--icon{min-width:44px;min-height:44px}.ws-lightbox__nav{z-index:2;border-radius:var(--radius-pill);color:#fff;cursor:pointer;background:#1418108c;border:none;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;transition:background .15s,opacity .15s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.ws-lightbox__nav:hover{background:#141810b8}.ws-lightbox__nav:disabled{opacity:.3;cursor:default}.ws-lightbox__nav--prev{left:var(--space-2)}.ws-lightbox__nav--next{right:var(--space-2)}.ws-lightbox__print-caption,.ws-lightbox__print-note{display:none}.ws-lightbox__stage{touch-action:none;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.ws-lightbox__viewport{transform-origin:50%;will-change:transform;justify-content:center;align-items:center;max-width:100%;max-height:70vh;display:flex}.ws-lightbox__stage img{object-fit:contain;border-radius:var(--radius-md);transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:100%;max-height:70vh;display:block}.ws-lightbox__actions{justify-content:flex-end;display:flex}@media (width<=900px){.ws-fab{right:var(--space-3);bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom,0px) + var(--space-3))}.ws-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.ws-portfolio__head-actions,.ws-portfolio__head .ws-capture{width:100%}.ws-portfolio__head .ws-capture__btn{justify-content:center;width:100%}.ws-lightbox{padding:var(--space-3)}}.ws-thumb__skill{left:var(--space-2);right:var(--space-2);top:var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-sm);color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);white-space:nowrap;text-overflow:ellipsis;background:#141810a8;padding:2px 8px;font-weight:600;position:absolute;overflow:hidden}.ws-lightbox__skill{color:var(--color-primary);font-weight:600}.ws-lightbox__student{color:var(--text-strong,inherit);text-overflow:ellipsis;max-width:100%;font-weight:700;overflow:hidden}.ws-lightbox__note{gap:var(--space-1);margin-top:var(--space-3);flex-direction:column;display:flex}.ws-lightbox__note-label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0;font-weight:600}.ws-lightbox__note-input{resize:vertical;width:100%;min-height:2.5rem;padding:var(--space-2);font:inherit;font-size:var(--text-md);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.ws-lightbox__note-input:focus{outline:2px solid var(--color-primary);outline-offset:1px}.ws-lightbox__note-text{font-size:var(--text-md);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ws-lightbox__note-status{min-height:var(--text-sm);font-size:var(--text-sm)}.ws-lightbox__activity{border-top:1px solid var(--border);padding-top:var(--space-3)}.ws-lightbox__activity-title{margin:0 0 var(--space-2);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-weight:600}.ws-lightbox__activity-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.ws-lightbox__activity-list li{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.ws-lightbox__activity-what{font-weight:600}.ws-capture--compact .ws-capture__btn{min-height:34px;padding:0 var(--space-3);font-size:var(--text-sm)}.ws-grid--compact{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}.ws-associate__hint{margin:0 0 var(--space-3);font-size:var(--text-sm)}.ws-associate__list{gap:var(--space-2);max-height:46vh;margin-top:var(--space-3);flex-direction:column;display:flex;overflow-y:auto}.ws-associate__empty{padding:var(--space-3) 0;text-align:center}.ws-associate__option{text-align:left;width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;transition:border-color .12s,background .12s;display:flex}.ws-associate__option:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.ws-associate__option:disabled{opacity:.6;cursor:default}.ws-associate__option-name{font-weight:600}.ws-associate__option-meta{font-size:var(--text-sm)}.ws-picker{gap:var(--space-3);flex-direction:column;display:flex}.ws-picker__recents,.ws-picker__domain,.ws-picker__mastered-body .ws-picker__domain{gap:var(--space-2);flex-direction:column;display:flex}.ws-picker__domain+.ws-picker__domain{margin-top:var(--space-2)}.ws-picker__domain-head{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0;font-weight:600}.ws-picker__recents{padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.ws-picker__mastered{gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.ws-picker__collapse{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);cursor:pointer;font-size:var(--text-md);color:var(--text);text-align:left;background:0 0;border:0;font-weight:600;display:flex}.ws-picker__collapse:disabled{cursor:default}.ws-picker__collapse-chevron{font-size:var(--text-sm);color:var(--text-muted)}.ws-picker__collapse-count{font-size:var(--text-sm);font-weight:400}.ws-picker__mastered-body{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}@media (width<=480px){.ws-picker__collapse{padding:var(--space-3) var(--space-2)}}.ws-quick__preview{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.ws-quick__preview img{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--border);max-width:100%;max-height:150px}.ws-quick__for{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-primary-soft);display:flex}.ws-quick__for-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.ws-quick__student{align-items:center;gap:var(--space-3);flex-direction:row}.ws-quick__nav{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.ws-quick__nav-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);width:44px;height:44px;color:var(--text);cursor:pointer;flex:none;justify-content:center;align-items:center;transition:border-color .12s,background .12s;display:inline-flex}.ws-quick__nav-btn:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.ws-quick__nav-btn:disabled{opacity:.4;cursor:default}.ws-quick__progress{text-align:center;flex-direction:column;flex:auto;align-items:center;gap:2px;min-width:0;display:flex}.ws-quick__progress-count{font-weight:600}.ws-quick__progress-saved{font-size:var(--text-sm)}.ws-quick__bar{border-radius:var(--radius-pill);background:var(--border);height:4px;margin-bottom:var(--space-3);overflow:hidden}.ws-quick__bar:before{content:"";height:100%;width:var(--ws-fill,0%);background:var(--color-primary);border-radius:inherit;transition:width .2s;display:block}.ws-quick__stage{touch-action:pan-y}.ws-quick__preview-frame{display:inline-flex;position:relative}.ws-quick__saved-badge{color:#fff;background:var(--color-success-dark,var(--color-primary));width:26px;height:26px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:-6px;right:-6px}.ws-quick__crop{right:var(--space-2);bottom:var(--space-2);gap:var(--space-1);border:1px solid var(--border);min-height:44px;box-shadow:var(--shadow-sm);background:#ffffffeb;position:absolute}.ws-quick__saved-hint{margin-top:var(--space-2);text-align:center}.ws-quick__done{align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-3);text-align:center;flex-direction:column;display:flex}.ws-quick__done-icon{color:#fff;background:var(--color-success-dark,var(--color-primary));border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex}.ws-quick__done-text{font-size:var(--text-lg);margin:0;font-weight:600}.ws-quick__actions{flex-wrap:wrap}.ws-quick__actions .btn{min-height:44px}@media (width<=480px){.ws-quick__actions{flex-direction:column-reverse}.ws-quick__actions .btn{justify-content:center;width:100%}}.ws-evidence .drawer__section-title{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.ws-evidence__count{font-size:var(--text-sm);font-weight:400}.ws-evidence__empty{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.ws-evidence .ws-grid li{position:relative}.ws-evidence__item--excluded .ws-thumb{opacity:.4}.ws-evidence__include{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-sm,8px);min-width:44px;min-height:44px;box-shadow:var(--shadow-sm);cursor:pointer;background:#ffffffe6;justify-content:center;align-items:center;padding:3px;display:inline-flex;position:absolute}.ws-evidence__include input{cursor:pointer;margin:0}.reports__skill-head,.overview__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.reports__skill-head .btn{align-items:center;gap:var(--space-2);display:inline-flex}.ws-search__head{margin-bottom:var(--space-4)}.ws-search__filters{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.ws-search__filters .field{margin:0}.ws-search__q{flex:240px}.ws-search__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin:0;padding:0;list-style:none;display:grid}.ws-search__result{gap:var(--space-2);flex-direction:column;display:flex}.ws-search__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.ws-search__student{font-weight:600;font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ws-search__skill{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ws-search__status{font-size:var(--text-sm);color:var(--text-muted);margin:0 0 var(--space-3)}.ws-search__status:empty{display:none}.ws-search__more{margin-top:var(--space-4);justify-content:center;display:flex}@media (width<=480px){.ws-search__filters .field:not(.ws-search__q){flex:40%}.ws-search__more .btn{width:100%}}.print-report-header,.print-report-footer{display:none}@media print{body.printing-work-report *{visibility:hidden}body.printing-work-report .print-region,body.printing-work-report .print-region *{visibility:visible}body.printing-work-report .print-region{width:100%;position:absolute;top:0;left:0}body.printing-work-report .no-print,body.printing-work-report .no-print *{visibility:hidden!important}body.printing-work-report .print-report-header{color:#000;border-bottom:1.5pt solid #000;margin:0 0 12pt;padding:0 0 8pt;display:block}body.printing-work-report .print-report-header__name{font-size:var(--text-xl);color:#000;margin:0 0 4pt;font-weight:700}body.printing-work-report .print-report-header__meta{font-size:var(--text-sm);flex-wrap:wrap;gap:4pt 16pt;margin:0;display:flex}body.printing-work-report .print-report-header__meta>div{gap:4pt;display:flex}body.printing-work-report .print-report-header__meta dt{color:#000;font-weight:700}body.printing-work-report .print-report-header__meta dt:after{content:":"}body.printing-work-report .print-report-header__meta dd{color:#000;margin:0}body.printing-work-report .print-report-footer{visibility:visible;width:100%;font-size:var(--text-sm);color:#000;border-top:.5pt solid #000;padding-top:4pt;display:block;position:fixed;bottom:0;left:0}body.printing-work-sample *{visibility:hidden}body.printing-work-sample .ws-lightbox__stage-wrap{position:static}body.printing-work-sample .ws-lightbox__print-area,body.printing-work-sample .ws-lightbox__print-area *{visibility:visible}body.printing-work-sample .ws-lightbox__print-area{width:100%;max-height:none;display:block;position:absolute;top:0;left:0;overflow:visible}body.printing-work-sample .ws-lightbox__print-caption{color:#000;margin:0 0 8pt;font-size:12pt;font-weight:600;display:block}body.printing-work-sample .ws-lightbox__print-note{color:#000;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10pt;font-size:11pt;font-weight:400;display:block}body.printing-work-sample .ws-lightbox__viewport{max-width:100%;max-height:none;transform:none!important}body.printing-work-sample .ws-lightbox__print-area img{object-fit:contain;border-radius:0;max-width:100%;max-height:92vh}}.page-header__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.modal__panel--wide{max-width:720px}.bulk-import__textarea{resize:vertical;width:100%;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--text-sm);line-height:1.5}.bulk-import__tools{gap:var(--space-2);flex-wrap:wrap;display:flex}.bulk-import__preview{border:1px solid var(--gray-200,#eee);border-radius:var(--radius-sm);overflow-x:auto}.bulk-import__table{white-space:nowrap}.bulk-import__table th{background:var(--gray-100);font-weight:700}.bulk-import__table tr.is-invalid td{background:var(--color-error-soft)}.bulk-import__status--ok{color:var(--color-success,#2e7d32);font-weight:600}.bulk-import__status--err{color:var(--color-error,#c62828);white-space:normal;font-weight:600}.bulk-import__status--warn{color:var(--color-warning-text);white-space:normal;font-weight:600}.bulk-import__status--muted{color:var(--text-muted)}.bulk-import__summary{margin:0}.login__remember-wrap{flex-direction:column;gap:2px;display:flex}.login__remember-hint{color:var(--gray-600);font-size:var(--text-sm)}.provision-choice{gap:var(--space-2);border:none;flex-direction:column;margin:0;padding:0;display:flex}.provision-choice__legend{margin-bottom:var(--space-1);font-weight:600;font-size:var(--text-sm);color:var(--gray-700);padding:0}.provision-choice__opt{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;display:flex}.provision-choice__opt.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.provision-choice__opt input{width:18px;height:18px;accent-color:var(--color-primary);flex:none;margin-top:3px}.provision-choice__text{flex-direction:column;gap:2px;display:flex}.provision-choice__title{font-weight:600;font-size:var(--text-md)}.provision-choice__desc{color:var(--gray-600);font-size:var(--text-sm)}.provision-choice__password{margin-top:var(--space-1)}.provision-result{gap:var(--space-3);flex-direction:column;display:flex}.provision-result__label{font-weight:600;font-size:var(--text-sm);color:var(--gray-700);margin:0}.provision-result__secret{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.provision-result__code{padding:var(--space-2) var(--space-3);font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.02em;background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-sm);word-break:break-all;font-weight:600}.provision-result__note{align-items:flex-start;gap:var(--space-2);font-size:var(--text-sm);color:var(--gray-700);margin:0;display:flex}.provision-result__note svg{flex:none;margin-top:2px}.provision-result__note--ok{color:var(--color-success-text)}.provision-result__note--warn{padding:var(--space-2) var(--space-3);color:var(--gray-900);background:var(--color-warning-soft);border-left:3px solid var(--color-warning);border-radius:var(--radius-sm)}.force-change__signout{margin-top:var(--space-3)}@media (width<=480px){.provision-result__secret{align-items:stretch}.provision-result__code{text-align:center;width:100%}}.confirm-dialog{z-index:400}.confirm-dialog__panel{max-width:400px}.confirm-dialog__body{gap:var(--space-2);padding:var(--space-4);flex-direction:column;display:flex}.confirm-dialog__title{font-size:var(--text-lg);margin:0}.confirm-dialog__message{font-size:var(--text-md);color:var(--gray-700,#444);margin:0;line-height:1.5}.confirm-dialog__actions{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--gray-200,#eee);display:flex}.confirm-dialog__actions .btn{min-height:44px}@media (width<=480px){.confirm-dialog__actions{flex-direction:column-reverse}.confirm-dialog__actions .btn{justify-content:center;width:100%}}.ws-capture__retry{align-items:center;gap:var(--space-1);min-height:44px;display:inline-flex}.ws-capture-review{max-width:560px}.ws-capture-review__hint{margin:0 0 var(--space-3)}.ws-capture-review__grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0;padding:0;list-style:none;display:grid}.ws-capture-review__item{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.ws-capture-review__frame{aspect-ratio:1;background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius-md);justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.ws-capture-review__frame img{object-fit:contain;max-width:100%;max-height:100%}.ws-capture-review__crop{align-items:center;gap:var(--space-1);min-height:44px;display:inline-flex}@media (width<=480px){.ws-capture-review__grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.ws-quick__error{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ws-quick__error-text{flex:auto;margin:0}.ws-quick__retry{align-items:center;gap:var(--space-1);flex:none;min-height:44px;display:inline-flex}.ws-removed{margin-top:var(--space-5);border-top:1px solid var(--border);padding-top:var(--space-4)}.ws-removed__toggle{align-items:center;gap:var(--space-1);min-height:44px;display:inline-flex}.ws-removed__caret{transition:transform .15s}.ws-removed__caret--closed{transform:rotate(-90deg)}.ws-removed__panel{margin-top:var(--space-3)}.ws-removed__item{gap:var(--space-2);flex-direction:column;display:flex}.ws-thumb--removed{cursor:default;opacity:.72}.ws-thumb--removed:hover{box-shadow:var(--shadow-sm);transform:none}.ws-removed__restore{justify-content:center;align-items:center;gap:var(--space-1);width:100%;min-height:44px;display:inline-flex}.behavior-tab{gap:var(--space-4);align-content:start;min-height:100vh;display:grid}.behavior-tab>*{min-width:0}.behavior-tab__toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.behavior-tab__toolbar .btn{align-items:center;gap:var(--space-2);display:inline-flex}.behavior-tab__panel-head,.behavior-manage__head-actions{align-items:center;gap:var(--space-2);display:flex}.behavior-tab__panel-head{justify-content:space-between}.behavior-tab__log .behavior-log{margin-top:var(--space-3)}.behavior-log{gap:var(--space-3);max-width:var(--content-read);display:grid}.behavior-log__chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.behavior-log__chips .status-chip.is-selected{background:var(--color-primary)}.behavior-log__row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.behavior-log__duration{align-items:center;gap:var(--space-2);display:flex}.behavior-log__duration input{width:90px}.behavior-log__duration span{color:var(--text-muted);font-size:var(--text-sm)}.behavior-log__save{justify-self:start}.behavior-tab__list-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.behavior-tab__list-head h3{font-size:var(--text-lg);margin:0}.behavior-tab__incidents{gap:var(--space-3);margin-top:var(--space-3);display:grid}.behavior-incident{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-sm)}.behavior-incident__head{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.behavior-incident__name{font-weight:700}.behavior-incident__meta{color:var(--text-muted);font-size:var(--text-sm)}.behavior-incident__void{margin-left:auto}.behavior-incident__abc{gap:var(--space-2);margin:var(--space-2) 0 0;display:grid}.behavior-incident__abc dt{font-size:var(--text-sm);color:var(--text-muted);font-weight:600}.behavior-incident__abc dd{margin:0}.behavior-incident__recorder{margin:var(--space-2) 0 0;font-size:var(--text-sm)}.behavior-incident__void-form{gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:grid}.behavior-incident__void-actions{gap:var(--space-2);display:flex}.behavior-manage__head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.behavior-manage__form{gap:var(--space-3);margin:var(--space-3) 0;max-width:var(--content-read);display:grid}.behavior-manage__form-actions{gap:var(--space-2);display:flex}.behavior-manage__list{margin:var(--space-3) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.behavior-manage__footer{margin-top:var(--space-3);justify-content:flex-end;display:flex}.behavior-manage__list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);display:flex}.behavior-manage__list li.is-archived .behavior-manage__item{opacity:.6}.behavior-manage__item{gap:var(--space-1);min-width:0;display:grid}.behavior-manage__name{align-items:center;gap:var(--space-2);font-weight:600;display:inline-flex}.behavior-manage__definition{color:var(--text-muted);font-size:var(--text-sm)}.behavior-manage__actions{gap:var(--space-2);flex-shrink:0;display:flex}.collect-behavior{margin:var(--space-2) 0;justify-content:flex-end;display:flex}.behavior-log-modal__panel{max-width:560px}.behavior-log-modal__empty{justify-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);text-align:center;color:var(--text-muted);display:grid}.behavior-log-modal__empty p{max-width:40ch;margin:0}.behavior-log-modal__empty strong{color:var(--text)}@media (width<=640px){.behavior-log__row{grid-template-columns:1fr}}@media (width<=480px){.behavior-log__save{justify-self:stretch;width:100%}.behavior-manage__list li{flex-direction:column;align-items:stretch}.behavior-manage__actions{justify-content:flex-end}.collect-behavior{justify-content:stretch}.collect-behavior .behavior-log-trigger{width:100%}}.behavior-tab__filters{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.behavior-tab__filters label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);display:inline-flex}.behavior-tab__print{margin-left:auto}.behavior-tab__patterns-note{margin:var(--space-2) 0 0}.behavior-patterns__charts{gap:var(--space-4);margin-top:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.behavior-patterns__charts h3{margin:0 0 var(--space-2);font-size:var(--text-md)}@media (width<=900px){.behavior-patterns__charts{grid-template-columns:1fr}.behavior-tab__print{margin-left:0}}.behavior-print{display:none}@media print{body.printing-behavior-log *{visibility:hidden}body.printing-behavior-log .behavior-print,body.printing-behavior-log .behavior-print *{visibility:visible}body.printing-behavior-log .behavior-print{color:#000;background:#fff;width:100%;display:block;position:absolute;top:0;left:0}.behavior-print__head{font-size:var(--text-sm);justify-content:space-between;align-items:baseline;gap:16pt;margin-bottom:4pt;display:flex}.behavior-print__title{font-size:var(--text-md);text-align:center;font-weight:700}.behavior-print__staff{font-size:var(--text-sm);margin-bottom:8pt}.behavior-print__table{border-collapse:collapse;width:100%;font-size:10pt}.behavior-print__table th,.behavior-print__table td{vertical-align:top;text-align:left;border:1px solid #000;padding:3pt 4pt}.behavior-print__table thead th{vertical-align:bottom;font-weight:600}.behavior-print__behavior-col span{writing-mode:vertical-rl;max-height:90pt;line-height:1.1;transform:rotate(180deg)}.behavior-print__behavior-col,.behavior-print__check{text-align:center;width:18pt}.behavior-print__check{font-size:11pt}.behavior-print__num{text-align:right;color:#555;width:14pt}.behavior-print__when{white-space:nowrap}.behavior-print__table tr{break-inside:avoid}.behavior-print__table tbody tr:nth-child(2n) td{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f0efe9}.behavior-print__foot{color:#333;margin-top:8pt;font-size:9pt}.behavior-print__function{break-inside:avoid;margin-top:12pt}.behavior-print__function h2{font-size:var(--text-md);margin:0 0 2pt}.behavior-print__function-attribution{color:#333;margin:0 0 6pt;font-size:9pt;font-style:italic}.behavior-print__function-text{white-space:pre-wrap;font-size:10pt;line-height:1.35}}.behavior-tab__function-print{margin-bottom:var(--space-2);justify-content:flex-end;display:flex}.behavior-fn__intro p:first-child{margin-top:0}.behavior-fn__warning{gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-warning,#b45309);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-warning,#b45309) 12%, transparent);margin-bottom:var(--space-3);align-items:flex-start;display:flex}.behavior-fn__warning svg{flex-shrink:0;margin-top:2px}.behavior-fn__meta{margin:0 0 var(--space-3)}.behavior-fn__stale{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--surface-2,#0000000a);margin-bottom:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.behavior-fn__incidents{margin-bottom:var(--space-4)}.behavior-fn__incidents h3{margin:0 0 var(--space-1);font-size:var(--text-md)}.behavior-fn__incidents p{margin:0 0 var(--space-2);font-size:var(--text-sm)}.behavior-fn__incidents-scroll{border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.behavior-fn__incidents-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.behavior-fn__incidents-table th,.behavior-fn__incidents-table td{padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top;white-space:nowrap;border-bottom:1px solid var(--border)}.behavior-fn__incidents-table .behavior-fn__narrative{white-space:normal;min-width:11rem;max-width:20rem}.behavior-fn__incidents-table .behavior-fn__function{white-space:normal;min-width:10rem;font-weight:600}.behavior-fn__incidents-table tbody tr:last-child td{border-bottom:none}.behavior-fn__incidents-table thead th{background:var(--surface-2,#0000000a);font-weight:600}.behavior-fn textarea{font-family:inherit;line-height:1.5}.behavior-fn__actions{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.behavior-fn__approved{align-items:center;gap:var(--space-2);color:var(--color-success,#2f7d32);font-size:var(--text-sm);font-weight:600;display:inline-flex}.research-filters{margin-bottom:var(--space-4);max-width:420px}.research-table{table-layout:fixed;width:100%}.research-table__topic{width:28%}.research-table__num{width:6rem}.research-table tbody tr{cursor:pointer;position:relative}.research-table tbody td{vertical-align:top;transition:background-color .12s}.research-table tbody tr:hover td{background:var(--bg-app)}.research-table__title,.research-card__title{color:var(--color-primary-text);font-weight:600;text-decoration:none}.research-table__title:hover,.research-card__title:hover,.research-table tbody tr:hover .research-table__title,.research-card:hover .research-card__title{text-decoration:underline}.research-table__title:after{content:"";z-index:1;position:absolute;inset:0}.research-table__decision{color:var(--text-muted)}.research-table__decision-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.research-table__num{text-align:right;white-space:nowrap}.research-cards{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.research-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-3);gap:var(--space-2);cursor:pointer;flex-direction:column;transition:box-shadow .12s;display:flex;position:relative}.research-card:hover{box-shadow:var(--shadow-sm)}.research-card__title{font-size:var(--text-lg)}.research-card__title:after{content:"";z-index:1;position:absolute;inset:0}.research-card__decision{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.research-card__meta{font-size:var(--text-sm);margin:0}.research-detail__header{align-items:flex-start}.research-detail__title-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.research-detail__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.research-detail__section{margin-top:var(--space-5)}.research-detail__label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 var(--space-2);font-weight:700}.research-detail__text{font-size:var(--text-md);white-space:pre-line;max-width:46rem;margin:0;line-height:1.6}.research-articles{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.research-article{border-left:3px solid var(--border);padding-left:var(--space-3);max-width:46rem}.research-article__type{margin:0 0 var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);letter-spacing:.02em;font-weight:600;display:inline-block}.research-article__title{margin:0 0 var(--space-1);font-weight:700}.research-article__cite{margin:0 0 var(--space-1);font-size:var(--text-sm)}.research-article__note{margin:0 0 var(--space-2);font-size:var(--text-md);line-height:1.5}.research-article__link{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-primary-text);font-weight:600;text-decoration:none;display:inline-flex}.research-article__link:hover{text-decoration:underline}.research-form__articles{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);margin:0 0 var(--space-3)}.research-form__articles>legend{font-weight:600;font-size:var(--text-sm);padding:0 var(--space-2)}.research-form__articles-empty{margin:0 0 var(--space-3)}.research-form__article{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-app);padding:var(--space-3);margin-bottom:var(--space-3)}.research-form__article-head{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.research-form__article-num{border-radius:var(--radius-pill);background:var(--color-primary-soft);width:26px;height:26px;color:var(--color-primary-text);font-size:var(--text-sm);place-items:center;font-weight:700;display:inline-grid}.research-form__article-actions{gap:var(--space-1);display:flex}.research-form__add-article{margin-top:var(--space-1)}.research-form__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.privacy-table__topic-col{width:12rem}.privacy-table__topic{text-align:left;vertical-align:top;font-weight:700}.privacy-table__summary{max-width:22rem;color:var(--text-muted);vertical-align:top}.privacy-table__details{vertical-align:top;white-space:pre-line;line-height:1.55}.privacy-cards{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.privacy-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.privacy-card__title{font-size:var(--text-lg);margin:0}.privacy-card__summary{color:var(--text-muted);margin:0}.privacy-card__details{white-space:pre-line;margin:0;line-height:1.55}
