@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-cyrillic-ext-400-normal.98f0f40ca13d97bf40c6.woff2) format("woff2"),url(/static/media/roboto-cyrillic-ext-400-normal.548f6caafcf8a71cfefc.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-cyrillic-400-normal.853412e19305a4ed3793.woff2) format("woff2"),url(/static/media/roboto-cyrillic-400-normal.087726fc88c9223cca7e.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-greek-ext-400-normal.9642a4a41dc8d4846f63.woff2) format("woff2"),url(/static/media/roboto-greek-ext-400-normal.48ded4195df54b2e3e5a.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-greek-400-normal.57812cd271fda86c10f5.woff2) format("woff2"),url(/static/media/roboto-greek-400-normal.7ec7a0e9e0786aee6e79.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-math-400-normal.bc7e0dec038a9d72e0ef.woff2) format("woff2"),url(/static/media/roboto-math-400-normal.692ee66563d6dc1dbb5e.woff) format("woff");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-symbols-400-normal.f296d06d7106398ad195.woff2) format("woff2"),url(/static/media/roboto-symbols-400-normal.aabf754f3e6cb69c1248.woff) format("woff");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-vietnamese-400-normal.518707bb3d2fe24c748e.woff2) format("woff2"),url(/static/media/roboto-vietnamese-400-normal.f0d6cc08579e9827cf2f.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-latin-ext-400-normal.639383454033e94d3944.woff2) format("woff2"),url(/static/media/roboto-latin-ext-400-normal.ef4cc4f901bdd8d07793.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:400;src:url(/static/media/roboto-latin-400-normal.0d16261b107ca3336eeb.woff2) format("woff2"),url(/static/media/roboto-latin-400-normal.c1b1c5c6bf22ab6cb701.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-cyrillic-ext-500-normal.ef0965b421f667665255.woff2) format("woff2"),url(/static/media/roboto-cyrillic-ext-500-normal.aeab2cc4451be8b9d86a.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-cyrillic-500-normal.01780fd62684af188890.woff2) format("woff2"),url(/static/media/roboto-cyrillic-500-normal.d21a79f979e530434118.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-greek-ext-500-normal.973c29ab080126156063.woff2) format("woff2"),url(/static/media/roboto-greek-ext-500-normal.635e4d35a29a4a178c40.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-greek-500-normal.cb9864dcd4294f0bccc3.woff2) format("woff2"),url(/static/media/roboto-greek-500-normal.b9a415037587708086f6.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-math-500-normal.233f0580df5fc08545b4.woff2) format("woff2"),url(/static/media/roboto-math-500-normal.4d9eda1275cbd883f22c.woff) format("woff");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-symbols-500-normal.e8741b6ed4b014a187a4.woff2) format("woff2"),url(/static/media/roboto-symbols-500-normal.554161279afea69e08cc.woff) format("woff");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-vietnamese-500-normal.f7cefda952721b9c5b5e.woff2) format("woff2"),url(/static/media/roboto-vietnamese-500-normal.3164363bfedfa8473e81.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-latin-ext-500-normal.a352ed92d427846d0a4f.woff2) format("woff2"),url(/static/media/roboto-latin-ext-500-normal.d929fcd455b433be659a.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:500;src:url(/static/media/roboto-latin-500-normal.1c7e8aa0ba84e4f92e5f.woff2) format("woff2"),url(/static/media/roboto-latin-500-normal.f4ee5bd9ce239f6e5a1a.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-cyrillic-ext-700-normal.27eb18da5975f2edf14b.woff2) format("woff2"),url(/static/media/roboto-cyrillic-ext-700-normal.4f601222cb6329ebe79c.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-cyrillic-700-normal.926e1a4175bf426ea4e6.woff2) format("woff2"),url(/static/media/roboto-cyrillic-700-normal.1a63fc63331a4ca03316.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-greek-ext-700-normal.79b6b25814993f5022f4.woff2) format("woff2"),url(/static/media/roboto-greek-ext-700-normal.06ed51b0462b2858dbc3.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-greek-700-normal.6d6f137c3bc1e1e502b2.woff2) format("woff2"),url(/static/media/roboto-greek-700-normal.93f12f4a2f94b841a293.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-math-700-normal.d1cf4bc3039dab22720c.woff2) format("woff2"),url(/static/media/roboto-math-700-normal.84f709db1695f02f3f14.woff) format("woff");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-symbols-700-normal.e1d71acc707734868007.woff2) format("woff2"),url(/static/media/roboto-symbols-700-normal.51b45ee7c36d44f6d924.woff) format("woff");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-vietnamese-700-normal.876757aab86a31677ede.woff2) format("woff2"),url(/static/media/roboto-vietnamese-700-normal.6424b1c360aacf9e7957.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-latin-ext-700-normal.265de73897e8adbe82b4.woff2) format("woff2"),url(/static/media/roboto-latin-ext-700-normal.064c6977713aa55be138.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Roboto;font-style:normal;font-weight:700;src:url(/static/media/roboto-latin-700-normal.d89b03c583b9adb99987.woff2) format("woff2"),url(/static/media/roboto-latin-700-normal.53f3933bc81f81da12ed.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}html[data-ui-theme=smart-hrd]{--ui-accent-light:#2a8a99;--ui-accent:#0b6b7a;--ui-accent-strong:#08525e;--ui-accent-border:#9fcfd8;--ui-accent-soft:#e6f3f5;--ui-accent-soft-strong:#cde7ec;--ui-accent-rgb:11,107,122;--md-primary:#0b6b7a;--md-on-primary:#fff;--md-primary-container:#b4ebf4;--md-on-primary-container:#001f24;--md-secondary-container:#cde7ec;--md-on-secondary-container:#051f23;--md-error:#ba1a1a;--md-error-container:#ffdad6;--md-background:#f4fafb;--md-surface:#fff;--md-on-surface:#171d1e;--md-on-surface-variant:#3f484a;--md-surface-container-low:#eef4f5;--md-surface-container:#e8eef0;--md-outline:#6f797b;--md-outline-variant:#bfc8ca;--app-sidebar-divider:var(--md-outline-variant)}html[data-ui-theme=smart-hrd] body{-webkit-font-smoothing:antialiased;background:var(--md-background);color:var(--md-on-surface);font-family:Roboto,Helvetica Neue,Arial,sans-serif}html[data-ui-theme=smart-hrd] button,html[data-ui-theme=smart-hrd] input,html[data-ui-theme=smart-hrd] select,html[data-ui-theme=smart-hrd] textarea{font-family:inherit}html[data-ui-theme=smart-hrd] .App{background-color:var(--md-background)}html[data-ui-theme=smart-hrd] .App-header{border-bottom:1px solid var(--md-outline-variant);box-shadow:none;padding:12px 24px}html[data-ui-theme=smart-hrd] .header-content{max-width:none}html[data-ui-theme=smart-hrd] .unizar-logo-img{filter:none;height:44px;width:44px}html[data-ui-theme=smart-hrd] .header-text h1{font-size:1.125rem;font-weight:500;letter-spacing:.15px}html[data-ui-theme=smart-hrd] .header-subtitle{font-size:.8rem;letter-spacing:.4px;opacity:.75}html[data-ui-theme=smart-hrd] .header-icon-btn,html[data-ui-theme=smart-hrd] .header-profile-avatar{border:none;border-radius:100px;height:40px;width:40px}html[data-ui-theme=smart-hrd] .header-profile-avatar{background:var(--md-primary);color:var(--md-on-primary)}html[data-ui-theme=smart-hrd] .header-profile-avatar--btn:hover{background:#095a67}html[data-ui-theme=smart-hrd] .header-icon-badge{background:var(--md-error)}html[data-ui-theme=smart-hrd] .header-notify-panel,html[data-ui-theme=smart-hrd] .header-profile-panel{border:1px solid var(--md-outline-variant);border-radius:16px;box-shadow:0 4px 16px #171d1e1f;color:var(--md-on-surface)}html[data-ui-theme=smart-hrd] .header-profile-panel__email,html[data-ui-theme=smart-hrd] .header-profile-panel__name{color:var(--md-on-surface)}html[data-ui-theme=smart-hrd] .header-profile-panel__btn{border-radius:100px}html[data-ui-theme=smart-hrd] .header-profile-panel__btn--primary{background:var(--md-primary)}html[data-ui-theme=smart-hrd] .header-profile-panel__btn--danger{background:var(--md-error)}html[data-ui-theme=smart-hrd] .tabs-navigation{border-right:1px solid var(--md-outline-variant);padding:8px 0}html[data-ui-theme=smart-hrd] .nav-items{gap:2px;padding:0 10px}html[data-ui-theme=smart-hrd] .nav-item{border-left:none;border-radius:100px;font-size:.875rem;letter-spacing:.1px;padding:10px 16px;transition:background-color .15s ease,color .15s ease}html[data-ui-theme=smart-hrd] .nav-item:hover{background-color:#0b6b7a14}html[data-ui-theme=smart-hrd] .nav-item.active{background-color:var(--md-secondary-container);border-left:none;color:var(--md-on-secondary-container);font-weight:600}html[data-ui-theme=smart-hrd] .nav-aplikasi-list{border-color:var(--md-outline-variant)}html[data-ui-theme=smart-hrd] .sidebar-collapse-btn{border-top-color:var(--md-outline-variant)}html[data-ui-theme=smart-hrd] .sidebar-collapse-btn:hover,html[data-ui-theme=smart-hrd] .sidebar-expand-fab:hover{background:#0b6b7a14;color:var(--md-primary)}html[data-ui-theme=smart-hrd] .sidebar-expand-fab{border-color:var(--md-outline-variant);border-radius:0 16px 16px 0}html[data-ui-theme=smart-hrd] .container{gap:24px;padding:24px}html[data-ui-theme=smart-hrd] h1,html[data-ui-theme=smart-hrd] h2,html[data-ui-theme=smart-hrd] h3{font-weight:500;letter-spacing:0}html[data-ui-theme=smart-hrd] .btn,html[data-ui-theme=smart-hrd] [class*=-btn]:not([class*=icon]):not([class*=-btn__]):not(.header-profile-avatar--btn):not(.sidebar-expand-fab):not(.sidebar-collapse-btn),html[data-ui-theme=smart-hrd] [class*=__btn]:not([class*=icon]){border-radius:100px;box-shadow:none}html[data-ui-theme=smart-hrd] .btn-add-user,html[data-ui-theme=smart-hrd] .btn-primary,html[data-ui-theme=smart-hrd] [class*=btn--primary],html[data-ui-theme=smart-hrd] [class*=btn-primary]{background:var(--md-primary);border-color:var(--md-primary);color:var(--md-on-primary)}html[data-ui-theme=smart-hrd] .btn-add-user:hover,html[data-ui-theme=smart-hrd] .btn-primary:hover:not(:disabled),html[data-ui-theme=smart-hrd] [class*=btn--primary]:hover:not(:disabled){background:#095a67;border-color:#095a67}html[data-ui-theme=smart-hrd] .simb-folder-back-btn{background:var(--md-secondary-container);border-color:#0000;color:var(--md-on-secondary-container)}html[data-ui-theme=smart-hrd] .simb-folder-back-btn:hover{background:#b9dce2;border-color:#0000}html[data-ui-theme=smart-hrd] .app-settings__panel,html[data-ui-theme=smart-hrd] .form-section,html[data-ui-theme=smart-hrd] .users-section,html[data-ui-theme=smart-hrd] [class*=card]:not([class*=__]):not([class*=card-]){border-color:var(--md-outline-variant);border-radius:16px;box-shadow:none}html[data-ui-theme=smart-hrd] input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):not([type=range]),html[data-ui-theme=smart-hrd] select,html[data-ui-theme=smart-hrd] textarea{border-color:var(--md-outline-variant);border-radius:12px}html[data-ui-theme=smart-hrd] input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):not([type=range]):focus,html[data-ui-theme=smart-hrd] select:focus,html[data-ui-theme=smart-hrd] textarea:focus{border-color:var(--md-primary);box-shadow:0 0 0 1px var(--md-primary);outline:none}html[data-ui-theme=smart-hrd] input[type=checkbox],html[data-ui-theme=smart-hrd] input[type=radio]{accent-color:var(--md-primary)}html[data-ui-theme=smart-hrd] table thead th{background:var(--md-surface-container-low);color:var(--md-on-surface-variant);font-weight:500}html[data-ui-theme=smart-hrd] table td,html[data-ui-theme=smart-hrd] table thead th{border-bottom-color:var(--md-outline-variant)}:where(html[data-ui-theme=smart-hrd] [role=tab]){font-weight:500}:where(html[data-ui-theme=smart-hrd] [role=tab][aria-selected=true]){color:var(--md-primary)}html[data-ui-theme=smart-hrd] .logout-confirm-modal,html[data-ui-theme=smart-hrd] .modal-content,html[data-ui-theme=smart-hrd] .obe-modal,html[data-ui-theme=smart-hrd] [role=dialog][aria-modal=true]{border-radius:28px}html[data-ui-theme=smart-hrd] .group-badge,html[data-ui-theme=smart-hrd] .status-badge{border-radius:8px;font-weight:500}html[data-ui-theme=smart-hrd] ::-webkit-scrollbar{height:10px;width:10px}html[data-ui-theme=smart-hrd] ::-webkit-scrollbar-thumb{background-clip:content-box;background-color:var(--md-outline-variant);border:2px solid #0000;border-radius:8px}html[data-ui-theme=smart-hrd] ::-webkit-scrollbar-thumb:hover{background-color:var(--md-outline)}html[data-ui-theme=smart-hrd] .nav-item{align-items:center;display:flex;gap:14px}html[data-ui-theme=smart-hrd] .nav-item__emoji{display:none}html[data-ui-theme=smart-hrd] .nav-item__icon{color:var(--md-on-surface-variant);display:block;flex-shrink:0;height:20px;width:20px}html[data-ui-theme=smart-hrd] .nav-item.active .nav-item__icon{color:var(--md-on-secondary-container)}html[data-ui-theme=smart-hrd] .nav-item__label{overflow:hidden;text-overflow:ellipsis}html[data-ui-theme=smart-hrd] .nav-section-title{color:var(--md-on-surface-variant);display:block;font-size:.6875rem;font-weight:600;letter-spacing:.6px;padding:14px 16px 4px;text-transform:uppercase}html[data-ui-theme=smart-hrd] .nav-aplikasi-list{border:none;gap:2px;margin:0;padding:0}html[data-ui-theme=smart-hrd] .nav-container{display:flex;flex:1 1;flex-direction:column;min-height:0}html[data-ui-theme=smart-hrd] .sidebar-user{border-top:1px solid var(--md-outline-variant);display:flex;flex-direction:column;gap:2px;padding:14px 20px;text-align:left}html[data-ui-theme=smart-hrd] .sidebar-user__caption{color:var(--md-on-surface-variant);font-size:.75rem}html[data-ui-theme=smart-hrd] .sidebar-user__name{color:var(--md-on-surface);font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-ui-theme=smart-hrd] .sidebar-user__chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}html[data-ui-theme=smart-hrd] .sidebar-user__chip{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:8px;color:var(--md-on-surface-variant);font-size:.75rem;font-weight:500;padding:2px 8px}html[data-ui-theme=smart-hrd] .sidebar-collapse-btn{background:#0000;padding:10px 20px}@media (min-width:769px){html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed){grid-template-areas:"nav header" "nav main";grid-template-columns:276px 1fr}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .tabs-navigation{align-self:start;height:100vh;padding:0;position:sticky;top:0;width:276px}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .sidebar-brand{align-items:center;display:flex;flex-shrink:0;gap:12px;min-height:64px;padding:8px 20px}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .header-title>.header-text,html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .header-title>.unizar-logo-img{display:none}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .header-page-title{display:block}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .dashboard-hero{display:none}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .App-header{align-items:center;display:flex;min-height:64px}html[data-ui-theme=smart-hrd] .App:not(.App--sidebar-off):not(.App--sidebar-collapsed) .header-content{width:100%}}html[data-ui-theme=smart-hrd] .sidebar-brand__logo{background:var(--md-primary-container);border-radius:50%;display:grid;flex-shrink:0;height:40px;overflow:hidden;place-items:center;width:40px}html[data-ui-theme=smart-hrd] .sidebar-brand__logo img{height:30px;object-fit:contain;width:30px}html[data-ui-theme=smart-hrd] .sidebar-brand__text{display:flex;flex-direction:column;min-width:0;text-align:left}html[data-ui-theme=smart-hrd] .sidebar-brand__text strong{color:var(--md-on-surface);font-size:1rem;font-weight:600;line-height:1.2}html[data-ui-theme=smart-hrd] .sidebar-brand__text span{color:var(--md-on-surface-variant);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-ui-theme=smart-hrd] .header-page-title{color:var(--md-on-surface);color:var(--app-header-font,var(--md-on-surface));font-size:1.125rem;font-weight:500;letter-spacing:.15px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-ui-theme=smart-hrd] .sidebar-user{margin-top:auto}html[data-ui-theme=smart-hrd] .dashboard{background:#0000;border-radius:0;box-shadow:none;padding:0}html[data-ui-theme=smart-hrd] .dashboard-hero-title{color:var(--md-on-surface);font-size:1.5rem;font-weight:500}html[data-ui-theme=smart-hrd] .dashboard-section-title{color:var(--md-on-surface);font-size:1rem;font-weight:500}html[data-ui-theme=smart-hrd] .stats-grid{gap:16px}html[data-ui-theme=smart-hrd] .stat-card{align-items:flex-start;background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:16px;box-shadow:none;color:var(--md-on-surface);flex-direction:row-reverse;gap:16px;justify-content:space-between;padding:16px 20px;transition:border-color .12s ease,box-shadow .12s ease}html[data-ui-theme=smart-hrd] .stat-card:hover,html[data-ui-theme=smart-hrd] .stats-grid-secondary .stat-card:hover{border-color:var(--md-primary);box-shadow:0 1px 3px #171d1e1f;transform:none}html[data-ui-theme=smart-hrd] .stat-icon{background:#e6f3f5;border:1px solid #d3e8ec;border-radius:12px;color:#2a7c88;display:grid;font-size:1.3rem;height:44px;place-items:center;width:44px}html[data-ui-theme=smart-hrd] .percobaan-card__icon .nav-item__icon,html[data-ui-theme=smart-hrd] .stat-icon .nav-item__icon{color:inherit;height:22px;width:22px}html[data-ui-theme=smart-hrd] .stat-card:nth-child(5n+2) .stat-icon{background:#ecf4ee;border-color:#d9e9dd;color:#4a7a5a}html[data-ui-theme=smart-hrd] .stat-card:nth-child(5n+3) .stat-icon{background:#f8f1e7;border-color:#eee1cf;color:#8a6a3c}html[data-ui-theme=smart-hrd] .stat-card:nth-child(5n+4) .stat-icon{background:#eef0f8;border-color:#dde1f0;color:#56608a}html[data-ui-theme=smart-hrd] .stat-card:nth-child(5n+5) .stat-icon{background:#f8eded;border-color:#eedada;color:#8a5050}html[data-ui-theme=smart-hrd] .stat-content{gap:2px;min-width:0}html[data-ui-theme=smart-hrd] .stat-content h3{color:var(--md-on-surface-variant);font-size:.875rem;font-weight:400;letter-spacing:.25px;opacity:1}html[data-ui-theme=smart-hrd] .stat-value{font-feature-settings:"tnum";color:var(--md-on-surface);font-size:1.75rem;font-variant-numeric:tabular-nums;font-weight:500;margin-top:4px}html[data-ui-theme=smart-hrd] .stat-hint{color:var(--md-on-surface-variant);font-size:.75rem;letter-spacing:.4px;opacity:1}html[data-ui-theme=smart-hrd] .percobaan-sticky{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:16px;box-shadow:none}html[data-ui-theme=smart-hrd] .percobaan-tahun-btn{border-color:var(--md-outline-variant);border-radius:100px;color:var(--md-primary)}html[data-ui-theme=smart-hrd] .percobaan-tahun-btn:hover{background:#0b6b7a14;border-color:var(--md-primary)}html[data-ui-theme=smart-hrd] .percobaan-card{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:16px;gap:8px;padding:16px}html[data-ui-theme=smart-hrd] .percobaan-card:hover{border-color:var(--md-primary);box-shadow:0 1px 3px #171d1e1f}html[data-ui-theme=smart-hrd] .percobaan-card--blok{background:var(--md-surface);border-color:var(--md-outline-variant)}html[data-ui-theme=smart-hrd] .percobaan-card__icon{background:#eef6f7;border:1px solid #dcebee;border-radius:12px;color:var(--md-primary);display:grid;font-size:1.2rem;height:40px;place-items:center;width:40px}html[data-ui-theme=smart-hrd] .percobaan-card__title{color:var(--md-on-surface);font-weight:500}html[data-ui-theme=smart-hrd] .percobaan-card__sub{color:var(--md-on-surface-variant)}html[data-ui-theme=smart-hrd] .percobaan-card__cta{color:var(--md-primary)}html[data-ui-theme=smart-hrd] .percobaan-card__badge{background:var(--md-surface-container);border-radius:8px;color:var(--md-on-surface-variant)}html[data-ui-theme=smart-hrd] .dashboard-highlight-card,html[data-ui-theme=smart-hrd] .obe-summary-bar{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:16px}html[data-ui-theme=smart-hrd] .dashboard-highlight-card strong,html[data-ui-theme=smart-hrd] .obe-summary-bar strong{color:var(--md-primary)}html[data-ui-theme=smart-hrd] .kelas-tabs,html[data-ui-theme=smart-hrd] .mp-tabs{border-bottom:1px solid var(--md-outline-variant);gap:0}html[data-ui-theme=smart-hrd] .kelas-tab,html[data-ui-theme=smart-hrd] .mp-tabs button{background:#0000;border:none;border-radius:0;color:var(--md-on-surface-variant);font-size:.875rem;font-weight:500;letter-spacing:.1px;min-height:48px;padding:12px 20px;position:relative;transition:background-color .15s ease,color .15s ease}html[data-ui-theme=smart-hrd] .kelas-tab:hover,html[data-ui-theme=smart-hrd] .mp-tabs button:hover{background:#0b6b7a14;color:var(--md-on-surface)}html[data-ui-theme=smart-hrd] .kelas-tab--active,html[data-ui-theme=smart-hrd] .kelas-tab--active:hover,html[data-ui-theme=smart-hrd] .mp-tabs button.active,html[data-ui-theme=smart-hrd] .mp-tabs button.active:hover{background:#0000;color:var(--md-primary)}html[data-ui-theme=smart-hrd] .kelas-tab--active:after,html[data-ui-theme=smart-hrd] .mp-tabs button.active:after{background:var(--md-primary);border-radius:3px 3px 0 0;bottom:-1px;content:"";height:3px;left:12px;position:absolute;right:12px}html[data-ui-theme=smart-hrd] .kelas-tab--link{border:none;color:var(--md-primary)}html[data-ui-theme=smart-hrd] .kelas-absensi__subtab{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:8px;color:var(--md-on-surface-variant);font-weight:500;min-height:32px;padding:6px 14px}html[data-ui-theme=smart-hrd] .kelas-absensi__subtab:hover{background:#0b6b7a14}html[data-ui-theme=smart-hrd] .kelas-absensi__subtab--active,html[data-ui-theme=smart-hrd] .kelas-absensi__subtab--active:hover{background:var(--md-secondary-container);border-color:#0000;color:var(--md-on-secondary-container)}@media (max-width:768px){html[data-ui-theme=smart-hrd] .App{grid-template-areas:"header" "main";grid-template-columns:1fr;grid-template-rows:auto 1fr;position:relative}html[data-ui-theme=smart-hrd] .App-header{align-items:center;display:flex;min-height:56px;padding:0 4px 0 56px;position:sticky;top:0}html[data-ui-theme=smart-hrd] .App--dosen-portal .App-header,html[data-ui-theme=smart-hrd] .App--mahasiswa-portal .App-header{padding-left:16px}html[data-ui-theme=smart-hrd] .header-content{align-items:center;flex-direction:row;gap:4px;width:100%}html[data-ui-theme=smart-hrd] .header-title{gap:0}html[data-ui-theme=smart-hrd] .header-title>.header-text,html[data-ui-theme=smart-hrd] .header-title>.unizar-logo-img{display:none}html[data-ui-theme=smart-hrd] .header-page-title{display:block;font-size:1.125rem}html[data-ui-theme=smart-hrd] .dashboard-hero{display:none}html[data-ui-theme=smart-hrd] .header-page-title{overflow:hidden;text-overflow:ellipsis}html[data-ui-theme=smart-hrd] .header-actions{flex-wrap:nowrap;gap:0;width:auto}html[data-ui-theme=smart-hrd] .header-icon-btn,html[data-ui-theme=smart-hrd] .header-profile-avatar{height:40px;width:40px}html[data-ui-theme=smart-hrd] .header-profile-avatar{height:34px;margin:0 6px;width:34px}html[data-ui-theme=smart-hrd] .mobile-menu-toggle{background:#0000;border:none;border-radius:100px;color:var(--md-on-surface);color:var(--app-header-font,var(--md-on-surface));display:grid;height:40px;left:8px;padding:0;place-items:center;position:fixed;top:8px;width:40px;z-index:1150}html[data-ui-theme=smart-hrd] .mobile-menu-toggle:hover{background:#171d1e14}html[data-ui-theme=smart-hrd] .mobile-menu-toggle .nav-item__icon{color:inherit;display:block;height:24px;width:24px}html[data-ui-theme=smart-hrd] .tabs-navigation{border-bottom:none;border-right:1px solid var(--md-outline-variant);bottom:0;display:flex;flex-direction:column;height:100vh;height:100dvh;left:0;max-height:none;overflow-y:auto;padding:0;position:fixed;top:0;transform:translateX(-105%);transition:transform .22s ease,visibility .22s;visibility:hidden;width:min(300px,85vw);z-index:1300}html[data-ui-theme=smart-hrd] .tabs-navigation.show{box-shadow:0 8px 24px #171d1e3d;max-height:none;transform:none;visibility:visible}html[data-ui-theme=smart-hrd] .tabs-navigation .sidebar-brand{align-items:center;display:flex;flex-shrink:0;gap:12px;min-height:64px;padding:8px 20px}html[data-ui-theme=smart-hrd] .nav-items{flex:1 1;flex-direction:column;flex-wrap:nowrap}html[data-ui-theme=smart-hrd] .nav-item,html[data-ui-theme=smart-hrd] .nav-item.active,html[data-ui-theme=smart-hrd] .nav-item:nth-child(odd){border:none;flex:none}html[data-ui-theme=smart-hrd] .tabs-navigation .sidebar-collapse-btn{display:none}html[data-ui-theme=smart-hrd] .mobile-nav-scrim{background:#00000052;display:block;inset:0;position:fixed;z-index:1250}html[data-ui-theme=smart-hrd] .container{gap:16px;padding:16px 16px calc(88px + env(safe-area-inset-bottom, 0px))}html[data-ui-theme=smart-hrd] .container:has(.kelas-page--blok-detail){overflow:clip visible}html[data-ui-theme=smart-hrd] .kelas-page--blok-detail>.kelas-toolbar>.kelas-tabs{background:var(--md-surface);margin:0 -16px 12px;padding:0 8px;position:sticky;top:56px;width:auto;z-index:30}html[data-ui-theme=smart-hrd] .kelas-tab{min-height:44px;padding:10px 14px}html[data-ui-theme=smart-hrd] .kelas-tab--active:after{left:8px;right:8px}html[data-ui-theme=smart-hrd] .kelas-tab--link{border:1px solid var(--md-outline-variant);border-radius:999px;min-height:0;padding:5px 12px}html[data-ui-theme=smart-hrd] .App.App--dosen-portal .portal-bottom-nav,html[data-ui-theme=smart-hrd] .App.App--mahasiswa-portal .mhs-bottom-nav,html[data-ui-theme=smart-hrd] .shell-bottom-nav{align-items:stretch;background:var(--md-surface);border-top:none;bottom:0;box-shadow:0 -1px 0 var(--md-outline-variant),0 -4px 12px #171d1e14;display:flex;justify-content:space-around;left:0;min-height:64px;padding:0 0 env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:1200}html[data-ui-theme=smart-hrd]:has([aria-modal=true]) .App.App--dosen-portal .portal-bottom-nav,html[data-ui-theme=smart-hrd]:has([aria-modal=true]) .App.App--mahasiswa-portal .mhs-bottom-nav,html[data-ui-theme=smart-hrd]:has([aria-modal=true]) .shell-bottom-nav{display:none}html[data-ui-theme=smart-hrd] .App.App--dosen-portal .portal-bottom-nav__item,html[data-ui-theme=smart-hrd] .App.App--mahasiswa-portal .mhs-bottom-nav__item,html[data-ui-theme=smart-hrd] .shell-bottom-nav__item{align-items:center;background:#0000;border:none;border-radius:0;color:var(--md-on-surface-variant);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font:inherit;font-size:.75rem;font-weight:400;gap:2px;justify-content:center;line-height:1.2;max-width:168px;min-width:0;padding:6px 4px 8px;transition:color .15s ease,font-size .15s ease}html[data-ui-theme=smart-hrd] .App.App--dosen-portal .portal-bottom-nav__item.is-active,html[data-ui-theme=smart-hrd] .App.App--mahasiswa-portal .mhs-bottom-nav__item.is-active,html[data-ui-theme=smart-hrd] .shell-bottom-nav__item.is-active{color:var(--md-primary);font-size:.8125rem;font-weight:500}html[data-ui-theme=smart-hrd] .mhs-bottom-nav__icon .nav-item__icon,html[data-ui-theme=smart-hrd] .portal-bottom-nav__icon .nav-item__icon,html[data-ui-theme=smart-hrd] .shell-bottom-nav__item .nav-item__icon{color:inherit;display:block;height:24px;width:24px}html[data-ui-theme=smart-hrd] .mhs-bottom-nav__label,html[data-ui-theme=smart-hrd] .portal-bottom-nav__label,html[data-ui-theme=smart-hrd] .shell-bottom-nav__label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-ui-theme=smart-hrd] .stats-grid-primary{grid-template-columns:1fr}}.login-container{align-items:center;background-color:#1565c0;background-image:url(/static/media/login-bg.1a3f581243c9be97d7d9.png);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh;overflow:hidden;padding:24px;position:relative}.login-card{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:#ffffff38;border:1px solid #ffffff59;border-radius:28px;box-shadow:0 24px 48px #1464822e,inset 0 0 0 1px #ffffff1f;max-width:420px;padding:2.5rem 2.25rem 2rem;position:relative;width:100%;z-index:1}.login-logo-ring{align-items:center;background:linear-gradient(145deg,#fffffff2,#dcf8ee8c);border:1px solid #ffffffbf;border-radius:50%;box-shadow:0 10px 28px #008c821f;display:flex;height:88px;justify-content:center;margin:0 auto 1.1rem;width:88px}.login-logo-img{height:56px;object-fit:contain;width:56px}.glass-title{color:#2a9d8f;font-size:1.65rem;font-weight:700;letter-spacing:-.02em;margin:0 0 1.5rem;text-align:center}.glass-error{background:#ffe6e6bf;border:1px solid #dc645a59;border-radius:14px;color:#b42318;font-size:.875rem;margin-bottom:1rem;padding:.65rem .9rem}.glass-error--warn{background:#fff3c8d9;border-color:#c8a02866;color:#7c5a00}.glass-form{display:flex;flex-direction:column;gap:.95rem}.glass-field{align-items:center;background:#fff;border:none;border-radius:999px;box-shadow:0 4px 16px #1e788c14;display:flex;min-height:52px;overflow:hidden}.glass-field__icon{align-items:center;color:#94a3b8;display:flex;flex-shrink:0;justify-content:center;width:52px}.glass-icon{height:22px;width:22px}.glass-field__rule{align-self:stretch;background:#e2e8f0;flex-shrink:0;margin:12px 0;width:1px}.glass-field__input{background:#0000;border:none;color:#334155;flex:1 1;font-size:.95rem;min-width:0;outline:none;padding:14px 18px 14px 12px}.glass-field__input::placeholder{color:#94a3b8}.glass-submit{background:#1e8fff;border:none;border-radius:999px;box-shadow:0 10px 28px #1e8fff59;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:.35rem;padding:14px 20px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;width:100%}.glass-submit:hover:not(:disabled){box-shadow:0 14px 32px #1e8fff6b;transform:translateY(-2px)}.glass-submit:disabled{cursor:not-allowed;opacity:.72}.auth-toggle{border-top:1px solid #ffffff59;margin-top:1.35rem;padding-top:1.25rem;text-align:center}.auth-toggle p{color:#475569;font-size:.9rem;margin:0}.toggle-link{background:none;border:none;color:#0d9488;cursor:pointer;font-size:.9rem;font-weight:700;padding:0;text-decoration:underline;text-underline-offset:3px}.toggle-link:hover{color:#0f766e}.demo-credentials{background:#ffffff59;border:1px solid #ffffff73;border-radius:16px;margin-top:1.15rem;padding:.9rem 1rem}.demo-credentials p{color:#475569;font-size:.8125rem;margin:.2rem 0}.demo-credentials p strong{color:#0f766e}.demo-login-buttons{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));margin-top:.55rem}.demo-login-btn{background:#1e8fff;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:700;padding:10px 12px;transition:transform .2s ease,opacity .2s ease}.demo-login-btn--dosen{background:#0d9488}.demo-login-btn--mahasiswa{background:#7c3aed}.demo-login-btn:hover:not(:disabled){transform:translateY(-1px)}.demo-login-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:480px){.login-card{border-radius:24px;padding:2rem 1.5rem 1.75rem}.glass-title{font-size:1.45rem}}.percobaan-page{margin:0 auto;max-width:1100px;padding:0 4px 32px;width:100%}.percobaan-page--wide{max-width:none}.percobaan-embedded-admin{margin-top:4px}.percobaan-sticky{align-items:flex-end;background:linear-gradient(180deg,#f0fdfa,#fff);border:1px solid #99f6e4;border-radius:10px;box-shadow:0 4px 16px #0f766e14;display:flex;flex-wrap:wrap;gap:12px 16px;margin-bottom:16px;padding:12px 14px;position:sticky;top:0;z-index:20}.percobaan-sticky__brand{display:flex;flex-direction:column;gap:2px;margin-right:auto;min-width:140px}.percobaan-sticky__brand strong{color:#0f766e;font-size:.95rem}.percobaan-sticky__brand span{color:#64748b;font-size:.78rem}.percobaan-sticky__field{color:#374151;display:flex;flex-direction:column;font-size:.8rem;gap:4px}.percobaan-sticky__field select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.92rem;min-width:140px;padding:8px 10px}.percobaan-sticky__tahun{display:flex;flex-direction:column;gap:4px}.percobaan-sticky__label{color:#374151;font-size:.8rem}.percobaan-tahun-ctrl{align-items:center;display:inline-flex;gap:4px}.percobaan-tahun-ctrl select{font-size:.92rem;font-weight:600;min-width:118px;padding:8px 10px}.percobaan-tahun-btn,.percobaan-tahun-ctrl select{background:#fff;border:1px solid #d1d5db;border-radius:6px}.percobaan-tahun-btn{color:#0f766e;cursor:pointer;font-size:1.05rem;height:34px;line-height:1;width:34px}.percobaan-tahun-btn:hover{background:#f0fdfa;border-color:#0f766e}.percobaan-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.percobaan-btn--primary{background:#0f766e;border-color:#0f766e;color:#fff}.percobaan-btn--primary:hover:not(:disabled){background:#0d9488;border-color:#0d9488;color:#fff}.percobaan-crumb{align-items:center;display:flex;flex-wrap:wrap;font-size:.88rem;gap:4px 6px;margin:0 0 12px}.percobaan-crumb__sep{color:#94a3b8}.percobaan-crumb__btn{background:#0000;border:none;color:#0f766e;cursor:pointer;font-size:inherit;padding:2px 4px}.percobaan-crumb__btn:hover:not(:disabled){text-decoration:underline}.percobaan-crumb__btn.is-current,.percobaan-crumb__btn:disabled{color:#111827;cursor:default;font-weight:600;text-decoration:none}.percobaan-head h2{color:#111827;font-size:1.45rem;margin:0 0 6px}.percobaan-head p{color:#64748b;margin:0 0 4px}.percobaan-head__periode{font-size:.9rem;margin-top:8px!important}.percobaan-body{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:14px 0 18px;padding:12px 14px}.percobaan-body p{color:#475569;font-size:.92rem;line-height:1.5;margin:0 0 8px}.percobaan-body p:last-child{margin-bottom:0}.percobaan-db__bar strong,.percobaan-folders h3{color:#334155;font-size:.95rem;margin:0 0 10px}.percobaan-db{margin-bottom:20px}.percobaan-db__bar{align-items:center;display:flex;gap:10px;justify-content:flex-end;margin-bottom:10px}.percobaan-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.percobaan-card{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:14px 14px 16px;position:relative;text-align:left;transition:border-color .15s ease,box-shadow .15s ease}.percobaan-card:hover{border-color:#0f766e;box-shadow:0 6px 18px #0f766e1a}.percobaan-card--blok{background:#f0fdfa;border-color:#99f6e4}.percobaan-card__icon{font-size:1.35rem}.percobaan-card__title{color:#0f172a;font-size:.98rem;font-weight:700}.percobaan-card__sub{color:#64748b;font-size:.82rem;line-height:1.35}.percobaan-card__cta{color:#0f766e;font-size:.82rem;font-weight:600;margin-top:4px}.percobaan-card__badge{background:#e2e8f0;border-radius:999px;color:#475569;font-size:.68rem;font-weight:700;letter-spacing:.02em;padding:2px 6px;position:absolute;right:10px;top:10px}.percobaan-card--blok .percobaan-card__badge,.percobaan-card[class*=blok] .percobaan-card__badge{background:#ccfbf1;color:#0f766e}.percobaan-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.88rem;padding:7px 12px}.percobaan-btn:hover:not(:disabled){border-color:#0f766e;color:#0f766e}.percobaan-btn:disabled{cursor:not-allowed;opacity:.6}.percobaan-muted{color:#64748b}.percobaan-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#b91c1c;padding:10px 12px}.percobaan-foot{margin-top:18px}@media (max-width:640px){.percobaan-sticky{align-items:stretch}.percobaan-sticky__field select{width:100%}}.dashboard{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;padding:30px;width:100%}.dashboard-hero{margin-bottom:20px}.dashboard-hero-title{color:#0f172a;font-size:1.85rem;font-weight:700;margin:0}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.dashboard-key-stats{margin-bottom:24px}.dashboard-key-stats__grid{margin-bottom:0}.stats-grid-primary{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:780px){.stats-grid-primary{grid-template-columns:1fr}}.dashboard-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;margin-bottom:16px;padding:12px 14px}.stat-hint{color:#fff;font-size:.75rem;font-weight:400;margin:4px 0 0;opacity:.95}.dashboard-highlights{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-highlight-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px}.dashboard-highlight-card strong{color:#0f766e;display:block;font-size:.82rem;margin-bottom:6px}.dashboard-highlight-card p{color:#0f172a;font-weight:600;margin:0 0 6px}.dashboard-highlight-card span{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#64748b;display:-webkit-box;font-size:.85rem;line-height:1.4;overflow:hidden}.dashboard-admin-note{color:#64748b;font-size:.85rem;margin:8px 0 0}.dashboard-section{margin-bottom:28px}.dashboard-section-um{padding-top:8px}.dashboard-section-title{color:#1e293b;font-size:1.15rem;margin:0 0 6px}.dashboard-section-desc{color:#64748b;font-size:.9rem;line-height:1.45;margin:0 0 16px}.dashboard-loading-inline{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;font-size:.95rem;padding:24px;text-align:center}.dashboard-quick-access__periode{margin-bottom:16px;position:static}.dashboard-quick-access__grid{margin-top:4px}.loading-text{color:#999;font-style:italic;padding:40px;text-align:center}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}.stats-grid-secondary{margin-bottom:20px}.stats-grid-secondary .stat-card:hover{transform:translateY(-2px)}.stat-card{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:8px;box-shadow:0 4px 12px #10b98133;color:#fff;display:flex;gap:15px;padding:25px;transition:all .3s ease}.stat-card-compact{padding:18px 20px}.stat-card:hover{box-shadow:0 8px 20px #10b9814d;transform:translateY(-5px)}.stat-icon{flex-shrink:0;font-size:2.5rem}.stat-content{display:flex;flex-direction:column;gap:5px}.stat-content h3{font-size:.9rem;font-weight:500;margin:0;opacity:.9}.stat-value{font-size:2rem;font-weight:700;margin:0}.overview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:30px}.overview-card,.system-info-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:20px}.overview-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b9811a}.card-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;gap:10px;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.card-header h3{color:#333;flex:1 1;font-size:1.1rem;margin:0}.card-subtitle{color:#999;font-size:.85rem;font-weight:400}.no-data{color:#999;font-style:italic;padding:20px;text-align:center}.user-list{display:flex;flex-direction:column;gap:12px}.user-item{align-items:center;background-color:#f9f9f9;border-radius:6px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.user-item:hover{background-color:#f0fdf4;border-left:3px solid #10b981;padding-left:9px}.user-avatar{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:40px;justify-content:center;width:40px}.user-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.user-name{color:#333;font-size:.9rem;font-weight:600}.user-email{color:#999;font-size:.8rem}.user-groups-count{align-items:center;display:flex;flex-shrink:0;gap:6px}.badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:4px;color:#fff;font-size:.75rem;font-weight:700;min-width:24px;padding:4px 8px;text-align:center}.badge.empty{background:#e0e0e0;color:#999}.label{color:#999;font-size:.75rem;font-weight:500}.group-list{display:flex;flex-direction:column;gap:12px}.group-item{align-items:center;background-color:#f9f9f9;border-radius:6px;display:flex;gap:12px;padding:12px;transition:all .3s ease}.group-item:hover{background-color:#f0fdf4;border-left:3px solid #10b981;padding-left:9px}.group-icon{flex-shrink:0;font-size:1.5rem}.group-details{display:flex;flex:1 1;flex-direction:column;gap:2px}.group-name{font-size:.9rem;font-weight:600}.group-description{color:#999;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-stats{display:flex;flex-shrink:0;gap:12px}.stat{align-items:center;display:flex;flex-direction:column;gap:2px}.stat-number{color:#10b981;font-size:1rem;font-weight:700}.stat-label{color:#999;font-size:.7rem;font-weight:500}.system-info-card{grid-column:1/-1;margin-bottom:40px}.system-info-card-inline{grid-column:auto;margin-bottom:0}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{background-color:#f9f9f9;border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:15px}.info-label{color:#666;font-size:.85rem;font-weight:500}.info-value{color:#333;font-size:1.2rem;font-weight:700}.status-active{color:#10b981}@media (max-width:1200px){.overview-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard{padding:20px}.dashboard-header h2{font-size:1.5rem}.stats-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.stat-card{padding:20px}.stat-icon{font-size:2rem}.stat-value{font-size:1.5rem}.info-grid,.overview-grid{grid-template-columns:1fr}.group-stats{gap:8px}}@media (max-width:480px){.dashboard{padding:15px}.dashboard-header h2{font-size:1.3rem}.stat-card{gap:10px;padding:15px}.stat-icon{font-size:1.8rem}.stat-content h3{font-size:.8rem}.stat-value{font-size:1.3rem}.card-header{align-items:flex-start;flex-direction:column}.card-header h3{font-size:1rem}.group-item,.user-item{gap:10px;padding:10px}.user-avatar{font-size:.9rem;height:36px;width:36px}.group-name,.user-name{font-size:.85rem}.group-description,.user-email{font-size:.75rem}.group-stats{display:none}}.mhs-bottom-nav,.portal-bottom-nav{display:none}.mhs-menu-hub__grid,.portal-menu-hub__grid{display:flex;flex-direction:column;gap:.65rem;margin-top:.5rem}.mhs-menu-hub__card,.portal-menu-hub__card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0f172a0a;color:inherit;cursor:pointer;display:flex;font:inherit;gap:.85rem;padding:.9rem 1rem;text-align:left;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.mhs-menu-hub__card:focus-visible,.mhs-menu-hub__card:hover,.portal-menu-hub__card:focus-visible,.portal-menu-hub__card:hover{border-color:#99f6e4;box-shadow:0 2px 8px #0d94881f;outline:none}.mhs-menu-hub__card-icon,.portal-menu-hub__card-icon{align-items:center;background:#f0fdfa;border-radius:10px;display:inline-flex;flex-shrink:0;font-size:1.25rem;height:2.5rem;justify-content:center;width:2.5rem}.mhs-menu-hub__card-copy,.portal-menu-hub__card-copy{display:flex;flex:1 1;flex-direction:column;gap:.2rem;min-width:0}.mhs-menu-hub__card-copy strong,.portal-menu-hub__card-copy strong{color:#0f172a;font-size:.98rem}.mhs-menu-hub__card-copy .obe-muted,.portal-menu-hub__card-copy .obe-muted{font-size:.82rem;margin:0}.mhs-menu-hub__card-chevron,.portal-menu-hub__card-chevron{color:#94a3b8;flex-shrink:0;font-size:1.35rem;line-height:1}@media (max-width:768px){.App.App--dosen-portal .portal-bottom-nav,.App.App--mahasiswa-portal .mhs-bottom-nav{align-items:stretch;background:#fff;background:var(--app-sidebar-bg,#fff);border-top:1px solid #e2e8f0;bottom:0;box-shadow:0 -4px 16px #0f172a0f;display:flex;gap:0;justify-content:space-around;left:0;min-height:56px;padding:4px 4px calc(4px + env(safe-area-inset-bottom, 0px));position:fixed;right:0;z-index:1200}.App.App--dosen-portal .portal-bottom-nav__item,.App.App--mahasiswa-portal .mhs-bottom-nav__item{align-items:center;background:#0000;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font:inherit;font-size:.68rem;font-weight:600;gap:2px;justify-content:center;line-height:1.15;min-width:0;padding:6px 4px}.App.App--dosen-portal .portal-bottom-nav__item.is-active,.App.App--mahasiswa-portal .mhs-bottom-nav__item.is-active{color:#059669;color:var(--app-sidebar-active,#059669)}.App.App--dosen-portal .portal-bottom-nav__icon,.App.App--mahasiswa-portal .mhs-bottom-nav__icon{font-size:1.2rem;line-height:1}.App.App--dosen-portal .portal-bottom-nav__label,.App.App--mahasiswa-portal .mhs-bottom-nav__label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.App.App--dosen-portal .mobile-menu-toggle,.App.App--dosen-portal .sidebar-collapse-btn,.App.App--dosen-portal .sidebar-expand-fab,.App.App--dosen-portal .tabs-navigation,.App.App--mahasiswa-portal .mobile-menu-toggle,.App.App--mahasiswa-portal .sidebar-collapse-btn,.App.App--mahasiswa-portal .sidebar-expand-fab,.App.App--mahasiswa-portal .tabs-navigation{display:none!important}.App.App--dosen-portal,.App.App--mahasiswa-portal{grid-template-areas:"header" "main";grid-template-columns:1fr;grid-template-rows:auto 1fr}.App.App--dosen-portal .container,.App.App--mahasiswa-portal .container{padding-bottom:calc(72px + env(safe-area-inset-bottom, 0px))}}:root{--app-header-bg:#059669;--app-header-font:#fff;--app-sidebar-bg:#fff;--app-sidebar-font:#333;--app-sidebar-active:#059669;--app-sidebar-active-bg:#10b9811f;--app-sidebar-hover-bg:#10b98114}.App{background-color:#fbfdff;display:grid;grid-template-areas:"header header" "nav main";grid-template-columns:200px 1fr;grid-template-rows:auto 1fr;min-height:100vh}.App-header{background:#059669;background:var(--app-header-bg,#059669);color:#fff;color:var(--app-header-font,#fff);flex-shrink:0;grid-area:header;padding:20px;position:relative;text-align:center;z-index:1100}.tabs-navigation{align-self:stretch;background:#fff;background:var(--app-sidebar-bg,#fff);border-right:1px solid #e0e0e0;display:flex;flex-direction:column;grid-area:nav;height:auto;overflow-y:auto;width:200px;z-index:900}.container{grid-area:main;max-width:100%;min-width:0;overflow-x:hidden;overflow-y:auto}.simb-folder-back-strip{flex-shrink:0;margin:-10px 0 0}.page-back-bar,.simb-folder-back-strip{align-items:center;display:flex;justify-content:flex-end}.page-back-bar{gap:10px;margin-bottom:12px}.simb-folder-back-btn{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;color:#047857;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:6px;padding:10px 14px;transition:background .2s ease,border-color .2s ease}.simb-folder-back-btn:hover{background:#d1fae5;border-color:#6ee7b7}.nav-container{display:flex;flex-direction:column;gap:0;position:relative}.mobile-menu-toggle{background:none;border:none;color:#333;cursor:pointer;display:none;font-size:1.5rem;padding:14px 16px}.nav-items{display:flex;flex:1 1;flex-direction:column;gap:0;min-height:0;overflow-y:auto}.nav-items>*{flex-shrink:0}.nav-item{background:none;border:none;border-left:3px solid #0000;color:#333;color:var(--app-sidebar-font,#333);cursor:pointer;font-size:.9rem;font-weight:500;overflow:hidden;padding:12px 16px;text-align:left;text-overflow:ellipsis;transition:all .3s ease;white-space:nowrap}.nav-item:hover{background-color:#10b98114;background-color:var(--app-sidebar-hover-bg,#f0fdf4)}.nav-item.active{background-color:#10b9811f;background-color:var(--app-sidebar-active-bg,#f0fdf4);border-left:3px solid #059669;border-left:3px solid var(--app-sidebar-active,#10b981);color:#059669;color:var(--app-sidebar-active,#10b981);font-weight:600}.nav-aplikasi-list{border-bottom:1px solid #00000012;border-bottom:1px solid var(--app-sidebar-divider,#00000012);border-top:1px solid #00000012;border-top:1px solid var(--app-sidebar-divider,#00000012);display:flex;flex-direction:column;margin-bottom:6px;margin-top:6px;padding-bottom:6px;padding-top:6px}@media (min-width:769px){.App.App--sidebar-off{grid-template-areas:"header" "toggle" "nav" "main";grid-template-columns:1fr;grid-template-rows:auto auto auto 1fr}.App.App--sidebar-off .mobile-menu-toggle{background:#fff;background:var(--app-sidebar-bg,#fff);border:none;border-bottom:1px solid #e0e0e0;color:#333;color:var(--app-sidebar-font,#333);cursor:pointer;display:block;font-size:1.5rem;grid-area:toggle;padding:12px 16px;position:relative;text-align:left;width:100%;z-index:850}.App.App--sidebar-off .tabs-navigation{border-bottom:1px solid #e0e0e0;border-right:none;display:none;grid-area:nav;max-height:0;overflow:hidden;position:relative;transition:max-height .35s ease;width:100%;z-index:799}.App.App--sidebar-off .tabs-navigation.show{display:block;max-height:560px}.App.App--sidebar-off .nav-items{flex-direction:column}.App.App--sidebar-collapsed{grid-template-areas:"header" "main";grid-template-columns:1fr}.App.App--sidebar-collapsed .mobile-menu-toggle,.App.App--sidebar-collapsed .tabs-navigation{display:none}.sidebar-collapse-btn{align-items:center;background:#fff;background:var(--app-sidebar-bg,#fff);border:none;border-top:1px solid #e0e0e0;color:#333;color:var(--app-sidebar-font,#333);cursor:pointer;display:flex;flex-shrink:0;font-size:.82rem;font-weight:600;gap:8px;margin-top:auto;padding:12px 14px;transition:background .2s ease,color .2s ease;width:100%}.sidebar-collapse-btn:hover{background:#10b98114;background:var(--app-sidebar-hover-bg,#f0fdf4);color:#059669;color:var(--app-sidebar-active,#059669)}.sidebar-collapse-btn__icon{flex-shrink:0;height:18px;width:18px}.sidebar-expand-fab{align-items:center;background:#fff;background:var(--app-sidebar-bg,#fff);border:1px solid #e0e0e0;border-left:none;border-radius:0 10px 10px 0;box-shadow:2px 0 10px #0f172a14;color:#333;color:var(--app-sidebar-font,#333);cursor:pointer;display:inline-flex;height:56px;justify-content:center;left:0;padding:0;position:fixed;top:50%;transform:translateY(-50%);transition:background .2s ease,color .2s ease,box-shadow .2s ease;width:28px;z-index:1050}.sidebar-expand-fab svg{height:18px;width:18px}.sidebar-expand-fab:hover{background:#10b98114;background:var(--app-sidebar-hover-bg,#f0fdf4);box-shadow:2px 0 14px #0f172a1f;color:#059669;color:var(--app-sidebar-active,#059669)}}.App-header h1{font-size:2.5rem;margin:0}.header-content{justify-content:space-between;margin:0 auto;max-width:1200px;position:relative;z-index:0}.header-content,.header-title{align-items:center;display:flex}.header-title{flex:1 1;gap:20px;min-width:0;overflow:hidden}.header-text{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.header-text h1{font-size:1.1rem;font-weight:700}.header-subtitle,.header-text h1{color:#fff;color:var(--app-header-font,#fff);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-subtitle{font-size:.95rem;font-weight:400;letter-spacing:.5px;opacity:.9}.unizar-logo-img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));flex-shrink:0;height:60px;object-fit:contain;width:60px}.header-actions{align-items:center;display:flex;flex-shrink:0;gap:12px;position:relative;z-index:2}.header-actions>*{flex-shrink:0}.header-actions__profile-wrap{position:relative;z-index:3}.header-actions__notify-wrap,.header-icon-btn{position:relative}.header-icon-btn{align-items:center;background:#0000;border:1.5px solid #fff;border:1.5px solid var(--app-header-font,#fff);border-radius:10px;color:#fff;color:var(--app-header-font,#fff);cursor:pointer;display:inline-flex;height:44px;justify-content:center;padding:0;transition:background .2s ease,transform .15s ease,border-color .2s ease;width:44px}.header-icon-btn:hover{background:color-mix(in srgb,#fff 14%,#0000);background:color-mix(in srgb,var(--app-header-font,#fff) 14%,#0000)}.header-icon-btn:focus-visible{outline:2px solid color-mix(in srgb,#fff 85%,#0000);outline:2px solid color-mix(in srgb,var(--app-header-font,#fff) 85%,#0000);outline-offset:2px}.header-icon-btn__svg{display:block;height:22px;width:22px}.header-icon-badge{background:#ef4444;border:1.5px solid #059669;border:1.5px solid var(--app-header-bg,#059669);border-radius:999px;box-sizing:border-box;color:#fff;font-size:11px;font-weight:700;height:18px;line-height:18px;min-width:18px;padding:0 5px;pointer-events:none;position:absolute;right:-4px;text-align:center;top:-4px}.header-notify-panel{background:#fff;border-radius:10px;box-shadow:0 8px 24px #0000002e;color:#333;padding:12px 14px;position:absolute;right:0;top:calc(100% + 8px);width:min(288px,85vw);z-index:950}.header-notify-panel__msg{color:#555;font-size:.85rem;line-height:1.45;margin:0}.header-profile-panel{background:#fff;border:1px solid #111;border-radius:10px;box-shadow:0 8px 24px #00000024;color:#1e3a5f;padding:14px 14px 12px;position:absolute;right:0;top:calc(100% + 8px);width:min(316px,92vw);z-index:960}.header-profile-panel__row{align-items:center;display:flex;gap:12px}.header-profile-panel__avatar-mini{align-items:center;background:#e5e7eb;border:1px solid #d1d5db;border-radius:8px;display:flex;flex-shrink:0;height:48px;justify-content:center;overflow:hidden;width:48px}.header-profile-panel__avatar-mini-img{display:block;height:100%;object-fit:cover;width:100%}.header-profile-panel__avatar-mini-initials{color:#4b5563;font-size:.95rem;font-weight:700}.header-profile-panel__meta{flex:1 1;min-width:0;text-align:left}.header-profile-panel__name{color:#1e3a5f;font-size:.95rem;font-weight:700;line-height:1.3;word-break:break-word}.header-profile-panel__email{color:#1e3a5f;display:inline-block;font-size:.875rem;font-style:italic;margin-top:4px;overflow-wrap:anywhere;text-decoration:underline}.header-profile-panel__email:hover{color:#0f172a}.header-profile-panel__email-muted{color:#6b7280;display:block;font-size:.875rem;font-style:italic;margin-top:4px}.header-profile-panel__divider{border:none;border-top:1px dashed #9ca3af;margin:12px 0}.header-profile-panel__actions{display:flex;gap:10px}.header-profile-panel__btn{border:none;border-radius:10px;color:#fff;cursor:pointer;flex:1 1;font-size:.92rem;font-weight:600;padding:10px 12px;transition:opacity .15s ease,transform .1s ease}.header-profile-panel__btn:hover{opacity:.95}.header-profile-panel__btn:active{transform:translateY(1px)}.header-profile-panel__btn--primary{background:#2563eb;background:var(--ui-accent,#2563eb)}.header-profile-panel__btn--danger{background:#ef4444}.header-profile-avatar{align-items:center;border:1.5px solid #fff;border:1.5px solid var(--app-header-font,#fff);border-radius:10px;box-sizing:border-box;color:#fff;color:var(--app-header-font,#fff);display:inline-flex;flex-shrink:0;font-size:.95rem;font-weight:700;height:44px;justify-content:center;overflow:hidden;-webkit-user-select:none;user-select:none;width:44px}.header-profile-avatar,.header-profile-avatar--btn{background:color-mix(in srgb,#fff 18%,#0000);background:color-mix(in srgb,var(--app-header-font,#fff) 18%,#0000)}.header-profile-avatar--btn{-webkit-tap-highlight-color:transparent;appearance:none;-webkit-appearance:none;color:inherit;cursor:pointer;font-family:inherit;padding:0;touch-action:manipulation}.header-profile-avatar--btn:hover{background:color-mix(in srgb,#fff 28%,#0000);background:color-mix(in srgb,var(--app-header-font,#fff) 28%,#0000)}.header-profile-avatar--btn:focus-visible{box-shadow:0 0 0 3px #ffffff73}.header-profile-avatar__img{-webkit-user-drag:none;display:block;height:100%;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.container{display:flex;flex:1 1;flex-direction:column;gap:30px;margin-left:0;padding:30px}.container.users-container{grid-template-columns:1fr}.form-section,.users-section{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;overflow-x:auto;padding:30px}.users-section.full-width{width:100%}.search-box{display:flex;gap:10px;margin-bottom:20px}.search-input{border:2px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:1rem;padding:12px 16px;transition:all .3s ease}.search-input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.search-input::placeholder{color:#999}.user-list-meta{color:#555;font-size:.9rem;margin:-8px 0 16px}.user-list-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:1.25rem}.user-list-page-info{color:#444;font-size:.95rem;min-width:8rem;text-align:center}.users-list-page,.users-list-page .soal-filter-panel,.users-list-page .soal-list-section,.users-list-page .soal-state{max-width:none}.users-list-table{min-width:860px}.users-list-col-primary{width:28%}.users-list-col-kontak{width:24%}.users-list-col-status{width:12%}.users-list-col-groups{width:20%}.users-list-col-aksi{width:16%}.users-list-groups{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.users-list-row--inactive{opacity:.72}.permissions-list-table{min-width:720px}.permissions-list-col-primary{width:36%}.permissions-list-col-desc{width:44%}.permissions-list-col-aksi{width:20%}.gm-details-stack{display:flex;flex-direction:column;gap:22px}.gm-group-toolbar{align-items:flex-end;flex-wrap:wrap;gap:12px}.gm-group-select{flex:1 1;min-width:220px}.gm-group-actions{margin-bottom:2px}.gm-group-desc{margin:10px 0 0}.gm-inline-search{margin:0 0 12px}.gm-list-table{min-width:640px}.gm-list-col-primary{width:36%}.gm-list-col-meta{width:44%}.gm-list-col-aksi{width:20%}@media (max-width:780px){.gm-list-table,.permissions-list-table,.users-list-table{min-width:0}}.users-header{align-items:center;display:flex;gap:15px;justify-content:space-between;margin-bottom:20px}.users-header h2{color:#333;flex:1 1;margin:0}.btn-add-user{background-color:#10b981;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.btn-add-user:hover{background-color:#059669;transform:translateY(-2px)}.form-section h2,.users-section h2{color:#333;margin-bottom:20px;margin-top:0}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:1rem;padding:10px;width:100%}.form-group input:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.password-input-group{align-items:center;display:flex;position:relative}.password-input-group input{flex:1 1;padding-right:45px}.btn-toggle-password{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:5px;position:absolute;right:10px;transition:transform .2s ease}.btn-toggle-password:hover{transform:scale(1.2)}.optional{color:#999;font-size:.85rem;font-weight:400}.groups-checkboxes{display:flex;flex-direction:column;gap:10px;margin-top:8px}.checkbox-item{align-items:center;display:flex;gap:8px}.checkbox-item input[type=checkbox]{accent-color:#10b981;cursor:pointer;height:18px;width:18px}.checkbox-item label{color:#333;cursor:pointer;display:flex;flex-direction:column;font-size:.95rem;font-weight:400;gap:2px;margin:0}.group-name{color:#333;font-weight:500}.group-desc{color:#666;font-size:.85rem;font-weight:400}.form-actions{display:flex;gap:10px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-primary{background-color:#10b981;color:#fff;flex:1 1}.btn-primary:hover:not(:disabled){background-color:#059669}.btn-secondary{background-color:#e0e0e0;color:#333}.btn-secondary:hover:not(:disabled){background-color:#d0d0d0}.btn-edit{background-color:#10b981;color:#fff;font-size:.9rem;margin-right:5px;padding:8px 15px}.btn-edit:hover:not(:disabled){background-color:#059669}.btn-delete{background-color:#f44336;color:#fff;font-size:.9rem;padding:8px 15px}.btn-delete:hover:not(:disabled){background-color:#da190b}.action-buttons{display:flex;gap:2px}.action-buttons,.btn-icon{align-items:center;justify-content:center}.btn-icon{background:none;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:1.2rem;padding:4px 6px;transition:all .3s ease}.edit-icon{color:#10b981}.edit-icon:hover:not(:disabled){background-color:#10b9811a;transform:scale(1.15)}.delete-icon{color:#f44336}.delete-icon:hover:not(:disabled){background-color:#f443361a;transform:scale(1.15)}.btn-icon:disabled{cursor:not-allowed;opacity:.3}.btn:disabled{cursor:not-allowed!important;opacity:.5}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.modal-overlay.active{position:fixed}.logout-confirm-backdrop{align-items:center;background-color:#00000080;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2147483646}.logout-confirm-modal{background:#fff;border-radius:18px;box-shadow:0 16px 40px #0003;max-width:360px;padding:28px 24px 22px;width:min(360px,92vw)}.logout-confirm-modal__question{color:#0f172a;font-size:1rem;font-weight:600;line-height:1.45;margin:0 0 22px;text-align:center}.logout-confirm-modal__actions{align-items:stretch;display:flex;gap:12px;justify-content:center}.logout-confirm-modal__btn{border-radius:12px;cursor:pointer;flex:1 1;font-family:inherit;font-size:.95rem;font-weight:700;min-width:0;padding:11px 16px;transition:opacity .15s ease,transform .1s ease}.logout-confirm-modal__btn:hover{opacity:.92}.logout-confirm-modal__btn:active{transform:translateY(1px)}.logout-confirm-modal__btn--yes{background:#eff6ff;background:var(--ui-accent-soft,#eff6ff);border:1.5px solid #2563eb;border:1.5px solid var(--ui-accent,#2563eb);color:#2563eb;color:var(--ui-accent,#2563eb)}.logout-confirm-modal__btn--no{background:#fef2f2;border:1.5px solid #ef4444;color:#dc2626}.modal-overlay~.App-header,.modal-overlay~.mobile-menu-toggle,.modal-overlay~.tabs-navigation{z-index:0}.modal-overlay~.tabs-navigation{display:none!important}.modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:8px;box-shadow:0 8px 32px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h2{color:#333;font-size:1.5rem;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#999;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .3s ease;width:32px}.modal-close:hover{background-color:#f5f5f5;color:#333}.modal-body{padding:30px}.modal-footer{background-color:#fafafa;border-radius:0 0 8px 8px;border-top:1px solid #eee;display:flex;gap:12px;padding:20px 30px}.modal-footer .btn{flex:1 1;padding:12px 20px}.modal-footer .btn-primary,.modal-footer .btn-secondary{margin:0}.users-table{border-collapse:collapse;margin-top:20px;width:100%}.users-table thead{background-color:#f5f5f5}.users-table th{border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:15px;text-align:left}.users-table th:last-child{text-align:center}.users-table td{border-bottom:1px solid #ddd;padding:15px;text-align:left}.users-table td:last-child{text-align:center}.users-table tbody tr:hover{background-color:#f9f9f9}.user-groups{display:flex;flex-wrap:wrap;gap:8px}.group-badge{background-color:#e3f2fd;border-radius:20px;color:#1976d2;font-size:.85rem;font-weight:500;padding:4px 12px}.no-group{color:#999;font-style:italic}.status-badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px;white-space:nowrap}.status-badge.active{background-color:#e8f5e9;color:#2e7d32}.status-badge.inactive{background-color:#ffebee;color:#c62828}.inactive-row{background-color:#fafafa;opacity:.6}.inactive-row:hover{background-color:#f5f5f5}@media (max-width:1024px){.tabs-navigation{gap:8px;padding:15px}.tab-button{font-size:.9rem;padding:10px 16px}.container{gap:20px;padding:30px 20px}.form-section,.users-section{padding:20px}.users-table td,.users-table th{font-size:.9rem;padding:12px 8px}.btn-delete,.btn-edit{font-size:.8rem;margin-right:3px;padding:6px 12px}}@media (max-width:768px){.App{grid-template-areas:"header" "toggle" "nav" "main";grid-template-columns:1fr;grid-template-rows:auto auto auto 1fr}.App-header{position:relative;z-index:1100}.mobile-menu-toggle{border:none;color:#333;color:var(--app-sidebar-font,#333);cursor:pointer;display:block;font-size:1.5rem;grid-area:toggle;padding:12px 16px;text-align:left;z-index:1050}.mobile-menu-toggle,.tabs-navigation{background:#fff;background:var(--app-sidebar-bg,#fff);border-bottom:1px solid #e0e0e0;position:relative;width:100%}.tabs-navigation{border-right:none;display:none;height:auto;left:auto;max-height:0;overflow:hidden;top:auto;transition:max-height .3s ease;z-index:799}.tabs-navigation.show{display:block;max-height:400px}.nav-items{flex:none;flex-direction:row;flex-wrap:wrap;overflow-y:visible}.nav-item{border-bottom:1px solid #e0e0e0;border-left:none;flex:1 1 50%;padding:12px 16px}.nav-item,.nav-item:nth-child(odd){border-right:1px solid #e0e0e0}.nav-item.active{border-bottom:2px solid #059669;border-bottom:2px solid var(--app-sidebar-active,#10b981);border-left:none}.container{margin-left:0;padding:20px 15px;position:relative;z-index:100}.container,.container.users-container{grid-template-columns:1fr}.App-header h1{font-size:1.8rem}.header-content{flex-direction:column;gap:15px}.header-text{text-align:left}.header-text h1{font-size:1.1rem}.header-subtitle{font-size:.85rem}.header-actions{flex-wrap:wrap;justify-content:flex-end;width:100%}.header-icon-btn{height:40px;width:40px}.header-icon-btn__svg{height:20px;width:20px}.header-profile-avatar{font-size:.85rem;height:40px;width:40px}.nav-container{flex-wrap:wrap}.nav-item{flex:0 1 50%;font-size:.75rem;padding:10px 12px}.form-section,.users-section{padding:15px}.form-group{margin-bottom:15px}.form-group label{font-size:.85rem}.form-group input{font-size:.9rem;padding:8px}.btn{padding:8px 12px}.btn,.btn-primary{font-size:.85rem}.users-table{display:block;font-size:.75rem;width:100%}.users-table thead{display:none}.users-table tbody{display:block}.users-table tbody tr{grid-gap:8px;background-color:#f9f9f9;border:1px solid #ddd;border-radius:6px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:12px;padding:10px}.users-table td{border:none;display:flex;flex-direction:column;font-size:.7rem;padding:4px;text-align:left}.users-table td:before{color:#666;content:"";font-size:.65rem;font-weight:600;margin-bottom:2px}.users-table td:first-child:before{content:"ID:"}.users-table td:nth-child(2):before{content:"Name:"}.users-table td:nth-child(3):before{content:"Email:"}.users-table td:nth-child(4):before{content:"Phone:"}.users-table td:nth-child(5):before{content:"Status:"}.users-table td:nth-child(6):before{content:"Groups:"}.users-table td:nth-child(7):before{content:"Actions:"}.users-table td:nth-child(7){grid-column:1/-1}.group-badge{display:inline-block;font-size:.65rem;margin:1px 2px 1px 0;padding:2px 6px}.action-buttons{display:flex;gap:1px;justify-content:center}.btn-icon{font-size:1rem;padding:3px 4px}}@media (max-width:480px){.container{padding:15px 10px}.form-section,.users-section{border-radius:6px;padding:12px}.form-section h2,.users-section h2{font-size:1.2rem;margin-bottom:15px}.form-group{margin-bottom:12px}.form-group label{font-size:.8rem}.form-group input{font-size:.9rem;padding:8px}.btn{font-size:.75rem;padding:6px 10px}.users-table{font-size:.7rem;margin-top:15px}.users-table th{font-weight:600}.users-table td,.users-table th{font-size:.65rem;padding:6px 3px}.group-badge{font-size:.6rem;padding:2px 6px}.action-buttons{display:flex;gap:1px}.btn-icon{font-size:.9rem;padding:2px 3px}.header-text h1{font-size:1.2rem}.header-subtitle{font-size:.8rem}.modal-overlay{align-items:flex-start;bottom:0;left:0;overflow-y:auto;padding-top:80px;right:0;top:0;z-index:10000}.modal-content{margin-bottom:20px;margin-top:0;max-height:80vh;max-width:90vw;width:95%}}.header-page-title,.mobile-nav-scrim,.nav-item__icon,.nav-section-title,.shell-bottom-nav,.sidebar-brand,.sidebar-user{display:none}.page-lazy-loading{color:#64748b;font-size:.92rem;padding:32px 16px;text-align:center}.soal-page{--soal-control-height:44px;--soal-primary:#0f766e;--soal-primary-dark:#115e59;--soal-border:#e2e8f0;--soal-muted:#64748b;max-width:1280px;width:100%}.soal-header{align-items:center;background:radial-gradient(circle at 92% 15%,#14b8a629,#0000 28%),linear-gradient(135deg,#f0fdfa,#fff 62%);border:1px solid #ccfbf1;border-radius:16px;box-shadow:0 8px 28px #0f766e12;display:flex;gap:24px;justify-content:space-between;margin-bottom:22px;overflow:hidden;padding:26px 28px;position:relative}.soal-header:after{bottom:-42px;color:rgba(15,118,110,.055);content:"?";font-size:150px;font-weight:800;line-height:1;pointer-events:none;position:absolute;right:170px}.soal-header-copy{min-width:0;position:relative;z-index:1}.soal-eyebrow{color:var(--soal-primary);display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;margin-bottom:7px;text-transform:uppercase}.soal-header h2{color:#0f172a;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;margin:0 0 7px}.soal-subtitle{color:var(--soal-muted);font-size:.93rem;line-height:1.55;margin:0;max-width:660px}.soal-header-meta{color:#475569;display:flex;flex-wrap:wrap;font-size:.8rem;gap:8px 18px;margin-top:15px}.soal-header-meta span{align-items:center;display:inline-flex;gap:4px}.soal-header-meta span:not(:first-child):before{background:#5eead4;border-radius:999px;content:"";height:4px;margin-right:6px;width:4px}.soal-header-meta strong{color:#0f172a;font-size:.9rem}.soal-filter-panel{background:#fff;border:1px solid var(--soal-border);border-radius:14px;box-shadow:0 4px 18px #0f172a0a;margin-bottom:22px;padding:18px 20px 20px}.soal-filter-panel__head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.soal-filter-panel__head h3,.soal-list-head h3{color:#0f172a;font-size:1rem;font-weight:600;margin:0}.soal-filter-panel__head p{color:#64748b;font-size:.85rem;margin:4px 0 0}.soal-reset{background:#0000;border:0;color:var(--soal-primary);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:.8rem;font-weight:700;padding:4px 2px}.soal-reset:hover{color:var(--soal-primary-dark);text-decoration:underline}.soal-toolbar{grid-gap:12px;display:grid;gap:12px;grid-template-columns:minmax(170px,.72fr) minmax(260px,1.25fr) minmax(250px,1fr)}.soal-filter{display:flex;flex-direction:column;gap:6px;min-width:0}.soal-filter-label{color:#475569;display:block;font-size:.78rem;font-weight:700;line-height:1.25}.soal-filter select,.soal-search{background:#fff;border:1px solid #cbd5e1;border-radius:9px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:.88rem;height:var(--soal-control-height);line-height:1.25;min-height:var(--soal-control-height);outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.soal-filter select:hover,.soal-search:hover{border-color:#94a3b8}.soal-filter select:focus,.soal-search:focus{border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61f}.soal-search-wrap{display:block;position:relative}.soal-search{display:block;padding-left:39px}.soal-search-icon{color:#94a3b8;font-size:1.2rem;left:13px;line-height:1;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.soal-form input,.soal-form select,.soal-form textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.95rem;padding:10px 12px}.soal-error{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#b91c1c;display:flex;flex-direction:column;font-size:.86rem;gap:3px;margin-bottom:20px;padding:14px 16px}.soal-muted{color:var(--soal-muted)}.soal-hint{color:#64748b;font-size:.85rem;margin:4px 0 0}.soal-list-head{align-items:center;display:flex;justify-content:space-between;margin:0 2px 10px}.soal-list-head>div{align-items:baseline;display:flex;gap:10px}.soal-list-head span{color:#64748b;font-size:.85rem}.soal-state{align-items:center;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;color:#94a3b8;display:flex;flex-direction:column;gap:7px;justify-content:center;min-height:260px;padding:32px;text-align:center}.soal-state strong{color:#334155;font-size:.98rem;margin-top:5px}.soal-state>span:last-of-type{font-size:.84rem;line-height:1.5;max-width:430px}.soal-state-icon{background:#f0fdfa;border-radius:14px;color:var(--soal-primary);display:grid;font-size:1.35rem;font-weight:800;height:48px;place-items:center;width:48px}.soal-spinner{animation:soal-spin .7s linear infinite;border:3px solid #ccfbf1;border-radius:50%;border-top:3px solid var(--soal-primary);height:30px;width:30px}@keyframes soal-spin{to{transform:rotate(1turn)}}.soal-list-section{min-width:0;width:100%}.soal-list-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto;scrollbar-gutter:stable}.soal-list-scroll::-webkit-scrollbar{height:8px}.soal-list-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.soal-list-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:999px}.soal-list-table{background:#0000;border:none;border-collapse:initial;border-spacing:0 10px;font-size:.92rem;min-width:980px;table-layout:fixed;width:100%}.soal-list-col-primary{width:34%}.soal-list-col-context{width:19%}.soal-list-col-outcome{width:22%}.soal-list-col-format{width:13%}.soal-list-col-actions{width:12%}.soal-list-th{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;color:#64748b;font-size:.78rem;font-weight:600;letter-spacing:.03em;padding:14px;text-align:left;text-transform:uppercase;vertical-align:middle}.soal-list-th--primary{border-left:3px solid #0000;border-radius:12px 0 0 12px}.soal-list-th--center{text-align:center}.soal-list-th--actions{border-radius:0 12px 12px 0;border-right:1px solid #e2e8f0;text-align:right}.soal-list-row{box-shadow:0 2px 8px #0f172a0a}.soal-list-td{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;padding:14px;vertical-align:middle}.soal-list-table tbody tr.soal-list-row td.soal-list-td--primary{border-left:3px solid #f97316;border-radius:14px 0 0 14px}.soal-list-td--primary{border-radius:14px 0 0 14px}.soal-list-td--actions{border-radius:0 14px 14px 0;border-right:1px solid #e2e8f0;text-align:right}.soal-list-td--center{text-align:center}.soal-list-primary-wrap{align-items:flex-start;display:flex;gap:12px;min-width:0}.soal-list-icon{align-items:center;background:linear-gradient(135deg,#14b8a6,#0f766e);border-radius:50%;box-shadow:0 2px 6px #0f766e38;color:#fff;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.soal-list-preview{display:flex;flex-direction:column;gap:5px;min-width:0}.soal-list-question{color:#0f172a;font-size:1rem;font-weight:600;line-height:1.35}.soal-list-question,.soal-list-stem{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;overflow:hidden}.soal-list-stem{color:#64748b;font-size:.85rem;font-weight:400;line-height:1.4}.soal-list-empty{color:#94a3b8;font-size:.85rem;font-style:italic}.soal-list-cell{display:flex;flex-direction:column;gap:6px;min-width:0}.soal-list-cell--center{align-items:center}.soal-list-cell strong{color:#1e293b;display:block;font-size:.9rem;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soal-list-meta{color:#64748b;display:block;font-size:.85rem;font-weight:400;line-height:1.4}.soal-list-meta--clamp{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;overflow:hidden}.soal-list-chip{border-radius:6px;display:inline-flex;font-size:.78rem;font-weight:700;letter-spacing:.02em;line-height:1.2;max-width:100%;padding:3px 8px;width:fit-content}.soal-list-chip--sub{background:#f0fdfa;border:1px solid #99f6e4;color:#0f766e}.soal-list-chip--type{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#065f46;font-weight:600;padding:4px 10px}.soal-list-chip--media{background:#eff6ff;background:var(--ui-accent-soft,#eff6ff);border:1px solid #bfdbfe;border:1px solid var(--ui-accent-border,#bfdbfe);color:#1d4ed8;color:var(--ui-accent-strong,#1d4ed8)}.soal-list-points{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;color:#047857;display:inline-flex;font-size:.9rem;font-weight:600;padding:4px 10px;width:fit-content}.soal-list-actions{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.soal-list-row:hover .soal-list-td{background:#fbfefd}@media (max-width:780px){.soal-list-table{border-spacing:0;display:block;min-width:0}.soal-list-table colgroup,.soal-list-table thead{display:none}.soal-list-table tbody{display:block}.soal-list-row{grid-gap:10px 8px;background:#fff;border:1px solid #e2e8f0;border-left:3px solid #f97316;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;display:grid;gap:10px 8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:10px;padding:14px;width:100%}.soal-list-td{background:#0000;border:none!important;border-radius:0;box-shadow:none;display:block;padding:0}.soal-list-td--primary{border-bottom:1px dashed #e2e8f0!important;grid-column:1/-1;margin-bottom:2px;padding-bottom:10px}.soal-list-td--actions{border-top:1px dashed #e2e8f0!important;grid-column:1/-1;margin-top:2px;padding-top:10px;text-align:right}.soal-list-td:not(.soal-list-td--primary):not(.soal-list-td--actions):before{color:#64748b;content:attr(data-label);display:block;font-size:.72rem;font-weight:700;line-height:1;margin-bottom:4px}.soal-list-td--center{text-align:left}.soal-list-cell--center{align-items:flex-start}}.soal-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:9px;color:#374151;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.9rem;font-weight:700;gap:8px;justify-content:center;padding:9px 14px;transition:transform .14s ease,background-color .14s ease,box-shadow .14s ease}.soal-btn:hover:not(:disabled){background:#f9fafb}.soal-btn:disabled{cursor:not-allowed;opacity:.6}.soal-btn-primary{background:var(--soal-primary);border-color:var(--soal-primary);box-shadow:0 8px 18px #0f766e33;color:#fff;flex-shrink:0;min-height:44px;padding:10px 17px;position:relative;z-index:1}.soal-btn-primary:hover:not(:disabled){background:var(--soal-primary-dark);box-shadow:0 10px 22px #0f766e40;transform:translateY(-1px)}.soal-btn-icon{font-size:1.15rem;line-height:1}.soal-btn-secondary{background:#f0fdfa;border-color:#99f6e4;color:var(--soal-primary);margin-top:9px}.soal-btn-sm{font-size:.78rem;margin-right:0;padding:6px 11px}.soal-btn-danger{border-color:#fecaca;color:#b91c1c}.soal-btn-danger:hover:not(:disabled){background:#fef2f2}.soal-back{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.88rem;font-weight:600;margin:0;padding:8px 14px}.soal-back:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;text-decoration:none}.soal-page--form{max-width:860px}.soal-form{display:flex;flex-direction:column;gap:12px}.soal-form--page{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;padding:22px 24px}.soal-isi-section{border-bottom:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px;margin-bottom:8px;padding-bottom:16px}.soal-isi-heading{color:#111827;font-size:1.05rem;margin:0}.soal-isi-hint{margin:-4px 0 0}.soal-q-preview{display:flex;flex-direction:column;gap:6px}.soal-q-preview__imgs{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.soal-q-preview__imgs img{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;height:44px;object-fit:cover;width:44px}.soal-q-preview__more{color:#6b7280;font-size:.75rem;padding:0 4px}.soal-q-preview__text{line-height:1.4}.soal-q-focus{color:#111827;font-weight:700}.soal-q-stem{color:#6b7280;font-weight:400}.soal-form label{color:#374151;display:flex;flex-direction:column;font-size:.88rem;gap:4px}.soal-form-actions{border-top:1px solid #e5e7eb;display:flex;gap:10px;justify-content:flex-end;margin-top:8px;padding-top:12px}.soal-gambar-block{background:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px}.soal-gambar-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.soal-gambar-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:6px}.soal-gambar-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));list-style:none;margin:0;padding:0}.soal-gambar-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:6px;padding:8px}.soal-gambar-item--pending{border-color:#99f6e4;border-style:dashed}.soal-gambar-fallback,.soal-gambar-item img{aspect-ratio:4/3;background:#f3f4f6;border-radius:6px;object-fit:cover;width:100%}.soal-gambar-fallback{align-items:center;color:#9ca3af;display:flex;font-size:.78rem;justify-content:center}.soal-gambar-name{color:#6b7280;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.soal-form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1.2fr 1fr .7fr}@media (max-width:640px){.soal-form-row{grid-template-columns:1fr}}.soal-indikator-box{background:#f8fafc}.soal-indikator-box,.soal-jawaban-block{border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:8px;padding:12px}.soal-jawaban-head{align-items:center;display:flex;justify-content:space-between}.soal-jawaban-row{align-items:center;display:flex;gap:8px}.soal-jawaban-row input[type=text]{flex:1 1}.soal-benar-check{align-items:center;display:flex;flex-direction:row!important;font-size:.8rem;gap:4px;min-width:70px;white-space:nowrap}.soal-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:16px;padding:0 2px}.soal-page-info{color:#64748b;font-size:.8rem}.soal-page-controls{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.soal-page-btn{background:#fff;border:1px solid var(--soal-border);border-radius:8px;color:#475569;cursor:pointer;font-size:.78rem;font-weight:600;height:36px;min-width:36px;padding:0 12px;transition:border-color .14s ease,color .14s ease,background-color .14s ease}.soal-page-btn:hover:not(:disabled){background:#f0fdfa;border-color:#5eead4;color:var(--soal-primary)}.soal-page-btn.is-active{background:var(--soal-primary);border-color:var(--soal-primary);color:#fff}.soal-page-btn:disabled{cursor:not-allowed;opacity:.45}.soal-page-ellipsis{color:#9ca3af;padding:0 2px;-webkit-user-select:none;user-select:none}@media (max-width:900px){.soal-toolbar{grid-template-columns:1fr 1fr}.soal-filter--search{grid-column:1/-1}.soal-header:after{right:90px}}@media (max-width:640px){.soal-header{align-items:flex-start;border-radius:13px;flex-direction:column;padding:21px 19px}.soal-header:after{display:none}.soal-header .soal-btn-primary{width:100%}.soal-header-meta{gap:7px 12px}.soal-header-meta span:before{display:none}.soal-filter-panel{border-radius:12px;padding:16px}.soal-filter-panel__head{align-items:center}.soal-filter-panel__head p{display:none}.soal-toolbar{grid-template-columns:1fr}.soal-filter--search{grid-column:auto}.soal-list-head>div{align-items:flex-start;flex-direction:column;gap:3px}.soal-pagination{justify-content:center}.soal-page-info{text-align:center;width:100%}.soal-page-controls{justify-content:center}.soal-page-btn{padding:0 9px}}.kelas-v2-filters{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:18px;padding:16px 18px}.kelas-v2-filters__row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px 16px}.kelas-v2-filter{display:flex;flex:1 1 150px;flex-direction:column;gap:6px;min-width:150px}.kelas-v2-filter__label{color:#64748b;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.kelas-v2-filter__control{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font-size:.92rem;padding:10px 12px;width:100%}.kelas-v2-filter__control:disabled{background:#f8fafc;color:#94a3b8}.kelas-v2-filters__actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.kelas-v2-filter-btn{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;font-size:.92rem;font-weight:700;padding:10px 18px}.kelas-v2-filter-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.kelas-v2-filter-btn:disabled{cursor:not-allowed;opacity:.55}.kelas-v2-filter-btn--primary{background:#059669;border-color:#059669;color:#fff}.kelas-v2-filter-btn--primary:hover:not(:disabled){background:#047857;border-color:#047857}.kelas-v2-filters__hint{color:#64748b;font-size:.88rem;margin:12px 0 0}.kelas-v2-filters__hint--error{color:#b91c1c}.kelas-v2-filters__hint--active{color:#059669;font-weight:600}.kelas-page{box-sizing:border-box;margin-left:-30px;margin-right:-30px;max-width:none;padding:0 30px 48px;width:calc(100% + 60px)}.kelas-subheader{align-items:flex-start;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:14px 24px;justify-content:space-between;margin-bottom:16px;padding:18px 20px}.kelas-subheader-title{color:#0f172a;font-size:1.65rem;font-weight:800;letter-spacing:.02em;line-height:1.2;margin:0}.kelas-subheader-meta{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:.88rem;gap:6px 4px;justify-content:flex-end;line-height:1.5;max-width:min(100%,42rem)}.kelas-meta-em{color:#059669;font-style:normal;font-weight:700}.kelas-meta-sep{color:#cbd5e1;margin:0 6px;-webkit-user-select:none;user-select:none}.kelas-toolbar{gap:12px;justify-content:space-between;margin-bottom:22px}.kelas-toolbar,.kelas-toolbar__right{align-items:center;display:flex;flex-wrap:wrap}.kelas-toolbar__right{gap:10px}.kelas-v2-filter--inline{align-items:center;display:flex;flex-direction:row;gap:8px;margin:0}.kelas-v2-filter--inline .kelas-v2-filter__label{margin:0;white-space:nowrap}.kelas-v2-filter--inline .kelas-v2-filter__control{min-width:160px}.kelas-page--blok-detail>.kelas-page{box-shadow:none;padding-top:0}.kelas-tabs{display:flex;flex-wrap:wrap;gap:6px}.kelas-tab{background:#0000;border:none;border-radius:8px;color:#059669;cursor:pointer;font-size:.95rem;font-weight:700;padding:10px 22px;transition:background .15s,color .15s}.kelas-tab:hover{background:#0596691a}.kelas-tab--active{background:#059669;color:#fff}.kelas-tab--link{border:1px dashed #6ee7b7}.kelas-tab--link:disabled{cursor:wait;opacity:.6}.kelas-jadwal-chip{display:none}.kelas-back-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:700;gap:8px;padding:10px 18px}.kelas-back-btn:hover{background:#f8fafc;border-color:#94a3b8}.kelas-empty,.kelas-error,.kelas-loading{border-radius:10px;color:#64748b;padding:20px}.kelas-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.kelas-duplicates-warning{background:#fffbeb;border:1px solid #fcd34d;border-radius:10px;color:#92400e;margin:0 0 16px;padding:14px 16px}.kelas-duplicates-warning__title{font-weight:600;line-height:1.45;margin:0 0 10px}.kelas-duplicates-warning__group+.kelas-duplicates-warning__group{border-top:1px solid #fde68a;margin-top:12px;padding-top:12px}.kelas-duplicates-warning__period{color:#b45309;font-size:.875rem;margin:0 0 6px}.kelas-duplicates-warning__list{list-style:none;margin:0;padding:0}.kelas-duplicates-warning__item{align-items:center;display:flex;flex-wrap:wrap;gap:8px 12px;justify-content:space-between;padding:6px 0}.kelas-duplicates-warning__badge{color:#15803d;font-weight:600}.kelas-duplicates-warning__deactivate{background:#fff;border:1px solid #d97706;border-radius:6px;color:#b45309;cursor:pointer;font-size:.8125rem;padding:4px 10px}.kelas-duplicates-warning__deactivate:hover:not(:disabled){background:#fef3c7}.kelas-duplicates-warning__deactivate:disabled{cursor:not-allowed;opacity:.6}.kelas-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(5,minmax(0,1fr))}@media (max-width:1400px){.kelas-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1100px){.kelas-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:780px){.kelas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.kelas-grid{grid-template-columns:1fr}}.kelas-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 16px #0f172a14;display:flex;flex-direction:column;min-height:0;overflow:hidden}.kelas-card__media{background:linear-gradient(135deg,#2dd4bf,#0ea5e9 45%,#1d4ed8);background:linear-gradient(135deg,#2dd4bf 0,var(--ui-accent-light,#0ea5e9) 45%,var(--ui-accent-strong,#1d4ed8) 100%);height:120px;overflow:hidden;position:relative}.kelas-card__media:after{background-image:repeating-linear-gradient(-42deg,#0000,#0000 8px,#ffffff1f 0,#ffffff1f 9px);content:"";inset:0;opacity:.35;pointer-events:none;position:absolute}.kelas-card__badge-period{background:#059669;border-radius:999px;box-shadow:0 1px 4px #0f172a33;font-size:.68rem;left:10px;letter-spacing:.03em;padding:5px 10px;top:10px}.kelas-card__badge-period,.kelas-card__rubrik{color:#fff;font-weight:800;position:absolute;z-index:2}.kelas-card__rubrik{background:linear-gradient(135deg,#7c3aed,#6d28d9);border-radius:10px 0 0 0;bottom:0;box-shadow:0 -2px 8px #0f172a1f;font-size:.76rem;letter-spacing:.04em;padding:8px 14px;right:0}.kelas-card__body{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;padding:14px 16px 16px}.kelas-card__title{color:#0f172a;font-size:1.05rem;font-weight:800;line-height:1.3;margin:0}.kelas-card__dosen{align-items:flex-start;color:#475569;display:flex;font-size:.82rem;gap:8px;line-height:1.35}.kelas-card__dosen-icon{color:#7c3aed;flex-shrink:0;font-size:.95rem;text-align:center;width:1.25rem}.kelas-card__footer{display:flex;justify-content:flex-end;margin-top:auto}.kelas-card__count{align-items:center;background:#ede9fe;border-radius:8px;color:#5b21b6;display:inline-flex;font-size:.8rem;font-weight:700;gap:6px;padding:6px 10px}.kelas-panel-placeholder{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;font-size:.98rem;padding:48px 24px;text-align:center}.kelas-card--clickable{cursor:pointer;transition:box-shadow .15s,transform .15s,border-color .15s}.kelas-card--clickable:hover{border-color:#059669;box-shadow:0 8px 24px #0f172a1f;transform:translateY(-2px)}.kelas-card--clickable:focus-visible{outline:2px solid #059669;outline-offset:2px}.kelas-penilaian{background:#f4f6f8;box-sizing:border-box;margin-left:-30px;margin-right:-30px;max-width:none;padding:0 30px 48px;width:calc(100% + 60px)}.kelas-penilaian__toolbar{gap:12px;margin-bottom:0}.kelas-penilaian__toolbar,.kelas-penilaian__toolbar-row{align-items:center;display:flex;flex-wrap:wrap;padding-top:4px}.kelas-penilaian__toolbar-row{gap:16px;justify-content:space-between;margin-bottom:20px}.kelas-penilaian__version-toggle{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;display:inline-flex;flex-shrink:0;gap:0;margin-left:auto;padding:3px}.kelas-penilaian__version-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.82rem;font-weight:700;padding:8px 16px;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.kelas-penilaian__version-btn--active,.kelas-penilaian__version-btn:hover{color:#2563eb;color:var(--ui-accent,#2563eb)}.kelas-penilaian__version-btn--active{background:#fff;box-shadow:0 1px 4px #0f172a14}.kelas-penilaian-v1{display:flex;flex-direction:column;gap:16px;width:100%}.kelas-penilaian-v1__header{margin-bottom:8px;width:100%}.kelas-penilaian-v1__header .kelas-penilaian__title-rule{width:100%}.kelas-penilaian-v1__layout{grid-gap:20px 24px;align-items:start;display:grid;gap:20px 24px;grid-template-columns:minmax(0,1fr) minmax(260px,320px)}@media (max-width:960px){.kelas-penilaian-v1__layout{grid-template-columns:1fr}.kelas-penilaian-v1__sidebar{order:-1}}.kelas-penilaian-v1__main,.kelas-penilaian-v1__sidebar{display:flex;flex-direction:column;gap:16px;min-width:0}.kelas-penilaian-v1__summary .kelas-penilaian__summary-blok{font-size:clamp(1.35rem,2.4vw,1.75rem);text-transform:uppercase}.kelas-penilaian-v1__students{max-width:100%;width:100%}.kelas-penilaian-v1__student-row,.kelas-penilaian-v1__students-head{grid-template-columns:260px repeat(4,minmax(0,1fr)) 72px;grid-template-columns:var(--penilaian-mhs-col,260px) repeat(var(--penilaian-cols,4),minmax(0,1fr)) var(--penilaian-akhir-col,72px)}.kelas-penilaian-v1__students-head th{text-align:center}.kelas-penilaian-v1__students-head .kelas-penilaian__students-head-mhs{text-align:left}.kelas-penilaian__header{margin-bottom:24px}.kelas-penilaian__title{color:#2563eb;color:var(--ui-accent,#2563eb);font-size:clamp(1.5rem,2.8vw,2rem);font-weight:800;letter-spacing:.04em;line-height:1.2;margin:0 0 10px;text-transform:uppercase}.kelas-penilaian__title-rule{background:repeating-linear-gradient(90deg,#2563eb,#2563eb 6px,#0000 0,#0000 12px);background:repeating-linear-gradient(90deg,var(--ui-accent,#2563eb) 0,var(--ui-accent,#2563eb) 6px,#0000 6px,#0000 12px);border-radius:2px;height:3px}.kelas-penilaian__layout{display:flex;flex-direction:column;gap:22px}.kelas-penilaian__top{grid-gap:20px 24px;align-items:start;display:grid;gap:20px 24px;grid-template-columns:minmax(0,1fr) minmax(260px,340px)}@media (max-width:960px){.kelas-penilaian__top{grid-template-columns:1fr}}.kelas-penilaian__col-left{display:flex;flex-direction:column;gap:16px;min-width:0}.kelas-penilaian__col-right{min-width:0}.kelas-penilaian__bottom{align-self:stretch;max-width:100%;min-width:0;overflow-x:visible;padding-bottom:4px;width:100%}.kelas-penilaian__card{background:#fff;border:1px solid #dbeafe;border:1px solid var(--ui-accent-soft-strong,#dbeafe);border-radius:14px;box-shadow:0 2px 10px #0f172a0d}.kelas-penilaian__card--kriteria{overflow:hidden;padding:0}.kelas-penilaian__kriteria-table{border-collapse:collapse;font-size:.95rem;width:100%}.kelas-penilaian__kriteria-table thead th{background:#fff;border-bottom:1px solid #e2e8f0;color:#334155;font-size:.95rem;font-weight:700;padding:14px 18px;text-align:left}.kelas-penilaian__kriteria-table thead th:last-child{text-align:right;width:6rem}.kelas-penilaian__kriteria-table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:14px 18px;vertical-align:middle}.kelas-penilaian__kriteria-table tbody tr:last-child td{border-bottom:none}.kelas-penilaian__kriteria-table tbody td:first-child{color:#2563eb;color:var(--ui-accent,#2563eb);font-weight:800;width:4.5rem}.kelas-penilaian__kriteria-table tbody td:last-child{color:#059669;font-weight:700;text-align:right}.kelas-penilaian__empty{color:#64748b;font-size:.92rem;margin:0;padding:24px 18px}.kelas-penilaian__summary{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:14px;padding:22px 20px;text-align:left}.kelas-penilaian__summary-blok{color:#059669;font-size:clamp(1.15rem,2vw,1.5rem);font-weight:800;line-height:1.35;margin:0}.kelas-penilaian__summary-inst{color:#059669;font-size:.88rem;font-weight:700;line-height:1.35;margin:6px 0 0}.kelas-penilaian__detail-card{background:#fff;border:2px solid #93c5fd;border:2px solid var(--ui-accent-border,#93c5fd);border-radius:14px;box-shadow:0 2px 10px #2563eb0f;box-shadow:0 2px 10px rgba(var(--ui-accent-rgb,37,99,235),.06);box-sizing:border-box;height:100%;padding:18px 16px 8px}.kelas-penilaian__detail-title{color:#2563eb;color:var(--ui-accent,#2563eb);font-size:.95rem;font-weight:800;letter-spacing:.06em;margin:0 0 14px}.kelas-penilaian__detail-items{list-style:none;margin:0;padding:0}.kelas-penilaian__detail-items li{align-items:flex-start;display:flex;gap:12px;padding:12px 4px 16px;position:relative}.kelas-penilaian__detail-icon{align-items:center;background:#eff6ff;background:var(--ui-accent-soft,#eff6ff);border-radius:8px;color:#2563eb;color:var(--ui-accent,#2563eb);display:inline-flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.kelas-penilaian__detail-body{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.kelas-penilaian__detail-label{color:#64748b;font-size:.78rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.kelas-penilaian__detail-value{color:#0f172a;font-size:.92rem;font-weight:700;line-height:1.4;word-break:break-word}.kelas-penilaian__detail-divider{background:repeating-linear-gradient(90deg,#93c5fd,#93c5fd 5px,#0000 0,#0000 10px);background:repeating-linear-gradient(90deg,var(--ui-accent-border,#93c5fd) 0,var(--ui-accent-border,#93c5fd) 5px,#0000 5px,#0000 10px);bottom:0;height:2px;left:46px;position:absolute;right:0}.kelas-penilaian__students{min-width:0;width:100%}.kelas-penilaian__students-scroll{width:100%}.kelas-penilaian__score-grid{min-width:0}.kelas-penilaian__students-head-scores .kelas-penilaian__sort-btn{width:100%}@media (min-width:781px){.kelas-penilaian__bottom{-webkit-overflow-scrolling:touch;overflow-x:auto;scrollbar-gutter:stable}.kelas-penilaian__bottom::-webkit-scrollbar{height:8px}.kelas-penilaian__bottom::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.kelas-penilaian__bottom::-webkit-scrollbar-track{background:#f1f5f9;border-radius:999px}.kelas-penilaian__students-scroll{width:100%}.kelas-penilaian__students-table{background:#0000;border:none;border-collapse:initial;border-spacing:0 10px;table-layout:fixed;width:100%}.kelas-penilaian__students-col-mhs{width:260px;width:var(--penilaian-mhs-col,260px)}.kelas-penilaian__students-col-akhir{width:72px;width:var(--penilaian-akhir-col,72px)}.kelas-penilaian__students-table tbody td,.kelas-penilaian__students-table thead th{display:table-cell;vertical-align:middle}.kelas-penilaian__students-table thead th{background:#0000;border:none;font-weight:inherit;padding:0}.kelas-penilaian__students-table thead .kelas-penilaian__students-head th{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;color:#64748b;font-size:.88rem;font-weight:700;padding:14px;text-align:center}.kelas-penilaian__students-table thead .kelas-penilaian__students-head th:first-child{border-left:3px solid #0000;border-radius:12px 0 0 12px;text-align:left}.kelas-penilaian__students-table thead .kelas-penilaian__students-head th:last-child{border-radius:0 12px 12px 0;border-right:1px solid #e2e8f0;color:#059669}.kelas-penilaian__students-table tbody tr{box-shadow:0 2px 8px #0f172a0a}.kelas-penilaian__students-table tbody td{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;box-sizing:border-box;padding:10px 12px;vertical-align:middle}.kelas-penilaian__students-table tbody td:first-child{border-left:3px solid #0000;border-radius:14px 0 0 14px}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row--pending td:first-child{border-left-color:#f97316}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row--done td:first-child{border-left-color:#059669}.kelas-penilaian__students-table tbody td:last-child{border-radius:0 14px 14px 0;border-right:1px solid #e2e8f0}.kelas-penilaian__students-table .kelas-penilaian__student-row,.kelas-penilaian__students-table .kelas-penilaian__students-head{background:#0000;border:none;border-radius:0;box-shadow:none;display:table-row;gap:0;grid-template-columns:none;margin:0;min-width:0;padding:0;width:auto}.kelas-penilaian__students-table .kelas-penilaian__student-mhs-wrap{align-items:center;box-sizing:border-box;display:flex;gap:10px;min-width:0;padding-right:8px}.kelas-penilaian__students-table .kelas-penilaian__student-score,.kelas-penilaian__students-table .kelas-penilaian__students-head-score{text-align:center}.kelas-penilaian__students-table .kelas-penilaian__students-head-score .kelas-penilaian__sort-btn{align-items:center;display:inline-flex;justify-content:center;min-width:0;width:100%}.kelas-penilaian__students-table .kelas-penilaian__sort-btn.kelas-penilaian__students-head-mhs{box-sizing:border-box;justify-content:flex-start;min-width:0;width:100%}.kelas-penilaian__students-table td.kelas-penilaian__student-score{color:#0f172a;font-size:1rem;font-weight:800;text-align:center;white-space:nowrap}.kelas-penilaian__students-table td.kelas-penilaian__student-akhir{color:#059669;font-size:1.35rem;font-weight:800;line-height:1;text-align:center;white-space:nowrap}.kelas-penilaian__students-table .kelas-penilaian__sort-btn.kelas-penilaian__students-head-akhir{align-items:center;display:inline-flex;justify-content:center;min-width:0;width:100%}.kelas-penilaian__students-table .kelas-penilaian__student-akhir-label,.kelas-penilaian__students-table .kelas-penilaian__student-score-label{display:none}.kelas-penilaian-mhs__summary-table.kelas-penilaian__students-table{border-spacing:0}.kelas-penilaian-mhs__summary-table.kelas-penilaian__students-table tbody tr{box-shadow:none}.kelas-penilaian-mhs-v1__summary .kelas-penilaian-mhs__summary-table thead .kelas-penilaian__students-head th,.kelas-penilaian-mhs__summary .kelas-penilaian-mhs__summary-table thead .kelas-penilaian__students-head th{border-top:none}.kelas-penilaian-mhs-v1__summary .kelas-penilaian-mhs__summary-table tbody td:first-child{border-left:none;border-radius:0}.kelas-penilaian-mhs-v1__summary .kelas-penilaian-mhs__summary-table tbody td:last-child{border-radius:0;border-right:none}.kelas-penilaian-mhs__summary .kelas-penilaian-mhs__summary-table tbody td{background:#0000}.kelas-penilaian-mhs__summary .kelas-penilaian-mhs__summary-table thead .kelas-penilaian__students-head th{background:#0000;border-top:none}.kelas-penilaian-mhs__summary .kelas-penilaian-mhs__summary-table tbody td:first-child,.kelas-penilaian-mhs__summary .kelas-penilaian-mhs__summary-table tbody td:last-child{border-left:none;border-radius:0;border-right:none}}.kelas-penilaian__mhs-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.kelas-penilaian__mhs-filters{display:flex;flex-wrap:wrap;gap:8px}.kelas-penilaian__export,.soal-list-head>.kelas-penilaian__export{align-items:center;display:flex;flex-direction:row;flex-shrink:0;flex-wrap:nowrap;gap:8px}.kelas-penilaian__export-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#334155;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:600;gap:6px;padding:6px 12px 6px 9px;transition:background-color .15s ease,border-color .15s ease}.kelas-penilaian__export-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.kelas-penilaian__export-btn:disabled{cursor:wait;opacity:.6}.kelas-penilaian__export-btn svg{flex-shrink:0}.kelas-penilaian__mhs-search{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;box-shadow:0 1px 2px #0f172a0d;display:flex;flex:1 1 220px;max-width:320px;min-width:180px;padding:0 4px 0 14px}.kelas-penilaian__mhs-search-input{background:#0000;border:none;color:#0f172a;flex:1 1;font-size:.88rem;min-width:0;outline:none;padding:9px 8px 9px 0}.kelas-penilaian__mhs-search-input::placeholder{color:#94a3b8}.kelas-penilaian__mhs-search-clear{align-items:center;background:#e2e8f0;border:none;border-radius:50%;color:#475569;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:1.1rem;height:28px;justify-content:center;line-height:1;width:28px}.kelas-penilaian__mhs-search-clear:hover{background:#cbd5e1;color:#0f172a}.kelas-penilaian__mhs-filter{background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#475569;cursor:pointer;font-size:.85rem;font-weight:700;padding:8px 14px;transition:background .15s,border-color .15s,color .15s}.kelas-penilaian__mhs-filter:hover{background:#f8fafc}.kelas-penilaian__mhs-filter--active{background:#2563eb;background:var(--ui-accent,#2563eb);border-color:#2563eb;border-color:var(--ui-accent,#2563eb);color:#fff}.kelas-penilaian__mhs-filter--warn.kelas-penilaian__mhs-filter--active{background:#ea580c;border-color:#ea580c}.kelas-penilaian__mhs-filter--ok.kelas-penilaian__mhs-filter--active{background:#059669;border-color:#059669}.kelas-penilaian__status-icon{align-items:center;border:2px solid #f97316;border-radius:50%;color:#f97316;display:inline-flex;flex-shrink:0;font-size:.7rem;font-weight:800;height:22px;justify-content:center;line-height:1;width:22px}.kelas-penilaian__status-icon--done{background:#059669;border-color:#059669;color:#fff}.kelas-penilaian__student-row--pending{border-left:3px solid #f97316}.kelas-penilaian__student-row--done{border-left:3px solid #059669}.kelas-penilaian__nilai-hint{color:#ea580c;display:block;font-size:.72rem;font-weight:600;margin-top:2px}.kelas-penilaian__students-table .kelas-penilaian__student-row,.kelas-penilaian__students-table .kelas-penilaian__students-head{align-items:center;box-sizing:border-box;min-width:0;width:auto}.kelas-penilaian__students-head:not(tr){grid-gap:2px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;display:grid;font-size:.88rem;font-weight:700;gap:2px;margin-bottom:10px;padding:14px;text-align:center}.kelas-penilaian__students-table .kelas-penilaian__student-row,.kelas-penilaian__students-table .kelas-penilaian__students-head{background:#0000;border:none;border-radius:0;display:table-row;gap:0;grid-template-columns:none;margin:0;padding:0}.kelas-penilaian__students-table .kelas-penilaian__student-row{box-shadow:none}.kelas-penilaian__students-head-mhs{text-align:left}.kelas-penilaian__sort-btn{align-items:center;background:#0000;border:none;color:#64748b;cursor:pointer;display:inline-flex;font:inherit;font-size:.88rem;font-weight:700;gap:4px;justify-content:center;margin:0;padding:0;transition:color .15s ease;white-space:nowrap}.kelas-penilaian__students-head-mhs-spacer,.kelas-penilaian__students-head-mhs-spacer--chat{display:none}.kelas-penilaian__sort-btn.kelas-penilaian__students-head-mhs{justify-content:flex-start}.kelas-penilaian__sort-btn--active,.kelas-penilaian__sort-btn:hover{color:#2563eb;color:var(--ui-accent,#2563eb)}.kelas-penilaian__sort-btn.kelas-penilaian__students-head-akhir{color:#059669}.kelas-penilaian__sort-btn.kelas-penilaian__students-head-akhir.kelas-penilaian__sort-btn--active,.kelas-penilaian__sort-btn.kelas-penilaian__students-head-akhir:hover{color:#047857}.kelas-penilaian__sort-indicator{font-size:.72rem;line-height:1;opacity:.95}.kelas-penilaian__sort-indicator--idle{font-size:.65rem;opacity:.35}.kelas-penilaian__students-head-akhir{color:#059669}.kelas-penilaian__students-list:not(tbody){display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.kelas-penilaian__students-table .kelas-penilaian__students-list{display:table-row-group}.kelas-penilaian__student-row:not(tr){grid-gap:2px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;display:grid;gap:2px;padding:14px}.kelas-penilaian__students-sticky-col{background:#fff;box-shadow:4px 0 8px -4px #0f172a14;left:0;position:sticky;z-index:2}.kelas-penilaian__students-head .kelas-penilaian__students-sticky-col{z-index:3}.kelas-penilaian__student-mhs-wrap{align-items:center;box-sizing:border-box;display:flex;gap:8px;min-width:0;padding-right:8px}.kelas-penilaian__students-table td.kelas-penilaian__student-mhs{max-width:none;min-width:0;padding-right:0}.kelas-penilaian__chat-icon{align-items:center;color:#94a3b8;display:inline-flex;flex-shrink:0;line-height:1}.kelas-penilaian__avatar-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);background:linear-gradient(135deg,var(--ui-accent-light,#3b82f6),var(--ui-accent-strong,#1d4ed8));border-radius:50%;box-shadow:0 2px 6px #1d4ed840;color:#fff;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.kelas-penilaian__student-text{display:flex;flex-direction:column;gap:3px;min-width:0}.kelas-penilaian__student-text strong{color:#0f172a;font-size:.95rem;font-weight:800;line-height:1.25}.kelas-penilaian__nim{color:#64748b;font-size:.78rem}.kelas-penilaian__student-score{color:#0f172a;font-size:1rem;font-weight:800;text-align:center;white-space:nowrap}.kelas-penilaian__student-scores{min-width:0}.kelas-penilaian__student-akhir-label,.kelas-penilaian__student-score-label{display:none}.kelas-penilaian__student-score-val{color:inherit;font:inherit}.kelas-penilaian__student-akhir{color:#059669;font-size:1.35rem;font-weight:800;line-height:1;text-align:center;white-space:nowrap}.kelas-penilaian__student-akhir-val{color:inherit;font:inherit}.kelas-penilaian__student-row--clickable{cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .15s}.kelas-penilaian__student-row--clickable:hover{border-color:#93c5fd;border-color:var(--ui-accent-border,#93c5fd);box-shadow:0 4px 14px #2563eb1a;box-shadow:0 4px 14px rgba(var(--ui-accent-rgb,37,99,235),.1);transform:translateY(-1px)}.kelas-penilaian__student-row--clickable:focus-visible{outline:2px solid #2563eb;outline:2px solid var(--ui-accent,#2563eb);outline-offset:2px}@media (max-width:780px){.kelas-page.kelas-penilaian,.kelas-page.kelas-penilaian-mhs{margin-left:0;margin-right:0;max-width:100%;overflow-x:hidden;padding-left:16px;padding-right:16px;width:100%}.kelas-penilaian-mhs-v1,.kelas-penilaian-mhs-v1__layout,.kelas-penilaian-mhs__page,.kelas-penilaian-v1,.kelas-penilaian-v1__layout,.kelas-penilaian__layout{max-width:100%;min-width:0;width:100%}.kelas-penilaian__bottom{overflow-x:visible}.kelas-penilaian__bottom,.kelas-penilaian__students{max-width:100%;width:100%}.kelas-penilaian__students-scroll{display:block;max-width:100%;overflow-x:visible;width:100%}.kelas-penilaian__students-table{border-spacing:0;display:block}.kelas-penilaian__students-table colgroup,.kelas-penilaian__students-table thead{display:none}.kelas-penilaian__students-table tbody{display:block}.kelas-penilaian__students-list{display:block;max-width:100%;width:100%}.kelas-penilaian-mhs-v1__summary,.kelas-penilaian-mhs__summary{display:block}.kelas-penilaian-v1__students{max-width:100%;width:100%}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row{grid-gap:8px 6px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;box-sizing:border-box;display:grid;gap:8px 6px;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-columns:repeat(var(--penilaian-score-cols,5),minmax(0,1fr));margin-bottom:10px;max-width:100%;min-width:0;padding:14px;width:100%}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row--pending{border-left:3px solid #f97316}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row--done{border-left:3px solid #059669}.kelas-penilaian__students-table tbody td{background:#0000;border:none!important;border-radius:0;box-shadow:none;display:block;padding:0}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-mhs{border-bottom:1px dashed #e2e8f0!important;grid-column:1/-1;margin-bottom:2px;padding-bottom:10px;padding-right:0}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-mhs .kelas-penilaian__student-mhs-wrap{align-items:center;display:flex;gap:10px;max-width:none;min-width:0;padding-right:0}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-akhir{align-items:center;border-top:1px dashed #e2e8f0!important;display:flex;flex-direction:row;gap:12px;grid-column:1/-1;justify-content:space-between;margin-top:2px;padding-top:10px;text-align:left;width:100%}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-score{align-items:center;display:flex;flex-direction:column;gap:2px;padding:0;text-align:center;white-space:normal}.kelas-penilaian__students-table .kelas-penilaian__student-akhir-label{display:block}.kelas-penilaian__students-sticky-col{box-shadow:none;max-width:none;position:static}.kelas-penilaian-mhs-v1__summary,.kelas-penilaian-mhs__summary{max-width:100%;overflow-x:hidden;width:100%}.kelas-penilaian-mhs__summary-table.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row{border:none;border-radius:0;box-shadow:none;margin-bottom:0}.kelas-penilaian__student-score-label{color:#64748b;display:block;font-size:.72rem;font-weight:700;line-height:1}.kelas-penilaian__student-score-val{color:#0f172a;font-size:1rem;font-weight:800;line-height:1.1}.kelas-penilaian__student-akhir{align-items:center;border-top:1px dashed #e2e8f0;display:flex;flex-direction:row;gap:12px;grid-column:auto;justify-content:space-between;margin-top:10px;padding:10px 0 0;text-align:left;width:100%}.kelas-penilaian__student-akhir-label{color:#059669;display:block;font-size:.85rem;font-weight:700;line-height:1.2}.kelas-penilaian__student-akhir-val{color:#059669;font-size:1.35rem;font-weight:800;line-height:1}}.kelas-penilaian-mhs__page{display:flex;flex-direction:column;gap:20px;width:100%}.kelas-penilaian-mhs__summary{background:#fff;border:2px solid #bfdbfe;border:2px solid var(--ui-accent-border,#bfdbfe);border-radius:14px;box-shadow:0 2px 10px #2563eb14;box-shadow:0 2px 10px rgba(var(--ui-accent-rgb,37,99,235),.08);box-sizing:border-box;overflow:hidden;width:100%}.kelas-penilaian-mhs__body{grid-gap:20px 24px;align-items:start;display:grid;gap:20px 24px;grid-template-columns:minmax(0,1fr) minmax(240px,280px);width:100%}@media (max-width:960px){.kelas-penilaian-mhs__body{grid-template-columns:1fr}}.kelas-penilaian-mhs__rincian{min-width:0}.kelas-penilaian-mhs__rincian-title{color:#2563eb;color:var(--ui-accent,#2563eb);font-size:.95rem;font-weight:800;letter-spacing:.05em;margin:0 0 14px;text-transform:uppercase}.kelas-penilaian-mhs__layout{grid-gap:20px 24px;align-items:start;display:grid;gap:20px 24px;grid-template-columns:minmax(0,1fr) minmax(240px,280px)}@media (max-width:960px){.kelas-penilaian-mhs__layout{grid-template-columns:1fr}}.kelas-penilaian-mhs__main{display:flex;flex-direction:column;gap:16px;min-width:0}.kelas-penilaian-mhs__check{align-items:center;background:#059669;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.85rem;font-weight:800;height:28px;justify-content:center;width:28px}.kelas-penilaian-mhs__check--pending{background:#0000;border:2px solid #f97316;color:#f97316}.kelas-penilaian-mhs__k-cards{display:flex;flex-direction:column;gap:14px}.kelas-penilaian-mhs__k-card{background:#fff;border:1px solid #dbeafe;border:1px solid var(--ui-accent-soft-strong,#dbeafe);border-radius:14px;box-shadow:0 2px 8px #0f172a0a;overflow:hidden}.kelas-penilaian-mhs__k-table{border-collapse:collapse;font-size:.92rem;width:100%}.kelas-penilaian-mhs__k-table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.88rem;font-weight:700;padding:12px 16px;text-align:left}.kelas-penilaian-mhs__k-table thead th:nth-child(3),.kelas-penilaian-mhs__k-table thead th:nth-child(4){text-align:center;width:5.5rem}.kelas-penilaian-mhs__k-table tbody td{border-bottom:none;padding:14px 16px;vertical-align:top}.kelas-penilaian-mhs__k-point{color:#2563eb;color:var(--ui-accent,#2563eb);font-weight:800;white-space:nowrap;width:4rem}.kelas-penilaian-mhs__k-ket strong{color:#0f172a;display:block;font-size:.95rem;font-weight:800;margin-bottom:8px}.kelas-penilaian-mhs__k-subs{color:#475569;font-size:.86rem;line-height:1.45;margin:0;padding-left:1.1rem}.kelas-penilaian-mhs__k-subs li{margin-bottom:4px}.kelas-penilaian-mhs__k-bobot{color:#059669;font-weight:700;text-align:center;white-space:nowrap}.kelas-penilaian-mhs__k-nilai{color:#059669;font-size:1.1rem;font-weight:800;text-align:center}.kelas-penilaian-mhs__aside{display:flex;flex-direction:column;gap:12px;position:sticky;top:16px}.kelas-penilaian-mhs__actions-bar{display:none}.kelas-penilaian-mhs__actions{align-items:stretch;display:flex;flex-direction:row;gap:10px}.kelas-penilaian-mhs__actions .kelas-penilaian-mhs__btn{flex:1 1;font-size:.78rem;font-weight:700;letter-spacing:.02em;min-width:0;padding:10px 12px;white-space:nowrap;width:auto}.kelas-penilaian-mhs__actions .kelas-penilaian-mhs__sudah-selesai{align-items:center;display:flex;flex:1 1;justify-content:center}.kelas-penilaian-mhs__sudah-selesai{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;color:#047857;font-size:.88rem;font-weight:700;margin:0;padding:12px 14px;text-align:center}@media (max-width:960px){.kelas-penilaian-mhs__aside{order:-1;position:static}}.kelas-penilaian-mhs__final-card{background:#fff;border:2px solid #a7f3d0;border-radius:14px;box-shadow:0 2px 10px #05966914;padding:24px 20px;text-align:center}.kelas-penilaian-mhs__final-label{color:#64748b;display:block;font-size:.95rem;font-weight:700;margin-bottom:8px}.kelas-penilaian-mhs__final-value{color:#059669;display:block;font-size:2.5rem;font-weight:800;line-height:1}.kelas-penilaian-mhs__btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:800;gap:8px;justify-content:center;letter-spacing:.04em;padding:14px 18px;transition:background .15s,transform .1s;width:100%}.kelas-penilaian-mhs__btn:active{transform:scale(.98)}.kelas-penilaian-mhs__btn--selesai{background:#d1fae5;border:1px solid #6ee7b7;color:#047857}.kelas-penilaian-mhs__btn--selesai:hover{background:#a7f3d0}.kelas-penilaian-mhs__btn--file{background:#2563eb;background:var(--ui-accent,#2563eb);box-shadow:0 4px 12px #2563eb40;box-shadow:0 4px 12px rgba(var(--ui-accent-rgb,37,99,235),.25);color:#fff}.kelas-penilaian-mhs__btn--file:hover{background:#1d4ed8;background:var(--ui-accent-strong,#1d4ed8)}.kelas-penilaian-mhs__btn--file-only{font-size:.78rem;font-weight:700;letter-spacing:.02em;padding:10px 12px;white-space:nowrap}.kelas-penilaian-mhs__confirm-backdrop{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1200}.kelas-penilaian-mhs__confirm-modal{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 16px 40px #0f172a2e;padding:24px 22px 20px;width:min(100%,420px)}.kelas-penilaian-mhs__confirm-question{color:#0f172a;font-size:1rem;font-weight:600;line-height:1.5;margin:0 0 20px;text-align:center}.kelas-penilaian-mhs__confirm-actions{display:flex;gap:10px;justify-content:center}.kelas-penilaian-mhs__confirm-btn{border:1px solid #0000;border-radius:10px;cursor:pointer;font-size:.92rem;font-weight:800;min-width:120px;padding:11px 18px}.kelas-penilaian-mhs__confirm-btn--no{background:#f8fafc;border-color:#cbd5e1;color:#475569}.kelas-penilaian-mhs__confirm-btn--no:hover{background:#f1f5f9}.kelas-penilaian-mhs__confirm-btn--yes{background:#059669;border-color:#059669;color:#fff}.kelas-penilaian-mhs__confirm-btn--yes:hover{background:#047857;border-color:#047857}@media (max-width:780px){.kelas-penilaian-mhs__aside{position:static}}.kelas-penilaian-mhs-v1{display:flex;flex-direction:column;gap:16px;width:100%}.kelas-penilaian-mhs-v1__header{margin-bottom:8px;width:100%}.kelas-penilaian-mhs-v1__header .kelas-penilaian__title-rule{width:100%}.kelas-penilaian-mhs-v1__layout{grid-gap:20px 24px;align-items:start;display:grid;gap:20px 24px;grid-template-columns:minmax(0,1fr) minmax(240px,280px)}@media (max-width:960px){.kelas-penilaian-mhs-v1__layout{grid-template-columns:1fr}.kelas-penilaian-mhs-v1__layout .kelas-penilaian-mhs__aside{order:-1}}.kelas-penilaian-mhs-v1__main{display:flex;flex-direction:column;gap:16px;min-width:0}.kelas-penilaian-mhs-v1__summary{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;overflow-x:auto;padding-bottom:4px}.kelas-absensi{background:#f4f6f8;box-sizing:border-box;margin-left:-30px;margin-right:-30px;max-width:none;padding:0 30px 48px;width:calc(100% + 60px)}.kelas-absensi .soal-header.kelas-absensi__soal-header:after{content:"✓"}.kelas-absensi .soal-error,.kelas-absensi .soal-filter-panel,.kelas-absensi .soal-list-section,.kelas-absensi .soal-state{max-width:none}.absensi-list-icon{background:linear-gradient(135deg,#38bdf8,#0284c7);background:linear-gradient(135deg,var(--ui-accent-light,#38bdf8),var(--ui-accent,#0284c7));box-shadow:0 2px 6px #0284c738}.absensi-sesi-icon{background:linear-gradient(135deg,#fb923c,#ea580c);box-shadow:0 2px 6px #ea580c38}.absensi-mhs-table{font-size:.92rem;min-width:760px}.absensi-mhs-table .soal-list-th{color:#64748b;font-size:.78rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase}.absensi-mhs-table .soal-list-question{-webkit-line-clamp:2;color:#0f172a;font-size:1rem;font-weight:600;line-height:1.35}.absensi-mhs-table .soal-list-chip{border-radius:6px;font-size:.78rem;font-weight:700;letter-spacing:.02em;padding:3px 8px}.absensi-mhs-table .soal-list-chip--sub{background:#f0fdfa;border:1px solid #99f6e4;color:#0f766e}.absensi-mhs-table .absensi-chip--hadir,.absensi-mhs-table .soal-list-chip--type{border-radius:999px;font-size:.78rem;font-weight:600;padding:4px 10px}.absensi-mhs-table .absensi-chip--hadir,.absensi-mhs-table .soal-list-chip--type{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.absensi-mhs-table .soal-list-meta{color:#64748b;font-size:.85rem;font-weight:400;line-height:1.4}.absensi-mhs-table .soal-list-cell strong{color:#1e293b;font-size:.9rem;font-weight:600}.absensi-mhs-table .absensi-mhs-persen,.absensi-mhs-table .soal-list-points{border-radius:6px;font-size:.9rem;font-weight:600;padding:4px 10px}.kelas-absensi .soal-list-head h3,.kelas-akademik .soal-list-head h3{color:#0f172a;font-size:1rem;font-weight:600;margin:0}.kelas-absensi .soal-list-head span,.kelas-akademik .soal-list-head span{color:#64748b;font-size:.85rem}.absensi-mhs-col-primary{width:36%}.absensi-mhs-col-ringkas{width:28%}.absensi-mhs-col-persen,.absensi-mhs-col-sesi{width:18%}.absensi-mhs-table--sesi{min-width:720px}.absensi-mhs-col-status{width:22%}.absensi-mhs-col-ket{width:42%}.absensi-sesi-table{min-width:820px}.absensi-sesi-col-primary{width:32%}.absensi-sesi-col-info{width:24%}.absensi-sesi-col-ringkas{width:18%}.absensi-sesi-col-aksi{width:26%}.absensi-sesi-actions{align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end}.absensi-buat-sesi-btn{background:#0f766e!important;border-color:#0f766e!important;box-shadow:0 2px 8px #0f766e40!important;color:#fff!important;min-height:34px!important;padding:6px 12px!important;white-space:nowrap}.absensi-buat-sesi-btn:hover:not(:disabled){background:#115e59!important;border-color:#115e59!important;color:#fff!important}.absensi-sesi-row--pending .soal-list-td{background:#fffbeb}.absensi-chip--hadir{background:#ecfdf5;color:#047857}.absensi-mhs-table .absensi-chip--buka{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;color:#065f46;font-size:.78rem;font-weight:600;padding:4px 10px}.absensi-mhs-table .absensi-chip--tutup{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;font-size:.78rem;font-weight:600;padding:4px 10px}.absensi-mhs-table .absensi-chip--pending{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;color:#c2410c;font-size:.78rem;font-weight:600;padding:4px 10px}.absensi-mhs-table .absensi-chip--legacy{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;color:#475569;font-size:.78rem;font-weight:600;padding:4px 10px}.nilai-resmi-table{min-width:780px}.nilai-resmi-col-primary{width:34%}.nilai-resmi-col-nilai{width:18%}.nilai-resmi-col-meta{width:22%}.nilai-resmi-col-aksi{width:26%}.nilai-resmi-input{max-width:120px;width:100%}.nilai-resmi-lock-btn{background:#0f766e!important;border-color:#0f766e!important;color:#fff!important}.nilai-resmi-lock-btn:hover:not(:disabled){background:#115e59!important;border-color:#115e59!important;color:#fff!important}.nilai-resmi-khs-btn{cursor:pointer;position:relative;z-index:1}.nilai-resmi-khs-overlay{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1200}.nilai-resmi-khs-modal{background:#fff;border-radius:14px;box-shadow:0 20px 50px #0f172a47;box-sizing:border-box;max-height:min(90vh,900px);overflow:auto;padding:1.15rem 1.35rem 1.35rem;width:min(820px,100%)}.nilai-resmi-khs-modal__header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:.85rem}.nilai-resmi-khs-modal__header h2{color:#0f172a;font-size:1.2rem;font-weight:700;margin:0}.nilai-resmi-khs-modal__subtitle{color:#64748b;font-size:.88rem;margin:.25rem 0 0}.nilai-resmi-khs-modal__close{background:#0000;border:none;color:#64748b;cursor:pointer;font-size:1.6rem;line-height:1;padding:0 4px}.nilai-resmi-khs-modal__close:hover{color:#0f172a}.nilai-resmi-khs-modal__form{margin-bottom:.85rem}.nilai-resmi-khs-modal__body{min-height:80px}.nilai-resmi-khs-modal .kelas-akademik__khs-sheet{margin-top:0}.sumatif-pdf-preview{display:flex;flex-direction:column;height:min(92vh,960px);max-height:none;overflow:hidden;width:min(1100px,100%)}.sumatif-pdf-preview__frame{background:#e2e8f0;border:1px solid #e2e8f0;border-radius:8px;flex:1 1 auto;min-height:0;overflow:auto;width:100%}.pdf-canvas-preview__pages{align-items:center;display:flex;flex-direction:column;gap:12px;padding:12px}.pdf-canvas-preview__page{background:#fff;box-shadow:0 2px 8px #0f172a2e;height:auto;max-width:100%}.pdf-canvas-preview__status{color:#64748b;font-size:.9rem;padding:24px 16px 0;text-align:center}.pdf-canvas-preview__status--error{color:#b91c1c}.sumatif-pdf-preview__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:12px}.sumatif-pdf-preview__btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#334155;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;justify-content:center;padding:8px 16px;text-decoration:none}.sumatif-pdf-preview__btn:hover{background:#f8fafc}.sumatif-pdf-preview__btn--primary{background:#0b6b7a;background:var(--ui-accent,#0b6b7a);border-color:#0b6b7a;border-color:var(--ui-accent,#0b6b7a);color:#fff}.sumatif-pdf-preview__btn--primary:hover{background:#0b6b7a;background:var(--ui-accent,#0b6b7a);filter:brightness(1.08)}@media (max-width:768px){.sumatif-pdf-preview{height:92vh;padding:.9rem}.sumatif-pdf-preview__actions .sumatif-pdf-preview__btn{flex:1 1 auto}}.kg-jadwal-table{min-width:720px}.kg-jadwal-col-primary{width:36%}.kg-jadwal-col-info{width:28%}.kg-jadwal-col-aksi,.kg-jadwal-col-ba{width:18%}.kelas-akademik .soal-error,.kelas-akademik .soal-list-section,.kelas-akademik .soal-state{max-width:none}@media (max-width:780px){.kg-jadwal-table,.nilai-resmi-table{min-width:0}.nilai-resmi-input{max-width:none}}.absensi-mhs-persen.kelas-absensi__persen--ok{background:#ecfdf5;color:#047857}.absensi-mhs-persen.kelas-absensi__persen--warn{background:#fffbeb;color:#b45309}.absensi-mhs-persen.kelas-absensi__persen--bad{background:#fef2f2;color:#b91c1c}.absensi-mhs-select{font-weight:600;max-width:160px}.absensi-mhs-ket,.absensi-mhs-select{font-family:inherit;font-size:.9rem;width:100%}.absensi-mhs-ket{min-width:0}@media (max-width:780px){.absensi-mhs-table,.absensi-mhs-table--sesi,.absensi-sesi-table{min-width:0}.absensi-mhs-table--sesi .soal-list-row,.absensi-sesi-table .soal-list-row{grid-template-columns:1fr}.absensi-mhs-ket,.absensi-mhs-select{max-width:none}.absensi-sesi-actions{justify-content:flex-start}}.kelas-absensi__toolbar-row{align-items:center;display:flex;justify-content:flex-end;margin-bottom:16px;padding-top:4px}.kelas-absensi__header{margin-bottom:20px}.kelas-absensi__title{color:#0f172a;font-size:1.45rem;font-weight:800;letter-spacing:.02em;margin:0 0 6px}.kelas-absensi__subtitle{color:#64748b;font-size:.92rem;margin:0}.kelas-absensi__stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.kelas-absensi__stat{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 6px #0f172a0d;display:flex;flex:1 1 140px;flex-direction:column;gap:4px;min-width:120px;padding:16px 18px}.kelas-absensi__stat-val{color:#0f172a;font-size:1.5rem;font-weight:800;line-height:1.2}.kelas-absensi__stat-label{color:#64748b;font-size:.82rem;font-weight:600}.kelas-absensi__subtabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.kelas-absensi__subtab{background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#475569;cursor:pointer;font-size:.85rem;font-weight:700;padding:8px 16px}.kelas-absensi__subtab--active{background:#059669;border-color:#059669;color:#fff}.kelas-absensi__search{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;display:flex;margin-bottom:14px;max-width:360px;padding:0 4px 0 14px}.kelas-absensi__search-input{background:#0000;border:none;flex:1 1;font-size:.9rem;min-width:0;outline:none;padding:10px 8px 10px 0}.kelas-absensi__search-clear{background:#e2e8f0;border:none;border-radius:50%;color:#475569;cursor:pointer;flex-shrink:0;font-size:1.1rem;height:28px;width:28px}.kelas-absensi__table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 2px 8px #0f172a0d;overflow-x:auto}.kelas-absensi__table{border-collapse:collapse;font-size:.88rem;width:100%}.kelas-absensi__table thead th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-weight:700;padding:12px 14px;text-align:left;white-space:nowrap}.kelas-absensi__table tbody td{border-bottom:1px solid #f1f5f9;color:#334155;padding:12px 14px;vertical-align:top}.kelas-absensi__table tbody tr:last-child td{border-bottom:none}.kelas-absensi__table tbody tr:hover{background:#fafafa}.kelas-absensi__empty-cell{color:#64748b;padding:24px 14px!important;text-align:center}.kelas-absensi__nim{color:#64748b;display:block;font-size:.78rem;margin-top:2px}.kelas-absensi__num{font-weight:700;text-align:center}.kelas-absensi__num--hadir{color:#059669}.kelas-absensi__num--izin{color:#d97706}.kelas-absensi__persen{background:#f1f5f9;border-radius:999px;color:#475569;display:inline-block;font-size:.82rem;font-weight:800;padding:4px 10px}.kelas-absensi__persen--ok{background:#d1fae5;color:#065f46}.kelas-absensi__persen--warn{background:#ffedd5;color:#c2410c}.kelas-absensi__persen--bad{background:#fee2e2;color:#b91c1c}.kelas-absensi__badge{border-radius:999px;display:inline-block;font-size:.78rem;font-weight:700;padding:4px 10px}.kelas-absensi__badge--hadir{background:#d1fae5;color:#065f46}.kelas-absensi__badge--izin{background:#ffedd5;color:#c2410c}.kelas-absensi__badge--sakit{background:#dbeafe;background:var(--ui-accent-soft-strong,#dbeafe);color:#1d4ed8;color:var(--ui-accent-strong,#1d4ed8)}.kelas-absensi__badge--alpha,.kelas-absensi__badge--tidak{background:#fee2e2;color:#b91c1c}.kelas-absensi__badge--buka{background:#d1fae5;color:#065f46}.kelas-absensi__badge--tutup{background:#f1f5f9;color:#64748b}.kelas-absensi__sesi-kode{color:#94a3b8;display:block;font-size:.74rem;margin-top:2px}.kelas-absensi__detail-btn{background:#059669;border:none;border-radius:999px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:6px 14px;white-space:nowrap}.kelas-absensi__detail-btn:hover{background:#047857}.kelas-absensi__hint{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#475569;font-size:.85rem;line-height:1.45;margin:-8px 0 16px;padding:10px 14px}@media (max-width:768px){.kelas-absensi{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;width:calc(100% + 32px)}}.kelas-akademik__hint{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:.875rem;line-height:1.5;margin:0 0 16px;padding:10px 14px}.kelas-akademik__action-bar{align-items:center;background:linear-gradient(135deg,#ecfdf5,#f8fafc 55%);border:1px solid #d1fae5;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin:0 0 16px;padding:12px 14px}.kelas-akademik__action-bar-left,.kelas-akademik__action-bar-right{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.kelas-akademik__btn-primary{background:#059669;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:700;padding:8px 16px}.kelas-akademik__btn-primary:hover:not(:disabled){background:#047857}.kelas-akademik__btn-primary:disabled,.kelas-akademik__btn-secondary:disabled{cursor:not-allowed;opacity:.55}.kelas-akademik__btn-secondary{background:#fff;border:1px solid #a7f3d0;border-radius:10px;color:#047857;cursor:pointer;font-size:.85rem;font-weight:650;padding:8px 14px}.kelas-akademik__btn-secondary:hover:not(:disabled){background:#ecfdf5}.kelas-akademik__chip{background:#fff;border:1px solid #a7f3d0;border-radius:999px;color:#065f46;cursor:pointer;font-size:.78rem;font-weight:650;padding:5px 12px}.kelas-akademik__chip--ghost{border-color:#e2e8f0;color:#64748b}.kelas-akademik__input,.kelas-akademik__select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font-size:.85rem;max-width:220px;min-width:0;padding:7px 10px;width:100%}.kelas-akademik__input--num{max-width:100px}.kelas-akademik__textarea{border:1px solid #cbd5e1;border-radius:10px;font-family:inherit;font-size:.9rem;padding:10px 12px;resize:vertical;width:100%}.kelas-akademik__dirty{color:#b45309;font-size:.78rem;font-weight:700}.kelas-akademik__save-msg{color:#047857;font-size:.8rem}.kelas-akademik__error-msg{color:#b91c1c;font-size:.85rem;font-weight:650;line-height:1.35;max-width:420px}.kelas-akademik__muted{color:#64748b;font-size:.82rem}.kelas-akademik__locked{color:#b91c1c!important}.kelas-akademik__huruf{background:#ecfdf5;border-radius:6px;color:#065f46;display:inline-flex;font-weight:700;justify-content:center;min-width:2rem;padding:2px 8px}.kelas-akademik__link-btn{background:#0000;border:none;color:#0f766e;cursor:pointer;font-size:.8rem;font-weight:650;margin-left:6px;text-decoration:underline}.kelas-akademik__section-title{color:#0f172a;font-size:1.05rem;margin:0 0 10px}.kelas-akademik__khs-panel{border-top:1px solid #e2e8f0;margin-top:28px;padding-top:20px;scroll-margin-top:1rem}.kelas-akademik__khs-toolbar{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:14px}.kelas-akademik__khs-form{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.kelas-akademik__khs-sheet{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 22px}.kelas-akademik__khs-head h3{font-size:1.25rem;margin:4px 0 8px}.kelas-akademik__khs-inst{color:#059669;font-size:.8rem;font-weight:700;letter-spacing:.04em;margin:0;text-transform:uppercase}.kelas-akademik__khs-ipk{margin:8px 0 0}.kelas-akademik__split{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(320px,520px) 1fr}@media (max-width:900px){.kelas-akademik__split{grid-template-columns:1fr}}.kelas-akademik__composer{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:10px;padding:16px;position:sticky;top:12px}.kelas-akademik__composer .kelas-akademik__input,.kelas-akademik__composer .kelas-akademik__textarea{max-width:none}.kelas-akademik__feed{display:flex;flex-direction:column;gap:12px}.kelas-akademik__card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 0 #0f172a08;padding:14px 16px}.kelas-akademik__card-meta{color:#94a3b8;display:flex;font-size:.78rem;gap:8px;justify-content:space-between;margin-bottom:8px}.kelas-akademik__code{color:#0f766e;font-family:ui-monospace,monospace;font-weight:650}.kelas-akademik__card-title{font-size:1rem;margin:0 0 6px}.kelas-akademik__card-body{color:#334155;line-height:1.5;margin:0 0 10px;white-space:pre-wrap}div.kelas-akademik__rich{white-space:normal}.kelas-akademik__rich blockquote,.kelas-akademik__rich ol,.kelas-akademik__rich p,.kelas-akademik__rich ul{margin:0 0 .5em}.kelas-akademik__rich ol,.kelas-akademik__rich ul{padding-left:1.4em}.kelas-akademik__rich img{height:auto;max-width:100%}.kelas-akademik__link{color:#059669;font-size:.85rem;font-weight:650;margin-right:12px}.kelas-akademik__danger-link{color:#b91c1c}.kelas-akademik__danger-link,.kelas-akademik__edit-link{background:none;border:none;cursor:pointer;font-size:.8rem;padding:0}.kelas-akademik__edit-link{color:#047857;font-weight:650}.kelas-akademik__card-actions{display:flex;gap:16px;margin-top:6px}.kelas-akademik__page-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:14px}.kelas-akademik__page-head .kelas-akademik__section-title{margin:0}.kelas-akademik__form-page{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:12px;max-width:900px;padding:18px}.kelas-akademik__form-page .kelas-akademik__input{max-width:none}.kelas-akademik__url-row{align-items:center;display:flex;gap:8px}.kelas-akademik__url-row .kelas-akademik__btn-secondary{white-space:nowrap}.kelas-akademik__form-actions{display:flex;gap:10px;justify-content:flex-end}.kelas-akademik__inline-form{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.kelas-akademik__kelompok-layout{grid-gap:18px;display:grid;gap:18px;grid-template-columns:minmax(220px,280px) 1fr;margin-bottom:28px}@media (max-width:900px){.kelas-akademik__kelompok-layout{grid-template-columns:1fr}}.kelas-akademik__list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.kelas-akademik__list-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 12px;text-align:left;width:100%}.kelas-akademik__list-item span{color:#94a3b8;font-size:.75rem}.kelas-akademik__list-item--active{background:#ecfdf5;border-color:#6ee7b7}.kelas-akademik__member-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.kelas-akademik__member{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:8px;padding:8px 10px}.kelas-akademik__member--on{background:#f0fdf4;border-color:#6ee7b7}.kelas-akademik__member span{display:flex;flex-direction:column;font-size:.85rem}.kelas-akademik__member em{color:#94a3b8;font-size:.75rem;font-style:normal}.kelas-akademik__slots{margin-top:8px}@media print{body *{visibility:hidden!important}#khs-print-area,#khs-print-area *{visibility:visible!important}#khs-print-area{border:none!important;box-shadow:none!important;left:0;margin:0!important;padding:0!important;position:absolute!important;top:0;width:100%}.app-sidebar,.app-topbar,.kelas-absensi__toolbar-row,.kelas-akademik__action-bar,.kelas-akademik__khs-toolbar,.nilai-resmi-khs-modal__form,.nilai-resmi-khs-modal__header,.no-print,nav{display:none!important}}.kg-list__hero{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.kg-list__title{color:#202124;font-size:1.65rem;font-weight:700;letter-spacing:-.02em;margin:0 0 4px}.kg-list__subtitle{color:#5f6368;font-size:.95rem;margin:0}.kg-list__create-btn{align-items:center;background:#1a73e8;background:var(--ui-accent,#1a73e8);border:none;border-radius:24px;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:650;gap:8px;padding:10px 20px 10px 14px}.kg-list__create-btn:hover{background:#1765cc;background:var(--ui-accent-strong,#1765cc);box-shadow:0 1px 3px #3c40434d,0 4px 8px 3px #3c404326}.kg-list__create-icon{align-items:center;background:#fff3;border-radius:50%;display:inline-flex;font-size:1.1rem;height:22px;justify-content:center;line-height:1;width:22px}.kg-list__toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:18px}.kg-list__search{align-items:center;background:#f1f3f4;border:1px solid #0000;border-radius:8px;display:flex;flex:1 1 240px;gap:8px;height:44px;max-width:420px;padding:0 14px}.kg-list__search:focus-within{background:#fff;border-color:#dadce0;box-shadow:0 1px 2px #3c404326}.kg-list__search-icon{color:#5f6368;font-size:1.1rem}.kg-list__search input{background:#0000;border:none;color:#202124;flex:1 1;font-size:.95rem;outline:none}.kg-list__count{color:#5f6368;font-size:.85rem}.kg-list__empty{background:#fff;border:1px dashed #dadce0;border-radius:12px;padding:56px 24px;text-align:center}.kg-list__empty-icon{color:#9aa0a6;font-size:2rem;margin-bottom:8px}.kg-list__empty h2{color:#202124;font-size:1.2rem;margin:0 0 6px}.kg-list__empty p{color:#5f6368;margin:0 0 18px}.kg-card-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.kg-card{background:#fff;border:1px solid #dadce0;border-radius:12px;color:inherit;cursor:pointer;display:flex;flex-direction:column;font:inherit;overflow:hidden;padding:0;text-align:left;transition:box-shadow .15s ease,border-color .15s ease,transform .15s ease}.kg-card:hover{border-color:#c4c7c5;box-shadow:0 1px 3px #3c404333,0 4px 8px #3c40431f;transform:translateY(-1px)}.kg-card:focus-visible{outline:2px solid #1a73e8;outline:2px solid var(--ui-accent,#1a73e8);outline-offset:2px}.kg-card__banner{align-items:flex-start;background:#0f766e;color:#fff;display:flex;gap:12px;justify-content:space-between;min-height:96px;padding:18px 16px 20px}.kg-card--emerald .kg-card__banner{background:linear-gradient(135deg,#0f766e,#059669)}.kg-card--teal .kg-card__banner{background:linear-gradient(135deg,#0e7490,#14b8a6)}.kg-card--sky .kg-card__banner{background:linear-gradient(135deg,#0369a1,#0ea5e9);background:linear-gradient(135deg,var(--ui-accent,#0369a1),var(--ui-accent-light,#0ea5e9))}.kg-card--indigo .kg-card__banner{background:linear-gradient(135deg,#4338ca,#6366f1);background:linear-gradient(135deg,var(--ui-accent-strong,#4338ca),var(--ui-accent-light,#6366f1))}.kg-card--rose .kg-card__banner{background:linear-gradient(135deg,#be123c,#f43f5e)}.kg-card--amber .kg-card__banner{background:linear-gradient(135deg,#b45309,#f59e0b)}.kg-card--violet .kg-card__banner{background:linear-gradient(135deg,#6d28d9,#8b5cf6)}.kg-card--slate .kg-card__banner{background:linear-gradient(135deg,#334155,#64748b)}.kg-card__title{font-size:1.15rem;font-weight:700;line-height:1.25;margin:0 0 4px}.kg-card__code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;margin:0;opacity:.85}.kg-card__avatar{align-items:center;background:#ffffff38;border-radius:50%;display:inline-flex;flex-shrink:0;font-size:.85rem;font-weight:700;height:40px;justify-content:center;width:40px}.kg-card__body{display:flex;flex:1 1;flex-direction:column;gap:12px;padding:14px 16px 10px}.kg-card__stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.kg-card__stats div{display:flex;flex-direction:column;gap:1px}.kg-card__stats strong{color:#202124;font-size:1.05rem}.kg-card__stats span{color:#5f6368;font-size:.72rem;letter-spacing:.03em;text-transform:uppercase}.kg-card__meter{display:flex;flex-direction:column;gap:4px}.kg-card__meter-track{background:#e8eaed;border-radius:999px;height:6px;overflow:hidden}.kg-card__meter-fill{background:#1a73e8;background:var(--ui-accent,#1a73e8);border-radius:inherit;height:100%;transition:width .2s ease}.kg-card__meter--over .kg-card__meter-fill{background:#d93025}.kg-card__meter-label{color:#5f6368;font-size:.75rem}.kg-card__meter--over .kg-card__meter-label{color:#d93025}.kg-card__people{min-height:36px}.kg-card__people-empty{color:#9aa0a6;font-size:.82rem}.kg-card__chips{align-items:center;display:flex;margin-bottom:4px}.kg-card__chip{align-items:center;background:#e8f0fe;background:var(--ui-accent-soft,#e8f0fe);border:2px solid #fff;border-radius:50%;color:#1967d2;color:var(--ui-accent,#1967d2);display:inline-flex;font-size:.72rem;font-weight:700;height:28px;justify-content:center;margin-left:-6px;width:28px}.kg-card__chip:first-child{margin-left:0}.kg-card__chip--more{background:#f1f3f4;color:#5f6368}.kg-card__people-names{color:#5f6368;display:block;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kg-card__footer{align-items:center;border-top:1px solid #f1f3f4;color:#1a73e8;color:var(--ui-accent,#1a73e8);display:flex;font-size:.8rem;font-weight:650;justify-content:space-between;padding:10px 16px 14px}.kg-card__arrow{font-size:1rem}.kg-card--add{align-items:center;background:#fafafa;border-style:dashed;color:#5f6368;gap:6px;justify-content:center;min-height:220px}.kg-card--add:hover{background:#f8fafc;border-color:#1a73e8;border-color:var(--ui-accent,#1a73e8)}.kg-card--add-icon,.kg-card--add:hover{color:#1a73e8;color:var(--ui-accent,#1a73e8)}.kg-card--add-icon{align-items:center;background:#e8f0fe;background:var(--ui-accent-soft,#e8f0fe);border-radius:50%;display:inline-flex;font-size:1.6rem;height:44px;justify-content:center;margin-bottom:4px;width:44px}.kg-card--add strong{color:inherit;font-size:.95rem}.kg-card--add span:last-child{font-size:.8rem;opacity:.85}.kg-form__sheet{background:#fff;border:1px solid #dadce0;border-radius:12px;box-shadow:0 1px 2px #3c404326;margin:8px auto 0;max-width:480px;overflow:hidden}.kg-form__head{border-bottom:1px solid #f1f3f4;padding:22px 24px 12px}.kg-form__head h1{color:#202124;font-size:1.35rem;margin:0 0 6px}.kg-form__head p{color:#5f6368;font-size:.9rem;margin:0}.kg-form__body{gap:16px;padding:20px 24px 24px}.kg-form__body,.kg-form__field{display:flex;flex-direction:column}.kg-form__field{color:#5f6368;font-size:.82rem;font-weight:650;gap:6px}.kg-form__control{border-color:#dadce0;border-radius:8px;height:44px;max-width:none!important}.kg-form__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.kg-edit__hero{align-items:flex-end;border-bottom:1px solid #e8eaed;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.kg-edit__hero-main{flex:1 1 280px;min-width:0}.kg-edit__rename{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 10px}.kg-edit__rename .kg-form__control{height:40px;max-width:none!important}.kg-edit__rename-name{flex:1 1 200px;min-width:180px}.kg-edit__rename-kuota{flex:0 0 96px;width:96px}.kg-edit__rename .kelas-akademik__btn-secondary{height:40px}.kg-edit__eyebrow{color:#5f6368;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;letter-spacing:.04em;margin:0 0 4px;text-transform:uppercase}.kg-edit__title{color:#202124;font-size:1.5rem;margin:0 0 4px}.kg-edit__meta{color:#5f6368;font-size:.9rem;margin:0}.kg-edit__hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.kg-edit__meter{margin-bottom:20px;max-width:360px}.kg-edit__section{margin-bottom:28px}.kg-edit__hint{margin:-4px 0 12px}.kg-edit__section-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px}.kg-edit__section-head .kelas-akademik__section-title{margin:0}.kg-edit__member-search{flex:1 1 200px;height:40px;max-width:320px}.kg-edit__block{background:#fff;border:1px solid #e8eaed;border-radius:12px;margin-bottom:20px;padding:14px}.kg-edit__block-title{color:#202124;font-size:.9rem;font-weight:700;margin:0 0 12px}.kg-edit__block--taken{background:#fafafa}.kg-edit__taken-toggle{align-items:center;background:#0000;border:none;color:#202124;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;justify-content:space-between;padding:0;width:100%}.kelas-akademik__member--taken{align-items:center;cursor:default;gap:10px;justify-content:space-between}.kelas-akademik__member--taken span{flex:1 1;min-width:0}.kg-edit__move-btn{background:#fff;border:1px solid #1a73e8;border:1px solid var(--ui-accent,#1a73e8);border-radius:999px;color:#1a73e8;color:var(--ui-accent,#1a73e8);cursor:pointer;flex-shrink:0;font-size:.75rem;font-weight:700;padding:5px 12px}.kg-edit__move-btn:hover{background:#e8f0fe;background:var(--ui-accent-soft,#e8f0fe)}.kg-edit__move-btn--warn{border-color:#d93025;color:#d93025}.kg-edit__move-btn--warn:hover{background:#fce8e6}.kg-edit__jadwal-help{padding:16px 18px;text-align:left}.kg-edit__jadwal-help ol{color:#5f6368;line-height:1.55;margin:10px 0 0;padding-left:20px}.kg-jadwal-form__grid{grid-gap:12px 14px;align-items:end;display:grid;gap:12px 14px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.kg-jadwal-form__materi{grid-column:1/-1}.kg-jadwal-form__actions{display:flex;grid-column:1/-1;justify-content:flex-end;padding-top:4px}@media (max-width:640px){.kg-list__hero{align-items:stretch}.kg-list__create-btn{justify-content:center;width:100%}.kg-card-grid{grid-template-columns:1fr}}.kelas-rps-materi{background:#f8faff;border:1px solid #c7d2fe;border:1px solid var(--ui-accent-border,#c7d2fe);border-radius:12px;margin-bottom:1.25rem;overflow:hidden}.kelas-rps-materi__head{align-items:center;background:#eef2ff;background:var(--ui-accent-soft,#eef2ff);border:none;color:#1e1b4b;cursor:pointer;display:flex;font:inherit;gap:.75rem;justify-content:space-between;padding:.75rem 1rem;text-align:left;width:100%}.kelas-rps-materi__count{background:#c7d2fe;background:var(--ui-accent-border,#c7d2fe);border-radius:999px;font-size:.75rem;font-weight:600;margin-left:.5rem;padding:.1rem .5rem}.kelas-rps-materi__body{padding:.85rem 1rem 1rem}.kelas-rps-materi__mk+.kelas-rps-materi__mk{margin-top:1rem}.kelas-rps-materi__mk-title{color:#0f172a;font-size:1rem;margin:0 0 .5rem}.kelas-rps-materi__sub{margin-top:.65rem}.kelas-rps-materi__sub-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.kelas-rps-materi__list{display:flex;flex-direction:column;gap:.4rem;list-style:none;margin:0;padding:0}.kelas-rps-materi__item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.55rem .75rem}.kelas-rps-materi__item-main{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.kelas-rps-materi__week{background:#0f766e;border-radius:6px;color:#fff;font-size:.72rem;font-weight:600;padding:.05rem .45rem}.kelas-rps-materi__tag{background:#f1f5f9;border-radius:999px;color:#475569;font-size:.72rem;padding:.05rem .45rem}.kelas-rps-materi__muted{color:#64748b;font-size:.8rem}.kelas-rps-materi__desc{font-size:.85rem;margin-top:.35rem}.kelas-akademik__feed+.kelas-rps-materi,.kelas-error+.kelas-rps-materi,.kelas-loading+.kelas-rps-materi{margin-top:1.5rem}.kg-list__hero-actions{display:flex;flex-wrap:wrap;gap:10px}.kg-list__auto-btn{align-items:center;background:#fff;border:1px solid #1a73e8;border:1px solid var(--ui-accent,#1a73e8);border-radius:24px;color:#1a73e8;color:var(--ui-accent,#1a73e8);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:650;gap:8px;padding:9px 18px}.kg-list__auto-btn:hover:not(:disabled){background:#e8f0fe;background:var(--ui-accent-soft,#e8f0fe)}.kg-list__auto-btn:disabled{cursor:not-allowed;opacity:.5}.kg-list__notice{margin:-8px 0 16px}.kg-auto{align-items:center;background:#0f172a73;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:2000}.kg-auto__dialog{background:#fff;border-radius:14px;box-shadow:0 20px 50px #0f172a40;max-height:calc(100vh - 32px);overflow-y:auto;padding:22px 24px;width:min(520px,100%)}.kg-auto__dialog h2{color:#202124;font-size:1.2rem;margin:0 0 6px}.kg-auto__lead{color:#475569;font-size:.92rem;margin:0 0 14px}.kg-auto__grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:140px 1fr}.kg-auto__summary{background:#f1f5f9;border-radius:10px;color:#1e293b;font-size:.9rem;line-height:1.5;margin:14px 0 10px;padding:10px 12px}.kg-auto__warn{color:#64748b;font-size:.8rem;margin:0 0 14px}@media (max-width:640px){.kg-list__hero-actions{width:100%}.kg-list__auto-btn{justify-content:center;width:100%}.kg-auto__grid{grid-template-columns:1fr}}.kg-edit__delete-btn{background:#fff;border:1px solid #fca5a5;border-radius:8px;color:#b91c1c;cursor:pointer;font-size:.88rem;font-weight:600;padding:8px 14px}.kg-edit__delete-btn:hover:not(:disabled){background:#fef2f2}.kg-edit__delete-btn:disabled{cursor:not-allowed;opacity:.5}.kg-import{width:min(600px,100%)}.kg-import__link{background:none;border:none;color:#1a73e8;color:var(--ui-accent,#1a73e8);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.kg-import__file{align-items:center;display:flex;gap:10px;margin-bottom:12px}.kg-import__filename{color:#475569;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kg-import__mode{border:1px solid #e2e8f0;border-radius:10px;color:#334155;display:flex;flex-direction:column;font-size:.88rem;gap:6px;margin:0 0 8px;padding:10px 12px}.kg-import__mode legend{font-weight:600;padding:0 4px}.kg-import__mode label{align-items:flex-start;cursor:pointer;display:flex;gap:8px}.kg-import__groups{border:1px solid #e2e8f0;border-radius:10px;list-style:none;margin:0 0 10px;max-height:180px;overflow-y:auto;padding:0}.kg-import__groups li{display:flex;font-size:.88rem;gap:8px;justify-content:space-between;padding:6px 12px}.kg-import__groups li+li{border-top:1px solid #f1f5f9}.kg-import__badge{color:#64748b;white-space:nowrap}.kg-import__warn{background:#fffbeb;border-radius:8px;color:#92400e;font-size:.85rem;margin:0 0 10px;padding:8px 12px}@media (max-width:768px){.kelas-page.kelas-page--v2:not(.kelas-akademik):not(.kelas-absensi):not(.kelas-penilaian){margin-left:0;margin-right:0;max-width:100%;padding:0 0 24px;width:auto}.kelas-subheader{gap:6px;margin-bottom:8px;padding:12px 14px}.kelas-subheader-title{font-size:1.15rem;letter-spacing:.01em}.kelas-subheader-meta{font-size:.8rem;gap:2px 14px;justify-content:flex-start}.kelas-meta-sep{display:none}.kelas-toolbar{gap:8px;margin-bottom:14px}.kelas-tabs{-webkit-overflow-scrolling:touch;flex:none;flex-wrap:nowrap;gap:2px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;width:100%}.kelas-tabs::-webkit-scrollbar{display:none}.kelas-tab{flex:0 0 auto;font-size:.88rem;padding:9px 14px;white-space:nowrap}.kelas-tab--link{align-self:center;border-radius:999px;margin:0 4px 0 8px;padding:6px 12px}.kelas-toolbar__right{flex:none;gap:8px;justify-content:space-between;width:100%}.kelas-back-btn{background:none;border:none;color:#059669;color:var(--ui-accent,#059669);font-size:.85rem;font-weight:600;padding:4px 0}.kelas-back-btn:hover{background:none;text-decoration:underline}.kelas-v2-filter--inline{flex:1 1 auto;justify-content:flex-end}.kelas-v2-filter--inline .kelas-v2-filter__control{max-width:60vw;min-width:0}.kelas-page.kelas-page--blok-detail{display:flex;flex-direction:column}.kelas-page--blok-detail>.kelas-toolbar{display:contents}.kelas-page--blok-detail>.kelas-toolbar>.kelas-toolbar__right{margin-bottom:4px;order:-2}.kelas-page--blok-detail>.kelas-subheader{order:-1}.kelas-page--blok-detail>.kelas-toolbar>.kelas-tabs{margin-bottom:12px}.kelas-page--blok-detail .kelas-tabs .kelas-tab--link{display:none}.kelas-page--blok-detail .kelas-toolbar__right .kelas-back-btn{margin-right:auto;order:-1}.kelas-jadwal-chip{align-items:center;background:#ecfdf5;background:var(--ui-accent-soft,#ecfdf5);border:1px solid #6ee7b7;border:1px solid var(--ui-accent-border,#6ee7b7);border-radius:999px;color:#059669;color:var(--ui-accent,#059669);cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:600;padding:5px 12px}.kelas-jadwal-chip:disabled{cursor:wait;opacity:.6}.kelas-page--blok-detail .kelas-absensi,.kelas-page--blok-detail .kelas-page,.kelas-page--blok-detail .kelas-page.kelas-penilaian{margin-left:0;margin-right:0;max-width:100%;padding-left:0;padding-right:0;width:auto}.kelas-page--blok-detail .kelas-absensi__toolbar-row:has(>.soal-back:only-child){display:none}.kelas-page--blok-detail .soal-header{margin-bottom:10px;padding:12px 14px}.kelas-page--blok-detail .soal-header .soal-eyebrow,.kelas-page--blok-detail .soal-header .soal-subtitle{display:none}.kelas-page--blok-detail .soal-header h2{font-size:1.02rem;margin:0 0 8px}.kelas-page--blok-detail .soal-header-meta{grid-gap:4px 12px;display:grid;font-size:.78rem;gap:4px 12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.kelas-page--blok-detail .kelas-absensi__hint{font-size:.78rem;padding:8px 10px}.kelas-page--blok-detail .kelas-penilaian__summary{display:none}.kelas-penilaian__top{gap:12px}.kelas-penilaian__card--kriteria{padding:12px 14px}.kelas-penilaian__card--kriteria:before{color:#2563eb;color:var(--ui-accent,#2563eb);content:"Bobot penilaian";display:block;font-size:.72rem;font-weight:800;letter-spacing:.06em;margin-bottom:8px;text-transform:uppercase}.kelas-penilaian__kriteria-table,.kelas-penilaian__kriteria-table tbody{display:flex;flex-wrap:wrap;gap:6px}.kelas-penilaian__kriteria-table thead{display:none}.kelas-penilaian__kriteria-table tbody tr{align-items:baseline;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;display:inline-flex;font-size:.8rem;gap:5px;padding:5px 10px}.kelas-penilaian__kriteria-table tbody td{border:none;padding:0;text-align:left;width:auto}.kelas-penilaian__kriteria-table tbody td:first-child,.kelas-penilaian__kriteria-table tbody td:last-child{text-align:left;width:auto}.kelas-penilaian__detail-card{border-width:1px;height:auto;padding:12px 14px}.kelas-penilaian__detail-title{font-size:.72rem;margin-bottom:10px}.kelas-penilaian__detail-items{grid-gap:10px 14px;display:grid;gap:10px 14px;grid-template-columns:repeat(2,minmax(0,1fr))}.kelas-penilaian__detail-items li{gap:0;padding:0}.kelas-penilaian__detail-divider,.kelas-penilaian__detail-icon{display:none}.kelas-penilaian__detail-label{font-size:.68rem}.kelas-penilaian__detail-value{font-size:.85rem}.kelas-penilaian__students-table tbody tr.kelas-penilaian__student-row{gap:8px 4px;margin-bottom:8px;padding:12px}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-mhs{padding-bottom:8px}.kelas-penilaian__students-table tbody td.kelas-penilaian__student-akhir{padding-top:8px}.kelas-penilaian__student-score-val{font-size:.95rem}.absensi-mhs-table:not(.absensi-mhs-table--sesi):not(.nilai-resmi-table) .soal-list-row,.nilai-resmi-table .soal-list-row{gap:8px 10px;margin-bottom:8px;padding:12px}.absensi-mhs-table:not(.absensi-mhs-table--sesi):not(.nilai-resmi-table) .soal-list-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.absensi-mhs-table:not(.absensi-mhs-table--sesi):not(.nilai-resmi-table) .soal-list-td--primary{border-bottom:none!important;grid-column:1/3;grid-row:1;margin-bottom:0;padding-bottom:0}.absensi-mhs-table:not(.absensi-mhs-table--sesi):not(.nilai-resmi-table) .soal-list-td--actions{align-self:center;border-top:none!important;grid-column:3;grid-row:1;margin-top:0;padding-top:0}.nilai-resmi-table .soal-list-row{align-items:end;grid-template-columns:minmax(0,1fr) auto auto}.nilai-resmi-table .soal-list-td--primary{margin-bottom:0;padding-bottom:8px}.nilai-resmi-table .soal-list-td--actions{border-top:none!important;grid-column:auto;margin-top:0;padding-top:0}.nilai-resmi-table .soal-list-actions{flex-wrap:nowrap;gap:6px}.nilai-resmi-table .soal-list-actions .soal-btn{min-height:0;padding:7px 12px}.absensi-mhs-table .soal-list-icon,.nilai-resmi-table .soal-list-icon{flex-basis:34px;height:34px;width:34px}.nilai-resmi-table .nilai-resmi-input{max-width:120px;width:100%}.kg-list__title{font-size:1.3rem}.kg-list__hero{gap:12px;margin-bottom:14px}.kg-list__hero-actions{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.kg-list__hero-actions .kg-list__create-btn{grid-column:1/-1;justify-content:center;order:-1;width:100%}.kg-list__hero-actions .kg-list__auto-btn{border-radius:12px;flex-direction:column;font-size:.74rem;gap:2px;justify-content:center;line-height:1.2;min-height:56px;padding:6px 4px;text-align:center;width:auto}.kg-card__banner{min-height:0;padding:12px 14px}}