@import "https://fonts.googleapis.com/css2?family=Amiri:ital,wght@0,400;0,700;1,400&family=Scheherazade+New:wght@400;700&display=swap";@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2)format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff)format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2)format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff)format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff)format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2)format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff)format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2)format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff)format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2)format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff)format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2)format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff)format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2)format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff)format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2)format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff)format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2)format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff)format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff)format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff)format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2)format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff)format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2)format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff)format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2)format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff)format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2)format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff)format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC)format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff)format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2)format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff)format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf)format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2)format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff)format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif;position:relative}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.18.7"}.katex .katex-mathml{clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.katex-newline{display:block}.katex .katex-base{white-space:nowrap;width:min-content;position:relative}.katex .katex-base,.katex .katex-strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .katex-vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .katex-thinbox{flex-direction:row;width:0;max-width:0;display:inline-flex}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline,.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-rule,.katex .katex-underline .underline-line,.katex .mfrac .frac-line{min-height:1px}.katex .mspace{display:inline-block}.katex .katex-smash{line-height:0;display:inline}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.katex-inner,.katex .llap>.katex-inner,.katex .rlap>.katex-inner{position:absolute}.katex .clap>.katex-fix,.katex .llap>.katex-fix,.katex .rlap>.katex-fix{display:inline-block}.katex .llap>.katex-inner{right:0}.katex .clap>.katex-inner,.katex .rlap>.katex-inner{left:0}.katex .clap>.katex-inner>span{margin-left:-50%;margin-right:50%}.katex .katex-rule{border:0 solid;display:inline-block;position:relative}.katex .katex-hline,.katex .katex-overline .overline-line,.katex .katex-underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .katex-hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.katex-root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .katex-sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .katex-sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .katex-sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .katex-sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .katex-sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .katex-sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .katex-sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .katex-sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .katex-sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .katex-sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .katex-sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .katex-sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .katex-sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .katex-sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .katex-sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .katex-sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .katex-sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .katex-sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .katex-sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .katex-sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .katex-sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .katex-sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .katex-sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .katex-sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .katex-sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .katex-sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .katex-sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .katex-sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .katex-sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .katex-sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .katex-sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .katex-sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .katex-sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .katex-sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .katex-sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .katex-sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .katex-sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .katex-sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .katex-sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .katex-sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .katex-sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .katex-sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .katex-sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .katex-sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .katex-sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .katex-sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .katex-sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .katex-sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .katex-sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .katex-sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .katex-sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .katex-sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .katex-sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .katex-sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .katex-sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .katex-sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .katex-sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .katex-sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .katex-sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .katex-sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .katex-sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .katex-sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .katex-sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .katex-sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .katex-sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .katex-sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .katex-sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .katex-sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .katex-sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .katex-sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .katex-sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .katex-sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .katex-sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .katex-sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .katex-sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .katex-sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .katex-sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .katex-sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .katex-sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .katex-sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .katex-sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .katex-sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .katex-sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .katex-sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .katex-sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .katex-sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .katex-sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .katex-sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .katex-sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .katex-sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .katex-sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .katex-sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .katex-sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .katex-sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .katex-sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .katex-sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .katex-sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .katex-sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .katex-sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .katex-sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .katex-sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .katex-sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .katex-sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .katex-sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .katex-sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .katex-sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .katex-sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .katex-sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .katex-sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .katex-sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .katex-sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .katex-sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .katex-sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .katex-sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .katex-sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .katex-sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .katex-sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .katex-sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .katex-sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .katex-sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .katex-sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .katex-accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .katex-accent .accent-body{position:relative}.katex .katex-accent .accent-body:not(.accent-full){width:0}.katex .katex-overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .katex-stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .katex-stretchy:after,.katex .katex-stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .katex-sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .reflectbox{display:inline-block;transform:scaleX(-1)}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.katex-tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.katex-tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}:root{--cbt-surface:#faf8ff;--cbt-surface-dim:#d2d9f4;--cbt-surface-bright:#faf8ff;--cbt-surface-container-lowest:#fff;--cbt-surface-container-low:#f2f3ff;--cbt-surface-container:#eaedff;--cbt-surface-container-high:#e2e7ff;--cbt-surface-container-highest:#dae2fd;--cbt-on-surface:#131b2e;--cbt-on-surface-variant:#3d4a42;--cbt-inverse-surface:#283044;--cbt-inverse-on-surface:#eef0ff;--cbt-outline:#6d7a72;--cbt-outline-variant:#bccac0;--cbt-primary:#006948;--cbt-on-primary:#fff;--cbt-primary-container:#00855d;--cbt-on-primary-container:#f5fff7;--cbt-inverse-primary:#68dba9;--cbt-secondary:#11629a;--cbt-on-secondary:#fff;--cbt-secondary-container:#82c1ff;--cbt-on-secondary-container:#004e7f;--cbt-tertiary:#8d4b00;--cbt-on-tertiary:#fff;--cbt-tertiary-container:#b15f00;--cbt-error:#ba1a1a;--cbt-on-error:#fff;--cbt-error-container:#ffdad6;--cbt-on-error-container:#93000a;--cbt-font-family:"Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--cbt-radius-sm:6px;--cbt-radius-md:10px;--cbt-radius-lg:16px;--cbt-radius-full:9999px;--cbt-shadow-sm:0 1px 2px #131b2e0d;--cbt-shadow-md:0 4px 6px -1px #131b2e14, 0 2px 4px -2px #131b2e0f;--cbt-shadow-lg:0 10px 15px -3px #131b2e1a, 0 4px 6px -4px #131b2e14}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--cbt-font-family);background-color:var(--cbt-surface);color:var(--cbt-on-surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.cbt-app-shell{flex-direction:column;min-height:100vh;display:flex}.cbt-navbar{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--cbt-surface-container-high);background-color:#faf8ffd9;position:sticky;top:0}.cbt-navbar-container{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.cbt-brand{align-items:center;gap:.75rem;display:flex}.cbt-brand-badge{background-color:var(--cbt-primary);color:var(--cbt-on-primary);border-radius:var(--cbt-radius-sm);letter-spacing:.05em;padding:.25rem .5rem;font-size:.8rem;font-weight:700}.cbt-brand-title{color:var(--cbt-on-surface);font-size:1.05rem;font-weight:700}.cbt-nav{align-items:center;gap:.35rem;display:flex}.cbt-nav-item{border-radius:var(--cbt-radius-sm);color:var(--cbt-on-surface-variant);align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out;display:inline-flex}.cbt-nav-item:hover{background-color:var(--cbt-surface-container);color:var(--cbt-primary)}.cbt-nav-item.active{background-color:var(--cbt-surface-container-high);color:var(--cbt-primary);font-weight:600}.cbt-main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.cbt-hero{text-align:center;max-width:800px;margin:1.5rem auto 3rem}.cbt-tag{background-color:var(--cbt-surface-container);color:var(--cbt-primary);border-radius:var(--cbt-radius-full);border:1px solid var(--cbt-surface-container-high);margin-bottom:1rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.cbt-hero-title{letter-spacing:-.025em;color:var(--cbt-on-surface);margin-bottom:1rem;font-size:2.5rem;font-weight:800;line-height:1.2}.cbt-hero-subtitle{color:var(--cbt-on-surface-variant);font-size:1.1rem;line-height:1.6}.cbt-backend-status-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md);max-width:620px;box-shadow:var(--cbt-shadow-sm);text-align:left;margin:2rem auto 0;overflow:hidden}.cbt-status-header{background-color:var(--cbt-surface-container-low);border-bottom:1px solid var(--cbt-surface-container-high);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.cbt-status-title{color:var(--cbt-on-surface);align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.cbt-btn-refresh{background:var(--cbt-surface-container);border-radius:var(--cbt-radius-sm);color:var(--cbt-on-surface-variant);align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;transition:background .15s;display:inline-flex}.cbt-btn-refresh:hover{background:var(--cbt-surface-container-high);color:var(--cbt-on-surface)}.cbt-status-body{padding:1rem;font-size:.875rem}.cbt-status-success{color:var(--cbt-primary);align-items:flex-start;gap:.75rem;display:flex}.cbt-icon-success{color:var(--cbt-primary-container);flex-shrink:0;margin-top:2px}.cbt-status-error{color:var(--cbt-error);align-items:flex-start;gap:.75rem;display:flex}.cbt-icon-error{color:var(--cbt-error);flex-shrink:0;margin-top:2px}.cbt-hint{color:var(--cbt-outline);margin-top:.25rem;font-size:.75rem}.cbt-spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.cbt-portals-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.cbt-card-portal{background-color:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-lg);box-shadow:var(--cbt-shadow-sm);flex-direction:column;padding:1.5rem;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex}.cbt-card-portal:hover{box-shadow:var(--cbt-shadow-md);border-color:var(--cbt-primary-container);transform:translateY(-3px)}.cbt-card-top{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.cbt-card-icon{border-radius:var(--cbt-radius-md);background-color:var(--cbt-surface-container);justify-content:center;align-items:center;width:44px;height:44px;display:flex}.cbt-pill{background-color:var(--cbt-surface-container);color:var(--cbt-on-surface-variant);border-radius:var(--cbt-radius-full);padding:.2rem .5rem;font-size:.7rem;font-weight:600}.cbt-card-title{color:var(--cbt-on-surface);margin-bottom:.5rem;font-size:1.15rem;font-weight:700}.cbt-card-desc{color:var(--cbt-on-surface-variant);flex:1;font-size:.875rem;line-height:1.5}.cbt-card-action{color:var(--cbt-primary);margin-top:1.25rem;font-size:.875rem;font-weight:600}.cbt-page-container{flex-direction:column;gap:1.5rem;display:flex}.cbt-page-header{border-bottom:1px solid var(--cbt-surface-container-high);justify-content:space-between;align-items:flex-start;padding-bottom:1rem;display:flex}.cbt-page-title{color:var(--cbt-on-surface);margin-top:.25rem;font-size:1.8rem;font-weight:700}.cbt-page-subtitle{color:var(--cbt-on-surface-variant);margin-top:.25rem;font-size:.95rem}.cbt-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.cbt-stat-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md);align-items:center;gap:1rem;padding:1.25rem;display:flex}.cbt-stat-icon{border-radius:var(--cbt-radius-sm);background:var(--cbt-surface-container);width:40px;height:40px;color:var(--cbt-primary);justify-content:center;align-items:center;display:flex}.cbt-stat-value{color:var(--cbt-on-surface);font-size:1.25rem;font-weight:700}.cbt-stat-label{color:var(--cbt-on-surface-variant);font-size:.75rem}.cbt-placeholder-box{background:var(--cbt-surface-container-lowest);border:1px dashed var(--cbt-outline-variant);border-radius:var(--cbt-radius-lg);text-align:center;color:var(--cbt-on-surface-variant);padding:2.5rem}.cbt-placeholder-box h3{color:var(--cbt-on-surface);margin-bottom:.5rem}.cbt-auth-wrapper{justify-content:center;align-items:center;min-height:80vh;padding:1rem;display:flex}.cbt-auth-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-lg);width:100%;max-width:420px;box-shadow:var(--cbt-shadow-md);padding:2rem}.cbt-auth-header{text-align:center;margin-bottom:1.5rem}.cbt-auth-header h2{margin-top:.75rem;font-size:1.35rem;font-weight:700}.cbt-auth-header p{color:var(--cbt-on-surface-variant);margin-top:.25rem;font-size:.85rem}.cbt-auth-form{flex-direction:column;gap:1rem;display:flex}.cbt-form-group{flex-direction:column;gap:.35rem;display:flex}.cbt-form-group label{color:var(--cbt-on-surface);font-size:.8rem;font-weight:600}.cbt-input-wrapper{align-items:center;display:flex;position:relative}.cbt-input-icon{color:var(--cbt-outline);pointer-events:none;position:absolute;left:.75rem}.cbt-input{border:1px solid var(--cbt-outline-variant);border-radius:var(--cbt-radius-sm);background-color:var(--cbt-surface-container-lowest);width:100%;color:var(--cbt-on-surface);outline:none;padding:.65rem .75rem .65rem 2.4rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.cbt-input:focus{border-color:var(--cbt-primary);box-shadow:0 0 0 3px #00694826}.cbt-btn-primary{background-color:var(--cbt-primary);color:var(--cbt-on-primary);border-radius:var(--cbt-radius-sm);justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.75rem;font-size:.9rem;font-weight:600;transition:background-color .15s;display:flex}.cbt-btn-primary:hover{background-color:var(--cbt-primary-container)}.cbt-auth-footer{text-align:center;margin-top:1.25rem;font-size:.85rem}.cbt-link{color:var(--cbt-primary);font-weight:600}.cbt-link:hover{text-decoration:underline}.cbt-footer{border-top:1px solid var(--cbt-surface-container-high);background:var(--cbt-surface-container-low);text-align:center;color:var(--cbt-on-surface-variant);margin-top:auto;padding:1.5rem;font-size:.8rem}@media (width<=768px){.cbt-navbar-container{flex-direction:column;align-items:stretch}.cbt-nav{padding-bottom:.25rem;overflow-x:auto}.cbt-hero-title{font-size:1.85rem}}.pricing-page-container{color:#1e293b;max-width:1200px;margin:0 auto;padding:3rem 1.5rem 5rem;font-family:inherit}.pricing-header{text-align:center;margin-bottom:3.5rem}.badge-pill{color:#3730a3;background:#e0e7ff;border-radius:9999px;margin-bottom:1.25rem;padding:.4rem 1rem;font-size:.875rem;font-weight:600;display:inline-block;box-shadow:0 2px 6px #3730a31a}.pricing-title{color:#0f172a;letter-spacing:-.02em;margin-bottom:1rem;font-size:2.5rem;font-weight:800;line-height:1.2}.pricing-subtitle{color:#475569;max-width:760px;margin:0 auto;font-size:1.1rem;line-height:1.6}.section-title-wrap{text-align:center;margin-bottom:2.5rem}.section-title-wrap h2{color:#0f172a;margin-bottom:.35rem;font-size:1.85rem;font-weight:700}.section-title-wrap p{color:#64748b;font-size:1rem}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:stretch;gap:2rem;margin-bottom:4rem;display:grid}.pricing-card{background:#fff;border:2px solid #e2e8f0;border-radius:1rem;flex-direction:column;justify-content:space-between;padding:2.25rem 1.75rem;transition:all .25s;display:flex;position:relative;box-shadow:0 4px 6px -1px #0000000d}.pricing-card:hover{border-color:#94a3b8;transform:translateY(-4px);box-shadow:0 12px 24px -4px #0000001a}.pricing-card.featured{background:linear-gradient(#fff 0%,#f8fafc 100%);border-color:#6366f1;box-shadow:0 10px 25px -3px #6366f133}.pricing-card.active-selected{border-color:#4f46e5;box-shadow:0 0 0 3px #6366f159}.popular-ribbon{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#6366f1;border-radius:9999px;padding:.3rem .85rem;font-size:.75rem;font-weight:700;position:absolute;top:-12px;right:24px;box-shadow:0 4px 8px #6366f159}.card-package-name{color:#1e293b;margin-bottom:.5rem;font-size:1.35rem;font-weight:700}.card-desc{color:#64748b;min-height:48px;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.price-tag{margin-bottom:1.75rem}.price-tag .amount{color:#0f172a;font-size:2rem;font-weight:800}.price-tag .period{color:#64748b;font-size:.95rem;font-weight:500}.card-specs{background:#f8fafc;border:1px solid #f1f5f9;border-radius:.75rem;margin-bottom:1.5rem;padding:1rem}.spec-item{color:#334155;align-items:center;gap:.6rem;margin-bottom:.4rem;font-size:.9rem;display:flex}.spec-item:last-child{margin-bottom:0}.card-features{margin-bottom:2rem}.card-features h4{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.85rem;font-size:.85rem}.card-features ul{margin:0;padding:0;list-style:none}.card-features li{color:#334155;align-items:center;gap:.65rem;margin-bottom:.6rem;font-size:.875rem;display:flex}.chk{color:#10b981;justify-content:center;align-items:center;width:18px;height:18px;font-size:.8rem;font-weight:700;display:inline-flex}.cross{color:#94a3b8;justify-content:center;align-items:center;width:18px;height:18px;font-size:.8rem;font-weight:700;display:inline-flex}.btn-pilih-paket{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.625rem;width:100%;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s}.btn-pilih-paket:hover{color:#0f172a;background:#e2e8f0}.btn-pilih-paket.btn-active{color:#fff;background:#4f46e5;border-color:#4f46e5;box-shadow:0 4px 10px #4f46e54d}.form-section{margin-top:2rem}.form-card{background:#fff;border:1px solid #e2e8f0;border-radius:1.25rem;padding:2.75rem 2.25rem;box-shadow:0 10px 30px -5px #0000000d}.form-header{border-bottom:1px solid #f1f5f9;margin-bottom:2rem;padding-bottom:1.25rem}.form-header h2{color:#0f172a;margin-bottom:.35rem;font-size:1.65rem;font-weight:700}.form-header p{color:#64748b;font-size:.95rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem;margin-bottom:2.5rem;display:grid}.column-title{color:#1e293b;border-bottom:2px solid #e0e7ff;margin-bottom:1.25rem;padding-bottom:.5rem;font-size:1.15rem;font-weight:700}.form-group{margin-bottom:1.25rem}.form-group input,.form-group select{color:#1e293b;box-sizing:border-box;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;width:100%;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#6366f1;outline:none;box-shadow:0 0 0 3px #6366f126}.input-group-domain{align-items:center;display:flex}.input-group-domain input{border-top-right-radius:0;border-bottom-right-radius:0;flex:1}.domain-suffix{color:#475569;background:#e2e8f0;border:1px solid #cbd5e1;border-left:none;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem;padding:.75rem .85rem;font-size:.9rem;font-weight:600}.help-text{color:#64748b;margin-top:.3rem;font-size:.75rem;display:block}.checkout-summary-box{color:#fff;background:#0f172a;border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem;display:flex}.summary-left{flex:1;min-width:260px}.summary-label{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-bottom:.25rem;font-size:.8rem}.summary-package-title{color:#38bdf8;margin-bottom:.35rem;font-size:1.35rem;font-weight:700}.summary-desc{color:#cbd5e1;font-size:.85rem}.summary-right{flex-direction:column;align-items:flex-end;gap:.75rem;min-width:260px;display:flex}.summary-price-label{color:#94a3b8;font-size:.8rem}.summary-total-amount{color:#fff;font-size:2rem;font-weight:800}.btn-submit-registration{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4f46e5 0%,#6366f1 100%);border:none;border-radius:.625rem;padding:.9rem 1.75rem;font-size:1rem;font-weight:700;transition:all .2s;box-shadow:0 4px 12px #4f46e559}.btn-submit-registration:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 18px #4f46e573}.btn-submit-registration:disabled{opacity:.6;cursor:not-allowed}.sukses-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172ab3;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.sukses-modal-card{text-align:center;background:#fff;border-radius:1.25rem;width:100%;max-width:580px;padding:2.5rem;animation:.3s ease-out modalPop;box-shadow:0 20px 40px -10px #0000004d}@keyframes modalPop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.sukses-badge{color:#166534;background:#dcfce7;border-radius:9999px;margin-bottom:1rem;padding:.35rem .95rem;font-size:.85rem;font-weight:700;display:inline-block}.sukses-modal-card h2{color:#0f172a;margin-bottom:.5rem;font-size:1.6rem;font-weight:800}.sukses-sub{color:#475569;margin-bottom:1.75rem;font-size:.95rem}.sukses-detail-box{text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.75rem;margin-bottom:1.5rem;padding:1.25rem}.detail-row{justify-content:space-between;margin-bottom:.65rem;font-size:.9rem;display:flex}.detail-row:last-child{margin-bottom:0}.detail-row .lbl{color:#64748b}.detail-row .val{color:#1e293b;font-weight:600}.detail-row .val.highlight{color:#4f46e5;font-weight:700}.detail-row .val.code-font{background:#e2e8f0;border-radius:.25rem;padding:.15rem .4rem;font-family:monospace}.admin-credential-info{color:#92400e;background:#fffbeb;border:1px solid #fef3c7;border-radius:.625rem;margin-bottom:1.75rem;padding:.85rem 1rem;font-size:.85rem}.admin-credential-info h4{margin-top:0;margin-bottom:.25rem;font-size:.9rem}.modal-actions{justify-content:center;gap:1rem;display:flex}.btn-modal-primary{color:#fff;background:#4f46e5;border-radius:.5rem;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;transition:background .2s}.btn-modal-primary:hover{background:#4338ca}.btn-modal-secondary{color:#475569;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:background .2s}.btn-modal-secondary:hover{background:#e2e8f0}.alert-box.error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:.5rem;margin-bottom:1.5rem;padding:.85rem 1rem;font-size:.9rem}.loading-state{text-align:center;color:#64748b;padding:3rem}.spinner{border:3px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;width:36px;height:36px;margin:0 auto 1rem;animation:.8s linear infinite spin}.landing-info-section{color:#475569;text-align:center;max-width:820px;margin:0 auto 32px;padding:0 16px;line-height:1.7}.landing-info-section p{margin:0 0 12px}.cbt-login-viewport{background-color:var(--cbt-surface,#faf8ff);min-height:100vh;font-family:var(--cbt-font-family,"Plus Jakarta Sans", sans-serif);flex-direction:column;justify-content:center;align-items:center;padding:1.5rem 1rem;display:flex}.cbt-login-container{flex-direction:column;gap:1.25rem;width:100%;max-width:440px;display:flex}.cbt-login-card{background:var(--cbt-surface-container-lowest,#fff);border:1px solid var(--cbt-outline-variant,#e2e8f0);border-radius:1.25rem;padding:2rem 1.75rem;transition:box-shadow .2s ease-in-out;box-shadow:0 10px 25px -5px #131b2e0d,0 8px 10px -6px #131b2e08}.cbt-login-header{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.cbt-login-brand-row{justify-content:space-between;align-items:center;display:flex}.cbt-login-logo-group{align-items:center;gap:.65rem;display:flex}.cbt-login-logo-icon{background:var(--cbt-primary,#004f35);color:#fff;border-radius:.75rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex;box-shadow:0 4px 10px #004f3533}.cbt-login-brand-name{color:var(--cbt-on-surface,#131b2e);font-size:1.15rem;font-weight:700;line-height:1.2}.cbt-login-brand-sub{color:var(--cbt-on-surface-variant,#747686);font-size:.75rem}.cbt-role-tag{text-transform:capitalize;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.cbt-role-tag.siswa{color:#1b5e20;background:#e8f5e9;border:1px solid #c8e6c9}.cbt-role-tag.pengawas{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd}.cbt-role-tag.editor{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.cbt-role-tag.admin{color:#6b21a8;background:#f3e8ff;border:1px solid #e9d5ff}.cbt-role-tag.superadmin{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.cbt-login-title{color:var(--cbt-on-surface,#131b2e);margin-top:.25rem;font-size:1.35rem;font-weight:700}.cbt-login-desc{color:var(--cbt-on-surface-variant,#747686);font-size:.875rem;line-height:1.4}.cbt-role-pills{background:var(--cbt-surface-container-low,#f2f3ff);border-radius:.75rem;gap:.25rem;margin-bottom:1.25rem;padding:.25rem;display:flex;overflow-x:auto}.cbt-role-pill-btn{min-width:68px;color:var(--cbt-on-surface-variant,#747686);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:.5rem;flex:1;justify-content:center;align-items:center;gap:.35rem;padding:.5rem .4rem;font-size:.75rem;font-weight:600;transition:all .15s ease-in-out;display:flex}.cbt-role-pill-btn:hover{color:var(--cbt-on-surface,#131b2e);background:#ffffff80}.cbt-role-pill-btn.active{color:var(--cbt-primary,#004f35);background:#fff;box-shadow:0 1px 3px #00000014}.cbt-login-form{flex-direction:column;gap:1.1rem;display:flex}.cbt-field-group{flex-direction:column;gap:.4rem;display:flex}.cbt-field-label{color:var(--cbt-on-surface,#131b2e);justify-content:space-between;align-items:center;font-size:.825rem;font-weight:600;display:flex}.cbt-field-input-box{align-items:center;display:flex;position:relative}.cbt-field-icon{color:var(--cbt-outline,#747686);pointer-events:none;position:absolute;left:.85rem}.cbt-field-input{width:100%;color:var(--cbt-on-surface,#131b2e);background:var(--cbt-surface-container-low,#f2f3ff);border:1px solid #0000;border-radius:.65rem;outline:none;padding:.75rem .85rem .75rem 2.6rem;font-family:inherit;font-size:.9rem;transition:all .15s ease-in-out}.cbt-field-input:focus{border-color:var(--cbt-primary,#004f35);background:#fff;box-shadow:0 0 0 3px #004f351f}.cbt-toggle-pwd-btn{color:var(--cbt-outline,#747686);cursor:pointer;background:0 0;border:none;border-radius:.4rem;justify-content:center;align-items:center;padding:.35rem;display:flex;position:absolute;right:.65rem}.cbt-toggle-pwd-btn:hover{color:var(--cbt-on-surface,#131b2e)}.cbt-alert{border-radius:.65rem;align-items:flex-start;gap:.65rem;padding:.75rem .85rem;font-size:.825rem;line-height:1.4;display:flex}.cbt-alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.cbt-alert-success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.cbt-form-options{justify-content:space-between;align-items:center;font-size:.825rem;display:flex}.cbt-checkbox-label{color:var(--cbt-on-surface-variant,#747686);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:flex}.cbt-checkbox{accent-color:var(--cbt-primary,#004f35);cursor:pointer}.cbt-help-link{color:var(--cbt-primary,#004f35);cursor:pointer;background:0 0;border:none;padding:0;font-size:.825rem;font-weight:600}.cbt-help-link:hover{text-decoration:underline}.cbt-login-submit-btn{background:var(--cbt-primary,#004f35);color:#fff;cursor:pointer;border:none;border-radius:.65rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.85rem 1rem;font-size:.95rem;font-weight:600;transition:all .15s ease-in-out;display:flex;box-shadow:0 4px 12px #004f3533}.cbt-login-submit-btn:hover:not(:disabled){background:#003a27;transform:translateY(-1px);box-shadow:0 6px 16px #004f3540}.cbt-login-submit-btn:active:not(:disabled){transform:translateY(0)}.cbt-login-submit-btn:disabled{opacity:.65;cursor:not-allowed}.cbt-login-meta{text-align:center;color:var(--cbt-outline,#747686);flex-direction:column;gap:.25rem;font-size:.775rem;display:flex}.cbt-home-back-link{color:var(--cbt-primary,#004f35);font-weight:600}.cbt-home-back-link:hover{text-decoration:underline}.cbt-modal-backdrop{z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#131b2e80;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.cbt-modal-dialog{background:#fff;border-radius:1rem;flex-direction:column;gap:1rem;width:100%;max-width:400px;padding:1.5rem;animation:.2s ease-out cbt-modal-in;display:flex;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes cbt-modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.cbt-modal-header{justify-content:space-between;align-items:center;display:flex}.cbt-modal-title-group{align-items:center;gap:.6rem;display:flex}.cbt-modal-icon{color:#1b5e20;background:#e8f5e9;border-radius:.5rem;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.cbt-modal-title{color:var(--cbt-on-surface,#131b2e);font-size:1.1rem;font-weight:700}.cbt-modal-close-btn{color:var(--cbt-outline,#747686);cursor:pointer;background:0 0;border:none;border-radius:.35rem;padding:.25rem}.cbt-modal-close-btn:hover{color:var(--cbt-on-surface,#131b2e)}.cbt-modal-body{color:var(--cbt-on-surface-variant,#747686);font-size:.85rem;line-height:1.5}.cbt-modal-desk-info{background:var(--cbt-surface-container-low,#f2f3ff);border-radius:.6rem;flex-direction:column;gap:.5rem;padding:.85rem;font-size:.825rem;display:flex}.cbt-desk-row{justify-content:space-between;align-items:center;display:flex}.cbt-desk-label{color:var(--cbt-on-surface-variant,#747686)}.cbt-desk-val{color:var(--cbt-on-surface,#131b2e);font-weight:600}.cbt-modal-close-action{background:var(--cbt-surface-container-high,#e2e7ff);width:100%;color:var(--cbt-on-surface,#131b2e);cursor:pointer;border:none;border-radius:.5rem;padding:.65rem;font-size:.875rem;font-weight:600;transition:background .15s}.cbt-modal-close-action:hover{background:#d2d9f4}.cbt-tenant-chip{color:#3730a3;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;align-items:center;gap:8px;padding:10px 14px;font-size:.875rem;display:flex}.cbt-tenant-chip-pusat{color:#334155;background:#f1f5f9;border-color:#cbd5e1}.cbt-tenant-chip-icon{flex-shrink:0}.cbt-tenant-chip strong{text-transform:uppercase;letter-spacing:.02em}.modal-editor-overlay{z-index:1000;background:#131b2e73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-editor-container{background:var(--cbt-surface-container-lowest,#fff);border-radius:var(--cbt-radius-lg,16px);width:100%;max-width:440px;max-height:90vh;box-shadow:var(--cbt-shadow-lg,0 10px 15px -3px #0000001a);overflow-y:auto}.modal-editor-header{border-bottom:1px solid var(--cbt-surface-container-high,#e2e7ff);justify-content:space-between;align-items:center;padding:1.1rem 1.25rem;display:flex}.modal-editor-header-title{color:var(--cbt-on-surface,#131b2e);align-items:center;gap:.6rem;font-size:1.05rem;font-weight:700;display:flex}.modal-editor-btn-close{color:var(--cbt-on-surface-variant,#3d4a42);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem;display:flex}.modal-editor-btn-close:hover{background:var(--cbt-surface-container-high,#e2e7ff)}.modal-editor-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.modal-editor-subtitle{color:var(--cbt-on-surface-variant,#3d4a42);margin:0;font-size:.85rem;line-height:1.45}.modal-editor-error{background:var(--cbt-error-container,#ffdad6);color:var(--cbt-on-error-container,#93000a);border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.5rem;padding:.6rem .85rem;font-size:.85rem;display:flex}.modal-editor-sukses-box{border-radius:var(--cbt-radius-md,12px);color:var(--cbt-on-surface,#131b2e);background:#00694814;align-items:flex-start;gap:.6rem;padding:.85rem 1rem;font-size:.85rem;line-height:1.45;display:flex}.modal-editor-sukses-box p{margin:0}.modal-editor-kredensial-box{background:var(--cbt-surface-container-low,#f2f3ff);border:1px dashed var(--cbt-outline-variant,#bccac0);border-radius:var(--cbt-radius-md,12px);flex-direction:column;gap:.5rem;padding:.85rem 1rem;display:flex}.kredensial-row{justify-content:space-between;align-items:center;display:flex}.kredensial-label{color:var(--cbt-on-surface-variant,#3d4a42);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem}.kredensial-value{color:var(--cbt-on-surface,#131b2e);font-family:JetBrains Mono,ui-monospace,monospace;font-size:.95rem;font-weight:700}.modal-editor-actions{justify-content:flex-end;gap:.6rem;margin-top:.25rem;display:flex}.modal-editor-body .form-group{flex-direction:column;gap:.4rem;display:flex}.modal-editor-body .form-group label{color:var(--cbt-on-surface-variant,#3d4a42);font-size:.82rem;font-weight:600}.modal-editor-body .form-control{border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-surface-container-high,#e2e7ff);background:var(--cbt-surface-container-low,#f2f3ff);width:100%;color:var(--cbt-on-surface,#131b2e);padding:.6rem .8rem;font-size:.9rem}.modal-editor-body .form-control:focus{border-color:var(--cbt-primary,#006948);background:var(--cbt-surface-container-lowest,#fff);outline:none}.modal-editor-body .btn-primary{background:var(--cbt-primary,#006948);color:var(--cbt-on-primary,#fff);border-radius:var(--cbt-radius-sm,8px);cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.6rem 1.1rem;font-size:.9rem;font-weight:600;display:inline-flex}.modal-editor-body .btn-primary:disabled{opacity:.6;cursor:not-allowed}.modal-editor-body .btn-outline{color:var(--cbt-on-surface-variant,#3d4a42);border:1px solid var(--cbt-outline-variant,#bccac0);border-radius:var(--cbt-radius-sm,8px);cursor:pointer;background:0 0;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.modal-editor-body .btn-outline:hover{background:var(--cbt-surface-container-high,#e2e7ff)}.cbt-admin-shell{background-color:var(--cbt-surface,#faf8ff);width:100vw;height:100vh;color:var(--cbt-on-surface,#131b2e);font-family:var(--cbt-font-family);display:flex;overflow:hidden}.cbt-admin-sidebar{background-color:var(--cbt-surface-container-lowest,#fff);border-right:1px solid var(--cbt-surface-container-high,#e2e8ff);z-index:40;-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;height:100vh;transition:width .22s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.cbt-admin-sidebar.expanded{width:260px}.cbt-admin-sidebar.collapsed{width:72px}.cbt-admin-sidebar-header{border-bottom:1px solid var(--cbt-surface-container-high,#e2e8ff);flex-shrink:0;align-items:center;gap:.75rem;height:64px;padding:0 1.25rem;display:flex}.cbt-admin-sidebar.collapsed .cbt-admin-sidebar-header{justify-content:center;padding:0}.cbt-admin-sidebar-brand{color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:flex;overflow:hidden}.cbt-admin-brand-badge{background-color:var(--cbt-primary,#006948);width:36px;height:36px;color:var(--cbt-on-primary,#fff);letter-spacing:.05em;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex;box-shadow:0 2px 6px #00694833}.cbt-admin-brand-info{flex-direction:column;line-height:1.25;display:flex;overflow:hidden}.cbt-admin-brand-title{color:var(--cbt-on-surface,#131b2e);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-weight:700;overflow:hidden}.cbt-admin-brand-subtitle{color:var(--cbt-on-surface-variant,#3d4a42);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:500;overflow:hidden}.cbt-admin-sidebar-nav{scrollbar-width:thin;scrollbar-color:var(--cbt-surface-container-high) transparent;flex-direction:column;flex:1;gap:.25rem;padding:1rem .65rem;display:flex;overflow:hidden auto}.cbt-admin-sidebar-nav::-webkit-scrollbar{width:5px}.cbt-admin-sidebar-nav::-webkit-scrollbar-thumb{background-color:var(--cbt-surface-container-high);border-radius:10px}.cbt-admin-nav-category{text-transform:uppercase;letter-spacing:.06em;color:var(--cbt-outline,#6d7a72);white-space:nowrap;padding:.75rem .65rem .25rem;font-size:.68rem;font-weight:700;overflow:hidden}.cbt-admin-nav-item{color:var(--cbt-on-surface-variant,#3d4a42);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:10px;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .15s;display:flex;position:relative}.cbt-admin-sidebar.collapsed .cbt-admin-nav-item{justify-content:center;padding:.65rem 0}.cbt-admin-nav-item:hover{background-color:var(--cbt-surface-container-low,#f2f3ff);color:var(--cbt-on-surface,#131b2e)}.cbt-admin-nav-item.active{background-color:var(--cbt-surface-container,#eaedff);color:var(--cbt-primary,#006948);font-weight:600}.cbt-admin-nav-item.active:before{content:"";background-color:var(--cbt-primary,#006948);border-radius:0 4px 4px 0;width:3.5px;position:absolute;top:6px;bottom:6px;left:0}.cbt-admin-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.cbt-admin-nav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cbt-admin-sidebar-footer{border-top:1px solid var(--cbt-surface-container-high,#e2e8ff);flex-direction:column;flex-shrink:0;gap:.5rem;padding:.75rem;display:flex}.cbt-admin-sidebar-badge-box{background:var(--cbt-surface-container-low,#f2f3ff);border:1px solid var(--cbt-surface-container-high,#e2e8ff);border-radius:10px;align-items:center;gap:.65rem;padding:.6rem .75rem;display:flex}.cbt-admin-sidebar.collapsed .cbt-admin-sidebar-badge-box{display:none}.cbt-admin-badge-icon{background-color:var(--cbt-surface-container,#eaedff);width:28px;height:28px;color:var(--cbt-primary,#006948);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cbt-admin-badge-content{flex-direction:column;line-height:1.25;display:flex;overflow:hidden}.cbt-admin-badge-title{color:var(--cbt-on-surface,#131b2e);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.cbt-admin-badge-sub{color:var(--cbt-on-surface-variant,#3d4a42);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.cbt-admin-collapse-btn{border:1px solid var(--cbt-surface-container-high,#e2e8ff);width:100%;color:var(--cbt-on-surface-variant,#3d4a42);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.cbt-admin-collapse-btn:hover{background:var(--cbt-surface-container-low,#f2f3ff);color:var(--cbt-on-surface,#131b2e)}.cbt-admin-main{background-color:var(--cbt-surface,#faf8ff);flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.cbt-admin-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--cbt-surface-container-high,#e2e8ff);z-index:30;background-color:#ffffffd9;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 1.75rem;display:flex}.cbt-admin-topbar-left{align-items:center;gap:1rem;display:flex}.cbt-admin-toggle-btn{border:1px solid var(--cbt-surface-container-high,#e2e8ff);background:var(--cbt-surface-container-lowest,#fff);width:38px;height:38px;color:var(--cbt-on-surface-variant,#3d4a42);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.cbt-admin-toggle-btn:hover{background-color:var(--cbt-surface-container-low,#f2f3ff);color:var(--cbt-on-surface,#131b2e)}.cbt-admin-breadcrumb{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.cbt-admin-breadcrumb-root{color:var(--cbt-on-surface-variant,#3d4a42);font-weight:500}.cbt-admin-breadcrumb-sep{color:var(--cbt-outline-variant,#bccac0)}.cbt-admin-breadcrumb-current{color:var(--cbt-on-surface,#131b2e);font-weight:600}.cbt-admin-topbar-right{align-items:center;gap:.85rem;display:flex}.cbt-admin-school-pill{background-color:var(--cbt-surface-container,#eaedff);color:var(--cbt-on-surface,#131b2e);border-radius:9999px;align-items:center;gap:.45rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.cbt-admin-role-pill{background-color:rgba(var(--cbt-primary-rgb,0, 105, 72), .1);color:var(--cbt-primary,#006948);border-radius:9999px;align-items:center;padding:.35rem .7rem;font-size:.8rem;font-weight:600;display:inline-flex}.cbt-admin-logout-btn{color:var(--cbt-error,#ba1a1a);border:1px solid var(--cbt-error-container,#ffdad6);cursor:pointer;background-color:#0000;border-radius:8px;align-items:center;gap:.45rem;padding:.42rem .85rem;font-size:.825rem;font-weight:600;transition:all .15s;display:inline-flex}.cbt-admin-logout-btn:hover{background-color:var(--cbt-error-container,#ffdad6);color:var(--cbt-on-error-container,#93000a)}.cbt-admin-workspace{scrollbar-width:thin;scrollbar-color:var(--cbt-surface-container-high) transparent;flex:1;padding:1.75rem;overflow:hidden auto}.cbt-admin-workspace::-webkit-scrollbar{width:6px}.cbt-admin-workspace::-webkit-scrollbar-thumb{background-color:var(--cbt-surface-container-high);border-radius:10px}.cbt-admin-canvas{background:var(--cbt-surface-container-lowest,#fff);border:1px solid var(--cbt-surface-container-high,#e2e8ff);border-radius:20px;max-width:1280px;margin:0 auto;padding:2rem;box-shadow:0 4px 20px #131b2e05}.cbt-admin-canvas-header{margin-bottom:1.5rem}.cbt-admin-canvas-title{color:var(--cbt-on-surface,#131b2e);letter-spacing:-.015em;margin-bottom:.35rem;font-size:1.65rem;font-weight:700}.cbt-admin-canvas-subtitle{color:var(--cbt-on-surface-variant,#3d4a42);font-size:.95rem;line-height:1.5}.cbt-admin-alert-banner{color:#065f46;background-color:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;align-items:center;gap:.65rem;margin-bottom:1.5rem;padding:.85rem 1.25rem;font-size:.9rem;font-weight:500;display:flex}.cbt-admin-cards-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:1.25rem;display:grid}.cbt-admin-module-card{background-color:var(--cbt-surface-container-lowest,#fff);border:1px solid var(--cbt-surface-container-high,#e2e8ff);border-radius:14px;flex-direction:column;justify-content:space-between;gap:1.25rem;padding:1.5rem;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex}.cbt-admin-module-card:hover{border-color:var(--cbt-primary-container,#00855d);transform:translateY(-3px);box-shadow:0 10px 24px -4px #131b2e14}.cbt-admin-card-head{align-items:flex-start;gap:.9rem;display:flex}.cbt-admin-card-icon{background-color:rgba(var(--cbt-primary-rgb,0, 105, 72), .08);width:44px;height:44px;color:var(--cbt-primary,#006948);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cbt-admin-card-info{flex-direction:column;gap:.35rem;display:flex}.cbt-admin-card-title{color:var(--cbt-on-surface,#131b2e);font-size:1.05rem;font-weight:700;line-height:1.3}.cbt-admin-card-desc{color:var(--cbt-on-surface-variant,#3d4a42);font-size:.85rem;line-height:1.45}.cbt-admin-card-action-btn{background-color:var(--cbt-primary,#006948);color:var(--cbt-on-primary,#fff);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;gap:.5rem;padding:.6rem 1.15rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-flex}.cbt-admin-card-action-btn:hover{opacity:.92}.cbt-admin-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.cbt-admin-metric-card{background:var(--cbt-surface-container-lowest,#fff);border:1px solid var(--cbt-surface-container-high,#e2e8ff);border-radius:12px;align-items:center;gap:.9rem;padding:1.1rem 1.25rem;display:flex;box-shadow:0 1px 3px #131b2e0a}.cbt-admin-metric-icon{background-color:rgba(var(--cbt-primary-rgb,0, 105, 72), .08);width:44px;height:44px;color:var(--cbt-primary,#006948);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cbt-admin-metric-info{flex-direction:column;display:flex}.cbt-admin-metric-value{color:var(--cbt-on-surface,#131b2e);font-size:1.45rem;font-weight:700;line-height:1.2}.cbt-admin-metric-label{color:var(--cbt-on-surface-variant,#3d4a42);font-size:.8rem;font-weight:500}.cbt-admin-mobile-backdrop{display:none}@media (width<=900px){.cbt-admin-canvas{border-radius:14px;padding:1.25rem}.cbt-admin-workspace{padding:1rem}.cbt-admin-topbar{padding:0 1rem}}@media (width<=768px){.cbt-admin-sidebar{position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 10px 30px #0003}.cbt-admin-sidebar.mobile-open{transform:translate(0);width:260px!important}.cbt-admin-mobile-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:39;background:#0006;display:block;position:fixed;inset:0}}.kalender-hari{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;padding:.75rem}.kalender-nav{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.9rem;display:flex}.kalender-nav-btn{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:30px;height:30px;font-size:1rem}.kalender-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.kalender-head{text-align:center;color:#64748b;padding:4px 0;font-size:.72rem;font-weight:700}.kalender-kosong{height:30px}.kalender-hari-btn{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;height:30px;font-size:.8rem}.kalender-hari-btn:hover{border-color:#006948}.kalender-hari-btn.aktif{color:#fff;background:#006948;border-color:#006948;font-weight:700}.kalender-dipilih{color:#475569;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-top:.6rem;font-size:.78rem;display:flex}.kalender-bersihkan{color:#dc2626;cursor:pointer;background:0 0;border:none;flex-shrink:0;font-size:.78rem;font-weight:600}.alokasi-container{flex-direction:column;gap:1.75rem;max-width:1200px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex}.alokasi-header{background:linear-gradient(135deg, var(--cbt-surface-container-lowest) 0%, var(--cbt-surface-container-low) 100%);border-radius:var(--cbt-radius-lg,16px);border:1px solid var(--cbt-surface-container-high);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.75rem;display:flex;box-shadow:0 4px 20px #131b2e0a}.alokasi-title-group h1{color:var(--cbt-on-surface);margin-top:.35rem;font-size:1.65rem;font-weight:700}.alokasi-title-group p{color:var(--cbt-on-surface-variant);margin-top:.25rem;font-size:.95rem}.alokasi-header-actions{flex-wrap:wrap;gap:.75rem;display:flex}.workflow-ribbon{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.workflow-step-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);align-items:center;gap:.85rem;padding:1rem 1.25rem;transition:all .2s;display:flex}.workflow-step-card.active{border-color:var(--cbt-primary);background:var(--cbt-surface-container-low);box-shadow:0 4px 12px #00694814}.step-number{background:var(--cbt-surface-container-high);width:32px;height:32px;color:var(--cbt-on-surface-variant);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.workflow-step-card.active .step-number{background:var(--cbt-primary);color:var(--cbt-on-primary)}.step-info .step-label{text-transform:uppercase;letter-spacing:.05em;color:var(--cbt-on-surface-variant);font-size:.75rem;font-weight:700}.step-info .step-title{color:var(--cbt-on-surface);font-size:.95rem;font-weight:600}.alokasi-controls-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=860px){.alokasi-controls-grid{grid-template-columns:1fr}}.control-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-lg,16px);flex-direction:column;gap:1rem;padding:1.5rem;display:flex;box-shadow:0 2px 10px #131b2e08}.control-card-header{justify-content:space-between;align-items:center;display:flex}.control-card-title{color:var(--cbt-on-surface);align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:var(--cbt-on-surface-variant);font-size:.85rem;font-weight:600}.form-control,.form-select{border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-surface-container-high);background:var(--cbt-surface-container-low);width:100%;color:var(--cbt-on-surface);padding:.65rem .85rem;font-size:.95rem;transition:border-color .2s}.form-control:focus,.form-select:focus{border-color:var(--cbt-primary);background:var(--cbt-surface-container-lowest);outline:none}.dropzone-box{border:2px dashed var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);text-align:center;background:var(--cbt-surface-container-low);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;transition:all .2s;display:flex}.dropzone-box:hover,.dropzone-box.dragover{border-color:var(--cbt-primary);background:#0069480a}.dropzone-icon{color:var(--cbt-primary)}.dropzone-text{color:var(--cbt-on-surface);font-size:.9rem;font-weight:600}.dropzone-subtext{color:var(--cbt-on-surface-variant);font-size:.8rem}.stats-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.stat-pill-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.stat-pill-icon{width:44px;height:44px;color:var(--cbt-primary);background:#0069481a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-pill-num{color:var(--cbt-on-surface);font-size:1.45rem;font-weight:700}.stat-pill-title{color:var(--cbt-on-surface-variant);font-size:.8rem;font-weight:500}.alokasi-tab-bar{border-bottom:2px solid var(--cbt-surface-container-high);gap:.5rem;padding-bottom:.25rem;display:flex}.tab-btn{color:var(--cbt-on-surface-variant);border-radius:var(--cbt-radius-sm,8px) var(--cbt-radius-sm,8px) 0 0;align-items:center;gap:.5rem;padding:.65rem 1.2rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.tab-btn:hover{color:var(--cbt-primary);background:var(--cbt-surface-container-low)}.tab-btn.active{color:var(--cbt-primary);border-bottom:3px solid var(--cbt-primary);background:var(--cbt-surface-container-lowest)}.filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 0;display:flex}.search-input-wrapper{min-width:260px;position:relative}.search-input-wrapper input{padding-left:2.2rem}.search-icon-pos{color:var(--cbt-outline);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.table-responsive-box{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);overflow-x:auto;box-shadow:0 2px 8px #131b2e05}.cbt-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.cbt-table th{background:var(--cbt-surface-container-low);color:var(--cbt-on-surface-variant);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--cbt-surface-container-high);white-space:nowrap;padding:.85rem 1rem;font-size:.82rem;font-weight:700}.cbt-table td{border-bottom:1px solid var(--cbt-surface-container-low);color:var(--cbt-on-surface);padding:.85rem 1rem}.cbt-table tbody tr:hover{background-color:var(--cbt-surface-container-low)}.credential-code{color:var(--cbt-primary);background:#00694814;border-radius:4px;padding:.2rem .5rem;font-family:JetBrains Mono,monospace,Consolas;font-size:.85rem;font-weight:700}.tag-pill{border-radius:20px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.tag-level-1{color:#0369a1;background:#e0f2fe}.tag-level-2{color:#b45309;background:#fef3c7}.tag-level-3{color:#be185d;background:#fce7f3}.tag-rumpun{background:var(--cbt-surface-container);color:var(--cbt-on-surface-variant)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#131b2e73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--cbt-surface-container-lowest);border-radius:var(--cbt-radius-lg,16px);flex-direction:column;gap:1.25rem;width:100%;max-width:520px;padding:1.75rem;display:flex;box-shadow:0 10px 40px #00000026}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:1.25rem;font-weight:700}.modal-footer{justify-content:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.btn-primary{background:linear-gradient(135deg, var(--cbt-primary) 0%, var(--cbt-primary-container) 100%);color:var(--cbt-on-primary);border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 8px #00694833}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 14px #0069484d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--cbt-surface-container-low);color:var(--cbt-on-surface);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-weight:600;transition:all .2s;display:flex}.btn-secondary:hover:not(:disabled){background:var(--cbt-surface-container)}.btn-outline{border:1px solid var(--cbt-primary);color:var(--cbt-primary);border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.4rem;padding:.55rem 1rem;font-weight:600;transition:all .2s;display:flex}.btn-outline:hover{background:#0069480f}.alert-box{border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.5rem;padding:.85rem 1rem;font-size:.9rem;display:flex}.alert-success{color:#1b5e20;background:#e8f5e9;border:1px solid #c8e6c9}.btn-ghost-back{cursor:pointer;color:var(--cbt-primary);background:0 0;border:none;align-self:flex-start;align-items:center;gap:.4rem;margin-bottom:.35rem;padding:.15rem 0;font-size:.85rem;font-weight:600;display:inline-flex}.periode-list-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;display:grid}.periode-card{flex-direction:column;gap:.5rem;transition:box-shadow .15s,transform .15s;display:flex}.periode-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #0069481a}.periode-card-top{justify-content:space-between;align-items:center;display:flex}.periode-card-icon{background:var(--cbt-surface-container-high);width:44px;height:44px;color:var(--cbt-primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.periode-status-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.periode-status-badge.aktif{color:#15803d;background:#dcfce7}.periode-status-badge.nonaktif{background:var(--cbt-surface-container-high);color:var(--cbt-on-surface-variant)}.periode-card-title{margin:.25rem 0 0;font-size:1.05rem;line-height:1.3}.periode-card-meta{color:var(--cbt-on-surface-variant);margin:0;font-size:.8rem}.periode-card-actions{gap:.5rem;margin-top:auto;padding-top:.5rem;display:flex}.periode-card-actions .btn-primary{flex:1;justify-content:center}.mode-kolom-kanan{flex-direction:column;align-self:start;gap:1.5rem;display:flex}.mode-kepala{align-items:center;gap:.75rem;font-size:.95rem;display:flex}.mode-status{color:var(--cbt-on-surface-variant);margin:0;font-size:.85rem}.mode-catatan{color:var(--cbt-on-surface-variant);margin:0;font-size:.78rem;line-height:1.4}.mode-pilihan-grid{gap:.75rem;display:grid}.mode-pilihan{text-align:left;border:1.5px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);background:var(--cbt-surface-container-lowest);cursor:pointer;flex-direction:column;gap:.2rem;padding:1rem 1.1rem;transition:border-color .15s,background .15s;display:flex}.mode-pilihan:hover:not(:disabled){border-color:var(--cbt-primary);background:#0069480d}.mode-pilihan:disabled{opacity:.5;cursor:not-allowed}.mode-pilihan-judul{color:var(--cbt-on-surface);font-size:.98rem;font-weight:700}.mode-pilihan-ket{color:var(--cbt-on-surface-variant);font-size:.8rem;line-height:1.4}.mode-panel{flex-direction:column;gap:1rem;display:flex}.mode-langkah{flex-direction:column;gap:.85rem;margin:0;padding:0;list-style:none;display:flex}.mode-langkah li{align-items:flex-start;gap:.7rem;font-size:.88rem;line-height:1.5;display:flex}.mode-langkah .no{background:var(--cbt-primary);width:1.5rem;height:1.5rem;color:var(--cbt-on-primary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex}.mode-berkas{color:var(--cbt-on-surface-variant);word-break:break-all;margin-top:.35rem;font-size:.8rem}.mode-jalankan{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mode-centang{cursor:pointer;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.mode-tautan-baris{flex-wrap:wrap;gap:.25rem 1rem;display:flex}.mode-tautan{color:var(--cbt-primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.35rem;padding:0;font-size:.8rem;display:inline-flex}.mode-tautan:hover{text-decoration:underline}.mode-kotak{border-radius:var(--cbt-radius-sm,8px);flex-direction:column;gap:.5rem;padding:.75rem .9rem;font-size:.83rem;line-height:1.45;display:flex}.mode-kotak-ok{background:var(--cbt-success-container,#dcfce7);color:var(--cbt-on-success-container,#166534)}.mode-kotak-galat{background:var(--cbt-error-container,#fee2e2);color:var(--cbt-on-error-container,#991b1b)}.mode-daftar-galat{max-height:11rem;margin:0;padding-left:1.1rem;overflow-y:auto}.indikator-proses{border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-primary);color:var(--cbt-on-surface);background:#0069480f;flex-direction:column;gap:.5rem;padding:.85rem 1rem;font-size:.85rem;display:flex}.indikator-proses-kepala{align-items:center;gap:.5rem;display:flex}.indikator-proses-waktu{font-variant-numeric:tabular-nums;color:var(--cbt-on-surface-variant);margin-left:auto}.indikator-proses-bar{background:var(--cbt-surface-container-high);border-radius:999px;height:4px;overflow:hidden}.indikator-proses-bar span{border-radius:inherit;background:var(--cbt-primary);width:35%;height:100%;animation:1.2s ease-in-out infinite indikator-geser;display:block}@keyframes indikator-geser{0%{transform:translate(-100%)}to{transform:translate(300%)}}.indikator-proses-ket{color:var(--cbt-on-surface-variant);font-size:.8rem;line-height:1.45}.indikator-proses-peringatan{color:var(--cbt-warning,#b45309)}@media (prefers-reduced-motion:reduce){.indikator-proses-bar span{opacity:.5;width:100%;animation:none}}.lihat-paket-container{flex-direction:column;gap:1.25rem;max-width:1100px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex}.btn-ghost-back{color:var(--cbt-primary,#006948);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.4rem;padding:.25rem 0;font-size:.9rem;font-weight:600;display:inline-flex}.btn-ghost-back:hover{text-decoration:underline}.lihat-paket-header{background:linear-gradient(135deg, var(--cbt-surface-container-lowest) 0%, var(--cbt-surface-container-low) 100%);border-radius:var(--cbt-radius-lg,16px);border:1px solid var(--cbt-surface-container-high);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem 1.75rem;display:flex}.lihat-paket-header h1{color:var(--cbt-on-surface);align-items:center;margin:0 0 .4rem;font-size:1.4rem;font-weight:700;display:flex}.lihat-paket-header p{color:var(--cbt-on-surface-variant);max-width:46ch;margin:0;font-size:.9rem}.lihat-paket-periode-select{flex-direction:column;gap:.35rem;min-width:240px;display:flex}.lihat-paket-periode-select label{color:var(--cbt-on-surface-variant);font-size:.8rem;font-weight:600}.form-select{border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-surface-container-high);background:var(--cbt-surface-container-lowest);color:var(--cbt-on-surface);padding:.6rem .85rem;font-size:.9rem}.lihat-paket-alert-error{background:var(--cbt-error-container,#ffdad6);color:var(--cbt-on-error-container,#93000a);border-radius:var(--cbt-radius-sm,8px);padding:.75rem 1rem;font-size:.88rem}.lihat-paket-loading{color:var(--cbt-on-surface-variant);font-size:.9rem}.lihat-paket-empty{color:var(--cbt-on-surface-variant);background:var(--cbt-surface-container-lowest);border:1px dashed var(--cbt-surface-container-high);border-radius:var(--cbt-radius-lg,16px);flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1rem;display:flex}.lihat-paket-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.lihat-paket-card{background:var(--cbt-surface-container-lowest);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-lg,16px);box-shadow:var(--cbt-shadow-sm);flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.lihat-paket-card-top{flex-wrap:wrap;gap:.4rem;display:flex}.lihat-paket-status{text-transform:uppercase;letter-spacing:.03em;border-radius:var(--cbt-radius-full,9999px);padding:.2rem .55rem;font-size:.72rem;font-weight:700}.lihat-paket-status.aktif{color:var(--cbt-primary,#006948);background:#0069481f}.lihat-paket-status.nonaktif{background:var(--cbt-surface-container-high);color:var(--cbt-on-surface-variant)}.lihat-paket-status.rilis{color:var(--cbt-secondary,#11629a);background:#11629a1f}.lihat-paket-card h3{color:var(--cbt-on-surface);margin:.15rem 0 0;font-size:1.05rem;font-weight:700}.lihat-paket-mapel{color:var(--cbt-on-surface-variant);margin:0;font-size:.85rem}.lihat-paket-meta-row{color:var(--cbt-on-surface-variant);align-items:center;gap:.4rem;font-size:.82rem;display:flex}.lihat-paket-dibuat-oleh{border-top:1px dashed var(--cbt-surface-container-high);color:var(--cbt-on-surface-variant);margin-top:.4rem;padding-top:.5rem;font-size:.8rem}.lihat-paket-dibuat-oleh strong{color:var(--cbt-on-surface)}.branding-container{background-color:var(--cbt-surface,#faf8ff);max-width:1200px;min-height:100vh;color:var(--cbt-on-surface,#131b2e);flex-direction:column;gap:1.25rem;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex}.branding-btn-back{color:var(--cbt-primary,#006948);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:.4rem;padding:.25rem 0;font-size:.9rem;font-weight:600;display:inline-flex}.branding-btn-back:hover{text-decoration:underline}.branding-header-title h1{color:var(--cbt-on-surface);letter-spacing:-.01em;margin:0 0 .35rem;font-size:1.5rem;font-weight:700}.branding-header-title p{color:var(--cbt-on-surface-variant);max-width:60ch;margin:0;font-size:.9rem}.branding-toast-success{color:var(--cbt-primary,#006948);border-radius:var(--cbt-radius-sm,8px);background:#0069481a;border:1px solid #00694840;align-items:center;gap:.5rem;padding:.7rem 1rem;font-size:.88rem;font-weight:500;display:flex}.branding-toast-error{background:var(--cbt-error-container,#ffdad6);color:var(--cbt-on-error-container,#93000a);border-radius:var(--cbt-radius-sm,8px);align-items:center;gap:.5rem;padding:.7rem 1rem;font-size:.88rem;font-weight:500;display:flex}.branding-grid{grid-template-columns:1.15fr .85fr;align-items:start;gap:1.25rem;display:grid}@media (width<=1024px){.branding-grid{grid-template-columns:1fr}}.branding-col{flex-direction:column;gap:1.25rem;display:flex}.branding-card{background:var(--cbt-surface-container-lowest,#fff);border:1px solid var(--cbt-surface-container-high,#e2e7ff);border-radius:var(--cbt-radius-lg,16px);box-shadow:var(--cbt-shadow-sm);flex-direction:column;gap:1.1rem;padding:1.5rem;display:flex}.branding-section-head{align-items:flex-start;gap:.7rem;display:flex}.branding-icon-badge{border-radius:var(--cbt-radius-sm,8px);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.branding-icon-badge.tone-primer{color:var(--cbt-primary,#006948);background:#0069481f}.branding-icon-badge.tone-tema{color:#a855f7;background:#a855f71f}.branding-icon-badge.tone-kop{color:#d97706;background:#d977061f}.branding-icon-badge.tone-preview{color:var(--cbt-primary,#006948);background:#0069481f}.branding-icon-badge.tone-bantuan{color:#dc2626;background:#dc26261a}.branding-section-title{color:var(--cbt-on-surface);margin:0;font-size:1.02rem;font-weight:700}.branding-section-subtitle{color:var(--cbt-on-surface-variant);margin:.15rem 0 0;font-size:.8rem}.branding-form-group{flex-direction:column;gap:.4rem;display:flex}.branding-form-group label{text-transform:uppercase;letter-spacing:.04em;color:var(--cbt-on-surface-variant);font-size:.72rem;font-weight:700}.branding-input,.branding-textarea{background:var(--cbt-surface-container-low,#f2f3ff);border:1px solid var(--cbt-surface-container-high,#e2e7ff);border-radius:var(--cbt-radius-sm,8px);color:var(--cbt-on-surface);padding:.65rem .85rem;font-size:.9rem;transition:border-color .2s}.branding-input:focus,.branding-textarea:focus{border-color:var(--cbt-primary,#006948);background:var(--cbt-surface-container-lowest);outline:none}.branding-textarea{resize:vertical;min-height:85px;font-family:inherit}.branding-dropzone{border:2px dashed var(--cbt-surface-container-high,#e2e7ff);border-radius:var(--cbt-radius-md,12px);text-align:center;background:var(--cbt-surface-container-low,#f2f3ff);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;padding:1.5rem;transition:all .2s;display:flex;position:relative}.branding-dropzone:hover,.branding-dropzone.dragover{border-color:var(--cbt-primary,#006948);background:#0069480a}.branding-dropzone input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.branding-dropzone-icon{color:var(--cbt-primary,#006948)}.branding-dropzone-text{color:var(--cbt-primary,#006948);font-size:.85rem;font-weight:600}.branding-dropzone-subtext{color:var(--cbt-on-surface-variant);font-size:.75rem}.branding-logo-preview{background:var(--cbt-surface-container-low,#f2f3ff);border:1px solid var(--cbt-surface-container-high);border-radius:var(--cbt-radius-md,12px);align-items:center;gap:.85rem;padding:.75rem 1rem;display:flex}.branding-logo-preview img{object-fit:contain;border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-surface-container-high);background:#fff;width:48px;height:48px}.branding-logo-preview-name{color:var(--cbt-on-surface-variant);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.branding-logo-remove{color:var(--cbt-error,#ba1a1a);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.3rem;display:flex}.branding-logo-remove:hover{background:var(--cbt-error-container,#ffdad6)}.branding-color-row{align-items:center;gap:.6rem;display:flex}.branding-color-swatch-wrapper{border-radius:var(--cbt-radius-sm,8px);border:2px solid var(--cbt-surface-container-high,#e2e7ff);cursor:pointer;flex-shrink:0;width:40px;height:40px;position:relative;overflow:hidden}.branding-color-swatch-wrapper input[type=color]{cursor:pointer;border:none;width:calc(100% + 8px);height:calc(100% + 8px);position:absolute;inset:-4px}.branding-color-hex-input{border-radius:var(--cbt-radius-sm,8px);border:1px solid var(--cbt-surface-container-high,#e2e7ff);background:var(--cbt-surface-container-low,#f2f3ff);color:var(--cbt-on-surface);text-transform:uppercase;flex:1;padding:.55rem .75rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.9rem;font-weight:700}.branding-color-hex-input:focus{border-color:var(--cbt-primary,#006948);outline:none}.btn-save-branding{background:var(--cbt-primary,#006948);color:var(--cbt-on-primary,#fff);border-radius:var(--cbt-radius-sm,8px);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;transition:all .2s;display:flex}.btn-save-branding:hover:not(:disabled){opacity:.92}.btn-save-branding:disabled{opacity:.55;cursor:not-allowed}.preview-card-container{color:#0f172a;border-radius:var(--cbt-radius-md,12px);box-shadow:var(--cbt-shadow-md);border:1px solid var(--cbt-surface-container-high);background:#fff;overflow:hidden}.preview-card-header{color:#fff;align-items:center;gap:.85rem;padding:1rem 1.25rem;display:flex}.preview-logo-box{border-radius:var(--cbt-radius-sm,8px);background:#fff3;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.35rem;display:flex;overflow:hidden}.preview-logo-box img{object-fit:contain;width:100%;height:100%}.preview-school-title{margin:0;font-size:.98rem;font-weight:700;line-height:1.2}.preview-card-title{opacity:.9;letter-spacing:.04em;text-transform:uppercase;margin:2px 0 0;font-size:.72rem}.preview-card-body{flex-direction:column;gap:.85rem;padding:1.1rem 1.25rem 1.25rem;display:flex}.preview-row-full .preview-label{margin-bottom:.15rem;display:block}.preview-row-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.preview-label{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:.68rem;font-weight:600}.preview-value{color:#1e293b;margin-top:.1rem;font-size:.92rem;font-weight:700;display:block}.preview-badge-pin{color:var(--cbt-primary,#006948);letter-spacing:.08em;background:#0069481a;border-radius:6px;margin-top:.15rem;padding:.15rem .5rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.95rem;font-weight:700;display:inline-block}.preview-divider{border:none;border-top:1px dashed #e2e8f0;margin:.15rem 0}.preview-barcode-caption{color:#94a3b8;text-align:center;margin:0 0 .35rem;font-size:.68rem;font-style:italic}.preview-barcode{justify-content:center;align-items:stretch;gap:2px;height:34px;display:flex}.preview-barcode span{background:#1e293b;display:block}.branding-helpdesk-box{background:var(--cbt-tertiary-container,#fef3c7);border-left:4px solid var(--cbt-tertiary,#d97706);border-radius:var(--cbt-radius-sm,8px);padding:.9rem 1.1rem;font-size:.85rem}.branding-helpdesk-title{color:#92400e;margin:0 0 .25rem;font-weight:700}.branding-helpdesk-text{color:#78350f;margin:0;line-height:1.4}.audit-page-container{color:#f1f5f9;background-color:#0b1320;min-height:100vh;padding:24px 32px;font-family:Inter,system-ui,-apple-system,sans-serif}.audit-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:20px;display:flex}.audit-header-title h1{color:#fff;letter-spacing:-.02em;align-items:center;gap:10px;margin:0 0 6px;font-size:1.65rem;font-weight:700;display:flex}.audit-shield-icon{color:#10b981}.audit-header-title p{color:#94a3b8;margin:0;font-size:.9rem}.audit-header-actions{gap:12px;display:flex}.audit-btn-back{color:#cbd5e1;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.audit-btn-back:hover{color:#fff;background:#ffffff1f}.audit-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:28px;display:grid}.audit-stat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1e293b99;border:1px solid #ffffff12;border-radius:12px;flex-direction:column;gap:6px;padding:18px 20px;transition:transform .2s,border-color .2s;display:flex}.audit-stat-card:hover{border-color:#ffffff26;transform:translateY(-2px)}.audit-stat-card.integrity{border-left:4px solid #10b981}.audit-stat-card.flagged{border-left:4px solid #f59e0b}.audit-stat-card.confirmed{border-left:4px solid #ef4444}.audit-stat-card.revoked{border-left:4px solid #8b5cf6}.audit-stat-label{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;font-size:.8rem;font-weight:600}.audit-stat-value{color:#fff;font-size:1.75rem;font-weight:700}.audit-stat-subtext{color:#64748b;font-size:.75rem}.audit-filter-bar{background:#0f172abf;border:1px solid #ffffff14;border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;padding:14px 18px;display:flex}.audit-search-input{color:#f1f5f9;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;flex:1;min-width:220px;padding:8px 14px;font-size:.875rem}.audit-search-input:focus{background:#ffffff14;border-color:#10b981;outline:none}.audit-select{color:#f1f5f9;cursor:pointer;background:#1e293b;border:1px solid #ffffff1f;border-radius:6px;padding:8px 12px;font-size:.875rem}.audit-filter-checkbox{color:#cbd5e1;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.85rem;display:flex}.audit-filter-checkbox input{accent-color:#f59e0b;cursor:pointer}.audit-table-card{background:#1e293b80;border:1px solid #ffffff14;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000004d}.audit-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.audit-table th{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;background:#0f172acc;border-bottom:1px solid #ffffff14;padding:14px 18px;font-size:.75rem;font-weight:600}.audit-table td{vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:14px 18px}.audit-table tr:hover{background:#ffffff05}.audit-table tr.flagged-row{background:#f59e0b08}.audit-table tr.flagged-row:hover{background:#f59e0b12}.student-info-cell{flex-direction:column;display:flex}.student-name{color:#fff;font-weight:600}.student-username{color:#64748b;font-size:.75rem}.badge-severity{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-severity.berat{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.badge-severity.sedang{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.badge-severity.ringan{color:#60a5fa;background:#3b82f626;border:1px solid #3b82f64d}.badge-severity.clean{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge-review{border-radius:6px;align-items:center;padding:4px 9px;font-size:.75rem;font-weight:500;display:inline-flex}.badge-review.belum_direview{color:#94a3b8;background:#94a3b81f}.badge-review.terkonfirmasi_curang{color:#fca5a5;background:#ef444433}.badge-review.valid_bersih{color:#6ee7b7;background:#10b98133}.badge-review.anulir_nilai{color:#c4b5fd;background:#8b5cf633}.audit-btn-detail{color:#10b981;cursor:pointer;background:#10b98126;border:1px solid #10b9814d;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .2s}.audit-btn-detail:hover{color:#0b1320;background:#10b981}.audit-modal-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.audit-modal-content{background:#0f172a;border:1px solid #ffffff26;border-radius:16px;flex-direction:column;width:100%;max-width:820px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #0009}.audit-modal-header{background:#1e293b;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.audit-modal-header h2{color:#fff;margin:0;font-size:1.25rem;font-weight:700}.audit-btn-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1}.audit-btn-close:hover{color:#fff}.audit-modal-body{flex-direction:column;gap:22px;padding:24px;display:flex;overflow-y:auto}.timeline-section h3{color:#cbd5e1;text-transform:uppercase;letter-spacing:.04em;margin:0 0 14px;font-size:.95rem}.timeline-list{border-left:2px solid #ffffff1a;flex-direction:column;gap:12px;padding-left:18px;display:flex;position:relative}.timeline-item{background:#1e293bb3;border:1px solid #ffffff14;border-radius:8px;padding:12px 16px;position:relative}.timeline-dot{background:#f59e0b;border:2px solid #0f172a;border-radius:50%;width:10px;height:10px;position:absolute;top:14px;left:-24px}.timeline-dot.berat{background:#ef4444}.timeline-dot.sedang{background:#f59e0b}.timeline-dot.ringan{background:#3b82f6}.timeline-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.timeline-title{color:#f8fafc;font-size:.9rem;font-weight:600}.timeline-time{color:#64748b;font-size:.75rem}.timeline-desc{color:#94a3b8;margin:0;font-size:.825rem}.audit-action-section{background:#0f172ae6;border:1px solid #ffffff1a;border-radius:10px;padding:16px 20px}.audit-action-section h3{color:#f1f5f9;margin:0 0 12px;font-size:.95rem}.audit-action-buttons{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.btn-action-choice{cursor:pointer;color:#cbd5e1;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;flex:1;padding:8px 12px;font-size:.8rem;font-weight:600;transition:all .2s}.btn-action-choice.active.valid{color:#34d399;background:#10b98140;border-color:#10b981}.btn-action-choice.active.cheat{color:#f87171;background:#ef444440;border-color:#ef4444}.btn-action-choice.active.revoke{color:#c4b5fd;background:#8b5cf640;border-color:#8b5cf6}.audit-notes-input{color:#f1f5f9;box-sizing:border-box;background:#0000004d;border:1px solid #ffffff1f;border-radius:6px;width:100%;min-height:70px;margin-bottom:12px;padding:10px 12px;font-size:.85rem}.audit-notes-input:focus{border-color:#10b981;outline:none}.audit-modal-footer{background:#1e293b;border-top:1px solid #ffffff14;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.btn-submit-action{color:#0b1320;cursor:pointer;background:#10b981;border:none;border-radius:8px;padding:10px 22px;font-size:.875rem;font-weight:600;transition:background .2s}.btn-submit-action:hover:not(:disabled){background:#059669}.btn-submit-action:disabled{opacity:.5;cursor:not-allowed}.control-panel-page{color:#1e293b;max-width:1280px;margin:0 auto;padding:2rem 1.5rem 4rem;font-family:inherit}.panel-top-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.ops-badge{color:#38bdf8;letter-spacing:.05em;background:#0f172a;border-radius:9999px;margin-bottom:.5rem;padding:.35rem .85rem;font-size:.8rem;font-weight:700;display:inline-block}.panel-heading{color:#0f172a;margin:0 0 .35rem;font-size:2rem;font-weight:800}.panel-subheading{color:#64748b;max-width:780px;margin:0;font-size:.95rem;line-height:1.5}.btn-refresh{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;padding:.65rem 1.15rem;font-size:.875rem;font-weight:600;transition:all .2s}.btn-refresh:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.node-live-card{background:#fff;border:2px solid #e2e8f0;border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;padding:1.75rem 2rem;display:flex;box-shadow:0 4px 12px #0000000d}.node-live-card.status-running{background:linear-gradient(#fff 0%,#f0fdf4 100%);border-color:#10b981}.node-live-card.status-stopped{background:linear-gradient(#fff 0%,#fef2f2 100%);border-color:#ef4444}.node-status-indicator{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.status-dot{background:#94a3b8;border-radius:50%;width:10px;height:10px}.status-dot.running{background:#10b981;box-shadow:0 0 8px #10b981}.status-dot.stopped{background:#ef4444}.node-status-text{color:#334155;font-size:.85rem;font-weight:700}.node-title{color:#0f172a;margin:0 0 .75rem;font-size:1.6rem;font-weight:800}.node-specs-badges{flex-wrap:wrap;gap:.5rem;display:flex}.spec-badge{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;padding:.25rem .65rem;font-size:.8rem;font-weight:600}.spec-badge.highlight{color:#3730a3;background:#e0e7ff;border-color:#c7d2fe}.node-card-actions{flex-wrap:wrap;gap:.75rem;display:flex}.btn-action{cursor:pointer;border:none;border-radius:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s}.btn-power-on{color:#fff;background:#10b981}.btn-power-on:hover:not(:disabled){background:#059669}.btn-power-off{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.btn-power-off:hover:not(:disabled){background:#fecaca}.btn-resize{color:#fff;background:#3b82f6}.btn-resize:hover:not(:disabled){background:#2563eb}.btn-override{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.btn-override.active-override{color:#92400e;background:#fef3c7;border-color:#fde68a;font-weight:700}.kpi-grid-panel{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2.5rem;display:grid}.kpi-box{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.35rem 1.5rem;box-shadow:0 2px 4px #00000005}.kpi-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.4rem;font-size:.8rem;font-weight:600}.kpi-value{color:#0f172a;margin-bottom:.35rem;font-size:1.85rem;font-weight:800}.kpi-value.highlight{color:#2563eb}.kpi-unit{color:#64748b;font-size:.95rem;font-weight:500}.kpi-foot{color:#94a3b8;font-size:.775rem}.panel-tab-bar{border-bottom:2px solid #e2e8f0;gap:.5rem;margin-bottom:2rem;display:flex}.tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .2s}.tab-btn.tab-active{color:#2563eb;border-bottom-color:#2563eb}.jadwal-section-grid{grid-template-columns:1fr 1.6fr;gap:2rem;display:grid}@media (width<=900px){.jadwal-section-grid{grid-template-columns:1fr}}.jadwal-form-card,.jadwal-list-card,.card-pane{background:#fff;border:1px solid #e2e8f0;border-radius:.875rem;padding:1.75rem;box-shadow:0 2px 6px #00000008}.jadwal-form-card h3,.jadwal-list-card h3,.card-pane h3{color:#0f172a;margin:0 0 .35rem;font-size:1.25rem;font-weight:700}.form-subtext,.pane-desc{color:#64748b;margin-bottom:1.5rem;font-size:.85rem}.form-group-p{margin-bottom:1.15rem}.form-group-p label{color:#334155;margin-bottom:.35rem;font-size:.85rem;font-weight:600;display:block}.form-group-p input,.form-group-p select{color:#1e293b;box-sizing:border-box;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;width:100%;padding:.65rem .85rem;font-size:.9rem}.btn-primary-p{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.5rem;width:100%;padding:.75rem;font-size:.9rem;font-weight:700}.btn-primary-p:hover:not(:disabled){background:#1d4ed8}.table-wrapper{overflow-x:auto}.panel-table{border-collapse:collapse;width:100%;font-size:.875rem}.panel-table th{text-align:left;color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.75rem 1rem;font-weight:600}.panel-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:.85rem 1rem}.badge-preset{color:#334155;background:#f1f5f9;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.status-pill{border-radius:9999px;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.status-pill.active{color:#166534;background:#dcfce7}.status-pill.inactive{color:#64748b;background:#f1f5f9}.tenant-tag{color:#3730a3;background:#e0e7ff;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.lock-tag{border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.lock-tag.locked{color:#991b1b;background:#fef2f2}.lock-tag.final{color:#065f46;background:#ecfdf5}.checksum-code{background:#f1f5f9;border-radius:.25rem;padding:.15rem .35rem;font-family:monospace;font-size:.8rem}.action-badge{background:#f1f5f9;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.action-badge.resize{color:#1e40af;background:#dbeafe}.action-badge.start{color:#166534;background:#dcfce7}.action-badge.stop{color:#991b1b;background:#fee2e2}.status-success{color:#16a34a;font-weight:600}.empty-cell{text-align:center;color:#94a3b8;padding:2.5rem}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172ab3;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-dialog{background:#fff;border-radius:1rem;width:100%;max-width:600px;padding:2.25rem;box-shadow:0 20px 40px -10px #0000004d}.modal-dialog h3{color:#0f172a;margin:0 0 .35rem;font-size:1.4rem;font-weight:800}.modal-sub{color:#64748b;margin:0 0 1.5rem;font-size:.875rem}.preset-options{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.preset-card{cursor:pointer;border:1px solid #cbd5e1;border-radius:.625rem;align-items:center;gap:1rem;padding:.85rem 1.15rem;transition:all .2s;display:flex}.preset-card:hover{background:#f8fafc;border-color:#94a3b8}.preset-card.selected{background:#eff6ff;border-color:#2563eb}.preset-name{color:#1e293b;font-size:.95rem;font-weight:700}.preset-detail{color:#64748b;font-size:.8rem}.modal-actions-bar{justify-content:flex-end;gap:.75rem;margin-top:1.75rem;display:flex}.btn-cancel{color:#475569;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.5rem;padding:.65rem 1.25rem;font-weight:600}.btn-confirm-resize{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.5rem;padding:.65rem 1.35rem;font-weight:700}.btn-confirm-resize:hover:not(:disabled){background:#1d4ed8}.cbt-alert{border-radius:.5rem;margin-bottom:1.5rem;padding:.85rem 1.25rem;font-size:.9rem}.cbt-alert.error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.cbt-alert.success{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.telegram-grid{grid-template-columns:1fr 1.3fr;gap:1.5rem;display:grid}@media (width<=900px){.telegram-grid{grid-template-columns:1fr}}.telegram-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.5rem;box-shadow:0 1px 3px #0000000d}.card-header-icon{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.icon-badge{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;padding:.5rem;font-size:2.2rem}.card-header-icon h3{color:#0f172a;margin:0;font-size:1.25rem}.card-subtext{color:#64748b;margin:.25rem 0 0;font-size:.85rem}.tg-meta-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.tg-meta-row{justify-content:space-between;font-size:.85rem;display:flex}.tg-label{color:#64748b;font-weight:500}.tg-val.highlight{color:#0284c7;font-weight:700}.tg-val.code-font{background:#e2e8f0;border-radius:.25rem;padding:.15rem .4rem;font-family:monospace;font-size:.75rem}.tg-val.badge-secure{color:#166534;background:#dcfce7;border-radius:.25rem;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.quick-actions-section h4{color:#1e293b;margin:0 0 .75rem;font-size:.95rem}.chip-container{flex-wrap:wrap;gap:.5rem;display:flex}.chip-btn{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.375rem;padding:.4rem .75rem;font-family:monospace;font-size:.82rem;font-weight:600;transition:all .2s}.chip-btn:hover:not(:disabled){color:#fff;background:#0284c7;border-color:#0284c7}.telegram-terminal-card{background:#090d16;border:1px solid #1e293b;border-radius:.75rem;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 25px #0006}.terminal-header{background:#0f172a;border-bottom:1px solid #1e293b;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.terminal-dots{gap:.35rem;display:flex}.dot{border-radius:50%;width:10px;height:10px}.dot.red{background:#ef4444}.dot.yellow{background:#f59e0b}.dot.green{background:#10b981}.terminal-title{color:#94a3b8;flex:1;font-family:monospace;font-size:.8rem}.terminal-chat-id{color:#64748b;align-items:center;gap:.4rem;font-family:monospace;font-size:.75rem;display:flex}.chat-id-input{color:#38bdf8;background:#1e293b;border:1px solid #334155;border-radius:.25rem;width:90px;padding:.2rem .4rem;font-size:.75rem}.terminal-body{background:#090d16;flex-direction:column;gap:.75rem;min-height:280px;max-height:380px;padding:1rem;display:flex;overflow-y:auto}.terminal-msg{border-radius:.5rem;padding:.65rem .85rem;font-size:.82rem;line-height:1.4}.terminal-msg.bot-msg{color:#e2e8f0;background:#1e293b;border-left:3px solid #10b981}.terminal-msg.user-msg{color:#fff;background:#0369a1;border-left:3px solid #38bdf8;align-self:flex-end;max-width:85%}.msg-header{opacity:.8;justify-content:space-between;margin-bottom:.35rem;font-size:.72rem;display:flex}.msg-content{white-space:pre-wrap;margin:0;font-family:Consolas,monospace}.terminal-input-bar{background:#0f172a;border-top:1px solid #1e293b;gap:.5rem;padding:.75rem;display:flex}.terminal-input{color:#f8fafc;background:#090d16;border:1px solid #334155;border-radius:.375rem;flex:1;padding:.5rem .75rem;font-family:monospace;font-size:.85rem}.terminal-input:focus{border-color:#38bdf8;outline:none}.btn-terminal-send{color:#fff;cursor:pointer;background:#059669;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background .2s}.btn-terminal-send:hover:not(:disabled){background:#10b981}.typing-indicator span{background:#10b981;border-radius:50%;width:6px;height:6px;margin-right:4px;animation:1.2s infinite blink;display:inline-block}@keyframes blink{0%{opacity:.2}50%{opacity:1}to{opacity:.2}}.backup-page-container{color:#1e293b;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.backup-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.backup-page-title-group h1{color:#0f172a;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.75rem;font-weight:700;display:flex}.backup-page-subtitle{color:#64748b;margin:0;font-size:.95rem}.backup-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 4px #0284c733}.backup-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0369a1 0%,#075985 100%);transform:translateY(-1px);box-shadow:0 4px 6px #0284c74d}.backup-btn-primary:disabled{opacity:.6;cursor:not-allowed}.shutdown-safety-card{border-left:6px solid;border-radius:12px;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2rem;padding:1.25rem 1.5rem;transition:all .2s;display:flex}.shutdown-safety-card.safe{background-color:#f0fdf4;border-color:#22c55e #22c55e #22c55e #16a34a}.shutdown-safety-card.warning{background-color:#fef2f2;border-color:#fca5a5 #fca5a5 #fca5a5 #ef4444}.safety-card-left{align-items:flex-start;gap:1rem;display:flex}.safety-icon-wrapper{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;display:flex}.safe .safety-icon-wrapper{color:#15803d;background-color:#dcfce7}.warning .safety-icon-wrapper{color:#b91c1c;background-color:#fee2e2}.safety-card-content h3{color:#0f172a;margin:0 0 .25rem;font-size:1.1rem;font-weight:700}.safety-card-content p{color:#475569;margin:0;font-size:.9rem;line-height:1.4}.safety-badges{flex-wrap:wrap;gap:.75rem;display:flex}.safety-pill{border-radius:9999px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.8rem;font-weight:600;display:inline-flex}.safety-pill.success{color:#15803d;background-color:#dcfce7;border:1px solid #bbf7d0}.safety-pill.danger{color:#b91c1c;background-color:#fee2e2;border:1px solid #fecaca}.backup-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.backup-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:.25rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px #0000000d}.stat-card-label{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:.825rem;font-weight:600}.stat-card-value{color:#0f172a;font-size:1.6rem;font-weight:700}.stat-card-desc{color:#94a3b8;font-size:.8rem}.backup-history-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.history-section-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.history-section-header h2{color:#0f172a;margin:0;font-size:1.15rem;font-weight:700}.table-responsive{width:100%;overflow-x:auto}.backup-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.backup-table th{color:#475569;white-space:nowrap;background-color:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.85rem 1.25rem;font-weight:600}.backup-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:1rem 1.25rem}.backup-table tr:hover{background-color:#f8fafc}.file-name-cell{color:#0f172a;flex-direction:column;gap:.2rem;font-weight:600;display:flex}.file-name-cell span{color:#64748b;font-size:.75rem;font-weight:400}.checksum-badge{color:#334155;cursor:pointer;background-color:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;align-items:center;gap:.35rem;padding:.25rem .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;transition:background-color .15s;display:inline-flex}.checksum-badge:hover{background-color:#e2e8f0}.verification-status-pill{border-radius:9999px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.verification-status-pill.verified{color:#15803d;background-color:#dcfce7}.verification-status-pill.unverified{color:#b91c1c;background-color:#fee2e2}.table-actions{gap:.5rem;display:flex}.btn-action-verify{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-action-verify:hover{color:#0f172a;background:#f1f5f9;border-color:#94a3b8}.btn-action-download{color:#fff;cursor:pointer;background:#0284c7;border:1px solid #0284c7;border-radius:6px;align-items:center;gap:.35rem;padding:.45rem .75rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.btn-action-download:hover{background:#0369a1}.empty-backup-state{text-align:center;color:#64748b;padding:3.5rem 1rem}.empty-backup-icon{margin-bottom:.75rem;font-size:3rem}.backup-toast{z-index:1000;border-radius:8px;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;animation:.3s slideUp;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 12px #00000026}.backup-toast.success{color:#fff;background-color:#065f46}.backup-toast.error{color:#fff;background-color:#991b1b}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.cbt-rich-content-container{color:var(--color-text-primary,#1e293b);word-break:break-word;font-size:1rem;line-height:1.65;display:block}.cbt-rich-content-container.is-inline{display:inline}.cbt-math-element{font-family:KaTeX_Main,Times New Roman,serif}.cbt-math-inline{vertical-align:middle;padding:0 .2rem;display:inline-block}.cbt-math-block{text-align:center;background-color:var(--color-surface-subtle,#f8fafc);border:1px solid var(--color-border-subtle,#e2e8f0);border-radius:var(--radius-md,8px);max-width:100%;margin:.85rem auto;padding:.75rem 1rem;display:block;overflow-x:auto}.katex-fallback{color:#c026d3;background:#f1f5f9;border-radius:4px;padding:2px 6px;font-family:monospace}.cbt-rtl-text{text-align:right;direction:rtl;unicode-bidi:isolate;padding:0 .25rem;font-family:Amiri,Scheherazade New,Traditional Arabic,Tahoma,sans-serif;font-size:1.35rem;line-height:2.2;display:inline-block}div.cbt-rtl-text,p.cbt-rtl-text{width:100%;margin:.5rem 0;display:block}.cbt-image-block{flex-direction:column;align-items:center;margin:.85rem 0;display:flex}.cbt-soal-image{object-fit:contain;border-radius:var(--radius-md,8px);border:1px solid var(--color-border-subtle,#e2e8f0);background-color:#fff;max-width:100%;max-height:380px;box-shadow:0 2px 6px #0000000a}.cbt-image-caption{color:var(--color-text-muted,#64748b);margin-top:.4rem;font-size:.825rem;font-style:italic}.cbt-image-ref-placeholder{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;gap:.55rem;padding:.85rem 1rem;font-size:.85rem}.cbt-image-ref-icon{font-size:1.1rem}.cbt-image-ref-key{color:#94a3b8;word-break:break-all;font-family:Consolas,monospace;font-size:.72rem}.cbt-table-wrapper{border-radius:var(--radius-md,8px);border:1px solid var(--color-border-subtle,#e2e8f0);margin:.85rem 0;overflow-x:auto}.cbt-soal-table{border-collapse:collapse;text-align:left;width:100%;font-size:.925rem}.cbt-soal-table th{background-color:var(--color-surface-subtle,#f8fafc);color:var(--color-text-primary,#1e293b);border-bottom:2px solid var(--color-border-subtle,#e2e8f0);padding:.6rem .85rem;font-weight:600}.cbt-soal-table td{border-bottom:1px solid var(--color-border-subtle,#f1f5f9);color:var(--color-text-secondary,#334155);padding:.6rem .85rem}.cbt-soal-table tr:last-child td{border-bottom:none}.browser-compat-page{max-width:1300px;font-family:var(--font-sans,system-ui, -apple-system, sans-serif);margin:0 auto;padding:2rem}.compat-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.header-left h1{color:#0f172a;margin:0 0 .5rem;font-size:1.75rem;font-weight:800}.header-left .subtext{color:#64748b;margin:0;font-size:.95rem}.client-badge-card{color:#fff;background:#0f172a;border-radius:.75rem;min-width:320px;padding:1rem 1.25rem;box-shadow:0 4px 12px #00000026}.badge-row{align-items:center;gap:.5rem;margin-bottom:.35rem;font-size:.85rem;display:flex}.badge-indicator.online{background:#10b981;border-radius:50%;width:8px;height:8px;box-shadow:0 0 8px #10b981}.badge-browser{color:#38bdf8;margin-bottom:.5rem;font-family:monospace;font-size:.85rem}.badge-support{color:#94a3b8;flex-direction:column;gap:.2rem;font-size:.75rem;display:flex}.compat-tabs{border-bottom:2px solid #e2e8f0;gap:.5rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.compat-tab-btn{color:#475569;cursor:pointer;white-space:nowrap;background:#f8fafc;border:1px solid #0000;border-radius:.5rem;padding:.55rem 1rem;font-size:.88rem;font-weight:600;transition:all .2s}.compat-tab-btn:hover{color:#0f172a;background:#f1f5f9}.compat-tab-btn.active{color:#fff;background:#006948;border-color:#006948}.testcases-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:1.5rem;margin-bottom:2.5rem;display:grid}.testcase-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex;box-shadow:0 1px 3px #0000000d}.tc-header{align-items:center;gap:.75rem;display:flex}.tc-tag{text-transform:uppercase;border-radius:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:800}.tc-tag.matematika{color:#0369a1;background:#e0f2fe}.tc-tag.arab{color:#92400e;background:#fef3c7}.tc-tag.bidi{color:#7e22ce;background:#f3e8ff}.tc-title{color:#1e293b;margin:0;font-size:1rem;font-weight:700}.tc-desc{color:#64748b;margin:0;font-size:.85rem}.tc-render-box{background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;padding:.85rem}.box-label{color:#64748b;text-transform:uppercase;margin-bottom:.4rem;font-size:.75rem;font-weight:700}.render-surface{background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;min-height:50px;padding:.75rem}.tc-raw-box{background:#0f172a;border-radius:.375rem;padding:.6rem .85rem}.tc-raw-box .box-label{color:#94a3b8}.tc-raw-box code{color:#38bdf8;word-break:break-all;font-family:monospace;font-size:.78rem}.sandbox-card{background:#fff;border:1px solid #cbd5e1;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 6px -1px #0000000d}.sandbox-header h3{color:#0f172a;margin:0 0 .25rem;font-size:1.25rem}.sandbox-header p{color:#64748b;margin:0 0 1.25rem;font-size:.88rem}.sandbox-content-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=800px){.sandbox-content-grid{grid-template-columns:1fr}}.sandbox-input-area label,.sandbox-preview-area label{color:#334155;margin-bottom:.4rem;font-size:.85rem;font-weight:700;display:block}.sandbox-input-area textarea{box-sizing:border-box;resize:vertical;border:1px solid #cbd5e1;border-radius:.5rem;width:100%;padding:.75rem;font-family:monospace;font-size:.9rem}.sandbox-input-area textarea:focus{border-color:#006948;outline:none}.sandbox-render-canvas{background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;min-height:110px;padding:1rem}.kapasitas-page{flex-direction:column;gap:1.25rem;max-width:1100px;margin:0 auto;padding:1.25rem;display:flex}.kapasitas-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.kapasitas-header h2{margin:0;font-size:1.3rem}.kapasitas-header p{color:#64748b;margin:.3rem 0 0;font-size:.85rem}.kapasitas-btn{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.55rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.kapasitas-btn.ghost{color:#006948;background:#fff;border:1px solid #006948}.kapasitas-btn:disabled{opacity:.6;cursor:not-allowed}.kapasitas-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.6rem .8rem;font-size:.85rem}.kapasitas-section-title{color:#0f172a;align-items:center;gap:.4rem;margin-bottom:.6rem;font-weight:700;display:flex}.kapasitas-sla-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem;display:grid}.sla-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:.25rem;padding:.7rem .9rem;display:flex}.sla-card.ok{background:#ecfdf5;border-color:#a7f3d0}.sla-card.warn{background:#fef2f2;border-color:#fecaca}.sla-label{color:#64748b;font-size:.72rem;font-weight:600}.sla-value{color:#0f172a;font-size:1rem;font-weight:700}.kapasitas-tabel table{border-collapse:collapse;width:100%;font-size:.85rem}.kapasitas-tabel th,.kapasitas-tabel td{text-align:left;border:1px solid #e2e8f0;padding:.5rem .7rem}.kapasitas-tabel th{color:#475569;background:#f8fafc}.kapasitas-tabel tr.highlight{background:#ecfdf5}.mono{font-family:ui-monospace,monospace}.strong{font-weight:700}.kapasitas-muted{color:#94a3b8;font-size:.85rem}.slot-list{flex-direction:column;gap:.5rem;display:flex}.slot-row{grid-template-columns:1.2fr 1fr 1fr .7fr auto;gap:.4rem;display:grid}.slot-row input{border:1px solid #cbd5e1;border-radius:8px;min-width:0;padding:.45rem .55rem;font-size:.82rem}.icon-btn{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:8px;padding:0 .5rem}.slot-actions{gap:.5rem;margin-top:.6rem;display:flex}.hasil-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin-top:.9rem;padding:.9rem;display:grid}.hasil-value{color:#006948;font-size:1.4rem;font-weight:800;display:block}.hasil-catatan{color:#475569;grid-column:1/-1;margin:0;font-size:.85rem}.hasil-catatan.warn{color:#b45309}@keyframes kapasitas-spin{to{transform:rotate(360deg)}}.dev-page{flex-direction:column;gap:1.25rem;max-width:1200px;margin:0 auto;padding:1.25rem;display:flex}.dev-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dev-header h2{margin:0;font-size:1.3rem}.dev-header p{color:#64748b;margin:.3rem 0 0;font-size:.85rem}.dev-btn{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.55rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.dev-btn:disabled{opacity:.6;cursor:not-allowed}.dev-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.6rem .8rem;font-size:.85rem}.dev-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem;display:grid}.dev-kpi{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:.25rem;padding:.8rem 1rem;display:flex}.dev-kpi.ok{background:#ecfdf5;border-color:#a7f3d0}.dev-kpi.warn{background:#fef2f2;border-color:#fecaca}.dev-kpi-label{color:#64748b;font-size:.72rem;font-weight:600}.dev-kpi-value{color:#0f172a;font-size:1.4rem;font-weight:800}.dev-warning{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem .8rem;font-size:.85rem;display:flex}.dev-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.9rem;display:grid}.dev-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:.6rem;padding:.9rem 1rem;display:flex}.dev-card.warning{border-color:#fca5a5}.dev-card-head{align-items:center;gap:.4rem;display:flex}.dev-tag{color:#475569;background:#e2e8f0;border-radius:999px;margin-left:auto;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.dev-tag.cbt{color:#1d4ed8;background:#dbeafe}.dev-tag.non-cbt{color:#334155;background:#f1f5f9}.dev-gauge{grid-template-columns:110px 1fr 54px;align-items:center;gap:.5rem;font-size:.78rem;display:grid}.dev-gauge-label{color:#475569;align-items:center;gap:.3rem;display:inline-flex}.dev-gauge-track{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.dev-gauge-fill{background:#006948;height:100%}.dev-gauge-fill.warn{background:#dc2626}.dev-gauge-value{text-align:right;color:#0f172a;font-weight:700}.dev-card-foot{color:#64748b;flex-wrap:wrap;gap:.5rem;font-size:.72rem;display:flex}.dev-muted{color:#94a3b8;font-size:.85rem}.dev-cross h3{color:#0f172a;margin:0 0 .5rem;font-size:.95rem}.dev-cross table{border-collapse:collapse;width:100%;font-size:.82rem}.dev-cross th,.dev-cross td{text-align:left;border:1px solid #e2e8f0;padding:.45rem .65rem}.dev-cross th{color:#475569;background:#f8fafc}.spin{animation:.9s linear infinite dev-spin}@keyframes dev-spin{to{transform:rotate(360deg)}}.inv-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172ab3;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0;overflow-y:auto}.inv-modal-container{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:860px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.inv-modal-bar{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.inv-modal-bar-title{color:#1e293b;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.inv-modal-actions{align-items:center;gap:10px;display:flex}.inv-btn-print{background:var(--cbt-primary,#1d4ed8);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:500;transition:opacity .15s;display:inline-flex}.inv-btn-print:hover{opacity:.9}.inv-btn-close{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:background .15s,color .15s;display:flex}.inv-btn-close:hover{color:#0f172a;background:#e2e8f0}.inv-modal-scroll{background:#f1f5f9;justify-content:center;padding:24px;display:flex;overflow-y:auto}.inv-loading-state,.inv-error-state{color:#475569;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.inv-spin{color:var(--cbt-primary,#1d4ed8);animation:1s linear infinite invSpin}@keyframes invSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.inv-btn-secondary{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:8px 16px;font-size:.875rem}.invoice-paper{color:#000;background:#fff;border-radius:6px;width:100%;max-width:760px;padding:44px 48px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;box-shadow:0 4px 16px #0000000f}.inv-header{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.inv-title{color:#000;letter-spacing:-.02em;margin:0 0 14px;font-size:1.85rem;font-weight:700}.inv-meta-list{flex-direction:column;gap:3px;font-size:.88rem;display:flex}.inv-meta-item{color:#000;grid-template-columns:140px 1fr;display:grid}.inv-meta-label{color:#334155;font-weight:400}.inv-meta-value{color:#000;word-break:break-all;font-weight:500}.inv-brand-logo-area{align-items:center;gap:10px;display:flex}.inv-brand-text{flex-direction:column;display:flex}.inv-brand-title{color:#0f172a;letter-spacing:-.03em;font-size:1.35rem;font-weight:700;line-height:1.1}.inv-brand-subtitle{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:500}.inv-addresses-grid{grid-template-columns:1fr 1fr;gap:40px;margin-top:24px;margin-bottom:32px;font-size:.88rem;display:grid}.inv-entity-name{color:#000;margin-bottom:4px;font-size:.95rem;font-weight:700}.inv-entity-line{color:#1e293b;line-height:1.45}.inv-email-line{color:#334155;margin-top:4px}.inv-col-label{color:#000;margin-bottom:4px;font-size:.95rem;font-weight:700}.inv-bill-name{color:#0f172a;font-weight:600}.inv-bill-school{color:#1e293b;font-weight:500}.inv-bill-domain{color:#475569;font-family:monospace;font-size:.82rem}.inv-bill-email,.inv-bill-country{color:#1e293b}.inv-paid-banner{justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:8px;display:flex}.inv-paid-amount-headline{color:#000;letter-spacing:-.01em;font-size:1.35rem;font-weight:700}.inv-paid-badge{color:#047857;letter-spacing:.05em;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.inv-table{border-collapse:collapse;width:100%;margin-bottom:24px;font-size:.88rem}.inv-table th{text-align:left;color:#000;border-top:1px solid #cbd5e1;border-bottom:1px solid #cbd5e1;padding:10px 8px;font-weight:600}.inv-table th.th-qty,.inv-table th.th-price,.inv-table th.th-tax,.inv-table th.th-amount{text-align:right}.inv-table td{vertical-align:top;color:#000;border-bottom:1px solid #e2e8f0;padding:14px 8px}.inv-table td.td-qty,.inv-table td.td-price,.inv-table td.td-tax,.inv-table td.td-amount{text-align:right;white-space:nowrap}.inv-item-title{color:#000;margin-bottom:3px;font-size:.92rem;font-weight:600}.inv-item-desc{color:#475569;margin-bottom:4px;font-size:.82rem}.inv-item-periode{color:#64748b;font-size:.78rem}.inv-summary-container{justify-content:flex-end;margin-bottom:36px;display:flex}.inv-summary-table{flex-direction:column;gap:8px;width:100%;max-width:320px;font-size:.88rem;display:flex}.inv-summary-row{color:#000;justify-content:space-between;align-items:center;display:flex}.inv-summary-label{color:#334155}.inv-summary-val{color:#000;font-weight:500}.inv-row-total{border-top:1px solid #cbd5e1;padding-top:8px;font-weight:600}.inv-row-amount-paid{color:#000;font-size:1rem;font-weight:700}.inv-footer-notes{color:#64748b;border-top:1px solid #e2e8f0;padding-top:18px;font-size:.78rem;line-height:1.5}.inv-footer-notes p{margin:0 0 6px}@media print{body{color:#000!important;background:#fff!important}.no-print,.inv-modal-bar,header,nav,aside,.sidebar,.admin-layout-sidebar,.admin-sidebar{display:none!important}.inv-modal-overlay{background:0 0!important;padding:0!important;position:static!important;overflow:visible!important}.inv-modal-container{box-shadow:none!important;border:none!important;border-radius:0!important;max-width:100%!important}.inv-modal-scroll{background:0 0!important;padding:0!important;overflow:visible!important}.invoice-paper{box-shadow:none!important;border:none!important;max-width:100%!important;padding:0!important}@page{size:A4;margin:15mm 20mm}}.up-container{max-width:1100px;margin:0 auto;padding:24px 16px 64px}.up-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.up-header h1{color:#0f172a;margin:0 0 4px;font-size:1.4rem}.up-header p{color:#64748b;max-width:620px;margin:0;font-size:.9rem}.up-btn-ghost{color:#334155;white-space:nowrap;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-weight:500;text-decoration:none}.up-btn-ghost:hover{background:#f1f5f9}.up-alert{border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:.9rem}.up-alert-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.up-alert-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.up-current{color:#fff;background:linear-gradient(135deg,#1e3a8a,#1d4ed8);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding:16px 20px;display:flex}.up-current-info{flex-direction:column;gap:4px;display:flex}.up-current-label{text-transform:uppercase;letter-spacing:.06em;opacity:.85;font-size:.72rem}.up-current h2{margin:2px 0 6px;font-size:1.25rem}.up-current-meta{opacity:.95;flex-wrap:wrap;gap:16px;font-size:.85rem;display:flex}.up-current-actions{align-items:center;display:flex}.up-btn-invoice{color:#1d4ed8;cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:8px;padding:9px 16px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #0000001f}.up-btn-invoice:hover{color:#1e40af;background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 10px #00000029}.up-durasi{margin-bottom:16px}.up-durasi label{color:#334155;flex-direction:column;gap:4px;max-width:220px;font-size:.85rem;font-weight:600;display:flex}.up-durasi select{border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:.9rem}.up-empty{text-align:center;color:#94a3b8;padding:40px}.up-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.up-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;padding:18px;display:flex}.up-card-current{border-color:#1d4ed8;box-shadow:0 0 0 2px #1d4ed826}.up-card h3{color:#0f172a;margin:0;font-size:1.1rem}.up-harga{color:#1d4ed8;font-size:1.3rem;font-weight:700}.up-harga span{color:#64748b;font-size:.8rem;font-weight:500}.up-deskripsi{color:#64748b;margin:0;font-size:.82rem}.up-meta{color:#475569;gap:12px;font-size:.78rem;display:flex}.up-total{color:#334155;padding-top:4px;font-size:.85rem}.up-btn-primary,.up-btn-current{cursor:pointer;border:none;border-radius:8px;margin-top:auto;padding:9px 0;font-weight:600}.up-btn-primary{color:#fff;background:#1d4ed8}.up-btn-primary:hover:not(:disabled){background:#1e40af}.up-btn-primary:disabled{opacity:.6;cursor:not-allowed}.up-btn-current{color:#1d4ed8;cursor:default;background:#eff6ff;border:1px solid #bfdbfe}.cbt-soal-card{background:var(--color-surface,#fff);border:1px solid var(--color-border-subtle,#e2e8f0);border-radius:var(--radius-lg,12px);margin-bottom:1.5rem;padding:1.5rem;transition:all .2s;box-shadow:0 4px 12px #00000008}.cbt-soal-card-header{border-bottom:1px solid var(--color-border-subtle,#f1f5f9);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.85rem;display:flex}.cbt-soal-nomor-badge{color:#006948;background:#e6f4ea;border-radius:9999px;align-items:center;padding:.3rem .75rem;font-size:.875rem;font-weight:700;display:inline-flex}.cbt-soal-type-tag{text-transform:uppercase;letter-spacing:.05em;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .6rem;font-size:.75rem;font-weight:600}.cbt-soal-body{color:#1e293b;margin-bottom:1.5rem;font-size:1.05rem;line-height:1.7}.cbt-opsi-list{flex-direction:column;gap:.75rem;display:flex}.cbt-opsi-item{cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;align-items:flex-start;gap:.85rem;padding:.85rem 1rem;transition:all .15s ease-in-out;display:flex;position:relative}.cbt-opsi-item:hover:not(.is-disabled){background-color:#f6fbf8;border-color:#006948}.cbt-opsi-item.is-selected{background-color:#eaf6f0;border-color:#006948;box-shadow:0 0 0 1px #006948}.cbt-opsi-item.is-kunci{background-color:#f0f9ff;border-color:#0284c7}.cbt-opsi-item.is-disabled{cursor:default;opacity:.9}.cbt-opsi-radio,.cbt-opsi-checkbox{display:none}.cbt-opsi-badge{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;transition:all .15s;display:flex}.ceklis-badge{border-radius:6px}.cbt-opsi-item.is-selected .cbt-opsi-badge{color:#fff;background:#006948;border-color:#006948}.cbt-opsi-konten{color:#334155;flex:1;padding-top:3px;font-size:.98rem;line-height:1.55}.cbt-kunci-tag{color:#0369a1;background:#e0f2fe;border-radius:4px;align-self:center;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.cbt-menjodohkan-grid{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.25rem;display:grid}@media (width<=768px){.cbt-menjodohkan-grid{grid-template-columns:1fr}}.cbt-match-header{text-transform:uppercase;letter-spacing:.04em;color:#64748b;border-bottom:1.5px solid #cbd5e1;margin-bottom:.85rem;padding-bottom:.4rem;font-size:.85rem;font-weight:700}.cbt-match-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.75rem;padding:.75rem}.cbt-match-item-left{align-items:flex-start;gap:.6rem;margin-bottom:.5rem;display:flex}.cbt-match-idx{color:#475569;background:#f1f5f9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.85rem;font-weight:700;display:flex}.cbt-match-selector{align-items:center;gap:.5rem;display:flex}.cbt-select-match{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:6px;flex:1;padding:.4rem .6rem;font-size:.875rem}.cbt-kunci-pill{color:#0284c7;white-space:nowrap;background:#e0f2fe;border-radius:4px;padding:.2rem .4rem;font-size:.75rem;font-weight:600}.cbt-match-item-right{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;padding:.75rem;display:flex}.cbt-bs-table-wrapper{border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.cbt-bs-table{border-collapse:collapse;width:100%}.cbt-bs-table th,.cbt-bs-table td{border-bottom:1px solid #e2e8f0;padding:.75rem 1rem;font-size:.95rem}.cbt-bs-table th{color:#475569;background:#f8fafc;font-weight:600}.th-center,.td-center{text-align:center;width:80px}.kunci-cell{color:#0284c7;font-weight:700}.cbt-isian-input{color:#1e293b;resize:vertical;border:1.5px solid #cbd5e1;border-radius:8px;outline:none;width:100%;padding:.85rem;font-family:inherit;font-size:.95rem;transition:border-color .15s}.cbt-isian-input:focus{border-color:#006948;box-shadow:0 0 0 3px #0069481a}.cbt-isian-kunci{color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;margin-top:.6rem;padding:.6rem .85rem;font-size:.85rem}.cbt-soal-editor-5tipe{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex;box-shadow:0 4px 16px #0f172a0a}.editor-top-meta{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.meta-group{align-items:center;gap:.5rem;display:flex}.meta-label{color:#475569;font-size:.8125rem;font-weight:600}.tipe-select{color:#1e293b;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;outline:none;padding:.375rem .75rem;font-size:.8125rem;font-weight:600;transition:all .15s}.tipe-select:focus{background:#fff;border-color:#006948;box-shadow:0 0 0 2px #00694826}.bobot-input{color:#1e293b;text-align:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;width:70px;padding:.375rem .5rem;font-size:.8125rem;font-weight:600}.bobot-input:focus{background:#fff;border-color:#006948;outline:none}.meta-indicators{align-items:center;gap:.5rem;margin-left:auto;display:flex}.badge-feature{border-radius:9999px;align-items:center;padding:.2rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.badge-math{color:#4338ca;background:#eef2ff;border:1px solid #c7d2fe}.badge-rtl{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.badge-img{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0}.editor-pertanyaan-container{flex-direction:column;gap:.625rem;display:flex}.pertanyaan-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pertanyaan-title{color:#1e293b;margin:0;font-size:.875rem;font-weight:700}.pertanyaan-mode-tabs{background:#f1f5f9;border-radius:8px;gap:2px;padding:2px;display:flex}.tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.tab-btn:hover{color:#1e293b}.tab-btn.active{color:#006948;background:#fff;box-shadow:0 1px 3px #00000014}.math-quick-toolbar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.5rem;padding:.375rem .75rem;display:flex;overflow-x:auto}.toolbar-label{color:#475569;white-space:nowrap;font-size:.6875rem;font-weight:700}.toolbar-buttons{align-items:center;gap:.375rem;display:flex}.btn-tool{color:#334155;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:4px;padding:.2rem .45rem;font-family:monospace;font-size:.6875rem;font-weight:600;transition:all .1s}.btn-tool:hover{color:#fff;background:#006948;border-color:#006948}.pertanyaan-body-wrapper{gap:.75rem;display:grid}.pertanyaan-body-wrapper.mode-editor,.pertanyaan-body-wrapper.mode-preview{grid-template-columns:1fr}.pertanyaan-body-wrapper.mode-split{grid-template-columns:1.1fr .9fr}@media (width<=860px){.pertanyaan-body-wrapper.mode-split{grid-template-columns:1fr}}.pertanyaan-editor-pane{flex-direction:column;gap:.25rem;display:flex}.pertanyaan-textarea{color:#1e293b;resize:vertical;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem;line-height:1.5;transition:border-color .15s}.pertanyaan-textarea:focus{border-color:#006948;box-shadow:0 0 0 2px #00694826}.textarea-footer-tips{color:#64748b;font-size:.6875rem;font-style:italic}.pertanyaan-preview-pane{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.5rem;min-height:120px;padding:.75rem;display:flex}.preview-pane-header{color:#475569;text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.375rem;font-size:.6875rem;font-weight:700;display:flex}.badge-live-dot{background:#10b981;border-radius:9999px;width:6px;height:6px}.preview-rendered-content{color:#0f172a;font-size:.9375rem;line-height:1.6}.placeholder-text{color:#94a3b8;font-size:.8125rem;font-style:italic}.editor-opsi-section,.editor-menjodohkan-section,.editor-bs-section,.editor-isian-section{background:#fafafa;border:1px solid #f1f5f9;border-radius:10px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.section-title-row{flex-direction:column;gap:.25rem;display:flex}.section-title{color:#1e293b;margin:0;font-size:.875rem;font-weight:700}.section-hint{color:#64748b;font-size:.75rem}.opsi-list-editor{flex-direction:column;gap:.5rem;display:flex}.opsi-editor-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.75rem;padding:.5rem .75rem;transition:all .15s;display:flex}.opsi-editor-card.is-kunci-selected{background:#f0fdf4;border-color:#10b981}.opsi-card-left{align-items:center;display:flex}.kunci-radio-label,.kunci-check-label{cursor:pointer;align-items:center;gap:.375rem;display:inline-flex}.kunci-radio,.kunci-checkbox{cursor:pointer;accent-color:#006948}.opsi-label-badge{color:#0f172a;background:#e2e8f0;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8125rem;font-weight:700;display:inline-flex}.is-kunci-selected .opsi-label-badge{color:#fff;background:#006948}.opsi-card-middle{flex:1}.opsi-input-box{flex-direction:column;gap:.25rem;display:flex}.opsi-text-input{border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:.375rem .5rem;font-size:.8125rem}.opsi-text-input:focus{border-color:#006948}.opsi-katex-preview{color:#0f172a;background:#f8fafc;border-radius:4px;align-items:center;gap:.375rem;padding:.25rem .5rem;font-size:.75rem;display:flex}.preview-label{color:#64748b;text-transform:uppercase;font-size:.625rem;font-weight:700}.opsi-card-right{align-items:center;gap:.5rem;display:flex}.kunci-active-badge{color:#166534;background:#dcfce7;border-radius:6px;align-items:center;gap:.25rem;padding:.2rem .45rem;font-size:.6875rem;font-weight:700;display:inline-flex}.btn-delete-opsi{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem}.btn-add-opsi{color:#006948;cursor:pointer;background:#e6f4ea;border:1px solid #b7e1cd;border-radius:6px;align-self:flex-start;align-items:center;padding:.375rem .75rem;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-add-opsi:hover{color:#fff;background:#006948}.menjodohkan-columns-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=768px){.menjodohkan-columns-grid{grid-template-columns:1fr}}.match-col-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.col-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-bottom:.375rem;display:flex}.col-title{color:#334155;font-size:.75rem;font-weight:700}.btn-add-mini{color:#006948;cursor:pointer;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:4px;align-items:center;padding:.15rem .4rem;font-size:.6875rem;font-weight:600;display:inline-flex}.col-body{flex-direction:column;gap:.375rem;display:flex}.match-row-item{align-items:center;gap:.375rem;display:flex}.item-idx,.item-badge-char{color:#334155;background:#f1f5f9;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:700;display:inline-flex}.item-badge-char{color:#b45309;background:#fef3c7}.match-text-input{border:1px solid #cbd5e1;border-radius:4px;outline:none;flex:1;padding:.3rem .5rem;font-size:.8125rem}.btn-trash-mini{cursor:pointer;color:#94a3b8;background:0 0;border:none;padding:.2rem}.btn-trash-mini:hover{color:#e11d48}.match-kunci-mapping-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.mapping-title{color:#1e293b;align-items:center;margin:0;font-size:.8125rem;font-weight:700;display:flex}.mapping-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem;display:grid}.mapping-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:.5rem;padding:.375rem .5rem;display:flex}.mapping-from{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.75rem;font-weight:600;overflow:hidden}.mapping-select{background:#fff;border:1px solid #cbd5e1;border-radius:4px;max-width:150px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.bs-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.bs-editor-table{border-collapse:collapse;width:100%;font-size:.8125rem}.bs-editor-table th{color:#475569;text-align:left;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:.5rem .75rem;font-weight:700}.bs-editor-table td{border-bottom:1px solid #f1f5f9;padding:.5rem .75rem}.bs-text-input{border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:.375rem .5rem;font-size:.8125rem}.radio-bs-label{cursor:pointer;align-items:center;gap:.25rem;display:inline-flex}.tag-benar{color:#15803d;background:#dcfce7;border-radius:4px;padding:.15rem .4rem;font-size:.6875rem;font-weight:700}.tag-salah{color:#be123c;background:#ffe4e6;border-radius:4px;padding:.15rem .4rem;font-size:.6875rem;font-weight:700}.isian-input-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.375rem;padding:.75rem;display:flex}.isian-label{color:#334155;font-size:.8125rem;font-weight:600}.isian-textarea{resize:vertical;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:.5rem;font-family:inherit;font-size:.8125rem}.isian-textarea:focus{border-color:#006948}.isian-helper{color:#64748b;margin:0;font-size:.6875rem}.editor-card-footer{border-top:1px solid #f1f5f9;justify-content:flex-end;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}.btn-editor-cancel{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;font-weight:600}.btn-editor-cancel:hover{color:#0f172a;background:#e2e8f0}.btn-editor-save{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:6px;align-items:center;padding:.375rem .875rem;font-size:.8125rem;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #0069484d}.btn-editor-save:hover{background:#005236}.import-review-modal-overlay{z-index:1050;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172abf;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out irmFadeIn;display:flex;position:fixed;inset:0}@keyframes irmFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.import-review-modal-container{background:#fff;border:1px solid #e2e8f0cc;border-radius:16px;flex-direction:column;width:100%;max-width:1280px;height:92vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.irm-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.irm-title-area{align-items:center;gap:.875rem;display:flex}.irm-icon-badge{background:#e6f4ea;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.irm-title{color:#0f172a;margin:0;font-size:1.125rem;font-weight:700}.irm-subtitle{color:#64748b;margin:.15rem 0 0;font-size:.8125rem}.btn-close-modal{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.btn-close-modal:hover{color:#ef4444;background:#fee2e2}.irm-upload-stage{background:#f8fafc;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:2.5rem;display:flex}.docx-dropzone-large{width:100%;max-width:680px}.hidden-file-input{display:none}.dropzone-large-label{cursor:pointer;text-align:center;background:#fff;border:2px dashed #cbd5e1;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:3.5rem 2rem;transition:all .2s;display:flex}.dropzone-large-label:hover{background:#f0fdf4;border-color:#006948}.dropzone-idle-box h4{color:#1e293b;margin:.5rem 0 .25rem;font-size:1.125rem;font-weight:700}.dropzone-idle-box p{color:#64748b;margin-bottom:1.25rem;font-size:.875rem}.btn-browse-file{color:#fff;background:#006948;border-radius:8px;padding:.5rem 1.25rem;font-size:.875rem;font-weight:600;display:inline-block;box-shadow:0 2px 6px #00694840}.dropzone-loading-box h4{color:#1e293b;margin-bottom:.25rem;font-size:1.125rem;font-weight:700}.dropzone-loading-box p{color:#64748b;font-size:.8125rem}.irm-alert-banner{border-radius:8px;align-items:center;gap:.5rem;width:100%;max-width:680px;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.alert-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.irm-workspace{background:#f8fafc;flex-direction:column;flex:1;display:flex;overflow:hidden}.irm-meta-strip{background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.625rem 1.5rem;display:flex}.meta-stat-pill{background:#f1f5f9;border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;display:inline-flex}.pill-label{color:#64748b}.pill-value{color:#0f172a;font-weight:700}.meta-warning-chip{color:#b45309;cursor:help;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;margin-left:auto;padding:.2rem .5rem;font-size:.6875rem;font-weight:700}.irm-split-body{flex:1;grid-template-columns:320px 1fr;display:grid;overflow:hidden}@media (width<=900px){.irm-split-body{grid-template-columns:240px 1fr}}.irm-sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;display:flex;overflow:hidden}.sidebar-filter-box{border-bottom:1px solid #f1f5f9;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.search-wrap{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;align-items:center;padding:.25rem .5rem;display:flex}.search-mini-input{color:#1e293b;background:0 0;border:none;outline:none;width:100%;font-size:.75rem}.filter-wrap{align-items:center;display:flex}.filter-mini-select{color:#334155;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.sidebar-soal-list{flex-direction:column;flex:1;gap:.25rem;padding:.5rem;display:flex;overflow-y:auto}.soal-nav-row{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;width:100%;padding:.5rem .75rem;transition:all .15s;display:flex}.soal-nav-row:hover{background:#f1f5f9}.soal-nav-row.active{background:#f0fdf4;border-color:#86efac}.row-left{align-items:center;gap:.5rem;display:flex}.no-badge{color:#0f172a;background:#e2e8f0;border-radius:4px;padding:.15rem .4rem;font-size:.75rem;font-weight:700}.soal-nav-row.active .no-badge{color:#fff;background:#006948}.type-badge{color:#475569;text-transform:capitalize;font-size:.6875rem;font-weight:600}.row-right-icons{align-items:center;gap:.25rem;display:flex}.icon-tag{border-radius:3px;padding:.1rem .3rem;font-size:.625rem;font-weight:700}.icon-tag.math{color:#4338ca;background:#e0e7ff}.icon-tag.rtl{color:#b45309;background:#fef3c7}.sidebar-footer-action{border-top:1px solid #f1f5f9;padding:.75rem}.btn-add-soal-full{color:#006948;cursor:pointer;background:#e6f4ea;border:1px solid #b7e1cd;border-radius:6px;justify-content:center;align-items:center;width:100%;padding:.45rem;font-size:.75rem;font-weight:700;transition:all .15s;display:flex}.btn-add-soal-full:hover{color:#fff;background:#006948}.irm-main-content{flex-direction:column;flex:1;padding:1.25rem;display:flex;overflow-y:auto}.active-soal-wrapper{flex-direction:column;gap:1rem;display:flex}.active-soal-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.625rem 1rem;display:flex}.toolbar-left{align-items:center;gap:.625rem;display:flex}.current-no-label{color:#0f172a;font-size:.875rem;font-weight:700}.current-type-tag{color:#334155;background:#f1f5f9;border-radius:4px;padding:.2rem .5rem;font-size:.6875rem;font-weight:700}.toolbar-right{align-items:center;gap:.5rem;display:flex}.toggle-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:.25rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.toggle-btn.active{color:#006948;background:#fff;font-weight:700;box-shadow:0 1px 2px #0000000d}.btn-action-tool{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;align-items:center;padding:.3rem .6rem;font-size:.6875rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-action-tool:hover{color:#0f172a;background:#f1f5f9}.btn-action-tool.delete:hover{color:#dc2626;background:#fef2f2;border-color:#fca5a5}.student-preview-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.student-preview-header{border-bottom:1px solid #f1f5f9;padding-bottom:.5rem}.live-preview-title{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:700}.empty-soal-pane{color:#94a3b8;justify-content:center;align-items:center;height:200px;font-style:italic;display:flex}.irm-footer{background:#fff;border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.875rem 1.5rem;display:flex}.footer-left-target{align-items:center;gap:.5rem;display:flex}.target-label{color:#475569;font-size:.8125rem;font-weight:600}.target-locked-badge{color:#006948;background:#e6f4ea;border:1px solid #b7e1cd;border-radius:6px;padding:.25rem .625rem;font-size:.8125rem;font-weight:700}.target-paket-select{color:#1e293b;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;outline:none;max-width:320px;padding:.375rem .75rem;font-size:.8125rem;font-weight:600}.footer-right-actions{align-items:center;gap:.75rem;display:flex}.commit-error-text{color:#dc2626;font-size:.75rem;font-weight:600}.btn-cancel-modal{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600}.btn-cancel-modal:hover{color:#0f172a;background:#e2e8f0}.btn-commit-modal{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:8px;align-items:center;padding:.5rem 1.25rem;font-size:.875rem;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 2px 6px #0069484d}.btn-commit-modal:hover:not(:disabled){background:#005236}.btn-commit-modal:disabled{opacity:.6;cursor:not-allowed}.editor-modal-fullscreen-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:#0f172abf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.editor-modal-fullscreen{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;flex-direction:column;width:100%;max-width:1440px;height:94vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.emf-header{color:#fff;background:#0f172a;border-bottom:1px solid #1e293b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.emf-title-area h2{color:#fff;margin:.25rem 0;font-size:1.25rem;font-weight:700}.emf-badge{text-transform:uppercase;background:#2563eb;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.emf-sub{color:#94a3b8;font-size:.8rem}.emf-actions{align-items:center;gap:.75rem;display:flex}.view-mode-toggle{background:#1e293b;border-radius:.5rem;gap:.25rem;padding:.25rem;display:flex}.mode-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.4rem .85rem;font-size:.82rem;font-weight:600;transition:all .2s}.mode-btn.active{color:#fff;background:#2563eb}.device-switcher{background:#1e293b;border-radius:.5rem;gap:.25rem;padding:.25rem;display:flex}.device-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:flex}.device-btn.active{color:#fff;background:#10b981}.btn-save-soal{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:.5rem;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:700;display:flex}.btn-save-soal:hover{background:#059669}.btn-close-emf{color:#94a3b8;cursor:pointer;background:#1e293b;border:none;border-radius:.375rem;padding:.4rem}.btn-close-emf:hover{color:#fff;background:#334155}.emf-body{flex:1;display:flex;overflow:hidden}.emf-navigator{background:#f8fafc;border-right:1px solid #e2e8f0;flex-direction:column;gap:.75rem;width:220px;padding:1rem;display:flex;overflow-y:auto}.navigator-head{justify-content:space-between;align-items:center;display:flex}.navigator-head h4{color:#1e293b;margin:0;font-size:.9rem}.btn-add-soal-mini{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.25rem;align-items:center;gap:.2rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:flex}.navigator-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.soal-nav-pill{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;flex-direction:column;align-items:center;padding:.6rem .4rem;transition:all .2s;display:flex}.soal-nav-pill.active{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 4px 6px -1px #2563eb4d}.nav-num{font-size:1rem;font-weight:800}.nav-tipe{opacity:.8;font-size:.65rem}.emf-main-panel{background:#f1f5f9;flex:1;padding:1.5rem;overflow-y:auto}.editor-pane-grid{grid-template-columns:1.2fr 1fr;gap:1.5rem;height:100%;display:grid}@media (width<=950px){.editor-pane-grid{grid-template-columns:1fr}}.editor-form-col{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.soal-meta-bar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.soal-num-badge{color:#fff;background:#0f172a;border-radius:.375rem;padding:.35rem .75rem;font-size:.85rem;font-weight:700}.soal-type-selector,.soal-bobot-input{color:#475569;align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:flex}.soal-type-selector select,.soal-bobot-input input{border:1px solid #cbd5e1;border-radius:.375rem;padding:.35rem .5rem;font-size:.85rem}.btn-delete-soal{color:#dc2626;cursor:pointer;background:#fee2e2;border:1px solid #fecaca;border-radius:.375rem;margin-left:auto;padding:.35rem .5rem}.form-group-emf label{color:#334155;margin-bottom:.4rem;font-size:.85rem;font-weight:700;display:block}.form-group-emf textarea,.form-control-emf{box-sizing:border-box;border:1px solid #cbd5e1;border-radius:.5rem;width:100%;padding:.75rem;font-family:inherit;font-size:.9rem}.form-group-emf textarea:focus,.form-control-emf:focus{border-color:#2563eb;outline:none}.opsi-editor-section label{color:#334155;margin-bottom:.5rem;font-size:.85rem;font-weight:700;display:block}.opsi-list{flex-direction:column;gap:.5rem;display:flex}.opsi-edit-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;align-items:center;gap:.5rem;padding:.4rem;display:flex}.opsi-edit-card.is-kunci{background:#ecfdf5;border-color:#10b981}.kunci-check-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:flex}.kunci-check-btn.active{color:#fff;background:#10b981;border-color:#10b981}.opsi-text-input{border:1px solid #cbd5e1;border-radius:.375rem;flex:1;padding:.4rem .6rem;font-size:.85rem}.kunci-badge{color:#047857;background:#d1fae5;border-radius:.25rem;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.editor-live-col{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.25rem}.box-header-tag{color:#0369a1;text-transform:uppercase;border-bottom:2px solid #e0f2fe;margin-bottom:1rem;padding-bottom:.4rem;font-size:.8rem;font-weight:700}.soal-prompt-live{color:#0f172a;margin-bottom:1.25rem;font-size:1.05rem;line-height:1.6}.soal-opsi-live{flex-direction:column;gap:.65rem;display:flex}.opsi-live-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;align-items:center;gap:.75rem;padding:.65rem .85rem;display:flex}.opsi-live-item.highlight-kunci{background:#f0fdf4;border-color:#10b981}.opsi-label-pill{color:#1e293b;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.8rem;font-weight:700;display:flex}.opsi-live-item.highlight-kunci .opsi-label-pill{color:#fff;background:#10b981}.kunci-tag-small{color:#059669;margin-left:auto;font-size:.7rem;font-weight:700}.preview-container-wrapper{justify-content:center;align-items:flex-start;min-height:100%;display:flex}.simulator-frame{background:#fff;border:1px solid #cbd5e1;border-radius:1rem;transition:all .3s;overflow:hidden;box-shadow:0 10px 25px #0000001a}.simulator-frame.pc{width:100%;max-width:960px}.simulator-frame.mobile{border:8px solid #0f172a;border-radius:2rem;width:375px;margin:1rem auto}.mock-exam-header{color:#fff;background:#006948;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;display:flex}.mock-title{font-size:.95rem;font-weight:700}.mock-kelas{opacity:.85;font-size:.75rem}.mock-timer-badge{background:#00000040;border-radius:.375rem;align-items:center;gap:.35rem;padding:.35rem .65rem;font-family:monospace;font-size:.9rem;font-weight:700;display:flex}.mock-exam-body{background:#f8fafc;padding:1.25rem}.mock-soal-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 3px #0000000d}.mock-card-top{color:#64748b;border-bottom:1px solid #f1f5f9;justify-content:space-between;margin-bottom:.85rem;padding-bottom:.5rem;font-size:.8rem;font-weight:700;display:flex}.mock-pertanyaan{color:#0f172a;margin-bottom:1.25rem;font-size:1.05rem;line-height:1.6}.mock-opsi-group{flex-direction:column;gap:.65rem;display:flex}.mock-opsi-row{text-align:left;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .2s;display:flex}.mock-opsi-row:hover{background:#f0fdf4;border-color:#006948}.mock-opsi-row.selected{background:#e6f4ea;border-color:#006948}.mock-radio-btn{color:#334155;background:#f1f5f9;border:1px solid #94a3b8;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:700;display:flex}.mock-radio-btn.checked{color:#fff;background:#006948;border-color:#006948}.mock-isian-box label{color:#334155;margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.mock-isian-input{box-sizing:border-box;border:1px solid #cbd5e1;border-radius:.5rem;width:100%;padding:.75rem;font-size:.95rem}.mock-nav-actions{border-top:1px solid #e2e8f0;justify-content:space-between;gap:.5rem;margin-top:1.5rem;padding-top:1rem;display:flex}.btn-mock-prev,.btn-mock-next{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.btn-mock-next{color:#fff;background:#006948;border-color:#006948}.btn-mock-ragu{color:#b45309;cursor:pointer;background:#fffbeb;border:1px solid #f59e0b;border-radius:.375rem;align-items:center;gap:.35rem;padding:.5rem .85rem;font-size:.82rem;font-weight:600;display:flex}.btn-mock-ragu.is-ragu{color:#fff;background:#f59e0b}.btn-import-docx-header{color:#fff;cursor:pointer;background:#0284c7;border:none;border-radius:.5rem;align-items:center;gap:.4rem;padding:.5rem .875rem;font-size:.82rem;font-weight:700;transition:all .2s;display:flex}.btn-import-docx-header:hover{background:#0369a1}.emf-toast{align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:.8125rem;font-weight:600;display:flex}.emf-toast.success{color:#065f46;background:#ecfdf5;border-bottom:1px solid #a7f3d0}.emf-toast.error{color:#991b1b;background:#fef2f2;border-bottom:1px solid #fecaca}.editor-main-pane-wrapper{height:100%;padding:1.25rem;overflow-y:auto}.emf-loading{color:#64748b;flex-direction:column;justify-content:center;align-items:center;height:100%;font-size:.875rem;display:flex}.sim-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.sim-header h3{color:#0f172a;margin:0 0 .25rem;font-size:1.125rem;font-weight:700}.sim-header p{color:#64748b;margin:0;font-size:.8125rem}.sim-timer-box{color:#b91c1c;background:#fef2f2;border-radius:6px;align-items:center;gap:.375rem;padding:.35rem .75rem;font-size:.8125rem;font-weight:700;display:flex}.sim-nav-actions{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;display:flex}.btn-sim-prev,.btn-sim-next{cursor:pointer;border-radius:6px;padding:.5rem 1.25rem;font-size:.85rem;font-weight:600}.btn-sim-prev{color:#334155;background:#f1f5f9;border:1px solid #cbd5e1}.btn-sim-next{color:#fff;background:#006948;border:1px solid #006948}.btn-sim-prev:disabled,.btn-sim-next:disabled{opacity:.4;cursor:not-allowed}.pp-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:12px 0;padding:14px 16px}.pp-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.pp-head h4{color:#0f172a;margin:0;font-size:.95rem}.pp-summary{gap:10px;font-size:.78rem;font-weight:600;display:flex}.pp-ok{color:#059669}.pp-warn{color:#dc2626}.pp-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.pp-ruang{border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px}.pp-ada{background:#ecfdf5;border-color:#a7f3d0}.pp-kosong{background:#fef2f2;border-color:#fecaca}.pp-ruang-nama{color:#0f172a;font-size:.82rem;font-weight:600}.pp-pengawas{color:#065f46;margin-top:2px;font-size:.76rem}.pp-kosong-label{color:#b91c1c;margin-top:2px;font-size:.76rem}.pp-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:10px 0;padding:8px 12px;font-size:.85rem}.pp-muted{color:#94a3b8;margin:10px 0;font-size:.85rem}.pantau-modal-fullscreen-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:9999;background:#0f172abf;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.pantau-modal-fullscreen{background:#f8fafc;border:1px solid #cbd5e1;border-radius:1rem;flex-direction:column;width:98vw;max-width:1550px;height:94vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.pantau-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:1rem 1.75rem;display:flex}.header-badge-row{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.live-indicator{background:#ef4444;border-radius:50%;width:9px;height:9px;animation:1.5s infinite pulse}.pantau-badge-live{letter-spacing:.05em;color:#dc2626;background:#fee2e2;border-radius:9999px;padding:.15rem .5rem;font-size:.72rem;font-weight:800}.pantau-mapel{color:#006948;background:#e6f4ea;border-radius:.375rem;padding:.15rem .6rem;font-size:.78rem;font-weight:700}.pantau-header-left h2{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.pantau-sub{color:#64748b;max-width:950px;margin:.25rem 0 0;font-size:.82rem;line-height:1.35}.pantau-header-actions{align-items:center;gap:.75rem;display:flex}.btn-help-token{color:#1e293b;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.5rem;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-help-token:hover{background:#e2e8f0}.btn-close-pantau{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.4rem;transition:all .15s}.btn-close-pantau:hover{color:#0f172a;background:#e2e8f0}.pantau-dual-token-container{grid-template-columns:320px 1fr;gap:1rem;padding:1rem 1.75rem .5rem;display:grid}.dual-token-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:.75rem;flex-direction:column;gap:.5rem;padding:.875rem 1rem;display:flex}.dual-token-card.master{background:linear-gradient(to bottom right,#faf5ff,#fff);border-color:#d8b4fe}.dual-token-card.room{background:linear-gradient(to bottom right,#f0fdf4,#fff);border-color:#bbf7d0}.dual-token-badge{letter-spacing:.05em;border-radius:.375rem;align-self:flex-start;padding:.15rem .5rem;font-size:.68rem;font-weight:800;display:inline-flex}.dual-token-badge.master{color:#7e22ce;background:#f3e8ff;border:1px solid #d8b4fe}.dual-token-badge.room{color:#15803d;background:#dcfce7;border:1px solid #86efac}.dual-token-header-room{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.ruang-selector-wrap{background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;align-items:center;gap:.4rem;padding:.2rem .5rem;display:flex}.ruang-select-dropdown{color:#0f172a;cursor:pointer;background:0 0;border:none;outline:none;max-width:480px;font-size:.85rem;font-weight:700}.dual-token-body{flex-direction:column;gap:.4rem;display:flex}.token-code-row{align-items:center;gap:.5rem;display:flex}.token-text{letter-spacing:.1em;font-family:JetBrains Mono,monospace,Consolas;font-size:1.15rem;font-weight:800}.token-text.master{color:#7e22ce}.dual-token-desc{color:#64748b;font-size:.75rem;line-height:1.35}.btn-copy-mini,.btn-refresh-mini{cursor:pointer;color:#475569;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.375rem;justify-content:center;align-items:center;padding:.25rem .4rem;transition:all .15s;display:inline-flex}.btn-copy-mini:hover,.btn-refresh-mini:hover{color:#0f172a;background:#e2e8f0}.active-room-detail-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.room-token-box{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;align-items:center;gap:.4rem;padding:.25rem .6rem;display:flex}.room-token-label{color:#64748b;font-size:.75rem}.room-token-value{color:#006948;font-family:JetBrains Mono,monospace;font-size:.95rem;font-weight:800}.room-pengawas-box{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;align-items:center;gap:.5rem;padding:.25rem .6rem;display:flex}.pengawas-title-label{color:#64748b;font-size:.72rem;display:block}.pengawas-name-val{color:#0f172a;font-size:.82rem}.btn-room-lock-toggle{cursor:pointer;border-radius:.375rem;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.78rem;font-weight:700;transition:all .15s;display:inline-flex}.btn-room-lock-toggle.open{color:#166534;background:#dcfce7;border:1px solid #86efac}.btn-room-lock-toggle.locked{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}.all-rooms-summary-text{color:#475569;font-size:.78rem;line-height:1.4}.pantau-kpi-row{grid-template-columns:repeat(4,1fr);gap:1rem;padding:.5rem 1.75rem;display:grid}.kpi-stat-box{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;align-items:center;gap:.875rem;padding:.75rem 1rem;display:flex}.kpi-icon-wrap{border-radius:.5rem;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.kpi-icon-wrap.blue{color:#2563eb;background:#eff6ff}.kpi-icon-wrap.green{color:#16a34a;background:#f0fdf4}.kpi-icon-wrap.red{color:#dc2626;background:#fef2f2}.kpi-icon-wrap.gray{color:#64748b;background:#f8fafc}.kpi-num{color:#0f172a;font-size:1.25rem;font-weight:800}.kpi-title{color:#64748b;font-size:.75rem}.pantau-body-grid{flex:1;grid-template-columns:1fr 360px;gap:1rem;padding:.5rem 1.75rem 1.25rem;display:grid;overflow:hidden}.peserta-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;display:flex;overflow:hidden}.table-search-sort-bar{background:#fff;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.search-input-wrapper{flex:1;max-width:460px;position:relative}.search-icon{color:#94a3b8;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.search-input-pantau{background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;outline:none;width:100%;padding:.5rem 2rem .5rem 2.25rem;font-size:.85rem;transition:all .15s}.search-input-pantau:focus{background:#fff;border-color:#006948;box-shadow:0 0 0 3px #0069481a}.clear-search-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;position:absolute;top:50%;right:.6rem;transform:translateY(-50%)}.sort-dropdown-wrapper{align-items:center;gap:.4rem;display:flex}.sort-label{color:#64748b;font-size:.8rem;font-weight:600}.sort-select-pantau{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;outline:none;padding:.45rem .75rem;font-size:.82rem;font-weight:600}.table-filter-bar{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex}.filter-pills{flex-wrap:wrap;gap:.35rem;display:flex}.pill-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.3rem .65rem;font-size:.75rem;font-weight:600;transition:all .15s}.pill-btn:hover{background:#e2e8f0}.pill-btn.active{color:#fff;background:#006948;border-color:#006948}.match-count-label{color:#64748b;font-size:.75rem}.table-responsive-pantau{flex:1;overflow-y:auto}.pantau-table{border-collapse:collapse;text-align:left;width:100%;font-size:.82rem}.pantau-table th{color:#475569;z-index:10;background:#f1f5f9;border-bottom:1px solid #cbd5e1;padding:.65rem .875rem;font-weight:700;position:sticky;top:0}.pantau-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:.65rem .875rem}.pantau-table tr:hover{background:#f8fafc}.cell-ruang-meja{flex-direction:column;gap:.1rem;display:flex}.ruang-tag{color:#64748b;font-size:.72rem}.meja-tag{color:#0f172a;font-size:.85rem}.cell-pengawas{color:#334155;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;max-width:160px;font-size:.78rem;display:flex;overflow:hidden}.cell-siswa{flex-direction:column;display:flex}.siswa-name{color:#0f172a;font-size:.85rem}.siswa-nisn{color:#64748b;font-size:.72rem}.kelas-badge-pill{color:#1e293b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:.25rem;padding:.15rem .45rem;font-size:.72rem;font-weight:700;display:inline-block}.progress-bar-wrap{background:#e2e8f0;border-radius:9999px;width:100%;height:6px;margin-bottom:.2rem;overflow:hidden}.progress-fill{background:#006948;border-radius:9999px;height:100%;transition:width .3s}.progress-text{color:#64748b;font-size:.72rem}.time-display{color:#334155;align-items:center;gap:.25rem;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600;display:inline-flex}.action-button-group{align-items:center;gap:.35rem;display:flex}.lock-action-wrap{align-items:center;gap:.4rem;display:flex}.status-badge-locked{color:#dc2626;background:#fee2e2;border-radius:.375rem;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.btn-action-unlock{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:.375rem;padding:.2rem .5rem;font-size:.72rem;font-weight:700}.btn-action-unlock:hover{background:#059669}.status-badge-done{color:#15803d;background:#dcfce7;border-radius:.375rem;padding:.2rem .5rem;font-size:.72rem;font-weight:700}.status-badge-pending{color:#9a3412;background:#ffedd5;border-radius:.375rem;padding:.2rem .45rem;font-size:.72rem;font-weight:700}.btn-action-reset{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;align-items:center;gap:.25rem;padding:.2rem .45rem;font-size:.72rem;font-weight:600;display:inline-flex}.status-badge-active{color:#2563eb;background:#eff6ff;border-radius:.375rem;padding:.2rem .45rem;font-size:.72rem;font-weight:700}.btn-action-warn{color:#92400e;cursor:pointer;background:#fef3c7;border:1px solid #fde68a;border-radius:.375rem;align-items:center;gap:.2rem;padding:.2rem .4rem;font-size:.72rem;font-weight:600;display:inline-flex}.btn-action-time{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:.375rem;align-items:center;gap:.15rem;padding:.2rem .4rem;font-size:.72rem;font-weight:600;display:inline-flex}.btn-action-finish{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fca5a5;border-radius:.375rem;padding:.2rem .4rem;font-size:.72rem;font-weight:600}.empty-table-row{text-align:center;color:#94a3b8;font-style:italic;padding:2.5rem 1rem!important}.insiden-feed-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;display:flex;overflow:hidden}.feed-header{background:#fef2f2;border-bottom:1px solid #fee2e2;align-items:center;gap:.6rem;padding:.75rem 1rem;display:flex}.feed-header h4{color:#991b1b;margin:0;font-size:.92rem;font-weight:700}.feed-sub{color:#b91c1c;margin:.1rem 0 0;font-size:.72rem}.feed-list{flex-direction:column;flex:1;gap:.65rem;padding:.75rem;display:flex;overflow-y:auto}.insiden-item{border:1px solid;border-radius:.5rem;flex-direction:column;gap:.35rem;padding:.65rem .75rem;display:flex}.insiden-item.severity-berat{background:#fef2f2;border-color:#fca5a5}.insiden-item.severity-sedang{background:#fffbeb;border-color:#fde68a}.insiden-head{justify-content:space-between;align-items:center;display:flex}.ins-nama{color:#0f172a;font-size:.8rem}.ins-time{color:#64748b;font-size:.7rem}.ins-pengawas-tag{color:#006948;align-items:center;gap:.25rem;font-size:.72rem;font-weight:600;display:inline-flex}.ins-pesan{color:#334155;margin:0;font-size:.76rem;line-height:1.35}.ins-actions{justify-content:flex-end;gap:.4rem;margin-top:.2rem;display:flex}.btn-feed-action{cursor:pointer;color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.2rem .5rem;font-size:.72rem;font-weight:600}.btn-feed-action.primary{color:#fff;background:#10b981;border-color:#10b981}.btn-feed-action.warn{color:#92400e;background:#fef3c7;border-color:#fde68a}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.modal-edit-kelas-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-edit-kelas-container{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-edit-kelas-header{background:#f8fafc;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.header-icon-title{align-items:center;gap:.875rem;display:flex}.header-icon-box{background:#e6f4ea;border-radius:.625rem;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.header-icon-title h3{color:#0f172a;margin:0;font-size:1.15rem;font-weight:700}.paket-name-sub{color:#64748b;margin:.15rem 0 0;font-size:.85rem}.paket-name-sub strong{color:#006948}.btn-close-edit-kelas{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.35rem;transition:all .15s}.btn-close-edit-kelas:hover{color:#0f172a;background:#e2e8f0}.modal-edit-kelas-infobox{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.625rem;flex-direction:column;gap:.5rem;margin:1.25rem 1.5rem .5rem;padding:.875rem 1rem;display:flex}.infobox-text{color:#166534;font-size:.85rem;line-height:1.4}.infobox-badge{color:#006948;background:#dcfce7;border-radius:.375rem;align-self:flex-start;align-items:center;gap:.4rem;padding:.25rem .6rem;font-size:.8rem;font-weight:600;display:inline-flex}.edit-kelas-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;align-items:center;gap:.5rem;margin:.5rem 1.5rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.edit-kelas-action-bar{justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.selected-count-label{color:#475569;font-size:.85rem;font-weight:600}.quick-btn-group{gap:.5rem;display:flex}.btn-quick-select{color:#006948;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:.375rem;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-quick-select:hover{background:#e2e8f0;border-color:#cbd5e1}.edit-kelas-grid-wrapper{flex:1;padding:.5rem 1.5rem 1.25rem;overflow-y:auto}.edit-kelas-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.edit-kelas-card{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #e2e8f0;border-radius:.625rem;justify-content:space-between;align-items:center;padding:.75rem .875rem;transition:all .15s;display:flex}.edit-kelas-card input[type=checkbox]{display:none}.edit-kelas-card:hover{background:#f8fafc;border-color:#006948}.edit-kelas-card.checked{background:#f0fdf4;border-color:#006948;box-shadow:0 0 0 1px #006948}.kelas-card-content{flex-direction:column;display:flex}.kelas-card-name{color:#0f172a;font-size:.92rem;font-weight:700}.edit-kelas-card.checked .kelas-card-name{color:#006948}.kelas-card-sub{color:#64748b;margin-top:.1rem;font-size:.75rem}.empty-check-dot{border:1.5px solid #cbd5e1;border-radius:50%;width:14px;height:14px;display:inline-block}.modal-edit-kelas-footer{background:#f8fafc;border-top:1px solid #f1f5f9;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-cancel-edit-kelas{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .15s}.btn-cancel-edit-kelas:hover{background:#f1f5f9}.btn-save-edit-kelas{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.6rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-save-edit-kelas:hover{background:#005238}.btn-save-edit-kelas:disabled,.btn-cancel-edit-kelas:disabled{opacity:.6;cursor:not-allowed}.editor-page-container{max-width:1400px;font-family:var(--font-sans,system-ui, -apple-system, sans-serif);flex-direction:column;gap:1.5rem;margin:0 auto;padding:1.75rem;display:flex}@media (width<=768px){.editor-page-container{gap:1.25rem;padding:1rem}}.editor-alert-banner{border-radius:.5rem;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;font-size:.9rem;display:flex}.editor-alert-banner.success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.editor-alert-banner.error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.alert-close-btn{color:inherit;cursor:pointer;background:0 0;border:none}.editor-header{color:#fff;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;padding:1.75rem 2rem;display:flex;box-shadow:0 10px 25px -5px #0f172a33}.editor-header-badge{color:#93c5fd;text-transform:uppercase;background:#3b82f633;border-radius:6px;margin-bottom:.4rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-block}.editor-header-left h1{color:#fff;margin:0 0 .4rem;font-size:1.7rem;font-weight:800}.editor-header-left p{color:#94a3b8;max-width:800px;margin:0;font-size:.92rem;line-height:1.5}.btn-primary-header{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.75rem 1.35rem;font-size:.95rem;font-weight:700;transition:background .2s;display:flex}.btn-primary-header:hover{background:#1d4ed8}.sesi-selector-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000000d}.sesi-selector-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.sesi-head-title{align-items:center;gap:.5rem;display:flex}.sesi-head-title h3{color:#0f172a;margin:0;font-size:1.1rem;font-weight:700}.sesi-count-text{color:#64748b;font-size:.8rem;font-weight:600}.sesi-empty-state{text-align:center;color:#64748b;background:#f8fafc;border-radius:.5rem;padding:1.25rem;font-size:.9rem}.sesi-pills-row{flex-wrap:wrap;gap:.75rem;display:flex}.sesi-pill-btn{text-align:left;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;flex-direction:column;gap:.35rem;min-width:200px;padding:.75rem 1rem;transition:all .2s;display:flex}.sesi-pill-btn:hover{background:#eff6ff;border-color:#2563eb}.sesi-pill-btn.active{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.sesi-pill-title{color:#1e293b;font-size:.95rem;font-weight:700}.sesi-pill-sub{color:#64748b;align-items:center;gap:.35rem;font-size:.75rem;display:flex}.paket-section-container{flex-direction:column;gap:1rem;display:flex}.paket-section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.paket-section-header h2{color:#0f172a;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:800;display:flex}.paket-section-sub{color:#64748b;margin:.25rem 0 0;font-size:.85rem}.btn-primary{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:.5rem;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.88rem;font-weight:700;transition:background .2s;display:flex}.btn-primary:hover{background:#1d4ed8}.paket-loading-state{text-align:center;color:#64748b;justify-content:center;align-items:center;gap:.5rem;padding:3rem;display:flex}.empty-paket-box{text-align:center;background:#fff;border:2px dashed #cbd5e1;border-radius:.75rem;flex-direction:column;align-items:center;gap:.75rem;padding:3rem 1.5rem;display:flex}.empty-icon-wrap{color:#2563eb;background:#eff6ff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.empty-paket-box h3{color:#1e293b;margin:0;font-size:1.15rem}.empty-paket-box p{color:#64748b;max-width:500px;margin:0;font-size:.88rem}.paket-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1.25rem;display:grid}@media (width<=640px){.paket-grid{grid-template-columns:1fr}}.paket-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;flex-direction:column;gap:.85rem;padding:1.25rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000000d}.paket-card:hover{box-shadow:0 4px 12px #00000014}.paket-card-top{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.paket-mapel-badge{color:#0369a1;text-transform:uppercase;background:#e0f2fe;border-radius:.25rem;margin-bottom:.25rem;padding:.15rem .45rem;font-size:.72rem;font-weight:800;display:inline-block}.paket-title{color:#0f172a;margin:0;font-size:1.1rem;font-weight:700}.paket-deskripsi{color:#64748b;margin:.2rem 0 0;font-size:.8rem}.delete-paket-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:.25rem;padding:.35rem}.delete-paket-btn:hover{color:#dc2626;background:#fee2e2}.paket-meta-row{color:#475569;background:#f8fafc;border-radius:.375rem;gap:1rem;padding:.45rem .75rem;font-size:.8rem;display:flex}.paket-meta-item{align-items:center;gap:.3rem;font-weight:600;display:flex}.paket-options-row{gap:.5rem;display:flex}.option-badge{border-radius:.25rem;padding:.2rem .45rem;font-size:.72rem;font-weight:700}.option-badge.active{color:#166534;background:#dcfce7}.option-badge.inactive{color:#64748b;background:#f1f5f9}.paket-kelas-section{flex-direction:column;gap:.35rem;display:flex}.paket-kelas-header-row{justify-content:space-between;align-items:center;display:flex}.paket-kelas-label{color:#475569;font-size:.75rem;font-weight:700}.btn-edit-kelas-trigger{color:#006948;cursor:pointer;background:#e6f4ea;border:1px solid #bbf7d0;border-radius:.25rem;align-items:center;gap:.25rem;padding:.15rem .5rem;font-size:.72rem;font-weight:700;transition:all .15s;display:inline-flex}.btn-edit-kelas-trigger:hover{color:#fff;background:#006948;border-color:#006948}.paket-kelas-tags{flex-wrap:wrap;gap:.35rem;display:flex}.kelas-tag{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:.25rem;padding:.15rem .45rem;font-size:.72rem;font-weight:600}.kelas-tag-more{color:#2563eb;padding:.15rem .45rem;font-size:.72rem;font-weight:600}.card-attached-submenu{border-top:1px solid #e2e8f0;flex-direction:column;gap:.5rem;margin-top:.25rem;padding-top:.75rem;display:flex}.submenu-title{text-transform:uppercase;color:#64748b;letter-spacing:.5px;font-size:.72rem;font-weight:800}.submenu-buttons-grid{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}@media (width<=480px){.submenu-buttons-grid{grid-template-columns:1fr}}.btn-submenu{cursor:pointer;text-align:center;border:1px solid #0000;border-radius:.375rem;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .75rem;font-size:.8rem;font-weight:700;transition:all .2s;display:flex}.btn-submenu.edit{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.btn-submenu.edit:hover{color:#fff;background:#2563eb}.btn-submenu.pantau{color:#006948;background:#f0fdf4;border-color:#bbf7d0}.btn-submenu.pantau:hover{color:#fff;background:#006948}.btn-submenu.koreksi{color:#86198f;background:#fdf4ff;border-color:#f5d0fe}.btn-submenu.koreksi:hover{color:#fff;background:#a21caf}.btn-submenu.rilis.released{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.btn-submenu.rilis.held{color:#b45309;background:#fffbeb;border-color:#fde68a}.btn-submenu.ekspor{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.btn-submenu.ekspor:hover{color:#fff;background:#1d4ed8}.editor-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:900;background:#0f172ab3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.editor-modal{background:#fff;border-radius:.75rem;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #0003}.editor-modal-header{color:#fff;background:#0f172a;flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;display:flex}.editor-modal form{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.editor-modal-header h3{margin:0;font-size:1.2rem;font-weight:700}.modal-subtext{color:#94a3b8;margin:.25rem 0 0;font-size:.82rem}.editor-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none}.editor-modal-close:hover{color:#fff}.editor-modal-body{flex-direction:column;flex:1;gap:1.15rem;min-height:0;padding:1.5rem;display:flex;overflow-y:auto}.import-dropzone-active{text-align:center;background:#f0fdf4;border:2px dashed #86efac;border-radius:.5rem;flex-direction:column;align-items:center;gap:.4rem;padding:1.25rem;display:flex}.import-dropzone-active h4{color:#14532d;margin:0;font-size:.95rem}.import-dropzone-active p{color:#166534;margin:0;font-size:.78rem}.btn-browse-file{color:#fff;cursor:pointer;background:#006948;border-radius:.375rem;align-items:center;gap:.35rem;margin-top:.4rem;padding:.45rem .85rem;font-size:.82rem;font-weight:700;display:inline-flex}.form-group label{color:#334155;margin-bottom:.35rem;font-size:.85rem;font-weight:700;display:block}.form-control{box-sizing:border-box;border:1px solid #cbd5e1;border-radius:.375rem;width:100%;padding:.65rem .85rem;font-size:.9rem}.form-control:focus{border-color:#2563eb;outline:none}.form-row-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=550px){.form-row-2{grid-template-columns:1fr}}.toggles-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;gap:1rem;padding:.75rem;display:flex}@media (width<=550px){.toggles-group{flex-direction:column}}.toggle-item{cursor:pointer;flex:1;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.toggle-label{color:#1e293b;font-size:.85rem;font-weight:700}.toggle-desc{color:#64748b;font-size:.75rem}.kelas-selection-box{background:#f8fafc;border:1px solid #cbd5e1;border-radius:.5rem;padding:1rem}.kelas-selection-header{color:#1e293b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;font-weight:700;display:flex}.kelas-bulk-btns{gap:.35rem;display:flex}.kelas-bulk-btn{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.25rem;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.kelas-checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem;max-height:160px;display:grid;overflow-y:auto}.kelas-checkbox-card{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.82rem;font-weight:600;transition:all .2s;display:flex}.kelas-checkbox-card.checked{color:#1d4ed8;background:#eff6ff;border-color:#2563eb}.editor-modal-footer{background:#f8fafc;border-top:1px solid #e2e8f0;flex-shrink:0;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn-secondary{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;padding:.55rem 1rem;font-size:.88rem;font-weight:600}.editor-incident-section{background:var(--cbt-surface-container-lowest,#fff);border:1px solid #fed7aa;border-left:4px solid #f97316;border-radius:14px;flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex;box-shadow:0 4px 16px #f973160f}.editor-incident-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.editor-incident-badge-icon{color:#ea580c;background:#f973161f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.badge-level-2{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border-radius:9999px;padding:.2rem .6rem;font-size:.72rem;font-weight:700}.badge-live-pulse{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:9999px;align-items:center;gap:.4rem;padding:.15rem .5rem;font-size:.72rem;font-weight:600;display:inline-flex}.pulse-dot{background-color:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.8s cubic-bezier(.66,0,0,1) infinite pulse-ring;box-shadow:0 0 #22c55eb3}@keyframes pulse-ring{0%{box-shadow:0 0 #22c55eb3}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.btn-monitor-portal{color:#fff;background:#006948;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .95rem;font-size:.82rem;font-weight:600;text-decoration:none;transition:opacity .2s;display:inline-flex}.btn-monitor-portal:hover{opacity:.9}.editor-incident-list{flex-direction:column;gap:.75rem;display:flex}.editor-incident-card{background:#fffaf5;border:1px solid #ffedd5;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1.15rem;display:flex}.incident-student-info{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.incident-room-badge{color:#0369a1;background:#e0f2fe;border-radius:6px;padding:.15rem .5rem;font-size:.75rem;font-weight:700}.incident-seat-badge{color:#475569;background:#f1f5f9;border-radius:6px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.incident-student-name{color:#1e293b;font-size:.9rem;font-weight:700}.incident-type{color:#c2410c;align-items:center;gap:.4rem;margin-top:.25rem;font-size:.82rem;font-weight:600;display:flex}.incident-actions{align-items:center;gap:.5rem;display:flex}.btn-incident-warn{color:#c2410c;cursor:pointer;background:#fff7ed;border:1px solid #fdba74;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.btn-incident-warn:hover{background:#ffedd5}.btn-incident-lock{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;transition:all .2s}.btn-incident-lock:hover{background:#fee2e2}.incident-status-pill{text-transform:capitalize;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:700}.incident-status-menunggu{color:#b45309;background:#fef3c7}.incident-status-ditegur{color:#0369a1;background:#e0f2fe}.incident-status-terkunci{color:#b91c1c;background:#fee2e2}.paket-owner-badge{color:#0f766e;background:#ccfbf1;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-block}.cbt-koreksi-page{max-width:1280px;margin:0 auto;padding:1.75rem}.koreksi-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.btn-back-editor{color:#64748b;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;align-items:center;margin-bottom:.75rem;padding:.35rem .75rem;font-size:.825rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-back-editor:hover{color:#1e293b;background:#e2e8f0}.title-area{align-items:center;gap:1rem;display:flex}.icon-badge{background:#e6f4ea;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.main-title{color:#0f172a;margin:0;font-size:1.45rem;font-weight:700}.subtitle{color:#64748b;margin:.2rem 0 0;font-size:.875rem}.btn-refresh{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;padding:.6rem;display:flex}.btn-refresh:hover{background:#f8fafc}.koreksi-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.koreksi-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:1rem;padding:1.15rem;display:flex}.stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.stat-val{color:#0f172a;font-size:1.4rem;font-weight:700}.stat-lbl{text-transform:uppercase;color:#64748b;font-size:.775rem;font-weight:600}.koreksi-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px -1px #00000008}.table-card-header{border-bottom:1px solid #e2e8f0;padding:1.25rem 1.5rem}.table-card-header h3{color:#0f172a;margin:0;font-size:1.1rem;font-weight:700}.table-responsive{overflow-x:auto}.koreksi-table{border-collapse:collapse;text-align:left;width:100%;font-size:.9rem}.koreksi-table th{color:#475569;background:#f8fafc;border-bottom:1.5px solid #e2e8f0;padding:.85rem 1rem;font-weight:600}.koreksi-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:.85rem 1rem}.koreksi-table tr:hover{background:#fcfdfd}.badge-status-ujian{color:#475569;text-transform:uppercase;background:#f1f5f9;border-radius:4px;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.badge-koreksi{border-radius:9999px;align-items:center;padding:.25rem .6rem;font-size:.775rem;font-weight:700;display:inline-flex}.badge-koreksi.is-done{color:#15803d;background:#dcfce7}.badge-koreksi.is-pending{color:#b45309;background:#fef3c7}.badge-koreksi.is-none{color:#64748b;background:#f1f5f9}.btn-action-koreksi{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:6px;align-items:center;padding:.45rem .85rem;font-size:.825rem;font-weight:600;transition:background .15s;display:inline-flex}.btn-action-koreksi:hover{background:#005238}.modal-koreksi-sheet{max-width:820px}.koreksi-items-form{flex-direction:column;gap:1.25rem;display:flex}.koreksi-item-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:1.25rem}.item-card-top{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;margin-bottom:.85rem;padding-bottom:.4rem;display:flex}.nomor-badge{color:#006948;background:#e6f4ea;border-radius:4px;padding:.2rem .6rem;font-size:.85rem;font-weight:700}.bobot-badge{color:#475569;font-size:.8rem}.item-pertanyaan-box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.85rem;padding:.85rem 1rem;font-size:.95rem}.item-kunci-panduan{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:.85rem;padding:.75rem 1rem;font-size:.85rem}.kunci-label{margin-bottom:.25rem;font-weight:700;display:block}.item-kunci-panduan p{margin:0}.item-jawaban-siswa{margin-bottom:1rem}.jawaban-label{color:#334155;margin-bottom:.35rem;font-size:.825rem;font-weight:700;display:block}.jawaban-text-box{color:#0f172a;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;min-height:50px;padding:.85rem 1rem;font-size:.95rem}.item-score-input-row{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:flex-end;align-items:center;gap:.85rem;padding:.75rem 1rem;display:flex}.score-label{color:#1e293b;font-size:.875rem;font-weight:700}.score-field-wrapper{align-items:center;gap:.5rem;display:flex}.score-input-box{text-align:center;color:#006948;border:2px solid #006948;border-radius:6px;outline:none;width:80px;padding:.45rem .6rem;font-size:1.1rem}.score-max-suffix{color:#64748b;font-size:.85rem;font-weight:600}.koreksi-feedback-box{flex-direction:column;gap:.35rem;display:flex}.feedback-label{color:#334155;font-size:.85rem;font-weight:700}.feedback-textarea{border:1px solid #cbd5e1;border-radius:8px;outline:none;width:100%;padding:.75rem;font-family:inherit;font-size:.875rem}.feedback-textarea:focus{border-color:#006948}.modal-sticky-bottom-summary{background:#fff;border:1.5px solid #a7f3d0;border-radius:10px;justify-content:space-between;align-items:center;margin-top:.5rem;padding:.85rem 1.25rem;display:flex}.total-score-live{align-items:center;gap:.5rem;font-size:.95rem;display:flex}.total-score-live strong{font-size:1.25rem}.btn-submit-score{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:8px;align-items:center;padding:.65rem 1.35rem;font-size:.9rem;font-weight:700;transition:background .15s;display:inline-flex}.btn-submit-score:hover:not(:disabled){background:#005238}.btn-submit-score:disabled{opacity:.6;cursor:not-allowed}:root{--pengawas-primary:#006948;--pengawas-primary-container:#00855d;--pengawas-primary-fixed:#85f8c4;--pengawas-primary-fixed-dim:#68dba9;--pengawas-on-primary:#fff;--pengawas-on-primary-fixed:#002114;--pengawas-on-primary-fixed-variant:#005137;--pengawas-surface:#f6f8f7;--pengawas-surface-lowest:#fff;--pengawas-surface-container:#e8edeb;--pengawas-surface-container-high:#e2e7ff;--pengawas-surface-variant:#dae2fd;--pengawas-outline:#6d7a72;--pengawas-outline-variant:#bccac0;--pengawas-on-surface:#131b2e;--pengawas-on-surface-variant:#3d4a42;--pengawas-error:#ba1a1a;--pengawas-error-container:#ffdad6;--pengawas-on-error:#fff;--pengawas-tertiary:#8d4b00;--pengawas-tertiary-container:#ffdcc3;--pengawas-tertiary-fixed:#ffb77d;--pengawas-font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--pengawas-font-mono:"JetBrains Mono", "Fira Code", monospace}.pengawas-portal-wrapper{background-color:var(--pengawas-surface);font-family:var(--pengawas-font-sans);color:var(--pengawas-on-surface);box-sizing:border-box;flex-direction:column;min-height:100vh;display:flex;position:relative}.pengawas-header{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--pengawas-surface-container);background-color:#fffffff0;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex;position:sticky;top:0;box-shadow:0 1px 4px #00000008}.pengawas-brand-title{color:var(--pengawas-primary);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:800}.pengawas-page-heading{color:var(--pengawas-on-surface);margin:0;font-size:1.15rem;font-weight:700;line-height:1.2}.pengawas-header-actions{align-items:center;gap:.6rem;display:flex}.pengawas-icon-btn{cursor:pointer;width:2.35rem;height:2.35rem;color:var(--pengawas-on-surface-variant);background:0 0;border:none;border-radius:.75rem;justify-content:center;align-items:center;transition:all .2s;display:flex}.pengawas-icon-btn:hover{background-color:var(--pengawas-error-container);color:var(--pengawas-error)}.pengawas-avatar-badge{width:2.35rem;height:2.35rem;color:var(--pengawas-primary);background-color:#0069481a;border:1px solid #00694833;border-radius:9999px;justify-content:center;align-items:center;font-weight:700;display:flex}.pengawas-main-content{flex-direction:column;flex:1;gap:1rem;width:100%;max-width:640px;margin:0 auto;padding:1.25rem 1rem 6.5rem;display:flex}.pengawas-room-selector{scrollbar-width:none;align-items:center;gap:.5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.pengawas-room-selector::-webkit-scrollbar{display:none}.pengawas-room-pill{white-space:nowrap;border:1px solid var(--pengawas-surface-container);background-color:var(--pengawas-surface-lowest);color:var(--pengawas-on-surface-variant);cursor:pointer;border-radius:9999px;padding:.4rem .85rem;font-size:.78rem;font-weight:600;transition:all .15s}.pengawas-room-pill.active{background-color:var(--pengawas-primary);color:var(--pengawas-on-primary);border-color:var(--pengawas-primary);box-shadow:0 2px 8px #00694840}.pengawas-card{background-color:var(--pengawas-surface-lowest);border:1px solid var(--pengawas-surface-container);border-radius:1.15rem;flex-direction:column;gap:.9rem;padding:1.15rem;display:flex;box-shadow:0 2px 10px #00000009}.pengawas-profile-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.pengawas-profile-left{align-items:center;gap:.75rem;min-width:0;display:flex}.pengawas-profile-icon{width:2.75rem;height:2.75rem;color:var(--pengawas-primary);background-color:#0069481a;border:1px solid #00694833;border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pengawas-profile-name{color:var(--pengawas-on-surface);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1rem;font-weight:700;overflow:hidden}.pengawas-profile-meta{color:var(--pengawas-on-surface-variant);margin-top:.2rem;font-size:.78rem;font-weight:500}.pengawas-badge-sesi{background-color:var(--pengawas-primary-fixed);color:var(--pengawas-on-primary-fixed-variant);border-radius:9999px;align-items:center;padding:.3rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #0000000d}.pengawas-stats-container{background-color:var(--pengawas-surface);border:1px solid #e8edebcc;border-radius:.875rem;flex-direction:column;gap:.75rem;padding:.9rem;display:flex}.pengawas-subject-row{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.pengawas-stats-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.pengawas-stat-box{background-color:var(--pengawas-surface-lowest);border:1px solid var(--pengawas-surface-container);text-align:center;border-radius:.65rem;flex-direction:column;align-items:center;padding:.6rem .4rem;display:flex}.pengawas-stat-value{align-items:center;gap:.3rem;font-size:1.05rem;font-weight:800;display:flex}.pengawas-stat-label{color:var(--pengawas-on-surface-variant);margin-top:.15rem;font-size:.68rem;font-weight:600}.pengawas-card-title-row{justify-content:space-between;align-items:center;display:flex}.pengawas-card-title{color:var(--pengawas-on-surface);align-items:center;gap:.5rem;margin:0;font-size:.92rem;font-weight:700;display:flex}.pengawas-status-pill{border-radius:9999px;align-items:center;gap:.4rem;padding:.2rem .65rem;font-size:.72rem;font-weight:600;display:inline-flex}.pengawas-status-pill.active{color:#166534;background-color:#f0fdf4;border:1px solid #bbf7d0}.pengawas-status-pill.inactive{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca}.pengawas-pulse-dot{background-color:#22c55e;border-radius:9999px;width:.45rem;height:.45rem;animation:1.8s infinite pengawas-pulse}@keyframes pengawas-pulse{0%{opacity:.8;transform:scale(.95)}50%{opacity:1;transform:scale(1.3)}to{opacity:.8;transform:scale(.95)}}.pengawas-token-display-box{background:linear-gradient(180deg, #0069480a 0%, var(--pengawas-surface) 100%);border:1px solid #00694826;border-radius:.875rem;flex-direction:column;align-items:center;gap:.85rem;padding:1.15rem;display:flex}.pengawas-token-value-row{justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.pengawas-token-code{font-family:var(--pengawas-font-mono);letter-spacing:.18em;color:var(--pengawas-primary);-webkit-user-select:all;user-select:all;text-shadow:0 1px 2px #0000000d;font-size:2.3rem;font-weight:800}.pengawas-copy-btn{background-color:var(--pengawas-surface-lowest);height:2.5rem;color:var(--pengawas-primary);cursor:pointer;border:1px solid #00694840;border-radius:.65rem;align-items:center;gap:.4rem;padding:0 .85rem;font-size:.78rem;font-weight:700;transition:all .15s;display:inline-flex;box-shadow:0 1px 3px #0000000a}.pengawas-copy-btn:hover{background-color:var(--pengawas-primary);color:var(--pengawas-on-primary)}.pengawas-copy-btn:active{transform:scale(.96)}.pengawas-timer-wrapper{flex-direction:column;gap:.35rem;width:100%;display:flex}.pengawas-timer-labels{color:var(--pengawas-on-surface-variant);justify-content:space-between;align-items:center;font-size:.74rem;font-weight:500;display:flex}.pengawas-timer-badge{font-family:var(--pengawas-font-mono);background-color:var(--pengawas-surface-container);color:var(--pengawas-on-surface);border-radius:.35rem;padding:.15rem .5rem;font-weight:700}.pengawas-progress-bar-bg{background-color:var(--pengawas-surface-container);border-radius:9999px;width:100%;height:.5rem;overflow:hidden}.pengawas-progress-fill{background-color:var(--pengawas-primary);border-radius:9999px;height:100%;transition:width 1s linear}.pengawas-token-action-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pengawas-autorefresh-hint{color:var(--pengawas-on-surface-variant);align-items:center;gap:.35rem;font-size:.72rem;display:flex}.pengawas-btn-group{align-items:center;gap:.5rem;display:flex}.pengawas-btn-refresh{background-color:var(--pengawas-primary);color:var(--pengawas-on-primary);cursor:pointer;border:none;border-radius:.75rem;align-items:center;gap:.4rem;padding:.55rem .95rem;font-size:.78rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 2px 6px #00694833}.pengawas-btn-refresh:hover{background-color:var(--pengawas-primary-container)}.pengawas-btn-refresh:active{transform:scale(.96)}.pengawas-btn-toggle{border:1px solid var(--pengawas-surface-container);background-color:var(--pengawas-surface-lowest);color:var(--pengawas-on-surface);cursor:pointer;border-radius:.75rem;align-items:center;gap:.4rem;padding:.55rem .85rem;font-size:.78rem;font-weight:700;transition:all .15s;display:inline-flex}.pengawas-btn-toggle:hover{background-color:var(--pengawas-surface-container)}.pengawas-violation-card{background-color:#fef2f2b3;border:1px solid #ba1a1a40;border-radius:.875rem;flex-direction:column;gap:.65rem;padding:.85rem;display:flex}.pengawas-violation-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.pengawas-violation-student{color:var(--pengawas-on-surface);font-size:.88rem;font-weight:700}.pengawas-seat-pill{font-family:var(--pengawas-font-mono);color:var(--pengawas-on-surface);background-color:#fff;border:1px solid #ba1a1a4d;border-radius:.35rem;margin-left:.4rem;padding:.15rem .45rem;font-size:.72rem;font-weight:700}.pengawas-violation-desc{color:var(--pengawas-error);align-items:center;gap:.35rem;margin-top:.2rem;font-size:.75rem;font-weight:600;display:flex}.pengawas-violation-actions{align-items:center;gap:.5rem;display:flex}.pengawas-action-warn{border:1px solid var(--pengawas-surface-container);color:var(--pengawas-on-surface);cursor:pointer;background-color:#fff;border-radius:.55rem;flex:1;padding:.45rem .75rem;font-size:.75rem;font-weight:600;transition:all .15s}.pengawas-action-warn:hover{background-color:var(--pengawas-surface-container)}.pengawas-action-lock{background-color:var(--pengawas-error);color:var(--pengawas-on-error);cursor:pointer;border:none;border-radius:.55rem;flex:1;padding:.45rem .75rem;font-size:.75rem;font-weight:600;transition:all .15s}.pengawas-action-lock:hover{background-color:#991b1b}.pengawas-safe-item{background-color:var(--pengawas-surface);border:1px solid var(--pengawas-surface-container);border-radius:.75rem;justify-content:space-between;align-items:center;padding:.65rem .85rem;font-size:.78rem;display:flex}.pengawas-search-bar{border:1px solid var(--pengawas-surface-container);background-color:var(--pengawas-surface-lowest);width:100%;color:var(--pengawas-on-surface);box-sizing:border-box;border-radius:.75rem;outline:none;padding:.6rem .9rem;font-size:.82rem}.pengawas-search-bar:focus{border-color:var(--pengawas-primary);box-shadow:0 0 0 2px #00694826}.pengawas-student-table{border-collapse:collapse;width:100%;font-size:.8rem}.pengawas-student-table th{text-align:left;border-bottom:1px solid var(--pengawas-surface-container);color:var(--pengawas-on-surface-variant);text-transform:uppercase;letter-spacing:.05em;padding:.5rem .6rem;font-size:.72rem;font-weight:600}.pengawas-student-table td{border-bottom:1px solid var(--pengawas-surface-container);padding:.65rem .6rem}.pengawas-form-group{flex-direction:column;gap:.35rem;display:flex}.pengawas-form-label{color:var(--pengawas-on-surface);font-size:.78rem;font-weight:600}.pengawas-textarea{border:1px solid var(--pengawas-surface-container);width:100%;color:var(--pengawas-on-surface);resize:vertical;box-sizing:border-box;border-radius:.75rem;min-height:100px;padding:.75rem;font-family:inherit;font-size:.82rem}.pengawas-textarea:focus{border-color:var(--pengawas-primary);outline:none;box-shadow:0 0 0 2px #00694826}.pengawas-bottom-nav{bottom:0;z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--pengawas-surface-container);padding-bottom:max(env(safe-area-inset-bottom,0px), 8px);background-color:#fffffff2;position:fixed;inset-inline:0;box-shadow:0 -2px 10px #00000008}.pengawas-bottom-nav-inner{justify-content:space-around;align-items:center;max-width:500px;height:3.5rem;margin:0 auto;padding:0 1rem;display:flex}.pengawas-nav-item{min-width:4.5rem;height:3rem;color:var(--pengawas-on-surface-variant);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;font-size:.7rem;font-weight:500;transition:all .15s;display:flex}.pengawas-nav-item:hover{color:var(--pengawas-on-surface)}.pengawas-nav-item.active{color:var(--pengawas-primary);font-weight:700}.pengawas-toast{color:#f8fafc;z-index:50;pointer-events:none;background-color:#1e293b;border-radius:9999px;align-items:center;gap:.5rem;padding:.55rem 1.15rem;font-size:.78rem;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:5rem;left:50%;transform:translate(-50%)translateY(0);box-shadow:0 10px 25px #0003}.pengawas-toast.hidden{opacity:0;transform:translate(-50%)translateY(12px)}.pengawas-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#0f172a99;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.pengawas-modal-card{border:1px solid var(--pengawas-surface-container);background:#fff;border-radius:1rem;width:100%;max-width:440px;animation:.2s cubic-bezier(.16,1,.3,1) modalPop;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.pengawas-modal-header{border-bottom:1px solid var(--pengawas-surface-container);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.pengawas-modal-header h3{color:var(--pengawas-on-surface);margin:0;font-size:1rem;font-weight:700}.pengawas-modal-body{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.pengawas-modal-footer{background:var(--pengawas-surface);border-top:1px solid var(--pengawas-surface-container);justify-content:flex-end;gap:.75rem;padding:.85rem 1.25rem;display:flex}.pengawas-btn-cancel{border:1px solid var(--pengawas-outline-variant);color:var(--pengawas-on-surface-variant);cursor:pointer;background:#fff;border-radius:.5rem;padding:.5rem 1rem;font-size:.82rem;font-weight:600}.pengawas-btn-submit{background:var(--pengawas-primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.4rem;padding:.5rem 1.15rem;font-size:.82rem;font-weight:600;display:flex}.pengawas-badge-online{color:#059669;align-items:center;gap:.3rem;font-size:.7rem;font-weight:700;display:inline-flex}.pengawas-badge-offline{color:#6b7280;align-items:center;gap:.3rem;font-size:.7rem;font-weight:600;display:inline-flex}.pengawas-online-dot{background-color:#10b981;border-radius:9999px;width:.5rem;height:.5rem;box-shadow:0 0 0 2px #10b98133}.pengawas-offline-dot{background-color:#9ca3af;border-radius:9999px;width:.5rem;height:.5rem}.pengawas-student-action-btn{cursor:pointer;border:1px solid #0000;border-radius:.4rem;align-items:center;gap:.25rem;padding:.3rem .6rem;font-size:.72rem;font-weight:600;transition:all .15s;display:inline-flex}.pengawas-student-action-btn.unlock{background:var(--pengawas-error-container);color:var(--pengawas-error);border-color:#fecaca}.pengawas-student-action-btn.unlock:hover{background:#fee2e2}.pengawas-student-action-btn.time{background:var(--pengawas-surface-container);color:var(--pengawas-on-surface);border-color:var(--pengawas-outline-variant)}.pengawas-student-action-btn.time:hover{background:#e2e8f0}.pkp-root{flex-direction:column;gap:1rem;display:flex}.pkp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.pkp-header-title{align-items:flex-start;gap:.75rem;display:flex}.pkp-icon-badge{color:#dc2626;background:#ef44441f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.pkp-header-title h3{color:#0f172a;margin:0;font-size:1.05rem;font-weight:700}.pkp-header-title p{color:#64748b;margin:.2rem 0 0;font-size:.8rem}.pkp-btn-refresh{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.35rem;padding:.5rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.pkp-btn-refresh:disabled{opacity:.6;cursor:not-allowed}.pkp-spin{animation:.9s linear infinite pkp-spin}@keyframes pkp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pkp-stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.6rem;display:grid}.pkp-stat{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:.2rem;padding:.65rem .8rem;display:flex}.pkp-stat-label{color:#64748b;font-size:.72rem;font-weight:600}.pkp-stat-value{color:#0f172a;font-size:1.35rem;font-weight:800}.pkp-stat.is-warning .pkp-stat-value{color:#d97706}.pkp-stat.is-info .pkp-stat-value{color:#0284c7}.pkp-stat.is-danger .pkp-stat-value{color:#dc2626}.pkp-alert{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem .8rem;font-size:.85rem;display:flex}.pkp-empty{color:#94a3b8;text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.pkp-key{display:none}.pkp-list{flex-direction:column;gap:.7rem;display:flex}.pkp-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #94a3b8;border-radius:10px;padding:.8rem .9rem}.pkp-card.sev-ringan{border-left-color:#f59e0b}.pkp-card.sev-sedang{border-left-color:#ea580c}.pkp-card.sev-berat{border-left-color:#dc2626}.pkp-card-head{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.pkp-nama{color:#0f172a;font-size:.95rem;font-weight:700}.pkp-meta{color:#64748b;margin-top:.1rem;font-size:.75rem;display:block}.pkp-badges{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.pkp-badge{text-transform:uppercase;letter-spacing:.02em;border-radius:999px;padding:.2rem .5rem;font-size:.68rem;font-weight:700}.pkp-badge.sev-ringan{color:#b45309;background:#fffbeb}.pkp-badge.sev-sedang{color:#c2410c;background:#fff7ed}.pkp-badge.sev-berat{color:#b91c1c;background:#fef2f2}.pkp-badge.status-menunggu{color:#1d4ed8;background:#eff6ff}.pkp-badge.status-ditegur{color:#a16207;background:#fefce8}.pkp-badge.status-dibuka{color:#047857;background:#ecfdf5}.pkp-badge.status-disanksi{color:#b91c1c;background:#fef2f2}.pkp-badge.status-selesai{color:#475569;background:#f1f5f9}.pkp-card-body{flex-direction:column;gap:.25rem;margin-top:.5rem;display:flex}.pkp-jenis{color:#334155;font-size:.83rem;font-weight:700}.pkp-deskripsi{color:#475569;margin:0;font-size:.82rem;line-height:1.5}.pkp-time{color:#94a3b8;font-size:.72rem}.pkp-bukti{color:#2563eb;font-size:.78rem;font-weight:600;text-decoration:none}.pkp-bukti.none{color:#94a3b8;align-items:center;gap:.25rem;display:inline-flex}.pkp-actions{flex-wrap:wrap;gap:.45rem;margin-top:.7rem;display:flex}.pkp-btn{cursor:pointer;color:#fff;border:none;border-radius:8px;align-items:center;gap:.3rem;padding:.45rem .75rem;font-size:.78rem;font-weight:700;display:inline-flex}.pkp-btn:disabled{opacity:.6;cursor:not-allowed}.pkp-btn.tegur{background:#f59e0b}.pkp-btn.buka{background:#059669}.pkp-btn.sanksi{background:#dc2626}.pkp-btn.potong{background:#d97706}.pkp-btn.diskualifikasi{background:#991b1b}.pkp-modal-overlay{z-index:1200;background:#0f172a99;justify-content:center;align-items:center;padding:1.25rem;display:flex;position:fixed;inset:0}.pkp-modal{background:#fff;border-radius:14px;width:100%;max-width:420px;overflow:hidden}.pkp-modal-head{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:.9rem 1.1rem;display:flex}.pkp-modal-head h4{margin:0;font-size:1rem;font-weight:700}.pkp-modal-head button{cursor:pointer;color:#64748b;background:0 0;border:none}.pkp-modal-body{flex-direction:column;gap:.7rem;padding:1.1rem;display:flex}.pkp-field{color:#475569;flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;display:flex}.pkp-field input{border:1px solid #cbd5e1;border-radius:8px;padding:.5rem .6rem;font-size:.9rem}.ckh-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:16px;padding:16px 18px}.ckh-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.ckh-head h3{color:#0f172a;margin:0;font-size:1.05rem}.ckh-badge{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600}.ckh-on{color:#065f46;background:#ecfdf5}.ckh-off{color:#b45309;background:#fffbeb}.ckh-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:10px;padding:8px 12px;font-size:.85rem}.ckh-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ckh-row select{border:1px solid #cbd5e1;border-radius:8px;flex:1;min-width:220px;padding:8px 10px;font-size:.9rem}.ckh-btn-in,.ckh-btn-out{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-weight:600}.ckh-btn-in{color:#fff;background:#1d4ed8}.ckh-btn-in:disabled{opacity:.55;cursor:not-allowed}.ckh-btn-out{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.ckh-muted{color:#94a3b8;font-size:.9rem}.ckh-note{color:#64748b;margin:10px 0 0;font-size:.78rem}.cbt-siswa-view{max-width:1080px;margin:0 auto;padding:1.5rem}@media (width<=640px){.cbt-siswa-view{padding:1rem}}.siswa-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.siswa-header-left{flex:1}.siswa-header-actions{align-items:center;display:flex}.siswa-section-header{justify-content:space-between;align-items:center;margin-top:2rem;margin-bottom:1.25rem;display:flex}.section-title-group{align-items:center;gap:.6rem;display:flex}.section-title-group h2{color:#0f172a;margin:0;font-size:1.25rem;font-weight:700}.section-badge{color:#475569;background:#e2e8f0;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600}.paket-siswa-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}@media (width<=640px){.paket-siswa-grid{grid-template-columns:1fr}}.paket-siswa-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;flex-direction:column;padding:1.25rem;transition:all .2s;display:flex;box-shadow:0 4px 6px -1px #0000000d}.paket-siswa-card:hover{border-color:#006948;box-shadow:0 10px 15px -3px #00694814}.paket-card-top{justify-content:space-between;align-items:center;margin-bottom:.85rem;display:flex}.paket-mapel-badge{color:#006948;text-transform:uppercase;background:#e6f4ea;border-radius:6px;padding:.25rem .65rem;font-size:.775rem;font-weight:700}.paket-durasi-tag{color:#64748b;align-items:center;font-size:.8rem;font-weight:600;display:flex}.paket-nama-title{color:#0f172a;margin:0 0 .4rem;font-size:1.15rem;font-weight:700;line-height:1.4}.paket-deskripsi-text{color:#64748b;margin:0 0 1rem;font-size:.875rem;line-height:1.5}.paket-meta-info{border-top:1px solid #f1f5f9;flex-direction:column;gap:.4rem;margin-top:auto;margin-bottom:1.25rem;padding-top:.75rem;display:flex}.meta-row{color:#475569;align-items:center;gap:.5rem;font-size:.825rem;display:flex}.paket-card-bottom{margin-top:auto}.btn-masuk-ujian{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:8px;justify-content:center;align-items:center;width:100%;padding:.75rem 1rem;font-size:.925rem;font-weight:600;transition:background .15s;display:flex}.btn-masuk-ujian:hover{background:#005238}.modal-verifikasi{max-width:580px}.verifikasi-identitas-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:1.5rem;padding:1rem 1.25rem}.identitas-header{border-bottom:1px solid #e2e8f0;align-items:center;margin-bottom:.75rem;padding-bottom:.4rem;display:flex}.identitas-header h4{color:#1e293b;margin:0;font-size:.95rem;font-weight:700}.identitas-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=480px){.identitas-grid{grid-template-columns:1fr}}.identitas-item{flex-direction:column;display:flex}.identitas-item .label{color:#64748b;margin-bottom:.15rem;font-size:.75rem}.identitas-item .value{color:#0f172a;font-size:.9rem}.token-form-wrapper{flex-direction:column;gap:1.25rem;display:flex}.token-input-box{flex-direction:column;gap:.4rem;display:flex}.token-label{color:#0f172a;align-items:center;font-size:.95rem;font-weight:700;display:flex}.token-hint{color:#64748b;margin:0;font-size:.825rem}.token-input-relative{margin-top:.5rem;position:relative}.token-large-input{letter-spacing:.3em;text-transform:uppercase;text-align:center;color:#006948;background:#fff;border:2px solid #cbd5e1;border-radius:10px;outline:none;width:100%;padding:.85rem 2.75rem .85rem 1rem;font-family:JetBrains Mono,Consolas,monospace;font-size:1.5rem;font-weight:800;transition:all .15s}.token-large-input:focus{border-color:#006948;box-shadow:0 0 0 4px #0069481f}.token-lock-icon{position:absolute;top:50%;right:1.15rem;transform:translateY(-50%)}.verify-error-box{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;padding:.75rem 1rem;font-size:.875rem;display:flex}.btn-submit-token{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:10px;justify-content:center;align-items:center;width:100%;padding:.85rem 1.5rem;font-size:1rem;font-weight:700;transition:background .15s;display:flex;box-shadow:0 4px 6px #00694833}.btn-submit-token:hover:not(:disabled){background:#005238}.btn-submit-token:disabled{opacity:.6;cursor:not-allowed}.verify-success-state{text-align:center;flex-direction:column;align-items:center;padding:1rem 0;display:flex}.success-icon-wrapper{background:#e6f4ea;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:1rem;display:flex}.success-title{color:#065f46;margin:0 0 .35rem;font-size:1.35rem;font-weight:800}.success-msg{color:#334155;margin:0 0 .85rem;font-size:.95rem}.admin-token-pill{text-transform:uppercase;color:#0369a1;background:#e0f2fe;border-radius:9999px;margin-bottom:1rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700}.exam-ready-alert{color:#15803d;text-align:left;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:center;width:100%;margin-bottom:1.5rem;padding:.85rem 1rem;font-size:.85rem;display:flex}.btn-mulai-sekarang{color:#fff;cursor:pointer;background:#006948;border:none;border-radius:10px;justify-content:center;align-items:center;width:100%;padding:.9rem 1.5rem;font-size:1.05rem;font-weight:700;transition:all .15s;display:flex;box-shadow:0 4px 10px #00694840}.btn-mulai-sekarang:hover{background:#005238;transform:translateY(-1px)}.pre-exam-gate-wrapper{color:#1e293b;max-width:800px;margin:0 auto;padding:1.5rem 1rem 3rem}.gate-header-box{text-align:center;margin-bottom:1.5rem}.gate-badge{color:#0369a1;text-transform:uppercase;letter-spacing:.75px;background-color:#e0f2fe;border-radius:9999px;margin-bottom:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:700;display:inline-block}.gate-title{color:#0f172a;margin:0 0 .4rem;font-size:1.5rem;font-weight:800}.gate-subtitle{color:#64748b;margin:0;font-size:.9rem}.gate-card-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1.25rem;padding:1.25rem;box-shadow:0 1px 3px #0000000d}.section-header-title{color:#0f172a;border-bottom:1px solid #f1f5f9;align-items:center;gap:.5rem;margin:0 0 1rem;padding-bottom:.6rem;font-size:1.05rem;font-weight:700;display:flex}.camera-preview-container{flex-direction:column;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.camera-feed-box{background-color:#0f172a;border:2px solid #cbd5e1;border-radius:12px;justify-content:center;align-items:center;width:100%;max-width:320px;height:240px;display:flex;position:relative;overflow:hidden}.camera-feed-box.active{border-color:#10b981}.camera-video-elem{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.camera-placeholder-msg{text-align:center;color:#94a3b8;padding:1rem;font-size:.85rem}.camera-placeholder-icon{margin-bottom:.5rem;font-size:2.5rem;display:block}.camera-status-indicator{align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:flex}.status-dot{border-radius:50%;width:10px;height:10px}.status-dot.online{background-color:#10b981;box-shadow:0 0 8px #10b981}.status-dot.offline{background-color:#ef4444}.btn-request-cam{color:#fff;cursor:pointer;background-color:#0284c7;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background .2s}.btn-request-cam:hover{background-color:#0369a1}.device-checklist-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.checklist-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.checklist-icon{font-size:1.25rem}.checklist-info-label{color:#64748b;font-size:.75rem;font-weight:500}.checklist-info-val{color:#0f172a;font-size:.875rem;font-weight:700}.lab-mode-card{background-color:#fefce8;border:1px solid #fef08a;border-radius:8px;align-items:flex-start;gap:.75rem;margin-top:.75rem;padding:.85rem 1rem;display:flex}.lab-mode-card input[type=checkbox]{cursor:pointer;width:18px;height:18px;margin-top:.25rem}.lab-mode-content label{color:#854d0e;cursor:pointer;margin-bottom:.2rem;font-size:.875rem;font-weight:700;display:block}.lab-mode-content p{color:#a16207;margin:0;font-size:.8rem;line-height:1.35}.privacy-policy-box{color:#475569;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:.85rem 1rem;font-size:.85rem;line-height:1.5}.policy-points{margin:.5rem 0 0 1.25rem;padding:0}.policy-points li{margin-bottom:.35rem}.consent-checkbox-row{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.consent-checkbox-row input[type=checkbox]{cursor:pointer;width:20px;height:20px;margin-top:.25rem}.consent-checkbox-row label{color:#166534;cursor:pointer;font-size:.875rem;font-weight:600;line-height:1.4}.gate-actions-footer{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.btn-gate-cancel{color:#475569;cursor:pointer;text-align:center;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;flex:1;padding:.85rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s}.btn-gate-cancel:hover{background-color:#e2e8f0}.btn-gate-start{color:#fff;cursor:pointer;background:linear-gradient(135deg,#006948 0%,#004d34 100%);border:none;border-radius:8px;flex:2;padding:.85rem 1.5rem;font-size:1rem;font-weight:700;transition:all .2s;box-shadow:0 4px 10px #00694840}.btn-gate-start:hover:not(:disabled){background:linear-gradient(135deg,#005a3d 0%,#003a27 100%);transform:translateY(-1px);box-shadow:0 6px 14px #00694859}.btn-gate-start:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.gate-toast{z-index:1000;border-radius:8px;padding:.85rem 1.25rem;font-size:.9rem;font-weight:600;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0003}.gate-toast.error{color:#fff;background-color:#b91c1c}.gate-toast.success{color:#fff;background-color:#15803d}.cbt-navigator-container{background:var(--bg-card,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:12px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex;box-shadow:0 4px 16px #0000000d}.cbt-navigator-header{border-bottom:1px solid var(--border-color,#f1f5f9);justify-content:space-between;align-items:center;padding-bottom:.75rem;display:flex}.cbt-navigator-title{color:var(--text-primary,#1e293b);align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.cbt-navigator-count{color:#64748b;background:#f1f5f9;border-radius:9999px;padding:.15rem .5rem;font-size:.75rem;font-weight:500}.cbt-navigator-close-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.25rem;transition:all .2s;display:flex}.cbt-navigator-close-btn:hover{color:#334155;background:#f1f5f9}.cbt-navigator-summary{flex-wrap:wrap;gap:.5rem;font-size:.8rem;display:flex}.cbt-summary-item{border-radius:6px;align-items:center;gap:.35rem;padding:.25rem .5rem;font-weight:500;display:inline-flex}.cbt-summary-item.is-answered{color:#065f46;background:#ecfdf5}.cbt-summary-item.is-ragu{color:#92400e;background:#fffbeb}.cbt-summary-item.is-empty{color:#64748b;background:#f8fafc}.cbt-navigator-grid{grid-template-columns:repeat(5,1fr);gap:.5rem;max-height:420px;padding-right:.25rem;display:grid;overflow-y:auto}.cbt-nav-btn{border:1px solid var(--border-color,#cbd5e1);color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border-radius:8px;justify-content:center;align-items:center;height:40px;font-size:.875rem;font-weight:600;transition:all .15s;display:flex;position:relative}.cbt-nav-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #00000014}.cbt-nav-btn.status-answered{color:#fff;background:#10b981;border-color:#059669}.cbt-nav-btn.status-ragu{color:#fff;background:#f59e0b;border-color:#d97706}.cbt-nav-btn.status-empty{color:#475569;background:#f8fafc;border-color:#e2e8f0}.cbt-nav-btn.is-active{outline-offset:2px;z-index:2;outline:3px solid #3b82f6;font-weight:700;transform:scale(1.05)}.cbt-nav-ragu-indicator{color:#fff;background:#ef4444;border:1px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}@media (width<=640px){.cbt-navigator-grid{grid-template-columns:repeat(5,1fr)}}.cbt-watermark-layer{z-index:5;pointer-events:none;-webkit-user-select:none;user-select:none;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:2rem;padding:1.5rem;display:grid;position:fixed;inset:0;overflow:hidden}.cbt-watermark-text{letter-spacing:.04em;color:#0f172a14;white-space:nowrap;place-self:center;font-size:.78rem;font-weight:700;transform:rotate(-24deg)}@media (width<=768px){.cbt-watermark-layer{grid-template-columns:repeat(2,1fr);gap:1.25rem}}.cbt-exam-room-root{background-color:var(--bg-main,#f8fafc);min-height:100vh;color:var(--text-primary,#0f172a);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}.cbt-exam-header{border-bottom:1px solid var(--border-color,#e2e8f0);z-index:50;background:#fff;justify-content:space-between;align-items:center;height:68px;padding:0 1.5rem;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000000a}.cbt-header-left{align-items:center;gap:1rem;display:flex}.cbt-exam-logo-tag{color:#fff;letter-spacing:.05em;background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:6px;padding:.35rem .65rem;font-size:.75rem;font-weight:800}.cbt-exam-info{flex-direction:column;display:flex}.cbt-exam-title{color:#1e293b;margin:0;font-size:1.05rem;font-weight:700;line-height:1.2}.cbt-exam-subtitle{color:#64748b;font-size:.75rem}.cbt-header-right{align-items:center;gap:1rem;display:flex}.cbt-save-indicator{border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;transition:all .2s;display:flex}.cbt-save-indicator.is-saved{color:#059669;background:#ecfdf5}.cbt-save-indicator.is-saving{color:#2563eb;background:#eff6ff}.cbt-save-indicator.is-error{color:#dc2626;background:#fef2f2}.cbt-timer-badge{color:#fff;letter-spacing:.05em;background:#1e293b;border-radius:8px;align-items:center;gap:.5rem;padding:.4rem .85rem;font-family:JetBrains Mono,monospace,ui-monospace;font-size:1.05rem;font-weight:700;display:flex;box-shadow:0 2px 4px #0000001a}.cbt-timer-badge.is-critical{background:#dc2626;animation:1s infinite alternate pulse-timer}@keyframes pulse-timer{0%{opacity:.9;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}.cbt-btn-finish-header{color:#fff;cursor:pointer;background:#059669;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-flex}.cbt-btn-finish-header:hover{background:#047857}.cbt-exam-layout{box-sizing:border-box;flex:1;gap:1.5rem;width:100%;max-width:1400px;margin:0 auto;padding:1.5rem;display:flex}.cbt-exam-main-panel{flex-direction:column;flex:1;display:flex}.cbt-exam-card-wrapper{flex-direction:column;gap:1.25rem;display:flex}.cbt-exam-soal-card{min-height:480px}.cbt-exam-toolbar{border:1px solid var(--border-color,#e2e8f0);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex;box-shadow:0 2px 8px #00000008}.cbt-toolbar-center{align-items:center;gap:.75rem;display:flex}.cbt-btn-nav{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.cbt-btn-nav:hover:not(:disabled){background:#e2e8f0}.cbt-btn-nav:disabled{opacity:.5;cursor:not-allowed}.cbt-btn-next{color:#fff;background:#2563eb;border-color:#1d4ed8}.cbt-btn-next:hover:not(:disabled){background:#1d4ed8}.cbt-btn-finish{color:#fff;background:#059669;border-color:#047857}.cbt-btn-finish:hover:not(:disabled){background:#047857}.cbt-btn-ragu{color:#b45309;cursor:pointer;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.875rem;font-weight:600;transition:all .15s;display:inline-flex}.cbt-btn-ragu.is-active{color:#fff;background:#f59e0b;border-color:#d97706}.cbt-btn-drawer-toggle{color:#475569;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:.4rem;padding:.55rem .9rem;font-size:.875rem;font-weight:600;display:none}.cbt-exam-sidebar-desktop{align-self:flex-start;width:340px;position:sticky;top:84px}.cbt-drawer-overlay{z-index:100;background:#0006;justify-content:flex-end;display:flex;position:fixed;inset:0}.cbt-drawer-content{box-sizing:border-box;background:#fff;width:85%;max-width:360px;height:100%;padding:1.5rem;animation:.25s ease-out slide-drawer}@keyframes slide-drawer{0%{transform:translate(100%)}to{transform:translate(0)}}.cbt-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0f172aa6;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.cbt-modal-box{background:#fff;border-radius:16px;width:100%;max-width:500px;padding:1.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.cbt-modal-header h2{color:#1e293b;margin:0;font-size:1.25rem}.cbt-modal-desc{color:#64748b;margin:.75rem 0 1.25rem;font-size:.9rem}.cbt-rekap-summary-grid{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1.25rem;display:grid}.cbt-rekap-card{text-align:center;border-radius:10px;flex-direction:column;gap:.25rem;padding:1rem .5rem;display:flex}.cbt-rekap-card.is-answered{color:#065f46;background:#ecfdf5}.cbt-rekap-card.is-ragu{color:#92400e;background:#fffbeb}.cbt-rekap-card.is-empty{color:#475569;background:#f8fafc}.cbt-rekap-val{font-size:1.5rem;font-weight:800}.cbt-rekap-lbl{font-size:.75rem;font-weight:500}.cbt-warning-note{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem;font-size:.8rem;display:flex}.cbt-modal-footer{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.cbt-locked-screen-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;background:#0f172af2;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.cbt-locked-card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:480px;padding:2.5rem 2rem;animation:.4s shake-lock;box-shadow:0 25px 50px -12px #00000040}@keyframes shake-lock{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.cbt-locked-icon-wrap{color:#ef4444;background:#fef2f2;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.25rem;display:flex}.cbt-locked-title{color:#1e293b;margin:0 0 .5rem;font-size:1.5rem;font-weight:800}.cbt-locked-badge{color:#991b1b;background:#fee2e2;border-radius:9999px;align-items:center;gap:.35rem;margin-bottom:1rem;padding:.3rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.cbt-locked-desc{color:#64748b;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.cbt-locked-ping{color:#2563eb;background:#eff6ff;border-radius:9999px;align-items:center;gap:.5rem;padding:.4rem .85rem;font-size:.8rem;display:inline-flex}.cbt-exam-finish-container{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.cbt-finish-card{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:520px;padding:2.5rem 2rem;box-shadow:0 10px 25px #0000000d}.cbt-finish-icon-wrap{color:#10b981;background:#ecfdf5;border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;margin:0 auto 1.5rem;display:flex}.cbt-finish-title{color:#1e293b;margin:0 0 .5rem;font-size:1.6rem;font-weight:800}.cbt-finish-subtitle{color:#64748b;margin-bottom:1rem;font-size:1rem;font-weight:600}.cbt-finish-msg{color:#475569;margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.cbt-finish-score-box{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;border-radius:16px;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.cbt-score-label{color:#1e40af;font-size:.85rem;font-weight:600}.cbt-score-value{color:#1d4ed8;font-size:3rem;font-weight:900;line-height:1}.cbt-score-detail{color:#60a5fa;font-size:.75rem;font-weight:500}.cbt-finish-waiting-alert{color:#1e40af;text-align:left;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:.6rem;margin-bottom:1.5rem;padding:.9rem;font-size:.85rem;display:flex}.cbt-finish-btn{width:100%;padding:.75rem;font-size:.95rem;font-weight:600}.cbt-exam-loading,.cbt-exam-error-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.cbt-spin-icon{animation:1s linear infinite spin}@media (width<=1024px){.cbt-exam-sidebar-desktop{display:none}.cbt-btn-drawer-toggle{display:inline-flex}}@media (width<=640px){.cbt-exam-header{height:60px;padding:0 1rem}.cbt-exam-subtitle{display:none}.cbt-exam-layout{padding:1rem}.cbt-save-indicator span,.cbt-btn-finish-header span{display:none}}.sa-container{color:#f8fafc;background-color:#080e1a;min-height:100vh;padding:24px 36px;font-family:Inter,system-ui,-apple-system,sans-serif}.sa-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-bottom:28px;padding-bottom:20px;display:flex}.sa-header-title h1{color:#fff;letter-spacing:-.02em;align-items:center;gap:12px;margin:0 0 6px;font-size:1.75rem;font-weight:800;display:flex}.sa-crown-badge{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:700}.sa-header-title p{color:#94a3b8;margin:0;font-size:.9rem}.sa-header-actions{gap:12px;display:flex}.sa-btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 12px #2563eb4d}.sa-btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.sa-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:30px;display:grid}.sa-stat-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172ab3;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:6px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.sa-stat-card.schools{border-top:3px solid #3b82f6}.sa-stat-card.students{border-top:3px solid #10b981}.sa-stat-card.sessions{border-top:3px solid #f59e0b}.sa-stat-card.health{border-top:3px solid #8b5cf6}.sa-stat-label{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;font-size:.8rem;font-weight:600}.sa-stat-value{color:#fff;font-size:1.8rem;font-weight:800}.sa-stat-subtext{color:#64748b;font-size:.75rem}.sa-filter-bar{background:#0f172acc;border:1px solid #ffffff14;border-radius:10px;flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:24px;padding:14px 18px;display:flex}.sa-search-input{color:#f8fafc;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;flex:1;min-width:240px;padding:8px 14px;font-size:.875rem}.sa-search-input:focus{background:#ffffff14;border-color:#3b82f6;outline:none}.sa-select{color:#f8fafc;cursor:pointer;background:#1e293b;border:1px solid #ffffff1f;border-radius:6px;padding:8px 12px;font-size:.875rem}.sa-table-card{background:#0f172a99;border:1px solid #ffffff14;border-radius:12px;overflow:hidden;box-shadow:0 4px 24px #0006}.sa-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.sa-table th{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;background:#0a0f1ee6;border-bottom:1px solid #ffffff14;padding:14px 18px;font-size:.75rem;font-weight:600}.sa-table td{vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:14px 18px}.sa-table tr:hover{background:#ffffff05}.school-name-cell{flex-direction:column;display:flex}.school-name{color:#fff;font-weight:600}.school-subdomain{color:#3b82f6;font-family:monospace;font-size:.75rem}.badge-status-tenant{border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-status-tenant.active{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge-status-tenant.inactive{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.sa-btn-manage{color:#60a5fa;cursor:pointer;background:#3b82f626;border:1px solid #3b82f64d;border-radius:6px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .2s}.sa-btn-manage:hover{color:#fff;background:#3b82f6}.sa-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.sa-modal-content{background:#0d1527;border:1px solid #ffffff26;border-radius:16px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #000000b3}.sa-modal-header{background:#131d35;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.sa-modal-header h2{color:#fff;margin:0;font-size:1.25rem;font-weight:700}.sa-btn-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;font-size:1.4rem}.sa-modal-body{flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.sa-form-group{flex-direction:column;gap:6px;display:flex}.sa-form-group label{color:#cbd5e1;font-size:.825rem;font-weight:600}.sa-form-input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:6px;padding:10px 12px;font-size:.875rem}.sa-form-input:focus{background:#ffffff14;border-color:#3b82f6;outline:none}.sa-flags-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:6px;display:grid}.sa-flag-item{background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;justify-content:space-between;align-items:center;padding:10px 14px;font-size:.825rem;display:flex}.sa-flag-item input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;width:16px;height:16px}.sa-modal-footer{background:#131d35;border-top:1px solid #ffffff14;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.sa-btn-secondary{color:#f8fafc;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff59;border-radius:8px;align-items:center;padding:9px 16px;font-weight:600;text-decoration:none;display:inline-flex}.sa-btn-secondary:hover{background:#ffffff38}.kp-container{max-width:1200px;margin:0 auto;padding:24px 16px 64px}.kp-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.kp-header h1{color:#0f172a;margin:0 0 4px;font-size:1.5rem}.kp-header p{color:#64748b;max-width:640px;margin:0;font-size:.9rem}.kp-header-actions{align-items:center;gap:10px;display:flex}.kp-btn-primary{color:#fff;cursor:pointer;background:#1d4ed8;border:none;border-radius:8px;padding:9px 16px;font-weight:600}.kp-btn-primary:hover{background:#1e40af}.kp-btn-ghost{color:#334155;cursor:pointer;background:0 0;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-weight:500;text-decoration:none}.kp-btn-ghost:hover{background:#f1f5f9}.kp-alert{border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:.9rem}.kp-alert-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.kp-alert-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.kp-empty{text-align:center;color:#94a3b8;padding:48px}.kp-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.kp-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.kp-card-inactive{opacity:.6}.kp-card-top{justify-content:space-between;align-items:center;display:flex}.kp-kode{text-transform:uppercase;letter-spacing:.05em;color:#6366f1;font-size:.7rem;font-weight:700}.kp-badge-off{color:#64748b;background:#f1f5f9;border-radius:999px;padding:2px 8px;font-size:.7rem}.kp-card h3{color:#0f172a;margin:0;font-size:1.05rem}.kp-harga{color:#1d4ed8;font-size:1.15rem;font-weight:700}.kp-deskripsi{color:#64748b;margin:0;font-size:.82rem}.kp-meta{color:#475569;gap:12px;font-size:.78rem;display:flex}.kp-fitur{flex-wrap:wrap;gap:6px;margin:4px 0;display:flex}.kp-fitur-tag{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:2px 8px;font-size:.72rem}.kp-fitur-none{color:#94a3b8;font-size:.75rem}.kp-card-actions{gap:8px;margin-top:auto;padding-top:8px;display:flex}.kp-btn-edit,.kp-btn-del{cursor:pointer;border:1px solid #0000;border-radius:7px;flex:1;padding:7px 0;font-size:.82rem;font-weight:600}.kp-btn-edit{color:#334155;background:#f8fafc;border-color:#e2e8f0}.kp-btn-edit:hover{background:#e2e8f0}.kp-btn-del{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.kp-btn-del:hover{color:#fff;background:#b91c1c}.kp-modal-backdrop{z-index:900;background:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.kp-modal{background:#fff;border-radius:14px;flex-direction:column;gap:12px;width:100%;max-width:540px;max-height:90vh;padding:22px;display:flex;overflow-y:auto}.kp-modal h2{color:#0f172a;margin:0 0 4px;font-size:1.2rem}.kp-modal label{color:#334155;flex-direction:column;gap:4px;font-size:.82rem;font-weight:600;display:flex}.kp-modal input[type=text],.kp-modal input[type=number],.kp-modal textarea{border:1px solid #cbd5e1;border-radius:8px;padding:8px 10px;font-size:.9rem;font-weight:400}.kp-modal small{color:#94a3b8;font-weight:400}.kp-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.kp-fitur-edit{border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:6px;padding:10px;display:flex}.kp-fitur-title{color:#475569;font-size:.8rem;font-weight:700}.kp-fitur-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.kp-fitur-head .kp-btn-ghost{padding:4px 10px;font-size:.75rem}.kp-fitur-hint{color:#94a3b8;margin:0;font-size:.72rem}.kp-baris-row{align-items:center;gap:8px;display:flex}.kp-baris-row input[type=text]{flex:1}.kp-baris-del{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;flex:none;width:28px;height:28px;font-size:.8rem;line-height:1}.kp-baris-del:hover{color:#fff;background:#b91c1c}.kp-fitur-tag.kp-fitur-off{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.kp-check{align-items:center;flex-direction:row!important;gap:8px!important;font-weight:500!important}.kp-modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}@media (width<=520px){.kp-form-row{grid-template-columns:1fr}}.lm-container{max-width:1200px;margin:0 auto;padding:24px 16px 64px}.lm-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.lm-header h1{color:#0f172a;margin:0 0 4px;font-size:1.4rem}.lm-header p{color:#64748b;margin:0;font-size:.9rem}.lm-btn-ghost{color:#334155;white-space:nowrap;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-weight:500;text-decoration:none}.lm-btn-ghost:hover{background:#f1f5f9}.lm-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:.9rem}.lm-summary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:18px;display:grid}.lm-summary-card{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:2px;padding:14px 16px;font-size:.82rem;display:flex}.lm-summary-card span{color:#0f172a;font-size:1.6rem;font-weight:700}.lm-summary-card.lm-ok span{color:#059669}.lm-summary-card.lm-warn span{color:#d97706}.lm-summary-card.lm-danger span{color:#dc2626}.lm-empty{text-align:center;color:#94a3b8;padding:40px}.lm-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto}.lm-table{border-collapse:collapse;width:100%;font-size:.85rem}.lm-table th,.lm-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:10px 14px}.lm-table th{color:#475569;background:#f8fafc;font-weight:600}.lm-table code{background:#f1f5f9;border-radius:5px;padding:2px 6px;font-size:.8rem}.lm-sisa-kritis{color:#dc2626;font-weight:700}.lm-badge{border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:600}.lm-badge-aktif{color:#065f46;background:#ecfdf5}.lm-badge-jatuh_tempo,.lm-badge-grace_period{color:#b45309;background:#fffbeb}.lm-badge-suspended,.lm-badge-cancelled{color:#b91c1c;background:#fef2f2}.vps-container{max-width:1100px;margin:0 auto;padding:24px 16px 64px}.vps-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.vps-header h1{color:#0f172a;margin:0 0 4px;font-size:1.4rem}.vps-header p{color:#64748b;margin:0;font-size:.9rem}.vps-btn-ghost{color:#334155;white-space:nowrap;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-weight:500;text-decoration:none}.vps-btn-ghost:hover{background:#f1f5f9}.vps-alert{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:.9rem}.vps-empty{text-align:center;color:#94a3b8;padding:40px}.vps-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:18px;display:grid}.vps-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:6px;padding:16px;display:flex}.vps-card-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:.78rem;font-weight:600}.vps-card-val{color:#0f172a;font-size:1.8rem;font-weight:700;line-height:1}.vps-card-val-sm{font-size:1.15rem}.vps-card-sub{color:#64748b;font-size:.78rem}.vps-bar{background:#f1f5f9;border-radius:999px;height:8px;overflow:hidden}.vps-bar-fill{border-radius:999px;height:100%;transition:width .4s}.vps-kategori{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px;display:grid}.vps-kategori-item{border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;font-size:.82rem;display:flex}.vps-kategori-item strong{font-size:1.05rem}.vps-cbt{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.vps-lain{color:#475569;background:#f8fafc;border:1px solid #e2e8f0}.vps-subtitle{color:#0f172a;margin:0 0 10px;font-size:1.05rem}.vps-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto}.vps-table{border-collapse:collapse;width:100%;font-size:.85rem}.vps-table th,.vps-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:10px 14px}.vps-table th{color:#475569;background:#f8fafc;font-weight:600}.vps-tag{border-radius:999px;padding:2px 10px;font-size:.72rem;font-weight:600}.vps-tag-cbt{color:#1d4ed8;background:#eff6ff}.vps-tag-lain{color:#64748b;background:#f1f5f9}@media (width<=560px){.vps-kategori{grid-template-columns:1fr}}
