/* EDUVIA V106 — canonical simple UI: no animation, no transition, no backdrop blur. */
:root{--tone-66766f:#66766f;--tone-a92920:#a92920;--tone-dfe9e5:#dfe9e5;--tone-fee8e7:#fee8e7;--portal-green:var(--theme-primary,#078ee8);--portal-sky:var(--theme-primary-deep,#075da9);--portal-amber:var(--theme-warning,#f59e0b);--portal-ink:var(--theme-text,#0a2342);--portal-soft:#f6f9ff;--portal-viewport-height:100dvh;--portal-mobile-dock-height:76px;--portal-visual-height:var(--portal-viewport-height, 100dvh);--portal-visual-top:0px;--portal-nav-accent:var(--theme-primary,#078ee8);--portal-nav-accent-dark:var(--theme-primary-strong,#173f70);--portal-nav-active-soft:var(--theme-primary-soft,#f0f8ff);--portal-nav-text:var(--theme-text-muted,#60758d);--portal-nav-line:var(--tone-dbe5f0,#dbe5f0);--portal-nav-sidebar-width:256px;--portal-nav-mobile-height:76px;--portal-nav-radius:16px;--portal-v143-green:var(--theme-primary,#078ee8);--portal-v143-blue-dark:var(--theme-primary-strong,#173f70);--portal-v143-blue-text:var(--theme-primary-strong,#173f70);--portal-v143-mint:var(--theme-primary-soft,#f0f8ff);--portal-v143-mint-hover:#e8f2ff;--portal-v143-ink:var(--tone-1f2937,#1f2937);--portal-v143-muted:var(--theme-text-muted,#60758d);--portal-v143-icon:#71839b;--portal-form-visible-height:100dvh;--portal-form-viewport-top:0px;--portal-form-keyboard-inset:0px;--readable-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--portal-menu-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--portal-menu-size-desktop:15px;--portal-menu-size-secondary:12.5px;--portal-menu-size-mobile:10.5px;--portal-fast-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--portal-v01-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--portal-v01-ink:#11243f;--portal-v01-body:#4f5f5b;--portal-v01-muted:#6f7f7b;--portal-v01-line:#dce9e4;--portal-v01-soft:#f2f8f5;--portal-v01-white:var(--theme-surface,#fff);--portal-v01-green:var(--theme-primary,#078ee8);--portal-v01-blue-dark:var(--theme-primary-darker,#123d6b);--portal-v01-blue-soft:#eaf4ff;--portal-v01-blue:var(--tone-2563eb,#2563eb);--portal-v01-amber:#f6c453;--portal-v01-amber-ink:#5b3500;--portal-v01-red:var(--theme-danger-deep,#be123c);--portal-v01-radius:14px;--portal-v01-focus:0 0 0 3px rgba(0, 52, 125, 0.16);--portal-loading-accent:var(--theme-primary,#078ee8);--portal-loading-track:rgba(7, 142, 232, 0.18);--portal-loading-layer:rgba(239, 246, 248, 0.76);--pp-menu-control-green:var(--theme-primary,#078ee8);--pp-menu-control-hover:var(--tone-20a7ff,#20a7ff);--pp-menu-control-border:var(--theme-primary,#078ee8);--pp-menu-control-dark:var(--theme-primary-strong,#173f70);--pp-menu-control-pale:var(--theme-primary-soft,#f0f8ff);--pp-menu-control-text:var(--theme-primary-mid,#1264ad);--pp-menu-control-focus:0 0 0 4px rgba(7,142,232,.18);--eduvia-shared-blue:var(--theme-primary,#078ee8);--eduvia-shared-blue-dark:#075da7;--eduvia-shared-ink:var(--tone-172033,#172033);--eduvia-shared-muted:var(--theme-text-muted,#60758d);--eduvia-shared-line:#e3eaf2;--eduvia-shared-soft:#f6f9fc;--eduvia-shared-surface:var(--theme-surface,#fff);--eduvia-shared-radius:16px;--eduvia-shared-safe-bottom:env(safe-area-inset-bottom, 0px);--eduvia-shared-shadow:0 12px 34px rgba(15, 23, 42, 0.09);}
.eskul-choice-wrap{display:grid;min-width:0;gap:7px;}
.eskul-choice-wrap>.eskul-choice-card{width:100%;min-width:0;}
.eskul-cancel-registration{justify-self:end;min-height:34px;padding:7px 11px;border:1px solid #f2b8b5;border-radius:var(--radius-md,10px);background:#fff8f7;color:#ba342d;font-size:9px;font-weight:850;cursor:pointer;}
.eskul-cancel-registration:hover{border-color:#eb8f89;background:var(--tone-fff0ef,#fff0ef);}
.eskul-cancel-registration:disabled{opacity:.6;cursor:wait;}
.eskul-student-simple-info b{color:#075f9b;font-weight:900;}
@media (max-width:700px){.eskul-choice-wrap{gap:6px;}
.eskul-cancel-registration{width:100%;min-height:38px;justify-self:stretch;font-size:10px;}
.eskul-student-simple-info{font-size:10px;line-height:1.55;}}
*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x:;--tw-pan-y:;--tw-pinch-zoom:;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position:;--tw-gradient-via-position:;--tw-gradient-to-position:;--tw-ordinal:;--tw-slashed-zero:;--tw-numeric-figure:;--tw-numeric-spacing:;--tw-numeric-fraction:;--tw-ring-inset:;--tw-ring-offset-width:0px;--tw-ring-offset-color:var(--theme-surface,#fff);--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 var(--tone-0000,#0000);--tw-ring-shadow:0 0 var(--tone-0000,#0000);--tw-shadow:0 0 var(--tone-0000,#0000);--tw-shadow-colored:0 0 var(--tone-0000,#0000);--tw-blur:;--tw-brightness:;--tw-contrast:;--tw-grayscale:;--tw-hue-rotate:;--tw-invert:;--tw-saturate:;--tw-sepia:;--tw-drop-shadow:;--tw-backdrop-blur:;--tw-backdrop-brightness:;--tw-backdrop-contrast:;--tw-backdrop-grayscale:;--tw-backdrop-hue-rotate:;--tw-backdrop-invert:;--tw-backdrop-opacity:;--tw-backdrop-saturate:;--tw-backdrop-sepia:;--tw-contain-size:;--tw-contain-layout:;--tw-contain-paint:;--tw-contain-style:;}
*,:before,:after{box-sizing:border-box;border:0 solid var(--tone-dbe5f0,#dbe5f0);}
:before,:after{--tw-content:"";}
html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;}

hr{height:0;color:inherit;border-top-width:1px;}
abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;}
a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;}
b,strong{font-weight:bolder;}
code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;}
sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative;}
sub{bottom:-.25em;}
sup{top:-.5em;}
table{text-indent:0;border-color:inherit;border-collapse:collapse;}
button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0;}
button,select{text-transform:none;}
button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:var(--tone-0000,#0000);background-image:none;}
:-moz-focusring{outline:auto;}
:-moz-ui-invalid{box-shadow:none;}
progress{vertical-align:baseline;}
::-webkit-inner-spin-button{height:auto;}
::-webkit-outer-spin-button{height:auto;}
[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}
::-webkit-search-decoration{-webkit-appearance:none;}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}
summary{display:list-item;}
blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0;}
fieldset{margin:0;padding:0;}
legend{padding:0;}
ol,ul,menu{margin:0;padding:0;list-style:none;}
dialog{padding:0;}
textarea{resize:vertical;}
input::-moz-placeholder{opacity:1;color:var(--tone-9ca3af,#9ca3af);}
textarea::-moz-placeholder{opacity:1;color:var(--tone-9ca3af,#9ca3af);}
input::placeholder,textarea::placeholder{opacity:1;color:var(--tone-9ca3af,#9ca3af);}
button,[role=button]{cursor:pointer;}
:disabled{cursor:default;}
img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block;}
img,video{max-width:100%;height:auto;}
[hidden]:where(:not([hidden=until-found])){display:none;}
.fixed{position:fixed;}
.absolute{position:absolute;}
.relative{position:relative;}
.sticky{position:sticky;}
.inset-0{inset:0;}
.-right-1{right:-.25rem;}
.-top-1{top:-.25rem;}
.bottom-0{bottom:0;}
.bottom-24{bottom:6rem;}
.bottom-4{bottom:1rem;}
.left-0{left:0;}
.left-1\/2{left:50%;}
.left-5{left:1.25rem;}
.right-0{right:0;}
.right-3{right:.75rem;}
.right-4{right:1rem;}
.right-5{right:1.25rem;}
.top-0{top:0;}
.top-12{top:3rem;}
.top-3{top:.75rem;}
.top-4{top:1rem;}
.top-5{top:1.25rem;}
.z-0{z-index:0;}
.z-10{z-index:10;}
.z-20{z-index:20;}
.z-30{z-index:30;}
.z-50{z-index:50;}
.z-\[100\]{z-index:100;}
.z-\[150\]{z-index:150;}
.z-\[160\]{z-index:160;}
.z-\[170\]{z-index:170;}
.z-\[180\]{z-index:180;}
.z-\[190\]{z-index:190;}
.z-\[300\]{z-index:300;}
.z-\[310\]{z-index:310;}
.z-\[360\]{z-index:360;}
.z-\[380\]{z-index:380;}
.z-\[70\]{z-index:70;}
.col-span-2{grid-column:span 2/span 2;}
.col-span-full{grid-column:1/-1;}
.float-right{float:right;}
.mx-auto{margin-left:auto;margin-right:auto;}
.my-4{margin-top:1rem;margin-bottom:1rem;}
.my-5{margin-top:1.25rem;margin-bottom:1.25rem;}
.my-auto{margin-top:auto;margin-bottom:auto;}
.-mr-20{margin-right:-5rem;}
.-mt-20{margin-top:-5rem;}
.mb-1{margin-bottom:.25rem;}
.mb-2{margin-bottom:.5rem;}
.mb-3{margin-bottom:.75rem;}
.mb-4{margin-bottom:1rem;}
.mb-5{margin-bottom:1.25rem;}
.mb-6{margin-bottom:1.5rem;}
.mb-7{margin-bottom:1.75rem;}
.mb-8{margin-bottom:2rem;}
.mt-0\.5{margin-top:.125rem;}
.mt-1{margin-top:.25rem;}
.mt-1\.5{margin-top:.375rem;}
.mt-2{margin-top:.5rem;}
.mt-3{margin-top:.75rem;}
.mt-4{margin-top:1rem;}
.mt-5{margin-top:1.25rem;}
.mt-6{margin-top:1.5rem;}
.mt-8{margin-top:2rem;}
.mt-auto{margin-top:auto;}
.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;}
.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;}
.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;}
.block{display:block;}
.inline-block{display:inline-block;}
.flex{display:flex;}
.inline-flex{display:inline-flex;}
.table{display:table;}
.grid{display:grid;}
.hidden{display:none;}
.h-10{height:2.5rem;}
.h-11{height:2.75rem;}
.h-12{height:3rem;}
.h-14{height:3.5rem;}
.h-16{height:4rem;}
.h-20{height:5rem;}
.h-3{height:.75rem;}
.h-6{height:1.5rem;}
.h-64{height:16rem;}
.h-8{height:2rem;}
.h-9{height:2.25rem;}
.h-full{height:100%;}
.h-screen{height:100vh;}
.max-h-52{max-height:13rem;}
.max-h-60{max-height:15rem;}
.max-h-\[440px\]{max-height:440px;}
.max-h-\[85vh\]{max-height:85vh;}
.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem);}
.max-h-\[calc\(100vh-3rem\)\]{max-height:calc(100vh - 3rem);}
.min-h-\[280px\]{min-height:280px;}
.min-h-screen{min-height:100vh;}
.w-10{width:2.5rem;}
.w-11{width:2.75rem;}
.w-12{width:3rem;}
.w-14{width:3.5rem;}
.w-16{width:4rem;}
.w-20{width:5rem;}
.w-24{width:6rem;}
.w-3{width:.75rem;}
.w-6{width:1.5rem;}
.w-64{width:16rem;}
.w-72{width:18rem;}
.w-8{width:2rem;}
.w-9{width:2.25rem;}
.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem);}
.w-full{width:100%;}
.min-w-0{min-width:0;}
.min-w-max{min-width:max-content;}
.max-w-2xl{max-width:42rem;}
.max-w-3xl{max-width:48rem;}
.max-w-4xl{max-width:56rem;}
.max-w-6xl{max-width:72rem;}
.max-w-\[120px\]{max-width:120px;}
.max-w-full{max-width:100%;}
.max-w-lg{max-width:32rem;}
.max-w-md{max-width:28rem;}
.max-w-sm{max-width:24rem;}
.max-w-xl{max-width:36rem;}
.flex-1{flex:1;}
.flex-\[1\.5\]{flex:1.5;}
.flex-\[2\]{flex:2;}
.flex-shrink-0{flex-shrink:0;}
.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}
.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}
.cursor-default{cursor:default;}
.cursor-pointer{cursor:pointer;}
.resize-none{resize:none;}
.list-decimal{list-style-type:decimal;}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr));}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.grid-cols-\[1fr_\.72fr\]{grid-template-columns:1fr .72fr;}
.flex-col{flex-direction:column;}
.flex-col-reverse{flex-direction:column-reverse;}
.flex-wrap{flex-wrap:wrap;}
.place-items-center{place-items:center;}
.items-start{align-items:flex-start;}
.items-end{align-items:flex-end;}
.items-center{align-items:center;}
.justify-end{justify-content:flex-end;}
.justify-center{justify-content:center;}
.justify-between{justify-content:space-between;}
.justify-around{justify-content:space-around;}
.gap-1{gap:.25rem;}
.gap-1\.5{gap:.375rem;}
.gap-2{gap:.5rem;}
.gap-3{gap:.75rem;}
.gap-4{gap:1rem;}
.gap-5{gap:1.25rem;}
.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse));}
.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse));}
.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse));}
.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse));}
.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse));}
.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse));}
.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));}
.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(249 250 251/var(--tw-divide-opacity,1));}
.overflow-auto{overflow:auto;}
.overflow-hidden{overflow:hidden;}
.overflow-visible{overflow:visible;}
.overflow-x-auto{overflow-x:auto;}
.overflow-y-auto{overflow-y:auto;}
.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;}
.whitespace-nowrap{white-space:nowrap;}
.whitespace-pre-wrap{white-space:pre-wrap;}
.rounded{border-radius:.25rem;}
.rounded-2xl{border-radius:1rem;}
.rounded-3xl{border-radius:1.5rem;}
.rounded-\[20px\]{border-radius:var(--radius-3xl,20px);}
.rounded-\[24px\]{border-radius:var(--radius-5xl,24px);}
.rounded-\[26px\]{border-radius:26px;}
.rounded-\[28px\]{border-radius:28px;}
.rounded-\[30px\]{border-radius:30px;}
.rounded-\[32px\]{border-radius:32px;}
.rounded-full{border-radius:var(--radius-pill,999px);}
.rounded-lg{border-radius:.5rem;}
.rounded-md{border-radius:.375rem;}
.rounded-sm{border-radius:.125rem;}
.rounded-xl{border-radius:.75rem;}
.border{border-width:1px;}
.border-2{border-width:2px;}
.border-4{border-width:4px;}
.border-b{border-bottom-width:1px;}
.border-l{border-left-width:1px;}
.border-r{border-right-width:1px;}
.border-t{border-top-width:1px;}
.border-dashed{border-style:dashed;}
.border-amber-100{--tw-border-opacity:1;border-color:rgb(254 243 199/var(--tw-border-opacity,1));}
.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1));}
.border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254/var(--tw-border-opacity,1));}
.border-blue-100\/50{border-color:#dbeeff80;}
.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1));}
.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1));}
.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1));}
.border-gray-50{--tw-border-opacity:1;border-color:rgb(249 250 251/var(--tw-border-opacity,1));}
.border-transparent{border-color:var(--tone-0000,#0000);}
.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1));}
.border-white\/20{border-color:#fff3;}
.border-t-blue-500{--tw-border-opacity:1;border-top-color:rgb(7 142 232/var(--tw-border-opacity,1));}
.bg-\[\#258cd3\]{--tw-bg-opacity:1;background-color:rgb(37 140 211/var(--tw-bg-opacity,1));}
.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1));}
.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1));}
.bg-amber-50\/40{background-color:#fffbeb66;}
.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1));}
.bg-black\/40{background-color:#0006;}
.bg-black\/50{background-color:#00000080;}
.bg-black\/55{background-color:#0000008c;}
.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1));}
.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1));}
.bg-blue-50\/20{background-color:#f3f8ff33;}
.bg-blue-50\/30{background-color:#f3f8ff4d;}
.bg-blue-50\/50{background-color:#f3f8ff80;}
.bg-blue-500{--tw-bg-opacity:1;background-color:rgb(7 142 232/var(--tw-bg-opacity,1));}
.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(0 111 209/var(--tw-bg-opacity,1));}
.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1));}
.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1));}
.bg-gray-400{--tw-bg-opacity:1;background-color:rgb(156 163 175/var(--tw-bg-opacity,1));}
.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1));}
.bg-gray-50\/50{background-color:#f9fafb80;}
.bg-gray-50\/80{background-color:#f9fafbcc;}
.bg-gray-50\/90{background-color:#f9fafbe6;}
.bg-gray-50\/95{background-color:#f9fafbf2;}
.bg-gray-900{--tw-bg-opacity:1;background-color:rgb(17 24 39/var(--tw-bg-opacity,1));}
.bg-gray-950\/25{background-color:#03071240;}
.bg-gray-950\/50{background-color:#03071280;}
.bg-gray-950\/60{background-color:#03071299;}
.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1));}
.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1));}
.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1));}
.bg-slate-900\/50{background-color:#0f172a80;}
.bg-sky-100{--tw-bg-opacity:1;background-color:rgb(196 232 251/var(--tw-bg-opacity,1));}
.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));}
.bg-white\/10{background-color:#ffffff1a;}
.bg-white\/15{background-color:#ffffff26;}
.bg-white\/20{background-color:#fff3;}
.bg-white\/90{background-color:#ffffffe6;}
.bg-white\/95{background-color:#fffffff2;}
.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops));}
.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops));}
.from-amber-400{--tw-gradient-from:#fbbf24 var(--tw-gradient-from-position);--tw-gradient-to:#fbbf2400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}
.from-amber-50{--tw-gradient-from:#fffbeb var(--tw-gradient-from-position);--tw-gradient-to:#fffbeb00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}
.from-blue-100{--tw-gradient-from:var(--theme-primary-border,#d9e8f5) var(--tw-gradient-from-position);--tw-gradient-to:#dbeeff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}
.from-blue-50{--tw-gradient-from:var(--theme-primary-soft,#f0f8ff) var(--tw-gradient-from-position);--tw-gradient-to:#f3f8ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}
.from-blue-500{--tw-gradient-from:var(--theme-primary,#078ee8) var(--tw-gradient-from-position);--tw-gradient-to:#078ee800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);}
.via-white{--tw-gradient-to:#fff0 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--theme-surface,#fff) var(--tw-gradient-via-position), var(--tw-gradient-to);}
.to-orange-50{--tw-gradient-to:#fff7ed var(--tw-gradient-to-position);}
.to-orange-500{--tw-gradient-to:#f97316 var(--tw-gradient-to-position);}
.to-sky-100{--tw-gradient-to:#e0f2fe var(--tw-gradient-to-position);}
.to-sky-50{--tw-gradient-to:#f0fdfa var(--tw-gradient-to-position);}
.to-sky-500{--tw-gradient-to:var(--tone-0ea5e9,#0ea5e9) var(--tw-gradient-to-position);}
.object-contain{-o-object-fit:contain;object-fit:contain;}
.object-cover{-o-object-fit:cover;object-fit:cover;}
.p-1{padding:.25rem;}
.p-1\.5{padding:.375rem;}
.p-10{padding:2.5rem;}
.p-12{padding:3rem;}
.p-2{padding:.5rem;}
.p-2\.5{padding:.625rem;}
.p-3{padding:.75rem;}
.p-4{padding:1rem;}
.p-5{padding:1.25rem;}
.p-6{padding:1.5rem;}
.p-7{padding:1.75rem;}
.p-8{padding:2rem;}
.px-1{padding-left:.25rem;padding-right:.25rem;}
.px-2{padding-left:.5rem;padding-right:.5rem;}
.px-3{padding-left:.75rem;padding-right:.75rem;}
.px-3\.5{padding-left:.875rem;padding-right:.875rem;}
.px-4{padding-left:1rem;padding-right:1rem;}
.px-5{padding-left:1.25rem;padding-right:1.25rem;}
.px-6{padding-left:1.5rem;padding-right:1.5rem;}
.py-0\.5{padding-top:.125rem;padding-bottom:.125rem;}
.py-1{padding-top:.25rem;padding-bottom:.25rem;}
.py-1\.5{padding-top:.375rem;padding-bottom:.375rem;}
.py-10{padding-top:2.5rem;padding-bottom:2.5rem;}
.py-16{padding-top:4rem;padding-bottom:4rem;}
.py-2{padding-top:.5rem;padding-bottom:.5rem;}
.py-2\.5{padding-top:.625rem;padding-bottom:.625rem;}
.py-3{padding-top:.75rem;padding-bottom:.75rem;}
.py-3\.5{padding-top:.875rem;padding-bottom:.875rem;}
.py-4{padding-top:1rem;padding-bottom:1rem;}
.py-5{padding-top:1.25rem;padding-bottom:1.25rem;}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem;}
.py-8{padding-top:2rem;padding-bottom:2rem;}
.pb-12{padding-bottom:3rem;}
.pb-20{padding-bottom:5rem;}
.pb-24{padding-bottom:6rem;}
.pb-3{padding-bottom:.75rem;}
.pl-5{padding-left:1.25rem;}
.pr-12{padding-right:3rem;}
.pr-16{padding-right:4rem;}
.pr-4{padding-right:1rem;}
.pr-8{padding-right:2rem;}
.pt-2{padding-top:.5rem;}
.pt-3{padding-top:.75rem;}
.pt-5{padding-top:1.25rem;}
.pt-6{padding-top:1.5rem;}
.text-left{text-align:left;}
.text-center{text-align:center;}
.text-right{text-align:right;}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;}
.font-sans{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.text-2xl{font-size:1.5rem;line-height:2rem;}
.text-3xl{font-size:1.875rem;line-height:2.25rem;}
.text-\[10px\]{font-size:10px;}
.text-\[11px\]{font-size:11px;}
.text-\[9px\]{font-size:9px;}
.text-base{font-size:1rem;line-height:1.5rem;}
.text-lg{font-size:1.125rem;line-height:1.75rem;}
.text-xl{font-size:1.25rem;line-height:1.75rem;}
.font-black{font-weight:900;}
.font-bold{font-weight:700;}
.font-medium{font-weight:500;}
.font-normal{font-weight:400;}
.font-semibold{font-weight:600;}
.uppercase{text-transform:uppercase;}
.capitalize{text-transform:capitalize;}
.leading-relaxed{line-height:1.625;}
.tracking-\[\.22em\]{letter-spacing:.22em;}
.tracking-\[\.2em\]{letter-spacing:.2em;}
.tracking-tight{letter-spacing:-.025em;}
.tracking-wider{letter-spacing:.05em;}
.tracking-widest{letter-spacing:.1em;}
.text-amber-500{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1));}
.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1));}
.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1));}
.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1));}
.text-blue-50{--tw-text-opacity:1;color:rgb(239 246 255/var(--tw-text-opacity,1));}
.text-blue-500{--tw-text-opacity:1;color:rgb(7 142 232/var(--tw-text-opacity,1));}
.text-blue-600{--tw-text-opacity:1;color:rgb(0 111 209/var(--tw-text-opacity,1));}
.text-blue-600\/70{color:#006fd1b3;}
.text-blue-700{--tw-text-opacity:1;color:rgb(0 63 158/var(--tw-text-opacity,1));}
.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1));}
.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1));}
.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1));}
.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1));}
.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1));}
.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1));}
.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1));}
.text-inherit{color:inherit;}
.text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity,1));}
.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1));}
.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1));}
.text-red-400{--tw-text-opacity:1;color:rgb(248 113 113/var(--tw-text-opacity,1));}
.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1));}
.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1));}
.text-sky-600{--tw-text-opacity:1;color:rgb(2 132 199/var(--tw-text-opacity,1));}
.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));}
.no-underline{text-decoration-line:none;}
.opacity-0{opacity:0;}
.opacity-50{opacity:.5;}
.opacity-90{opacity:.9;}
.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-\[0_-10px_40px_rgba\(0\,0\,0\,0\.05\)\]{--tw-shadow:0 -10px 40px var(--tone-0000000d,#0000000d);--tw-shadow-colored:0 -10px 40px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tone-0000000d,#0000000d);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tone-0000001a,#0000001a), 0 4px 6px -4px var(--tone-0000001a,#0000001a);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-md{--tw-shadow:0 4px 6px -1px var(--tone-0000001a,#0000001a), 0 2px 4px -2px var(--tone-0000001a,#0000001a);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-sm{--tw-shadow:0 1px 2px 0 var(--tone-0000000d,#0000000d);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tone-0000001a,#0000001a), 0 8px 10px -6px var(--tone-0000001a,#0000001a);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.shadow-amber-400\/30{--tw-shadow-color:#fbbf244d;--tw-shadow:var(--tw-shadow-colored);}
.shadow-blue-500\/20{--tw-shadow-color:#078ee833;--tw-shadow:var(--tw-shadow-colored);}
.shadow-blue-500\/25{--tw-shadow-color:#078ee840;--tw-shadow:var(--tw-shadow-colored);}
.shadow-blue-500\/30{--tw-shadow-color:#078ee84d;--tw-shadow:var(--tw-shadow-colored);}
.shadow-red-500\/25{--tw-shadow-color:#ef444440;--tw-shadow:var(--tw-shadow-colored);}
.shadow-red-500\/30{--tw-shadow-color:#ef44444d;--tw-shadow:var(--tw-shadow-colored);}
.outline-none{outline-offset:2px;outline:2px solid var(--tone-0000,#0000);}
.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 var(--tone-0000,#0000));}
.ring-blue-100{--tw-ring-opacity:1;--tw-ring-color:rgb(219 234 254/var(--tw-ring-opacity,1));}
.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);}
.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);}
.backdrop-blur{--tw-backdrop-blur:blur(8px);}
.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px);}
.backdrop-blur-md{--tw-backdrop-blur:blur(12px);}
.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);}
html,body,#root{margin:0;}
button,input,select,textarea{font:inherit;}
.selection\:bg-blue-200 ::selection{--tw-bg-opacity:1;background-color:rgb(191 219 254/var(--tw-bg-opacity,1));}
.selection\:bg-blue-200::selection{--tw-bg-opacity:1;background-color:rgb(191 219 254/var(--tw-bg-opacity,1));}
.hover\:-translate-y-0\.5:hover{--tw-translate-y:-.125rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}
.hover\:-translate-y-1:hover{--tw-translate-y:-.25rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}
.hover\:border-blue-200:hover{--tw-border-opacity:1;border-color:rgb(191 219 254/var(--tw-border-opacity,1));}
.hover\:border-blue-300:hover{--tw-border-opacity:1;border-color:rgb(147 197 253/var(--tw-border-opacity,1));}
.hover\:border-gray-100:hover{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1));}
.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1));}
.hover\:border-red-200:hover{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1));}
.hover\:border-sky-300:hover{--tw-border-opacity:1;border-color:rgb(125 211 252/var(--tw-border-opacity,1));}
.hover\:bg-\[\#0f7ae5\]:hover{--tw-bg-opacity:1;background-color:rgb(32 124 189/var(--tw-bg-opacity,1));}
.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1));}
.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(0 111 209/var(--tw-bg-opacity,1));}
.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1));}
.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1));}
.hover\:bg-gray-200\/50:hover{background-color:#dbe5f080;}
.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1));}
.hover\:bg-purple-100:hover{--tw-bg-opacity:1;background-color:rgb(243 232 255/var(--tw-bg-opacity,1));}
.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1));}
.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1));}
.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1));}
.hover\:text-amber-500:hover{--tw-text-opacity:1;color:rgb(245 158 11/var(--tw-text-opacity,1));}
.hover\:text-blue-500:hover{--tw-text-opacity:1;color:rgb(7 142 232/var(--tw-text-opacity,1));}
.hover\:text-blue-600:hover{--tw-text-opacity:1;color:rgb(0 111 209/var(--tw-text-opacity,1));}
.hover\:text-blue-700:hover{--tw-text-opacity:1;color:rgb(0 63 158/var(--tw-text-opacity,1));}
.hover\:text-gray-600:hover{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1));}
.hover\:text-gray-700:hover{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1));}
.hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1));}
.hover\:text-red-500:hover{--tw-text-opacity:1;color:rgb(239 68 68/var(--tw-text-opacity,1));}
.hover\:text-red-600:hover{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1));}
.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tone-0000001a,#0000001a), 0 2px 4px -2px var(--tone-0000001a,#0000001a);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tone-0000001a,#0000001a), 0 8px 10px -6px var(--tone-0000001a,#0000001a);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 var(--tone-0000,#0000)), var(--tw-ring-shadow,0 0 var(--tone-0000,#0000)), var(--tw-shadow);}
.focus\:border-blue-400:focus{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1));}
.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:rgb(7 142 232/var(--tw-border-opacity,1));}
.focus\:bg-white:focus{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));}
.focus\:ring-1:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 var(--tone-0000,#0000));}
.focus\:ring-4:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 var(--tone-0000,#0000));}
.focus\:ring-blue-50:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(239 246 255/var(--tw-ring-opacity,1));}
.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(7 142 232/var(--tw-ring-opacity,1));}
.disabled\:bg-gray-300:disabled{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1));}
.disabled\:opacity-40:disabled{opacity:.4;}
.group:hover .group-hover\:bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1));}
.group:hover .group-hover\:bg-blue-500{--tw-bg-opacity:1;background-color:rgb(7 142 232/var(--tw-bg-opacity,1));}
.group:hover .group-hover\:bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1));}
.group:hover .group-hover\:bg-sky-500{--tw-bg-opacity:1;background-color:rgb(14 165 233/var(--tw-bg-opacity,1));}
.group:hover .group-hover\:text-blue-600{--tw-text-opacity:1;color:rgb(0 111 209/var(--tw-text-opacity,1));}
.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1));}
.group:hover .group-hover\:opacity-100{opacity:1;}
@media (width>=640px){.sm\:flex{display:flex;}
.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.sm\:flex-row{flex-direction:row;}
.sm\:items-center{align-items:center;}}
@media (width>=768px){.md\:col-span-2{grid-column:span 2/span 2;}
.md\:col-span-4{grid-column:span 4/span 4;}
.md\:block{display:block;}
.md\:flex{display:flex;}
.md\:hidden{display:none;}
.md\:max-h-\[calc\(100vh-5rem\)\]{max-height:calc(100vh - 5rem);}
.md\:w-auto{width:auto;}
.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.md\:flex-row{flex-direction:row;}
.md\:items-center{align-items:center;}
.md\:p-8{padding:2rem;}
.md\:p-9{padding:2.25rem;}
.md\:px-8{padding-left:2rem;padding-right:2rem;}
.md\:py-10{padding-top:2.5rem;padding-bottom:2.5rem;}
.md\:text-4xl{font-size:2.25rem;line-height:2.5rem;}
.md\:text-base{font-size:1rem;line-height:1.5rem;}}
@media (width>=1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.lg\:pb-6{padding-bottom:1.5rem;}}
html,body,#root{min-height:100%;}
body{background:linear-gradient(180deg,var(--tone-f8fbfa,#f8fbfa) 0%,#f5f7fb 100%);}
.portal-premium-status{white-space:nowrap;isolation:isolate;}
.portal-premium-status.is-active{background:linear-gradient(135deg,var(--theme-primary,#078ee8),var(--theme-primary-deep,#075da9));color:var(--theme-surface,#fff);box-shadow:0 10px 26px var(--tone-af4f05cb,rgba(7, 142, 232, .24));}
.portal-premium-status.is-free{background:linear-gradient(135deg,#fbbf24,var(--theme-warning,#f59e0b));color:var(--theme-surface,#fff);box-shadow:0 10px 26px rgba(245,158,11,.24);}
.portal-student-notification-root{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;}
.portal-student-notification{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--tone-dbe5f0,#dbe5f0);border-radius:var(--radius-pill,999px);background:var(--theme-surface,#fff);color:var(--theme-text-secondary,#50657e);box-shadow:0 7px 20px var(--tone-0305fa36,rgba(15,23,42,.08));cursor:pointer;}
.portal-student-notification:hover{color:var(--theme-primary-mid,#1264ad);border-color:var(--theme-primary-border-strong,#b8d9f3);}
.portal-student-notification svg{width:20px;height:20px;}
.portal-student-notification-badge{position:absolute;right:-3px;top:-4px;min-width:19px;height:19px;padding:0 5px;border-radius:var(--radius-pill,999px);background:var(--theme-danger-light,#ef4444);color:white;border:2px solid white;font:800 10px/15px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;}
.portal-student-notification-panel{position:absolute;right:0;top:54px;z-index:9999;width:min(370px,calc(100vw - 24px));max-height:480px;overflow:auto;border:1px solid var(--tone-dbe5f0,#dbe5f0);border-radius:var(--radius-4xl,22px);background:var(--theme-surface,#fff);box-shadow:0 24px 70px rgba(15,23,42,.2);}
.portal-student-notification-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:rgba(255,255,255,.96);border-bottom:1px solid #eef2f7;}
.portal-student-notification-head b{font:800 15px/1.2 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--theme-text,#0a2342);}
.portal-student-notification-head button{border:0;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);border-radius:var(--radius-md,10px);padding:7px 9px;font:700 11px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
.portal-student-notification-actions{display:flex;align-items:center;gap:6px;}
.portal-student-notification-actions [data-clear]{background:#fff1f2;color:#be123c;border:1px solid #fecdd3;}
.portal-student-notification-item{display:block;width:100%;padding:15px 18px;border:0;border-bottom:1px solid var(--theme-surface-muted,#edf5fc);text-align:left;cursor:pointer;}
.portal-student-notification-item.unread{background:#f0fdf9;}
.portal-student-notification-item.read{background:#f1f5f9;}
.portal-student-notification-item.read b,.portal-student-notification-item.read p,.portal-student-notification-item.read small{color:#94a3b8;}
.portal-student-notification-item:hover{background:var(--theme-primary-soft,#f0f8ff);}
.portal-student-notification-item b{display:block;color:var(--theme-text,#0a2342);font:800 13px/1.4 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.portal-student-notification-item p{margin:5px 0 0;color:var(--theme-text-muted,#60758d);font:500 12px/1.55 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.portal-student-notification-item small{display:block;margin-top:7px;color:var(--theme-text-subtle,#7e90a5);font:700 10px/1.3 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.portal-student-notification-empty{padding:34px 20px;text-align:center;color:var(--theme-text-subtle,#7e90a5);font:600 13px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.portal-student-header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:14px!important;margin-left:auto!important;flex:0 0 auto!important;}
.app main>header,.app main>section,.app .subnav{box-sizing:border-box;}
.app .card{border-radius:var(--radius-5xl,24px);box-shadow:0 9px 34px rgba(15,23,42,.055);}
.app main>section{max-width:1500px;width:100%;margin-inline:auto;}
@media (max-width:767px){.portal-premium-status{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;padding:0!important;gap:0!important;overflow:hidden;font-size:0;line-height:0;justify-content:center!important;flex:0 0 42px!important;}
.portal-premium-status svg{width:19px!important;height:19px!important;}
.portal-premium-status:before{font-size:20px;line-height:1;}
.subscription-shortcut.portal-premium-status{border:0;}
.subscription-shortcut.portal-premium-status:before{content:"♛";}
header{gap:8px;}
header>.flex,header .admin{gap:7px!important;}
.md\:hidden h1{font-size:15px;white-space:nowrap;}
.md\:hidden img{flex:0 0 auto;}
.app main>header{padding:12px!important;}
.app main>header>div:first-child{min-width:0;}
.app main>header h2{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.app main>header .admin>div,.app main>header .header-action{display:none!important;}
.app main>header .admin img{width:40px!important;height:40px!important;}
.app main>section{padding:14px!important;}
.app .card{border-radius:var(--radius-3xl,20px);}
.app .grid.two,.app .grid.stats{grid-template-columns:1fr!important;}
.portal-student-notification-panel{position:fixed;top:74px;right:12px;}}
@media (min-width:768px){.portal-premium-status{min-height:40px;}
.app main>section{padding-inline:28px;}}

main{overscroll-behavior:contain;}
@media (max-width:900px){[class*="shadow-2xl"],[class*="shadow-xl"]{box-shadow:0 8px 22px rgba(15,23,42,.10);}}
@media (max-width:850px){.attendance-mobile-actions,.grading-mobile-actions{position:fixed!important;left:12px!important;right:12px!important;bottom:calc(78px + env(safe-area-inset-bottom))!important;z-index:78!important;margin:0!important;padding:8px!important;border:1px solid rgba(226,232,240,.9);border-radius:var(--radius-3xl,20px);background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(15,23,42,.18);}
.attendance-mobile-actions button,.grading-mobile-actions button{min-height:50px;padding-top:10px!important;padding-bottom:10px!important;box-shadow:none;}}
html.portal-session-restoring
  #root
  > .min-h-screen.flex.items-center.justify-center,
html.portal-session-restoring
  #root
  > .min-h-screen.flex.items-center.justify-center.p-4,
html.portal-session-restoring #root .fixed.inset-0.bg-gray-950\/50.z-\[150\],
html.admin-session-restoring #login,
html.owner-restoring #ownerLogin,
html.foundation-session-restoring #foundationLogin{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
html.portal-session-restoring body,
html.admin-session-restoring body,
html.owner-restoring body,
html.foundation-session-restoring body{min-height:100dvh;background:var(--tone-f7faff,#f7faff);}
html.foundation-session-restoring #foundationApp.hidden,
html.admin-session-restoring #app.hidden,
html.owner-restoring #ownerApp.hidden{display:none!important;}
#loading{display:none!important;}
.admin-nav-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.admin-subnav-icon{display:none!important;}
.admin-profile-menu button{pointer-events:auto!important;}
body.admin-auth-mode{overflow:hidden!important;height:100dvh!important;}
.admin-auth-mode #login{position:fixed!important;inset:0!important;z-index:1000!important;overflow:hidden!important;background:#f5f9ff;}
.admin-auth-mode #app{display:none!important;}
.admin-auth-mode .login-card{width:min(520px,calc(100vw - 28px))!important;padding:28px!important;border-radius:var(--radius-5xl,24px);box-shadow:0 14px 44px rgba(0,52,125,.10);}
.admin-auth-mode .login-head img{width:52px!important;}
.admin-auth-mode .login-choices{margin:17px 0!important;gap:9px!important;}
.admin-auth-mode .login-choice{padding:13px!important;border-radius:var(--radius-lg,14px);}
.admin-auth-mode .login-card>p{margin:10px 0!important;font-size:13px;}
@media (max-width:850px){body:not(.admin-auth-mode){overscroll-behavior:none;}
.app>aside{position:fixed!important;inset:auto 0 0 0!important;height:72px!important;z-index:100!important;transform:translateZ(0);touch-action:manipulation;background:rgba(255,255,255,.98);}
.app #groupNav{grid-template-columns:repeat(5,1fr)!important;touch-action:manipulation;}
.app #groupNav button{touch-action:manipulation;}
.admin-nav-icon{width:40px!important;height:40px!important;border-radius:13px;}
.admin-nav-icon svg{width:23px!important;height:23px!important;}

.admin-nav-label{display:none!important;}

.app .subnav::-webkit-scrollbar{display:none;}}
@media (max-width:380px){.md\:hidden h1{display:none!important;}}
html.admin-session-restoring #login{visibility:hidden!important;}
html.admin-session-restoring body{background:var(--tone-f7faff,#f7faff);}
.admin-profile-button{position:relative!important;z-index:92!important;pointer-events:auto!important;touch-action:manipulation;}
.admin-profile-menu{z-index:160!important;pointer-events:auto!important;}
.admin-profile-menu>button{min-height:44px;pointer-events:auto!important;touch-action:manipulation;}
.admin-onboarding .modal .close{display:none!important;}
.admin-onboarding .modal{z-index:300!important;}

.admin-onboarding .admin-profile-modal:before{content:"Lengkapi data sekolah agar akun siap digunakan";display:block;margin:0 45px 18px 0;padding:13px 15px;font-size:12px;font-weight:800;line-height:1.5;}
.report-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:23px 25px;border-radius:25px;background:linear-gradient(135deg,#0b263c,var(--theme-primary-deep,#075da9));color:var(--theme-surface,#fff);box-shadow:0 16px 40px rgba(0,52,125,.16);}
.report-hero span,.report-card-head small{font-size:9px;font-weight:900;letter-spacing:.14em;opacity:.72;}
.report-hero h3{margin:5px 0 3px;font-size:23px;}
.report-hero p{margin:0;color:var(--theme-primary-border,#d9e8f5);font-size:12px;}
.report-actions{display:flex;align-items:center;gap:8px;}
.report-actions input,.report-actions button{min-height:42px;border:0;border-radius:var(--radius-md-lg,12px);}
.report-actions input{padding:0 12px;background:var(--theme-surface,#fff);color:var(--theme-text-strong,#123d6b);}
.report-actions .secondary{background:var(--tone-eef6ff,#eef6ff);}
.report-actions .primary{box-shadow:none;}
.report-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.report-summary-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:13px;padding:19px;border:1px solid #e7edf0;border-radius:var(--radius-4xl,22px);background:var(--theme-surface,#fff);box-shadow:0 8px 26px rgba(15,23,42,.045);}
.report-summary-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:15px;}
.report-summary-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.report-summary-card.green .report-summary-icon{background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);}
.report-summary-card.blue .report-summary-icon{background:var(--tone-eff6ff,#eff6ff);color:var(--tone-2563eb,#2563eb);}
.report-summary-card.violet .report-summary-icon{background:#f5f3ff;color:#7c3aed;}
.report-summary-card.amber .report-summary-icon{background:#fffbeb;color:#d97706;}
.report-summary-card small{display:block;color:#7b899a;font-size:10px;font-weight:800;}
.report-metric{display:flex;align-items:baseline;gap:5px;margin-top:4px;min-width:0;}
.report-metric b{font-size:23px;line-height:1;color:#101828;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.report-metric span{font-size:11px;color:var(--theme-text-muted,#60758d);}
.report-summary-card p{margin:7px 0 0;color:var(--theme-text-muted,#60758d);font-size:10px;}
.report-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;justify-items:stretch;gap:16px;margin-top:16px;width:100%;}
.report-card{width:100%;max-width:none!important;min-width:0;margin:0!important;padding:22px;border:1px solid #e7edf0;border-radius:var(--radius-5xl,24px);background:var(--theme-surface,#fff);box-shadow:0 8px 28px rgba(15,23,42,.045);}
.report-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px;}
.report-card-head h3{margin:4px 0 0;font-size:16px;}
.report-card-head>span{padding:6px 9px;border-radius:var(--radius-pill,999px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);font-size:9px;font-weight:900;}
.report-trend-card .bar-chart{height:185px;}
.report-condition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.report-condition-grid>div{display:grid;gap:3px;padding:14px 10px;border-radius:15px;background:var(--theme-surface-soft,#f7fbff);text-align:center;}
.report-condition-grid b{font-size:20px;}
.report-condition-grid span{font-size:9px;color:var(--theme-text-muted,#60758d);}
.report-total{display:flex;justify-content:space-between;gap:10px;margin:16px 0 0;padding-top:14px;border-top:1px solid #eef2f7;color:var(--theme-text-muted,#60758d);font-size:11px;}
.report-empty{margin:0;padding:20px;border-radius:15px;background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-subtle,#7e90a5);text-align:center;font-size:11px;}
.report-line span small{display:block;margin-top:3px;color:var(--theme-text-subtle,#7e90a5);font-size:9px;}
.report-zero-state{display:grid;place-items:center;min-height:145px;padding:24px;border:1px dashed #dbe7f3;border-radius:var(--radius-2xl,18px);background:linear-gradient(145deg,var(--tone-f8fbff,#f8fbff),var(--theme-surface-soft,#f7fbff));color:var(--theme-text-muted,#60758d);text-align:center;}
.report-zero-state b{display:block;margin-bottom:5px;color:var(--tone-1f2937,#1f2937);font-size:14px;}
.report-zero-state span{font-size:11px;line-height:1.6;}
.admin-mobile-profile-popup .admin-profile-summary{margin:8px 0 14px;}
.admin-mobile-profile-popup .admin-profile-premium{margin:12px 0;}
.admin-mobile-profile-popup>button{width:100%;min-height:48px;margin-top:9px;border:0;border-radius:var(--radius-lg,14px);background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-secondary,#50657e);text-align:left;padding:13px 15px;font-weight:800;}
.admin-mobile-profile-popup>.admin-profile-logout{background:#fff1f2;color:#e11d48;text-align:center;}
.school-logo-upload{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:16px;padding:15px;border:1px solid #dce8f6;border-radius:var(--radius-2xl,18px);background:var(--tone-f8fbff,#f8fbff);}
.school-logo-upload>img{width:92px;height:92px;object-fit:contain;padding:7px;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);border:1px solid var(--tone-dbe5f0,#dbe5f0);}
.school-logo-upload label{min-width:0;}
.school-logo-upload label small{display:block;margin:4px 0 9px;color:#7c8999;font-size:10px;font-weight:600;}
.school-logo-upload input{padding:10px!important;background:var(--theme-surface,#fff);}
.admin-mobile-dock{display:none;}
.school-identity-card{max-width:1120px;margin-inline:auto;}
.school-identity-form{gap:18px;}
.school-identity-form .form-section{display:grid;gap:14px;padding:20px;border:1px solid #e5ecea;border-radius:var(--radius-3xl,20px);background:linear-gradient(145deg,#fbfffd,var(--theme-surface,#fff));}
.school-identity-form .form-section h4{margin:0 0 2px;color:#0f3951;font-size:14px;}
.school-identity-form .grid.three{grid-template-columns:repeat(3,minmax(0,1fr));}
.school-identity-form label{min-width:0;}
.school-identity-form input,.school-identity-form select{width:100%;}
html.portal-session-restoring #root>.min-h-screen.flex.items-center.justify-center{visibility:hidden!important;}
@media (max-width:850px){html,body{max-width:100%!important;overflow-x:clip!important;}
.app,.app main,.app main>section{min-width:0!important;max-width:100%!important;width:100%!important;overflow-x:clip!important;}
.app .subnav{display:flex!important;max-width:100%!important;width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;scrollbar-width:none!important;}
.app .subnav::-webkit-scrollbar{display:none!important;}
.app .subnav button{flex:0 0 auto!important;white-space:nowrap!important;}
.app .toolbar{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important;}
.app .toolbar>div{min-width:0!important;}
.app .table-wrap{max-width:100%!important;overflow-x:auto!important;}
.app>aside{display:none!important;}
body>#groupNav.admin-mobile-dock{position:fixed!important;inset:auto 0 0 0!important;z-index:2147483000!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:center!important;align-content:center!important;width:100vw!important;max-width:100vw!important;height:calc(72px + env(safe-area-inset-bottom))!important;min-height:calc(72px + env(safe-area-inset-bottom))!important;margin:0!important;padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;gap:4px!important;overflow:hidden!important;overscroll-behavior:none!important;touch-action:manipulation!important;transform:none!important;contain:strict!important;isolation:isolate!important;box-sizing:border-box!important;background:var(--theme-surface,#fff);border-top:1px solid var(--tone-dbe5f0,#dbe5f0)!important;box-shadow:0 -8px 30px var(--tone-0305fa36,rgba(15,23,42,.08));}
#groupNav.admin-mobile-dock button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:50px!important;min-height:50px!important;margin:0!important;padding:4px!important;border:0;border-radius:15px;background:transparent;color:var(--theme-text-muted,#60758d);box-shadow:none;overflow:hidden!important;transform:none!important;line-height:1;box-sizing:border-box!important;touch-action:manipulation!important;}
#groupNav.admin-mobile-dock button:hover,#groupNav.admin-mobile-dock button:focus,#groupNav.admin-mobile-dock button.active{margin:0!important;background:transparent;color:var(--theme-primary-mid,#1264ad);box-shadow:none;transform:none!important;}
#groupNav.admin-mobile-dock button:before{display:none!important;}
#groupNav.admin-mobile-dock .admin-nav-label{display:none!important;}
#groupNav.admin-mobile-dock .admin-nav-icon{display:grid!important;place-items:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;margin:0!important;padding:0!important;border-radius:var(--radius-lg,14px);background:transparent;transform:none!important;box-sizing:border-box!important;}
#groupNav.admin-mobile-dock .admin-nav-icon svg{width:23px!important;height:23px!important;}
#groupNav.admin-mobile-dock button.active .admin-nav-icon{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 7px 16px var(--tone-af4f05cb,rgba(7, 142, 232, .24));}
.app #groupNav{position:static!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;align-items:center!important;align-content:center!important;width:100%!important;height:56px!important;min-height:56px!important;margin:0!important;padding:0!important;gap:4px!important;overflow:hidden!important;transform:none!important;box-sizing:border-box!important;}
.app #groupNav button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:50px!important;min-height:50px!important;margin:0!important;padding:4px!important;border:0;background:transparent;color:var(--theme-text-muted,#60758d);box-shadow:none;overflow:hidden!important;transform:none!important;line-height:1;box-sizing:border-box!important;}
.app #groupNav button:hover,.app #groupNav button:focus,.app #groupNav button.active{margin:0!important;background:transparent;color:var(--theme-primary-mid,#1264ad);box-shadow:none;transform:none!important;}
.app #groupNav button:before{display:none!important;}
.app #groupNav .admin-nav-icon{display:grid!important;place-items:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;margin:0!important;padding:0!important;border-radius:var(--radius-lg,14px);transform:none!important;box-sizing:border-box!important;}
.app #groupNav .admin-nav-icon svg{width:23px!important;height:23px!important;}
.app #groupNav button.active .admin-nav-icon{width:42px!important;height:42px!important;border-radius:var(--radius-lg,14px);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 7px 16px var(--tone-af4f05cb,rgba(7, 142, 232, .24));transform:none!important;}
.app main>section{padding-bottom:calc(105px + env(safe-area-inset-bottom))!important;}
.school-identity-form .grid.two,.school-identity-form .grid.three{grid-template-columns:minmax(0,1fr)!important;}
.school-identity-form .form-section{padding:16px;border-radius:var(--radius-2xl,18px);}
.report-hero{align-items:flex-start;padding:19px;border-radius:21px;}
.report-hero h3{font-size:19px;}
.report-actions{display:grid;grid-template-columns:1fr 1fr;}
.report-actions input{grid-column:1/-1;width:100%;}
.report-summary-grid{grid-template-columns:1fr 1fr;gap:10px;}
.report-summary-card{grid-template-columns:39px minmax(0,1fr);gap:10px;padding:15px;border-radius:19px;}
.report-summary-icon{width:39px;height:39px;}
.report-metric b{font-size:20px;}
.report-panel-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px;width:100%!important;}
.report-card{width:100%!important;max-width:none!important;margin:0!important;padding:18px;border-radius:21px;}
.report-trend-card .bar-chart{height:150px;}
.report-zero-state{min-height:118px;}}
@media (max-width:420px){.report-hero{display:grid;}
.report-actions{width:100%;}
.report-summary-grid{grid-template-columns:1fr;}
.report-summary-card{grid-template-columns:44px 1fr;}
.report-summary-card p{font-size:11px;}}
@media print{.report-hero{background:var(--theme-surface,#fff);color:#111;border:1px solid #ddd;box-shadow:none;}
.report-hero p{color:#555;}
.report-actions{display:none!important;}
.report-summary-grid{grid-template-columns:repeat(2,1fr);}
.report-panel-grid{grid-template-columns:1fr 1fr;}
.report-card,.report-summary-card{box-shadow:none;}}
.login-error,.form-login-error{margin:10px 0 0;padding:11px 13px;border:1px solid var(--tone-fecaca,#fecaca);border-radius:var(--radius-md-lg,12px);background:#fef2f2;color:var(--theme-danger,#b91c1c);font-size:12px;font-weight:750;line-height:1.45;}



.portal-form-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;isolation:isolate!important;overscroll-behavior:contain!important;}
.portal-form-modal>form,.portal-form-modal>div{overscroll-behavior:contain!important;}
.portal-guru-dashboard,.portal-guru-schedule{scroll-margin-bottom:120px;}
@media (max-width:767px){
.portal-form-modal{align-items:flex-start!important;overflow-y:auto!important;}
.portal-form-modal>form,.portal-form-modal>div{width:100%!important;margin:auto!important;max-height:calc(100dvh - 16px)!important;overflow-y:auto!important;border-radius:var(--radius-4xl,22px);}
.portal-form-modal form>div:last-child{padding-bottom:calc(24px + env(safe-area-inset-bottom))!important;}
.portal-guru-dashboard,.portal-guru-schedule{padding-bottom:calc(9rem + env(safe-area-inset-bottom))!important;}}
@media (min-width:768px){.portal-form-modal{padding-top:24px!important;padding-bottom:24px!important;overflow-y:auto!important;}
.portal-form-modal>form,.portal-form-modal>div{margin:auto!important;max-height:calc(100dvh - 48px)!important;overflow-y:auto!important;}}
.portal-form-modal{display:flex!important;align-items:center!important;justify-content:center!important;padding:clamp(10px,2.5vw,24px)!important;overflow:auto!important;}
.portal-form-modal>.portal-form-dialog{display:block!important;visibility:visible!important;width:min(100%,560px)!important;height:auto!important;min-height:0!important;max-height:min(88dvh,760px)!important;margin:auto!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
.portal-form-dialog>.portal-form-dialog-header{display:flex!important;visibility:visible!important;opacity:1!important;min-height:82px!important;height:auto!important;position:sticky!important;top:0!important;z-index:30!important;align-items:center!important;padding:16px 18px!important;}
.portal-form-dialog-header h2,.portal-form-dialog-header h3,.portal-form-dialog-header p{visibility:visible!important;color:inherit;}
.portal-modal-back{display:inline-flex!important;visibility:visible!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;white-space:nowrap!important;}
.portal-form-dialog>div:last-child,.portal-form-dialog>form{padding-bottom:max(18px,env(safe-area-inset-bottom))!important;}
@media (max-width:767px){.portal-form-modal{padding:12px!important;}
.portal-form-modal>.portal-form-dialog{width:min(100%,520px)!important;max-height:calc(100dvh - 24px)!important;}
.portal-form-dialog>.portal-form-dialog-header{min-height:72px!important;padding:13px 14px!important;}
.portal-form-dialog-header h2,.portal-form-dialog-header h3{font-size:16px;margin-top:2px!important;}
.portal-form-dialog-header p{font-size:9px;}
.portal-form-dialog>div:last-child,.portal-form-dialog>form{padding:16px!important;padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;}
.portal-form-dialog textarea{min-height:96px!important;max-height:160px!important;}
.portal-form-dialog .grid.grid-cols-2{grid-template-columns:minmax(0,1fr)!important;}}
@media (max-height:620px){.portal-form-modal>.portal-form-dialog{max-height:calc(100dvh - 16px)!important;}
.portal-form-dialog>.portal-form-dialog-header{min-height:62px!important;}}



.portal-form-dialog input:focus,
.portal-form-dialog select:focus,
.portal-form-dialog textarea:focus{border-color:var(--tone-0ea5e9,#0ea5e9);box-shadow:0 0 0 4px rgba(20, 129, 184, .12);}
.portal-form-dialog button[type="submit"]{box-shadow:0 12px 28px var(--tone-60e09799,rgba(0, 111, 209, .18));}

@media (max-width: 767px){.attendance-daily-scroll,
  .grading-input-scroll{padding-bottom:calc(14.5rem + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(14.5rem + env(safe-area-inset-bottom))!important;overscroll-behavior-y:contain;}
.attendance-daily-scroll > .space-y-3,
  .grading-input-scroll > .bg-white:nth-last-child(2){margin-bottom:12px!important;}
.student-profile-mobile-safe{padding-bottom:calc(7.5rem + env(safe-area-inset-bottom))!important;margin-bottom:0!important;}
.student-profile-save{position:relative;z-index:1;margin-bottom:8px!important;}}
:where(button.primary,button.secondary,button.warning,button.danger,button.ghost,button.stop-access,.actions button,.buttons button,.leave-row button,button.academic-action,.teacher-report-actions button,.teacher-report-actions a,button[class*="bg-blue-"],button[class*="bg-red-"],button[class*="bg-blue-"],button[class*="bg-amber-"]){position:relative;overflow:hidden;border:1px solid currentColor;border-left-width:4px!important;border-radius:var(--radius-md,10px);font-weight:800;letter-spacing:.01em;box-shadow:0 7px 16px rgba(15,23,42,.07);}
:where(button.primary,button.secondary,button.warning,button.danger,button.ghost,button.stop-access,.actions button,.buttons button,.leave-row button,button.academic-action,.teacher-report-actions button,.teacher-report-actions a,button[class*="bg-blue-"],button[class*="bg-red-"],button[class*="bg-blue-"],button[class*="bg-amber-"]):not(:disabled):hover{transform:translateY(-2px);box-shadow:0 11px 22px rgba(15,23,42,.11);}
:where(button.primary,button.secondary,button.warning,button.danger,button.ghost,button.stop-access,.actions button,.teacher-report-actions button,.teacher-report-actions a):not(:disabled):active{transform:translateY(0) scale(.98);box-shadow:0 4px 9px var(--tone-0305fa36,rgba(15,23,42,.08));}
:where(button.primary,button.secondary,.actions button,.buttons button,.leave-row button,button.academic-action,button[class*="bg-blue-"]){background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);border-color:var(--theme-primary,#078ee8);}
:where(button[class*="bg-blue-"]){background:var(--tone-eff6ff,#eff6ff);color:var(--tone-1d4ed8,#1d4ed8);border-color:#3b82f6;}
:where(button.warning,button[class*="bg-amber-"]){background:#fffaf0;color:#a34405;border-color:var(--theme-warning,#f59e0b);}
:where(button.danger,button.stop-access,button[class*="bg-red-"]){background:var(--tone-fff5f5,#fff5f5);color:var(--tone-c81e1e,#c81e1e);border-color:var(--tone-ff4d55,#ff4d55);}
:where(button.ghost){background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-secondary,#50657e);border-color:var(--theme-text-subtle,#7e90a5);}
:where(.buttons button.out,.leave-row button.leave-cancel){background:var(--tone-fff5f5,#fff5f5);color:var(--tone-c81e1e,#c81e1e);border-color:var(--tone-ff4d55,#ff4d55);}
:where(.buttons button[data-close],.buttons button[type="button"]:not(.out)){background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-secondary,#50657e);border-color:var(--theme-text-subtle,#7e90a5);}
:where(button.primary,button.secondary,button.warning,button.danger,button.ghost,button.stop-access,.actions button):focus-visible{outline:3px solid rgba(7, 142, 232, .18);outline-offset:2px;}
button:disabled{cursor:not-allowed;transform:none!important;box-shadow:none;filter:grayscale(.25);opacity:.58;}
.badge.pending,.badge.approved,.badge.active,.badge.rejected,.badge.inactive{border:1px solid currentColor;border-left-width:4px!important;border-radius:var(--radius-md,10px);padding:8px 11px!important;box-shadow:0 6px 14px rgba(15,23,42,.06);}
.badge.pending{background:#fffaf0;color:#a34405;border-color:var(--theme-warning,#f59e0b);}
.badge.approved,.badge.active{background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);border-color:var(--theme-primary,#078ee8);}
.badge.rejected,.badge.inactive{background:var(--tone-fff5f5,#fff5f5);color:var(--tone-c81e1e,#c81e1e);border-color:var(--tone-ff4d55,#ff4d55);}
.modal .modal-card{width:min(100%,560px)!important;max-height:88dvh!important;padding:22px!important;}
.modal>form{width:min(100%,480px)!important;max-height:88dvh!important;overflow:auto!important;padding:22px!important;border-radius:var(--radius-4xl,22px);}
.modal .modal-card:has(.qris-wrap),.modal .modal-card:has(.school-payment){width:min(100%,620px)!important;}
.fixed.inset-0>[class~="max-w-4xl"],.fixed.inset-0>[class~="max-w-3xl"]{max-width:720px!important;padding:22px!important;border-radius:var(--radius-5xl,24px);max-height:88dvh!important;}
.fixed.inset-0>[class~="max-w-2xl"],.fixed.inset-0>[class~="max-w-xl"]{max-width:560px!important;padding:21px!important;border-radius:var(--radius-4xl,22px);max-height:88dvh!important;}
@media (max-width:640px){.modal{align-items:flex-end!important;padding:0!important;}
.modal .modal-card,.modal>form{width:100%!important;max-height:90dvh!important;border-radius:var(--radius-4xl,22px) var(--radius-4xl,22px) 0 0;padding:20px 16px!important;}
.fixed.inset-0>[class*="max-w-"]{width:100%!important;max-width:100%!important;max-height:90dvh!important;border-radius:var(--radius-4xl,22px) var(--radius-4xl,22px) 0 0;padding:19px 16px!important;}}
.student-id-card-launch{border:0;cursor:pointer;}
.student-id-card-launch svg{width:21px;height:21px;}
.student-id-card-launch-header{width:44px;height:44px;border-radius:var(--radius-pill,999px);display:grid;place-items:center;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);box-shadow:0 1px 3px #0f172a14;}
.student-id-card-launch-sidebar{width:100%;padding:14px 16px;border-radius:var(--radius-xl,16px);display:flex;align-items:center;gap:12px;background:#f0fdf4;color:var(--theme-primary-mid,#1264ad);font-size:14px;font-weight:800;}
html.student-card-inline-open[data-portal-brand="siswa"] body #root .portal-nav-desktop > button:not([data-student-card-launch]){border-color:var(--pp-menu-control-border)!important;background:var(--pp-menu-control-pale)!important;color:var(--pp-menu-control-text)!important;-webkit-text-fill-color:var(--pp-menu-control-text)!important;box-shadow:inset 6px 0 0 var(--pp-menu-control-border)!important;}
@media (max-width:767px){html.student-card-inline-open[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop > button:not([data-student-card-launch]){border-color:var(--theme-primary,#078ee8)!important;border-left-width:2px!important;background:var(--tone-f8fbff,#f8fbff)!important;color:var(--theme-primary-strong,#173f70)!important;-webkit-text-fill-color:currentColor!important;box-shadow:inset 3px 0 0 var(--theme-primary,#078ee8),0 7px 16px var(--tone-ec408d0f)!important;}}
html.student-card-inline-open[data-portal-brand="siswa"] body #root .portal-nav-desktop > [data-student-card-launch][aria-current="page"]{border-color:#0068b8!important;background:#078ee8!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:inset 7px 0 0 #0068b8,0 10px 22px rgba(7,142,232,.22)!important;}
html.student-card-inline-open[data-portal-brand="siswa"] body #root .portal-nav-desktop > [data-student-card-launch][aria-current="page"] svg{color:#fff!important;stroke:currentColor!important;background:transparent!important;box-shadow:none!important;}
html.student-card-inline-open[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44].student-dock-active-v44{border-color:var(--theme-primary,#078ee8)!important;background:var(--theme-surface,#fff)!important;color:var(--theme-primary-strong,#173f70)!important;-webkit-text-fill-color:currentColor!important;box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8),0 5px 13px rgba(8,48,110,.06)!important;}
#root main.student-card-main-active{position:relative!important;width:100%!important;min-width:0!important;max-width:none!important;}
#root main.student-card-main-active > :not(.student-id-card-inline){display:none!important;}
.student-id-card-inline{box-sizing:border-box;width:100%;min-width:0;max-width:none;margin:0;}
.student-id-card-inline-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;width:100%;margin:0 0 20px;padding:0;}
.student-id-card-kicker{display:block;color:#0068b8;font-size:10px;font-weight:900;letter-spacing:.14em;}
.student-id-card-inline-heading h2{margin:7px 0 6px;color:#11243f;font-size:clamp(24px,3vw,30px);line-height:1.15;letter-spacing:-.03em;}
.student-id-card-inline-heading p{margin:0;max-width:680px;color:#74869d;font-size:13px;line-height:1.65;}
.student-id-card-inline-body{box-sizing:border-box;width:100%;min-width:0;max-width:none;}
.student-id-card-loading,.student-id-card-error{text-align:center;width:100%;padding:60px 20px;border:1px solid #dce7f2;border-radius:24px;background:#fff;font-weight:800;color:#74869d;}
.student-id-card-error{color:#be123c;}
.identity-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch;width:100%;max-width:none;}
.student-id-card{position:relative;isolation:isolate;width:100%;min-width:0;aspect-ratio:1016/640;overflow:hidden;border-radius:24px;border:1px solid #d7e3ef;background:linear-gradient(145deg,#fff,#f5f9ff);box-shadow:0 18px 42px rgba(8,48,110,.12);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.student-id-card-front{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;}
.id-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:clamp(14px,1.45vw,20px) clamp(16px,1.65vw,22px);color:#fff;background:linear-gradient(135deg,#0b263c,#0068b8);}
.id-brand{display:flex;align-items:center;gap:9px;min-width:0;}
.id-brand img{display:block;width:clamp(104px,13vw,165px);height:auto;max-height:64px;object-fit:contain;flex:0 0 auto;}

.id-card-identity{padding:12px clamp(16px,1.65vw,22px) 0;color:#00347d;font-size:clamp(10px,.85vw,12px);line-height:1.4;overflow-wrap:anywhere;}
.id-card-identity strong{font-weight:800;}



.id-chip{padding:6px 9px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.12);font-size:clamp(7px,.65vw,9px);font-weight:900;white-space:nowrap;}
.id-card-body{display:grid;grid-template-columns:minmax(0,1fr) clamp(120px,25%,165px);gap:clamp(12px,1.5vw,20px);align-items:center;padding:clamp(16px,1.8vw,24px);}
.id-profile{display:grid;grid-template-columns:clamp(76px,18%,104px) minmax(0,1fr);gap:clamp(12px,1.5vw,18px);align-items:center;min-width:0;}
.id-photo{width:100%;aspect-ratio:3/4;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#f1edff,#d8ccff);color:#6d43ce;font-size:clamp(22px,2.2vw,30px);font-weight:900;overflow:hidden;}
.id-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.id-details{min-width:0;}
.id-details>small{color:#74869d;font-size:clamp(7px,.62vw,9px);font-weight:900;letter-spacing:.12em;}
.id-details h2{margin:4px 0 clamp(9px,1vw,14px);color:#11243f;font-size:clamp(18px,1.75vw,25px);line-height:1.1;overflow-wrap:anywhere;}
.id-details dl{display:grid;gap:clamp(5px,.7vw,8px);margin:0;}
.id-details dl div{display:grid;grid-template-columns:clamp(62px,7vw,86px) minmax(0,1fr);gap:6px;}
.id-details dt{color:#74869d;font-size:clamp(8px,.72vw,10px);}
.id-details dd{margin:0;color:#11243f;font-size:clamp(9px,.78vw,11px);font-weight:800;overflow-wrap:anywhere;}
.id-qr{align-self:center;text-align:center;min-width:0;}
.id-qr-code{width:min(100%,145px);aspect-ratio:1;margin:0 auto;padding:7px;border:1px solid #dce7f2;border-radius:15px;background:#fff;display:grid;place-items:center;}
.id-qr-code img,.id-qr-code canvas{width:100%!important;height:100%!important;object-fit:contain;}
.id-qr small{display:block;margin-top:6px;font-size:clamp(6px,.58vw,8px);color:#74869d;}
.id-card-bottom{display:flex;justify-content:space-between;gap:10px;padding:10px clamp(16px,1.65vw,22px);font-size:clamp(7px,.62vw,9px);font-weight:800;color:#00347d;background:#eaf4ff;}

.student-id-card-back{display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:linear-gradient(145deg,#fff,#f4f9ff);}
.id-card-back-watermark{position:absolute;z-index:-1;left:50%;top:53%;width:72%;max-width:520px;height:auto;transform:translate(-50%,-50%);opacity:.075;filter:grayscale(1);pointer-events:none;user-select:none;}
.id-card-back-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:clamp(14px,1.45vw,20px) clamp(16px,1.65vw,22px);color:#fff;background:linear-gradient(135deg,#0b263c,#0068b8);}
.id-card-back-head strong,.id-card-back-head small{display:block;}
.id-card-back-head strong{font-size:clamp(11px,1vw,14px);letter-spacing:.04em;}
.id-card-back-head small{margin-top:3px;max-width:28vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d9edff;font-size:clamp(7px,.68vw,9px);}
.id-card-back-head>span{font-size:clamp(12px,1.15vw,16px);font-weight:950;letter-spacing:.16em;}
.id-card-back-content{position:relative;z-index:1;display:grid;grid-template-rows:auto 1fr;gap:clamp(13px,1.4vw,19px);padding:clamp(18px,2vw,27px);}
.id-card-back-kicker{display:block;color:#0068b8;font-size:clamp(7px,.62vw,9px);font-weight:950;letter-spacing:.13em;}
.id-card-back-copy h3{margin:5px 0 8px;color:#11243f;font-size:clamp(17px,1.55vw,23px);line-height:1.14;}
.id-card-back-copy p{max-width:92%;margin:0;color:#536a84;font-size:clamp(9px,.78vw,11px);line-height:1.55;}
.id-card-back-meta{align-self:end;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(70px,.65fr) minmax(0,1fr);gap:12px;padding-top:clamp(10px,1vw,14px);border-top:1px solid rgba(0,104,184,.13);}
.id-card-back-meta span,.id-card-back-meta strong{display:block;min-width:0;}
.id-card-back-meta span{color:#74869d;font-size:clamp(7px,.58vw,8px);font-weight:900;text-transform:uppercase;letter-spacing:.08em;}
.id-card-back-meta strong{margin-top:4px;color:#11243f;font-size:clamp(9px,.78vw,11px);line-height:1.25;overflow-wrap:anywhere;}
.id-card-back-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px clamp(16px,1.65vw,22px);background:#eaf4ff;color:#536a84;font-size:clamp(7px,.62vw,9px);}
.id-card-back-bottom strong{color:#00347d;}

.student-card-export-canvas{position:fixed;left:-12000px;top:-12000px;width:1px;height:1px;overflow:hidden;}
.student-id-card-print-btn{background:#2563eb;color:#fff;}
.student-id-card-download-btn{background:#0068b8;color:#fff;}
.student-id-card-download-btn:hover{background:#003f9e;}
.student-id-card-print-btn:hover{background:#1d4ed8;}
.student-id-card-print-btn:disabled{background:#cbd5e1;cursor:not-allowed!important;}
.student-id-card-print-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;}
.student-card-offscreen-qr{position:fixed;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden;}
.student-id-card-print-actions button{border:0;border-radius:12px;padding:11px 16px;font-size:11px;font-weight:900;cursor:pointer;}
.student-id-card-qr-download{margin-top:18px;background:#fff;border:1px solid #dce7f2;border-radius:18px;padding:15px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,auto) auto;gap:14px;align-items:center;width:100%;}
.student-id-card-qr-download b{font-size:13px;color:#11243f;}
.student-id-card-qr-download p{margin:3px 0 0;font-size:10px;color:#74869d;}
.student-qr-download-wrap{display:flex;align-items:center;gap:14px;background:#f8fafc;border-radius:12px;padding:12px;border:1px solid #dce7f2;}
.student-qr-download-image{width:160px;height:160px;background:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.student-qr-download-image img,.student-qr-download-image canvas{width:100%!important;height:100%!important;object-fit:contain;}
.student-qr-download-info{display:flex;flex-direction:column;gap:4px;min-width:0;}
.student-qr-download-name{font-size:15px;font-weight:900;color:#11243f;line-height:1.3;overflow-wrap:anywhere;}
.student-qr-download-nis{font-size:12px;color:#74869d;font-weight:700;}
.student-id-card-qr-download button{display:block;border:0;border-radius:12px;padding:10px 16px;font-size:11px;font-weight:900;cursor:pointer;background:#7c3aed;color:#fff;white-space:nowrap;}
.student-id-card-qr-download button:disabled{background:#cbd5e1;cursor:not-allowed;}
.student-id-card-qr-download button:hover{background:#6d28d9;}
.student-id-card-status{min-height:18px;margin:10px 4px 0;font-size:11px;font-weight:800;color:#0068b8;}
@media (max-width:1100px){.identity-stage{grid-template-columns:1fr;max-width:780px;}.student-id-card-qr-download{grid-template-columns:1fr auto;}.student-id-card-qr-download>div:first-child{grid-column:1/-1;}}
@media (max-width:760px){#root main.student-card-main-active{padding:16px 14px calc(96px + env(safe-area-inset-bottom))!important;}.student-id-card-inline-heading{align-items:flex-start;flex-direction:column;margin-bottom:16px;}.student-id-card-inline-heading p{font-size:12px;}.identity-stage{grid-template-columns:1fr;max-width:none;}.student-id-card{aspect-ratio:auto;min-height:0;}.id-card-body{grid-template-columns:1fr;}.id-profile{grid-template-columns:90px minmax(0,1fr);}.id-photo{width:90px;}.id-qr{padding-top:18px;border-top:1px solid #dce7f2;}.id-qr-code{width:180px;height:180px;}.id-card-back-head small{max-width:58vw;}.id-card-back-meta{grid-template-columns:1fr 1fr;}.id-card-back-meta>div:first-child{grid-column:1/-1;}.student-id-card-qr-download{grid-template-columns:1fr;}.student-id-card-qr-download>div:first-child{grid-column:auto;}.student-qr-download-wrap{flex-direction:column;align-items:center;text-align:center;}.student-qr-download-image{width:160px;height:160px;}.student-id-card-qr-download button{width:100%;}.student-id-card-print-actions{display:grid;grid-template-columns:1fr 1fr;}.student-id-card-print-actions button{width:100%;}}
@media (max-width:520px){.id-card-top,.id-card-back-head{padding:15px 16px;}.id-chip{display:none;}.id-card-body{padding:18px;}.id-profile{grid-template-columns:70px minmax(0,1fr);gap:14px;}.id-photo{width:70px;border-radius:15px;font-size:22px;}.id-details h2{font-size:21px;}.id-details dl div{grid-template-columns:78px minmax(0,1fr);}.id-card-bottom,.id-card-back-bottom{padding:11px 16px;flex-direction:column;align-items:flex-start;}.id-card-back-content{padding:18px;}.id-card-back-meta{grid-template-columns:1fr;}.id-card-back-meta>div:first-child{grid-column:auto;}.student-id-card-print-actions{grid-template-columns:1fr;}}
@media print{.student-id-card{border-color:#cbd5e1;box-shadow:none;}.id-card-top,.id-card-back-head{background:#00347d;-webkit-print-color-adjust:exact;print-color-adjust:exact;}.id-card-bottom,.id-card-back-bottom{background:#eaf4ff;-webkit-print-color-adjust:exact;print-color-adjust:exact;}}
.portal-student-notification-layer{top:74px!important;right:12px!important;}
#root > .flex.h-screen > .flex-1.flex.flex-col.overflow-hidden:has(.portal-student-header-actions){overflow:visible!important;}
#root header:has(.portal-student-header-actions){position:relative!important;z-index:2147483600!important;isolation:isolate!important;}
.student-profile-menu-layer{position:fixed!important;top:68px!important;right:16px!important;z-index:2147483646!important;pointer-events:auto!important;}
@media (max-width: 640px){.portal-student-notification-layer{top:68px!important;right:8px!important;width:calc(100vw - 16px)!important;max-height:calc(100dvh - 150px)!important;}
.student-profile-menu-layer{top:64px!important;right:8px!important;width:min(288px, calc(100vw - 16px))!important;}}
body > .portal-student-notification-panel,
.portal-student-notification-layer,
.psn-panel,
.owner-notification-panel,
.foundation-notification-panel,
.school-notification-panel{position:fixed!important;z-index:2147483647!important;isolation:isolate!important;pointer-events:auto!important;transform:translateZ(0)!important;}
.psn-panel{top:calc(72px + env(safe-area-inset-top))!important;right:16px!important;left:auto;}
body > .portal-student-notification-panel[hidden],
.psn-panel[hidden]{display:none!important;}
#root header:has(.portal-student-header-actions){overflow:visible!important;contain:none!important;}
.portal-teacher-today-schedule,
.portal-teacher-schedule-day{overflow:visible!important;border:0;background:transparent;box-shadow:none;}
.portal-teacher-today-schedule-grid,
.portal-teacher-schedule-grid{display:grid!important;grid-template-columns:repeat(auto-fit, minmax(210px, 1fr))!important;gap:10px!important;padding:0!important;}
.portal-teacher-schedule-card{min-width:0!important;border:1px solid var(--tone-dbe5f0,#dbe5f0);border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);padding:12px!important;box-shadow:0 7px 20px rgba(15, 23, 42, .045);}
.portal-teacher-schedule-card > *{min-width:0;}
.portal-teacher-schedule-card h4,
.portal-teacher-schedule-card p{overflow:hidden;text-overflow:ellipsis;}
.portal-teacher-schedule-day > :first-child{margin-bottom:9px;border:1px solid var(--tone-dbe5f0,#dbe5f0);border-radius:15px;background:var(--theme-surface-soft,#f7fbff);}
@media (min-width: 1100px){.portal-teacher-today-schedule-grid,
  .portal-teacher-schedule-grid{grid-template-columns:repeat(4, minmax(0, 1fr))!important;}}
@media (max-width: 767px){html{height:100%;overflow:hidden;overscroll-behavior:none;}
body:has(#root > .flex.h-screen),
  body:has(.app:not(.hidden)),
  body:has(.foundation-app:not(.hidden)),
  body:has(.owner-app:not(.hidden)){width:100%;height:var(--portal-viewport-height);min-height:0!important;overflow:hidden!important;overscroll-behavior:none;}
#root,
  #root > .flex.h-screen{width:100%;height:var(--portal-viewport-height)!important;min-height:0!important;max-height:var(--portal-viewport-height)!important;overflow:hidden!important;}
#root > .flex.h-screen > .flex-1.flex.flex-col,
  #root > .flex.h-screen > .flex-1.flex.flex-col.overflow-hidden{height:100%!important;min-height:0!important;overflow:hidden!important;}
#root > .flex.h-screen > .flex-1.flex.flex-col.overflow-hidden:has(.portal-student-header-actions){overflow:hidden!important;contain:none!important;}
#root > .flex.h-screen > .flex-1.flex.flex-col > header{flex:0 0 auto!important;}
#root > .flex.h-screen > .flex-1.flex.flex-col > main{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--portal-mobile-dock-height) + 28px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(var(--portal-mobile-dock-height) + 28px + env(safe-area-inset-bottom))!important;}
.student-mobile-nav,
  #root nav.fixed.bottom-0{bottom:0!important;min-height:calc(var(--portal-mobile-dock-height) + env(safe-area-inset-bottom))!important;padding-bottom:max(8px, env(safe-area-inset-bottom))!important;z-index:500!important;transform:translateZ(0);}
.app:not(.hidden),
  .foundation-app:not(.hidden),
  .owner-app:not(.hidden){height:var(--portal-viewport-height)!important;min-height:0!important;max-height:var(--portal-viewport-height)!important;overflow:hidden!important;}
.app:not(.hidden) > main,
  .foundation-app:not(.hidden) > main,
  .owner-app:not(.hidden) > main{height:100%!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;}
.app:not(.hidden) > main > header,
  .app:not(.hidden) > main > .subnav,
  .foundation-app:not(.hidden) > main > header,
  .owner-app:not(.hidden) > main > header{flex:0 0 auto!important;}
.app:not(.hidden) > main > section,
  .foundation-app:not(.hidden) > main > .content,
  .owner-app:not(.hidden) > main > .content{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--portal-mobile-dock-height) + 28px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(var(--portal-mobile-dock-height) + 28px + env(safe-area-inset-bottom))!important;}
.app:not(.hidden) > aside,
  .foundation-app:not(.hidden) > aside,
  .owner-app:not(.hidden) > aside{bottom:0!important;padding-bottom:max(6px, env(safe-area-inset-bottom))!important;z-index:500!important;}
.portal-student-notification-layer,
  body > .portal-student-notification-panel,
  .psn-panel,
  .owner-notification-panel{top:calc(env(safe-area-inset-top) + 66px)!important;right:8px!important;left:8px!important;width:auto!important;max-height:calc(var(--portal-viewport-height) - 150px - env(safe-area-inset-top))!important;overflow:auto!important;}
.portal-teacher-today-schedule-grid,
  .portal-teacher-schedule-grid{grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:8px!important;}
.portal-teacher-schedule-card{padding:10px!important;border-radius:15px;gap:7px!important;}
.portal-teacher-today-schedule-grid > .portal-teacher-schedule-card{display:grid!important;grid-template-columns:auto minmax(0, 1fr)!important;align-items:center!important;}
.portal-teacher-today-schedule-grid > .portal-teacher-schedule-card > :last-child{grid-column:1 / -1;justify-self:start;margin-top:2px;}
.portal-teacher-schedule-grid > .portal-teacher-schedule-card{display:grid!important;grid-template-columns:minmax(0, 1fr) auto!important;align-items:start!important;}
.portal-teacher-schedule-grid > .portal-teacher-schedule-card > :first-child{gap:7px!important;min-width:0!important;}
.portal-teacher-schedule-grid > .portal-teacher-schedule-card > :first-child > :first-child{padding:5px 7px!important;flex:0 0 auto!important;}
.portal-teacher-schedule-grid > .portal-teacher-schedule-card > :last-child{flex-direction:column;gap:4px!important;}}
@media (max-width: 359px){.portal-teacher-today-schedule-grid,
  .portal-teacher-schedule-grid{grid-template-columns:1fr!important;}}
body > #student-auth-toast,
body > .portal-student-notification-panel,
.portal-student-notification-layer{position:fixed!important;z-index:2147483647!important;isolation:isolate!important;}
body > #student-auth-toast{top:calc(14px + env(safe-area-inset-top))!important;pointer-events:none!important;}
body > .portal-student-notification-panel:not([hidden]){display:block!important;pointer-events:auto!important;}
@media (max-width: 640px){body > #student-auth-toast{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;}}
.portal-nav-desktop{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--theme-primary-border,#d9e8f5) transparent;}
.portal-nav-desktop > :not([hidden]) ~ :not([hidden]){margin-top:0!important;}
.portal-nav-desktop > button{width:100%!important;min-height:48px;padding:12px 16px!important;border-radius:var(--portal-nav-radius);gap:12px!important;color:var(--portal-nav-text);font-size:14px;font-weight:700;line-height:20px;text-align:left;}
.portal-nav-desktop > button:hover{background:var(--theme-primary-soft,#f0f8ff);color:var(--portal-nav-accent-dark);}
.portal-nav-desktop > button.bg-blue-500,
.portal-nav-desktop > button.bg-blue-50{background:var(--portal-nav-accent);color:var(--theme-surface,#fff);box-shadow:0 9px 22px rgba(7, 142, 232, 0.22);}
@media (min-width: 851px){.app{grid-template-columns:var(--portal-nav-sidebar-width) minmax(0, 1fr)!important;}
.app > aside{width:auto;padding:24px 16px!important;}
.app #groupNav{display:flex!important;flex-direction:column;gap:8px!important;min-width:0!important;}
.app #groupNav button{border-radius:var(--portal-nav-radius);gap:12px!important;font-size:13px;line-height:20px;}}
@media (min-width: 761px){.owner-app,
  .foundation-app{grid-template-columns:var(--portal-nav-sidebar-width) minmax(0, 1fr)!important;}
.owner-app > .sidebar,
  .foundation-app > aside{width:auto;padding:24px 16px!important;background:var(--theme-surface,#fff);border-right:1px solid var(--portal-nav-line)!important;}
.owner-app #ownerNav,
  .foundation-app #foundationNav{display:flex!important;flex-direction:column;gap:8px!important;min-width:0!important;}
.owner-app #ownerNav .nav-button,
  .foundation-app #foundationNav button{width:100%!important;min-height:48px!important;padding:12px 14px!important;border-radius:var(--portal-nav-radius);gap:12px!important;color:var(--portal-nav-text);font-size:13px;font-weight:800;line-height:20px;}
.owner-app #ownerNav .nav-button:hover,
  .foundation-app #foundationNav button:hover{background:var(--theme-primary-soft,#f0f8ff);color:var(--portal-nav-accent-dark);}
.owner-app #ownerNav .nav-button.active,
  .foundation-app #foundationNav button.active{background:var(--portal-nav-accent);color:var(--theme-surface,#fff);box-shadow:0 9px 22px rgba(7, 142, 232, 0.22);}}
.app .subnav{display:flex!important;align-items:center;gap:8px!important;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;}
.app .subnav::-webkit-scrollbar{display:none;}
.app .subnav button{flex:0 0 auto;min-height:40px;padding:10px 14px!important;border:0;border-radius:13px;white-space:nowrap;color:var(--portal-nav-text);font-size:12px;font-weight:800;}
.app .subnav button.active{background:var(--portal-nav-accent);color:var(--theme-surface,#fff);box-shadow:0 7px 18px rgba(7, 142, 232, 0.2);}
@media (max-width: 767px){.portal-nav-mobile{position:fixed!important;z-index:500!important;left:0!important;right:0!important;bottom:0!important;display:grid!important;grid-template-columns:repeat(6, minmax(0, 1fr))!important;width:100%!important;height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;min-height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important;gap:0!important;border:0;border-top:1px solid var(--portal-nav-line)!important;border-radius:0;background:var(--tone-c290c331,rgba(255, 255, 255, 0.98));box-shadow:0 -10px 35px var(--tone-8056952d,rgba(15, 23, 42, 0.07));transform:translateZ(0);}
.portal-nav-mobile > button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px!important;width:100%!important;min-width:0;height:58px!important;min-height:58px!important;margin:0!important;padding:6px 2px!important;overflow:hidden;border:0;border-radius:var(--radius-lg,14px);background:transparent;box-shadow:none;color:var(--tone-9ca3af,#9ca3af);line-height:1;}
.portal-nav-mobile > button svg{flex:0 0 auto;width:22px;height:22px;}
.portal-nav-mobile > button span{display:block;width:100%;overflow:hidden;color:inherit;font-size:10px;font-weight:700;line-height:12px;text-align:center;text-overflow:ellipsis;white-space:nowrap;}
.portal-nav-mobile > button.text-blue-500,
  .portal-nav-mobile > button.bg-blue-500,
  .portal-nav-mobile > button.bg-blue-50{background:transparent;color:var(--portal-nav-accent);box-shadow:none;}
.app .subnav{padding:9px 12px 4px!important;}}
@media (max-width: 850px){body > #groupNav.admin-mobile-dock{position:fixed!important;z-index:500!important;inset:auto 0 0 0!important;display:grid!important;grid-template-columns:repeat(5, minmax(0, 1fr))!important;align-items:center!important;width:100%!important;height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;min-height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;margin:0!important;padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important;gap:0!important;overflow:hidden!important;border:0;border-top:1px solid var(--portal-nav-line)!important;border-radius:0;background:var(--tone-c290c331,rgba(255, 255, 255, 0.98));box-shadow:0 -10px 35px var(--tone-8056952d,rgba(15, 23, 42, 0.07));contain:layout paint!important;}
#groupNav.admin-mobile-dock button{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:100%!important;height:58px!important;min-height:58px!important;margin:0!important;padding:5px 2px!important;overflow:hidden!important;border-radius:var(--radius-lg,14px);background:transparent;color:var(--tone-9ca3af,#9ca3af);box-shadow:none;}
#groupNav.admin-mobile-dock .admin-nav-icon{display:grid!important;flex:0 0 22px!important;place-items:center!important;width:22px!important;height:22px!important;margin:0!important;padding:0!important;border-radius:0;background:transparent;color:inherit;box-shadow:none;}
#groupNav.admin-mobile-dock .admin-nav-icon svg{width:22px!important;height:22px!important;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
#groupNav.admin-mobile-dock .admin-nav-label{display:block!important;width:100%;overflow:hidden;font-size:9px;font-weight:700;line-height:12px;text-align:center;text-overflow:ellipsis;white-space:nowrap;}
#groupNav.admin-mobile-dock button.active,
  #groupNav.admin-mobile-dock button.active .admin-nav-icon{background:transparent;color:var(--portal-nav-accent);box-shadow:none;}}
@media (max-width: 760px){body:has(.owner-app:not(.hidden)){padding-bottom:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom));}
.owner-app > .sidebar{position:fixed!important;z-index:500!important;inset:auto 0 0 0!important;display:block!important;width:100%!important;height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;padding:6px 0 calc(6px + env(safe-area-inset-bottom))!important;overflow:hidden!important;border:0;border-top:1px solid var(--portal-nav-line)!important;border-radius:0;background:var(--tone-c290c331,rgba(255, 255, 255, 0.98));box-shadow:0 -10px 35px var(--tone-8056952d,rgba(15, 23, 42, 0.07));}
.owner-app #ownerNav{display:flex!important;align-items:center;gap:0!important;width:100%;height:58px;min-width:0!important;padding:0 4px;overflow-x:auto;overflow-y:hidden;scroll-padding-inline:4px;scroll-snap-type:x proximity;scrollbar-width:none;}
.owner-app #ownerNav::-webkit-scrollbar{display:none;}
.owner-app #ownerNav .nav-button{display:flex!important;flex:0 0 64px!important;flex-direction:column;align-items:center;justify-content:center;gap:3px!important;width:64px!important;height:58px!important;min-height:58px!important;margin:0!important;padding:5px 2px!important;border-radius:var(--radius-lg,14px);background:transparent;color:var(--tone-9ca3af,#9ca3af);box-shadow:none;scroll-snap-align:center;}
.owner-app #ownerNav .nav-button svg{width:22px!important;height:22px!important;}
.owner-app #ownerNav .nav-button span{display:block;width:100%;overflow:hidden;font-size:9px;font-weight:700;line-height:12px;text-align:center;text-overflow:ellipsis;white-space:nowrap;}
.owner-app #ownerNav .nav-button.active{background:transparent;color:var(--portal-nav-accent);box-shadow:none;}}
@media (max-width: 760px){body:has(.foundation-app:not(.hidden)){padding-bottom:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom));}
.foundation-app > aside{position:fixed!important;z-index:500!important;inset:auto 0 0 0!important;display:block!important;width:100%!important;height:calc(var(--portal-nav-mobile-height) + env(safe-area-inset-bottom))!important;padding:6px 0 calc(6px + env(safe-area-inset-bottom))!important;overflow:hidden!important;border:0;border-top:1px solid var(--portal-nav-line)!important;border-radius:0;background:var(--tone-c290c331,rgba(255, 255, 255, 0.98));box-shadow:0 -10px 35px var(--tone-8056952d,rgba(15, 23, 42, 0.07));}
.foundation-app #foundationNav{display:flex!important;align-items:center!important;gap:0!important;width:100%!important;height:58px!important;min-width:0!important;padding:0 4px;overflow-x:auto!important;overflow-y:hidden!important;scroll-padding-inline:4px;scroll-snap-type:x proximity;scrollbar-width:none;}
.foundation-app #foundationNav::-webkit-scrollbar{display:none;}
.foundation-app #foundationNav button{position:relative;display:flex!important;flex:0 0 64px!important;flex-direction:column;align-items:center;justify-content:center;gap:3px!important;width:64px!important;max-width:none!important;height:58px!important;min-height:58px!important;margin:0!important;padding:5px 2px!important;overflow:hidden!important;border-radius:var(--radius-lg,14px);background:transparent;color:var(--tone-9ca3af,#9ca3af);box-shadow:none;scroll-snap-align:center;}
.foundation-app #foundationNav button .nav-icon{width:22px!important;height:22px!important;transform:none!important;}
.foundation-app #foundationNav button span{position:static!important;display:block!important;width:100%!important;height:auto!important;overflow:hidden!important;clip:auto!important;color:inherit;font-size:9px;font-weight:700;line-height:12px;text-align:center;text-overflow:ellipsis;white-space:nowrap;}
.foundation-app #foundationNav button.active{background:transparent;color:var(--portal-nav-accent);box-shadow:none;}
.foundation-app #foundationNav button.active::after{display:none!important;}
.foundation-app #foundationNav button.active .nav-icon{color:inherit;transform:none!important;}}
html,
body,
button,
input,
select,
textarea,
option,
table{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}

body{color:var(--portal-v143-ink);}
body :is(h1, h2, h3, h4, h5, h6){font-weight:600;letter-spacing:-0.012em;}
body :is(button, label, th, b, strong){font-weight:600;}
body :is(.font-black, .font-extrabold){font-weight:700;}
body .font-bold{font-weight:600;}
body :is(p, small, .muted, .text-gray-400, .text-gray-500, .text-slate-500){line-height:1.55;}
@media (min-width: 768px){.portal-nav-desktop > button{position:relative;min-height:52px!important;padding:11px 14px 11px 16px!important;overflow:visible;border:0;border-radius:var(--radius-xl,16px);background:transparent;color:var(--portal-v143-muted);box-shadow:none;font-size:14px;font-weight:600;}
.portal-nav-desktop > button:hover{background:var(--theme-primary-soft,#f0f8ff);color:var(--portal-v143-blue-dark);}
.portal-nav-desktop > button::before{content:"";position:absolute;top:11px;bottom:11px;left:0;width:4px;border-radius:var(--radius-pill,999px);background:transparent;}
.portal-nav-desktop > button.bg-blue-500,
  .portal-nav-desktop > button.bg-blue-50,
  body.portal-accreditation-open
    .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"],
  .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"].portal-accreditation-nav-active{background:var(--portal-v143-mint);color:var(--portal-v143-blue-dark);box-shadow:0 7px 18px var(--tone-246357d5,rgba(0, 111, 209, 0.08));}
.portal-nav-desktop > button.bg-blue-500::before,
  .portal-nav-desktop > button.bg-blue-50::before,
  body.portal-accreditation-open
    .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"]::before,
  .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"].portal-accreditation-nav-active::before{background:var(--portal-v143-green);}
body.portal-accreditation-open
    .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"]
    > svg,
  .portal-accreditation-menu-desktop-v133
    > button[data-portal-accreditation-nav="1"].portal-accreditation-nav-active
    > svg{background:var(--theme-primary-border,#d9e8f5);color:var(--portal-v143-blue-dark);}}
@media (min-width: 851px){.app #groupNav button{position:relative;min-height:52px!important;padding:11px 14px 11px 16px!important;border-radius:var(--radius-xl,16px);background:transparent;color:var(--portal-v143-muted);box-shadow:none;font-weight:600;}
.app #groupNav button:hover{background:var(--theme-primary-soft,#f0f8ff);color:var(--portal-v143-blue-dark);}
.app #groupNav button::before{content:"";position:absolute;top:11px;bottom:11px;left:0;width:4px;border-radius:var(--radius-pill,999px);background:transparent;}
.app #groupNav button.active{background:var(--portal-v143-mint);color:var(--portal-v143-blue-dark);box-shadow:0 7px 18px var(--tone-246357d5,rgba(0, 111, 209, 0.08));}
.app #groupNav button.active::before{background:var(--portal-v143-green);}
.app #groupNav button .admin-nav-icon{background:var(--theme-surface-muted,#edf5fc);color:var(--portal-v143-icon);}
.app #groupNav button.active .admin-nav-icon{background:var(--theme-primary-border,#d9e8f5);color:var(--portal-v143-blue-dark);}}
@media (min-width: 761px){:is(
      .owner-app #ownerNav .nav-button,
      .foundation-app #foundationNav button
    ){position:relative;min-height:52px!important;padding:11px 14px 11px 16px!important;border:0;border-radius:var(--radius-xl,16px);background:transparent;color:var(--portal-v143-muted);box-shadow:none;font-weight:600;}
:is(
      .owner-app #ownerNav .nav-button,
      .foundation-app #foundationNav button
    ):hover{background:var(--theme-primary-soft,#f0f8ff);color:var(--portal-v143-blue-dark);}
:is(
      .owner-app #ownerNav .nav-button,
      .foundation-app #foundationNav button
    )::before{content:"";position:absolute;top:11px;bottom:11px;left:0;display:block!important;width:4px;border-radius:var(--radius-pill,999px);background:transparent;}
:is(
      .owner-app #ownerNav .nav-button.active,
      .foundation-app #foundationNav button.active
    ){background:var(--portal-v143-mint);color:var(--portal-v143-blue-dark);box-shadow:0 7px 18px var(--tone-246357d5,rgba(0, 111, 209, 0.08));}
:is(
      .owner-app #ownerNav .nav-button.active,
      .foundation-app #foundationNav button.active
    )::before{background:var(--portal-v143-green);}
.owner-app #ownerNav .nav-button > svg,
  .foundation-app #foundationNav button .nav-icon{flex:0 0 29px;width:29px!important;height:29px!important;padding:5px!important;border-radius:9px;background:var(--theme-surface-muted,#edf5fc);color:var(--portal-v143-icon);}
.owner-app #ownerNav .nav-button.active > svg,
  .foundation-app #foundationNav button.active .nav-icon{background:var(--theme-primary-border,#d9e8f5);color:var(--portal-v143-blue-dark);}}
:is(
    .app #subNav.subnav,
    .foundation-section-tabs,
    .school-tabs,
    #root .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1,
    #root
      .grid.grid-cols-2.gap-1\.5.bg-white.border.border-gray-100.rounded-2xl.p-1\.5.shadow-sm,
    #root .mb-4.bg-gray-100.rounded-2xl.p-1\.5.flex.gap-1
  ){gap:10px!important;border-color:transparent;background:transparent;box-shadow:none;}
:is(
    .app #subNav.subnav,
    .foundation-section-tabs,
    .school-tabs,
    #root .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1,
    #root
      .grid.grid-cols-2.gap-1\.5.bg-white.border.border-gray-100.rounded-2xl.p-1\.5.shadow-sm,
    #root .mb-4.bg-gray-100.rounded-2xl.p-1\.5.flex.gap-1
  )
  > button,
.portal-guru-category-tabs-v133 > button{position:relative;min-height:48px!important;min-width:128px;padding:10px 16px!important;border:2px solid var(--theme-primary,#078ee8);border-left-width:8px!important;border-radius:17px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-deep,#075da9);box-shadow:0 5px 15px var(--tone-246357d5,rgba(0, 111, 209, 0.08));font-size:12px;font-weight:600;line-height:1.25;text-align:center;white-space:nowrap;}
:is(
    .app #subNav.subnav,
    .foundation-section-tabs,
    .school-tabs,
    #root .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1,
    #root
      .grid.grid-cols-2.gap-1\.5.bg-white.border.border-gray-100.rounded-2xl.p-1\.5.shadow-sm,
    #root .mb-4.bg-gray-100.rounded-2xl.p-1\.5.flex.gap-1
  )
  > button:hover,
.portal-guru-category-tabs-v133 > button:hover{border-color:var(--theme-primary-mid,#1264ad);background:var(--portal-v143-mint-hover);color:var(--portal-v143-blue-dark);transform:translateY(-1px);}
:is(
    .app #subNav.subnav,
    .foundation-section-tabs,
    .school-tabs,
    #root .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1,
    #root
      .grid.grid-cols-2.gap-1\.5.bg-white.border.border-gray-100.rounded-2xl.p-1\.5.shadow-sm,
    #root .mb-4.bg-gray-100.rounded-2xl.p-1\.5.flex.gap-1
  )
  > button:is(.active, .bg-blue-500, [aria-selected="true"]),
.portal-guru-category-tabs-v133
  > button:is(
    .active,
    .bg-blue-500,
    .portal-accreditation-nav-active,
    [aria-selected="true"]
  ){border-color:var(--theme-primary-mid,#1264ad);border-left-color:var(--theme-primary-strong,#173f70);background:var(--portal-v143-green);color:var(--theme-surface,#fff);box-shadow:0 8px 20px rgba(0, 111, 209, 0.2);transform:none;}
@media (min-width: 768px){.attendance-daily-scroll{padding-bottom:4rem!important;}
.attendance-daily-scroll > .attendance-mobile-actions{bottom:0!important;grid-template-columns:minmax(0, 1.15fr) minmax(240px, 0.82fr)!important;gap:10px!important;margin-top:22px!important;padding:9px!important;border:1px solid rgba(226, 232, 240, 0.96);border-radius:17px;background:var(--tone-431952a6,rgba(255, 255, 255, 0.96));box-shadow:0 10px 26px rgba(15, 23, 42, 0.1);}
.attendance-daily-scroll > .attendance-mobile-actions > button{min-height:54px;border-radius:13px;font-size:15px;font-weight:600;}}
@media (max-width: 767px){:is(
      .foundation-section-tabs,
      .school-tabs,
      #root .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1,
      #root
        .grid.grid-cols-2.gap-1\.5.bg-white.border.border-gray-100.rounded-2xl.p-1\.5.shadow-sm,
      #root .mb-4.bg-gray-100.rounded-2xl.p-1\.5.flex.gap-1
    )
    > button,
  .portal-guru-category-tabs-v133 > button{min-height:45px!important;min-width:118px;padding:9px 13px!important;border-left-width:7px!important;border-radius:15px;font-size:11px;}}
html.ios-ui-v152{--ios-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--ios-ink:#17231f;--ios-muted:#6d7c77;--ios-green:var(--theme-primary,#078ee8);--ios-line:rgba(35, 60, 74, 0.1);--ios-glass:var(--tone-97b9b30d,rgba(255, 255, 255, 0.76));--ios-glass-strong:var(--tone-8fafb20d,rgba(255, 255, 255, 0.9));--ios-shadow:0 18px 48px rgba(22, 48, 62, 0.105);--ios-shadow-hover:0 27px 66px rgba(22, 48, 62, 0.16);color:var(--ios-ink);background:#f3f8f6;color-scheme:light;font-family:var(--ios-font);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
html.ios-ui-v152 *,
html.ios-ui-v152 *::before,
html.ios-ui-v152 *::after{box-sizing:border-box;}
html.ios-ui-v152 body{min-height:100dvh;color:var(--ios-ink);background:radial-gradient(circle at 4% -8%, rgba(93, 170, 214, 0.16), transparent 31rem),
    radial-gradient(circle at 102% 96%, rgba(142, 175, 255, 0.12), transparent 34rem),
    linear-gradient(155deg, var(--tone-f8fbfa,#f8fbfa) 0%, #f2f7f5 52%, var(--tone-f7faff,#f7faff) 100%);font-family:var(--ios-font);-webkit-tap-highlight-color:transparent;}
html.ios-ui-v152 body::before{position:fixed;z-index:-1;inset:0;background:radial-gradient(circle at 22% 16%, var(--tone-9203fef5,rgba(255, 255, 255, 0.95)), transparent 22%),
    radial-gradient(circle at 84% 40%, rgba(123, 188, 224, 0.08), transparent 26%);content:"";pointer-events:none;}
html.ios-ui-v152 :is(h1, h2, h3, h4, h5, h6){font-family:var(--ios-font);font-weight:800;letter-spacing:-0.035em;text-wrap:balance;}
html.ios-ui-v152 :is(p, li, td, label, small){letter-spacing:-0.008em;}
html.ios-ui-v152 :is(.app, .owner-app, .foundation-app) main,
html.ios-ui-v152 :is(.workspace, .content){min-width:0;}
html.ios-ui-v152 :is(aside, .sidebar){border-color:rgba(35, 60, 74, 0.09);box-shadow:14px 0 46px rgba(26, 51, 65, 0.055),
    inset -1px 0 rgba(255, 255, 255, 0.48);}
html.ios-ui-v152 :is(.app, .owner-app, .foundation-app) main > header,
html.ios-ui-v152 :is(.topbar, .legal-nav){border-color:rgba(35, 60, 74, 0.085);background-color:rgba(255, 255, 255, 0.74);box-shadow:0 10px 34px rgba(30, 55, 69, 0.055);}
html.ios-ui-v152 :is(
  .card,
  .panel,
  .stat,
  .summary-card,
  .record-card,
  .school-card,
  .login-card,
  .auth-card,
  .legal-card,
  .legal-hero,
  .modal-card,
  .profile-menu,
  [class*="preview-card"],
  [class*="profile-card"]
){border-color:var(--ios-line);background-color:var(--ios-glass);box-shadow:var(--ios-shadow),
    inset 0 1px 0 var(--tone-ac114555,rgba(255, 255, 255, 0.88));}
html.ios-ui-v152 :is(
  .card,
  .stat,
  .summary-card,
  .record-card,
  .school-card,
  [class*="preview-card"],
  [class*="profile-card"]
){transform:translateZ(0);}
html.ios-ui-v152 :is(.panel-head, .panel-body, .record-meta div, .school-meta div){border-color:rgba(35, 60, 74, 0.075);}
html.ios-ui-v152 :is(.record-meta div, .school-meta div){background-color:rgba(243, 248, 246, 0.78);box-shadow:inset 0 1px rgba(255, 255, 255, 0.8);}
html.ios-ui-v152 :is(
  input:not([type="button"]):not([type="submit"]):not([type="reset"]),
  select,
  textarea
){min-height:44px;border-color:rgba(49, 73, 86, 0.14);border-radius:var(--radius-lg,14px);color:var(--ios-ink);background-color:rgba(248, 251, 250, 0.88);box-shadow:inset 0 1px 2px rgba(20, 39, 49, 0.035),
    0 1px 0 var(--tone-8fafb20d,rgba(255, 255, 255, 0.9));font-family:var(--ios-font);}
html.ios-ui-v152 :is(
  input:not([type="button"]):not([type="submit"]):not([type="reset"]),
  select,
  textarea
):focus{border-color:color-mix(in srgb, var(--ios-green) 65%, white);outline:none;background-color:rgba(255, 255, 255, 0.97);box-shadow:0 0 0 4px rgba(7, 94, 140, 0.11),
    0 9px 24px rgba(7, 94, 140, 0.07);}
html.ios-ui-v152 :is(input, textarea)::placeholder{color:#9aa8a3;}
html.ios-ui-v152 :is(.table-wrap, [class*="table-wrap"]){border:1px solid rgba(35, 60, 74, 0.075);border-radius:17px;background:rgba(255, 255, 255, 0.5);box-shadow:inset 0 1px rgba(255, 255, 255, 0.85);overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:rgba(7, 94, 140, 0.28) transparent;}
html.ios-ui-v152 table{border-spacing:0;}
html.ios-ui-v152 th{border-color:rgba(35, 60, 74, 0.07);background-color:rgba(242, 248, 246, 0.86);font-weight:800;letter-spacing:0.055em;}
html.ios-ui-v152 td{border-color:rgba(35, 60, 74, 0.065);}
html.ios-ui-v152 tbody tr:hover{background-color:rgba(7, 94, 140, 0.035);}

html.ios-ui-v152 :is(.badge, [class*="badge"], [class*="status"]):not(button):not(a){border:1px solid rgba(255, 255, 255, 0.62);box-shadow:0 5px 14px rgba(26, 51, 65, 0.055),
    inset 0 1px rgba(255, 255, 255, 0.75);}
html.ios-ui-v152 :is(.login, .owner-login, .auth-screen){isolation:isolate;overflow:hidden;background:radial-gradient(circle at 16% 8%, rgba(103, 177, 218, 0.22), transparent 31rem),
    radial-gradient(circle at 91% 89%, rgba(130, 163, 255, 0.15), transparent 30rem),
    linear-gradient(145deg, var(--theme-surface-elevated,#fbfdff), #edf5ff);}
html.ios-ui-v152 :is(.login-card, .auth-card){position:relative;border:1px solid var(--tone-2e595cc8,rgba(255, 255, 255, 0.84));background-color:var(--tone-923a33a9,rgba(255, 255, 255, 0.82));box-shadow:0 34px 90px rgba(19, 44, 58, 0.14),
    inset 0 1px var(--tone-431952a6,rgba(255, 255, 255, 0.96));}
html.ios-ui-v152 .legal-nav{position:sticky;z-index:30;top:14px;width:min(1120px, calc(100% - 28px));margin:14px auto 0;border:1px solid rgba(255, 255, 255, 0.72);border-radius:var(--radius-3xl,20px);box-shadow:0 18px 50px rgba(24, 48, 62, 0.09),
    inset 0 1px var(--tone-8fafb20d,rgba(255, 255, 255, 0.9));}
html.ios-ui-v152 .legal-wrap{width:min(980px, calc(100% - 28px));}
html.ios-ui-v152 .legal-hero{position:relative;overflow:hidden;border:1px solid var(--tone-923a33a9,rgba(255, 255, 255, 0.82));background:radial-gradient(circle at 94% 4%, rgba(115, 184, 223, 0.24), transparent 30%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.93), rgba(242, 250, 247, 0.82));}
html.ios-ui-v152 .legal-hero::after{position:absolute;top:-62px;right:-48px;width:180px;height:180px;border:1px solid rgba(7, 94, 140, 0.12);border-radius:50%;content:"";box-shadow:0 0 0 26px rgba(7, 94, 140, 0.035),
    0 0 0 54px rgba(7, 94, 140, 0.02);pointer-events:none;}
html.ios-ui-v152 .legal-meta span{border:1px solid rgba(7, 94, 140, 0.09);border-radius:var(--radius-pill,999px);background:rgba(234, 248, 243, 0.78);box-shadow:inset 0 1px var(--tone-2e595cc8,rgba(255, 255, 255, 0.84));}
html.ios-ui-v152 .legal-card{border:1px solid var(--tone-2e595cc8,rgba(255, 255, 255, 0.84));background-color:var(--tone-2e595cc8,rgba(255, 255, 255, 0.84));}
html.ios-ui-v152 .legal-card h2{position:relative;padding-left:16px;}
html.ios-ui-v152 .legal-card h2::before{position:absolute;top:0.18em;bottom:0.18em;left:0;width:4px;border-radius:99px;background:linear-gradient(#117cb7, #06537c);box-shadow:0 4px 12px rgba(0, 52, 125, 0.20);content:"";}
html.ios-ui-v152 .notice{border:1px solid rgba(7, 94, 140, 0.09);background-color:rgba(231, 248, 242, 0.72);box-shadow:inset 0 1px var(--tone-09fa70dc,rgba(255, 255, 255, 0.78));}
html.ios-ui-v152 *{scrollbar-width:thin;scrollbar-color:rgba(7, 94, 140, 0.3) transparent;}
html.ios-ui-v152 *::-webkit-scrollbar{width:8px;height:8px;}
html.ios-ui-v152 *::-webkit-scrollbar-track{background:transparent;}
html.ios-ui-v152 *::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:var(--radius-pill,999px);background:rgba(7, 94, 140, 0.28);background-clip:padding-box;}
@media (hover: hover) and (pointer: fine){html.ios-ui-v152 :is(
    .card,
    .stat,
    .summary-card,
    .record-card,
    .school-card,
    [class*="preview-card"],
    [class*="profile-card"]
  ):hover{border-color:rgba(7, 94, 140, 0.15);background-color:var(--tone-8fafb20d,rgba(255, 255, 255, 0.9));box-shadow:var(--ios-shadow-hover),
      inset 0 1px 0 var(--tone-9203fef5,rgba(255, 255, 255, 0.95));transform:translateY(-3px) perspective(900px) rotateX(0.35deg);}}
@media (max-width: 760px){html.ios-ui-v152 :is(aside, .sidebar){box-shadow:0 -14px 38px rgba(22, 48, 62, 0.1),
      inset 0 1px rgba(255, 255, 255, 0.28);}
html.ios-ui-v152 :is(.app, .owner-app, .foundation-app) main > header,
  html.ios-ui-v152 .topbar{padding-right:max(14px, env(safe-area-inset-right));padding-left:max(14px, env(safe-area-inset-left));}
html.ios-ui-v152 :is(.content, section){max-width:100%;}
html.ios-ui-v152 :is(.card, .panel, .summary-card, .record-card, .school-card){border-radius:19px;}

html.ios-ui-v152 .legal-nav{top:8px;width:calc(100% - 16px);margin-top:8px;border-radius:17px;}
html.ios-ui-v152 .legal-wrap{width:calc(100% - 20px);}
html.ios-ui-v152 .legal-hero,
  html.ios-ui-v152 .legal-card{border-radius:var(--radius-5xl,24px);}
html.ios-ui-v152 :is(
    input:not([type="button"]):not([type="submit"]):not([type="reset"]),
    select,
    textarea
  ){min-height:46px;font-size:max(16px, 1em);}}
html.ios-ui-v152 #root{min-height:100dvh;background:radial-gradient(circle at 8% 6%, rgba(92, 176, 223, 0.1), transparent 30rem),
    radial-gradient(circle at 94% 36%, rgba(112, 151, 255, 0.08), transparent 31rem);}
html.ios-ui-v152 #root header{border-color:rgba(28, 54, 68, 0.08);background-color:var(--tone-09fa70dc,rgba(255, 255, 255, 0.78));box-shadow:0 12px 36px rgba(29, 53, 66, 0.06),
    inset 0 -1px var(--tone-09fa70dc,rgba(255, 255, 255, 0.78));}
html.ios-ui-v152 #root :is(div, section, article)[class*="bg-white"][class*="rounded-"][class*="border"]:not([data-eduvia-login-surface]){border-color:rgba(37, 62, 76, 0.09);background-color:rgba(255, 255, 255, 0.79);box-shadow:0 16px 42px rgba(24, 46, 58, 0.075),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);}
html.ios-ui-v152
  #root
  :is(div, section, article)[class*="shadow-2xl"][class*="rounded-"]:not(.toast):not(
    [class*="-toast"]
  ):not([id$="Toast"]):not(#toast):not(
    [class*="fixed"][class*="top-"][class*="left-1/2"]
  ){}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient{isolation:isolate;min-height:172px;border:1px solid rgba(255, 255, 255, 0.28);background:radial-gradient(circle at 88% 6%, rgba(150, 217, 255, 0.35), transparent 27%),
    radial-gradient(circle at 66% 115%, rgba(53, 160, 220, 0.28), transparent 38%),
    linear-gradient(132deg, #062b3d 0%, #08537a 43%, #0c6fa7 72%, #3792c7 100%);box-shadow:0 28px 70px rgba(4, 61, 92, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.26),
    inset 0 -1px 0 rgba(2, 50, 75, 0.32);transform:translateZ(0);}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient::before{position:absolute;z-index:-1;inset:0;background:linear-gradient(112deg, rgba(255, 255, 255, 0.12), transparent 35%),
    repeating-linear-gradient(
      118deg,
      transparent 0,
      transparent 28px,
      var(--tone-7ef9eb4a,rgba(255, 255, 255, 0.025)) 29px,
      var(--tone-7ef9eb4a,rgba(255, 255, 255, 0.025)) 30px
    );content:"";pointer-events:none;}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient::after{position:absolute;z-index:-1;top:-96px;right:-58px;width:270px;height:270px;border:1px solid rgba(255, 255, 255, 0.13);border-radius:50%;box-shadow:0 0 0 34px rgba(255, 255, 255, 0.035),
    0 0 0 70px rgba(255, 255, 255, 0.018);content:"";pointer-events:none;}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient h2{color:var(--theme-surface,#fff);font-weight:800;letter-spacing:-0.045em;text-shadow:0 3px 20px rgba(0, 31, 48, 0.23);}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient p{color:rgba(239, 255, 250, 0.9);text-shadow:0 2px 13px rgba(0, 35, 54, 0.18);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .portal-school-report-gradient
  > div
  > div[class*="bg-white"]{position:relative;min-width:190px;overflow:hidden;border:1px solid rgba(0, 111, 209, 0.18);color:#07405f;background:#f9fffc;box-shadow:0 14px 30px rgba(0, 53, 81, 0.14),
    0 3px 8px rgba(0, 42, 65, 0.06),
    inset 0 1px 0 var(--theme-surface,#fff);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .portal-school-report-gradient
  > div
  > div[class*="bg-white"]::after{position:absolute;top:14px;right:15px;width:8px;height:8px;border:2px solid var(--theme-primary-border,#d9e8f5);border-radius:50%;background:var(--theme-primary,#078ee8);box-shadow:0 0 0 5px rgba(7, 142, 232, 0.1);content:"";}
html.ios-ui-v152
  .portal-guru-dashboard
  > .portal-school-report-gradient
  > div
  > div[class*="bg-white"]:hover{border-color:rgba(0, 111, 209, 0.28);box-shadow:0 19px 38px rgba(0, 53, 81, 0.18),
    0 5px 12px rgba(0, 42, 65, 0.07),
    inset 0 1px 0 var(--theme-surface,#fff);transform:translateY(-3px);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .portal-school-report-gradient
  > div
  > div[class*="bg-white"]
  :is(p, span, strong, time){color:#07405f;opacity:1!important;text-shadow:none;}
html.ios-ui-v152
  .portal-guru-dashboard
  > .portal-school-report-gradient
  > div
  > div[class*="bg-white"]
  :is(p, span):not([class*="text-2xl"]):not([class*="text-3xl"]){color:#577c91;}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div{--metric-accent:#3b82f6;position:relative;isolation:isolate;min-height:178px;overflow:hidden;border:1px solid var(--tone-ac114555,rgba(255, 255, 255, 0.88));background:radial-gradient(circle at 95% 0%, color-mix(in srgb, var(--metric-accent) 12%, transparent), transparent 43%),
    var(--tone-923a33a9,rgba(255, 255, 255, 0.82));box-shadow:0 18px 44px color-mix(in srgb, var(--metric-accent) 9%, transparent),
    0 5px 14px rgba(20, 42, 54, 0.045),
    inset 0 1px 0 var(--tone-431952a6,rgba(255, 255, 255, 0.96));transform:translateZ(0);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div:nth-child(2){--metric-accent:#a855f7;}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div:nth-child(3){--metric-accent:var(--theme-primary,#078ee8);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div:nth-child(4){--metric-accent:var(--theme-warning,#f59e0b);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div::after{position:absolute;z-index:-1;top:-42px;right:-36px;width:112px;height:112px;border:1px solid color-mix(in srgb, var(--metric-accent) 14%, transparent);border-radius:50%;box-shadow:0 0 0 19px color-mix(in srgb, var(--metric-accent) 3%, transparent);content:"";pointer-events:none;}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div
  > div:first-child{border:1px solid var(--tone-ac114555,rgba(255, 255, 255, 0.88));box-shadow:0 13px 28px color-mix(in srgb, var(--metric-accent) 14%, transparent),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);transform:perspective(320px) rotateX(5deg) rotateY(-7deg);}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div
  p.text-3xl{color:#15231f;font-weight:800;letter-spacing:-0.05em;}
html.ios-ui-v152
  .portal-guru-dashboard
  > .grid.grid-cols-2[class~="md:grid-cols-4"]
  > div
  p.text-xs{color:var(--tone-66766f);font-weight:700;}
html.ios-ui-v152 .portal-teacher-today-schedule{border-color:rgba(33, 59, 73, 0.09);background-color:rgba(255, 255, 255, 0.8);box-shadow:0 20px 52px rgba(21, 45, 58, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.93);}
html.ios-ui-v152 .portal-teacher-schedule-card{border-color:rgba(35, 60, 74, 0.07);}
@media (hover: hover) and (pointer: fine){html.ios-ui-v152 #root :is(div, section, article)[class*="bg-white"][class*="rounded-"][class*="border"]:hover{border-color:rgba(7, 94, 140, 0.16);}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient:hover{box-shadow:0 34px 82px rgba(4, 61, 92, 0.31),
      inset 0 1px 0 rgba(255, 255, 255, 0.3);transform:translateY(-2px);}
html.ios-ui-v152
    .portal-guru-dashboard
    > .grid.grid-cols-2[class~="md:grid-cols-4"]
    > div:hover{border-color:color-mix(in srgb, var(--metric-accent) 22%, white);box-shadow:0 25px 58px color-mix(in srgb, var(--metric-accent) 15%, transparent),
      inset 0 1px 0 var(--theme-surface,#fff);transform:translateY(-5px) perspective(900px) rotateX(0.7deg);}
html.ios-ui-v152
    .portal-guru-dashboard
    > .grid.grid-cols-2[class~="md:grid-cols-4"]
    > div:hover
    > div:first-child{transform:translateY(-2px) perspective(320px) rotateX(1deg) rotateY(7deg) scale(1.04);}
html.ios-ui-v152 .portal-teacher-schedule-card:hover{background-color:rgba(235, 249, 244, 0.72);transform:translateX(3px);}}
@media (max-width: 700px){html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient{min-height:0;padding:23px!important;border-radius:27px;}
html.ios-ui-v152 .portal-guru-dashboard > .portal-school-report-gradient > .flex{align-items:stretch;flex-direction:column;gap:18px;}
html.ios-ui-v152
    .portal-guru-dashboard
    > .portal-school-report-gradient
    > div
    > div[class*="bg-white"]{width:min(100%, 220px);min-width:0;align-self:flex-start;text-align:left;}
html.ios-ui-v152
    .portal-guru-dashboard
    > .grid.grid-cols-2[class~="md:grid-cols-4"]
    > div{min-height:156px;padding:17px!important;border-radius:var(--radius-4xl,22px);}}
@media (max-width: 700px){html.ios-ui-v152
    #root
    :is(
      .portal-form-modal,
      div[class*="fixed"][class*="inset-0"][class*="backdrop-blur"][class*="overflow-y-auto"]
    ){z-index:2147483500!important;width:100%!important;height:100dvh!important;min-height:100dvh!important;padding:max(12px, env(safe-area-inset-top))
      max(12px, env(safe-area-inset-right))
      max(18px, env(safe-area-inset-bottom))
      max(12px, env(safe-area-inset-left))!important;align-items:flex-start!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
html.ios-ui-v152
    #root
    :is(
      .portal-form-modal,
      div[class*="fixed"][class*="inset-0"][class*="backdrop-blur"][class*="overflow-y-auto"]
    )
    > :is(.portal-form-dialog, div[class*="max-w-"][class*="rounded-"]){width:100%!important;max-height:calc(
      100dvh - max(24px, env(safe-area-inset-top)) -
        max(30px, env(safe-area-inset-bottom))
    )!important;margin-block:auto!important;flex:0 0 auto;overflow-x:hidden!important;overflow-y:auto!important;scroll-padding-bottom:calc(28px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
html.ios-ui-v152
    #root
    :is(
      .portal-form-modal,
      div[class*="fixed"][class*="inset-0"][class*="backdrop-blur"][class*="overflow-y-auto"]
    )
    > :is(.portal-form-dialog, div[class*="max-w-"][class*="rounded-"])
    > :last-child{margin-bottom:max(10px, env(safe-area-inset-bottom));}}
html[data-portal-brand] img.portal-role-logo{display:block;border:0;background:transparent;}
html[data-portal-brand] img.portal-role-logo--wordmark,
html[data-portal-brand] img.portal-role-logo--icon{width:min(245px, 100%)!important;height:auto!important;min-width:0!important;max-width:100%!important;max-height:64px!important;aspect-ratio:auto!important;border-radius:0;object-fit:contain!important;object-position:left center!important;box-shadow:none;flex:0 1 auto!important;}
html[data-portal-brand] .portal-role-brand-copy--hidden{display:none!important;}
html[data-portal-brand="siswa"] img.portal-role-login-logo--full{display:block!important;width:min(340px, 82vw)!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:78px!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;border:0;border-radius:0;box-shadow:none;overflow:visible!important;}


html[data-portal-brand] .auth-brand > div,
html[data-portal-brand] .login-head > div,
html[data-portal-brand] :is(.brand, .unified-brand) > b,
html[data-portal-brand] :is(.brand, .unified-brand) > div > b{display:none!important;}
html[data-portal-brand]
  :is(
    .portal-role-brand-lockup--explicit,
    .portal-role-brand-lockup--brand,
    .portal-role-brand-lockup--auth,
    .portal-role-brand-lockup--react,
    .portal-role-brand-lockup--generic,
    .portal-role-brand-lockup--standalone
  ){min-width:0;}
html[data-portal-brand] .portal-role-brand-lockup--auth{width:100%;justify-content:center;}
html[data-portal-brand]
  .portal-role-brand-lockup--auth
  > img.portal-role-logo--wordmark{width:min(350px, 86vw)!important;max-height:78px!important;margin-inline:auto!important;object-position:center!important;}
html[data-portal-brand] .portal-role-brand-lockup--auth > div{display:none!important;}
html[data-portal-brand]
  [data-portal-brand-lockup="auth"]
  > img.portal-role-logo--wordmark{width:min(350px, 86vw)!important;max-height:78px!important;margin-inline:auto!important;object-position:center!important;}
html[data-portal-brand]
  :is(.brand, .unified-brand).portal-role-brand-lockup--brand,
html[data-portal-brand]
  :is(.brand, .unified-brand)[data-portal-brand-lockup="brand"]{width:100%;min-width:0;justify-content:flex-start;}
html[data-portal-brand]
  .unified-brand:is(
    .portal-role-brand-lockup--brand,
    [data-portal-brand-lockup="brand"]
  ){display:flex!important;flex-direction:column;align-items:flex-start;gap:5px!important;}
html[data-portal-brand]
  .unified-brand:is(
    .portal-role-brand-lockup--brand,
    [data-portal-brand-lockup="brand"]
  )
  > small{padding-inline-start:2px;}
html[data-portal-brand] .portal-role-brand-lockup--brand > b,
html[data-portal-brand] .portal-role-brand-lockup--brand > div > b,
html[data-portal-brand] [data-portal-brand-lockup="brand"] > b,
html[data-portal-brand] [data-portal-brand-lockup="brand"] > div > b{display:none!important;}
html[data-portal-brand]
  .portal-role-brand-lockup--brand
  > img.portal-role-logo--wordmark{width:min(235px, 100%)!important;max-height:54px!important;flex:0 1 235px!important;}
html[data-portal-brand]
  [data-portal-brand-lockup="brand"]
  > img.portal-role-logo--wordmark{width:min(235px, 100%)!important;max-height:54px!important;flex:0 1 235px!important;}
html[data-portal-brand] .portal-role-brand-lockup--react > h1,
html[data-portal-brand] .portal-role-brand-lockup--react > h2,
html[data-portal-brand] .portal-role-brand-lockup--generic > h1,
html[data-portal-brand] .portal-role-brand-lockup--generic > h2,
html[data-portal-brand] .portal-role-brand-lockup--generic > b,
html[data-portal-brand] .portal-role-brand-lockup--generic > strong{display:none!important;}
html[data-portal-brand]
  :is(
    .portal-role-brand-lockup--react,
    .portal-role-brand-lockup--generic,
    .portal-role-brand-lockup--standalone
  )
  > img.portal-role-logo--wordmark{width:min(245px, 70vw)!important;max-height:58px!important;margin-block:0!important;}
html[data-portal-brand]
  header.portal-role-brand-lockup--react
  > img.portal-role-logo--wordmark{width:min(250px, 72vw)!important;max-height:62px!important;margin-inline:auto!important;}

@media (max-width: 767px){html[data-portal-brand="siswa"] img.portal-role-login-logo--full{width:min(320px, 84vw)!important;}
html[data-portal-brand]
    :is(
      .portal-role-brand-lockup--react,
      .portal-role-brand-lockup--generic,
      .portal-role-brand-lockup--standalone
    )
    > img.portal-role-logo--wordmark{width:min(220px, 60vw)!important;max-height:52px!important;}
html[data-portal-brand]
    header.portal-role-brand-lockup--react
    > img.portal-role-logo--wordmark{width:min(220px, 60vw)!important;max-height:52px!important;}
}
@media (max-width: 900px), (pointer: coarse){input:not([type="hidden"]),
  textarea,
  select,
  [contenteditable="true"]{scroll-margin-top:calc(var(--portal-form-viewport-top) + 22px);scroll-margin-bottom:calc(
      var(--portal-form-keyboard-inset) + env(safe-area-inset-bottom) + 34px
    );}
.portal-mobile-auth-surface{box-sizing:border-box;min-height:var(--portal-form-visible-height)!important;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;}
.portal-mobile-page-scroll{min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;}
html.portal-mobile-form-active .portal-mobile-page-scroll,
  html.portal-mobile-keyboard-open .portal-mobile-page-scroll{scroll-padding-top:max(20px, env(safe-area-inset-top));scroll-padding-bottom:max(76px, calc(env(safe-area-inset-bottom) + 48px));}
html.portal-mobile-keyboard-open .portal-mobile-auth-surface{height:var(--portal-form-visible-height)!important;min-height:0!important;padding-top:max(12px, env(safe-area-inset-top))!important;padding-bottom:max(72px, calc(env(safe-area-inset-bottom) + 44px))!important;align-items:flex-start!important;scroll-padding-top:max(18px, env(safe-area-inset-top));scroll-padding-bottom:max(36px, env(safe-area-inset-bottom));}
html.portal-mobile-keyboard-open .portal-mobile-form-overlay{box-sizing:border-box!important;inset:auto 0 auto 0!important;top:var(--portal-form-viewport-top)!important;width:100%!important;height:var(--portal-form-visible-height)!important;min-height:0!important;max-height:var(--portal-form-visible-height)!important;padding-top:max(10px, env(safe-area-inset-top))!important;padding-right:max(10px, env(safe-area-inset-right))!important;padding-bottom:max(34px, env(safe-area-inset-bottom))!important;padding-left:max(10px, env(safe-area-inset-left))!important;align-items:flex-start!important;justify-content:center!important;overflow-x:hidden!important;overflow-y:auto!important;scroll-padding-top:max(16px, env(safe-area-inset-top));scroll-padding-bottom:max(38px, env(safe-area-inset-bottom));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;}
html.portal-mobile-keyboard-open .portal-mobile-form-dialog{box-sizing:border-box!important;width:min(100%, var(--portal-form-dialog-width, 680px))!important;height:auto!important;min-height:0!important;max-height:calc(var(--portal-form-visible-height) - 20px)!important;margin-top:0!important;margin-bottom:10px!important;flex:0 0 auto!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scroll-padding-top:max(16px, env(safe-area-inset-top));scroll-padding-bottom:max(72px, calc(env(safe-area-inset-bottom) + 44px));scroll-margin-top:max(10px, env(safe-area-inset-top));scroll-margin-bottom:max(34px, env(safe-area-inset-bottom));}
html.portal-mobile-keyboard-open .portal-mobile-form-dialog > form,
  html.portal-mobile-keyboard-open form.portal-mobile-form{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding-bottom:max(52px, calc(env(safe-area-inset-bottom) + 30px));}
html.portal-mobile-keyboard-open .portal-mobile-scroll-region{scroll-padding-top:max(16px, env(safe-area-inset-top));scroll-padding-bottom:max(38px, env(safe-area-inset-bottom));overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;}}
@media (max-width: 900px) and (max-height: 680px), (max-width: 900px) and (pointer: coarse){html.portal-mobile-keyboard-open .portal-mobile-form-dialog{margin-top:0!important;}}
html[data-portal-brand="siswa"]
  #root
  .portal-school-report-gradient{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(255, 255, 255, 0.3);color:var(--theme-surface,#fff);background:radial-gradient(
      circle at 88% 8%,
      rgba(110, 185, 231, 0.34),
      transparent 30%
    ),
    radial-gradient(
      circle at 12% 112%,
      rgba(45, 155, 212, 0.2),
      transparent 38%
    ),
    linear-gradient(135deg, var(--theme-primary-darkest,#0a2342) 0%, #085075 48%, #0c6fa7 100%);box-shadow:0 22px 48px rgba(4, 61, 92, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.24);}
html[data-portal-brand="siswa"]
  #root
  .portal-school-report-gradient::after{position:absolute;z-index:-1;top:-82px;right:-58px;width:220px;height:220px;border:1px solid rgba(255, 255, 255, 0.12);border-radius:50%;box-shadow:0 0 0 30px var(--tone-7ef9eb4a,rgba(255, 255, 255, 0.025)),
    0 0 0 62px rgba(255, 255, 255, 0.014);content:"";pointer-events:none;}
html[data-portal-brand="siswa"]
  #root
  .portal-school-report-gradient
  > :is(h2, p){color:var(--theme-surface,#fff);opacity:1!important;text-shadow:0 2px 14px rgba(0, 32, 50, 0.2);}
html[data-portal-brand="siswa"]
  #root
  .portal-school-report-gradient
  > p:first-child{color:rgba(236, 253, 245, 0.92);}
html[data-portal-brand="siswa"]
  #root
  .portal-school-report-gradient
  > p:last-child{border:1px solid rgba(255, 255, 255, 0.18);background:rgba(255, 255, 255, 0.14);}

body,
button,
input,
select,
textarea{font-family:var(--readable-font);font-kerning:normal;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body{font-size:16px;line-height:1.6;letter-spacing:0;}
h1,
h2,
h3,
h4,
h5,
h6{line-height:1.24;letter-spacing:-0.032em;text-wrap:balance;}
p{font-size:16px;line-height:1.72;letter-spacing:0;text-wrap:pretty;}
small{font-size:13px;line-height:1.5;letter-spacing:0;}
button,
[role="button"],
input,
select,
textarea{font-size:15px;line-height:1.4;letter-spacing:0;}
label{font-size:14px;line-height:1.5;letter-spacing:0;}
table th{font-size:13px;line-height:1.45;letter-spacing:0.025em;}
table td{font-size:15px;line-height:1.55;letter-spacing:0;}
nav a,
nav button,
.nav-button,
.unified-group button,
.unified-bottom button{font-size:14px;line-height:1.35;letter-spacing:0;}
.eyebrow,
[class*="eyebrow"],
[class*="kicker"],
.unified-group em{font-size:13px;line-height:1.4;}
.badge,
[class*="-badge"],
[class*="-status"]{font-size:12px;line-height:1.4;letter-spacing:0.02em;}
.muted,
[class*="-subtitle"],
[class*="-description"],
[class*="-caption"],
[class*="-helper"],
[class*="-hint"],
[class*="-note"]{font-size:14px;line-height:1.6;letter-spacing:0;}
.panel-head p,
.page-head p,
.record-card p,
.modal-card p,
.login-card p{font-size:16px;line-height:1.68;}
.notice,
.toast,
.form-error,
.empty{font-size:15px;line-height:1.65;}
.actions button,
.table-actions button,
.modal-close,
.close{font-size:14px;}
.landing-readable-v168 .nav-menu a{font-size:15px;}
.landing-readable-v168 .nav-cta,
.landing-readable-v168 .button{font-size:15px;}
.landing-readable-v168 .hero-copy > p,
.landing-readable-v168 .hero > p{font-size:18px;line-height:1.75;}
.landing-readable-v168 .section-heading > p,
.landing-readable-v168 .section-head p,
.landing-readable-v168 .partner-copy p,
.landing-readable-v168 .partners-pane > p,
.landing-readable-v168 .contact-pane > p,
.landing-readable-v168 .contact-card p{font-size:16px;line-height:1.72;}
.landing-readable-v168 .feature-card p,
.landing-readable-v168 .portal-card-copy p,
.landing-readable-v168 .portal-compact-copy p,
.landing-readable-v168 .network-copy p{font-size:15px;line-height:1.65;}
.landing-readable-v168 .feature-card small,
.landing-readable-v168 .portal-card-copy > small,
.landing-readable-v168 .portal-compact-copy small,
.landing-readable-v168 .modal-portal-copy small,
.landing-readable-v168 .partner-logos figcaption{font-size:12px;line-height:1.5;}
.landing-readable-v168 .portal-status,
.landing-readable-v168 .portal-compact-status,
.landing-readable-v168 .network-dot{font-size:11px;}
.landing-readable-v168 .portal-enter,
.landing-readable-v168 .network-button{font-size:13px;}
.landing-readable-v168 .portal-modal-heading p{font-size:15px;}
.landing-readable-v168 .modal-portal-copy em,
.landing-readable-v168 .portal-modal-footer > span,
.landing-readable-v168 .portal-modal-footer > a{font-size:13px;line-height:1.5;}
.landing-readable-v168 .contact-buttons small,
.landing-readable-v168 .contact-action small{font-size:12px;}
.landing-readable-v168 .contact-buttons strong,
.landing-readable-v168 .contact-action b{font-size:14px;}
.landing-readable-v168 .site-footer p,
.landing-readable-v168 .footer-links a{font-size:14px;line-height:1.65;}
.landing-readable-v168 .window-brand,
.landing-readable-v168 .window-actions b,
.landing-readable-v168 .dash-heading small,
.landing-readable-v168 .chart-title small,
.landing-readable-v168 .ring-card small,
.landing-readable-v168 .metric-row small,
.landing-readable-v168 .ring-card > span,
.landing-readable-v168 .mini-panel small,
.landing-readable-v168 .insight-note small,
.landing-readable-v168 .mini-ui-top b,
.landing-readable-v168 .mini-ui-row > span small{font-size:11px;}
.landing-readable-v168 .dash-rail span,
.landing-readable-v168 .metric-row i,
.landing-readable-v168 .metric-row strong,
.landing-readable-v168 .chart-title strong,
.landing-readable-v168 .chart-title em,
.landing-readable-v168 .mini-panel strong,
.landing-readable-v168 .mini-panel em,
.landing-readable-v168 .trust-row span,
.landing-readable-v168 .trust-row i,
.landing-readable-v168 .insight-top span,
.landing-readable-v168 .insight-top b,
.landing-readable-v168 .insight-stat span,
.landing-readable-v168 .insight-note > span,
.landing-readable-v168 .insight-note b,
.landing-readable-v168 .avatar-stack i,
.landing-readable-v168 .avatar-stack span,
.landing-readable-v168 .growth-line span,
.landing-readable-v168 .mini-ui-top,
.landing-readable-v168 .mini-ui-row > i,
.landing-readable-v168 .mini-ui-row > span b,
.landing-readable-v168 .mini-ui-row > em{font-size:12px;line-height:1.4;}
.landing-readable-v168 .download-copy > p{font-size:16px;line-height:1.72;}
.landing-readable-v168 .download-platform small,
.landing-readable-v168 .download-main-button small,
.landing-readable-v168 .download-choice small,
.landing-readable-v168 .download-modal-status small{font-size:12px;}
.landing-readable-v168 .download-platform strong,
.landing-readable-v168 .download-main-button strong,
.landing-readable-v168 .download-modal-status strong{font-size:14px;}
.landing-readable-v168 .download-note,
.landing-readable-v168 .download-choice em{font-size:13px;line-height:1.5;}
.landing-readable-v168 .device-float{font-size:12px;}
.landing-readable-v168 .download-modal-heading p{font-size:15px;}
.topbar small,
.owner-profile small,
.summary-card small,
.panel-head p,
.record-meta small,
.record-meta b,
.data-table td small,
.document-name small,
.admin small,
header small{font-size:13px;line-height:1.5;}
.record-card h3,
.panel-head h3,
.toolbar h3{font-size:18px;line-height:1.35;}
.record-meta b,
.owner-profile b{font-size:14px;}
.text-xs{font-size:13px;line-height:1.5;}
.text-sm{font-size:15px;line-height:1.55;}
@media (max-width: 760px){body{font-size:16px;}
p{font-size:15px;line-height:1.68;}
nav a,
  nav button,
  .nav-button,
  .unified-bottom button{font-size:12px;line-height:1.25;}
.landing-readable-v168 .hero-copy > p,
  .landing-readable-v168 .hero > p{font-size:16px;line-height:1.68;}
.landing-readable-v168 .section-heading > p,
  .landing-readable-v168 .section-head p,
  .landing-readable-v168 .feature-card p,
  .landing-readable-v168 .portal-card-copy p,
  .landing-readable-v168 .portal-compact-copy p,
  .landing-readable-v168 .network-copy p,
  .landing-readable-v168 .download-copy > p{font-size:15px;line-height:1.65;}
table th{font-size:12px;}
table td{font-size:14px;}}
:is(
  .portal-nav-desktop > button,
  .app #groupNav > button,
  .owner-app #ownerNav > button,
  .foundation-app #foundationNav > button
){font-family:var(--portal-menu-font);font-size:var(--portal-menu-size-desktop);font-weight:600;font-style:normal;font-kerning:normal;font-optical-sizing:auto;font-synthesis:none;font-feature-settings:"kern" 1,
    "liga" 1,
    "calt" 1;letter-spacing:0.006em;line-height:1.32;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
:is(
  .portal-nav-desktop > button,
  .app #groupNav > button,
  .owner-app #ownerNav > button,
  .foundation-app #foundationNav > button
).active,
.portal-nav-desktop > button:is(
  .bg-blue-500,
  .bg-blue-50,
  .text-blue-500
){font-weight:700;}
:is(
  .portal-nav-desktop > button,
  .app #groupNav > button,
  .owner-app #ownerNav > button,
  .foundation-app #foundationNav > button
) span{font:inherit;letter-spacing:inherit;}
:is(
  .app .subnav > button,
  .portal-guru-category-tabs-v133 > button,
  [role="tab"]
){font-family:var(--portal-menu-font);font-size:var(--portal-menu-size-secondary);font-weight:600;font-kerning:normal;font-optical-sizing:auto;letter-spacing:0.004em;line-height:1.3;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
:is(
  .app .subnav > button,
  .portal-guru-category-tabs-v133 > button,
  [role="tab"]
).active,
:is(
  .app .subnav > button,
  .portal-guru-category-tabs-v133 > button,
  [role="tab"]
)[aria-selected="true"]{font-weight:700;}
.portal-card :is(h2, .enter){font-family:var(--portal-menu-font);font-kerning:normal;font-optical-sizing:auto;letter-spacing:-0.012em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.portal-card h2{font-weight:700;}
.portal-card .enter{font-size:13px;font-weight:600;}
@media (max-width: 850px){:is(
    .portal-nav-mobile > button,
    body > #groupNav.admin-mobile-dock > button,
    .owner-app #ownerNav > button,
    .foundation-app #foundationNav > button
  ){font-family:var(--portal-menu-font);font-size:var(--portal-menu-size-mobile);font-weight:600;font-kerning:normal;font-optical-sizing:auto;font-synthesis:none;letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
:is(
    .portal-nav-mobile > button,
    body > #groupNav.admin-mobile-dock > button,
    .owner-app #ownerNav > button,
    .foundation-app #foundationNav > button
  ) span{font-family:var(--portal-menu-font);font-size:var(--portal-menu-size-mobile);font-weight:600;line-height:1.18;letter-spacing:0;}
:is(
    .portal-nav-mobile > button,
    body > #groupNav.admin-mobile-dock > button,
    .owner-app #ownerNav > button,
    .foundation-app #foundationNav > button
  ).active span{font-weight:700;}
:is(
    .app .subnav > button,
    .portal-guru-category-tabs-v133 > button,
    [role="tab"]
  ){font-size:12px;}}
html[data-portal-brand="siswa"] .portal-student-information-tabs-v195{box-sizing:border-box;grid-template-columns:repeat(3, minmax(0, 1fr));width:min(100%, 760px);}
html[data-portal-brand="siswa"] .portal-student-information-tab-v195{box-sizing:border-box;display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;line-height:1.25;text-align:center;}
html[data-portal-brand="siswa"]
  .portal-student-information-tab-v195
  > span{display:inline-flex;align-items:center;justify-content:center;gap:7px;}
html[data-portal-brand="siswa"] .portal-student-information-count-v195{box-sizing:border-box;display:inline-grid;place-items:center;flex:0 0 auto;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-pill,999px);color:var(--theme-primary-strong,#173f70);background:var(--theme-primary-border,#d9e8f5);font-size:10px;font-weight:900;line-height:1;}
html[data-portal-brand="siswa"]
  .portal-student-information-tab-v195.bg-blue-500
  .portal-student-information-count-v195{color:var(--theme-primary-strong,#173f70);background:var(--theme-surface,#fff);}
@media (max-width: 480px){html[data-portal-brand="siswa"] .portal-student-information-tabs-v195{display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;width:100%;max-width:100vw;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;}
html[data-portal-brand="siswa"]
    .portal-student-information-tabs-v195::-webkit-scrollbar{display:none;}
html[data-portal-brand="siswa"] .portal-student-information-tab-v195{flex:0 0 auto!important;width:auto!important;min-width:136px!important;min-height:46px;padding-inline:12px!important;scroll-snap-align:start;white-space:nowrap;}}
html[data-portal-brand="siswa"] #root .portal-student-sidebar-brand-v196{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-width:0!important;min-height:88px!important;padding:20px 18px!important;overflow:hidden!important;}
html[data-portal-brand="siswa"] #root
  .portal-student-sidebar-brand-v196
  > img.portal-student-sidebar-logo-v196{box-sizing:border-box!important;display:block!important;flex:0 1 auto!important;width:100%!important;min-width:0!important;max-width:205px!important;height:auto!important;min-height:0!important;max-height:46px!important;margin:0!important;padding:0!important;border:0;border-radius:0;background:transparent;object-fit:contain!important;object-position:left center!important;box-shadow:none;}
@media (max-width: 767px){html[data-portal-brand="siswa"] #root .portal-student-sidebar-brand-v196{display:none!important;}}
.eskul-student-v197{--es:var(--theme-primary,#078ee8);--es-dark:var(--tone-084f76,#084f76);--es-ink:var(--tone-172033,#172033);--es-muted:#718aa0;display:grid;gap:18px;color:var(--es-ink);max-width:1180px;margin:0 auto;}
.eskul-student-v197 *{box-sizing:border-box;}
.eskul-student-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;overflow:hidden;position:relative;background:linear-gradient(135deg,#084769,var(--theme-primary,#078ee8));color:var(--theme-surface,#fff);border-radius:28px;padding:26px 28px;box-shadow:0 18px 45px rgba(8, 79, 118,.18);}
.eskul-student-hero:after{content:"";position:absolute;right:-45px;top:-70px;width:220px;height:220px;border:42px solid rgba(255,255,255,.09);border-radius:50%;}
.eskul-student-hero>div{position:relative;z-index:1;}
.eskul-student-hero span{font-size:10px;font-weight:900;letter-spacing:.12em;opacity:.86;}
.eskul-student-hero h1{font-size:26px;line-height:1.25;font-weight:900;margin:6px 0;}
.eskul-student-hero p{font-size:12px;opacity:.86;}
.eskul-student-hero-count{display:flex;align-items:center;gap:10px;min-width:150px;}
.eskul-student-hero-count b{font-size:42px;}
.eskul-student-hero-count small{font-size:11px;line-height:1.3;}
.eskul-student-controls{display:flex;align-items:center;gap:12px;}
.eskul-student-controls>input{flex:1;min-width:180px;height:46px;border:1px solid var(--tone-dfe9e5);border-radius:15px;padding:0 15px;background:var(--theme-surface,#fff);outline:none;}
.eskul-student-controls>input:focus{border-color:#5ba8d5;box-shadow:0 0 0 3px rgba(7, 142, 232, .1);}
.eskul-student-filter-scroll{display:flex;gap:7px;overflow-x:auto;}
.eskul-student-filter-scroll button{border:1px solid #e1e9e6;background:var(--theme-surface,#fff);color:#68756f;border-radius:var(--radius-pill,999px);padding:10px 14px;font-size:11px;font-weight:800;white-space:nowrap;}
.eskul-student-filter-scroll button.active{background:#e7faf3;color:var(--es-dark);border-color:#b8d9ec;}
.eskul-student-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;}
.eskul-student-card{background:var(--theme-surface,#fff);border:1px solid #e5ebe8;border-radius:var(--radius-5xl,24px);padding:20px;box-shadow:0 12px 34px rgba(15, 48, 67,.06);display:grid;gap:16px;}
.eskul-student-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;}
.eskul-student-card-icon{width:45px;height:45px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#e1fbf1,#c8f3e4);color:var(--es-dark);}
.eskul-student-card-icon svg{width:22px;}
.eskul-student-category{font-size:9px;color:var(--es-dark);font-weight:900;text-transform:uppercase;letter-spacing:.06em;}
.eskul-student-card h2{font-size:18px;line-height:1.3;font-weight:900;margin:3px 0;}
.eskul-student-card-top p{font-size:11px;line-height:1.55;color:var(--es-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.eskul-student-status{font-size:9px;font-weight:900;padding:6px 8px;border-radius:var(--radius-pill,999px);white-space:nowrap;background:#fff3c9;color:#875c00;}
.eskul-student-status.approved{background:var(--theme-primary-border,#d9e8f5);color:var(--tone-084f76,#084f76);}
.eskul-student-status.waitlisted{background:#e8efff;color:#3657a7;}
.eskul-student-status.rejected,.eskul-student-status.cancelled{background:var(--tone-fee8e7);color:var(--tone-a92920);}
.eskul-student-facts{display:grid;gap:8px;}
.eskul-student-facts>div{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;background:var(--tone-f7faff,#f7faff);border-radius:13px;padding:10px;}
.eskul-student-facts svg{width:17px;color:var(--es-dark);margin:2px auto;}
.eskul-student-facts span{display:grid;gap:2px;}
.eskul-student-facts small,.eskul-student-detail-grid small{font-size:8px;font-weight:900;color:#7f92b3;text-transform:uppercase;letter-spacing:.05em;}
.eskul-student-facts b,.eskul-student-facts li{font-size:11px;}
.eskul-student-facts li{display:flex;gap:6px;justify-content:space-between;}
.eskul-student-facts li span,.eskul-student-facts em{color:#6e7a75;font-style:normal;font-size:10px;}
.eskul-student-detail-grid{display:grid;grid-template-columns:1.3fr 1.3fr .7fr;gap:8px;}
.eskul-student-detail-grid>span{display:grid;gap:3px;}
.eskul-student-detail-grid b{font-size:10px;line-height:1.4;}
.eskul-student-requirements,.eskul-student-review-note{border-left:3px solid #9bc8e3;background:#f3fbf8;border-radius:0 var(--radius-md-lg,12px) var(--radius-md-lg,12px) 0;padding:10px 12px;}
.eskul-student-review-note{border-color:#77a4ee;background:#f3f6fe;}
.eskul-student-requirements b,.eskul-student-review-note b{font-size:10px;}
.eskul-student-requirements p,.eskul-student-review-note p{font-size:10px;line-height:1.5;color:#5f6d66;margin-top:2px;white-space:pre-wrap;}
.eskul-student-button{border:0;border-radius:var(--radius-lg,14px);min-height:44px;padding:10px 14px;background:linear-gradient(135deg,#0f74ae,var(--tone-084f76,#084f76));color:var(--theme-surface,#fff);font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:7px;}
.eskul-student-button svg{width:17px;}
.eskul-student-button.secondary{background:#eaf8f3;color:var(--es-dark);}
.eskul-student-button.danger{background:var(--tone-fff0ef,#fff0ef);color:#ae2c23;}
.eskul-student-button.approved{background:var(--theme-primary-border,#d9e8f5);color:var(--es-dark);opacity:1;}
.eskul-student-button.disabled{background:#eef2f0;color:#8a9690;}
.eskul-student-actions{display:grid;grid-template-columns:1fr auto;gap:8px;}
.eskul-student-empty{grid-column:1/-1;background:var(--theme-surface,#fff);border:1px dashed #cbd9d4;border-radius:var(--radius-5xl,24px);padding:40px 20px;text-align:center;display:grid;place-items:center;gap:7px;}
.eskul-student-empty>div{width:52px;height:52px;border-radius:17px;background:#e7faf3;color:var(--es-dark);display:grid;place-items:center;}
.eskul-student-empty svg{width:25px;}
.eskul-student-empty h2{font-size:17px;font-weight:900;}
.eskul-student-empty p{font-size:11px;color:var(--es-muted);max-width:480px;}
.eskul-student-empty button{margin-top:7px;background:var(--es-dark);color:var(--theme-surface,#fff);border:0;border-radius:var(--radius-md-lg,12px);padding:10px 15px;font-size:11px;font-weight:900;}
.eskul-student-loading{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#6f7b76;font-size:11px;}
.eskul-student-loading span{width:32px;height:32px;border:3px solid #d8eee6;border-top-color:var(--es);border-radius:50%;}
.eskul-student-modal{position:fixed;inset:0;z-index:410;padding:18px;display:flex;align-items:center;justify-content:center;}
.eskul-student-modal-card{width:min(620px,100%);max-height:calc(100dvh - 36px);overflow:auto;padding:22px;}
.eskul-student-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid #edf3f8;}
.eskul-student-modal-head span{font-size:9px;font-weight:900;color:var(--es-dark);letter-spacing:.1em;}
.eskul-student-modal-head h2{font-size:20px;font-weight:900;margin:3px 0;}
.eskul-student-modal-head p{font-size:10px;color:#71839b;}
.eskul-student-modal-head>button{width:38px;height:38px;border:0;border-radius:var(--radius-md-lg,12px);background:#eef4fb;font-size:24px;}
.eskul-student-modal form{display:grid;gap:13px;margin-top:16px;}
.eskul-student-modal label{font-size:11px;font-weight:800;color:#4b5f7c;}
.eskul-student-modal label small{color:#7f8da6;font-weight:600;}
.eskul-student-modal input,.eskul-student-modal textarea{display:block;width:100%;margin-top:6px;border:1px solid #d6e2ee;border-radius:var(--radius-md-lg,12px);padding:10px 12px;outline:none;background:var(--theme-surface-elevated,#fbfdff);font-size:12px;}
.eskul-student-modal input:focus,.eskul-student-modal textarea:focus{border-color:var(--tone-20a7ff,#20a7ff);box-shadow:0 0 0 3px rgba(7, 142, 232, .1);}
.eskul-student-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.eskul-student-consent{display:flex;gap:9px;align-items:flex-start;background:var(--theme-primary-soft,#f0f8ff);border-radius:13px;padding:11px;}
.eskul-student-consent input{width:18px!important;height:18px;margin:0!important;flex:none;}
.eskul-student-form-error{background:var(--tone-fff0ef,#fff0ef);color:var(--tone-a92920);border-radius:var(--radius-md-lg,12px);padding:10px;font-size:11px;}
.eskul-student-modal-actions{display:flex;justify-content:flex-end;gap:8px;}
.eskul-student-modal-actions button{border:0;border-radius:13px;padding:11px 16px;font-size:11px;font-weight:900;}
.eskul-student-modal-actions .primary{background:var(--es-dark);color:var(--theme-surface,#fff);}
.eskul-student-modal-actions .secondary{background:#eef4fb;color:#56635d;}
.student-eskul-modal-open{overflow:hidden;}
@media (max-width:767px){.eskul-student-v197{gap:13px;}
.eskul-student-hero{border-radius:var(--radius-4xl,22px);padding:20px;}
.eskul-student-hero h1{font-size:22px;}
.eskul-student-hero-count{min-width:105px;}
.eskul-student-hero-count b{font-size:34px;}
.eskul-student-controls{display:grid;}
.eskul-student-filter-scroll{width:100%;padding-bottom:2px;}
.eskul-student-list{grid-template-columns:1fr;}
.eskul-student-card{border-radius:var(--radius-3xl,20px);padding:16px;}
.eskul-student-card-top{grid-template-columns:auto minmax(0,1fr);}
.eskul-student-status{grid-column:2;justify-self:start;}
.eskul-student-detail-grid{grid-template-columns:1fr 1fr;}
.eskul-student-detail-grid>span:last-child{grid-column:1/-1;}
.eskul-student-modal{padding:10px;align-items:flex-end;}
.eskul-student-modal-card{max-height:calc(100dvh - 12px);padding:18px;}
.eskul-student-form-grid{grid-template-columns:1fr;}
.eskul-student-modal-actions{display:grid;grid-template-columns:1fr;}
.eskul-student-modal-actions button{width:100%;}}
.eskul-simple-student{--ess-green:var(--theme-primary-strong,#173f70);--ess-dark:var(--theme-primary-mid,#1264ad);display:grid;width:min(980px, 100%);margin:0 auto;gap:15px;color:#1d2939;}
.eskul-simple-student *{box-sizing:border-box;}
.eskul-student-simple-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 26px;border-radius:var(--radius-5xl,24px);background:linear-gradient(135deg, #084b70, var(--theme-primary,#078ee8));color:var(--theme-surface,#fff);box-shadow:0 16px 40px rgba(8, 79, 118, .17);}
.eskul-student-simple-head span{font-size:9px;font-weight:900;letter-spacing:.12em;}
.eskul-student-simple-head h1{margin:5px 0 2px;font-size:26px;font-weight:900;}
.eskul-student-simple-head p{margin:0;font-size:11px;opacity:.84;}
.eskul-student-class{display:grid;min-width:120px;gap:2px;padding:13px 17px;border:1px solid rgba(255, 255, 255, .28);border-radius:var(--radius-xl,16px);background:rgba(255, 255, 255, .12);}
.eskul-student-class small{font-size:9px;opacity:.8;}
.eskul-student-class b{font-size:16px;}
.eskul-student-simple-info,
.eskul-student-simple-success,
.eskul-student-conflict,
.eskul-student-simple-error{padding:12px 14px;border-radius:13px;font-size:11px;line-height:1.5;}
.eskul-student-simple-info{background:#eef8f4;color:#485963;}
.eskul-student-simple-success{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-mid,#1264ad);font-weight:800;}
.eskul-student-conflict{display:grid;gap:3px;margin-bottom:12px;border:1px solid #ffb4b0;background:var(--tone-fff0ef,#fff0ef);color:var(--tone-a92920);}
.eskul-student-simple-error{margin-top:12px;background:var(--tone-fff0ef,#fff0ef);color:var(--tone-a92920);font-weight:800;}
.eskul-choice-list{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:11px;}
.eskul-choice-card{position:relative;display:grid;grid-template-columns:32px minmax(0, 1fr) auto;align-items:center;gap:11px;min-height:92px;padding:15px;border:1px solid var(--tone-dfe9e5);border-radius:17px;background:var(--theme-surface,#fff);box-shadow:0 8px 24px rgba(26, 55, 72, .05);cursor:pointer;}
.eskul-choice-card > input{position:absolute;opacity:0;pointer-events:none;}
.eskul-choice-check{display:grid;width:30px;height:30px;place-items:center;border:2px solid #cfdceb;border-radius:var(--radius-md,10px);color:var(--theme-surface,#fff);font-size:16px;font-weight:900;}
.eskul-choice-card:has(input:checked){border-color:#6eaed3;background:#f1fbf7;}
.eskul-choice-card:has(input:checked) .eskul-choice-check{border-color:var(--ess-green);background:var(--ess-green);}
.eskul-choice-main{display:grid;min-width:0;gap:4px;}
.eskul-choice-main b{font-size:15px;}
.eskul-choice-main small{color:#4d5b63;font-size:10px;font-weight:750;}
.eskul-choice-main em{color:#7f92b3;font-size:9px;font-style:normal;}
.eskul-choice-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;}
.eskul-choice-meta i{display:inline-flex;padding:4px 7px;border-radius:var(--radius-pill,999px);background:#edf7f3;color:#425967;font-size:8px;font-style:normal;font-weight:850;}
.eskul-choice-meta i.full{background:var(--tone-fee8e7);color:var(--tone-a92920);}
.eskul-choice-trial{margin-top:2px;color:#765b17;font-size:8px;line-height:1.45;}
.eskul-choice-side{display:grid;justify-items:end;align-self:stretch;align-content:space-between;gap:7px;}
.eskul-choice-status{align-self:start;padding:5px 7px;border-radius:var(--radius-pill,999px);background:#fff4cc;color:#875c00;font-size:8px;font-weight:900;white-space:nowrap;}
.eskul-choice-status.approved{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-mid,#1264ad);}
.eskul-choice-status.rejected,
.eskul-choice-status.cancelled{background:var(--tone-fee8e7);color:var(--tone-a92920);}
.eskul-choice-status.waitlisted{background:#e8efff;color:#3657a7;}
.eskul-choice-availability{display:inline-flex;padding:5px 7px;border-radius:var(--radius-pill,999px);font-size:8px;font-weight:900;white-space:nowrap;}
.eskul-choice-availability.open{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-mid,#1264ad);}
.eskul-choice-availability.closed{background:var(--theme-surface-muted,#edf5fc);color:#69747e;}
.eskul-choice-card.conflict{border:2px solid #e5484d;background:#fff5f4;box-shadow:0 0 0 3px rgba(229, 72, 77, .08);}
.eskul-choice-card.unavailable{opacity:.58;cursor:not-allowed;}
.eskul-student-simple-actions{position:sticky;bottom:8px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:13px 15px;border:1px solid var(--tone-dfe9e5);border-radius:var(--radius-xl,16px);background:rgba(255, 255, 255, .96);box-shadow:0 12px 36px rgba(15, 48, 67, .12);}
.eskul-student-simple-actions span{color:var(--tone-66766f);font-size:11px;}
.eskul-student-simple-actions button{min-height:43px;border:0;border-radius:var(--radius-md-lg,12px);padding:10px 18px;background:linear-gradient(135deg, #0f74ae, var(--tone-084f76,#084f76));color:var(--theme-surface,#fff);font-size:11px;font-weight:900;}
.eskul-student-simple-actions button:disabled{opacity:.65;cursor:wait;}
.eskul-student-simple-empty{display:grid;grid-column:1 / -1;min-height:190px;place-items:center;align-content:center;gap:5px;padding:28px;border:1px dashed #cbd9d4;border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);text-align:center;}
.eskul-student-simple-empty h2{margin:0;font-size:17px;}
.eskul-student-simple-empty p{margin:0;color:#718aa0;font-size:11px;}
.eskul-student-simple-empty button{margin-top:8px;border:0;border-radius:11px;padding:10px 14px;background:var(--ess-dark);color:var(--theme-surface,#fff);font-weight:800;}
.eskul-student-simple-loading{display:grid;min-height:230px;place-items:center;align-content:center;gap:9px;color:var(--tone-66766f);font-size:11px;}
.eskul-student-simple-loading span{width:30px;height:30px;border:3px solid #d8eee6;border-top-color:var(--theme-primary,#078ee8);border-radius:50%;}
.eskul-student-simple-filter{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid var(--tone-dfe9e5);border-radius:15px;background:var(--theme-surface,#fff);}
.eskul-student-simple-filter > div{display:grid;gap:2px;}
.eskul-student-simple-filter small{color:#7b8983;font-size:9px;}
.eskul-student-simple-filter b{color:var(--ess-dark);font-size:13px;}
.eskul-student-simple-filter label{display:flex;align-items:center;gap:8px;color:#61716b;font-size:10px;font-weight:800;}
.eskul-student-simple-filter select{min-height:38px;padding:0 30px 0 10px;border:1px solid #d7e4df;border-radius:var(--radius-md,10px);background:var(--tone-f8fbfa,#f8fbfa);color:#29343b;font-weight:850;}
@media (max-width: 700px){.eskul-simple-student{gap:11px;}
.eskul-student-simple-head{padding:19px;border-radius:var(--radius-3xl,20px);}
.eskul-student-simple-head h1{font-size:22px;}
.eskul-student-class{min-width:100px;padding:10px 12px;}
.eskul-student-simple-filter{align-items:stretch;flex-direction:column;}
.eskul-student-simple-filter label{justify-content:space-between;}
.eskul-student-simple-filter select{flex:1;}
.eskul-choice-list{grid-template-columns:1fr;}
.eskul-choice-card{min-height:84px;padding:13px;}
.eskul-choice-side{max-width:112px;}
.eskul-student-simple-actions{bottom:calc(76px + env(safe-area-inset-bottom));align-items:stretch;flex-direction:column;}
.eskul-student-simple-actions button{width:100%;}}
:is(#modal,#ownerModal,#foundationModal).modal,
.eskul-student-modal,
.teacher-qr-modal,
.teacher-student-scan-modal,
.employee-id-card-modal,
.employee-attendance-v126-modal,
.employee-accreditation-v128-modal,
.portal-student-preview-v190{background-color:rgba(18,29,36,.5);}
:is(#modal,#ownerModal,#foundationModal) .modal-card,
.eskul-student-modal-card,
.teacher-qr-dialog,
.teacher-student-scan-dialog,
.employee-id-card-dialog,
.employee-attendance-v126-dialog,
.employee-accreditation-v128-dialog,
.portal-student-preview-card-v190{border:1px solid #e2e8f0;background-color:#fff;background-image:none;box-shadow:0 22px 60px rgba(15,30,37,.14);-webkit-font-smoothing:antialiased;scrollbar-width:thin;scrollbar-color:rgba(92,111,103,.24) transparent;}
:is(#modal,#ownerModal,#foundationModal) .modal-card,
.eskul-student-modal-card,
.teacher-qr-dialog,
.teacher-student-scan-dialog,
.employee-id-card-dialog,
.employee-attendance-v126-dialog,
.employee-accreditation-v128-dialog,
.portal-student-preview-card-v190{--student-modal-line:#e5eaf0;}
:is(#modal,#ownerModal,#foundationModal) .modal-card :is(.card,.panel,.box,.form-card,.form-section,.section,.table-wrap,[class$="-panel"],[class$="-section"],[class$="-table-wrap"]):not(.student-id-card):not(.employee-id-card):not([class*="-id-card"]):not([class*="preview"]):not([class*="camera"]),
.eskul-student-modal-card :is(.card,.panel,.box,.form-card,.form-section,.section,.table-wrap,[class$="-panel"],[class$="-section"],[class$="-table-wrap"]):not([class*="preview"]){border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;}
:is(#modal,#ownerModal,#foundationModal) .modal-card table thead th,
.eskul-student-modal-card table thead th{background:#fff!important;background-image:none!important;}
:is(#modal,#ownerModal,#foundationModal) .modal-card table tbody tr + tr,
.eskul-student-modal-card table tbody tr + tr{border-top:1px solid var(--student-modal-line);}

:is(#modal,#ownerModal,#foundationModal) .modal-card :is(input,select,textarea),
.eskul-student-modal-card :is(input,select,textarea),
.teacher-qr-dialog :is(input,select,textarea),
.teacher-student-scan-dialog :is(input,select,textarea),
.employee-attendance-v126-dialog :is(input,select,textarea),
.employee-accreditation-v128-dialog :is(input,select,textarea){border-color:#d9e2de;background-color:rgba(248,250,249,.96);box-shadow:inset 0 1px 1px rgba(32, 44, 52,.025);}
:is(#modal,#ownerModal,#foundationModal) .modal-card :is(input,select,textarea):focus,
.eskul-student-modal-card :is(input,select,textarea):focus,
.teacher-qr-dialog :is(input,select,textarea):focus,
.teacher-student-scan-dialog :is(input,select,textarea):focus,
.employee-attendance-v126-dialog :is(input,select,textarea):focus,
.employee-accreditation-v128-dialog :is(input,select,textarea):focus{border-color:#3688b8;background-color:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(7, 142, 232, .11);outline:0;}
:is(#modal,#ownerModal,#foundationModal) .modal-card button,
.eskul-student-modal-card button,
.teacher-qr-dialog button,
.teacher-student-scan-dialog button,
.employee-id-card-dialog button,
.employee-attendance-v126-dialog button,
.employee-accreditation-v128-dialog button,
.portal-student-preview-card-v190 button{-webkit-tap-highlight-color:transparent;}
:is(#modal,#ownerModal,#foundationModal) .modal-card button:active,
.eskul-student-modal-card button:active,
.teacher-qr-dialog button:active,
.teacher-student-scan-dialog button:active,
.employee-id-card-dialog button:active,
.employee-attendance-v126-dialog button:active,
.employee-accreditation-v128-dialog button:active,
.portal-student-preview-card-v190 button:active{transform:scale(.975);}
@media (max-width:760px){:is(#modal,#ownerModal,#foundationModal).modal{align-items:flex-end!important;padding:8px 8px 0!important;}
:is(#modal,#ownerModal,#foundationModal) .modal-card{width:100%!important;max-width:100%!important;max-height:92dvh!important;padding:20px 17px calc(18px + env(safe-area-inset-bottom))!important;border-radius:var(--radius-5xl,24px) var(--radius-5xl,24px) 0 0;box-shadow:0 -18px 58px rgba(15,30,37,.2);}
:is(#modal,#ownerModal,#foundationModal) .modal-card::before,
  .eskul-student-modal-card::before{content:"";display:block;width:38px;height:5px;margin:-9px auto 12px;border-radius:var(--radius-pill,999px);background:#d8dfdc;}
.eskul-student-modal{align-items:flex-end!important;padding:8px 8px 0!important;}
.eskul-student-modal-card{width:100%!important;max-height:92dvh!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;}}
html[data-portal-brand="siswa"] body,
html[data-portal-brand="siswa"] body *,
html[data-portal-brand="siswa"] body *::before,
html[data-portal-brand="siswa"] body *::after{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
html[data-portal-brand="siswa"] #root :is(
  [data-eduvia-unified-action="premium"],
  .portal-premium-status
){display:none!important;}
html[data-portal-brand="siswa"] #root .student-profile-menu-layer{box-sizing:border-box!important;max-width:calc(100vw - 24px)!important;padding-top:52px!important;}
html[data-portal-brand="siswa"] #root .student-profile-close-v44{box-sizing:border-box!important;position:absolute!important;top:10px!important;right:10px!important;z-index:3!important;display:grid!important;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;place-items:center!important;padding:0!important;border:1px solid #dce8f3;border-radius:11px;background:var(--tone-f7faff,#f7faff);color:#31506f;box-shadow:none;cursor:pointer!important;}
html[data-portal-brand="siswa"] #root .student-profile-close-v44 svg{width:18px!important;height:18px!important;color:currentColor;stroke:currentColor;}

html,body,button,input,select,textarea{font-family:var(--portal-fast-font);}
html,body{text-rendering:optimizeSpeed;}
button,a,[role="button"],input,select,textarea{touch-action:manipulation;}
.modal:not(.hidden){background-color:rgba(18,29,36,.58);}
:is(.card,.panel,.school-list-row,.school-card,.ab-card,.eskul-program-card,
.document-item,.announcement,.notification-item):not(.modal-card){content-visibility:auto;contain-intrinsic-size:auto 180px;}
.loading:not(.hidden),
.portal-loading-v03,
.portal-loading-v03-content{contain:layout paint style;}
.loading span,
.portal-loading-v03-spinner,
[aria-busy="true"] :is(.spinner,[class*="spinner"]){transform:translateZ(0);}
@media (max-width:850px),(prefers-reduced-motion:reduce){.card:hover,.panel:hover,[class*="-card"]:hover{transform:none!important;}}
@media print{*{content-visibility:visible!important;}}

html[data-clay-theme="v228"] body{min-height:100dvh;}


html[data-clay-theme="v228"] :is(
  .login-card,
  .auth-card,
  .selector,
  .welcome
):not(button):not([role="button"]){border:1px solid var(--tone-d0d52e06,rgba(255,255,255,.88));}


html[data-clay-theme="v228"] :is(
  .hero-panel,
  .ab-hero,
  .dashboard-hero,
  .foundation-profile-hero,
  .employee-accreditation-v128-hero,
  .eskul-student-hero,
  [class$="-dashboard-hero"]
){border:1px solid rgba(255,255,255,.9);}
html[data-clay-theme="v228"] :is(
  .hero-panel,
  .ab-hero,
  .dashboard-hero,
  .foundation-profile-hero,
  .employee-accreditation-v128-hero,
  .eskul-student-hero,
  [class$="-dashboard-hero"]
) :is(h1,h2,h3,h4,p,span,small,b):not(button *){opacity:1!important;}
html[data-clay-theme="v228"] :where(
  .card,
  .panel,
  .portal-card,
  .profile-menu,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):not(.student-study *):not(.student-id-card):not(.employee-id-card):not(.print-card):not([class*="-id-card"]){border:1px solid rgba(255,255,255,.86);transform:none!important;}
html[data-clay-theme="v228"] :where(
  .form-section,
  .foundation-form-section,
  .ab-form-section,
  .eskul-form-section,
  .table-wrap,
  .qris-wrap,
  .setting-center-direct-shell-v215,
  .report-v190-section,
  [class$="-table-wrap"]
):not(button):not([role="button"]):not(.student-study *){border:1px solid rgba(255,255,255,.78);}


html[data-clay-theme="v228"] :is(
  .modal-card,
  .ab-modal,
  .eskul-form-modal,
  .eskul-review-modal,
  .eskul-student-modal-card,
  .payroll-template-modal,
  .report-v190-sheet,
  [role="dialog"],
  [class$="-dialog"],
  [class$="-modal-card"]
):not(button):not([role="button"]),
html[data-clay-theme="v228"] :is(.modal,.dialog,[role="dialog"]):not(.hidden) > :is(form,section,article):not(button){border:1px solid #e2e8f0;}
html[data-clay-theme="v228"] :is(
  .modal-card,
  .ab-modal,
  .eskul-form-modal,
  .eskul-review-modal,
  .eskul-student-modal-card,
  .payroll-template-modal,
  .report-v190-sheet,
  [role="dialog"],
  [class$="-dialog"],
  [class$="-modal-card"]
) :is(h1,h2,h3,h4,p,label,small):not(button *){opacity:1!important;}





html[data-clay-theme="v228"] :where(
  .card,
  .panel,
  .portal-card,
  .modal-card,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):hover{transform:none!important;}

html[data-clay-theme="v228"] body :is(
  #groupNav > button.active,
  #subNav > button.active,
  #foundationNav > button.active,
  #ownerNav > button.active,
  .sidebar nav > button.active,
  .foundation-app aside nav > button.active,
  .portal-nav-desktop > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.portal-accreditation-nav-active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]),
  .portal-nav-mobile > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.portal-accreditation-nav-active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]),
  .unified-sidebar nav button.active,
  .unified-bottom button.active,
  .portal-groups > button.active,
  .nav-button.active,
  .subnav > button.active,
  .auth-tabs > button.active,
  .login-methods > button.active,
  [role="tablist"] button:is(.active,[aria-selected="true"]),
  [role="tab"]:is(.active,[aria-selected="true"]),
  [class$="-tabs"] button.active,
  [class*="-tabs "] button.active,
  [class$="-nav"] button.active,
  nav button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.portal-accreditation-nav-active,[aria-current="page"],[aria-selected="true"]),
  nav a:is(.active,[aria-current="page"])
){transform:none!important;}


html[data-clay-theme="v228"] body :is(
  #foundationNav > button.active,
  #ownerNav > button.active,
  .nav-button.active,
  .portal-nav-desktop > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.portal-accreditation-nav-active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]),
  .portal-nav-mobile > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.portal-accreditation-nav-active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"])
) > :is(svg,.nav-icon,i){display:block!important;flex:0 0 30px!important;width:30px!important;height:30px!important;padding:5px!important;border:1px solid rgba(255,255,255,.58);border-radius:9px;fill:none;stroke:currentColor;stroke-width:1.9!important;}




html[data-portal-brand]{--eg-primary:var(--theme-primary-mid,#1264ad);--eg-primary-dark:var(--theme-primary-strong,#173f70);--eg-primary-deep:var(--theme-primary-darker,#123d6b);--eg-primary-light:var(--tone-20a7ff,#20a7ff);--eg-primary-soft:var(--theme-primary-border,#d9e8f5);--eg-accent:var(--theme-warning,#f59e0b);--eg-accent-soft:#fef3c7;--eg-violet:#6366f1;--eg-violet-soft:#e0e7ff;--eg-danger:#e11d48;--eg-danger-soft:#ffe4e8;--eg-info:var(--tone-0ea5e9,#0ea5e9);--eg-info-soft:#e0f2fe;--eg-ink:#0f2a22;--eg-body:#424e55;--eg-muted:#7c8f88;--eg-line:#e3ece7;--eg-line-soft:#edf4f1;--eg-surface:var(--theme-surface,#fff);--eg-canvas:#f4f9f7;--eg-radius-xl:26px;--eg-radius-lg:20px;--eg-radius-md:14px;--eg-radius-sm:10px;--eg-radius-pill:999px;--eg-shadow-xs:0 1px 2px rgba(15, 42, 34, 0.05);--eg-shadow-sm:0 4px 14px rgba(15, 42, 34, 0.06);--eg-shadow-md:0 14px 34px -14px rgba(6, 52, 78, 0.28),
    0 2px 8px rgba(6, 52, 78, 0.05);--eg-shadow-lg:0 28px 64px -20px rgba(6, 52, 78, 0.32);--eg-shadow-glow:0 10px 26px -6px rgba(0, 111, 209, 0.4);--eg-font:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
html[data-portal-brand]{background:var(--eg-canvas);}
html[data-portal-brand] body{min-height:100dvh!important;background:radial-gradient(circle at 4% -6%, rgba(7, 142, 232, 0.1), transparent 32%),
    radial-gradient(circle at 100% 0%, rgba(99, 102, 241, 0.06), transparent 28%),
    var(--eg-canvas);color:var(--eg-body);font-family:var(--eg-font);-webkit-font-smoothing:antialiased;}
html[data-portal-brand] ::selection{background:var(--eg-primary-soft);color:var(--eg-primary-deep);}
html[data-portal-brand] ::-webkit-scrollbar{width:9px;height:9px;}
html[data-portal-brand] ::-webkit-scrollbar-track{background:transparent;}
html[data-portal-brand] ::-webkit-scrollbar-thumb{background:#cbe9de;border-radius:var(--eg-radius-pill);border:2px solid transparent;background-clip:content-box;}
html[data-portal-brand] ::-webkit-scrollbar-thumb:hover{background:#a9c9dc;background-clip:content-box;}
html[data-portal-brand] :is(h1, h2, h3, h4){color:var(--eg-ink);font-weight:800;letter-spacing:-0.01em;}
html[data-portal-brand] .head small,
html[data-portal-brand] em,
html[data-portal-brand] .unified-group em{color:var(--eg-primary-dark);font-weight:900;letter-spacing:0.14em;}
html[data-portal-brand] :is(.center, .individual-login){background:radial-gradient(circle at top left, rgba(7, 142, 232, 0.14), transparent 45%),
    radial-gradient(circle at bottom right, rgba(99, 102, 241, 0.08), transparent 40%),
    var(--eg-canvas);}
html[data-portal-brand] :is(
  .shell,
  .login-card,
  .auth-card,
  .portal-guru-login-dialog
){border:1px solid var(--eg-line);background:var(--eg-surface);border-radius:var(--eg-radius-xl);box-shadow:var(--eg-shadow-lg);}
html[data-portal-brand] .choice{border:1.5px solid var(--eg-line);border-radius:var(--eg-radius-lg);background:var(--eg-surface);}
html[data-portal-brand] .choice:hover{border-color:var(--eg-primary-light);transform:translateY(-2px);}
html[data-portal-brand] .choice.active{border-color:var(--eg-primary);background:linear-gradient(160deg, var(--eg-primary-soft), var(--theme-surface,#fff));box-shadow:var(--eg-shadow-sm);}
html[data-portal-brand] #root header{background:rgba(255, 255, 255, 0.92);border-bottom:1px solid var(--eg-line)!important;box-shadow:0 2px 16px rgba(15, 42, 34, 0.04);}
html[data-portal-brand] .portal-premium-status{border-radius:var(--eg-radius-pill);box-shadow:var(--eg-shadow-xs);}
html[data-portal-brand] #root header button[aria-label="Buka profil"] img{box-shadow:0 0 0 2px var(--theme-surface,#fff), 0 0 0 3.5px var(--eg-primary-light);}
html[data-portal-brand] :is(.unified-sidebar, aside.sidebar){background:var(--eg-surface);border-right:1px solid var(--eg-line)!important;box-shadow:6px 0 26px rgba(15, 42, 34, 0.035);}
html[data-portal-brand] .unified-brand small{color:var(--eg-primary-dark);}
html[data-portal-brand] .unified-group button,
html[data-portal-brand] .portal-nav-desktop > button{border-radius:var(--eg-radius-md);font-weight:700;color:var(--eg-body);}
html[data-portal-brand] .unified-group button:hover,
html[data-portal-brand] .portal-nav-desktop > button:hover{background:var(--eg-line-soft);color:var(--eg-primary-dark);}
html[data-portal-brand] body :is(
  #groupNav > button.active,
  #subNav > button.active,
  #foundationNav > button.active,
  #ownerNav > button.active,
  .sidebar nav > button.active,
  .unified-group button.active,
  .unified-sidebar nav button.active,
  .portal-nav-desktop > button:is(
    .active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    .portal-accreditation-nav-active,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"]
  ),
  .nav-button.active,
  [role="tablist"] button:is(.active, [aria-selected="true"]),
  [role="tab"]:is(.active, [aria-selected="true"]),
  nav button:is(.active, [aria-current="page"])
){border-color:transparent;background:linear-gradient(135deg, var(--eg-primary) 0%, var(--eg-primary-deep) 100%);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:var(--eg-shadow-glow);text-shadow:none;transform:none!important;}
html[data-portal-brand] body :is(
  .portal-nav-desktop > button:is(.active, .bg-blue-500, .bg-blue-50),
  .unified-group button.active
) svg{color:var(--theme-surface,#fff);stroke:var(--theme-surface,#fff);}
html[data-portal-brand] :is(.unified-bottom, .portal-nav-mobile){background:var(--tone-431952a6,rgba(255, 255, 255, 0.96));border-top:1px solid var(--eg-line)!important;box-shadow:0 -10px 30px rgba(15, 42, 34, 0.06);}
html[data-portal-brand] :is(.unified-bottom, .portal-nav-mobile) > button{color:#94a8a0;font-weight:700;}
html[data-portal-brand] body :is(
  .unified-bottom button.active,
  .portal-nav-mobile > button:is(
    .active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    [aria-current="page"],
    [aria-selected="true"]
  )
){background:transparent;color:var(--eg-primary);-webkit-text-fill-color:var(--eg-primary)!important;box-shadow:none;transform:translateY(-2px);}
html[data-portal-brand] body :is(
  .unified-bottom button.active,
  .portal-nav-mobile > button:is(.active, .bg-blue-500, .bg-blue-50)
) svg{filter:drop-shadow(0 4px 8px rgba(0, 111, 209, 0.35));}
html[data-portal-brand] :is(
  .portal-guru-category-tabs-v133,
  .school-account-tabs
){background:var(--eg-line-soft);padding:5px!important;border-radius:var(--eg-radius-pill);}
html[data-portal-brand] .portal-guru-category-tabs-v133 > button{background:transparent;border-radius:var(--eg-radius-pill);color:var(--eg-muted);font-weight:800;}
html[data-portal-brand] .portal-guru-category-tabs-v133 > button:is(
  .bg-blue-500,
  .portal-accreditation-nav-active
){background:var(--eg-surface);color:var(--eg-primary-dark);box-shadow:var(--eg-shadow-sm);}
html[data-portal-brand] :is(
  .welcome,
  .dashboard-hero,
  [class$="-hero"]
){position:relative;overflow:hidden;border:0;border-radius:var(--eg-radius-xl);background:linear-gradient(135deg, var(--theme-primary,#078ee8) 0%, var(--theme-primary-mid,#1264ad) 46%, #0d577d 100%);box-shadow:var(--eg-shadow-md);}
html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"])::before,
html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"])::after{content:"";position:absolute;border-radius:50%;pointer-events:none;}
html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"])::before{width:220px;height:220px;top:-90px;right:-60px;background:rgba(255, 255, 255, 0.14);}
html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"])::after{width:140px;height:140px;bottom:-70px;left:18%;background:rgba(255, 255, 255, 0.08);}
html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"]) :is(h1, h2, h3, p, span, small, b){color:var(--theme-surface,#fff);position:relative;z-index:1;text-shadow:none;}
html[data-portal-brand] :is(
  .card,
  .panel,
  .portal-card,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):not(.student-study *):not(.student-id-card):not(.employee-id-card):not(.print-card):not([class*="-id-card"]){border:1px solid var(--eg-line);background:var(--eg-surface);border-radius:var(--eg-radius-lg);box-shadow:var(--eg-shadow-sm);}
html[data-portal-brand] :is(
  .card,
  .panel,
  .portal-card,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):not(.student-study *):hover{box-shadow:var(--eg-shadow-md);}
html[data-portal-brand] .management-grid > div{background:linear-gradient(160deg, var(--theme-surface,#fff), var(--eg-line-soft));border:1px solid var(--eg-line);border-radius:var(--eg-radius-lg);}
html[data-portal-brand] .management-grid b{color:var(--eg-primary-deep);}
html[data-portal-brand] .attendance-state{background:var(--eg-primary-soft);border-radius:var(--eg-radius-md);border:1px solid rgba(0, 111, 209, 0.16);}
html[data-portal-brand] :is(.primary, .is-primary, button[type="submit"].primary){background:linear-gradient(135deg, var(--eg-primary), var(--eg-primary-deep));border:0;border-radius:var(--eg-radius-md);font-weight:800;box-shadow:var(--eg-shadow-glow);}
html[data-portal-brand] :is(.primary, .is-primary):hover{transform:translateY(-1px)!important;}
html[data-portal-brand] :is(.primary, .is-primary):active{transform:scale(0.97)!important;}
html[data-portal-brand] :is(.secondary, .is-secondary){background:var(--eg-surface);border:1.5px solid var(--eg-primary);color:var(--eg-primary-dark);border-radius:var(--eg-radius-md);font-weight:800;}
html[data-portal-brand] :is(
  .danger,
  .is-danger,
  .buttons .out,
  header button[aria-label*="Keluar"],
  header button[title*="Keluar"]
){background:var(--eg-danger-soft);color:var(--eg-danger);border-radius:var(--eg-radius-md);font-weight:800;border:0;}
html[data-portal-brand] .buttons button:not(.out){background:var(--eg-primary-soft);color:var(--eg-primary-deep);border-radius:var(--eg-radius-sm);font-weight:800;}
html[data-portal-brand] label{color:var(--eg-muted);font-weight:800;}
html[data-portal-brand] :is(input, select, textarea){background:var(--eg-canvas);border:1.5px solid var(--eg-line);border-radius:var(--eg-radius-md);color:var(--eg-ink);box-shadow:none;}
html[data-portal-brand] :is(input, select, textarea):focus{border-color:var(--eg-primary);background:var(--eg-surface);box-shadow:0 0 0 4px rgba(0, 111, 209, 0.14);}
html[data-portal-brand] :is(
  table,
  .academic-table,
  .portal-gradebook-table,
  .report-v190-table
){border-radius:var(--eg-radius-md);overflow:hidden;}
html[data-portal-brand] th{font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:0.06em;}
html[data-portal-brand] :is(th, td){border-bottom-color:var(--eg-line);}
html[data-portal-brand] tbody tr:hover{background:rgba(7, 142, 232, 0.05);}
html[data-portal-brand] :is(
  .leave-row,
  .slip,
  .notice,
  .document-item,
  .teacher-task-history-item,
  .teacher-qr-student-row,
  .setting-center-item-v210
){border-radius:var(--eg-radius-md);border-bottom:1px solid var(--eg-line-soft)!important;}
html[data-portal-brand] :is(
  .leave-row,
  .teacher-task-history-item,
  .teacher-qr-student-row,
  .setting-center-item-v210
):hover{background:var(--eg-line-soft);}
html[data-portal-brand] :is(
  .portal-leave-status,
  .report-v190-status,
  .report-v190-chip
){border-radius:var(--eg-radius-pill);font-weight:800;padding:4px 12px!important;}
html[data-portal-brand] :is(.portal-leave-status-approved, .is-success, .is-on-time, .approved){background:var(--eg-primary-soft);color:var(--eg-primary-deep);}
html[data-portal-brand] :is(.portal-leave-status-pending, .is-warning, .is-late, .submitted){background:var(--eg-accent-soft);color:#92400e;}
html[data-portal-brand] :is(.portal-leave-status-rejected, .portal-leave-status-cancelled, .is-danger, .is-overdue, .late){background:var(--eg-danger-soft);color:var(--eg-danger);}
html[data-portal-brand] .revision{background:var(--eg-violet-soft);color:var(--eg-violet);}
html[data-portal-brand] .setting-center-hero-v210{background:linear-gradient(135deg, var(--theme-primary,#078ee8), #0d577d);border-radius:var(--eg-radius-xl);box-shadow:var(--eg-shadow-md);}
html[data-portal-brand] .setting-center-hero-v210 *{color:var(--theme-surface,#fff);}
html[data-portal-brand] .setting-center-card-v210{border-radius:var(--eg-radius-lg);border:1px solid var(--eg-line);background:var(--eg-surface);box-shadow:var(--eg-shadow-xs);}
html[data-portal-brand] .setting-center-card-v210:hover{box-shadow:var(--eg-shadow-sm);transform:translateY(-2px)!important;}
html[data-portal-brand] .setting-center-card-icon-v210{background:var(--eg-primary-soft);color:var(--eg-primary-deep);border-radius:var(--eg-radius-sm);}
html[data-portal-brand] :is(
  .academic-empty,
  .teacher-qr-empty,
  .teacher-scan-empty,
  [class$="-empty"]
){color:var(--eg-muted);background:var(--eg-line-soft);border-radius:var(--eg-radius-lg);border:1px dashed var(--eg-line);}
html[data-portal-brand] .loading{background:var(--eg-surface);border-radius:var(--eg-radius-pill);box-shadow:var(--eg-shadow-md);border:1px solid var(--eg-line);color:var(--eg-primary-dark);font-weight:800;}
@media (max-width: 760px){html[data-portal-brand] :is(.welcome, .dashboard-hero, [class$="-hero"]){border-radius:var(--eg-radius-lg);}
html[data-portal-brand] :is(
    .card,
    .panel,
    [class$="-card"],
    [class$="-panel"]
  ):not(button):hover{transform:none!important;}}
html[data-portal-brand],
html[data-portal-page="selector"]{font-family:var(--portal-v01-font);font-size:16px;color:var(--portal-v01-ink);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
html[data-portal-brand] :is(body, button, input, select, textarea, option, table),
html[data-portal-page="selector"] :is(body, button, input, select, textarea, option, table){font-family:var(--portal-v01-font);}
html[data-portal-brand] body,
html[data-portal-page="selector"] body{color:var(--portal-v01-body);font-size:14px;font-weight:400;line-height:1.6;letter-spacing:0;}
html[data-portal-brand] :is(h1, h2, h3, h4, h5, h6),
html[data-portal-page="selector"] :is(h1, h2, h3, h4, h5, h6){color:var(--portal-v01-ink);font-family:var(--portal-v01-font);font-weight:700;line-height:1.28;letter-spacing:-0.025em;text-wrap:balance;}
html[data-portal-brand] h1,
html[data-portal-page="selector"] h1{font-size:clamp(22px, 2.5vw, 28px);}
html[data-portal-brand] h2,
html[data-portal-page="selector"] h2{font-size:clamp(20px, 2vw, 24px);}
html[data-portal-brand] h3,
html[data-portal-page="selector"] h3{font-size:18px;}
html[data-portal-brand] :is(h4, h5, h6),
html[data-portal-page="selector"] :is(h4, h5, h6){font-size:16px;}
html[data-portal-brand] p,
html[data-portal-page="selector"] p{font-size:14px;font-weight:400;line-height:1.65;letter-spacing:0;}
html[data-portal-brand] small,
html[data-portal-page="selector"] small{font-size:12px;font-weight:500;line-height:1.5;letter-spacing:0;}
html[data-portal-brand] :is(b, strong),
html[data-portal-page="selector"] :is(b, strong){font-weight:700;}
html[data-portal-brand] :is(.font-black, .font-extrabold, .font-bold),
html[data-portal-page="selector"] :is(.font-black, .font-extrabold, .font-bold){font-weight:700;}
html[data-portal-brand] .font-semibold,
html[data-portal-page="selector"] .font-semibold{font-weight:600;}
html[data-portal-brand] :is(label, th),
html[data-portal-page="selector"] :is(label, th){font-size:12px;font-weight:600;line-height:1.45;letter-spacing:0.01em;}
html[data-portal-brand] td,
html[data-portal-page="selector"] td{font-size:13px;font-weight:400;line-height:1.55;}
html[data-portal-brand] :is(input, select, textarea),
html[data-portal-page="selector"] :is(input, select, textarea){font-size:14px;font-weight:500;}
html[data-portal-brand] :is(
  nav a,
  nav button,
  .nav-button,
  .unified-group button,
  .unified-bottom button,
  .portal-nav-desktop button,
  .portal-nav-mobile button
),
html[data-portal-page="selector"] :is(nav a, nav button){font-size:13px;font-weight:600;line-height:1.4;letter-spacing:0;}
html[data-portal-brand] :is(
  .eyebrow,
  [class*="eyebrow"],
  [class*="kicker"],
  .unified-group em,
  .badge,
  [class*="-badge"],
  [class*="-status"]
),
html[data-portal-page="selector"] :is(.eyebrow, [class*="eyebrow"], [class*="kicker"]){font-size:11px;font-weight:700;line-height:1.4;letter-spacing:0.06em;}
html[data-portal-brand] [class~="text-5xl"]{font-size:28px;}
html[data-portal-brand] [class~="text-4xl"]{font-size:26px;}
html[data-portal-brand] [class~="text-3xl"]{font-size:24px;}
html[data-portal-brand] [class~="text-2xl"]{font-size:22px;}
html[data-portal-brand] [class~="text-xl"]{font-size:19px;}
html[data-portal-brand] [class~="text-lg"]{font-size:16px;}
html[data-portal-brand] [class~="text-sm"]{font-size:14px;}
html[data-portal-brand] [class~="text-xs"]{font-size:12px;}
html[data-portal-brand] :is([class~="text-[9px]"], [class~="text-[10px]"]){font-size:11px;}
html[data-portal-brand] :is(
  button,
  [role="button"],
  a.button,
  a[role="button"]
),
html[data-portal-page="selector"] :is(button, [role="button"], a.button, a[role="button"]){font-size:13px;font-weight:600;line-height:1.4;text-shadow:none;}
html[data-portal-brand] :is(
  button.primary,
  button.is-primary,
  button[type="submit"].primary,
  a.primary,
  a.button-primary,
  button[class*="bg-blue-500"],
  button[class*="bg-blue-600"]
){border:1px solid var(--portal-v01-blue-dark);background:linear-gradient(135deg, #06537d, var(--portal-v01-blue-dark));color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 9px 22px rgba(7, 94, 140, 0.22);}
html[data-portal-brand] :is(
  button.primary,
  button.is-primary,
  button[type="submit"].primary,
  a.primary,
  a.button-primary,
  button[class*="bg-blue-500"],
  button[class*="bg-blue-600"]
) :is(svg, span, b, strong){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand] :is(
  button.secondary,
  button.is-secondary,
  a.secondary,
  .actions button:not(.primary):not(.is-primary):not(.danger):not(.warning):not([class*="bg-"]),
  .table-actions button:not(.primary):not(.is-primary):not(.danger):not(.warning):not([class*="bg-"])
){border:1px solid #74adcd;background:var(--portal-v01-white);color:var(--portal-v01-blue-dark);-webkit-text-fill-color:var(--portal-v01-blue-dark)!important;box-shadow:0 4px 12px rgba(23, 33, 31, 0.07);}
html[data-portal-brand] :is(button[class*="bg-blue-500"], button[class*="bg-blue-600"]){border-color:var(--tone-1d4ed8,#1d4ed8);background:var(--portal-v01-blue);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand] :is(
  button.warning,
  button[class*="bg-amber-500"],
  button[class*="bg-amber-600"]
){border-color:#d79619;background:var(--portal-v01-amber);color:var(--portal-v01-amber-ink);-webkit-text-fill-color:var(--portal-v01-amber-ink)!important;}
html[data-portal-brand] :is(
  button.danger,
  button.is-danger,
  button.stop-access,
  button[class*="bg-red-500"],
  button[class*="bg-red-600"]
){border-color:#9f1239;background:var(--portal-v01-red);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand] :is(
  button.danger,
  button.is-danger,
  button.stop-access,
  button[class*="bg-red-500"],
  button[class*="bg-red-600"]
) :is(svg, span, b, strong){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand] :is(button.ghost, .buttons button[data-close], .modal-close, button.close){border:1px solid #cbd8d3;background:var(--tone-f8fbfa,#f8fbfa);color:#3f4b51;-webkit-text-fill-color:#3f4b51!important;box-shadow:none;}
html[data-portal-brand] :is(button, [role="button"], a.button, a[role="button"]):focus-visible,
html[data-portal-page="selector"] :is(button, [role="button"], a.button, a[role="button"]):focus-visible{outline:0;box-shadow:var(--portal-v01-focus);}
html[data-portal-brand] button:disabled,
html[data-portal-page="selector"] button:disabled{opacity:0.55!important;filter:grayscale(0.15);}
html[data-portal-brand] :is(
  .card,
  .panel,
  .modal-card,
  [class$="-card"],
  [class$="-panel"],
  [class$="-dialog"]
):not(button):not([role="button"]),
html[data-portal-page="selector"] :is(.portal-card, .selector){border-color:var(--portal-v01-line);border-radius:var(--radius-2xl,18px);}
html[data-portal-brand] :is([class*="rounded-[32px]"], [class*="rounded-[24px]"]){border-radius:var(--radius-2xl,18px);}
html[data-portal-brand] :is(.content, main > .content, #content){line-height:1.6;}
html[data-portal-brand] :is(.toolbar, .panel-head, .page-head){gap:12px!important;}
html[data-portal-brand] table{border-collapse:separate;border-spacing:0;}
html[data-portal-brand] th{color:var(--portal-v01-blue-dark);background:var(--portal-v01-soft);}
html[data-portal-brand] :is(th, td){padding:11px 12px!important;vertical-align:middle;}
@media (max-width: 760px){html[data-portal-brand] body,
  html[data-portal-page="selector"] body{font-size:13px;}
html[data-portal-brand] h1,
  html[data-portal-page="selector"] h1{font-size:22px;}
html[data-portal-brand] h2,
  html[data-portal-page="selector"] h2{font-size:19px;}
html[data-portal-brand] h3,
  html[data-portal-page="selector"] h3{font-size:16px;}
html[data-portal-brand] :is(p, input, select, textarea, button, [role="button"]),
  html[data-portal-page="selector"] :is(p, input, select, textarea, button, [role="button"]){font-size:13px;}
html[data-portal-brand] :is(.content, #content){padding-inline:14px!important;}}
#ownerLoading.loading:not(.hidden),
#foundationLoading.loading:not(.hidden),
#loading.loading:not(.hidden),
.portal-loading-v03,
.portal-loading-v03-inline{position:fixed!important;inset:0!important;z-index:1000!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;align-content:center!important;transform:none!important;border:0;border-radius:0;background:var(--portal-loading-layer);box-shadow:none;contain:layout paint style!important;isolation:isolate!important;}
#ownerLoading.loading:not(.hidden) > b,
#foundationLoading.loading:not(.hidden) > b,
#loading.loading:not(.hidden) > b,
.portal-loading-v03-content > :not(.portal-loading-v03-spinner){position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0;}
#ownerLoading.loading:not(.hidden) > span,
#foundationLoading.loading:not(.hidden) > span,
#loading.loading:not(.hidden) > span,
.portal-loading-v03-spinner,
.portal-loading-v03-inline::before{content:"";display:block!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;margin:0!important;padding:0!important;border:3px solid var(--portal-loading-track);border-top-color:var(--portal-loading-accent);border-right-color:rgba(8, 96, 145, 0.5);border-radius:50%;background:transparent;box-shadow:none;contain:strict!important;transform:translateZ(0)!important;}
.portal-loading-v03-content{display:grid!important;place-items:center!important;margin:0!important;padding:0!important;border:0;border-radius:0;background:transparent;box-shadow:none;}
.portal-loading-v03-inline{font-size:0;color:transparent;}
@media print{#ownerLoading,
  #foundationLoading,
  #loading,
  .portal-loading-v03,
  .portal-loading-v03-inline{display:none!important;}}
:is(
  .modal-card > .close,
  .modal-card > .modal-close,
  .teacher-student-scan-dialog [data-scan-close],
  .employee-attendance-v126-dialog [data-attendance-close],
  .teacher-duty-v08-dialog > header > button[aria-label="Tutup"],
  .teacher-qr-close,
  .teacher-qr-viewer-close,
  .employee-id-card-dialog [data-employee-card-close],
  .portal-student-preview-close-v190,
  .portal-management-notification-actions button[data-close],
  .owner-notification-head-actions button[data-notification-close],
  button[data-close-school-notifications][aria-label="Tutup"],
  .download-modal-close,
  .portal-modal-close
){display:inline-grid!important;place-items:center!important;flex:0 0 auto!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;padding:0!important;border:1px solid var(--tone-fecaca,#fecaca);border-radius:var(--radius-pill,999px);background:#fee2e2;color:var(--theme-danger,#b91c1c);font-size:27px;font-weight:800;line-height:1;opacity:1!important;visibility:visible!important;box-shadow:0 5px 14px rgb(185 28 28 / 12%);-webkit-tap-highlight-color:transparent;}
:is(
  .modal-card > .close,
  .modal-card > .modal-close,
  .teacher-student-scan-dialog [data-scan-close],
  .employee-attendance-v126-dialog [data-attendance-close],
  .teacher-duty-v08-dialog > header > button[aria-label="Tutup"],
  .teacher-qr-close,
  .teacher-qr-viewer-close,
  .employee-id-card-dialog [data-employee-card-close],
  .portal-student-preview-close-v190,
  .portal-management-notification-actions button[data-close],
  .owner-notification-head-actions button[data-notification-close],
  button[data-close-school-notifications][aria-label="Tutup"],
  .download-modal-close,
  .portal-modal-close
):is(:hover, :focus-visible, :active){border-color:#fca5a5;background:var(--tone-fecaca,#fecaca);color:#991b1b;outline:3px solid rgb(239 68 68 / 16%);outline-offset:2px!important;}
@media (max-width: 760px){:is(
    .modal-card > .close,
    .modal-card > .modal-close,
    .teacher-student-scan-dialog [data-scan-close],
    .employee-attendance-v126-dialog [data-attendance-close],
    .teacher-duty-v08-dialog > header > button[aria-label="Tutup"],
    .teacher-qr-close,
    .teacher-qr-viewer-close,
    .employee-id-card-dialog [data-employee-card-close],
    .portal-student-preview-close-v190,
    .portal-management-notification-actions button[data-close],
    .owner-notification-head-actions button[data-notification-close],
    button[data-close-school-notifications][aria-label="Tutup"],
    .download-modal-close,
    .portal-modal-close
  ){width:46px!important;min-width:46px!important;max-width:46px!important;height:46px!important;min-height:46px!important;max-height:46px!important;font-size:29px;}}
.employee-id-card-dialog [data-employee-card-close]{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:auto!important;min-width:94px!important;max-width:none!important;padding:0 14px!important;position:relative!important;z-index:8!important;}
.employee-id-card-dialog [data-employee-card-close] > span{display:block!important;font-size:27px;font-weight:800;line-height:1;transform:translateY(-1px);}
.employee-id-card-dialog [data-employee-card-close] > b{display:block!important;color:inherit;font-size:12px;font-weight:900;line-height:1;}
@media (max-width: 430px){.employee-id-card-dialog [data-employee-card-close]{min-width:86px!important;padding-inline:11px!important;}}
.portal-app-download-host{--pad-green:#0a6ea8;--pad-blue-dark:var(--theme-primary-mid,#1264ad);--pad-ink:#122834;--pad-line:rgba(8, 80, 120, 0.2);display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;position:relative;z-index:80;font-family:inherit;}
.portal-app-download-host--push-right,
.portal-app-download-host--fallback{margin-left:auto;}
.portal-app-download-desktop,
.portal-app-download-mobile{display:inline-flex;align-items:center;gap:8px;}
.portal-app-download-link,
.portal-app-download-trigger{appearance:none;-webkit-appearance:none;border:1px solid var(--pad-line);background:rgba(255, 255, 255, 0.94);color:var(--pad-blue-dark);min-height:38px;height:38px;border-radius:13px;padding:0 11px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;text-decoration:none;font:700 12px/1 inherit;white-space:nowrap;cursor:pointer;box-shadow:0 8px 18px rgba(8, 80, 120, 0.09);}
.portal-app-download-link:hover,
.portal-app-download-trigger:hover{transform:translateY(-1px);border-color:rgba(10, 110, 168, 0.55);background:#f0fff9;box-shadow:0 10px 22px rgba(8, 80, 120, 0.14);}
.portal-app-download-link:focus-visible,
.portal-app-download-trigger:focus-visible,
.portal-app-download-close:focus-visible,
.portal-app-download-choice:focus-visible{outline:3px solid rgba(7, 142, 232, 0.25);outline-offset:2px;}
.portal-app-download-link svg,
.portal-app-download-trigger svg{width:18px;height:18px;display:block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.portal-app-download-link[data-platform="android"] svg{fill:none;stroke:currentColor;}
.portal-app-download-mobile{display:none;}
.portal-app-download-trigger{width:40px;min-width:40px;padding:0!important;}
.portal-app-download-overlay{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;font-family:inherit;}
.portal-app-download-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.portal-app-download-backdrop{position:absolute;inset:0;border:0;padding:0;background:rgba(5, 24, 20, 0.48);}
.portal-app-download-panel{position:relative;width:min(460px, 100%);max-height:min(620px, calc(100dvh - 32px));overflow:auto;border-radius:25px;background:var(--theme-surface,#fff);border:1px solid rgba(8, 80, 120, 0.12);box-shadow:0 28px 80px rgba(0, 42, 32, 0.24);padding:24px;transform:translateY(10px) scale(0.985);color:var(--tone-152a35,#152a35);}
.portal-app-download-overlay.is-open .portal-app-download-panel{transform:translateY(0) scale(1);}
.portal-app-download-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:var(--radius-md-lg,12px);border:1px solid rgba(15, 23, 42, 0.09);background:var(--tone-f7faff,#f7faff);color:#53626b;display:grid;place-items:center;font:800 22px/1 inherit;cursor:pointer;}
.portal-app-download-heading{display:flex;align-items:center;gap:13px;padding-right:40px;margin-bottom:18px;}
.portal-app-download-heading-mark{width:48px;height:48px;border-radius:var(--radius-xl,16px);display:grid;place-items:center;flex:0 0 auto;color:var(--theme-surface,#fff);background:linear-gradient(145deg, #208cc9, var(--theme-primary-mid,#1264ad));box-shadow:0 12px 24px rgba(8, 80, 120, 0.2);}
.portal-app-download-heading-mark svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.portal-app-download-heading small{display:block;color:var(--tone-0b608f,#0b608f);font-size:10px;font-weight:900;letter-spacing:0.12em;margin-bottom:3px;}
.portal-app-download-heading h3{margin:0;color:var(--tone-152a35,#152a35);font-size:21px;line-height:1.2;font-weight:900;}
.portal-app-download-heading p{margin:5px 0 0;color:#70847f;font-size:12px;line-height:1.5;}
.portal-app-download-choices{display:grid;gap:11px;}
.portal-app-download-choice{display:grid;grid-template-columns:46px 1fr auto;gap:13px;align-items:center;border:1px solid rgba(8, 80, 120, 0.14);background:#f8fcfa;color:var(--tone-152a35,#152a35);text-decoration:none;border-radius:17px;padding:14px;}
.portal-app-download-choice:hover{transform:translateY(-1px);border-color:rgba(10, 110, 168, 0.45);background:var(--tone-eef6ff,#eef6ff);}
.portal-app-download-choice-icon{width:46px;height:46px;border-radius:var(--radius-lg,14px);display:grid;place-items:center;color:var(--theme-surface,#fff);background:linear-gradient(145deg, #228cc9, var(--tone-0b608f,#0b608f));}
.portal-app-download-choice[data-platform="windows"] .portal-app-download-choice-icon{background:linear-gradient(145deg, #1687d9, #075ea3);}
.portal-app-download-choice-icon svg{width:23px;height:23px;fill:currentColor;stroke:none;}
.portal-app-download-choice[data-platform="android"] .portal-app-download-choice-icon svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.portal-app-download-choice-copy small,
.portal-app-download-choice-copy strong,
.portal-app-download-choice-copy span{display:block;}
.portal-app-download-choice-copy small{color:#7d918c;font-size:9px;font-weight:900;letter-spacing:0.1em;margin-bottom:3px;}
.portal-app-download-choice-copy strong{color:var(--tone-152a35,#152a35);font-size:14px;font-weight:900;}
.portal-app-download-choice-copy span{color:#71847f;font-size:11px;line-height:1.45;margin-top:3px;}
.portal-app-download-choice-arrow{color:var(--tone-0b608f,#0b608f);font-size:20px;font-weight:900;}
.portal-app-download-footnote{margin:14px 2px 0;color:#80918d;text-align:center;font-size:10px;line-height:1.5;}
html.portal-app-download-open,
html.portal-app-download-open body{overflow:hidden!important;}
@media (max-width: 1120px) and (min-width: 769px){.portal-app-download-link{width:39px;min-width:39px;padding:0!important;}
.portal-app-download-link span{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;}}
@media (max-width: 768px){.portal-app-download-desktop{display:none!important;}
.portal-app-download-mobile{display:inline-flex!important;}
.portal-app-download-host{gap:4px;}
.portal-app-download-trigger{width:38px;min-width:38px;height:38px;min-height:38px;border-radius:var(--radius-md-lg,12px);box-shadow:none;}
.portal-app-download-overlay{place-items:end center;padding:0;}
.portal-app-download-panel{width:100%;max-height:min(82dvh, 620px);border-radius:25px 25px 0 0;padding:22px 18px calc(20px + env(safe-area-inset-bottom));transform:translateY(26px);}
.portal-app-download-overlay.is-open .portal-app-download-panel{transform:translateY(0);}
.portal-app-download-panel::before{content:"";display:block;width:44px;height:4px;border-radius:var(--radius-pill,999px);background:#d7e2de;margin:-8px auto 16px;}
.portal-app-download-heading h3{font-size:19px;}}
@media (max-width: 390px){.portal-app-download-trigger{width:36px;min-width:36px;height:36px;min-height:36px;}
.portal-app-download-choice{grid-template-columns:42px 1fr auto;padding:12px;}
.portal-app-download-choice-icon{width:42px;height:42px;}}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
){position:relative!important;isolation:isolate!important;overflow:hidden!important;border:1.5px solid var(--pp-menu-control-border);border-radius:15px;background:var(--pp-menu-control-pale);color:var(--pp-menu-control-text);-webkit-text-fill-color:var(--pp-menu-control-text)!important;box-shadow:inset 6px 0 0 var(--pp-menu-control-border);font-weight:700;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
)::before,
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
)::after{content:none!important;display:none!important;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
) > *{position:relative!important;z-index:1!important;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
):is(
  :hover,
  :focus-visible,
  .active,
  .selected,
  .is-active,
  .bg-blue-500,
  .portal-accreditation-nav-active,
  [aria-current="page"],
  [aria-selected="true"],
  [aria-pressed="true"],
  [data-active="true"]
){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;border-color:var(--pp-menu-control-border);background:var(--pp-menu-control-green);box-shadow:inset 7px 0 0 var(--pp-menu-control-dark),
    0 10px 22px var(--tone-60e09799,rgba(0, 111, 209, .18));transform:none!important;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
):focus-visible{outline:none;box-shadow:inset 7px 0 0 var(--pp-menu-control-dark),
    0 10px 22px var(--tone-60e09799,rgba(0, 111, 209, .18)),
    var(--pp-menu-control-focus);}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
) :is(span,b,small,p,.admin-nav-label,.nav-label,svg,i,.admin-nav-icon,.nav-icon){color:inherit;-webkit-text-fill-color:currentColor!important;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
) svg{stroke:currentColor;}
html body :is(
  #groupNav > button,
  #subNav > button,
  #foundationNav > button,
  #ownerNav > button,
  .sidebar nav > button,
  .foundation-app aside nav > button,
  .unified-sidebar nav > button,
  .portal-groups > button,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-sidebar nav > button,
  .owner-sidebar nav > button
) :is(.side-count,.nav-count,.nav-badge,.menu-badge,.notification-badge){color:var(--pp-menu-control-text);-webkit-text-fill-color:var(--pp-menu-control-text)!important;background:#eaf5f0;}
html body :is(
  #groupNav > button,
  #subNav > button,
  #foundationNav > button,
  #ownerNav > button,
  .sidebar nav > button,
  .foundation-app aside nav > button,
  .unified-sidebar nav > button,
  .portal-groups > button,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-sidebar nav > button,
  .owner-sidebar nav > button
):is(
  :hover,
  :focus-visible,
  .active,
  .selected,
  .is-active,
  .bg-blue-500,
  .portal-accreditation-nav-active,
  [aria-current="page"],
  [aria-selected="true"],
  [aria-pressed="true"],
  [data-active="true"]
) :is(.side-count,.nav-count,.nav-badge,.menu-badge,.notification-badge){color:var(--pp-menu-control-text);-webkit-text-fill-color:var(--pp-menu-control-text)!important;background:var(--theme-surface,#fff);}
html body :is(
  #groupNav > button,
  #subNav > button,
  #foundationNav > button,
  #ownerNav > button,
  .sidebar nav > button,
  .foundation-app aside nav > button,
  .unified-sidebar nav > button,
  .portal-groups > button,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-sidebar nav > button,
  .owner-sidebar nav > button
):disabled{cursor:not-allowed!important;opacity:.55!important;color:var(--pp-menu-control-text);-webkit-text-fill-color:var(--pp-menu-control-text)!important;border-color:#9bbccf;background:#f4f8f6;box-shadow:inset 6px 0 0 #9bbccf;}
@media (max-width:850px){html body :is(
    #groupNav > button,
    #groupNav > a,
    #subNav > button,
    #subNav > a,
    #foundationNav > button,
    #foundationNav > a,
    #ownerNav > button,
    #ownerNav > a,
    .sidebar nav > button,
    .sidebar nav > a,
    .foundation-app aside nav > button,
    .foundation-app aside nav > a,
    .unified-sidebar nav > button,
    .unified-sidebar nav > a,
    .portal-groups > button,
    .portal-groups > a,
    .nav-button,
    .admin-mobile-dock > button,
    .admin-mobile-dock > a,
    .admin-sidebar nav > button,
    .admin-sidebar nav > a,
    .owner-sidebar nav > button,
    .owner-sidebar nav > a
  ){border-radius:var(--radius-lg,14px);}}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
) > :is(.nav-icon,.admin-nav-icon,svg){border-color:transparent;border-radius:0;padding:0!important;background:transparent;box-shadow:none;filter:none!important;color:inherit;-webkit-text-fill-color:currentColor!important;}
html body :is(
  #groupNav > button,
  #groupNav > a,
  #subNav > button,
  #subNav > a,
  #foundationNav > button,
  #foundationNav > a,
  #ownerNav > button,
  #ownerNav > a,
  .sidebar nav > button,
  .sidebar nav > a,
  .foundation-app aside nav > button,
  .foundation-app aside nav > a,
  .unified-sidebar nav > button,
  .unified-sidebar nav > a,
  .portal-groups > button,
  .portal-groups > a,
  .nav-button,
  .admin-mobile-dock > button,
  .admin-mobile-dock > a,
  .admin-sidebar nav > button,
  .admin-sidebar nav > a,
  .owner-sidebar nav > button,
  .owner-sidebar nav > a
) > :is(.nav-icon,.admin-nav-icon) svg{border:0;border-radius:0;padding:0!important;background:transparent;box-shadow:none;filter:none!important;color:inherit;stroke:currentColor;}














html[data-portal-brand] header[data-eduvia-unified-header]{overflow:visible!important;}
html[data-portal-brand] [data-eduvia-unified-actions]{box-sizing:border-box!important;display:flex!important;flex:0 0 auto!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:0!important;}
html[data-portal-brand] #portalAppDownloadHost{order:10!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;gap:8px!important;}
html[data-portal-brand] #portalAppDownloadHost .portal-app-download-desktop{display:inline-flex!important;align-items:center!important;gap:8px!important;}
html[data-portal-brand] #portalAppDownloadHost .portal-app-download-mobile{display:none!important;}
html[data-portal-brand] [data-eduvia-unified-action="android"],
html[data-portal-brand] [data-eduvia-unified-action="windows"],
html[data-portal-brand] [data-eduvia-unified-action="settings"],
html[data-portal-brand] [data-eduvia-unified-action="notification"]{box-sizing:border-box!important;appearance:none!important;display:inline-flex!important;flex:0 0 42px!important;align-items:center!important;justify-content:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;border:1px solid rgba(8, 104, 166, .13);border-radius:var(--radius-lg,14px);background:#f7fbfe;color:#0875bf;text-decoration:none;box-shadow:0 5px 16px rgba(13, 67, 103, .06);line-height:0;transform:none!important;cursor:pointer!important;}
html[data-portal-brand] [data-eduvia-unified-action="premium"]{box-sizing:border-box!important;appearance:none!important;position:relative!important;display:inline-flex!important;flex:0 0 42px!important;align-items:center!important;justify-content:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;overflow:visible!important;border:0;border-radius:var(--radius-lg,14px);background:#eef7f4;color:#6f8b82;box-shadow:0 5px 14px rgba(28, 75, 61, .08);font-size:0;line-height:0;transform:none!important;cursor:pointer!important;}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="active"],
html[data-portal-brand] [data-eduvia-unified-action="premium"].is-active:not([data-eduvia-premium-state-v16]){border:1px solid rgba(16, 185, 129, .20);background:linear-gradient(145deg, #12b989, #079c71);color:var(--theme-surface,#fff);box-shadow:0 7px 17px rgba(4, 151, 107, .22);}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"],
html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16]){flex-basis:122px!important;width:122px!important;min-width:122px!important;max-width:122px!important;gap:6px!important;padding:0 11px!important;border:1px solid rgba(217, 119, 6, .22);background:linear-gradient(145deg, #ffbf3f, #f08b22);color:var(--theme-surface,#fff);box-shadow:0 7px 17px rgba(238, 139, 31, .22);line-height:1;white-space:nowrap!important;}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"]::before,
html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16])::before{content:"";position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:var(--radius-pill,999px);background:#ff3855;box-shadow:0 0 0 3px var(--theme-surface,#fff);}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"]::after,
html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16])::after{content:"Upgrade ke Pro"!important;display:inline-block!important;min-width:0!important;color:var(--theme-surface,#fff);font:800 11px/1.05 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:-.015em;text-shadow:0 1px 0 rgba(120, 53, 15, .12);}
html[data-portal-brand] [data-eduvia-unified-action="premium"] > span:not(.absolute),
html[data-portal-brand] [data-eduvia-unified-action="premium"] > [data-school-premium-label-v19],
html[data-portal-brand] [data-eduvia-unified-action="premium"] > [data-eduvia-premium-label-v16],
html[data-portal-brand] [data-eduvia-unified-action="premium"] > span.absolute{display:none!important;}
html[data-portal-brand] [data-eduvia-unified-action] > svg,
html[data-portal-brand] [data-eduvia-unified-action] svg{display:block!important;flex:0 0 20px!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;fill:none;stroke:currentColor;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
html[data-portal-brand] [data-eduvia-unified-action="windows"] svg{fill:currentColor;stroke:none;}
html[data-portal-brand] [data-eduvia-unified-action="profile"]{box-sizing:border-box!important;appearance:none!important;display:inline-flex!important;flex:0 0 42px!important;align-items:center!important;justify-content:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;overflow:hidden!important;border:2px solid var(--theme-surface,#fff);border-radius:var(--radius-lg,14px);background:#eaf5fc;color:#0875bf;box-shadow:0 0 0 1px rgba(8, 104, 166, .16), 0 5px 16px rgba(13, 67, 103, .075);cursor:pointer!important;}
html[data-portal-brand] [data-eduvia-unified-action="profile"] > img,
html[data-portal-brand] [data-eduvia-unified-action="profile"] #adminPhoto,
html[data-portal-brand] [data-eduvia-unified-action="profile"] > span#foundationAvatar{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:100%!important;max-width:100%!important;height:100%!important;min-height:100%!important;max-height:100%!important;border-radius:var(--radius-md-lg,12px);object-fit:cover!important;object-position:center!important;}

html[data-portal-brand] [data-eduvia-unified-item="premium"]{order:20!important;}
html[data-portal-brand] [data-eduvia-unified-item="student-actions"]{order:20!important;}
html[data-portal-brand] [data-eduvia-unified-item="settings"]{order:30!important;}
html[data-portal-brand] [data-eduvia-unified-item="notification"]{order:40!important;}
html[data-portal-brand] [data-eduvia-unified-item="profile"]{order:50!important;}
html[data-portal-brand] [data-eduvia-unified-item="notification"],
html[data-portal-brand] #portal-subscription-notifications,
html[data-portal-brand] #portalManagementNotifications{position:relative!important;flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;}
html[data-portal-brand="siswa"] .portal-unified-student-slot-v15,
html[data-portal-brand="siswa"] .portal-unified-student-extras-v15{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:8px!important;}

html[data-portal-brand] #portalAppDownloadHost [data-platform="android"]{position:relative!important;}
html[data-portal-brand] #portalAppDownloadHost [data-platform="android"].has-apk-update::after{content:"";position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:var(--radius-pill,999px);background:#ff2e4d;box-shadow:0 0 0 3px var(--theme-surface,#fff), 0 4px 12px rgba(255, 46, 77, .28);z-index:5;}
.portal-unified-status-v15{position:fixed;top:max(78px, calc(env(safe-area-inset-top) + 68px));right:18px;z-index:2147483000;display:grid;gap:3px;width:min(330px, calc(100vw - 32px));padding:13px 15px;border:1px solid rgba(7, 156, 113, .2);border-radius:var(--radius-xl,16px);background:rgba(255, 255, 255, .98);color:#12382d;box-shadow:0 18px 45px rgba(13, 67, 103, .16);font:700 12px/1.45 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;opacity:0;visibility:hidden;transform:translateY(-8px);}
.portal-unified-status-v15 b{font-size:13px;}
.portal-unified-status-v15 span{color:#648078;}
.portal-unified-status-v15.is-visible{opacity:1;visibility:visible;transform:none;}
@media (hover:hover) and (pointer:fine){html[data-portal-brand] [data-eduvia-unified-action]:hover{transform:translateY(-1px)!important;filter:saturate(1.03)!important;box-shadow:0 7px 18px rgba(13, 67, 103, .10);}}
@media (max-width:760px){html[data-portal-brand] header[data-eduvia-unified-header]{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:center!important;gap:7px!important;width:100%!important;height:auto!important;min-height:0!important;padding:8px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left))!important;}
html[data-portal-brand] header[data-eduvia-unified-header] > :not([data-eduvia-unified-actions]){box-sizing:border-box!important;width:100%!important;min-width:0!important;margin:0!important;text-align:center!important;}
html[data-portal-brand] [data-eduvia-unified-actions]{position:static!important;inset:auto!important;align-self:stretch!important;justify-content:center!important;width:100%!important;min-width:100%!important;max-width:none!important;min-height:38px!important;margin:0 auto!important;padding:0!important;gap:7px!important;transform:none!important;}
html[data-portal-brand] #portalAppDownloadHost,
  html[data-portal-brand] #portalAppDownloadHost .portal-app-download-desktop{display:inline-flex!important;height:38px!important;min-height:38px!important;max-height:38px!important;gap:7px!important;}
html[data-portal-brand] #portalAppDownloadHost .portal-app-download-mobile{display:none!important;}
html[data-portal-brand] [data-eduvia-unified-action],
  html[data-portal-brand] [data-eduvia-unified-item="notification"],
  html[data-portal-brand] #portal-subscription-notifications,
  html[data-portal-brand] #portalManagementNotifications{flex-basis:38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;border-radius:var(--radius-md-lg,12px);}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"],
  html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16]){flex-basis:104px!important;width:104px!important;min-width:104px!important;max-width:104px!important;gap:4px!important;padding:0 8px!important;}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"]::after,
  html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16])::after{font-size:10px;}
html[data-portal-brand="siswa"] .portal-unified-student-slot-v15,
  html[data-portal-brand="siswa"] .portal-unified-student-extras-v15{gap:7px!important;}}
@media (max-width:360px){html[data-portal-brand] [data-eduvia-unified-actions],
  html[data-portal-brand] #portalAppDownloadHost,
  html[data-portal-brand] #portalAppDownloadHost .portal-app-download-desktop,
  html[data-portal-brand="siswa"] .portal-unified-student-slot-v15,
  html[data-portal-brand="siswa"] .portal-unified-student-extras-v15{gap:5px!important;}
html[data-portal-brand] [data-eduvia-unified-action],
  html[data-portal-brand] [data-eduvia-unified-item="notification"],
  html[data-portal-brand] #portal-subscription-notifications,
  html[data-portal-brand] #portalManagementNotifications{flex-basis:34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important;max-height:34px!important;border-radius:11px;}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"],
  html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16]){flex-basis:92px!important;width:92px!important;min-width:92px!important;max-width:92px!important;gap:3px!important;padding:0 6px!important;}
html[data-portal-brand] [data-eduvia-unified-action="premium"][data-eduvia-premium-state-v16="free"]::after,
  html[data-portal-brand] [data-eduvia-unified-action="premium"].is-free:not([data-eduvia-premium-state-v16])::after{font-size:9px;letter-spacing:-.025em;}
html[data-portal-brand] #portalAppDownloadHost{height:34px!important;min-height:34px!important;max-height:34px!important;}
html[data-portal-brand] [data-eduvia-unified-action] > svg,
  html[data-portal-brand] [data-eduvia-unified-action] svg{flex-basis:18px!important;width:18px!important;min-width:18px!important;max-width:18px!important;height:18px!important;min-height:18px!important;max-height:18px!important;}}
html[data-eduvia-product="pendidikan"] body,
html[data-eduvia-product="pendidikan"] button,
html[data-eduvia-product="pendidikan"] input,
html[data-eduvia-product="pendidikan"] select,
html[data-eduvia-product="pendidikan"] textarea{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
html[data-eduvia-product="pendidikan"] button,
html[data-eduvia-product="pendidikan"] a[role="button"]{-webkit-tap-highlight-color:transparent;}
html[data-eduvia-portal="guru"] .portal-guru-dashboard{gap:14px!important;}
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient{min-height:0!important;margin:0!important;padding:20px!important;border:1px solid var(--eduvia-shared-line);border-radius:var(--radius-2xl,18px);background:var(--eduvia-shared-surface);color:var(--eduvia-shared-ink);box-shadow:none;}
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient::before,
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient::after{content:none!important;display:none!important;}
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient
  :is(h1, h2, h3, p, span, b, strong){color:var(--eduvia-shared-ink);-webkit-text-fill-color:var(--eduvia-shared-ink)!important;text-shadow:none;}
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient
  h2{margin-bottom:6px!important;font-size:clamp(20px, 2.4vw, 27px);line-height:1.18;}
html[data-eduvia-portal="guru"]
  .portal-guru-dashboard
  > .portal-school-report-gradient
  p{max-width:720px!important;margin:0!important;color:var(--eduvia-shared-muted);-webkit-text-fill-color:var(--eduvia-shared-muted)!important;opacity:1!important;line-height:1.55;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metrics{gap:10px!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric{min-width:0!important;min-height:68px!important;padding:12px 13px!important;border:1px solid var(--eduvia-shared-line);border-radius:15px;background:var(--eduvia-shared-surface);box-shadow:none;display:grid!important;grid-template-columns:34px minmax(0, 1fr)!important;align-items:center!important;justify-content:initial!important;gap:10px!important;transform:none!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric > :first-child{width:34px!important;height:34px!important;min-width:34px!important;margin:0!important;border-radius:var(--radius-md,10px);}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric > :last-child{min-width:0!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric > :last-child > p:first-child{margin:0!important;font-size:21px;line-height:1;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric > :last-child > p:last-child{margin:5px 0 0!important;overflow:hidden!important;color:var(--eduvia-shared-muted);font-size:10px;line-height:1.2;text-overflow:ellipsis!important;white-space:nowrap!important;}
html[data-eduvia-product="pendidikan"].eduvia-dashboard-ready
  :is(.hero-panel, .dashboard-hero, .welcome-panel){border:1px solid var(--eduvia-shared-line);border-radius:var(--radius-2xl,18px);background:var(--eduvia-shared-surface);color:var(--eduvia-shared-ink);box-shadow:none;}
html[data-eduvia-product="pendidikan"].eduvia-dashboard-ready
  :is(.hero-panel, .dashboard-hero, .welcome-panel)
  :is(h1, h2, h3, p, span, small, b){color:inherit;-webkit-text-fill-color:currentColor!important;}
html[data-eduvia-product="pendidikan"].eduvia-dashboard-ready
  :is(.stats, .summary-grid)
  :is(.stat, .summary-card){padding:13px!important;border:1px solid var(--eduvia-shared-line);border-radius:15px;background:var(--eduvia-shared-surface);box-shadow:none;}
/* Keyboard sizing only; shared eduvia-ui.css owns student modal presentation. */
html[data-portal-brand="siswa"].portal-mobile-keyboard-open [data-eduvia-modal-root]{height:var(--portal-form-visible-height,100dvh)!important;align-items:flex-start!important;}
html[data-portal-brand="siswa"].portal-mobile-keyboard-open [data-eduvia-modal-surface]{max-height:calc(var(--portal-form-visible-height,100dvh) - 24px)!important;overflow-y:auto!important;}

@media (max-width: 640px){html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] main{width:100%!important;padding-inline:14px!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .selector{padding:16px 0!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .selector-head{margin-bottom:10px!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"]
    .selector-head
    :is(p, .secure-status){display:none!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-grid{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;align-items:stretch!important;gap:12px!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-card{min-width:0!important;min-height:0!important;aspect-ratio:1 / 1!important;padding:8px 6px!important;border:1px solid #e2eaf3;border-radius:var(--radius-4xl,22px);background:var(--theme-surface,#fff);box-shadow:0 9px 24px rgba(8, 48, 110, 0.08);display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;overflow:hidden!important;text-align:center!important;transform:none!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-card .card-top{display:flex!important;width:100%!important;align-items:center!important;justify-content:center!important;margin:0!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-card .portal-icon{display:grid!important;width:min(82%, 168px)!important;height:auto!important;aspect-ratio:1 / 1!important;flex:0 0 auto!important;margin:0!important;border:1px solid rgba(7, 142, 232, 0.12);border-radius:clamp(var(--radius-3xl,20px), 6vw, 32px);background:linear-gradient(145deg, var(--theme-surface,#fff), #f2f8fd);box-shadow:0 7px 18px rgba(8, 48, 110, 0.09);}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"]
    .portal-card
    .portal-icon
    .portal-art{display:block!important;inset:-6px!important;width:auto!important;height:auto!important;background-size:200% 200%!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-card .portal-copy{display:block!important;width:100%!important;min-width:0!important;margin:0!important;text-align:center!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"] .portal-card .portal-copy h2{margin:0!important;color:var(--eduvia-shared-ink);font-size:clamp(12px, 3.5vw, 15px);font-weight:750;line-height:1.22;text-align:center!important;text-wrap:balance!important;}
html[data-eduvia-product="pendidikan"][data-eduvia-portal="pemilih"]
    .portal-card
    :is(.number, .enter, .portal-copy small, .portal-copy p){display:none!important;}
html[data-eduvia-portal="guru"]
    .portal-guru-dashboard
    > .portal-school-report-gradient{padding:16px!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metrics{grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:8px!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric{min-height:62px!important;padding:10px!important;grid-template-columns:30px minmax(0, 1fr)!important;gap:8px!important;}
html[data-eduvia-portal="guru"] .eduvia-dashboard-metric > :first-child{width:30px!important;height:30px!important;min-width:30px!important;}
html[data-eduvia-portal="guru"]
    .eduvia-dashboard-metric
    > :last-child
    > p:first-child{font-size:18px;}
}
html.portal-play-consumption-only .play-purchase-only,
    html.portal-play-consumption-only .portal-play-purchase-overlay,
    html.portal-play-consumption-only .school-payment,
    html.portal-play-consumption-only .foundation-qris-payment,
    html.portal-play-consumption-only .subscription-upgrade-grid,
    html.portal-play-consumption-only #quoteForm,
    html.portal-play-consumption-only #foundationSubscriptionForm,
    html.portal-play-consumption-only #paySchoolPlan,
    html.portal-play-consumption-only #sendSchoolPayment,
    html.portal-play-consumption-only #submitFoundationQris,
    html.portal-play-consumption-only #openUpgradeFromModal,
    html.portal-play-consumption-only .qris-wrap,
    html.portal-play-consumption-only img[src*="qris-eduvia-payment-v153"],
    html.portal-play-consumption-only img[src*="qris-digital-network"]{display:none!important;}
html.portal-play-consumption-only [data-play-purchase-control="hidden"]{display:none!important;}
html.portal-play-consumption-only [data-play-purchase-control="status"]{cursor:default!important;}
#portalPlayAccessNotice{position:fixed;inset:0;z-index:2147483647;display:grid;place-items:center;padding:20px;background:rgba(15, 23, 42, .58);}
#portalPlayAccessNotice[hidden]{display:none!important;}
#portalPlayAccessNotice > div{width:min(100%, 390px);padding:24px;border-radius:var(--radius-5xl,24px);background:var(--theme-surface,#fff);box-shadow:0 24px 70px rgba(15, 23, 42, .28);text-align:center;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
#portalPlayAccessNotice strong{display:block;color:var(--theme-text,#0a2342);font-size:19px;}
#portalPlayAccessNotice p{margin:10px 0 18px;color:var(--theme-text-muted,#60758d);font-size:14px;line-height:1.6;}
#portalPlayAccessNotice button{width:100%;min-height:46px;border:0;border-radius:var(--radius-lg,14px);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font-weight:800;}
#portal-notification-permission-v78{position:fixed;top:auto;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));left:auto;z-index:2147483000;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:11px;width:min(440px,calc(100vw - 32px));height:auto;min-height:0;max-height:none;margin:0;padding:13px 14px;overflow:visible;background:var(--theme-surface,#fff);color:#152238;border:1px solid #d9e4e1;border-radius:var(--radius-2xl,18px);box-shadow:0 18px 55px rgba(15,23,42,.22);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:left;}
#portal-notification-permission-v78>span{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:var(--radius-md-lg,12px);background:var(--theme-primary-soft,#f0f8ff);font-size:20px;}
#portal-notification-permission-v78>div{min-width:0;flex:1;}
#portal-notification-permission-v78 b{display:block;font-size:14px;line-height:1.3;}
#portal-notification-permission-v78 small{display:block;margin-top:3px;color:var(--theme-text-muted,#60758d);font-size:11.5px;line-height:1.4;}
#portal-notification-permission-v78 button{border:0;cursor:pointer;font:800 12px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
#portal-notification-permission-v78 [data-enable-notification]{padding:10px 12px;border-radius:11px;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);}
#portal-notification-permission-v78 [data-dismiss-notification]{padding:8px;background:transparent;color:var(--theme-text-muted,#60758d);font-size:19px;}
#portal-global-notification-v78{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));top:auto;left:auto;z-index:2147483001;display:flex;align-items:center;gap:12px;width:min(520px,calc(100vw - 36px));max-width:calc(100vw - 36px);min-width:0;box-sizing:border-box;padding:14px 46px 14px 16px;overflow:hidden;background:var(--theme-surface,#fff);color:#172033;border:1px solid #dce7e4;border-radius:18px;box-shadow:0 18px 48px rgba(15,23,42,.20);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;}
#portal-global-notification-v78.is-visible{opacity:1;transform:translateY(0);}
#portal-global-notification-v78.is-actionable{pointer-events:auto;cursor:pointer;}
#portal-global-notification-v78.is-closable{pointer-events:auto;}
#portal-global-notification-v78>span{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:#e8f4ff;color:#0756a5;font-weight:900;}
#portal-global-notification-v78[data-type="error"]>span{background:#fee2e2;color:#b91c1c;}
#portal-global-notification-v78[data-type="warning"]>span{background:#fef3c7;color:#b45309;}
#portal-global-notification-v78 [data-notification-image]{width:68px;height:52px;max-width:26vw;flex:0 0 auto;border-radius:11px;object-fit:contain;background:#f3f6f8;}
#portal-global-notification-v78>div{min-width:0;flex:1 1 auto;overflow:hidden;}
#portal-global-notification-v78 b{display:block;max-width:100%;font-size:14px;line-height:1.35;color:#172033;white-space:normal;overflow-wrap:anywhere;word-break:break-word;}
#portal-global-notification-v78 p{margin:3px 0 0;max-width:100%;color:#64748b;font-size:12px;line-height:1.45;white-space:normal;overflow-wrap:anywhere;word-break:break-word;}
#portal-global-notification-v78 .portal-global-notification-close{position:absolute;top:9px;right:9px;width:30px;height:30px;display:grid;place-items:center;padding:0;border:0;border-radius:10px;background:#f1f5f9;color:#475569;font:700 20px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;pointer-events:auto;}
#portal-global-notification-v78 .portal-global-notification-close:hover{background:#e2e8f0;color:#0f172a;}
#portal-global-notification-v78 .portal-global-notification-close[hidden]{display:none!important;}
@media (max-width:640px){#portal-global-notification-v78{top:calc(10px + env(safe-area-inset-top));bottom:auto;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));width:auto;max-width:none;padding:12px 43px 12px 13px;gap:10px;border-radius:16px;transform:translateY(-12px);}#portal-global-notification-v78.is-visible{transform:translateY(0);}#portal-global-notification-v78>span{width:36px;height:36px;}#portal-global-notification-v78 [data-notification-image]{width:56px;height:44px;max-width:22vw;}#portal-global-notification-v78 b{font-size:13px;}#portal-global-notification-v78 p{font-size:11.5px;line-height:1.4;}#portal-global-notification-v78 .portal-global-notification-close{top:8px;right:8px;width:28px;height:28px;font-size:18px;}}
@media (max-width:640px){#portal-notification-permission-v78{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));width:calc(100vw - 20px);padding:11px;}
#portal-notification-permission-v78>span{display:none;}
#portal-notification-permission-v78 [data-enable-notification]{padding:9px 10px;}}
.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none;}
.hide-scrollbar::-webkit-scrollbar{display:none;}
.pb-safe{padding-bottom:env(safe-area-inset-bottom);}

/* EDUVIA Portal Siswa — CANONICAL NAVIGATION STYLE V46
   Satu sumber visual untuk logo, sidebar/menu desktop, drawer mobile, dan dock mobile.
   Disamakan dengan treatment Portal Guru v114. Jangan tambahkan override nav baru di bawah blok ini. */
html[data-portal-brand="siswa"] body #root
  [data-student-sidebar-brand-v44="1"]{box-sizing:border-box!important;position:relative!important;display:flex!important;align-items:center!important;min-width:0!important;}
html[data-portal-brand="siswa"] body #root
  [data-student-sidebar-brand-v44="1"] > :not(.student-sidebar-brand-lockup-v45):not(.student-sidebar-close-v44){display:none!important;}
html[data-portal-brand="siswa"] body #root .student-sidebar-brand-lockup-v45{box-sizing:border-box!important;display:flex!important;align-items:center!important;width:100%!important;min-width:0!important;overflow:hidden!important;}
html[data-portal-brand="siswa"] body #root .student-sidebar-brand-lockup-v45 > img{display:block!important;flex:0 1 205px!important;width:min(205px,100%)!important;height:auto!important;min-width:0!important;max-width:100%!important;max-height:64px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;object-fit:contain!important;object-position:left center!important;}
html[data-portal-brand="siswa"] body #root .student-sidebar-close-v44{display:none!important;}

@media (min-width:768px){
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] > [data-student-sidebar-brand-v44="1"]{padding:24px 24px 20px!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop{box-sizing:border-box!important;padding:16px!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a){position:relative!important;isolation:isolate!important;overflow:hidden!important;border:1.5px solid var(--pp-menu-control-border)!important;border-radius:15px!important;background:var(--pp-menu-control-pale)!important;color:var(--pp-menu-control-text)!important;-webkit-text-fill-color:var(--pp-menu-control-text)!important;box-shadow:inset 6px 0 0 var(--pp-menu-control-border)!important;font-weight:700!important;transform:none!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a)::before,
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a)::after{content:none!important;display:none!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a):is(:hover,:focus-visible,.active,.selected,.is-active,.bg-blue-500,.bg-blue-50,.text-blue-500,.text-blue-600,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"],[data-active="true"]){border-color:var(--pp-menu-control-border)!important;background:var(--pp-menu-control-green)!important;color:var(--theme-surface,#fff)!important;-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:inset 7px 0 0 var(--pp-menu-control-dark),0 10px 22px var(--tone-60e09799,rgba(0, 111, 209, .18))!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a):focus-visible{outline:none!important;box-shadow:inset 7px 0 0 var(--pp-menu-control-dark),0 10px 22px var(--tone-60e09799,rgba(0, 111, 209, .18)),var(--pp-menu-control-focus)!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a) :is(span,b,small,p,svg,i,.nav-icon){color:inherit!important;-webkit-text-fill-color:currentColor!important;}
  html[data-portal-brand="siswa"] body #root .portal-nav-desktop > :is(button,a) > svg{display:block!important;flex:0 0 20px!important;width:20px!important;height:20px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:none!important;color:inherit!important;-webkit-text-fill-color:currentColor!important;stroke:currentColor!important;}
}

@media (max-width:767px){
  html[data-portal-brand="siswa"] body.student-menu-open-v44{overflow:hidden!important;}
  html[data-portal-brand="siswa"] body #root header[data-student-mobile-header-v44="1"]{box-sizing:border-box!important;position:sticky!important;top:0!important;z-index:70!important;display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;width:100%!important;height:68px!important;min-height:68px!important;padding:0 12px!important;border-bottom:1px solid #e3ecf5!important;background:rgba(255,255,255,.96)!important;box-shadow:0 5px 22px rgba(8,48,110,.035)!important;overflow:visible!important;}
  html[data-portal-brand="siswa"] body #root header[data-student-mobile-header-v44="1"] > :not([data-student-menu-toggle-v44]):not([data-student-mobile-actions-v44]){display:none!important;}
  html[data-portal-brand="siswa"] body #root .student-menu-toggle-v44{box-sizing:border-box!important;display:grid!important;flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;place-items:center!important;margin:0!important;padding:0!important;border:1px solid var(--theme-primary,#078ee8)!important;border-left-width:2px!important;border-radius:13px!important;background:var(--tone-f8fbff,#f8fbff)!important;color:var(--theme-primary-strong,#173f70)!important;box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8),0 6px 17px rgba(8,48,110,.06)!important;}
  html[data-portal-brand="siswa"] body #root .student-menu-toggle-v44 svg{width:22px!important;height:22px!important;padding:0!important;color:currentColor!important;stroke:currentColor!important;}
  html[data-portal-brand="siswa"] body #root [data-student-mobile-actions-v44="1"]{display:flex!important;flex:1 1 auto!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;min-width:0!important;width:auto!important;}
  html[data-portal-brand="siswa"] body #root [data-student-mobile-actions-v44="1"] > :not([data-student-header-visible-v44]){display:none!important;}
  html[data-portal-brand="siswa"] [data-student-header-visible-v44="download"]{order:1!important;}
  html[data-portal-brand="siswa"] [data-student-header-visible-v44="card"]{order:2!important;}
  html[data-portal-brand="siswa"] [data-student-header-visible-v44="notification"]{order:3!important;}
  html[data-portal-brand="siswa"] [data-student-header-visible-v44="profile"]{order:4!important;}
  html[data-portal-brand="siswa"] [data-student-header-visible-v44="profile-layer"]{order:5!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"]{box-sizing:border-box!important;display:inline-flex!important;flex:0 0 42px!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-desktop{display:none!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-mobile{display:inline-flex!important;width:42px!important;height:42px!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-trigger{box-sizing:border-box!important;display:grid!important;place-items:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;border:1px solid var(--theme-primary,#078ee8)!important;border-left-width:2px!important;border-radius:13px!important;background:var(--tone-f8fbff,#f8fbff)!important;color:var(--theme-primary-strong,#173f70)!important;box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8)!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-trigger svg{width:20px!important;height:20px!important;color:currentColor!important;stroke:currentColor!important;}
  html[data-portal-brand="siswa"] body #root :is([data-student-header-visible-v44="card"],[data-student-header-visible-v44="profile"],[data-student-header-visible-v44="notification"] > button,[data-student-header-visible-v44="notification"] button){box-sizing:border-box!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;border:1px solid var(--theme-primary,#078ee8)!important;border-left-width:2px!important;border-radius:13px!important;background:var(--tone-f8fbff,#f8fbff)!important;color:var(--theme-primary-strong,#173f70)!important;box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8)!important;}
  html[data-portal-brand="siswa"] body #root [data-student-header-visible-v44="profile"]{overflow:hidden!important;border-color:#d4e4f3!important;background:#eaf4ff!important;}
  html[data-portal-brand="siswa"] body #root :is([data-student-header-visible-v44="card"],[data-student-header-visible-v44="profile"],[data-student-header-visible-v44="notification"] button) svg{width:20px!important;height:20px!important;color:currentColor!important;stroke:currentColor!important;}

  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"]{box-sizing:border-box!important;position:fixed!important;inset:0 auto 0 0!important;z-index:2147483202!important;display:flex!important;flex-direction:column!important;width:min(286px,calc(100vw - 34px))!important;height:100dvh!important;min-height:100dvh!important;padding:22px 16px max(18px,env(safe-area-inset-bottom))!important;overflow:hidden!important;border:0!important;border-right:1px solid #e2ebf4!important;background:var(--theme-surface,#fff)!important;box-shadow:18px 0 50px rgba(8,48,110,.20)!important;transform:translate3d(-105%,0,0)!important;overscroll-behavior:contain!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"].student-sidebar-open-v44{transform:translate3d(0,0,0)!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] > [data-student-sidebar-brand-v44="1"]{min-height:66px!important;padding:0 50px 20px 4px!important;}
  html[data-portal-brand="siswa"] body #root .student-sidebar-close-v44{position:absolute!important;top:2px!important;right:0!important;display:grid!important;place-items:center!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;margin:0!important;padding:0!important;border:1px solid #dce8f3!important;border-radius:var(--radius-md-lg,12px)!important;background:var(--tone-f7faff,#f7faff)!important;color:#31506f!important;box-shadow:none!important;}
  html[data-portal-brand="siswa"] body #root .student-sidebar-close-v44 svg{width:19px!important;height:19px!important;stroke:currentColor!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop{display:grid!important;flex:1 1 auto!important;align-content:start!important;gap:7px!important;min-height:0!important;margin:12px -12px 0 0!important;padding:0 12px 12px 0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;scrollbar-width:thin!important;scrollbar-color:#b9d8ee transparent!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop::-webkit-scrollbar{width:5px!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop::-webkit-scrollbar-track{background:transparent!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop::-webkit-scrollbar-thumb{border-radius:var(--radius-pill,999px)!important;background:#b9d8ee!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop > button{box-sizing:border-box!important;display:flex!important;align-items:center!important;gap:11px!important;width:100%!important;min-width:0!important;min-height:46px!important;margin:0!important;padding:0 13px!important;overflow:hidden!important;border:1px solid var(--theme-primary,#078ee8)!important;border-left-width:2px!important;border-radius:var(--radius-md-lg,12px)!important;background:var(--tone-f8fbff,#f8fbff)!important;color:var(--theme-primary-strong,#173f70)!important;-webkit-text-fill-color:currentColor!important;box-shadow:inset 3px 0 0 var(--theme-primary,#078ee8),0 7px 16px var(--tone-ec408d0f)!important;font:inherit!important;font-size:12px!important;font-weight:800!important;text-align:left!important;cursor:pointer!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop > button:is(:hover,:focus-visible,.active,.bg-blue-500,.bg-blue-50,.text-blue-500,.text-blue-600,[aria-current="page"],[aria-selected="true"]){border-color:var(--tone-0068b8)!important;background:var(--theme-primary,#078ee8)!important;color:var(--theme-surface,#fff)!important;-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:inset 3px 0 0 var(--theme-primary-strong,#173f70),0 10px 22px var(--tone-e9ed6e94)!important;}
  html[data-portal-brand="siswa"] body #root aside[data-student-mobile-sidebar-v44="1"] .portal-nav-desktop > button > svg{display:block!important;flex:0 0 19px!important;width:19px!important;height:19px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;filter:none!important;color:currentColor!important;-webkit-text-fill-color:currentColor!important;stroke:currentColor!important;}
  html[data-portal-brand="siswa"] body > .student-sidebar-backdrop-v44{position:fixed!important;inset:0!important;z-index:2147483201!important;display:none!important;width:100%!important;height:100%!important;padding:0!important;border:0!important;border-radius:0!important;background:rgba(13,33,51,.38)!important;}
  html[data-portal-brand="siswa"] body > .student-sidebar-backdrop-v44.show{display:block!important;}

  html[data-portal-brand="siswa"] body #root .student-mobile-nav.portal-nav-mobile[data-student-dock-v44="1"]{box-sizing:border-box!important;position:fixed!important;right:0!important;bottom:0!important;left:0!important;z-index:90!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important;gap:6px!important;width:100%!important;height:auto!important;min-height:78px!important;padding:7px 7px max(7px,env(safe-area-inset-bottom))!important;overflow:visible!important;border:0!important;border-top:1px solid #d8e5f1!important;background:rgba(247,250,255,.98)!important;box-shadow:0 -12px 30px rgba(8,48,110,.09)!important;visibility:visible!important;opacity:1!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > :not([data-student-dock-visible-v44]){display:none!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44]{box-sizing:border-box!important;display:flex!important;flex:1 1 auto!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;min-width:0!important;min-height:56px!important;margin:0!important;padding:5px 3px!important;overflow:hidden!important;border:1px solid var(--theme-primary,#078ee8)!important;border-left-width:2px!important;border-radius:var(--radius-lg,14px)!important;background:var(--theme-surface,#fff)!important;color:var(--theme-primary-strong,#173f70)!important;-webkit-text-fill-color:currentColor!important;box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8),0 5px 13px rgba(8,48,110,.06)!important;font-size:0!important;font-weight:800!important;line-height:1.1!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44]::after{content:attr(data-student-dock-label-v44)!important;display:block!important;max-width:100%!important;overflow:hidden!important;color:inherit!important;-webkit-text-fill-color:currentColor!important;font-size:8.5px!important;font-weight:800!important;line-height:1.1!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44] svg{width:18px!important;height:18px!important;padding:0!important;color:currentColor!important;stroke:currentColor!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44].student-dock-active-v44{border-color:var(--tone-0068b8)!important;background:var(--theme-primary,#078ee8)!important;color:var(--theme-surface,#fff)!important;-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:inset 3px 0 0 var(--theme-primary-strong,#173f70),0 7px 16px var(--tone-ff05dd1e)!important;}
  html[data-portal-brand="siswa"] body.student-menu-open-v44 #root .student-mobile-nav[data-student-dock-v44="1"]{visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
}

@media (max-width:380px){
  html[data-portal-brand="siswa"] body #root header[data-student-mobile-header-v44="1"]{gap:6px!important;padding-inline:8px!important;}
  html[data-portal-brand="siswa"] body #root .student-menu-toggle-v44,
  html[data-portal-brand="siswa"] body #root :is([data-student-header-visible-v44="card"],[data-student-header-visible-v44="profile"],[data-student-header-visible-v44="notification"] > button){width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;border-radius:var(--radius-md-lg,12px)!important;}
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"],
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-mobile,
  html[data-portal-brand="siswa"] body #root #portalAppDownloadHost[data-student-header-visible-v44="download"] .portal-app-download-trigger{flex-basis:38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important;border-radius:var(--radius-md-lg,12px)!important;}
  html[data-portal-brand="siswa"] body #root [data-student-mobile-actions-v44="1"]{gap:5px!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"]{gap:4px!important;padding-inline:4px!important;}
  html[data-portal-brand="siswa"] body #root .student-mobile-nav[data-student-dock-v44="1"] > [data-student-dock-visible-v44]{min-height:54px!important;padding-inline:2px!important;border-radius:var(--radius-md-lg,12px)!important;}
}


/* Student summaries v114ZS — canonical flat lists, consistent content gutters. */
#root .student-study{display:grid;gap:16px;min-width:0;color:#18324e;--student-content-gutter:18px;}
#root .student-study h2,#root .student-study h3{margin:0;color:#18324e;-webkit-text-fill-color:#18324e;font-weight:800;}
#root .student-study h2{font-size:20px;}#root .student-study h3{font-size:15px;}
#root .student-study p{margin:5px 0;color:#52667b;-webkit-text-fill-color:#52667b;line-height:1.6;}
#root .student-study-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;}
#root .student-study-heading p{font-size:13px;}
#root .student-study label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#52667b;min-width:130px;max-width:100%;}
#root .student-study select{min-height:42px;width:100%;max-width:260px;padding:9px 30px 9px 12px;border:1px solid #cbdbe8;border-radius:10px;background:#fff;color:#18324e;font:inherit;}
#root .student-study-filters{display:flex;flex-wrap:wrap;gap:10px;}
#root .student-study-panel{box-sizing:border-box;width:100%;min-width:0;padding:var(--student-content-gutter);border:1px solid #dce6ee;border-radius:16px;background:#fff;box-shadow:none;}
#root .student-study summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:36px;cursor:pointer;font-weight:800;color:#18324e;list-style:none;}
#root .student-study summary::after{content:"+";font-size:20px;margin-left:auto;}#root .student-study details[open]>summary::after{content:"−";}
#root .student-study summary small{margin-left:10px;color:#0874b8;font-size:11px;}
#root .student-study details[open]>summary{margin-bottom:14px;}
#root .student-attendance-overview{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2fr);gap:14px;}
#root .student-attendance-percent{display:grid;align-content:center;gap:8px;padding:22px;border:1px solid #c9e4f5;border-radius:18px;background:#eff8ff;color:#18324e;}
#root .student-attendance-percent strong{font-size:38px;line-height:1.15;}#root .student-attendance-percent span{font-size:12px;}
#root .student-study-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
#root .student-study-metric{display:flex;flex-direction:column;gap:7px;justify-content:center;min-width:0;padding:18px;border:1px solid #dce6ee;border-radius:16px;background:#fff;}
#root .student-study-metric strong{font-size:27px;line-height:1.2;color:#18324e;-webkit-text-fill-color:#18324e;}
#root .student-study-metric span,#root .student-study-metric small{font-size:12px;color:#52667b;-webkit-text-fill-color:#52667b;overflow-wrap:anywhere;}
#root .student-study .student-study-note{font-size:12px;margin:0;color:#52667b;}
#root .student-study-table-wrap{width:100%;min-width:0;overflow:auto;border:0;border-radius:0;background:transparent;box-shadow:none;}
#root .student-study table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;}
#root .student-study caption{padding:0 0 10px;text-align:left;font-size:12px;color:#52667b;}
#root .student-study th,#root .student-study td{padding:12px 10px;border-bottom:1px solid #e5edf4;text-align:left;vertical-align:top;white-space:normal;color:#18324e;-webkit-text-fill-color:#18324e;}
#root .student-study th{font-size:12px;}#root .student-study td small{display:block;margin-top:4px;color:#52667b;}
#root .student-study th:first-child,#root .student-study td:first-child{min-width:110px;}
#root .student-status{display:inline-block;padding:4px 9px;border-radius:7px;font-size:12px;font-weight:800;background:#edf4fa;color:#22496b;white-space:nowrap;}
#root .student-status-H{background:#eaf8ef;color:#19643b;}#root .student-status-A{background:#fff0f0;color:#a62a35;}
#root .student-study-pager{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;font-size:12px;color:#52667b;}
#root .student-study-pager>div{display:flex;align-items:center;gap:9px;}
#root .student-study button{min-height:40px;padding:8px 12px;border:1px solid #cbdbe8;border-radius:10px;background:#fff;color:#18324e;-webkit-text-fill-color:#18324e;font:inherit;font-size:12px;font-weight:800;cursor:pointer;box-shadow:none;}
#root .student-study button:disabled{opacity:.45;cursor:default;}#root .student-study :is(button,select,summary):focus-visible{outline:2px solid #086bab;outline-offset:3px;}
#root .student-study-tabs{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:3px 2px 8px;}
#root .student-study-tabs button{flex:0 0 auto;white-space:nowrap;}
#root .student-study-tabs button span{display:inline-block;margin-left:8px;font-size:11px;opacity:.85;}
#root .student-study-tabs button.is-selected{background:#087dcc;border-color:#087dcc;color:#fff;-webkit-text-fill-color:#fff;}
#root .student-study-tabs button.is-selected span{color:inherit;-webkit-text-fill-color:inherit;}
#root .student-assessment-row{display:flex;justify-content:space-between;align-items:center;gap:16px;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:16px 0;border:0;border-bottom:1px solid #e5edf4;border-radius:0;background:transparent;box-shadow:none;}
#root .student-assessment-row:first-child{padding-top:0;}#root .student-assessment-row:last-child{border-bottom:0;padding-bottom:0;}#root .student-assessment-row>div:first-child{min-width:0;overflow-wrap:anywhere;}
#root .student-assessment-row h3{margin-top:5px;}#root .student-assessment-row small,#root .student-assessment-row p{font-size:12px;}
#root .student-assessment-row>button{flex:0 0 auto;}
#root .student-assessment-score{display:grid;gap:4px;min-width:88px;padding:10px;border-radius:12px;background:#eff8ff;text-align:center;}
#root .student-assessment-score strong{font-size:23px;color:#086bab;-webkit-text-fill-color:#086bab;}
#root .student-schedule-row{display:flex;gap:18px;align-items:center;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:14px 0;border:0;border-top:1px solid #e5edf4;border-radius:0;background:transparent;box-shadow:none;}#root .student-schedule-row:last-child{padding-bottom:0;}#root .student-schedule-row>div{min-width:0;overflow-wrap:anywhere;}
#root .student-schedule-row time{flex:0 0 115px;font-size:13px;font-weight:800;color:#086bab;}#root .student-schedule-row time small{display:block;font-size:11px;color:#52667b;}
#root .student-schedule-row p{font-size:12px;}
#root .student-progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
#root .student-progress-trend{display:grid;gap:16px;margin-top:16px;}
#root .student-progress-month{display:grid;grid-template-columns:minmax(100px,1fr) repeat(2,minmax(0,2fr));align-items:center;gap:18px;font-size:12px;}
#root .student-progress-month>div{display:grid;gap:5px;}#root .student-progress-month small{color:#52667b;}
#root .student-study progress{display:block;width:100%;height:9px;border:0;border-radius:9px;overflow:hidden;accent-color:#087dcc;background:#e2edf5;}
#root .student-study progress::-webkit-progress-bar{background:#e2edf5;}#root .student-study progress::-webkit-progress-value{background:#087dcc;border-radius:9px;}
#root .student-study progress::-moz-progress-bar{background:#087dcc;}
#root .student-study-empty{padding:20px 0;font-size:13px;}
#root .student-profile-initials{display:flex;align-items:center;justify-content:center;background:#eff8ff;color:#086bab;font-weight:800;flex-shrink:0;}
@media(max-width:900px){#root .student-attendance-overview{grid-template-columns:1fr;}#root .student-study-metric{padding:14px;}}
@media(max-width:600px){#root .student-study-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}#root .student-progress-metrics{grid-template-columns:1fr;}#root .student-study{--student-content-gutter:16px;}#root .student-study-heading{align-items:stretch;}#root .student-study-filters{width:100%;}#root .student-study-filters>label{flex:1;min-width:0;}#root .student-study select{max-width:100%;}#root .student-progress-month{grid-template-columns:1fr 1fr;gap:8px 14px;}#root .student-progress-month>b{grid-column:1/-1;}#root .student-schedule-row{gap:12px;}#root .student-schedule-row time{flex-basis:95px;}#root .student-assessment-score{min-width:75px;}#root .student-assessment-row{flex-wrap:wrap;gap:12px;}#root .student-assessment-row>div:first-child{flex:1 1 180px;}#root .student-assessment-row>button{max-width:100%;white-space:normal;}}

/* EDUVIA V115Y — halaman Notifikasi mengikuti struktur visual Portal Guru BK */
.portal-notification-workspace-v115w{position:fixed;z-index:80;overflow:auto;background:#f9fafb;padding:30px 30px 36px;box-sizing:border-box;color:#11243f;}
.portal-notification-workspace-v115w[hidden]{display:none!important;}
.portal-notification-workspace-inner-v115w{display:grid;gap:18px;max-width:1120px;margin:0 auto;}
.portal-notification-workspace-heading-v115w{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin:0;padding:0;background:transparent;border:0;box-shadow:none;}
.portal-notification-workspace-heading-v115w span{display:block;margin:0 0 7px;color:#0b6fb8;font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;}
.portal-notification-workspace-heading-v115w h2{margin:0 0 7px;color:#17324d;font-size:30px;line-height:1.16;letter-spacing:-.035em;}
.portal-notification-workspace-heading-v115w p{margin:0;max-width:660px;color:#64748b;font-size:12px;line-height:1.7;}
.portal-notification-workspace-actions-v115w{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;}
.portal-notification-workspace-actions-v115w button{min-height:48px;padding:0 20px;border:1px solid #cbd5e1;border-radius:11px;background:#ffffff;color:#334155;font:800 11px/1.2 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 4px 0 #e2e8f0;cursor:pointer;}
.portal-notification-workspace-actions-v115w button:is(:hover,:focus-visible){background:#eef6ff;color:#1e3a5f;outline:2px solid #93c5fd;outline-offset:2px;}
.portal-notification-workspace-list-v115w{padding:8px 10px;overflow:hidden;border:1px solid #dbe5ef;border-radius:16px;background:#f8fafc;box-shadow:0 5px 0 #e2e8f0,0 14px 28px rgba(15,23,42,.06);}
.portal-notification-workspace-item-v115w{display:grid;grid-template-columns:12px minmax(0,1fr);gap:12px;width:100%;margin:0;padding:16px 14px;border:1px solid transparent;border-bottom:1px dashed #e2e8f0;border-radius:10px;background:#ffffff;text-align:left;cursor:pointer;color:#1e293b;box-shadow:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;}
.portal-notification-workspace-item-v115w:last-child{border-bottom-color:transparent;}
.portal-notification-workspace-item-v115w.unread{background:rgba(219,234,254,.72);}
.portal-notification-workspace-item-v115w.read{margin:0;padding:16px 14px;background:#f1f5f9;border-radius:10px;}
.portal-notification-workspace-item-v115w:is(:hover,:focus,:focus-visible,:active),.portal-notification-workspace-item-v115w[aria-selected="true"]{background:rgba(219,234,254,.90)!important;border-color:#93c5fd!important;color:#17324d!important;box-shadow:inset 4px 0 0 #168fdd,0 3px 0 #dbeafe!important;outline:2px solid #bfdbfe!important;outline-offset:-2px!important;transform:none!important;}
.portal-notification-workspace-dot-v115w{width:9px;height:9px;margin-top:5px;border:2px solid #dbeafe;border-radius:50%;background:#168fdd;box-shadow:0 0 0 1px #0b6fb8;}
.portal-notification-workspace-item-v115w.read .portal-notification-workspace-dot-v115w{border-color:#e2e8f0;background:#94a3b8;box-shadow:0 0 0 1px #64748b;}
.portal-notification-workspace-copy-v115w{display:grid;gap:5px;min-width:0;}
.portal-notification-workspace-copy-v115w b{display:block;color:#1e293b!important;font-size:12.5px;line-height:1.45;overflow-wrap:anywhere;}
.portal-notification-workspace-copy-v115w p{display:block!important;margin:0!important;max-width:none!important;color:#475569!important;font-size:10.8px!important;line-height:1.65!important;white-space:pre-wrap!important;overflow:visible!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;overflow-wrap:anywhere!important;word-break:break-word!important;opacity:1!important;visibility:visible!important;}
.portal-notification-workspace-copy-v115w small{display:block;color:#64748b!important;font-size:9.4px;line-height:1.45;overflow-wrap:anywhere;}
.portal-notification-workspace-item-v115w.read :is(b,p,small){color:#64748b!important;}
.portal-notification-workspace-item-v115w:is(:hover,:focus,:focus-visible,:active) :is(b,p,small),.portal-notification-workspace-item-v115w[aria-selected="true"] :is(b,p,small){color:#17324d!important;-webkit-text-fill-color:#17324d!important;}
.portal-notification-workspace-empty-v115w{padding:30px 14px;color:#64748b;text-align:center;font-size:11px;}
[data-portal-notification-menu-v115w] .nav-icon,[data-student-notification-menu-v115w] .nav-icon{width:20px;height:20px;flex:0 0 auto;}
@media(max-width:767px){.portal-notification-workspace-v115w{left:0!important;right:0!important;background:#f8fafc!important;padding:18px 14px 28px;}.portal-notification-workspace-heading-v115w{align-items:flex-start;flex-direction:column;gap:14px;}.portal-notification-workspace-actions-v115w{width:100%;justify-content:flex-start;}.portal-notification-workspace-actions-v115w button{min-height:44px;padding:0 15px;}.portal-notification-workspace-list-v115w{padding:4px 14px;border-radius:18px;background:#fff!important;}.portal-notification-workspace-item-v115w{padding:15px 3px;}.portal-notification-workspace-item-v115w.unread{background:rgba(219,234,254,.72)!important;}.portal-notification-workspace-item-v115w.read{background:#f1f5f9!important;}.portal-notification-workspace-heading-v115w h2{font-size:26px;}}


/* EDUVIA V116G — AKPD Portal Siswa CBT-style */
.portal-student-akpd-workspace-v116g{position:fixed;z-index:45;overflow:auto;background:#f7faff;color:#0f172a;}.student-akpd-shell-v116g,.student-akpd-cbt-v116g{max-width:1180px;margin:0 auto;padding:28px 28px 40px;}.student-akpd-page-head-v116g{margin-bottom:18px;}.student-akpd-page-head-v116g span,.student-akpd-cbt-head-v116g span{display:block;color:#0284c7;font-size:11px;font-weight:900;letter-spacing:.13em;}.student-akpd-page-head-v116g h2{margin:5px 0 4px;font-size:30px;}.student-akpd-page-head-v116g p{margin:0;color:#64748b;}.student-akpd-cards-v116g{display:grid;gap:14px;}.student-akpd-summary-v116g{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 20px;border:1px solid #dbe5f0;border-radius:20px;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.04);}.student-akpd-summary-main-v116g{min-width:0;}.student-akpd-scope-v116g{display:inline-block;padding:5px 9px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:10px;font-weight:900;}.student-akpd-summary-v116g h3{margin:9px 0 4px;font-size:18px;}.student-akpd-summary-v116g p{margin:0 0 8px;color:#64748b;line-height:1.55;}.student-akpd-summary-v116g small{color:#94a3b8;}.student-akpd-summary-action-v116g{display:grid;gap:8px;justify-items:end;flex:0 0 auto;}.student-akpd-summary-action-v116g>b{font-size:11px;color:#64748b;}.student-akpd-summary-action-v116g button,.student-akpd-cbt-head-v116g>button,.student-akpd-question-panel-v116g footer button{border:1px solid #bae6fd;border-radius:12px;background:#fff;color:#0369a1;font-weight:900;padding:10px 14px;cursor:pointer;}.student-akpd-summary-action-v116g button:hover,.student-akpd-cbt-head-v116g>button:hover{background:#f0f9ff;}.student-akpd-empty-v116g{padding:34px;text-align:center;color:#64748b;}.student-akpd-cbt-head-v116g{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:18px;padding:15px 17px;border:1px solid #dbe5f0;border-radius:18px;background:#fff;}.student-akpd-cbt-head-v116g h2{margin:3px 0;font-size:20px;}.student-akpd-cbt-head-v116g p{margin:0;color:#64748b;}.student-akpd-cbt-head-v116g>div:last-child{text-align:right;}.student-akpd-cbt-head-v116g>div:last-child small{color:#64748b;}.student-akpd-cbt-head-v116g>div:last-child strong{display:block;font-size:20px;color:#0369a1;}.student-akpd-cbt-grid-v116g{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:start;}.student-akpd-question-panel-v116g,.student-akpd-nav-panel-v116g{border:1px solid #dbe5f0;border-radius:20px;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.04);}.student-akpd-question-panel-v116g{padding:22px;}.student-akpd-question-meta-v116g{display:flex;justify-content:space-between;gap:12px;color:#64748b;font-size:11px;font-weight:900;}.student-akpd-question-meta-v116g b{color:#0284c7;}.student-akpd-progress-v116g{height:6px;margin:10px 0 22px;border-radius:99px;background:#e2e8f0;overflow:hidden;}.student-akpd-progress-v116g i{display:block;height:100%;background:#0ea5e9;border-radius:99px;}.student-akpd-question-panel-v116g>h3{font-size:20px;line-height:1.55;margin:0 0 18px;}.student-akpd-question-panel-v116g fieldset{border:0;padding:0;margin:0;display:grid;gap:10px;}.student-akpd-answer-v116g{display:block;border:1px solid #dbe5f0;border-radius:15px;background:#f8fafc;cursor:pointer;transition:.16s;}.student-akpd-answer-v116g:hover{border-color:#7dd3fc;background:#f0f9ff;}.student-akpd-answer-v116g.selected{border-color:#0ea5e9;background:#e0f2fe;box-shadow:0 0 0 2px rgba(14,165,233,.08);}.student-akpd-answer-v116g input{position:absolute;opacity:0;pointer-events:none;}.student-akpd-answer-v116g>span{display:flex;align-items:center;gap:12px;padding:13px 14px;}.student-akpd-answer-v116g>span>b{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#fff;border:1px solid #cbd5e1;color:#0369a1;flex:0 0 auto;}.student-akpd-answer-v116g.selected>span>b{background:#0ea5e9;color:#fff;border-color:#0ea5e9;}.student-akpd-question-panel-v116g footer{display:flex;justify-content:space-between;gap:10px;margin-top:22px;}.student-akpd-question-panel-v116g footer button.primary{margin-left:auto;background:#0284c7;color:#fff;border-color:#0284c7;}.student-akpd-question-panel-v116g footer button:disabled{opacity:.45;cursor:not-allowed;}.student-akpd-nav-panel-v116g{padding:18px;position:sticky;top:18px;}.student-akpd-nav-panel-v116g h3{margin:0 0 5px;}.student-akpd-nav-panel-v116g p{margin:0 0 14px;color:#64748b;font-size:11px;}.student-akpd-number-grid-v116g{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;}.student-akpd-number-grid-v116g button{aspect-ratio:1;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#475569;font-weight:900;cursor:pointer;}.student-akpd-number-grid-v116g button.answered{background:#dcfce7;border-color:#86efac;color:#166534;}.student-akpd-number-grid-v116g button.current{background:#0284c7;border-color:#0284c7;color:#fff;}.student-akpd-nav-summary-v116g{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;}.student-akpd-nav-summary-v116g span{padding:9px;border-radius:10px;background:#f8fafc;color:#64748b;font-size:11px;text-align:center;}.student-akpd-nav-summary-v116g b{color:#0f172a;}.student-akpd-question-panel-v116g fieldset:disabled .student-akpd-answer-v116g{cursor:default;opacity:.88;}@media(max-width:820px){.student-akpd-shell-v116g,.student-akpd-cbt-v116g{padding:18px 14px 30px;}.student-akpd-summary-v116g{align-items:flex-start;flex-direction:column;}.student-akpd-summary-action-v116g{width:100%;justify-items:stretch;}.student-akpd-summary-action-v116g button{width:100%;}.student-akpd-cbt-head-v116g{grid-template-columns:1fr;}.student-akpd-cbt-head-v116g>div:last-child{text-align:left;}.student-akpd-cbt-grid-v116g{grid-template-columns:1fr;}.student-akpd-nav-panel-v116g{position:static;order:-1;}.student-akpd-number-grid-v116g{grid-template-columns:repeat(6,1fr);}}@media(max-width:480px){.student-akpd-number-grid-v116g{grid-template-columns:repeat(5,1fr);}.student-akpd-question-panel-v116g{padding:16px;}.student-akpd-question-panel-v116g>h3{font-size:17px;}.student-akpd-question-panel-v116g footer{display:grid;grid-template-columns:1fr 1fr;}.student-akpd-question-panel-v116g footer button.primary{margin-left:0;}}


/* EDUVIA V116H — AKPD full-width mengikuti area konten Portal Siswa */
.portal-student-akpd-workspace-v116g .student-akpd-shell-v116g,.portal-student-akpd-workspace-v116g .student-akpd-cbt-v116g{width:100%;max-width:none;box-sizing:border-box;}
.portal-student-akpd-workspace-v116g .student-akpd-cbt-grid-v116g{width:100%;grid-template-columns:minmax(0,1fr) minmax(240px,290px);}
.portal-student-akpd-workspace-v116g .student-akpd-question-panel-v116g{min-width:0;}
@media(max-width:900px){.portal-student-akpd-workspace-v116g .student-akpd-cbt-grid-v116g{grid-template-columns:1fr;}.portal-student-akpd-workspace-v116g .student-akpd-nav-panel-v116g{position:static;order:-1;}}

/* EDUVIA V116I — alasan AKPD */
.student-akpd-reason-v116i{display:grid;gap:7px;margin-top:17px;padding:14px;border:1px solid #dbe5f0;border-radius:15px;background:#f8fafc;}.student-akpd-reason-v116i>span{font-size:11px;font-weight:900;color:#0f172a;}.student-akpd-reason-v116i>span b{color:#b45309;}.student-akpd-reason-v116i>span small{color:#64748b;font-weight:700;}.student-akpd-reason-v116i textarea{width:100%;box-sizing:border-box;min-height:96px;padding:11px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;resize:vertical;font:inherit;line-height:1.5;}.student-akpd-reason-v116i textarea:focus{outline:0;border-color:#38bdf8;box-shadow:0 0 0 3px rgba(14,165,233,.10);}.student-akpd-reason-v116i textarea:disabled{background:#f1f5f9;color:#475569;}

/* EDUVIA v118L — Absensi Foto Siswa */
.student-photo-attendance-card-v118l{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;margin:14px 0 18px;padding:16px 17px;border:1px solid #cfe4ef;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fcfe);box-shadow:0 10px 25px rgba(22,77,106,.07);}
.student-photo-attendance-card-v118l.is-done{border-color:#bfe5d0;background:linear-gradient(180deg,#fff,#f6fcf8);}
.student-photo-attendance-icon-v118l{display:grid;place-items:center;width:52px;height:52px;border:1px solid #b9def0;border-radius:16px;background:#eaf7fd;color:#0b80bd;box-shadow:0 5px 0 #d3ecf7;}.student-photo-attendance-card-v118l.is-done .student-photo-attendance-icon-v118l{border-color:#bde3cd;background:#ebf9f1;color:#17845b;box-shadow:0 5px 0 #d7f0e2;}.student-photo-attendance-icon-v118l svg{width:28px;height:28px;}
.student-photo-attendance-copy-v118l{min-width:0;}.student-photo-attendance-copy-v118l>span{display:block;color:#0878b6;font-size:10px;font-weight:950;letter-spacing:.12em;}.student-photo-attendance-copy-v118l h3{margin:4px 0 3px;color:#16344a;font-size:16px;font-weight:950;}.student-photo-attendance-copy-v118l p{margin:0;color:#6c808d;font-size:12px;line-height:1.5;}
.student-photo-attendance-action-v118l button{min-height:46px;padding:0 16px;border:1px solid #0b7fbe;border-radius:13px;background:#118dcc;color:#fff;font-size:12px;font-weight:950;box-shadow:0 5px 0 #086da5;cursor:pointer;}.student-photo-attendance-action-v118l button:active{transform:translateY(2px);box-shadow:0 3px 0 #086da5;}.student-photo-attendance-action-v118l>span{display:inline-flex;align-items:center;min-height:42px;padding:0 13px;border:1px solid #bce3cd;border-radius:12px;background:#edf9f2;color:#14784f;font-size:11px;font-weight:950;}
.student-photo-attendance-open-v118l{overflow:hidden!important;}
.student-photo-attendance-modal-v118l{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:14px;}
.student-photo-attendance-dialog-v118l{width:min(100%,650px);max-height:calc(100dvh - 28px);overflow:auto;}
.student-photo-attendance-dialog-v118l>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:18px 20px 15px;border-bottom:1px solid #e4edf2;}.student-photo-attendance-dialog-v118l>header span{display:block;color:#0a7bb8;font-size:10px;font-weight:950;letter-spacing:.12em;}.student-photo-attendance-dialog-v118l>header h2{margin:4px 0 3px;color:#142f44;font-size:20px;font-weight:950;}.student-photo-attendance-dialog-v118l>header p{margin:0;max-width:500px;color:#6c7e89;font-size:11.5px;line-height:1.5;}.student-photo-attendance-dialog-v118l>header button{flex:0 0 40px;width:40px;height:40px;border:1px solid #dce7ed;border-radius:12px;background:#f6f9fb;color:#536b79;font-size:20px;cursor:pointer;}
.student-photo-camera-v118l{position:relative;margin:16px 20px 12px;overflow:hidden;border-radius:20px;background:#101a22;aspect-ratio:4/3;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);}.student-photo-camera-v118l video{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);}.student-photo-face-guide-v118l{position:absolute;left:50%;top:47%;width:38%;height:58%;transform:translate(-50%,-50%);border:2px dashed rgba(255,255,255,.88);border-radius:48% 48% 44% 44%;box-shadow:0 0 0 999px rgba(0,0,0,.12);pointer-events:none;}.student-photo-camera-status-v118l{position:absolute;left:10px;right:10px;bottom:10px;padding:9px 11px;border-radius:11px;background:rgba(6,18,28,.72);backdrop-filter:blur(6px);color:#fff;font-size:10.5px;font-weight:800;text-align:center;}
.student-photo-checks-v118l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:0 20px;}.student-photo-checks-v118l span{display:flex;align-items:center;justify-content:center;min-height:39px;padding:6px 8px;border:1px solid #dce7ed;border-radius:11px;background:#f7fafb;color:#56707f;font-size:10px;font-weight:850;text-align:center;}
.student-photo-location-note-v118l{margin:11px 20px 0;padding:10px 12px;border-radius:11px;background:#eef8fd;color:#176b98;font-size:10.5px;line-height:1.5;}.student-photo-error-v118l{margin:10px 20px 0;padding:10px 12px;border-radius:11px;background:#fff1f2;color:#b42338;font-size:11px;font-weight:800;line-height:1.45;}
.student-photo-attendance-dialog-v118l>footer{display:grid;gap:9px;padding:15px 20px 20px;}.student-photo-attendance-dialog-v118l>footer button{min-height:48px;border-radius:13px;font-size:12px;font-weight:950;cursor:pointer;}.student-photo-attendance-dialog-v118l>footer button:not(.primary){border:1px solid #dce7ed;background:#f5f8fa;color:#586f7e;}.student-photo-attendance-dialog-v118l>footer .primary{border:1px solid #087bb9;background:#108bca;color:#fff;box-shadow:0 5px 0 #076ba4;}.student-photo-attendance-dialog-v118l>footer .primary:disabled{opacity:.55;cursor:wait;box-shadow:none;}
@media(max-width:640px){.student-photo-attendance-card-v118l{grid-template-columns:46px minmax(0,1fr);padding:14px;}.student-photo-attendance-icon-v118l{width:46px;height:46px;}.student-photo-attendance-action-v118l{grid-column:1/-1;}.student-photo-attendance-action-v118l button,.student-photo-attendance-action-v118l>span{width:100%;justify-content:center;box-sizing:border-box;}.student-photo-attendance-modal-v118l{padding:8px;align-items:flex-end;}.student-photo-attendance-dialog-v118l{max-height:calc(100dvh - 8px);}.student-photo-camera-v118l{margin:12px 13px 10px;}.student-photo-checks-v118l{grid-template-columns:1fr 1fr;padding:0 13px;}.student-photo-location-note-v118l,.student-photo-error-v118l{margin-left:13px;margin-right:13px;}.student-photo-attendance-dialog-v118l>footer{grid-template-columns:1fr;padding:13px;}}

/* EDUVIA v118Q — preview foto + aksi cepat dashboard */
.student-photo-camera-v118l video[hidden],.student-photo-camera-v118l img[hidden],.student-photo-camera-v118l .student-photo-face-guide-v118l[hidden]{display:none!important;}
.student-photo-camera-preview-v118q{display:block;width:100%;height:100%;object-fit:contain;background:#101a22;}
.student-photo-attendance-dialog-v118l>footer{grid-template-columns:minmax(0,.75fr) minmax(0,.9fr) minmax(0,1.2fr);}
.student-photo-attendance-dialog-v118l>footer .send{background:#087a4e;border-color:#087a4e;box-shadow:0 5px 0 #05623d;}
.student-photo-quick-v118q{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 15px;border:1px solid #cfe4ef;border-radius:20px;background:linear-gradient(180deg,#fff,#f7fbfd);box-shadow:0 8px 22px rgba(22,77,106,.06);}
.student-photo-quick-v118q.is-done{border-color:#c6e8d5;background:linear-gradient(180deg,#fff,#f5fbf7);}.student-photo-quick-v118q.is-disabled{background:#fafcfd;}
.student-photo-quick-icon-v118q{display:grid;place-items:center;width:48px;height:48px;border:1px solid #b9def0;border-radius:15px;background:#eaf7fd;color:#0b80bd;box-shadow:0 4px 0 #d3ecf7;}.student-photo-quick-v118q.is-done .student-photo-quick-icon-v118q{border-color:#bde3cd;background:#ebf9f1;color:#17845b;box-shadow:0 4px 0 #d7f0e2;}.student-photo-quick-icon-v118q svg{width:25px;height:25px;}
.student-photo-quick-v118q>div:nth-child(2){min-width:0;}.student-photo-quick-v118q>div:nth-child(2)>span{display:block;color:#0878b6;font-size:9px;font-weight:950;letter-spacing:.12em;}.student-photo-quick-v118q>div:nth-child(2)>b{display:block;margin-top:2px;color:#16344a;font-size:14px;font-weight:950;}.student-photo-quick-v118q>div:nth-child(2)>small{display:block;margin-top:2px;color:#6c808d;font-size:10.5px;line-height:1.4;}
.student-photo-quick-v118q>button{min-height:42px;padding:0 14px;border:1px solid #0b7fbe;border-radius:12px;background:#118dcc;color:#fff;font-size:10.5px;font-weight:950;cursor:pointer;box-shadow:0 4px 0 #086da5;}.student-photo-quick-v118q>button:disabled{border-color:#d8e2e8;background:#eef3f6;color:#7a8c97;box-shadow:none;cursor:default;}.student-photo-quick-v118q.is-done>button:disabled{border-color:#bee3ce;background:#eaf8f0;color:#15794f;}
@media(max-width:640px){.student-photo-attendance-dialog-v118l>footer{grid-template-columns:1fr 1fr;}.student-photo-attendance-dialog-v118l>footer [data-close-photo-attendance]{grid-column:1/-1;}.student-photo-quick-v118q{grid-template-columns:44px minmax(0,1fr);padding:13px;}.student-photo-quick-icon-v118q{width:44px;height:44px;}.student-photo-quick-v118q>button{grid-column:1/-1;width:100%;}.student-photo-quick-v118q>button:disabled{min-height:40px;}}
