/* EDUVIA V113 — Portal Guru styles. Navigasi aktif dipusatkan pada blok canonical V224/V228 di bagian akhir. */
:root{--tone-0068b8:#0068b8;--tone-00f2c544:rgba(15, 23, 42, 0.1);--tone-0284c7:#0284c7;--tone-0574be:#0574be;--tone-0875bf:#0875bf;--tone-0875d4:#0875d4;--tone-0877bb:#0877bb;--tone-0878bd:#0878bd;--tone-087ce1:#087ce1;--tone-087dc8:#087dc8;--tone-08fbeea5:rgba(7, 142, 232, 0.25);--tone-0b486a:#0b486a;--tone-142335:#142335;--tone-168eff:#168eff;--tone-168fe5:#168fe5;--tone-16a34a:#16a34a;--tone-17212b:#17212b;--tone-17263a:#17263a;--tone-17304e:#17304e;--tone-17324d:#17324d;--tone-1dff4ce9:rgba(15,23,42,.05);--tone-1e293b:#1e293b;--tone-23061588:rgba(10, 132, 255, 0.08);--tone-244d680d:#244d680d;--tone-27313c:#27313c;--tone-29b3c3a5:rgba(10, 132, 255, 0.2);--tone-3b82f6:#3b82f6;--tone-407252d1:rgba(10, 132, 255, 0.24);--tone-424e55:#424e55;--tone-4a33b320:rgba(127, 29, 29, .09);--tone-4d09289e:rgba(15,23,42,.04);--tone-526174:#526174;--tone-54b474d2:rgba(15,23,42,.025);--tone-55019fa1:rgba(255, 255, 255, 0.5);--tone-5c6631c8:rgba(15,23,42,.045);--tone-62747e:#62747e;--tone-694f5291:rgba(10, 132, 255, 0.12);--tone-6b7280:#6b7280;--tone-72542a6f:rgba(255, 255, 255, 0.8);--tone-7f81ae39:rgba(7, 142, 232, .10);--tone-84c8ff:#84c8ff;--tone-8dd433e7:rgba(15, 23, 42, .16);--tone-8f1f32:#8f1f32;--tone-9251477a:rgba(239, 68, 68, .20);--tone-9db4c3:#9db4c3;--tone-ae5def70:rgba(255,255,255,.16);--tone-b126b9e1:rgba(15, 23, 42, 0.48);--tone-b3dc579a:rgba(15, 23, 42, 0.22);--tone-cb540258:rgba(15,23,42,.25);--tone-dbe5e9:#dbe5e9;--tone-dbeafe:#dbeafe;--tone-dce7ef:#dce7ef;--tone-dfe9f0:#dfe9f0;--tone-e0eaf1:#e0eaf1;--tone-e7f2ff:#e7f2ff;--tone-e7f5ff:#e7f5ff;--tone-e8f6ff:#e8f6ff;--tone-e9ed6e94:rgba(7, 142, 232, .20);--tone-e9edef:#e9edef;--tone-eaf5fc:#eaf5fc;--tone-eaf6ff:#eaf6ff;--tone-eaf7ff:#eaf7ff;--tone-ec408d0f:rgba(15, 23, 42, .07);--tone-edf2f4:#edf2f4;--tone-edf7fd:#edf7fd;--tone-eef8ff:#eef8ff;--tone-f0d37d66:rgba(7, 142, 232, .18);--tone-f7f9fc:#f7f9fc;--tone-f7fbfe:#f7fbfe;--tone-f7fbff:#f7fbff;--tone-f8fbfd:#f8fbfd;--tone-fca5a5:#fca5a5;--tone-fecdd3:#fecdd3;--tone-fef2f2:#fef2f2;--tone-ff05dd1e:rgba(7, 142, 232, .22);--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);--eskul-green:var(--theme-primary,#078ee8);--eskul-blue-dark:var(--theme-primary-strong,#173f70);--eskul-blue-deep:var(--theme-primary-darker,#123d6b);--eskul-blue-soft:var(--theme-primary-soft,#f0f8ff);--eskul-text:var(--tone-17212b);--eskul-muted:var(--theme-text-muted,#60758d);--eskul-line:var(--tone-e5edf1,#e5edf1);--eskul-bg:#f5f8f7;--eskul-danger:var(--theme-danger-strong,#dc2626);--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);--guru-btn-blue:var(--theme-primary,#078ee8);--guru-btn-blue-dark:var(--theme-primary-strong,#173f70);--guru-btn-blue-text:var(--theme-primary-mid,#1264ad);--guru-btn-soft:var(--theme-primary-soft,#f0f8ff);--eduvia-live:#18a85b;--eduvia-live-dark:#0d8143;--eduvia-live-deep:#086936;--eduvia-live-soft:#edfff5;--eduvia-live-line:#91e2b2;--eduvia-guru-blue:var(--tone-0a84ff,#0a84ff);--eduvia-guru-blue-strong:#0071e3;--eduvia-guru-blue-soft:var(--tone-eef6ff,#eef6ff);--eduvia-guru-ink:#182230;--eduvia-guru-muted:var(--tone-667085,#667085);--eduvia-guru-line:var(--tone-00f2c544);--eduvia-guru-danger:var(--tone-8f1f32);--eduvia-guru-danger-hover:#741727;--eduvia-guru-edit:#e8750a;--eduvia-guru-edit-hover:#ca5d00;--eduvia-guru-success:#1b8f50;--eduvia-guru-shadow:0 26px 80px rgba(15, 23, 42, 0.24), 0 5px 18px var(--tone-22a296d7,rgba(15, 23, 42, 0.08));--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);
/* Mobile logout: active values consumed by the navigation controller. */
--portal-guru-logout-border:1px solid #ef4444;
--portal-guru-logout-border-left-width:2px;
--portal-guru-logout-background:#fff7f7;
--portal-guru-logout-color:#b91c1c;
--portal-guru-logout-box-shadow:inset 3px 0 0 #ef4444, 0 7px 16px rgba(127, 29, 29, .09);
}
.attendance-daily-scroll{padding-bottom:11rem!important;}
.attendance-daily-panel{flex:1;min-height:0;overflow-y:auto;padding:20px;background:#fff;border:1px solid #e4eaf1;border-radius:20px;box-shadow:0 8px 28px rgba(42,65,93,.06);}
.attendance-session-fields{padding:0 0 20px;border-bottom:1px solid #e8edf3;}
.attendance-student-list{padding-top:20px;}
.attendance-list-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-bottom:12px;}
.attendance-student-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border:0;border-top:1px solid #e8edf3;border-radius:0;background:transparent;box-shadow:none;}
.attendance-status-options{display:flex;flex-wrap:wrap;gap:6px;padding:0;background:transparent;border:0;box-shadow:none;}
.attendance-status-options>button{min-height:40px;box-shadow:none;}
@media(max-width:640px){.attendance-daily-panel{padding:16px;border-radius:16px;}.attendance-student-row{align-items:flex-start;flex-direction:column;gap:10px;}.attendance-list-heading{align-items:flex-start;flex-direction:column;gap:4px;}.attendance-status-options{width:100%;}.attendance-status-options>button{flex:1;padding-inline:10px;}}

.attendance-mobile-actions{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:80;display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, .72fr);gap:8px;padding:8px;border:1px solid rgba(226, 232, 240, .9);border-radius:var(--radius-4xl,22px);background:rgba(255, 255, 255, .94);box-shadow:0 14px 36px var(--tone-8dd433e7);}
.grading-input-scroll{padding-bottom:11rem!important;}
.grading-mobile-actions{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:80;padding:8px;border:1px solid rgba(226, 232, 240, .9);border-radius:var(--radius-4xl,22px);background:rgba(255, 255, 255, .94);box-shadow:0 14px 36px var(--tone-8dd433e7);}
@media (min-width: 768px){
.grading-input-scroll{padding-bottom:3rem!important;}
.attendance-mobile-actions{position:sticky;left:auto;right:auto;bottom:16px;z-index:10;grid-template-columns:minmax(0, 1fr) auto;padding:8px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;}
.grading-mobile-actions{position:sticky;left:auto;right:auto;bottom:16px;z-index:10;padding:8px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;}}
@media (max-width: 767px){main .animate-in.fade-in.slide-in-from-bottom-4{transform:none!important;}
.attendance-mobile-actions, .grading-mobile-actions{position:fixed!important;left:12px!important;right:12px!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;z-index:90!important;margin:0!important;}}
.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:var(--tone-da3d8a08,rgba(255,255,255,.96));border-bottom:1px solid var(--tone-eef2f7,#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-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: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){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){.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:var(--tone-da3d8a08,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 .eduvia-auth-overlay, 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);}

*, :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:var(--tone-fbbf24,#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:var(--tone-fffbeb,#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:var(--tone-e0f2fe,#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{min-height:100%;margin:0;}
body{background:#f9fafb;}
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;}}
#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);}


.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;}

}
@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 var(--tone-5c6631c8);}
.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:var(--tone-fffbeb,#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 var(--tone-5c6631c8);}
.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 var(--tone-eef2f7,#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:var(--tone-fff1f2,#fff1f2);color:var(--tone-e11d48,#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);}

.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;}















.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;}}
.portal-leave-status{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:92px!important;height:auto!important;min-height:34px!important;padding:8px 12px!important;border-radius:9px;border:1px solid transparent;border-left-width:4px!important;font-size:10px;font-weight:900;line-height:1.2;letter-spacing:.01em;text-align:center!important;box-shadow:0 4px 12px var(--tone-1dff4ce9);flex:0 0 auto!important;}
.portal-leave-status-pending{color:var(--tone-92400e,#92400e);background:var(--tone-fffbeb,#fffbeb);border-color:var(--theme-warning,#f59e0b);}
.portal-leave-status-approved{color:var(--theme-primary-strong,#173f70);background:var(--theme-primary-soft,#f0f8ff);border-color:var(--theme-primary,#078ee8);}
.portal-leave-status-rejected{color:var(--theme-danger,#b91c1c);background:var(--tone-fef2f2);border-color:var(--theme-danger-light,#ef4444);}
.portal-leave-status-cancelled{color:var(--theme-text-secondary,#50657e);background:var(--theme-surface-soft,#f7fbff);border-color:var(--theme-text-subtle,#7e90a5);}
@media (max-width:480px){.portal-leave-status{min-width:84px!important;padding:7px 10px!important;font-size:9px;}}
@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 > .attendance-student-list, .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:var(--tone-3b82f6);}
:where(button.warning,button[class*="bg-amber-"]){background:var(--tone-fffaf0,#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 var(--tone-f0d37d66);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 var(--tone-09a9070d,rgba(15,23,42,.06));}
.badge.pending{background:var(--tone-fffaf0,#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;}}
.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:var(--tone-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));}

.teacher-task-filter-tabs{display:flex;flex:0 0 auto;gap:0.5rem;max-width:100%;overflow-x:auto;padding:0.25rem 0.125rem;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.teacher-task-filter-tabs::-webkit-scrollbar{display:none;}
#root .teacher-task-filter-tab{min-width:74px;min-height:38px;padding:8px 14px;border:1px solid var(--theme-border,#d9e8f5);border-left-width:1px!important;border-radius:999px;background:var(--theme-surface,#fff);color:var(--theme-text-muted,#60758d);font-size:11px;font-weight:850;line-height:1;box-shadow:none;white-space:nowrap;}
#root .teacher-task-filter-tab:hover{transform:none;background:var(--theme-surface-soft,#f7fbff);border-color:var(--theme-primary-border-strong,#b8d9f3);color:var(--theme-primary-strong,#173f70);box-shadow:none;}
#root .teacher-task-filter-tab.is-active{background:var(--theme-primary-soft,#f0f8ff);border-color:var(--theme-primary,#078ee8);color:var(--theme-primary-strong,#173f70);box-shadow:0 5px 14px rgba(7,142,232,.12);}
#root .teacher-task-filter-tab:focus-visible{outline:3px solid rgba(7,142,232,.2);outline-offset:2px;}
@media (max-width: 767px){.teacher-task-history{display:flex!important;flex:1 1 0%!important;flex-direction:column!important;min-height:0!important;height:0!important;overflow:hidden!important;}
.teacher-task-history > :not([hidden]) ~ :not([hidden]){margin-top:0.75rem!important;}
.teacher-task-history-header{flex:0 0 auto!important;padding:0.75rem!important;}
.teacher-task-history-header h2{font-size:1rem;line-height:1.3;}
.teacher-task-history-header p{display:none!important;}
.teacher-task-filter-tabs{margin:0!important;padding:0.125rem!important;}
#root .teacher-task-filter-tab{min-width:68px;min-height:36px;padding:7px 12px;font-size:10px;}
.teacher-task-history-list{display:flex!important;flex:1 1 0%!important;min-height:0!important;height:0!important;max-height:none!important;flex-direction:column!important;gap:0.5rem!important;overflow-x:hidden!important;overflow-y:scroll!important;padding-bottom:calc(5rem + env(safe-area-inset-bottom))!important;padding-right:0.125rem!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:thin;}
.teacher-task-history-item{display:grid!important;grid-template-columns:minmax(0, 1fr) auto!important;grid-template-areas:"head head"
      "title delete"
      "meta date"
      "footer footer"!important;flex:0 0 auto!important;gap:0.25rem 0.5rem!important;padding:0.75rem!important;border-radius:0.875rem;box-shadow:0 1px 2px rgb(15 23 42 / 0.05);}
.teacher-task-history-item-head{display:contents!important;}
.teacher-task-history-tags{grid-area:head;gap:0.375rem!important;min-width:0;padding-right:2.5rem;}
.teacher-task-history-tags span{max-width:48%;overflow:hidden;padding:0.2rem 0.5rem!important;text-overflow:ellipsis;white-space:nowrap;}
.teacher-task-history-item-head > button{grid-area:delete;align-self:center;padding:0.55rem!important;}
.teacher-task-history-title{grid-area:title;min-width:0;margin:0.125rem 0 0!important;overflow:hidden;font-size:0.925rem;line-height:1.25rem;text-overflow:ellipsis;white-space:nowrap;}
.teacher-task-history-meta{grid-area:meta;min-width:0;margin:0!important;}
.teacher-task-history-date{grid-area:date;align-self:center;margin:0!important;padding-left:0.5rem;font-size:0.65rem;}
.teacher-task-history-meta span{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;}
.teacher-task-history-footer{grid-area:footer;margin-top:0.25rem!important;padding-top:0.5rem!important;}
.teacher-task-history-footer > div:first-child{overflow:hidden;font-size:0.7rem;text-overflow:ellipsis;white-space:nowrap;}
.teacher-task-history-action{padding:0.3rem 0.55rem!important;font-size:0.65rem;white-space:nowrap;}}
.teacher-open-student-scan{display:inline-flex;align-items:center;gap:7px;border:0;border-radius:9px;padding:10px 15px;background:linear-gradient(135deg, var(--theme-primary-deep,#075da9), var(--theme-primary-mid,#1264ad));color:var(--theme-surface,#fff);font-size:13px;font-weight:900;white-space:nowrap;box-shadow:0 8px 20px #006fd12e;cursor:pointer;}
#root .teacher-open-student-scan{height:auto!important;min-height:48px!important;min-width:128px!important;padding:10px 16px!important;gap:7px!important;}
#root .teacher-open-student-scan > .teacher-scan-tab-icon{display:block!important;flex:0 0 16px!important;width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important;fill:none;stroke:currentColor;}
.teacher-student-scan-modal{position:fixed;inset:0;z-index:560;padding:18px;display:flex;align-items:center;justify-content:center;}
.teacher-student-scan-dialog{width:min(980px, 100%);max-height:calc(100dvh - 36px);overflow:hidden;display:flex;flex-direction:column;}
.teacher-student-scan-dialog > header{position:static;height:auto;background:var(--theme-surface,#fff);border-bottom:1px solid var(--theme-border,#d9e8f5);padding:18px 22px;display:flex;align-items:center;justify-content:space-between;}
.teacher-student-scan-dialog > header small{display:block;color:var(--theme-primary-mid,#1264ad);font-size:9px;font-weight:900;letter-spacing:0.16em;}
.teacher-student-scan-dialog > header h2{font-size:21px;line-height:1.2;margin:3px 0 0;color:var(--theme-text,#0a2342);}
.teacher-student-scan-dialog > header p{font-size:11px;margin:3px 0 0;color:var(--theme-text-muted,#60758d);}
.teacher-student-scan-dialog > header button{width:44px;height:44px;border:1px solid var(--tone-fecaca,#fecaca);border-radius:var(--radius-pill,999px);background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);font-size:27px;font-weight:800;cursor:pointer;}
.teacher-student-scan-grid{display:grid;grid-template-columns:minmax(0, 1.35fr) minmax(270px, 0.65fr);min-height:0;overflow:hidden;}
.teacher-student-scan-view{position:relative;padding:18px;background:#020617;min-height:480px;display:flex;flex-direction:column;justify-content:center;}
.teacher-student-scan-view #teacher-student-scan-camera{width:100%;overflow:hidden;border-radius:var(--radius-3xl,20px);background:#000;aspect-ratio:1;}
.teacher-student-scan-view #teacher-student-scan-camera video{width:100%!important;height:100%!important;object-fit:cover;border-radius:var(--radius-3xl,20px);}
.teacher-student-scan-view #teacher-student-scan-camera img{display:none!important;}
.teacher-student-scan-guide{pointer-events:none;position:absolute;left:50%;top:50%;width:min(280px, 80%);height:min(280px, 80%);transform:translate(-50%, -50%);}
.teacher-student-scan-guide span{position:absolute;width:34px;height:34px;border-color:var(--tone-20a7ff,#20a7ff);}
.teacher-student-scan-guide span:nth-child(1){left:0;top:0;border-left:4px solid;border-top:4px solid;border-radius:var(--radius-md,10px) 0 0;}
.teacher-student-scan-guide span:nth-child(2){right:0;top:0;border-right:4px solid;border-top:4px solid;border-radius:0 var(--radius-md,10px) 0 0;}
.teacher-student-scan-guide span:nth-child(3){right:0;bottom:0;border-right:4px solid;border-bottom:4px solid;border-radius:0 0 var(--radius-md,10px);}
.teacher-student-scan-guide span:nth-child(4){left:0;bottom:0;border-left:4px solid;border-bottom:4px solid;border-radius:0 0 0 var(--radius-md,10px);}
.teacher-student-scan-status{margin:14px 0 0;text-align:center;font-size:11px;font-weight:800;color:var(--tone-cbd5e1,#cbd5e1);}
.teacher-student-scan-status[data-type="ready"]{color:var(--tone-84c8ff);}
.teacher-student-scan-status[data-type="loading"]{color:#fde68a;}
.teacher-student-scan-status[data-type="error"]{color:var(--tone-fca5a5);}
.teacher-student-scan-retry{display:block;margin:10px auto 0;border:0;border-radius:var(--radius-md-lg,12px);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);padding:10px 16px;font:800 12px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 8px 22px #078ee840;}
.teacher-student-scan-retry[hidden]{display:none!important;}
.teacher-student-scan-toast:not([hidden]){position:absolute;z-index:3;left:50%;transform:translateX(-50%);width:min(390px, calc(100% - 40px));background:var(--theme-primary-soft,#f0f8ff);border:1px solid var(--tone-84c8ff);border-radius:var(--radius-2xl,18px);padding:14px;box-shadow:0 20px 60px #0006;display:flex;align-items:center;gap:12px;}
.teacher-student-scan-toast[data-type="duplicate"]{background:var(--tone-fffbeb,#fffbeb);border-color:#fcd34d;}
.teacher-student-scan-toast[data-type="error"]{background:var(--tone-fef2f2);border-color:var(--tone-fca5a5);}
.teacher-scan-toast-icon{width:42px;height:42px;border-radius:var(--radius-pill,999px);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);display:grid;place-items:center;font-size:22px;font-weight:900;flex:none;}
.teacher-student-scan-toast[data-type="duplicate"] .teacher-scan-toast-icon{background:var(--theme-warning,#f59e0b);}
.teacher-student-scan-toast[data-type="error"] .teacher-scan-toast-icon{background:var(--theme-danger-light,#ef4444);}
.teacher-student-scan-toast b, .teacher-student-scan-toast strong, .teacher-student-scan-toast span{display:block;}
.teacher-student-scan-toast b{font-size:10px;color:var(--theme-primary-strong,#173f70);text-transform:uppercase;letter-spacing:0.08em;}
.teacher-student-scan-toast strong{font-size:15px;color:var(--theme-text,#0a2342);margin-top:2px;}
.teacher-student-scan-toast span{font-size:10px;color:var(--theme-text-muted,#60758d);margin-top:2px;}
.teacher-student-scan-grid > aside{min-height:0;background:var(--theme-surface,#fff);padding:18px;display:flex;flex-direction:column;}
.teacher-student-scan-today-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--theme-border,#d9e8f5);padding-bottom:13px;}
.teacher-student-scan-today-head small{font-size:8px;color:var(--theme-primary-mid,#1264ad);font-weight:900;letter-spacing:0.14em;}
.teacher-student-scan-today-head h3{font-size:15px;margin:2px 0 0;color:var(--theme-text,#0a2342);}
.teacher-student-scan-today-head > b{width:38px;height:38px;border-radius:13px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);display:grid;place-items:center;font-size:17px;}
.teacher-student-scan-grid aside ul{list-style:none;padding:0;margin:10px 0 0;overflow-y:auto;min-height:0;}
.teacher-student-scan-grid aside li{display:grid;grid-template-columns:36px 1fr auto;gap:9px;align-items:center;padding:9px 2px;border-bottom:1px solid var(--theme-surface-muted,#edf5fc);}
.teacher-student-scan-grid aside li > span{width:34px;height:34px;border-radius:11px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);display:grid;place-items:center;font-size:11px;font-weight:900;}
.teacher-student-scan-grid aside li b, .teacher-student-scan-grid aside li small{display:block;}
.teacher-student-scan-grid aside li b{font-size:11px;color:var(--theme-text,#0a2342);}
.teacher-student-scan-grid aside li small{font-size:8px;color:var(--theme-text-muted,#60758d);margin-top:2px;}
.teacher-student-scan-grid aside li time{font-size:9px;color:var(--theme-primary-mid,#1264ad);font-weight:900;}
.teacher-student-scan-grid aside li.teacher-scan-empty{display:block;text-align:center;padding:35px 10px;color:var(--theme-text-subtle,#7e90a5);font-size:11px;border:0;}
@media (max-width: 760px){.teacher-student-scan-modal{padding:0;align-items:stretch;}
.teacher-student-scan-dialog{max-height:none;height:100dvh;}
.teacher-student-scan-dialog > header{padding:14px 16px;}
.teacher-student-scan-grid{grid-template-columns:1fr;grid-template-rows:minmax(330px, 55dvh) minmax(0, 1fr);overflow-y:hidden;}
.teacher-student-scan-view{min-height:0;padding:10px;}
.teacher-student-scan-view #teacher-student-scan-camera video{max-height:41dvh;}
.teacher-student-scan-grid > aside{padding:13px 16px;overflow:hidden;}
.teacher-student-scan-guide{width:min(280px, 80%);height:min(280px, 80%);}
.teacher-open-student-scan{min-height:45px!important;min-width:118px!important;padding:9px 13px!important;font-size:11px;}}
.teacher-student-camera-switch{position:absolute;z-index:6;top:28px;right:28px;display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid rgba(255, 255, 255, 0.2);border-radius:var(--radius-pill,999px);background:rgba(2, 6, 23, 0.76);box-shadow:0 12px 34px rgba(0, 0, 0, 0.35);}
.teacher-student-camera-switch button{min-height:36px;border:0;border-radius:var(--radius-pill,999px);padding:8px 12px;background:transparent;color:var(--tone-cbd5e1,#cbd5e1);display:inline-flex;align-items:center;justify-content:center;gap:6px;font:800 11px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;white-space:nowrap;}
.teacher-student-camera-switch button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
.teacher-student-camera-switch button.is-active, .teacher-student-camera-switch button[aria-pressed="true"]{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 7px 18px rgba(7, 142, 232, 0.34);}
.teacher-student-camera-switch button:disabled{cursor:wait;opacity:0.62;}
.teacher-student-scan-modal[data-camera-facing="user"]
  #teacher-student-scan-camera video{transform:scaleX(-1);}
.teacher-student-scan-toast{top:82px;}
@media (max-width: 760px){.teacher-student-camera-switch{top:18px;right:18px;max-width:calc(100% - 36px);}
.teacher-student-camera-switch button{min-height:34px;padding:7px 10px;font-size:10px;}
.teacher-student-scan-toast{top:66px;}}
.qr-attendance-v191{background:linear-gradient(135deg, var(--theme-primary-soft,#f0f8ff) 0%, #f0fdfa 100%);border:1px solid var(--theme-primary-border-strong,#b8d9f3);border-radius:var(--radius-5xl,24px);box-shadow:0 14px 32px var(--tone-246357d5,rgba(0, 111, 209, 0.08));padding:18px;}
.qr-attendance-v191 > header{align-items:center;background:transparent;border:0;display:flex;height:auto;justify-content:space-between;padding:0 2px 14px;position:static;}
.qr-attendance-v191 > header small, .qr-attendance-v191 > header h2{display:block;margin:0;}
.qr-attendance-v191 > header small{color:var(--theme-primary-mid,#1264ad);font-size:10px;font-weight:900;letter-spacing:0.14em;}
.qr-attendance-v191 > header h2{color:var(--theme-text,#0a2342);font-size:20px;font-weight:900;margin-top:2px;}
.qr-attendance-v191 > header > span{background:var(--theme-primary-border,#d9e8f5);border-radius:var(--radius-pill,999px);color:var(--theme-primary-strong,#173f70);font-size:11px;font-weight:800;padding:7px 10px;}
.qr-attendance-v191-actions{display:grid;gap:12px;grid-template-columns:repeat(2, minmax(0, 1fr));}
.qr-attendance-v191.is-single .qr-attendance-v191-actions{grid-template-columns:minmax(0, 1fr);}
.qr-attendance-v191-action{align-items:center;background:var(--theme-surface,#fff);border:1px solid rgba(0, 52, 125, 0.12);border-radius:var(--radius-2xl,18px);color:var(--theme-text,#0a2342);cursor:pointer;display:grid;gap:12px;grid-template-columns:auto minmax(0, 1fr) auto;min-height:92px;padding:15px;text-align:left;}
.qr-attendance-v191-action:hover{border-color:var(--tone-20a7ff,#20a7ff);box-shadow:0 12px 24px rgba(0, 111, 209, 0.11);transform:translateY(-1px);}
.qr-attendance-v191-icon{align-items:center;background:var(--theme-primary-border,#d9e8f5);border-radius:var(--radius-lg,14px);color:var(--theme-primary-strong,#173f70);display:flex;height:48px;justify-content:center;width:48px;}
.qr-attendance-v191-action.is-student .qr-attendance-v191-icon{background:var(--tone-e0f2fe,#e0f2fe);color:var(--theme-primary-deep,#075da9);}
.qr-attendance-v191-icon svg{height:25px;width:25px;}
.qr-attendance-v191-copy b, .qr-attendance-v191-copy small{display:block;}
.qr-attendance-v191-copy b{font-size:14px;font-weight:900;}
.qr-attendance-v191-copy small{color:var(--theme-text-muted,#60758d);font-size:11px;font-weight:600;line-height:1.45;margin-top:4px;}
.qr-attendance-v191-cta{align-items:center;background:var(--theme-primary-mid,#1264ad);border-radius:11px;color:var(--theme-surface,#fff);display:inline-flex;font-size:11px;font-weight:900;gap:5px;padding:9px 11px;white-space:nowrap;}
.qr-attendance-v191-action.is-student .qr-attendance-v191-cta{background:var(--theme-primary-deep,#075da9);}
.qr-attendance-v191-cta i{font-size:18px;font-style:normal;line-height:0;}
@media (max-width: 767px){.qr-attendance-v191{border-radius:var(--radius-3xl,20px);padding:14px;}
.qr-attendance-v191 > header h2{font-size:18px;}
.qr-attendance-v191-actions{grid-template-columns:minmax(0, 1fr);}
.qr-attendance-v191-action{gap:10px;grid-template-columns:auto minmax(0, 1fr);min-height:88px;padding:13px;}
.qr-attendance-v191-cta{grid-column:2;justify-content:center;width:max-content;}}
.teacher-qr-launch{display:inline-flex;align-items:center;justify-content:center;gap:0.45rem;min-height:2.6rem;padding:0.65rem 1rem;border:0;border-radius:0.8rem;background:var(--theme-primary-deep,#075da9);color:var(--theme-surface,#fff);font-size:0.78rem;font-weight:800;box-shadow:0 8px 20px rgb(0 52 125 / 18%);}
.teacher-qr-launch:hover{background:#075985;}
.teacher-qr-modal[hidden]{display:none!important;}
.teacher-qr-modal{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:1rem;}
.teacher-qr-dialog{position:relative;width:min(1120px, 100%);height:min(90dvh, 860px);display:flex;flex-direction:column;overflow:hidden;}
.teacher-qr-dialog > header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.2rem 1.4rem;border-bottom:1px solid var(--theme-border,#d9e8f5);}
.teacher-qr-dialog h2{margin:0;color:var(--theme-text,#0a2342);font-size:1.2rem;font-weight:900;}
.teacher-qr-dialog header p{margin:0.25rem 0 0;color:var(--theme-text-muted,#60758d);font-size:0.78rem;}
.teacher-qr-close{width:2.5rem;height:2.5rem;border:0;border-radius:var(--radius-pill,999px);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-secondary,#50657e);font-size:1.6rem;line-height:1;}
.teacher-qr-toolbar{display:grid;grid-template-columns:minmax(220px, 1fr) minmax(150px, 220px) auto;gap:0.65rem;padding:0.9rem 1.4rem;background:var(--theme-surface-soft,#f7fbff);border-bottom:1px solid var(--theme-border,#d9e8f5);}
.teacher-qr-toolbar input, .teacher-qr-toolbar select{min-height:2.65rem;padding:0 0.85rem;border:1px solid var(--tone-cbd5e1,#cbd5e1);border-radius:0.8rem;background:var(--theme-surface,#fff);color:var(--theme-text-strong,#123d6b);font-size:0.82rem;font-weight:650;outline:none;}
.teacher-qr-toolbar input:focus, .teacher-qr-toolbar select:focus{border-color:var(--theme-primary,#078ee8);box-shadow:0 0 0 3px rgb(7 142 232 / 12%);}
.teacher-qr-download-all{min-height:2.65rem;padding:0 1rem;border:0;border-radius:0.8rem;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font-size:0.78rem;font-weight:900;}
.teacher-qr-download-all:disabled{background:var(--theme-text-subtle,#7e90a5);}
.teacher-qr-summary{display:flex;justify-content:space-between;gap:1rem;padding:0.7rem 1.4rem;color:var(--theme-text-muted,#60758d);font-size:0.75rem;border-bottom:1px solid var(--theme-surface-muted,#edf5fc);}
.teacher-qr-summary b{color:var(--theme-primary-deep,#075da9);}
.teacher-qr-summary [data-type="error"]{color:var(--theme-danger-strong,#dc2626);font-weight:700;}
.teacher-qr-summary [data-type="success"]{color:var(--theme-primary-mid,#1264ad);font-weight:700;}
.teacher-qr-list{flex:1;display:flex;flex-direction:column;gap:0.9rem;padding:1.2rem 1.4rem 2rem;overflow:auto;background:var(--theme-surface-soft,#f7fbff);}
.teacher-qr-student-row{width:100%;display:flex;align-items:center;gap:0.9rem;padding:0.85rem 1rem;border:1px solid var(--theme-border,#d9e8f5);border-radius:1rem;background:var(--theme-surface,#fff);color:inherit;text-align:left;box-shadow:0 4px 14px rgb(15 23 42 / 4%);}
.teacher-qr-student-row:hover{border-color:var(--tone-20a7ff,#20a7ff);background:var(--tone-f0fdf4,#f0fdf4);}
.teacher-qr-row-number{width:2.3rem;height:2.3rem;flex:0 0 auto;display:grid;place-items:center;border-radius:0.75rem;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);font-size:0.76rem;font-weight:900;}
.teacher-qr-row-info{min-width:0;flex:1;}
.teacher-qr-row-info strong{display:block;overflow:hidden;color:var(--theme-text,#0a2342);font-size:0.86rem;text-overflow:ellipsis;white-space:nowrap;}
.teacher-qr-row-info small{display:block;margin-top:0.2rem;color:var(--theme-text-muted,#60758d);font-size:0.7rem;}
.teacher-qr-row-action{flex:0 0 auto;color:var(--theme-primary-mid,#1264ad);font-size:0.74rem;font-weight:850;}
.teacher-qr-row-action b{margin-left:0.25rem;font-size:1.25rem;vertical-align:-0.08rem;}
.teacher-qr-empty{padding:4rem 1rem;color:var(--theme-text-subtle,#7e90a5);text-align:center;font-size:0.85rem;font-weight:700;}
.teacher-qr-empty button{display:block;margin:1rem auto 0;padding:0.7rem 1rem;border:0;border-radius:0.75rem;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font-weight:850;}
.teacher-qr-viewer[hidden]{display:none!important;}
.teacher-qr-viewer{position:absolute;inset:0;z-index:4;display:grid;place-items:center;padding:1rem;background:rgb(15 23 42 / 62%);}
.teacher-qr-viewer > section{position:relative;width:min(420px, 100%);padding:1.5rem;border-radius:1.5rem;background:var(--theme-surface,#fff);text-align:center;box-shadow:0 25px 65px rgb(15 23 42 / 35%);}
.teacher-qr-viewer-close{position:absolute;top:0.75rem;right:0.75rem;width:2.2rem;height:2.2rem;border:0;border-radius:var(--radius-pill,999px);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-secondary,#50657e);font-size:1.35rem;}
.teacher-qr-viewer-code{width:300px;max-width:calc(100vw - 6rem);margin:1.25rem auto 1rem;padding:0.6rem;border:1px solid var(--theme-border,#d9e8f5);border-radius:1rem;background:var(--theme-surface,#fff);}
.teacher-qr-viewer-code canvas, .teacher-qr-viewer-code img{width:100%!important;height:auto!important;}
.teacher-qr-viewer h3{margin:0;color:var(--theme-text,#0a2342);font-size:1.05rem;font-weight:900;}
.teacher-qr-viewer p{margin:0.35rem 0 1rem;color:var(--theme-text-muted,#60758d);font-size:0.78rem;}
.teacher-qr-viewer-download{width:100%;padding:0.8rem;border:0;border-radius:0.8rem;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font-size:0.78rem;font-weight:900;}
.teacher-qr-render-source{position:fixed;left:-10000px;top:-10000px;width:1px;height:1px;overflow:hidden;}
.teacher-qr-modal-open{overflow:hidden!important;}
@media (max-width: 700px){.teacher-qr-modal{align-items:flex-end;padding:0;}
.teacher-qr-dialog{width:100%;height:calc(100dvh - env(safe-area-inset-top));}
.teacher-qr-dialog > header{padding:1rem;}
.teacher-qr-toolbar{grid-template-columns:1fr 1fr;padding:0.75rem 1rem;}
.teacher-qr-toolbar input{grid-column:1 / -1;}
.teacher-qr-download-all{padding-inline:0.5rem;}
.teacher-qr-summary{align-items:flex-start;flex-direction:column;padding-inline:1rem;}
.teacher-qr-list{gap:0.6rem;padding:0.9rem 0.75rem 5rem;}
.teacher-qr-student-row{padding:0.75rem;gap:0.65rem;}
.teacher-qr-row-action{font-size:0;}
.teacher-qr-row-action b{font-size:1.35rem;}
.teacher-qr-launch{flex:1 1 auto;}}
.employee-profile-avatar-image{width:100%;height:100%;object-fit:cover;}
.school-employee-login-status{margin:10px 0 0!important;padding:10px 12px;border-radius:11px;background:var(--tone-eff8ff,#eff8ff);color:var(--tone-0574be);font-size:11px;font-weight:750;line-height:1.45;text-align:center;}
.school-employee-login-status[data-type="success"]{background:#ecfdf5;color:#047857;}
.school-employee-login-status[data-type="error"]{background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger-deep,#be123c);}
form:has(.school-employee-login-status) button[aria-busy="true"]{cursor:wait;opacity:0.78;}
.employee-id-card-profile-panel{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:0 0 18px;padding:15px;border:1px solid var(--theme-primary-border,#d9e8f5);border-radius:var(--radius-3xl,20px);background:linear-gradient(135deg, var(--tone-f8fbff,#f8fbff), #eef7ff);}
.employee-id-card-profile-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:var(--theme-surface,#fff);color:var(--theme-primary-mid,#1264ad);box-shadow:0 6px 18px rgb(0 52 125 / 8%);}
.employee-id-card-profile-icon svg{width:25px;height:25px;}
.employee-id-card-profile-copy b, .employee-id-card-profile-copy p{display:block;}
.employee-id-card-profile-copy b{color:var(--theme-text,#0a2342);font-size:13px;font-weight:900;}
.employee-id-card-profile-copy p{margin:3px 0 0;color:var(--theme-text-muted,#60758d);font-size:10px;line-height:1.5;}
.employee-id-card-profile-button{border:0;border-radius:var(--radius-md-lg,12px);padding:10px 14px;background:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);font-size:10px;font-weight:900;cursor:pointer;white-space:nowrap;}
.employee-id-card-profile-button:hover{background:#0059ad;}
@media (max-width: 640px){.employee-id-card-profile-panel{grid-template-columns:auto 1fr;}
.employee-id-card-profile-button{grid-column:1 / -1;width:100%;}}
.employee-profile-photo-upload{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;padding:16px;border:1px solid var(--theme-primary-border,#d9e8f5);border-radius:var(--radius-3xl,20px);background:var(--tone-f0fdf4,#f0fdf4);}
.employee-profile-photo-preview{width:92px;height:112px;display:grid;place-items:center;overflow:hidden;border:4px solid var(--theme-surface,#fff);border-radius:var(--radius-2xl,18px);background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-mid,#1264ad);box-shadow:0 8px 24px rgb(15 23 42 / 13%);font-size:12px;font-weight:900;}
.employee-profile-photo-preview img{grid-area:1 / 1;width:100%;height:100%;object-fit:cover;}
.employee-profile-photo-preview span{grid-area:1 / 1;}
.employee-profile-photo-copy b{color:var(--theme-text,#0a2342);font-size:14px;font-weight:900;}
.employee-profile-photo-copy p{margin:4px 0 10px;color:var(--theme-text-muted,#60758d);font-size:11px;line-height:1.55;}
.employee-profile-photo-picker{border-radius:11px;padding:9px 14px;background:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);font-size:11px;font-weight:900;cursor:pointer;}
.employee-profile-photo-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.employee-profile-photo-copy small{display:block;margin-top:8px;color:var(--theme-text-muted,#60758d);font-size:10px;font-weight:700;}
.employee-profile-photo-copy small[data-type="success"]{color:var(--theme-primary-strong,#173f70);}
.employee-profile-photo-copy small[data-type="error"]{color:var(--theme-danger-strong,#dc2626);}
.employee-id-card-modal{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:clamp(10px, 2.5vw, 24px);background:rgb(2 6 23 / 74%);overscroll-behavior:contain;}
.employee-id-card-dialog{width:min(1120px, 100%);max-height:calc(100dvh - clamp(20px, 5vw, 48px));display:grid;grid-template-rows:auto minmax(0, 1fr);overflow:hidden;border-radius:28px;background:var(--theme-surface-soft,#f7fbff);box-shadow:0 30px 100px rgb(2 6 23 / 40%);}
.employee-id-card-dialog > header{position:relative;z-index:4;height:auto;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--theme-border,#d9e8f5);background:var(--theme-surface,#fff);}
.employee-id-card-dialog > header small{display:block;color:var(--theme-primary-mid,#1264ad);font-size:10px;font-weight:900;letter-spacing:0.16em;}
.employee-id-card-dialog > header h2{margin:3px 0 0;color:var(--theme-text,#0a2342);font-size:21px;}
.employee-id-card-dialog > header button{width:40px;height:40px;border:0;border-radius:var(--radius-pill,999px);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-secondary,#50657e);font-size:24px;cursor:pointer;}
.employee-id-card-dialog > main{min-height:0;overflow-y:auto;padding:clamp(14px, 2.4vw, 24px);overscroll-behavior:contain;}
.employee-id-card-loading, .employee-id-card-error{padding:60px 20px;color:var(--theme-text-muted,#60758d);font-weight:800;text-align:center;}
.employee-id-card-error{color:var(--theme-danger-strong,#dc2626);}
.employee-id-card-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}
.employee-id-card-preview{min-width:0;}
.employee-id-card-preview > b{display:block;margin:0 0 8px 3px;color:var(--theme-text-secondary,#50657e);font-size:11px;font-weight:850;letter-spacing:0.03em;}
.employee-id-card{position:relative;aspect-ratio:1.586 / 1;overflow:hidden;border-radius:var(--radius-3xl,20px);background:transparent;box-shadow:0 18px 45px rgb(15 23 42 / 14%);}
.employee-id-card canvas{display:block;width:100%;height:auto;aspect-ratio:1016 / 640;}
.employee-id-card-actions{display:grid;grid-template-columns:minmax(180px, 1fr) repeat(3, auto);gap:10px;align-items:center;margin-top:16px;padding:15px;border:1px solid var(--theme-border,#d9e8f5);border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);}
.employee-id-card-actions b, .employee-id-card-actions span{display:block;}
.employee-id-card-actions b{color:var(--theme-text,#0a2342);font-size:13px;font-weight:900;}
.employee-id-card-actions span{margin-top:3px;color:var(--theme-text-muted,#60758d);font-size:10px;}
.employee-id-card-actions button{border:0;border-radius:var(--radius-md-lg,12px);padding:11px 15px;color:var(--theme-surface,#fff);font-size:11px;font-weight:900;cursor:pointer;}
.employee-id-card-actions [data-employee-card-download]{background:var(--theme-primary-mid,#1264ad);}
.employee-id-card-actions [data-employee-card-pdf]{background:#0f766e;}
.employee-id-card-actions [data-employee-card-print]{background:var(--tone-2563eb,#2563eb);}
.employee-id-card-status{min-height:18px;margin:10px 4px 0;color:var(--theme-primary-strong,#173f70);font-size:11px;font-weight:800;}
.employee-card-offscreen-qr{position:fixed;top:-10000px;left:-10000px;width:1px;height:1px;overflow:hidden;}
@media (max-width: 900px){.employee-id-card-modal{align-items:flex-start;}
.employee-id-card-layout{grid-template-columns:1fr;gap:16px;}
.employee-id-card-preview{width:min(100%, 720px);margin-inline:auto;}
.employee-id-card-actions{grid-template-columns:repeat(3, 1fr);}
.employee-id-card-actions > div{grid-column:1 / -1;}}
@media (max-width: 700px){.employee-profile-photo-upload{grid-template-columns:80px 1fr;padding:13px;}
.employee-profile-photo-preview{width:78px;height:96px;}
.employee-id-card-modal{padding:10px;}
.employee-id-card-dialog{width:100%;max-height:calc(100dvh - 20px);border-radius:var(--radius-4xl,22px);}
.employee-id-card-dialog > header{padding:14px 14px 14px 16px;}
.employee-id-card-dialog > header h2{font-size:18px;}
.employee-id-card-dialog > main{padding:14px;}
.employee-id-card-layout{display:grid;gap:14px;padding:0;}
.employee-id-card{width:100%;border-radius:var(--radius-xl,16px);}
.employee-id-card-actions{grid-template-columns:1fr;padding:13px;}
.employee-id-card-actions > div{grid-column:auto;}
.employee-id-card-actions button{width:100%;min-height:44px;}}
.employee-profile-avatar-fallback{display:grid;width:100%;height:100%;place-items:center;color:var(--tone-087dc8);font-size:11px;font-weight:900;}
/* V118T: kepegawaian header/tabs + attendance actions only. Content cards stay canonical. */
.employee-services-compact{--employee-retro-ink:#0b3157;--employee-retro-blue:#0a67b7;--employee-retro-paper:#fffaf0;padding-bottom:34px;}
.employee-services-compact > .bg-gradient-to-r{margin-bottom:12px!important;padding-block:20px!important;}
.employee-services-retro-hero{position:relative;isolation:isolate;overflow:hidden;border:1px solid #064a86!important;border-radius:24px!important;background:linear-gradient(135deg,#073b70 0%,#0878bb 50%,#19a7d8 100%)!important;box-shadow:0 7px 0 rgba(4,48,88,.15),0 18px 38px rgba(15,23,42,.08)!important;}
.employee-services-retro-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.14) 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,#000,transparent 84%);}
.employee-services-retro-hero>div:first-child{border:1px solid rgba(255,255,255,.3)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 3px 0 rgba(3,42,79,.18);}
.employee-services-retro-hero h2{color:#fff!important;text-shadow:0 2px 0 rgba(1,31,58,.28);letter-spacing:.01em;}
.employee-services-retro-hero p{color:#f7fbff!important;text-shadow:0 1px 0 rgba(1,31,58,.24);}
.employee-services-retro-hero p:first-of-type{color:#dff5ff!important;}
.employee-services-compact-tabs{z-index:24!important;margin:0 0 10px!important;padding:7px!important;background:#fffaf0!important;border:1px solid #cbd9e4!important;border-radius:16px!important;box-shadow:0 4px 0 #d7e3ec,0 12px 28px rgba(15,23,42,.06)!important;}
.employee-services-compact-tabs button{min-height:42px;border:1px solid transparent!important;border-radius:10px!important;color:#29445d!important;font-weight:900!important;letter-spacing:.01em;text-shadow:none!important;}
.employee-services-compact-tabs button:hover{background:#edf7fb!important;border-color:#c8dce9!important;color:#075c9d!important;}
.employee-services-compact-tabs button[class*="bg-blue-500"]{background:linear-gradient(180deg,#1687d0 0%,#075b9e 100%)!important;border:1px solid #064b87!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 0 #053e70!important;transform:translateY(-1px);}
.employee-services-compact-tabs button[class*="bg-blue-500"]:active{transform:translateY(1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 #053e70!important;}
.employee-attendance-retro-actions .employee-attendance-retro-note{color:#334155!important;background:#fffaf0!important;border:1px solid #dfd3bb!important;border-radius:12px!important;box-shadow:inset 0 1px 0 #fff,0 2px 0 rgba(121,94,45,.08);line-height:1.55;}
.employee-attendance-retro-actions .employee-attendance-retro-button{position:relative;border-radius:10px!important;border:1px solid rgba(15,23,42,.18)!important;font-weight:900!important;letter-spacing:.01em;color:#fff!important;text-shadow:0 1px 0 rgba(0,0,0,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 3px 0 rgba(15,23,42,.22),0 7px 14px rgba(15,23,42,.08)!important;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease!important;}
.employee-attendance-retro-actions .employee-attendance-retro-button:hover{filter:brightness(1.04);transform:translateY(-1px);}
.employee-attendance-retro-actions .employee-attendance-retro-button:active{transform:translateY(2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 1px 0 rgba(15,23,42,.22)!important;}
.employee-attendance-retro-actions .employee-attendance-retro-button-present{background:linear-gradient(180deg,#22b85f 0%,#128642 100%)!important;border-color:#0e7337!important;}
.employee-attendance-retro-actions .employee-attendance-retro-button-permit{background:linear-gradient(180deg,#ffb21a 0%,#db8500 100%)!important;border-color:#b76e00!important;}
.employee-attendance-retro-actions .employee-attendance-retro-button-sick{background:linear-gradient(180deg,#3479ef 0%,#1556bd 100%)!important;border-color:#124a9f!important;}
.employee-attendance-retro-actions .employee-attendance-retro-button-card{margin-top:4px!important;background:linear-gradient(180deg,#168ce0 0%,#0869bd 100%)!important;border-color:#07589e!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 4px 0 #06477f,0 10px 20px rgba(8,105,189,.16)!important;}
@media (max-width:700px){.employee-services-retro-hero{border-radius:21px!important;}.employee-services-compact-tabs{border-radius:14px!important;}.employee-services-compact-tabs button{min-height:40px;}.employee-attendance-retro-actions .employee-attendance-retro-button{min-height:40px;}}
.employee-profile-custom-modal .individual-profile-dialog{max-height:calc(100dvh - 28px);overflow:auto;}
.employee-profile-password-panel{margin-top:15px;padding:15px;border:1px solid #e5eef4;border-radius:var(--radius-2xl,18px);background:var(--tone-f8fbfd);}
.employee-profile-password-panel > div:first-child b{color:var(--tone-1e293b);font-size:14px;}
.employee-profile-password-panel > div:first-child p{margin:3px 0 12px;color:var(--theme-text-muted,#60758d);font-size:10px;line-height:1.5;}
.employee-profile-custom-form textarea:disabled{background:#eef3f6;color:#738491;cursor:not-allowed;}
.individual-profile-menu-button{width:100%;margin-top:.75rem;display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--tone-eff8ff,#eff8ff);color:var(--tone-0574be);font-weight:800;padding:.7rem .85rem;border-radius:.8rem;}
.individual-profile-menu-button:hover{background:var(--tone-e0f2fe,#e0f2fe);}
.individual-profile-menu-button svg{width:17px;height:17px;flex:0 0 auto;}
.individual-profile-header-photo{width:100%;height:100%;object-fit:cover;display:block;}
.individual-profile-modal, .individual-card-modal{position:fixed;inset:0;z-index:360;padding:14px;overflow:auto;display:flex;align-items:center;justify-content:center;overscroll-behavior:contain;}
html.portal-guru-popup-backdrop-active body>#root{-webkit-filter:none!important;filter:none!important;}
html.portal-guru-popup-backdrop-active body>:is(.individual-profile-modal,.individual-card-modal,.employee-id-card-modal){background:rgba(15,23,42,.28);}
.individual-profile-dialog{width:min(720px,100%);margin:auto;overflow:hidden;}
.individual-profile-dialog-header{padding:23px 25px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.individual-profile-dialog-header small{display:block;font-size:10px;letter-spacing:.16em;font-weight:800;opacity:.78;}
.individual-profile-dialog-header h2{margin:5px 0 2px;font-size:22px;line-height:1.2;font-weight:850;}
.individual-profile-dialog-header p{margin:0;font-size:12px;opacity:.82;overflow-wrap:anywhere;}
.individual-profile-close, .individual-card-close{border:0;appearance:none;width:38px;height:38px;min-width:38px;border-radius:50%;display:grid;place-items:center;font-size:28px;line-height:1;background:rgba(255,255,255,.18);color:var(--theme-surface,#fff);cursor:pointer;}
.individual-profile-close:hover, .individual-card-close:hover{background:var(--theme-surface,#fff);color:var(--tone-e11d48,#e11d48);}
.individual-profile-form{padding:22px 24px 26px;}
.individual-id-card-entry{display:grid;grid-template-columns:50px 1fr auto;gap:13px;align-items:center;padding:15px;border:1px solid #d9edf9;background:linear-gradient(135deg,#f4fbff,#edf9ff);border-radius:var(--radius-3xl,20px);margin-bottom:18px;}
.individual-id-card-entry-icon{width:50px;height:50px;border-radius:var(--radius-xl,16px);display:grid;place-items:center;background:var(--theme-surface,#fff);color:#0789d8;box-shadow:0 7px 20px rgba(7,137,216,.12);}
.individual-id-card-entry-icon svg{width:28px;height:28px;}
.individual-id-card-entry b{display:block;color:#0f2a3d;font-size:14px;}
.individual-id-card-entry p{margin:3px 0 0;font-size:11px;color:#60798b;line-height:1.45;}
.individual-id-card-entry button{border:0;background:var(--tone-078ad8,#078ad8);color:var(--theme-surface,#fff);padding:10px 14px;border-radius:var(--radius-md-lg,12px);font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap;}
.individual-id-card-entry button:hover{background:#0573b7;}
.individual-profile-photo-row{display:grid;grid-template-columns:100px 1fr;gap:16px;align-items:center;padding:16px;border:1px solid #e5eef4;border-radius:var(--radius-3xl,20px);margin-bottom:18px;}
.individual-profile-photo{width:96px;height:110px;border-radius:var(--radius-3xl,20px);background:linear-gradient(145deg,var(--tone-e0f2fe,#e0f2fe),var(--theme-surface-muted,#edf5fc));overflow:hidden;display:grid;place-items:center;color:#0a7ec3;font-size:27px;font-weight:850;border:1px solid #dceaf2;}
.individual-profile-photo img{width:100%;height:100%;object-fit:cover;}
.individual-profile-photo-copy b{font-size:14px;color:var(--tone-1e293b);}
.individual-profile-photo-copy p{margin:3px 0 9px;font-size:11px;color:var(--theme-text-muted,#60758d);line-height:1.5;}
.individual-profile-photo-copy small{display:block;margin-top:7px;color:var(--theme-text-subtle,#7e90a5);font-size:10px;}
.individual-profile-photo-actions{display:flex;gap:8px;flex-wrap:wrap;}
.individual-profile-photo-actions label, .individual-profile-photo-actions button{border:0;border-radius:11px;padding:9px 12px;font-size:11px;font-weight:800;cursor:pointer;}
.individual-profile-photo-actions label{background:var(--tone-078ad8,#078ad8);color:var(--theme-surface,#fff);}
.individual-profile-photo-actions label input{display:none;}
.individual-profile-photo-actions button{background:var(--tone-fff1f2,#fff1f2);color:var(--tone-e11d48,#e11d48);}
.individual-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
.individual-profile-field{display:block;}
.individual-profile-field-full{grid-column:1/-1;}
.individual-profile-field span{display:block;font-size:11px;font-weight:800;color:#5b6b78;margin:0 0 6px 2px;}
.individual-profile-field input, .individual-profile-field textarea{width:100%;box-sizing:border-box;border:1px solid #dfe8ee;background:var(--tone-f8fbfd);color:var(--tone-17212b);border-radius:13px;padding:11px 13px;font:600 13px/1.45 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}
.individual-profile-field textarea{resize:vertical;min-height:84px;}
.individual-profile-field input:focus, .individual-profile-field textarea:focus{border-color:#21a3e7;background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(33,163,231,.12);}
.individual-profile-field input:disabled{background:#eef3f6;color:#738491;cursor:not-allowed;}
.individual-profile-note{font-size:10px;line-height:1.5;color:#7d8b96;margin:13px 2px 0;}
.individual-profile-status{margin:13px 0 0;padding:10px 12px;border-radius:11px;font-size:11px;font-weight:700;}
.individual-profile-status[data-type="loading"], .individual-profile-status[data-type="info"]{background:var(--tone-eff8ff,#eff8ff);color:var(--tone-0574be);}
.individual-profile-status[data-type="success"]{background:#ecfdf5;color:#047857;}
.individual-profile-status[data-type="error"]{background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger-deep,#be123c);}
.individual-profile-save{width:100%;border:0;border-radius:var(--radius-lg,14px);background:linear-gradient(135deg,var(--tone-078ad8,#078ad8),#0aa3ea);color:var(--theme-surface,#fff);font-weight:850;padding:13px 16px;box-shadow:0 10px 25px rgba(7,138,216,.2);cursor:pointer;}
.individual-profile-save:disabled{opacity:.58;cursor:wait;}
.individual-profile-toast-v127{position:fixed;z-index:2147483647;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));max-width:min(420px,calc(100vw - 32px));padding:13px 16px;border:1px solid #a7f3d0;border-radius:14px;background:#ecfdf5;color:#065f46;font-size:12px;font-weight:850;line-height:1.45;box-shadow:0 18px 50px rgba(15,23,42,.18);opacity:0;transform:translateY(-8px);pointer-events:none;}
.individual-profile-toast-v127.is-visible{opacity:1;transform:translateY(0);}
.individual-profile-toast-v127[data-type="error"]{border-color:#fecaca;background:#fff1f2;color:#b91c1c;}
@media (max-width:640px){.individual-profile-toast-v127{left:16px;right:16px;top:max(12px,env(safe-area-inset-top));max-width:none;text-align:center;}}
.individual-profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px;}
.individual-profile-secondary{width:100%;border:1px solid #d9e6ef;background:var(--theme-surface,#fff);color:#456579;border-radius:var(--radius-lg,14px);padding:13px 16px;font-weight:800;cursor:pointer;}
.individual-profile-loading{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#496272;}
.individual-profile-spinner{width:30px;height:30px;border:3px solid #d9eef9;border-top-color:var(--tone-078ad8,#078ad8);border-radius:50%;}
.individual-profile-error{margin:auto;padding:18px 20px;background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger-deep,#be123c);border-radius:var(--radius-lg,14px);font-size:13px;font-weight:700;}
.individual-card-dialog{position:relative;width:min(1080px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 12px 8px;overflow:auto;overscroll-behavior:contain;}
.individual-card-dialog>.individual-card-close{align-self:flex-end;z-index:20;right:0;top:10px;display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:96px;height:44px;padding:0 14px;border:1px solid var(--tone-fecaca,#fecaca);background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);box-shadow:0 8px 24px rgba(2,12,27,.22);}
.individual-card-dialog>.individual-card-close span{font-size:27px;line-height:1;transform:translateY(-1px);}
.individual-card-dialog>.individual-card-close b{font-size:12px;font-weight:900;}
.individual-card-dialog>.individual-card-close:hover{background:var(--tone-fecaca,#fecaca);color:var(--tone-991b1b,#991b1b);}
.individual-card-board{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,360px));justify-content:center;align-items:start;gap:clamp(16px,3vw,30px);}
.individual-card-preview-item{min-width:0;}
.individual-card-preview-item>b{display:block;margin:0 0 8px 3px;color:var(--theme-surface,#fff);font-size:12px;font-weight:900;letter-spacing:.04em;}
.individual-card-preview-item canvas{display:block;width:100%;height:auto;aspect-ratio:840/1332;border-radius:var(--radius-5xl,24px);background:var(--theme-surface,#fff);box-shadow:0 20px 44px rgba(6,28,56,.2);}
.individual-card-face{position:relative;width:100%;max-width:360px;justify-self:center;aspect-ratio:53.98/85.6;border-radius:var(--radius-5xl,24px);overflow:hidden;box-shadow:0 20px 44px rgba(6,28,56,.2);}
.individual-card-face.front{background:linear-gradient(180deg,var(--tone-0b6aa8,#0b6aa8) 0%,#1186ca 42%,var(--theme-surface,#fff) 42.4%,var(--theme-surface,#fff) 100%);}
.individual-card-face.front:before{content:"";position:absolute;left:-10%;right:-10%;top:28.6%;height:84px;background:var(--theme-surface,#fff);border-radius:0 0 54% 54%/0 0 100% 100%;z-index:1;}
.individual-card-face.front:after{content:"";position:absolute;left:50%;bottom:10px;transform:translateX(-50%);width:60px;height:7px;border-radius:var(--radius-3xl,20px);background:var(--tone-60222535,rgba(8,27,51,.14));box-shadow:18px 0 0 var(--tone-60222535,rgba(8,27,51,.14)),36px 0 0 var(--tone-60222535,rgba(8,27,51,.14)),54px 0 0 var(--tone-60222535,rgba(8,27,51,.14));}
.individual-card-face.back{background:var(--theme-surface,#fff);border:1px solid rgba(11,106,168,.1);}
.individual-card-face.back:before, .individual-card-face.back:after{content:"";position:absolute;z-index:0;}
.individual-card-face.back:before{top:-76px;right:-66px;width:170px;height:170px;background:linear-gradient(135deg,#0b72b9,#27a6e2);transform:rotate(45deg);border-radius:26px;}
.individual-card-face.back:after{left:-74px;bottom:-86px;width:190px;height:190px;background:linear-gradient(135deg,#0b72b9,#27a6e2);transform:rotate(45deg);border-radius:28px;}
.individual-card-shell{position:absolute;inset:0;padding:14px 14px 16px;display:flex;flex-direction:column;z-index:1;}
.individual-card-header-logo{display:flex;justify-content:center;align-items:center;min-height:40px;}
.individual-card-header-logo img{max-width:180px;width:100%;max-height:46px;object-fit:contain;filter:drop-shadow(0 6px 16px rgba(0,0,0,.12));}
.individual-card-front-photo-wrap{position:relative;z-index:2;margin:8px auto 6px;width:88px;height:88px;border-radius:50%;padding:5px;background:var(--theme-surface,#fff);box-shadow:0 10px 20px rgba(0,0,0,.14);}
.individual-card-front-photo{width:100%;height:100%;border-radius:50%;overflow:hidden;background:#e6eef6;display:grid;place-items:center;font-weight:900;color:var(--tone-0b6aa8,#0b6aa8);font-size:28px;}
.individual-card-front-photo img{width:100%;height:100%;object-fit:cover;}
.individual-card-front-content{position:relative;z-index:2;margin-top:2px;text-align:center;color:#12324c;}
.individual-card-front-content h3{margin:0;font-size:18px;line-height:1.15;font-weight:900;color:#0d3657;}
.individual-card-front-content p{margin:4px 0 0;font-size:12px;color:#507896;font-weight:700;}
.individual-card-front-id{margin:10px auto 9px;width:max-content;max-width:100%;background:var(--tone-0b6aa8,#0b6aa8);color:var(--theme-surface,#fff);padding:8px 11px;border-radius:var(--radius-md,10px);font-size:11px;font-weight:900;letter-spacing:.03em;box-shadow:0 10px 24px rgba(11,106,168,.18);}
.individual-card-front-meta{display:grid;gap:7px;margin:9px 0 0;}
.individual-card-front-chip{background:#f4f9fd;border:1px solid #e0ebf5;border-radius:var(--radius-md-lg,12px);padding:9px 11px;text-align:left;}
.individual-card-front-chip span{display:block;font-size:8px;font-weight:900;letter-spacing:.14em;color:#6b879c;text-transform:uppercase;}
.individual-card-front-chip b{display:block;margin-top:3px;font-size:11px;font-weight:800;color:#153854;line-height:1.35;white-space:normal;word-break:break-word;}
.individual-card-footer{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:flex-end;font-size:9px;font-weight:800;color:#6b879c;}
.individual-card-footer strong{color:#0c5f95;}
.individual-card-back-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;position:relative;z-index:2;}
.individual-card-back-badge{display:inline-flex;padding:6px 10px;border-radius:var(--radius-pill,999px);background:var(--tone-0b6aa8,#0b6aa8);color:var(--theme-surface,#fff);font-size:9px;font-weight:900;letter-spacing:.10em;text-transform:uppercase;box-shadow:0 8px 18px rgba(11,106,168,.14);}
.individual-card-back-qrmini{width:40px;height:40px;border-radius:var(--radius-md,10px);background:var(--theme-surface,#fff);display:grid;place-items:center;box-shadow:0 10px 20px rgba(11,106,168,.16);font-size:8px;font-weight:900;color:var(--tone-0b6aa8,#0b6aa8);}
.individual-card-back-content{position:relative;z-index:2;display:flex;flex-direction:column;gap:8px;margin-top:2px;}
.individual-card-back-main{padding:12px 12px 10px;border-radius:var(--radius-xl,16px);background:var(--theme-surface,#fff);box-shadow:0 12px 24px rgba(11,106,168,.07);border:1px solid #ebf3f9;}
.individual-card-back-main h3{margin:0;font-size:15px;font-weight:900;color:#143754;}
.individual-card-back-main p{margin:3px 0 0;font-size:10px;color:#567b95;font-weight:700;}
.individual-card-signature{margin-top:6px;}
.individual-card-signature span{display:block;font-size:9px;color:#7e98ab;font-weight:700;}
.individual-card-signature b{display:block;margin-top:1px;font-size:15px;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#234d6d;}
.individual-card-back-qrpanel{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;padding:10px 11px;border-radius:var(--radius-xl,16px);background:var(--theme-surface,#fff);border:1px solid #e6eef5;box-shadow:0 12px 26px rgba(11,106,168,.06);}
.individual-card-qr{width:72px;height:72px;border-radius:var(--radius-lg,14px);background:var(--theme-surface,#fff);display:grid;place-items:center;border:1px solid #e6eef5;}
.individual-card-qr canvas, .individual-card-qr img{width:58px!important;height:58px!important;display:block;}
.individual-card-back-qrtext b{display:block;font-size:10px;font-weight:900;color:#123653;}
.individual-card-back-qrtext p{margin:4px 0 0;font-size:9px;line-height:1.45;color:#5a7891;}
.individual-card-back-list{list-style:none;margin:0;padding:10px 12px;border-radius:var(--radius-lg,14px);background:var(--tone-f7fbfe);border:1px solid #e5eef6;display:grid;gap:7px;}
.individual-card-back-list li{display:grid;grid-template-columns:72px 1fr;gap:8px;align-items:start;font-size:10px;line-height:1.4;color:#173854;}
.individual-card-back-list span{font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#7692a8;}
.individual-card-back-list b{font-size:10px;font-weight:800;color:#153854;word-break:break-word;}
.individual-card-back-note{padding:10px 12px;border-radius:var(--radius-lg,14px);background:var(--tone-f7fbfe);border:1px solid #e5eef6;font-size:9px;line-height:1.45;color:#58768f;}
.individual-card-actions{width:100%;display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;}
.individual-card-actions button{min-height:44px;border:0;border-radius:var(--radius-lg,14px);padding:12px 14px;font-weight:850;cursor:pointer;}
.individual-card-actions button:disabled{opacity:.65;cursor:wait;}
.individual-card-actions button:first-child{background:var(--theme-surface,#fff);color:#067dc5;}
.individual-card-actions button:nth-child(2){background:#0f766e;color:var(--theme-surface,#fff);}
.individual-card-actions button:nth-child(3){background:var(--tone-078ad8,#078ad8);color:var(--theme-surface,#fff);}
.individual-card-actions button:last-child{background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger-deep,#be123c);border:1px solid var(--tone-fecdd3);}
.individual-card-download-note{width:100%;text-align:center;font-size:11px;line-height:1.45;color:var(--tone-069d9036,rgba(255,255,255,.9));margin-top:-2px;}
@media (max-width:900px){.individual-card-modal{align-items:flex-start;}
.individual-card-dialog{width:min(820px,calc(100vw - 18px));max-height:calc(100dvh - 18px);}
.individual-card-board{grid-template-columns:repeat(2,minmax(0,330px));gap:16px;}
.individual-card-actions{grid-template-columns:repeat(2,1fr);}
.individual-profile-actions{grid-template-columns:1fr 1fr;}}
@media (max-width:700px){.individual-card-modal{padding:8px;}
.individual-card-dialog{width:min(100%,calc(100vw - 12px));max-height:calc(100dvh - 16px);gap:12px;padding-inline:4px;}
.individual-card-dialog>.individual-card-close{top:6px;margin-right:4px;}
.individual-card-board{grid-template-columns:minmax(0,340px);}
.individual-card-face{max-width:340px;}
.individual-card-actions{grid-template-columns:1fr;}
.individual-card-download-note{font-size:10px;}}
@media (max-width:640px){.individual-profile-modal, .individual-card-modal{padding:8px;}

.individual-profile-dialog-header{padding:19px 18px;}
.individual-profile-dialog-header h2{font-size:19px;}
.individual-profile-form{padding:16px;}
.individual-id-card-entry{grid-template-columns:44px 1fr;gap:11px;}
.individual-id-card-entry-icon{width:44px;height:44px;}
.individual-id-card-entry button{grid-column:1/-1;width:100%;}
.individual-profile-photo-row{grid-template-columns:78px 1fr;padding:13px;}
.individual-profile-photo{width:76px;height:90px;border-radius:17px;}
.individual-profile-grid{grid-template-columns:1fr;}
.individual-profile-field-full{grid-column:auto;}
.individual-profile-actions{grid-template-columns:1fr;}
.individual-card-shell{padding:14px;}
.individual-card-header-logo img{max-width:170px;max-height:42px;}
.individual-card-front-photo-wrap{margin-top:8px;width:84px;height:84px;}
.individual-card-front-content h3{font-size:15px;}
.individual-card-back-list li{grid-template-columns:66px 1fr;}
.individual-card-back-qrpanel{grid-template-columns:68px 1fr;}
.individual-card-qr{width:68px;height:68px;}
.individual-card-qr canvas, .individual-card-qr img{width:54px!important;height:54px!important;}}
.employee-attendance-v126-modal{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:20px;}
.employee-attendance-v126-dialog{width:min(650px, 100%);overflow:hidden;}
.employee-attendance-v126-dialog > header{position:static;height:auto;display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--theme-border,#d9e8f5);background:var(--theme-surface,#fff);}
.employee-attendance-v126-dialog > header small{display:block;color:var(--theme-primary-deep,#075da9);font-size:10px;font-weight:900;letter-spacing:0.14em;}
.employee-attendance-v126-dialog > header h2{margin:3px 0 0;color:var(--theme-text,#0a2342);font-size:21px;}
.employee-attendance-v126-dialog > header button{width:40px;height:40px;border:0;border-radius:var(--radius-pill,999px);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-secondary,#50657e);font-size:24px;cursor:pointer;}
.employee-attendance-v126-dialog > main{padding:22px;}
.employee-attendance-v126-loading, .employee-attendance-v126-error{padding:55px 20px;color:var(--theme-text-muted,#60758d);font-weight:800;text-align:center;}
.employee-attendance-v126-error b{display:block;color:var(--theme-danger-strong,#dc2626);font-size:16px;}
.employee-attendance-v126-error p{margin:7px 0 16px;font-size:12px;}
.employee-attendance-v126-error button{border:0;border-radius:11px;padding:10px 15px;background:var(--theme-primary-deep,#075da9);color:var(--theme-surface,#fff);font-weight:900;}
.employee-attendance-v126-overview{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.employee-attendance-v126-overview > div{padding:15px;border:1px solid var(--theme-border,#d9e8f5);border-radius:17px;background:var(--theme-surface,#fff);}
.employee-attendance-v126-overview small, .employee-attendance-v126-overview b, .employee-attendance-v126-overview span{display:block;}
.employee-attendance-v126-overview small{color:var(--tone-0284c7);font-size:9px;font-weight:900;letter-spacing:0.1em;}
.employee-attendance-v126-overview b{margin-top:5px;color:var(--theme-text,#0a2342);font-size:13px;}
.employee-attendance-v126-overview span{margin-top:3px;color:var(--theme-text-muted,#60758d);font-size:10px;}
.employee-attendance-v126-today{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:15px;border:1px solid var(--theme-primary-border-strong,#b8d9f3);border-radius:17px;background:var(--tone-f0fdf4,#f0fdf4);}
.employee-attendance-v126-today.is-late{border-color:var(--tone-fecaca,#fecaca);background:var(--tone-fff1f2,#fff1f2);}
.employee-attendance-v126-today small, .employee-attendance-v126-today b{display:block;}
.employee-attendance-v126-today small{color:var(--theme-text-muted,#60758d);font-size:9px;font-weight:900;}
.employee-attendance-v126-today b{margin-top:4px;color:var(--theme-text,#0a2342);font-size:12px;line-height:1.5;}
.employee-attendance-v126-badge{flex:0 0 auto;border-radius:var(--radius-pill,999px);padding:7px 10px;font-size:9px;font-weight:900;}
.employee-attendance-v126-badge.is-on-time{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-strong,#173f70);}
.employee-attendance-v126-badge.is-late{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.employee-attendance-v126-choice{margin-top:18px;}
.employee-attendance-v126-choice h3{margin:0;color:var(--theme-text,#0a2342);font-size:16px;}
.employee-attendance-v126-choice > p{margin:5px 0 13px;color:var(--theme-text-muted,#60758d);font-size:11px;}
.employee-attendance-v126-choice > div{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.employee-attendance-v126-choice button{min-height:125px;border:1px solid #bae6fd;border-radius:var(--radius-3xl,20px);padding:18px;background:var(--theme-surface,#fff);color:var(--theme-primary-deep,#075da9);text-align:left;cursor:pointer;}
.employee-attendance-v126-choice button:last-child{border-color:#c7d2fe;color:#4338ca;}
.employee-attendance-v126-choice button:disabled{border-color:var(--theme-border,#d9e8f5);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-subtle,#7e90a5);cursor:not-allowed;}
.employee-attendance-v126-choice button span, .employee-attendance-v126-choice button b, .employee-attendance-v126-choice button small{display:block;}
.employee-attendance-v126-choice button span{font-size:9px;font-weight:900;letter-spacing:0.15em;}
.employee-attendance-v126-choice button b{margin-top:10px;color:var(--theme-text,#0a2342);font-size:17px;}
.employee-attendance-v126-choice button small{margin-top:5px;font-size:10px;font-weight:800;}
.employee-attendance-v126-help{margin:15px 2px 0;color:var(--theme-text-muted,#60758d);font-size:10px;line-height:1.6;}
.employee-attendance-v126-qr-head{padding:16px;border:1px solid var(--theme-primary-border-strong,#b8d9f3);border-radius:var(--radius-2xl,18px);background:var(--tone-f0fdf4,#f0fdf4);text-align:center;}
.employee-attendance-v126-qr-head.is-warning{border-color:var(--tone-fecaca,#fecaca);background:var(--tone-fff1f2,#fff1f2);}
.employee-attendance-v126-qr-head small{color:var(--tone-0284c7);font-size:10px;font-weight:900;letter-spacing:0.12em;}
.employee-attendance-v126-qr-head h3{margin:5px 0 0;color:var(--theme-text,#0a2342);font-size:18px;}
.employee-attendance-v126-qr-head p{margin:4px 0 0;color:var(--theme-text-muted,#60758d);font-size:11px;font-weight:800;}
.employee-attendance-v126-qr-card{width:min(360px, 100%);margin:16px auto 0;padding:20px;border:1px solid var(--theme-border,#d9e8f5);border-radius:var(--radius-5xl,24px);background:var(--theme-surface,#fff);text-align:center;box-shadow:0 15px 40px rgb(15 23 42 / 10%);}
.employee-attendance-v126-qr-card [data-attendance-qr]{width:280px;max-width:100%;margin:auto;}
.employee-attendance-v126-qr-card canvas, .employee-attendance-v126-qr-card img{width:100%!important;height:auto!important;}
.employee-attendance-v126-qr-card b, .employee-attendance-v126-qr-card span{display:block;}
.employee-attendance-v126-qr-card b{margin-top:12px;color:var(--theme-text,#0a2342);font-size:18px;font-weight:900;}
.employee-attendance-v126-qr-card span{margin-top:4px;color:var(--theme-text-muted,#60758d);font-size:10px;font-weight:800;}
.employee-attendance-v126-live-status{margin:13px 0 0;padding:12px;border-radius:13px;background:#ecfeff;color:var(--theme-primary-deep,#075da9);font-size:11px;font-weight:800;text-align:center;}
.employee-attendance-v126-live-status.is-success{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-strong,#173f70);}
.employee-attendance-v126-live-status.is-late, .employee-attendance-v126-live-status.is-error{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.employee-attendance-v126-qr-actions{display:grid;grid-template-columns:repeat(3, 1fr);gap:8px;margin-top:12px;}
.employee-attendance-v126-qr-actions button{border:0;border-radius:11px;padding:10px 8px;background:var(--theme-border,#d9e8f5);color:var(--theme-text-strong,#123d6b);font-size:10px;font-weight:900;cursor:pointer;}
.employee-attendance-v126-qr-actions button:last-child{background:var(--theme-primary-deep,#075da9);color:var(--theme-surface,#fff);}
@media (max-width: 640px){.employee-attendance-v126-modal{padding:8px;}
.employee-attendance-v126-dialog{min-height:calc(100dvh - 16px);}
.employee-attendance-v126-dialog > main{padding:15px;}
.employee-attendance-v126-overview{grid-template-columns:1fr;}
.employee-attendance-v126-choice > div{grid-template-columns:1fr;}
.employee-attendance-v126-choice button{min-height:105px;}
.employee-attendance-v126-qr-actions{grid-template-columns:1fr;}}
.portal-accreditation-react-fallback-v190{display:none!important;}
#employeeAccreditationV128{color:var(--theme-text,#0a2342);display:none;width:100%;}
.portal-accreditation-react-fallback-v190{box-sizing:border-box;display:grid;width:100%;max-width:1180px;gap:16px;margin:0 auto;padding-bottom:90px;color:var(--theme-text,#0a2342);}
.portal-accreditation-fallback-hero-v190{position:relative;overflow:hidden;padding:30px;border-radius:28px;background:linear-gradient(135deg, var(--theme-primary-strong,#173f70), var(--tone-0284c7));box-shadow:0 18px 45px rgba(0, 63, 158, 0.16);}
.portal-accreditation-fallback-hero-v190::after{position:absolute;top:-80px;right:-40px;width:220px;height:220px;border-radius:var(--radius-pill,999px);background:rgba(255, 255, 255, 0.1);content:"";}
.portal-accreditation-fallback-hero-v190 > *{position:relative;z-index:1;}
.portal-accreditation-fallback-hero-v190 small{display:block;font-size:11px;font-weight:900;letter-spacing:0.12em;}
.portal-accreditation-fallback-hero-v190 h1{margin:7px 0 0;font-size:clamp(24px, 3vw, 32px);line-height:1.2;}
.portal-accreditation-fallback-hero-v190 p{max-width:720px;margin:10px 0 0;font-size:13px;line-height:1.65;}
.portal-accreditation-fallback-status-v190{display:flex;align-items:flex-start;gap:13px;padding:18px;border:1px solid #bae6fd;border-radius:var(--radius-2xl,18px);background:#f0f9ff;}
.portal-accreditation-fallback-status-icon-v190{display:grid;width:34px;min-width:34px;height:34px;place-items:center;border-radius:11px;color:var(--theme-surface,#fff);background:var(--tone-0284c7);font-size:17px;font-weight:900;}
.portal-accreditation-fallback-status-v190 h2, .portal-accreditation-fallback-status-v190 p{margin:0;}
.portal-accreditation-fallback-status-v190 h2{color:#0c4a6e;font-size:15px;}
.portal-accreditation-fallback-status-v190 p{margin-top:5px;color:var(--theme-primary-deep,#075da9);font-size:12px;line-height:1.6;}
.portal-accreditation-fallback-grid-v190{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:13px;}
.portal-accreditation-fallback-card-v190{padding:18px;border:1px solid var(--theme-border,#d9e8f5);border-radius:19px;background:var(--theme-surface,#fff);box-shadow:0 8px 24px rgba(15, 23, 42, 0.04);}
.portal-accreditation-fallback-card-v190 span{display:grid;width:38px;height:38px;place-items:center;border-radius:var(--radius-md-lg,12px);color:var(--theme-primary-strong,#173f70);background:var(--theme-primary-soft,#f0f8ff);font-size:17px;font-weight:900;}
.portal-accreditation-fallback-card-v190 h3{margin:13px 0 0;color:var(--tone-1e293b);font-size:15px;}
.portal-accreditation-fallback-card-v190 p{margin:7px 0 0;color:var(--theme-text-muted,#60758d);font-size:12px;line-height:1.65;}
.portal-accreditation-fallback-flow-v190{padding:20px;border:1px solid var(--theme-border,#d9e8f5);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);}
.portal-accreditation-fallback-flow-v190 h2{margin:0;color:var(--tone-1e293b);font-size:17px;}
.portal-accreditation-fallback-flow-v190 > p{margin:5px 0 0;color:var(--theme-text-muted,#60758d);font-size:11px;line-height:1.55;}
.portal-accreditation-fallback-flow-v190 ol{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:10px;margin:16px 0 0;padding:0;list-style:none;}
.portal-accreditation-fallback-flow-v190 li{padding:14px;border-radius:15px;background:var(--theme-surface-soft,#f7fbff);}
.portal-accreditation-fallback-flow-v190 li b, .portal-accreditation-fallback-flow-v190 li span{display:block;}
.portal-accreditation-fallback-flow-v190 li b{color:var(--theme-text-strong,#123d6b);font-size:12px;}
.portal-accreditation-fallback-flow-v190 li span{margin-top:5px;color:var(--theme-text-muted,#60758d);font-size:11px;line-height:1.55;}
.employee-accreditation-v128{margin:0 auto;max-width:1180px;padding-bottom:90px;}
.employee-accreditation-v128-hero{background:linear-gradient(135deg, var(--theme-primary-strong,#173f70), var(--tone-0284c7));border-radius:28px;color:var(--theme-surface,#fff);overflow:hidden;padding:28px;position:relative;}
.employee-accreditation-v128-hero::after{background:rgba(255, 255, 255, 0.1);border-radius:var(--radius-pill,999px);content:"";height:190px;position:absolute;right:-50px;top:-65px;width:190px;}
.employee-accreditation-v128-hero small, .employee-accreditation-v128-hero h1, .employee-accreditation-v128-hero p{display:block;margin:0;position:relative;z-index:1;}
.employee-accreditation-v128-hero small{font-size:11px;font-weight:900;letter-spacing:0.12em;}
.employee-accreditation-v128-hero h1{font-size:28px;margin-top:7px;}
.employee-accreditation-v128-hero p{color:var(--theme-primary-border,#d9e8f5);font-size:13px;margin-top:8px;}
.employee-accreditation-v128-stats{display:grid;gap:12px;grid-template-columns:repeat(4, minmax(0, 1fr));margin:16px 0;}
.employee-accreditation-v128-stats article{background:var(--theme-surface,#fff);border:1px solid var(--theme-border,#d9e8f5);border-radius:17px;padding:16px;}
.employee-accreditation-v128-stats small, .employee-accreditation-v128-stats b{display:block;}
.employee-accreditation-v128-stats small{color:var(--theme-text-muted,#60758d);font-size:11px;font-weight:800;}
.employee-accreditation-v128-stats b{font-size:25px;margin-top:5px;}
.employee-accreditation-v128-stats .problem b{color:var(--theme-danger-strong,#dc2626);}
.employee-accreditation-v128-list{display:grid;gap:13px;}
.employee-accreditation-v128-card{background:var(--theme-surface,#fff);border:1px solid var(--theme-border,#d9e8f5);border-radius:19px;padding:18px;}
.employee-accreditation-v128-card.is-overdue{border-color:var(--tone-fecaca,#fecaca);}
.employee-accreditation-v128-card-head{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;}
.employee-accreditation-v128-card h3, .employee-accreditation-v128-card p{margin:0;}
.employee-accreditation-v128-card h3{font-size:16px;margin-top:8px;}
.employee-accreditation-v128-card p{color:var(--theme-text-muted,#60758d);font-size:12px;line-height:1.65;margin-top:7px;}
.employee-accreditation-v128-meta, .employee-accreditation-v128-actions{align-items:center;display:flex;flex-wrap:wrap;gap:7px;}
.employee-accreditation-v128-actions{justify-content:flex-end;}
.employee-accreditation-v128-actions button, .employee-accreditation-v128-button{border:0;border-radius:var(--radius-md-lg,12px);cursor:pointer;font-size:12px;font-weight:900;padding:10px 13px;}
.employee-accreditation-v128-button, .employee-accreditation-v128-actions .primary{background:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);}
.employee-accreditation-v128-actions .secondary{background:var(--tone-eff6ff,#eff6ff);color:var(--tone-1d4ed8,#1d4ed8);}
.employee-accreditation-v128-actions .danger{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.employee-accreditation-v128-pill{background:var(--theme-surface-muted,#edf5fc);border-radius:var(--radius-pill,999px);color:var(--theme-text-secondary,#50657e);display:inline-flex;font-size:10px;font-weight:900;padding:6px 9px;}
.employee-accreditation-v128-pill.approved, .employee-accreditation-v128-pill.open{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-darker,#123d6b);}
.employee-accreditation-v128-pill.submitted{background:var(--tone-dbeafe);color:var(--tone-1d4ed8,#1d4ed8);}
.employee-accreditation-v128-pill.revision, .employee-accreditation-v128-pill.late{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.employee-accreditation-v128-submission{align-items:center;background:var(--theme-surface-soft,#f7fbff);border-radius:var(--radius-lg,14px);display:flex;gap:12px;justify-content:space-between;margin-top:14px;padding:13px;}
.employee-accreditation-v128-submission b, .employee-accreditation-v128-submission small{display:block;}
.employee-accreditation-v128-submission small{color:var(--theme-text-muted,#60758d);font-size:11px;margin-top:4px;}
.employee-accreditation-v128-empty, .employee-accreditation-v128-loading{background:var(--theme-surface,#fff);border:1px dashed var(--tone-cbd5e1,#cbd5e1);border-radius:var(--radius-2xl,18px);color:var(--theme-text-muted,#60758d);padding:34px;text-align:center;}
.employee-accreditation-v128-modal{align-items:center;display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:500;}
.employee-accreditation-v128-dialog{max-width:540px;padding:22px;width:100%;}
.employee-accreditation-v128-dialog h2{font-size:20px;margin:0 0 6px;}
.employee-accreditation-v128-dialog > p{color:var(--theme-text-muted,#60758d);font-size:12px;line-height:1.6;margin:0 0 16px;}
.employee-accreditation-v128-form{display:grid;gap:13px;}
.employee-accreditation-v128-form label{color:var(--theme-text-strong,#123d6b);display:grid;font-size:12px;font-weight:800;gap:6px;}
.employee-accreditation-v128-form input, .employee-accreditation-v128-form textarea{border:1px solid var(--tone-cbd5e1,#cbd5e1);border-radius:var(--radius-md-lg,12px);font:inherit;padding:11px 12px;}
.employee-accreditation-v128-form footer{display:flex;gap:9px;justify-content:flex-end;}
.employee-accreditation-v128-toast{background:var(--theme-text,#0a2342);border-radius:13px;bottom:24px;color:var(--theme-surface,#fff);font-size:12px;font-weight:800;left:50%;max-width:calc(100% - 32px);padding:12px 16px;position:fixed;transform:translateX(-50%);z-index:600;}
@media (max-width: 700px){.portal-accreditation-react-fallback-v190{gap:12px;padding-bottom:110px;}
.portal-accreditation-fallback-hero-v190{padding:22px;border-radius:21px;}
.portal-accreditation-fallback-grid-v190, .portal-accreditation-fallback-flow-v190 ol{grid-template-columns:minmax(0, 1fr);}
.employee-accreditation-v128{padding-bottom:110px;}
.employee-accreditation-v128-hero{border-radius:21px;padding:22px;}
.employee-accreditation-v128-stats{grid-template-columns:1fr 1fr;}
.employee-accreditation-v128-card{border-radius:var(--radius-2xl,18px);padding:16px;}
.employee-accreditation-v128-card-head,
  .employee-accreditation-v128-submission{align-items:stretch;display:block;}
.employee-accreditation-v128-card-head > div:first-child{min-width:0;width:100%;}
.employee-accreditation-v128-card h3{font-size:16px;line-height:1.3;margin-top:10px;}
.employee-accreditation-v128-card p{font-size:12px;line-height:1.55;margin-top:8px;overflow-wrap:anywhere;}
.employee-accreditation-v128-actions{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;margin-top:14px;width:100%;}
.employee-accreditation-v128-card-head > .employee-accreditation-v128-actions button[data-upload-accreditation]{position:relative!important;display:flex!important;width:100%!important;min-width:0!important;height:auto!important;min-height:46px!important;align-items:center!important;justify-content:center!important;padding:11px 16px!important;border:1px solid #087fc9;border-radius:13px;background:#0b8fdf;background-image:none;color:var(--theme-surface,#fff);font-size:12px;font-weight:900;line-height:1.2;box-shadow:0 7px 18px rgba(11,143,223,.16);}
.employee-accreditation-v128-card-head > .employee-accreditation-v128-actions button[data-upload-accreditation]:active{transform:translateY(1px)!important;box-shadow:none;}
.employee-accreditation-v128-submission{margin-top:14px;padding:12px;}
.employee-accreditation-v128-submission .employee-accreditation-v128-actions{grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:10px;}}
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{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{overflow:visible!important;border:0;background:transparent;box-shadow:none;}
.portal-teacher-today-schedule-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:10px!important;padding:0!important;}
.portal-teacher-schedule-card{position:relative;display:grid!important;grid-template-columns:72px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;min-width:0!important;min-height:72px;border:1px solid var(--schedule-line,#e2e8f0)!important;border-left:4px solid var(--schedule-accent,#078ee8)!important;border-radius:12px!important;background:var(--schedule-tint,#f0f7ff)!important;padding:10px 12px!important;box-shadow:none!important;transition:transform .16s ease,filter .16s ease,border-color .16s ease!important;}
.portal-teacher-schedule-card:hover{filter:brightness(.985);transform:translateY(-1px);}
.portal-teacher-schedule-card > *{min-width:0;}
.portal-teacher-schedule-card > :nth-child(1){width:100%!important;padding:5px 10px 5px 0!important;border-right:1px solid color-mix(in srgb,var(--schedule-accent,#078ee8) 18%,transparent)!important;text-align:center!important;opacity:1!important;}
.portal-teacher-schedule-card > :nth-child(1) span:first-child{color:#334155!important;font-size:12px!important;}
.portal-teacher-schedule-card > :nth-child(1) span:last-child{color:#64748b!important;font-size:9px!important;}
.portal-teacher-schedule-card > :nth-child(2){opacity:1!important;}
.portal-teacher-schedule-card h4{color:#172033!important;font-size:13px!important;line-height:1.3!important;}
.portal-teacher-schedule-card p{margin-top:3px;color:#475569!important;font-size:10px!important;line-height:1.35!important;}
.portal-teacher-schedule-card h4,.portal-teacher-schedule-card p{overflow:hidden;text-overflow:ellipsis;}
.portal-teacher-schedule-card.is-finished{filter:saturate(.55);opacity:.68;}
@media (min-width:1100px){.portal-teacher-today-schedule-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}}
@media (min-width: 768px) and (max-width: 1366px),
       (min-width: 768px) and (pointer: coarse){html[data-portal-brand="guru"] body:has(#root > .flex.h-screen){width:100%!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none!important;}
html[data-portal-brand="guru"] #root,
  html[data-portal-brand="guru"] #root > .flex.h-screen{width:100%!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;overflow:hidden!important;}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > .flex-1.flex.flex-col{height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > .flex-1.flex.flex-col
    > header{flex:0 0 auto!important;}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > .flex-1.flex.flex-col
    > main{flex:1 1 auto!important;width:100%!important;height:auto!important;min-height:0!important;max-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;touch-action:auto!important;-webkit-overflow-scrolling:touch!important;}}
@media (max-width: 767px){html{height:100%;overflow:hidden;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);}





.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{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
.portal-teacher-schedule-card{grid-template-columns:58px minmax(0,1fr)!important;min-height:68px;padding:9px 10px!important;border-radius:10px!important;gap:8px!important;}
.portal-teacher-schedule-card > :nth-child(1){padding-right:7px!important;}
.portal-teacher-today-schedule-grid > .portal-teacher-schedule-card > :last-child{grid-column:1 / -1;justify-self:start;margin-top:1px;}}
@media (max-width:359px){.portal-teacher-today-schedule-grid{grid-template-columns:1fr!important;}}
@media (max-width: 900px), (pointer: coarse){body.portal-keyboard-open .portal-keyboard-surface{box-sizing:border-box!important;inset:auto 0 auto 0!important;top:var(--portal-visual-top)!important;width:100%!important;height:var(--portal-visual-height)!important;min-height:0!important;max-height:var(--portal-visual-height)!important;padding-top:8px!important;padding-bottom:8px!important;align-items:flex-start!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;}
body.portal-keyboard-open .portal-keyboard-scroll{box-sizing:border-box!important;min-height:0!important;max-height:calc(var(--portal-visual-height) - 16px)!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scroll-padding-top:16px;scroll-padding-bottom:28px;touch-action:pan-y;}
body.portal-keyboard-open .portal-keyboard-surface > .portal-keyboard-scroll{flex:0 1 auto!important;margin-top:auto!important;margin-bottom:auto!important;}
body.portal-keyboard-open input:not([type="hidden"]), body.portal-keyboard-open textarea, body.portal-keyboard-open select, body.portal-keyboard-open [contenteditable="true"]{scroll-margin-top:20px;scroll-margin-bottom:36px;}}
@media (max-width: 767px){
#root header + div[class~="md:hidden"] > button[class*="bg-blue-"]{border:1px solid var(--theme-primary,#078ee8);border-radius:var(--radius-md,10px);}
#root main > div[class*="bg-gray-100"][class*="flex"] > button[class*="bg-blue-"]{color:var(--theme-primary-strong,#173f70);border:1px solid var(--theme-primary,#078ee8);border-left-width:4px!important;border-radius:var(--radius-md,10px);background:var(--theme-primary-soft,#f0f8ff);box-shadow:0 7px 16px var(--tone-ec408d0f);transform:none!important;}}
@media (max-width: 767px){#root header + div[class~="md:hidden"]{display:grid!important;grid-template-columns:minmax(0, 1fr) minmax(0, 1.5fr) minmax(0, 1.15fr)!important;align-items:center!important;flex:0 0 auto!important;min-height:54px!important;height:54px!important;padding:6px 12px!important;gap:8px!important;overflow:visible!important;box-sizing:border-box!important;}
#root header + div[class~="md:hidden"] > button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0 8px!important;border:1px solid transparent;border-left-width:1px!important;border-radius:var(--radius-md,10px);background:#f3f4f6;color:var(--tone-6b7280);box-shadow:none;transform:none!important;white-space:nowrap!important;overflow:visible!important;box-sizing:border-box!important;}
#root
    header
    + div[class~="md:hidden"]
    > button[class*="bg-blue-"]{border-color:var(--theme-primary,#078ee8);border-left-width:4px!important;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);box-shadow:0 7px 16px var(--tone-ec408d0f);}}
.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 .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;}}
.portal-guru-category-tabs-v133{align-items:center!important;display:flex!important;flex-wrap:nowrap!important;gap:8px!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;}
.portal-guru-category-tabs-v133::-webkit-scrollbar{display:none;}
.portal-guru-category-tabs-v133 > button{background:var(--theme-surface-muted,#edf5fc);border:1px solid transparent;color:var(--theme-text-muted,#60758d);box-shadow:none;flex:0 0 auto!important;white-space:nowrap!important;}
.portal-guru-category-tabs-v133 > button.bg-blue-500{background:var(--tone-e0f2fe,#e0f2fe);border-color:#7dd3fc;color:var(--theme-primary-deep,#075da9);box-shadow:0 7px 17px rgba(14, 165, 233, 0.16);}
.portal-guru-category-tabs-v133 > button::before, .portal-guru-category-tabs-v133 > button::after{content:none!important;display:none!important;}
@media (max-width: 767px){#root header + div.portal-guru-category-tabs-v133[class~="md:hidden"]{align-items:center!important;display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;height:auto!important;min-height:54px!important;max-width:100vw!important;overflow-x:auto!important;overflow-y:hidden!important;padding:6px 12px!important;scroll-padding-inline:12px;scroll-snap-type:x proximity;}
#root
    header
    + div.portal-guru-category-tabs-v133[class~="md:hidden"]
    > button{flex:0 0 auto!important;height:42px!important;min-height:42px!important;min-width:132px!important;width:auto!important;max-width:none!important;padding:0 14px!important;scroll-snap-align:start;}}
@media (min-width: 768px){#root header + div.portal-guru-category-tabs-v133[class~="md:hidden"]{display: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 > svg{flex:0 0 29px;width:29px!important;height:29px!important;padding:5px;border-radius:9px;background:var(--theme-surface-muted,#edf5fc);color:var(--portal-v143-icon);stroke-width:1.8;}
.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{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{background:var(--portal-v143-green);}
.portal-nav-desktop > button.bg-blue-500 > svg, .portal-nav-desktop > button.bg-blue-50 > svg{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
  )
  > 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,
    [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 var(--tone-00f2c544);}
.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;}}
@media (min-width: 851px){.attendance-daily-scroll, .grading-input-scroll{padding-bottom:0.75rem!important;scroll-padding-bottom:6.25rem;overscroll-behavior:contain;}
.attendance-daily-scroll .attendance-mobile-actions, .grading-input-scroll .grading-mobile-actions{position:sticky!important;inset:auto 0 0!important;bottom:0!important;z-index:35!important;width:100%!important;margin:14px 0 0!important;padding:14px 2px 4px!important;transform:none!important;isolation:isolate;background:linear-gradient(
        to bottom,
        rgba(248, 250, 252, 0),
        rgba(248, 250, 252, 0.94) 28%,
        var(--theme-surface-soft,#f7fbff) 55%
      );}
.attendance-daily-scroll .attendance-mobile-actions{grid-template-columns:minmax(0, 1fr) minmax(260px, 0.72fr)!important;}
.attendance-daily-scroll .attendance-mobile-actions > button, .grading-input-scroll .grading-mobile-actions > button{min-height:56px;box-shadow:0 8px 20px var(--tone-00f2c544);}}
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(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(
  .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 var(--tone-72542a6f);}
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:var(--tone-55019fa1);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 var(--tone-dc0ed917,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(.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"]{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,
      rgba(255, 255, 255, 0.025) 29px,
      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:var(--tone-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 var(--tone-dec94ca2,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:#66766f;font-weight:700;}
@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);}
}
@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="guru"] 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="guru"] .portal-role-login-logo-frame--full{display:flex!important;width:min(340px, 82vw)!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;padding:0!important;margin-inline:auto!important;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible!important;align-items:center!important;justify-content:center!important;}
html[data-portal-brand="guru"]
  .portal-role-login-logo-frame--full
  > img.portal-role-login-logo--full{width:100%!important;margin:0!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;}
html[data-portal-brand="guru"]
  .portal-role-brand-lockup--guru-login
  img.portal-role-logo--wordmark{width:min(350px, 84vw)!important;height:auto!important;max-height:78px!important;margin-inline:auto!important;object-fit:contain!important;object-position:center!important;}
@media (max-width: 767px){html[data-portal-brand="guru"] .portal-role-login-logo-frame--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;}
html[data-portal-brand="guru"]
    .portal-role-brand-lockup--guru-login
    img.portal-role-logo--wordmark{width:min(325px, 84vw)!important;max-height:72px!important;}}
html.portal-guru-login-open, html.portal-guru-login-open body{overflow:hidden!important;overscroll-behavior:none;}
html[data-portal-brand="guru"] #root .portal-guru-login-overlay{box-sizing:border-box!important;position:fixed!important;inset:0!important;z-index:2147483200!important;display:flex!important;width:100vw!important;height:100dvh!important;min-width:100vw!important;min-height:100dvh!important;align-items:center!important;justify-content:center!important;padding:24px!important;overflow-x:hidden!important;overflow-y:auto!important;border:0;border-radius:0;background:rgba(15, 23, 42, 0.46);box-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] #root .portal-guru-login-dialog{box-sizing:border-box!important;flex:0 0 auto!important;width:min(100%, 440px)!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - 48px)!important;margin:auto!important;overflow-x:hidden!important;overflow-y:auto!important;transform:none!important;background:#fff!important;background-image:none!important;border:1px solid #d9e8f5;border-radius:20px;box-shadow:0 16px 50px rgba(12,58,111,.12);}
@media (max-width: 700px){html[data-portal-brand="guru"] #root .portal-guru-login-overlay{padding:max(10px, env(safe-area-inset-top))
      max(10px, env(safe-area-inset-right))
      max(10px, env(safe-area-inset-bottom))
      max(10px, env(safe-area-inset-left))!important;}
html[data-portal-brand="guru"] #root .portal-guru-login-dialog{width:min(100%, 470px)!important;max-height:calc(100dvh - 20px)!important;margin:auto!important;padding:22px 18px
      max(28px, calc(20px + env(safe-area-inset-bottom)))!important;overflow-y:auto!important;}
html[data-portal-brand="guru"]
    #root
    .portal-guru-login-dialog
    > div:first-of-type{margin-bottom:16px!important;}
html[data-portal-brand="guru"]
    #root
    .portal-guru-login-dialog
    img.portal-role-logo--icon{width:58px!important;height:58px!important;}
html[data-portal-brand="guru"] #root .portal-guru-login-dialog h2{padding-inline:28px;font-size:clamp(1.28rem, 5.6vw, 1.55rem);line-height:1.18;}
html[data-portal-brand="guru"] #root .portal-guru-login-dialog form{padding-bottom:4px;}
html[data-portal-brand="guru"] #root .portal-guru-login-dialog > :last-child{margin-bottom:0!important;}}
@media (max-width: 700px) and (max-height: 680px){html[data-portal-brand="guru"] #root .portal-guru-login-dialog{margin:auto!important;padding-top:18px!important;}
html[data-portal-brand="guru"]
    #root
    .portal-guru-login-dialog
    > div:first-of-type{margin-bottom:12px!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;}}

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;}}
@media (max-width:767px){.portal-gradebook-card{border-radius:21px;}
.portal-gradebook-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:8px!important;padding:10px!important;}
.portal-gradebook-filters{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;width:100%!important;gap:8px!important;}
.portal-gradebook-filter{width:100%!important;min-width:0!important;max-width:none!important;height:40px!important;margin:0!important;padding:0 27px 0 10px!important;border-radius:var(--radius-md-lg,12px);font-size:12px;line-height:1.2;text-overflow:ellipsis!important;white-space:nowrap!important;}
.portal-gradebook-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;gap:8px!important;}
.portal-gradebook-actions button{width:100%!important;min-width:0!important;height:39px!important;padding:0 10px!important;border-radius:var(--radius-md-lg,12px);font-size:11px;white-space:nowrap!important;}
.portal-gradebook-table{width:100%!important;min-width:0!important;}
.portal-gradebook-table table{min-width:max-content!important;}
.portal-gradebook-table th:first-child, .portal-gradebook-table td:first-child{width:52vw!important;min-width:52vw!important;max-width:52vw!important;padding:10px 9px!important;overflow:hidden!important;font-size:12px;text-overflow:ellipsis!important;white-space:nowrap!important;}
.portal-gradebook-table th:not(:first-child), .portal-gradebook-table td:not(:first-child){min-width:108px!important;padding:10px 8px!important;}
.portal-gradebook-table th:not(:first-child)>div:first-child{width:92px!important;}
.portal-gradebook-table td:first-child>div{width:25px!important;min-width:25px!important;height:25px!important;}}
@media (max-width: 767px){.portal-guru-mobile-layout #root main select:not([multiple]){box-sizing:border-box!important;min-width:0!important;max-width:100%!important;height:38px!important;min-height:38px!important;padding:0 29px 0 9px!important;border-radius:11px;font-size:11.5px;line-height:1.15;text-overflow:ellipsis!important;white-space:nowrap!important;}
.portal-mobile-filter-grid{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:7px!important;}
.portal-mobile-filter-grid > *{min-width:0!important;}
.portal-mobile-filter-grid label{margin-bottom:3px!important;overflow:hidden!important;font-size:10px;line-height:1.2;text-overflow:ellipsis!important;white-space:nowrap!important;}
.portal-mobile-filter-grid input, .portal-mobile-filter-grid select{box-sizing:border-box!important;width:100%!important;min-width:0!important;height:38px!important;min-height:38px!important;padding:0 9px!important;border-radius:11px;font-size:11.5px;}
.portal-gradebook-toolbar{gap:6px!important;padding:8px!important;}
.portal-gradebook-filters{gap:6px!important;}
.portal-gradebook-filter{height:36px!important;min-height:36px!important;padding:0 27px 0 9px!important;border-radius:var(--radius-md,10px);font-size:11px;}
.portal-gradebook-actions{gap:6px!important;}
.portal-gradebook-actions button{height:36px!important;min-height:36px!important;border-radius:var(--radius-md,10px);font-size:10.5px;}
.portal-gradebook-table th:first-child, .portal-gradebook-table td:first-child{width:42vw!important;min-width:42vw!important;max-width:42vw!important;padding:8px 7px!important;}
.portal-gradebook-table th:not(:first-child), .portal-gradebook-table td:not(:first-child){min-width:92px!important;padding:8px 6px!important;}}
: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;}}
@media (min-width: 768px){html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > :is(div, aside).hidden.md\:flex.w-64.flex-col{box-sizing:border-box!important;flex:0 0 256px!important;width:256px!important;min-width:256px!important;height:100dvh!important;padding:24px 16px!important;overflow:hidden!important;border:0;border-right:1px solid #e7ebf0!important;border-radius:0;color:var(--theme-text-muted,#60758d);background:var(--theme-surface,#fff);box-shadow:10px 0 35px rgba(0, 52, 125, 0.04);}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > :is(div, aside).hidden.md\:flex.w-64.flex-col::before, html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > :is(div, aside).hidden.md\:flex.w-64.flex-col::after{display:none!important;content:none!important;}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > :is(div, aside).hidden.md\:flex.w-64.flex-col
    > .portal-role-brand-lockup--react{box-sizing:border-box!important;display:flex!important;width:100%!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0 8px 24px!important;overflow:visible!important;border:0;border-radius:0;background:transparent;box-shadow:none;}
html[data-portal-brand="guru"]
    #root
    > .flex.h-screen
    > :is(div, aside).hidden.md\:flex.w-64.flex-col
    > .portal-role-brand-lockup--react
    > img.portal-role-logo{display:block!important;width:100%!important;height:auto!important;max-width:208px!important;max-height:58px!important;margin:0!important;padding:0!important;border:0;border-radius:0;object-fit:contain!important;object-position:left center!important;background:transparent;box-shadow:none;}
html[data-portal-brand="guru"] .portal-nav-active-indicator-v195{display:none!important;}
html[data-portal-brand="guru"] .portal-nav-desktop{position:relative!important;display:flex!important;flex:1 1 auto!important;width:100%!important;min-width:0!important;min-height:0!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important;margin:0!important;padding:0 5px 0 0!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-color:#d7e9ff transparent!important;scrollbar-width:thin!important;}
html[data-portal-brand="guru"] .portal-nav-desktop::-webkit-scrollbar{width:5px!important;}
html[data-portal-brand="guru"] .portal-nav-desktop::-webkit-scrollbar-thumb{border-radius:var(--radius-md,10px);background:#d7e9ff;}
html[data-portal-brand="guru"] .portal-nav-desktop > button{position:relative!important;display:flex!important;flex:0 0 auto!important;width:100%!important;min-height:48px!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;margin:0!important;padding:12px 14px!important;overflow:hidden!important;border:0;border-radius:var(--radius-xl,16px);color:var(--theme-text-muted,#60758d);background:transparent;box-shadow:none;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;font-weight:600;letter-spacing:0.006em;line-height:1.32;text-align:left!important;transform:none!important;}
html[data-portal-brand="guru"]
    .portal-nav-desktop
    > button:not(
      :is(
        .active,
        .bg-blue-500,
        .bg-blue-50,
        .text-blue-500,
        [aria-current="page"],
        [aria-selected="true"],
        [aria-pressed="true"]
      )
    ):hover{color:var(--theme-primary-strong,#173f70);background:var(--theme-primary-soft,#f0f8ff);box-shadow:none;transform:translateX(3px)!important;}
html[data-portal-brand="guru"]
    .portal-nav-desktop
    > button:is(
      .active,
      .bg-blue-500,
      .bg-blue-50,
      .text-blue-500,
      [aria-current="page"],
      [aria-selected="true"],
      [aria-pressed="true"]
    ), html[data-portal-brand="guru"]
    .portal-nav-desktop[data-portal-indicator-ready="true"]
    > button:is(
      .active,
      .bg-blue-500,
      .bg-blue-50,
      .text-blue-500,
      [aria-current="page"],
      [aria-selected="true"],
      [aria-pressed="true"]
    ){border:0;border-radius:var(--radius-xl,16px);color:var(--theme-primary-strong,#173f70);background:#eef5ff;box-shadow:none;font-weight:700;transform:none!important;}
html[data-portal-brand="guru"]
    .portal-nav-desktop
    > button:is(
      .active,
      .bg-blue-500,
      .bg-blue-50,
      .text-blue-500,
      [aria-current="page"],
      [aria-selected="true"],
      [aria-pressed="true"]
    )::before{position:absolute!important;top:10px!important;bottom:10px!important;left:0!important;display:block!important;width:4px!important;border:0;border-radius:9px;background:var(--theme-primary,#078ee8);box-shadow:none;content:""!important;}
html[data-portal-brand="guru"] .portal-nav-desktop > button::after{display:none!important;content:none!important;}
html[data-portal-brand="guru"]
    .portal-nav-desktop
    > button
    :is(svg, .nav-icon, .admin-nav-icon){flex:0 0 22px!important;width:22px!important;height:22px!important;padding:0!important;border:0;color:inherit;background:transparent;box-shadow:none;fill:none;stroke:currentColor;}
html[data-portal-brand="guru"]
    .portal-nav-desktop
    > button
    :is(span, b, small){color:inherit;font:inherit;letter-spacing:inherit;}}
@media (max-width: 767px){html[data-portal-brand="guru"] .portal-nav-active-indicator-v195{display:none!important;}
html[data-portal-brand="guru"] .portal-nav-mobile{border:0;border-top:1px solid var(--tone-dbe5f0,#dbe5f0)!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));}
html[data-portal-brand="guru"] .portal-nav-mobile > button{border:0;border-radius:var(--radius-lg,14px);color:var(--tone-9ca3af,#9ca3af);background:transparent;box-shadow:none;}
html[data-portal-brand="guru"]
    .portal-nav-mobile
    > button:is(
      .active,
      .bg-blue-500,
      .bg-blue-50,
      .text-blue-500,
      [aria-current="page"],
      [aria-selected="true"],
      [aria-pressed="true"]
    ){color:var(--theme-primary,#078ee8);background:transparent;box-shadow:none;}}
.student-record-section{display:flex;flex-direction:column;gap:12px;}
.student-record-toolbar-actions{align-items:center;}
@media (max-width: 767px){.student-record-section{gap:9px;}
.student-record-toolbar{gap:9px!important;padding:11px!important;border-radius:var(--radius-2xl,18px);}
.student-record-toolbar h2{font-size:17px;line-height:1.2;}
.student-record-toolbar h2 + p{margin-top:2px!important;font-size:10.5px;line-height:1.35;}
.student-record-toolbar-actions{display:flex!important;width:100%!important;flex-wrap:nowrap!important;gap:6px!important;padding:1px 1px 4px!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.student-record-toolbar-actions::-webkit-scrollbar{display:none;}
.student-record-toolbar-actions > select, .student-record-toolbar-actions > button, .student-record-toolbar-actions > label{box-sizing:border-box!important;width:auto!important;min-width:max-content!important;height:36px!important;min-height:36px!important;margin:0!important;padding:0 10px!important;flex:0 0 auto!important;border-radius:11px;font-size:10.5px;line-height:1;white-space:nowrap!important;}
.student-record-toolbar-actions > select{width:116px!important;min-width:116px!important;padding-right:27px!important;}}
.student-record-list{display:flex!important;width:100%!important;flex-direction:column!important;gap:0!important;overflow:hidden!important;padding:0!important;border:1px solid #e7efecca;border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 28px rgba(18, 54, 74, 0.06);}
.student-record-row{position:relative!important;display:flex!important;width:100%!important;min-width:0!important;min-height:56px!important;align-items:center!important;margin:0!important;padding:0 18px!important;overflow:hidden!important;border:0;border-bottom:1px solid var(--tone-edf2f0,#edf2f0)!important;border-radius:0;background:var(--theme-surface,#fff);box-shadow:none;cursor:pointer!important;}
.student-record-row:last-child{border-bottom:0!important;}
.student-record-row:hover, .student-record-row:focus-visible{border-color:var(--tone-edf2f0,#edf2f0);background:var(--theme-primary-soft,#f0f8ff);box-shadow:none;transform:none!important;}
.student-record-row:focus-visible{z-index:1;outline:2px solid rgba(0, 111, 209, 0.42);outline-offset:-2px!important;}
.student-record-row > *:not(.student-record-identity), .student-record-row .student-record-actions{display:none!important;}
.student-record-row .student-record-identity{display:flex!important;width:100%!important;min-width:0!important;flex:1 1 auto!important;align-items:center!important;gap:0!important;margin:0!important;padding:0!important;}
.student-record-row
  .student-record-identity
  > :first-child{display:none!important;}
.student-record-row
  .student-record-identity
  > :last-child{display:block!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;}
.student-record-row .student-record-identity h3{display:block!important;margin:0!important;overflow:hidden!important;color:var(--theme-text-strong,#123d6b);font-size:14.5px;font-weight:700;line-height:1.35;text-overflow:ellipsis!important;white-space:nowrap!important;}
.student-record-row:hover .student-record-identity h3, .student-record-row:focus-visible .student-record-identity h3{color:var(--theme-primary-strong,#173f70);}
.student-record-row .student-record-identity p{display:none!important;}
body.student-record-dialog-open{overflow:hidden!important;}
.student-record-dialog-overlay[hidden]{display:none!important;}
.student-record-dialog-overlay{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:20px;overflow-x:hidden;overflow-y:auto;}
.student-record-dialog-card{box-sizing:border-box;width:min(100%, 620px);max-height:calc(100dvh - 40px);overflow-x:hidden;overflow-y:auto;}
.student-record-dialog-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 22px 18px;border-bottom:1px solid var(--tone-edf2f0,#edf2f0);}
.student-record-dialog-heading{display:flex;min-width:0;align-items:center;gap:13px;}
.student-record-dialog-avatar{display:grid;width:46px;min-width:46px;height:46px;place-items:center;font-size:17px;font-weight:800;}
.student-record-dialog-eyebrow{display:block;margin-bottom:2px;font-size:10px;font-weight:800;letter-spacing:0.09em;line-height:1.2;text-transform:uppercase;}
.student-record-dialog-heading h2{margin:0;overflow:hidden;color:var(--tone-1e293b);font-size:19px;font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;}
.student-record-dialog-close{display:grid;width:36px;min-width:36px;height:36px;place-items:center;padding:0;font:500 24px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
.student-record-dialog-close:hover{color:var(--theme-danger-strong,#dc2626);background:var(--tone-fef2f2);}
.student-record-dialog-profile-photo{margin:18px 22px 0;padding:10px;text-align:center;}
.student-record-dialog-profile-photo img{display:block;width:120px;height:150px;margin:0 auto;border-radius:16px;object-fit:cover;object-position:center;background:#eef5f9;}
.student-record-dialog-details{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px;margin:0;padding:20px 22px 10px;}
.student-record-dialog-details > div{min-width:0;padding:14px;border:1px solid var(--tone-edf2f0,#edf2f0);border-radius:var(--radius-xl,16px);background:var(--tone-f8fbfa,#f8fbfa);}
.student-record-dialog-detail-wide{grid-column:1 / -1;}
.student-record-dialog-details dt{margin:0 0 5px;color:var(--theme-text-subtle,#7e90a5);font-size:10px;font-weight:800;letter-spacing:0.045em;line-height:1.2;text-transform:uppercase;}
.student-record-dialog-details dd{margin:0;overflow-wrap:anywhere;color:var(--theme-text-strong,#123d6b);font-size:13.5px;font-weight:700;line-height:1.45;}
.student-record-dialog-utility{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:8px 22px 18px;}
.student-record-dialog-utility button{box-sizing:border-box;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #d9e7ef;border-radius:13px;color:#155f8f;background:#f7fbfe;font-size:12.5px;font-weight:800;line-height:1.25;cursor:pointer;box-shadow:0 3px 0 rgba(8,102,160,.08);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease;}
.student-record-dialog-utility button:hover{transform:translateY(-1px);border-color:#8fc7e8;background:#edf8ff;box-shadow:0 5px 12px rgba(8,102,160,.10);}
.student-record-dialog-utility button:active{transform:translateY(1px);box-shadow:0 1px 0 rgba(8,102,160,.08);}
.student-record-dialog-utility button[data-student-qr]{color:#066fae;background:#eef8ff;border-color:#b9ddf3;}
.student-record-dialog-utility button[data-student-reset]{color:#8a5a00;background:#fff9ea;border-color:#efd79a;}
.student-record-dialog-utility button[data-student-reset]:hover{background:#fff4cf;border-color:#e4be5c;}
.student-record-dialog-utility button[data-student-delete]{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#d92d45!important;border-color:#b91f37!important;box-shadow:0 5px 12px rgba(185,31,55,.18);}
.student-record-dialog-utility button[data-student-delete]:hover{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#b91f37!important;border-color:#991b31!important;box-shadow:0 7px 16px rgba(153,27,49,.22);}
.student-record-dialog-footer{display:grid;grid-template-columns:0.8fr 1.2fr;gap:10px;padding:16px 22px 22px;border-top:1px solid var(--tone-edf2f0,#edf2f0);}
.student-record-dialog-footer button{min-height:44px;padding:10px 14px;border:0;border-radius:var(--radius-lg,14px);font-size:12.5px;font-weight:800;cursor:pointer;}
.student-record-dialog-footer button:hover{transform:translateY(-1px);}


.student-record-dialog-edit:hover{background:var(--theme-primary-strong,#173f70);}
.student-record-dialog-overlay button:focus-visible{outline:2px solid rgba(0, 111, 209, 0.48);outline-offset:2px;}
.student-record-dialog-overlay button:disabled{opacity:0.45;cursor:not-allowed;}
@media (max-width: 767px){.student-record-list{border-radius:17px;}
.student-record-row{min-height:54px!important;padding:0 14px!important;}
.student-record-row .student-record-identity h3{font-size:13.5px;}
.student-record-dialog-overlay{align-items:flex-end;padding:12px;}
.student-record-dialog-card{width:100%;max-height:calc(100dvh - 24px);}
.student-record-dialog-header{padding:18px 18px 15px;}
.student-record-dialog-details{padding:16px 18px 8px;}
.student-record-dialog-utility{padding:6px 18px 16px;gap:8px;}
.student-record-dialog-utility button{min-height:48px;padding:10px 8px;font-size:12px;}
.student-record-dialog-footer{padding:14px 18px calc(18px + env(safe-area-inset-bottom));}}
@media (max-width: 370px){.student-record-dialog-details{grid-template-columns:minmax(0, 1fr);}
.student-record-dialog-detail-wide{grid-column:auto;}
.student-record-dialog-footer{grid-template-columns:minmax(0, 1fr);}
.student-record-dialog-utility{grid-template-columns:minmax(0,1fr);}}
.student-record-class-filter{display:flex;min-width:190px;align-items:center;gap:8px;min-height:44px;padding:5px 6px 5px 11px;border:1px solid #dbe7e2;border-radius:var(--radius-md-lg,12px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);font-size:10px;font-weight:900;}
.student-record-class-filter span{flex:0 0 auto;}
.student-record-class-filter select{min-width:112px;max-width:190px;min-height:32px;padding:0 27px 0 9px;border:0;border-radius:9px;outline:0;background:var(--theme-surface,#fff);color:#1f323d;font-size:11px;font-weight:850;}
.student-record-row.student-record-hidden{display:none!important;}
.student-record-class-heading{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:14px;padding:0 18px;border-top:1px solid #d7e8f3;border-bottom:1px solid #d7e8f3;color:var(--theme-primary-darker,#123d6b);background:linear-gradient(90deg,var(--tone-eaf5fc),#f4faf8);}
.student-record-class-heading:first-child{border-top:0;}
.student-record-class-heading span{font-size:12px;font-weight:900;letter-spacing:.015em;}
.student-record-class-heading strong{padding:5px 9px;border:1px solid #c9e1f0;border-radius:var(--radius-pill,999px);color:#0876b9;background:var(--theme-surface,#fff);font-size:9px;font-weight:900;}
@media (max-width:767px){.student-record-class-filter{order:-3;width:100%;}
.student-record-class-filter select{flex:1 1 auto;width:100%;max-width:none;}
.student-record-class-heading{min-height:39px;padding:0 14px;}}
html[data-portal-brand="guru"] #root, html[data-portal-brand="guru"] #root > .flex, html[data-portal-brand="guru"] #root main, html[data-portal-brand="guru"] #root main > *{min-width:0;}
html[data-portal-brand="guru"] #root main > *{max-width:100%;}
html[data-portal-brand="guru"] #root button > svg{flex:0 0 auto!important;width:min(24px, 1.5em)!important;height:min(24px, 1.5em)!important;max-width:24px!important;max-height:24px!important;}
html[data-portal-brand="guru"] #root .qr-attendance-v191, html[data-portal-brand="guru"] #root .qr-attendance-v191-action{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;height:auto!important;max-height:none!important;}
html[data-portal-brand="guru"] #root .qr-attendance-v191-icon{display:grid!important;place-items:center!important;flex:0 0 48px!important;width:48px!important;min-width:48px!important;max-width:48px!important;height:48px!important;min-height:48px!important;max-height:48px!important;overflow:hidden!important;}
html[data-portal-brand="guru"] #root .qr-attendance-v191-icon > svg{display:block!important;width:25px!important;min-width:25px!important;max-width:25px!important;height:25px!important;min-height:25px!important;max-height:25px!important;fill:none;stroke:currentColor;}
html[data-portal-brand="guru"] #root
  .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1{align-items:center!important;min-height:0!important;height:auto!important;max-height:none!important;}
html[data-portal-brand="guru"] #root
  .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1
  > button{box-sizing:border-box!important;flex:0 0 auto!important;min-width:128px!important;min-height:48px!important;height:48px!important;max-height:48px!important;padding:0 16px!important;font-size:12px;line-height:1.2;white-space:nowrap!important;}
html[data-portal-brand="guru"] #root
  .teacher-open-student-scan
  > .teacher-scan-tab-icon{box-sizing:border-box!important;display:block!important;flex:0 0 16px!important;width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important;margin:0!important;padding:0!important;fill:none;stroke:currentColor;}
@media (max-width: 767px){html[data-portal-brand="guru"] #root header + div[class~="md:hidden"]{box-sizing:border-box!important;display:flex!important;flex-wrap:nowrap!important;grid-template-columns:none!important;align-items:center!important;width:100%!important;max-width:100vw!important;min-height:54px!important;height:auto!important;padding:6px 12px!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain!important;scroll-padding-inline:12px;scroll-snap-type:x proximity;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch;}
html[data-portal-brand="guru"] #root
    header
    + div[class~="md:hidden"]::-webkit-scrollbar{display:none;}
html[data-portal-brand="guru"] #root
    header
    + div[class~="md:hidden"]
    > button{box-sizing:border-box!important;flex:0 0 auto!important;width:auto!important;min-width:132px!important;max-width:none!important;min-height:42px!important;height:42px!important;margin:0!important;padding:0 14px!important;overflow:hidden!important;white-space:nowrap!important;scroll-snap-align:start;}}
html[data-portal-brand="guru"]
  :is(
    .psn-button,
    .portal-student-notification
  )
  > svg{display:block!important;flex:0 0 22px!important;width:22px!important;min-width:22px!important;max-width:22px!important;height:22px!important;min-height:22px!important;max-height:22px!important;}
@media (max-width: 700px){html[data-portal-brand="guru"] #root
    .bg-gray-100.p-1\.5.rounded-xl.inline-flex.gap-1
    > button{min-width:118px!important;min-height:45px!important;height:45px!important;max-height:45px!important;padding:0 13px!important;font-size:11px;}}
:is(#modal,#ownerModal,#foundationModal).modal, .eskul-student-modal, .student-id-card-modal, .teacher-qr-modal, .teacher-student-scan-modal, .employee-id-card-modal, .employee-attendance-v126-modal, .employee-accreditation-v128-modal, .student-record-dialog-overlay{background-color:rgba(18,29,36,.5);}
:is(#modal,#ownerModal,#foundationModal) .modal-card, .eskul-student-modal-card, .student-id-card-dialog, .teacher-qr-dialog, .teacher-student-scan-dialog, .employee-id-card-dialog, .employee-attendance-v126-dialog, .employee-accreditation-v128-dialog, .student-record-dialog-card{border:0;background-color:rgba(255,255,255,.98);box-shadow:0 28px 85px rgba(15,30,37,.25),0 2px 8px rgba(15,30,37,.07);-webkit-font-smoothing:antialiased;scrollbar-width:thin;scrollbar-color:rgba(92,111,103,.24) transparent;}
: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, .student-id-card-dialog 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, .student-record-dialog-card button{-webkit-tap-highlight-color:transparent;}
:is(#modal,#ownerModal,#foundationModal) .modal-card button:active, .eskul-student-modal-card button:active, .student-id-card-dialog 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, .student-record-dialog-card 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;}}
.student-class-required-v212{position:fixed;inset:0;z-index:10400;display:grid;place-items:center;padding:20px;background:rgba(19, 33, 45, .46);}
.student-class-required-card-v212{position:relative;width:min(100%, 480px);padding:32px;border:1px solid rgba(255, 255, 255, .84);border-radius:27px;color:#182438;background:rgba(255, 255, 255, .97);box-shadow:0 30px 85px rgba(15, 35, 43, .24);text-align:center;}
.student-class-required-step-v214{position:absolute;top:17px;right:18px;padding:6px 9px;border:1px solid #d9ebe5;border-radius:var(--radius-pill,999px);color:#516672;background:#f4faf8;font-size:8px;font-weight:900;letter-spacing:.1em;}
.student-class-required-icon-v212{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 16px;border-radius:var(--radius-3xl,20px);color:#075986;background:linear-gradient(145deg, #e7f8f2, #d8f2e9);box-shadow:inset 0 0 0 1px rgba(7, 89, 134, .1);}
.student-class-required-icon-v212 svg{width:31px;height:31px;}
.student-class-required-kicker-v212{display:block;color:#0a6292;font-size:10px;font-weight:900;letter-spacing:.15em;}
.student-class-required-card-v212 h2{margin:8px 0 9px;color:#182438;font-size:22px;font-weight:850;line-height:1.25;letter-spacing:-.03em;}
.student-class-required-card-v212 p{margin:0;color:#687588;font-size:13px;line-height:1.7;}
.student-class-required-card-v212 p strong{color:#084e74;}
.student-class-required-setting-link-v214{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;}
.student-class-required-setting-link-v214 svg{width:14px;height:14px;}
.student-class-required-actions-v212{display:grid;grid-template-columns:.75fr 1.25fr;gap:10px;margin-top:24px;}
.student-class-required-actions-v212 button{min-height:47px;padding:0 16px;border:1px solid #dce7e4;border-radius:var(--radius-lg,14px);color:#536173;background:#f7f9f9;font:inherit;font-size:12px;font-weight:850;cursor:pointer;}
.student-class-required-actions-v212 button:hover{transform:translateY(-1px);border-color:#bbd9d1;background:var(--theme-surface,#fff);}
.student-class-required-actions-v212 button.is-primary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-color:#076294;color:var(--theme-surface,#fff);background:linear-gradient(135deg, #075b89, #1075ad);box-shadow:0 10px 24px rgba(7, 98, 148, .2);}
.student-class-required-settings-icon-v213{width:19px;height:19px;flex:0 0 auto;display:grid;place-items:center;}
.student-class-required-settings-icon-v213 svg{width:19px;height:19px;}
.student-class-required-arrow-v214{width:16px;height:16px;flex:0 0 auto;margin-left:1px;opacity:.78;}
.student-class-required-actions-v212 button.is-primary:hover .student-class-required-arrow-v214{transform:translateX(2px);}
.student-class-required-actions-v212 button:focus-visible{outline:3px solid rgba(10, 98, 146, .2);outline-offset:3px;}
@media (max-width: 520px){.student-class-required-v212{align-items:end;padding:12px;}
.student-class-required-card-v212{padding:24px 19px 18px;border-radius:var(--radius-5xl,24px);}
.student-class-required-step-v214{position:static;width:fit-content;margin:0 auto 12px;}
.student-class-required-card-v212 h2{font-size:20px;}
.student-class-required-actions-v212{grid-template-columns:1fr;}
.student-class-required-actions-v212 button.is-primary{grid-row:1;}}
.school-student-pull-open-button{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #16649b;border-radius:var(--radius-md-lg,12px);padding:11px 15px;background:var(--tone-0877bb);color:var(--theme-surface,#fff);font-size:14px;font-weight:800;box-shadow:0 3px 0 #14547e,0 7px 14px rgba(20,84,126,.14);cursor:pointer;}
.school-student-pull-open-button:active{transform:translateY(2px);box-shadow:0 1px 0 #14547e;}
.school-student-pull-open-button span{font-size:18px;line-height:1;}
.school-student-pull-layer[hidden]{display:none!important;}
.school-student-pull-layer{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:18px;background:rgba(8,26,45,.58);}
body.school-student-pull-open{overflow:hidden;}
.school-student-pull-card{display:flex;flex-direction:column;width:min(720px,100%);max-height:min(760px,calc(100dvh - 36px));overflow:hidden;border:1px solid var(--tone-dce7ef);border-radius:28px;background:var(--theme-surface,#fff);box-shadow:0 30px 90px rgba(5,35,58,.28);color:#183047;}
.school-student-pull-card header{display:flex;justify-content:space-between;gap:20px;padding:23px 25px;border-bottom:1px solid #e5edf3;background:linear-gradient(135deg,#f5fbff,#edf7fc);}
.school-student-pull-card header small{color:var(--tone-0877bb);font-size:10px;font-weight:900;letter-spacing:.12em;}
.school-student-pull-card header h2{margin:5px 0 4px;font-size:21px;}
.school-student-pull-card header p{margin:0;color:#637b8d;font-size:12px;}
.school-student-pull-card header button{flex:0 0 38px;width:38px;height:38px;border:1px solid #bfcfdb;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);color:#35556d;font-size:24px;cursor:pointer;}
.school-student-pull-body{display:grid;gap:14px;min-height:0;padding:20px 24px;overflow:auto;}
.school-student-pull-class{display:grid;gap:7px;color:#455f73;font-size:12px;font-weight:800;}
.school-student-pull-class select{width:100%;border:1px solid #cad9e4;border-radius:13px;padding:12px 14px;background:var(--tone-f8fbfd);color:#173b55;font:700 13px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.school-student-pull-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #cfe0ec;border-radius:13px;background:#f4f9fc;font-size:11px;}
.school-student-pull-toolbar[hidden]{display:none!important;}
.school-student-pull-toolbar label{display:flex;align-items:center;gap:8px;font-weight:800;}
.school-student-pull-toolbar b{color:var(--tone-0877bb);}
.school-student-pull-list{display:grid;gap:8px;min-height:110px;max-height:360px;overflow:auto;}
.school-student-pull-list>p{margin:0;padding:25px;border:1px dashed #cfdde7;border-radius:15px;color:#708696;text-align:center;font-size:12px;line-height:1.6;}
.school-student-pull-list label{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;border:1px solid #dbe6ed;border-radius:var(--radius-lg,14px);background:var(--theme-surface,#fff);cursor:pointer;}
.school-student-pull-list label:has(input:checked){border-color:#48a2d8;background:#f0f9ff;}
.school-student-pull-list label.is-disabled{background:#f6f8f9;color:#8797a2;cursor:not-allowed;}
.school-student-pull-list input{width:17px;height:17px;accent-color:var(--tone-0877bb);}
.school-student-pull-list b, .school-student-pull-list small{display:block;}
.school-student-pull-list b{font-size:13px;}
.school-student-pull-list small{margin-top:3px;color:#6d8292;font-size:10px;}
.school-student-pull-list em{font-size:9px;font-style:normal;font-weight:800;color:#26835f;text-align:right;}
.school-student-pull-list .is-disabled em{color:#9a6d33;}
.school-student-pull-status{min-height:18px;margin:0;font-size:11px;font-weight:800;line-height:1.55;}
.school-student-pull-status[data-type=error]{color:#c1344a;}
.school-student-pull-status[data-type=warning]{color:#9a6518;}
.school-student-pull-status[data-type=success]{color:#11865d;}
.school-student-pull-status[data-type=loading]{color:var(--tone-0877bb);}
.school-student-pull-card footer{display:flex;justify-content:flex-end;gap:10px;padding:17px 24px;border-top:1px solid #e5edf3;}
.school-student-pull-card footer button{border:1px solid #cbd9e3;border-radius:var(--radius-md-lg,12px);padding:11px 17px;font-weight:800;cursor:pointer;}
.school-student-pull-card footer .secondary{background:var(--theme-surface,#fff);color:#536b7d;}
.school-student-pull-card footer .primary{border-color:var(--tone-0877bb);background:var(--tone-0877bb);color:var(--theme-surface,#fff);}
.school-student-pull-card footer button:disabled{opacity:.45;cursor:not-allowed;}
@media (max-width:640px){.school-student-pull-open-button{width:100%;}
.school-student-pull-layer{align-items:end;padding:0;}
.school-student-pull-card{max-height:92dvh;border-radius:26px 26px 0 0;}
.school-student-pull-card header, .school-student-pull-body, .school-student-pull-card footer{padding-left:17px;padding-right:17px;}
.school-student-pull-list label{grid-template-columns:auto minmax(0,1fr);}
.school-student-pull-list em{grid-column:2;text-align:left;}
.school-student-pull-card footer{padding-bottom:calc(17px + env(safe-area-inset-bottom));}
.school-student-pull-card footer button{flex:1;}}
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 var(--tone-069d9036,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-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,
  [class$="-table-wrap"]
):not(button):not([role="button"]){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,
  [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 rgba(255,255,255,.92);}
html[data-clay-theme="v228"] :is(
  .modal-card,
  .ab-modal,
  .eskul-form-modal,
  .eskul-review-modal,
  .eskul-student-modal-card,
  .payroll-template-modal,
  [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,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]),
  .portal-nav-mobile > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,[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,[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,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]),
  .portal-nav-mobile > button:is(.active,.bg-blue-500,.bg-blue-50,.text-blue-500,[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 var(--tone-8a2dea80,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:var(--tone-fef3c7,#fef3c7);--eg-violet:#6366f1;--eg-violet-soft:#e0e7ff;--eg-danger:var(--tone-e11d48,#e11d48);--eg-danger-soft:#ffe4e8;--eg-info:var(--tone-0ea5e9,#0ea5e9);--eg-info-soft:var(--tone-e0f2fe,#e0f2fe);--eg-ink:#0f2a22;--eg-body:var(--tone-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] #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,
    [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){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,
  article,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):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,
  article,
  [class$="-card"],
  [class$="-panel"]
):not(button):not([role="button"]):hover{box-shadow:var(--eg-shadow-md);transform:translateY(-2px)!important;}
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
){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(.modal, [class$="-overlay"], [class$="-backdrop"], [role="dialog"]):not(.hidden){background-color:rgba(9, 26, 21, 0.5);}
html[data-portal-brand] :is(
  .modal-card,
  [class$="-dialog"],
  [class$="-modal-card"],
  [class$="-modal"]
):not(button):not([role="button"]){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] .modal form{border-radius:var(--eg-radius-xl);}
html[data-portal-brand] :is(
  .leave-row,
  .slip,
  .notice,
  .document-item,
  .teacher-task-history-item,
  .teacher-qr-student-row,
  .student-record-row
){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,
  .student-record-row
):hover{background:var(--eg-line-soft);}
html[data-portal-brand] :is(
  .portal-leave-status
){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:var(--tone-92400e,#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] :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;}}
@media (max-width: 767px){#root header + div.portal-guru-category-tabs-v133[class~="md:hidden"] > button{background:var(--theme-surface-muted,#edf5fc);border-color:#dbe4ea;color:var(--theme-text-secondary,#50657e);-webkit-text-fill-color:var(--theme-text-secondary,#50657e)!important;font-weight:700;opacity:1!important;}
#root header + div.portal-guru-category-tabs-v133[class~="md:hidden"] > button.bg-blue-500, #root header + div.portal-guru-category-tabs-v133[class~="md:hidden"] > button[class*="bg-blue-"], #root header + div.portal-guru-category-tabs-v133[class~="md:hidden"] > button[class*="text-white"]{background:var(--theme-primary-mid,#1264ad);border-color:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 18px rgba(8, 80, 120, 0.24);opacity:1!important;}}
.teacher-duty-v08-action button, .teacher-duty-v08-note button, .teacher-duty-v08-photo-actions button:not(.teacher-duty-v08-back), .teacher-duty-v08-error button{padding:12px 18px;border:0;border-radius:13px;background:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);font-weight:800;cursor:pointer;}
.eduvia-school-tool-page{width:100%;min-width:0;padding-bottom:16px;overflow-wrap:anywhere;}
.teacher-duty-v08-workspace{width:100%;min-width:0;border:1px solid #dce8f2;border-radius:20px;background:var(--theme-surface,#fff);overflow:hidden;}
.teacher-duty-v08-heading{display:block;padding:20px 24px;background:#fff;border-bottom:1px solid #dce8f2;color:#172b46;}
.teacher-duty-v08-heading small{font-weight:800;letter-spacing:.13em;color:#526174;-webkit-text-fill-color:#526174;}
.teacher-duty-v08-heading h2{margin:4px 0 0;font-size:24px;line-height:1.1;color:#172b46;-webkit-text-fill-color:#172b46;}

.teacher-duty-v08-body{min-width:0;padding:22px;}
.teacher-duty-v08-profile{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.teacher-duty-v08-profile>div{display:grid;gap:5px;padding:16px;border:1px solid #d8e8e3;border-radius:17px;background:var(--tone-f7faff,#f7faff);}
.teacher-duty-v08-profile small, .teacher-duty-v08-schedule small, .teacher-duty-v08-qr-head small, .teacher-duty-v08-photo-head small{font-size:11px;font-weight:900;letter-spacing:.1em;color:var(--theme-primary-mid,#1264ad);}
.teacher-duty-v08-profile b{font-size:17px;}
.teacher-duty-v08-profile span{color:var(--tone-62747e);}
.teacher-duty-v08-schedule{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:20px;border:1px solid #a9cee3;border-radius:var(--radius-3xl,20px);background:#edfff9;}
.teacher-duty-v08-schedule h3{margin:6px 0 2px;font-size:25px;color:#08222f;}
.teacher-duty-v08-schedule p{margin:0;color:#536873;}
.teacher-duty-v08-schedule>span{padding:9px 12px;border-radius:var(--radius-pill,999px);background:var(--theme-surface,#fff);color:var(--theme-primary-mid,#1264ad);font-weight:800;}
.teacher-duty-v08-schedule.is-recorded>span{background:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);}
.teacher-duty-v08-action, .teacher-duty-v08-note, .teacher-duty-v08-history, .teacher-duty-v08-empty{margin-top:14px;padding:20px;border:1px solid #d9e8e4;border-radius:var(--radius-3xl,20px);}
.teacher-duty-v08-action h3, .teacher-duty-v08-note h3, .teacher-duty-v08-history h3{margin:0 0 7px;}
.teacher-duty-v08-action p, .teacher-duty-v08-note p{color:#61727c;}
.teacher-duty-v08-action button{width:100%;margin-top:6px;}
.teacher-duty-v08-note form{display:grid;gap:10px;}
.teacher-duty-v08-note textarea, .teacher-duty-v08-photo-note textarea{width:100%;padding:13px;border:1px solid #c9dcd7;border-radius:var(--radius-lg,14px);resize:vertical;font:inherit;}
.teacher-duty-v08-completed{display:grid;gap:7px;padding:14px;border-radius:var(--radius-lg,14px);background:#e9fff7;color:#15445e;}
.teacher-duty-v08-history>div{display:grid;gap:8px;}
.teacher-duty-v08-history article{display:grid;grid-template-columns:1fr 1.7fr;gap:12px;padding:12px 0;border-bottom:1px solid #e5efec;}
.teacher-duty-v08-history article:last-child{border-bottom:0;}
.teacher-duty-v08-history article>div{display:grid;gap:3px;}
.teacher-duty-v08-history span{color:#6a817c;}
.teacher-duty-v08-working, .teacher-duty-v08-error{display:grid;justify-items:center;gap:8px;padding:50px 20px;text-align:center;}
.teacher-duty-v08-working span{width:36px;height:36px;border:4px solid #d4eee7;border-top-color:var(--theme-primary-mid,#1264ad);border-radius:50%;}
.teacher-duty-v08-working p, .teacher-duty-v08-error p{margin:0;color:var(--tone-62747e);}
.teacher-duty-v08-empty{text-align:center;background:var(--tone-f8fbfa,#f8fbfa);}
.teacher-duty-v08-empty p{margin-bottom:0;color:var(--tone-62747e);}
.teacher-duty-v08-qr-head, .teacher-duty-v08-photo-head{text-align:center;}
.teacher-duty-v08-qr-head h3, .teacher-duty-v08-photo-head h3{margin:5px 0;}
.teacher-duty-v08-qr-head p, .teacher-duty-v08-photo-head p{margin:0;color:var(--tone-62747e);}
.teacher-duty-v08-qr-card{display:grid;justify-items:center;gap:8px;margin:16px auto;padding:18px;border:1px solid #cde3dd;border-radius:var(--radius-3xl,20px);background:#f5fbf9;}
.teacher-duty-v08-qr-card canvas, .teacher-duty-v08-qr-card img{max-width:100%;height:auto;}
.teacher-duty-v08-qr-card span{color:#5f717a;}
.teacher-duty-v08-live{padding:12px;border-radius:13px;background:#edf5f3;color:#314e5e;text-align:center;font-weight:700;}
.teacher-duty-v08-live.is-success{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-darker,#123d6b);}
.teacher-duty-v08-live.is-error{background:#fff0f2;color:#b20e3d;}
.teacher-duty-v08-back{padding:11px 16px;border:1px solid #8fd1ff;border-radius:13px;background:var(--theme-surface,#fff);color:var(--theme-primary-mid,#1264ad);font-weight:800;}
.teacher-duty-v08-qr-card+.teacher-duty-v08-live+.teacher-duty-v08-back{width:100%;}
.teacher-duty-v08-camera{max-width:720px;position:relative;margin:15px auto;overflow:hidden;aspect-ratio:4/3;border-radius:var(--radius-3xl,20px);background:#0b2e59;}
.teacher-duty-v08-camera video, .teacher-duty-v08-camera img{width:100%;height:100%;object-fit:cover;}
.teacher-duty-v08-camera video{transform:scaleX(-1);}
.teacher-duty-v08-face-guide{position:absolute;inset:12% 27%;border:3px solid rgba(255,255,255,.85);border-radius:46%;box-shadow:0 0 0 999px rgba(0,0,0,.16);pointer-events:none;}
.teacher-duty-v08-photo-note{display:grid;gap:7px;margin-top:12px;font-weight:800;color:#355a8a;}
.teacher-duty-v08-photo-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:12px;}
.teacher-duty-v08-photo-actions button[hidden]{display:none;}
.teacher-duty-v08-photo-actions button:disabled, .teacher-duty-v08-note button:disabled{opacity:.55;cursor:wait;}
@media (max-width:680px){.teacher-duty-v08-workspace{border-radius:16px;}
.teacher-duty-v08-heading{padding:17px 18px;}
.teacher-duty-v08-body{padding:16px;}
.teacher-duty-v08-profile{grid-template-columns:1fr;}
.teacher-duty-v08-schedule{align-items:flex-start;flex-direction:column;}
.teacher-duty-v08-history article{grid-template-columns:1fr;}
.teacher-duty-v08-photo-actions{display:grid;grid-template-columns:1fr 1fr;}
.teacher-duty-v08-photo-actions button{width:100%;}}
.tjv01-nav{display:flex;align-items:center;gap:11px;width:100%;min-height:46px;padding:11px 14px;border:0;border-radius:var(--radius-lg,14px);background:transparent;color:var(--theme-text-muted,#60758d);font:700 13px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:left;cursor:pointer;}
.tjv01-nav:hover, .tjv01-nav:focus-visible{background:var(--tone-eef8ff);color:#0579c6;outline:0;}
.tjv01-nav svg{width:20px;height:20px;flex:0 0 auto;}
.tjv01-nav span{white-space:nowrap;}
.tjv01-nav-mobile{min-width:max-content;}
.tjv01-nav-active{background:var(--tone-eaf7ff);color:#0076c8;box-shadow:inset 0 0 0 1px #bee7ff;}
#teacherTeachingJournalV01{position:fixed;left:var(--tjv01-left,0);top:var(--tjv01-top,0);z-index:10;display:none;width:var(--tjv01-width,100vw);height:var(--tjv01-height,100dvh);min-width:0;box-sizing:border-box;padding:var(--tjv01-pad-top,0) var(--tjv01-pad-right,0) var(--tjv01-pad-bottom,0) var(--tjv01-pad-left,0);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--theme-surface-soft,#f7fbff);}
body.tjv01-open #root main>*{display:none!important;}
body.tjv01-open #teacherTeachingJournalV01{display:block!important;visibility:visible!important;opacity:1!important;}
.tjv01-layer{position:relative;display:none;width:100%;min-width:0;box-sizing:border-box;background:transparent;color:var(--tone-142335);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
body.tjv01-open .tjv01-layer{display:block;}
.tjv01-topbar{min-height:112px;display:flex;align-items:center;gap:16px;margin:0 0 18px;padding:22px clamp(18px,3vw,34px);border:1px solid #9ed4ef;border-radius:23px;background:linear-gradient(135deg,#123f59,#087dbd 58%,#38a8dc);box-shadow:0 12px 34px #0b5c8522;color:var(--theme-surface,#fff);}
.tjv01-brand{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:15px;color:var(--theme-surface,#fff);background:linear-gradient(145deg,var(--theme-primary,#078ee8),#00a596);box-shadow:0 10px 24px #078ee835;}
.tjv01-brand svg{width:24px;height:24px;}
.tjv01-heading{min-width:0;}
.tjv01-heading h1{margin:0;color:var(--theme-surface,#fff);font-size:20px;line-height:1.25;font-weight:900;}
.tjv01-heading p{margin:4px 0 0;color:#e2f5ff;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tjv01-top-actions{margin-left:auto;display:flex;align-items:center;gap:9px;}
.tjv01-top-actions button{min-height:42px;border:0;border-radius:13px;padding:0 15px;font:800 12px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
.tjv01-print-all{border:1px solid #ffffff55;background:#ffffff1c;color:var(--theme-surface,#fff);}
.tjv01-add{background:var(--theme-surface,#fff);color:var(--tone-0878bd);box-shadow:0 9px 20px #063b662a;}
.tjv01-close{width:42px!important;padding:0!important;border-radius:var(--radius-pill,999px);background:#f0f4f7;color:#425466;font-size:23px;line-height:1;}
.tjv01-scroll{overflow:visible;}
.tjv01-shell{width:min(1420px,100%);margin:auto;padding:0 0 46px;}
.tjv01-note{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:13px 15px;border:1px solid #cfe9f7;border-radius:15px;background:#f5fcff;color:#365b70;font-size:11px;line-height:1.55;}
.tjv01-note svg{width:18px;height:18px;flex:0 0 auto;color:var(--theme-primary,#078ee8);}
.tjv01-note b{color:#0d5c8d;}
.tjv01-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px;}
.tjv01-stat{position:relative;overflow:hidden;padding:17px 18px;border:1px solid var(--tone-e0eaf1);border-radius:19px;background:var(--theme-surface,#fff);box-shadow:0 8px 26px #244d6810;}
.tjv01-stat small{display:block;color:#708394;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.tjv01-stat strong{display:block;margin-top:6px;color:#11324a;font-size:25px;font-weight:900;}
.tjv01-stat span{display:block;margin-top:3px;color:#7c8b99;font-size:10px;font-weight:650;}
.tjv01-stat::after{content:"";position:absolute;right:-18px;bottom:-24px;width:72px;height:72px;border-radius:50%;background:#e8f8ff;}
.tjv01-toolbar{display:grid;grid-template-columns:1.1fr 1.1fr 1fr 1fr minmax(170px,1.4fr) auto;gap:10px;align-items:end;margin-bottom:15px;padding:15px;border:1px solid var(--tone-e0eaf1);border-radius:19px;background:var(--theme-surface,#fff);}
.tjv01-field{display:grid;gap:6px;min-width:0;}
.tjv01-field>span{color:#617487;font-size:10px;font-weight:850;}
.tjv01-field input, .tjv01-field select, .tjv01-form input, .tjv01-form select, .tjv01-form textarea{width:100%;box-sizing:border-box;border:1px solid #d9e4ec;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface-soft,#f7fbff);color:var(--tone-142335);padding:10px 11px;outline:0;font:650 12px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.tjv01-field input:focus, .tjv01-field select:focus, .tjv01-form input:focus, .tjv01-form select:focus, .tjv01-form textarea:focus{border-color:#59b7ef;background:var(--theme-surface,#fff);box-shadow:0 0 0 3px #078ee814;}
.tjv01-filter{height:39px;border:0;border-radius:var(--radius-md-lg,12px);background:var(--tone-eaf7ff);color:var(--tone-0878bd);padding:0 15px;font:850 11px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
.tjv01-panel{overflow:hidden;border:1px solid var(--tone-e0eaf1);border-radius:21px;background:var(--theme-surface,#fff);box-shadow:0 12px 36px #244d6810;}
.tjv01-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #edf2f6;}
.tjv01-panel-head h2{margin:0;color:#18344b;font-size:15px;font-weight:900;}
.tjv01-panel-head span{color:#718495;font-size:10px;font-weight:750;}
.tjv01-table-wrap{overflow:auto;}
.tjv01-table{width:100%;border-collapse:collapse;min-width:980px;}
.tjv01-table th{padding:11px 13px;background:#f6f9fb;color:#627689;font-size:9px;text-align:left;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;}
.tjv01-table td{padding:13px;border-top:1px solid #edf2f6;color:#405568;font-size:11px;vertical-align:top;}
.tjv01-table tbody tr:hover{background:var(--theme-surface-elevated,#fbfdff);}
.tjv01-table strong{display:block;color:#18344b;font-size:11px;}
.tjv01-table small{display:block;margin-top:3px;color:#7a8c9d;line-height:1.45;}
.tjv01-objective{max-width:340px;line-height:1.55;}
.tjv01-objective span{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.tjv01-pill{display:inline-flex!important;align-items:center;gap:5px;width:max-content;padding:5px 8px;border-radius:var(--radius-pill,999px);background:#fff5db;color:#9b6500;font-size:9px;font-weight:850;}
.tjv01-pill.is-signed{background:#eaf9f3;color:#08775f;}
.tjv01-actions{display:flex;gap:5px;justify-content:flex-end;}
.tjv01-actions button{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:9px;background:#eff7fc;color:#33708f;cursor:pointer;}
.tjv01-actions button:hover{background:#dff2ff;color:#006cad;}
.tjv01-actions button.is-delete{background:#fff2f2;color:#c94c54;}
.tjv01-actions svg{width:15px;height:15px;}
.tjv01-empty{padding:52px 22px;text-align:center;color:#8293a2;}
.tjv01-empty svg{width:44px;height:44px;color:#b8c8d3;}
.tjv01-empty h3{margin:12px 0 5px;color:#365269;font-size:15px;}
.tjv01-empty p{margin:0;font-size:11px;}
.tjv01-mobile-list{display:none;}
.tjv01-loading{min-height:260px;display:grid;place-items:center;text-align:center;color:#61788b;}
.tjv01-spinner{width:34px;height:34px;margin:0 auto 10px;border:3px solid #d7e8f2;border-top-color:var(--theme-primary,#078ee8);border-radius:50%;}
.tjv01-error{margin:16px;padding:14px;border:1px solid #ffd1d1;border-radius:var(--radius-lg,14px);background:var(--tone-fff5f5,#fff5f5);color:#a83c42;font-size:12px;}
.tjv01-toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));z-index:2147483647;transform:translateX(-50%);max-width:min(520px,calc(100vw - 28px));padding:12px 16px;border-radius:13px;background:#153247;color:var(--theme-surface,#fff);box-shadow:0 15px 44px #10253544;font:750 11px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.tjv01-toast.is-error{background:#b83b45;}
.tjv01-layer.tjv01-editing>.tjv01-topbar, .tjv01-layer.tjv01-editing>.tjv01-scroll{display:none;}
.tjv01-editor{position:relative;display:block;width:100%;min-width:0;background:transparent;color:var(--tone-142335);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.tjv01-editor-head{min-height:72px;display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:12px clamp(14px,3vw,24px);border:1px solid var(--tone-dce7ef);border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);box-shadow:0 8px 27px #294e6510;}
.tjv01-back{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:13px;background:#f0f5f8;color:#3d5d73;cursor:pointer;}
.tjv01-back svg{width:20px;}
.tjv01-editor-title h2{margin:0;font-size:18px;color:#17344a;}
.tjv01-editor-title p{margin:4px 0 0;color:#718496;font-size:10px;}
.tjv01-save{margin-left:auto;min-height:42px;padding:0 18px;border:0;border-radius:13px;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font:850 12px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 9px 22px #078ee82a;}
.tjv01-save:disabled{background:var(--tone-9db4c3);box-shadow:none;cursor:wait;}
.tjv01-form-scroll{overflow:visible;}
.tjv01-form{width:min(1180px,100%);margin:auto;padding:0 0 80px;}
.tjv01-form section{margin:0 0 14px;padding:18px;border:1px solid var(--tone-dfe9f0);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 27px #294e6510;}
.tjv01-section-title{display:flex;gap:11px;align-items:center;margin-bottom:16px;}
.tjv01-section-index{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:var(--tone-eaf7ff);color:var(--tone-0878bd);font-size:11px;font-weight:900;}
.tjv01-section-title h3{margin:0;color:#17344a;font-size:14px;}
.tjv01-section-title p{margin:3px 0 0;color:#7890a2;font-size:10px;line-height:1.45;}
.tjv01-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px;}
.tjv01-col-12{grid-column:span 12;}
.tjv01-col-8{grid-column:span 8;}
.tjv01-col-6{grid-column:span 6;}
.tjv01-col-4{grid-column:span 4;}
.tjv01-col-3{grid-column:span 3;}
.tjv01-col-2{grid-column:span 2;}
.tjv01-form label{display:grid;gap:7px;color:#5f7486;font-size:10px;font-weight:850;}
.tjv01-form label em{color:#d1535b;font-style:normal;}
.tjv01-form textarea{min-height:88px;line-height:1.55;resize:vertical;}
.tjv01-form .tjv01-tall{min-height:120px;}
.tjv01-help{margin:7px 0 0;color:#8293a1;font-size:9px;line-height:1.5;}
.tjv01-attendance{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;}
.tjv01-attendance label{padding:10px;border-radius:var(--radius-lg,14px);background:#f7fafc;}
.tjv01-attendance input{text-align:center;font-weight:850;}
.tjv01-sign-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:16px;}
.tjv01-sign-pad{overflow:hidden;border:1px dashed #9fc4d8;border-radius:var(--radius-xl,16px);background:linear-gradient(var(--theme-surface,#fff),var(--theme-surface,#fff)) padding-box,repeating-linear-gradient(90deg,#eef6fa 0 1px,transparent 1px 18px) border-box;}
.tjv01-sign-pad canvas{display:block;width:100%;height:190px;background:var(--theme-surface,#fff);touch-action:none;cursor:crosshair;}
.tjv01-sign-actions{display:flex;flex-wrap:wrap;gap:7px;padding:9px;border-top:1px solid #e5edf2;background:var(--theme-surface-soft,#f7fbff);}
.tjv01-sign-actions button, .tjv01-upload-label{min-height:34px;display:inline-flex!important;align-items:center;justify-content:center;border:0;border-radius:var(--radius-md,10px);padding:0 11px;background:#e9f6ff;color:#1674ac;font:800 10px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
.tjv01-sign-actions .is-clear{background:#fff0f0;color:#c24850;}
.tjv01-upload-label input{display:none;}
.tjv01-sign-info{padding:15px;border-radius:var(--radius-xl,16px);background:#f2f8fb;}
.tjv01-sign-info strong{display:block;color:#284e66;font-size:12px;}
.tjv01-sign-info p{margin:7px 0 0;color:#6c8392;font-size:10px;line-height:1.6;}
.tjv01-regulation{margin-top:11px;padding:10px;border-radius:var(--radius-md-lg,12px);background:#eefaf6;color:#246f62;font-size:9px;line-height:1.55;}
@media (max-width:900px){.tjv01-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
.tjv01-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));}
.tjv01-filter{grid-column:span 2;}
.tjv01-col-8, .tjv01-col-6, .tjv01-col-4, .tjv01-col-3{grid-column:span 6;}
.tjv01-col-2{grid-column:span 3;}
.tjv01-sign-layout{grid-template-columns:1fr;}}
@media (max-width:700px){.tjv01-topbar{min-height:66px;padding:10px 12px;gap:10px;}
.tjv01-brand{width:40px;height:40px;border-radius:13px;}
.tjv01-heading h1{font-size:16px;}
.tjv01-heading p{max-width:42vw;}
.tjv01-top-actions{gap:6px;}
.tjv01-top-actions button{min-height:39px;padding:0 11px;}
.tjv01-print-all{font-size:0;}
.tjv01-print-all::after{content:"Cetak";font-size:10px;}
.tjv01-close{width:39px!important;}
.tjv01-shell{padding:13px 10px 90px;}
.tjv01-note{font-size:10px;}
.tjv01-stat{padding:14px;}
.tjv01-stat strong{font-size:21px;}
.tjv01-toolbar{padding:12px;}
.tjv01-panel{border-radius:var(--radius-2xl,18px);}
.tjv01-table-wrap{display:none;}
.tjv01-mobile-list{display:grid;gap:9px;padding:10px;}
.tjv01-mobile-card{padding:13px;border:1px solid #e4edf3;border-radius:15px;background:var(--theme-surface,#fff);}
.tjv01-mobile-card-head{display:flex;align-items:flex-start;gap:8px;}
.tjv01-mobile-card-head>div{min-width:0;flex:1;}
.tjv01-mobile-card h3{margin:0;color:#19374d;font-size:12px;}
.tjv01-mobile-card p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:7px 0;color:#617687;font-size:10px;line-height:1.5;}
.tjv01-mobile-card-meta{display:flex;gap:6px;flex-wrap:wrap;color:#7890a1;font-size:9px;}
.tjv01-mobile-card .tjv01-actions{margin-top:10px;justify-content:flex-start;}
.tjv01-mobile-card .tjv01-actions button{width:auto;height:31px;padding:0 10px;display:flex;gap:5px;font:800 9px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.tjv01-editor-head{min-height:64px;padding:9px 11px;}
.tjv01-editor-title h2{font-size:15px;}
.tjv01-editor-title p{max-width:55vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.tjv01-save{min-height:40px;padding:0 13px;}
.tjv01-form{padding:11px 9px 100px;}
.tjv01-form section{padding:14px 12px;border-radius:17px;}
.tjv01-grid{gap:10px;}
.tjv01-col-8, .tjv01-col-6, .tjv01-col-4, .tjv01-col-3, .tjv01-col-2{grid-column:span 12;}
.tjv01-attendance{grid-template-columns:repeat(2,minmax(0,1fr));}
.tjv01-attendance label:first-child{grid-column:span 2;}
.tjv01-sign-pad canvas{height:165px;}}
@media (max-width:390px){.tjv01-add{font-size:0;}
.tjv01-add::after{content:"Tambah";font-size:10px;}
.tjv01-heading p{display:none;}
.tjv01-stats{gap:8px;}
.tjv01-stat{padding:12px;}
.tjv01-stat strong{font-size:19px;}}
#teacherTeachingJournalV01 .tjv01-top-actions button, #teacherTeachingJournalV01 .tjv01-save, #teacherTeachingJournalV01 .tjv01-filter{min-height:44px;border:2px solid var(--theme-primary,#078ee8);border-radius:var(--radius-lg,14px);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:850;opacity:1!important;visibility:visible!important;}
#teacherTeachingJournalV01 .tjv01-print-all{background:var(--theme-surface,#fff);border-color:var(--theme-primary,#078ee8);color:var(--tone-0068b8);-webkit-text-fill-color:var(--tone-0068b8)!important;box-shadow:0 7px 17px #00347d12;}
#teacherTeachingJournalV01 .tjv01-print-all:hover{background:var(--tone-eef8ff);border-color:var(--tone-0068b8);color:#005794;-webkit-text-fill-color:#005794!important;}
#teacherTeachingJournalV01 .tjv01-add, #teacherTeachingJournalV01 .tjv01-save, #teacherTeachingJournalV01 .tjv01-filter{background:var(--theme-primary,#078ee8);border-color:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 20px #078ee82b;}
#teacherTeachingJournalV01 .tjv01-add:hover, #teacherTeachingJournalV01 .tjv01-save:hover, #teacherTeachingJournalV01 .tjv01-filter:hover{background:var(--tone-0068b8);border-color:var(--tone-0068b8);}
#teacherTeachingJournalV01 .tjv01-top-actions button:focus-visible, #teacherTeachingJournalV01 .tjv01-save:focus-visible, #teacherTeachingJournalV01 .tjv01-filter:focus-visible{outline:3px solid #078ee82e;outline-offset:2px;}
#teacherTeachingJournalV01 .tjv01-save:disabled{background:var(--tone-9db4c3);border-color:var(--tone-9db4c3);box-shadow:none;}
@media (max-width:700px){#teacherTeachingJournalV01 .tjv01-topbar{flex-wrap:wrap;}
#teacherTeachingJournalV01 .tjv01-heading{flex:1;}
#teacherTeachingJournalV01 .tjv01-top-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0;}
#teacherTeachingJournalV01 .tjv01-top-actions button{width:100%;min-width:0;padding:0 10px!important;font-size:10px;}
#teacherTeachingJournalV01 .tjv01-print-all::after{content:none!important;}}
@media (max-width:390px){#teacherTeachingJournalV01 .tjv01-add{font-size:10px;}
#teacherTeachingJournalV01 .tjv01-add::after{content:none!important;}}
#teacherTeachingJournalV01 .tjv01-topbar{position:sticky;top:0;z-index:24;}
#teacherTeachingJournalV01 .tjv01-filter:disabled{cursor:wait!important;opacity:.72!important;box-shadow:none;}
#teacherTeachingJournalV01 .tjv01-table tbody tr{content-visibility:auto;contain-intrinsic-size:58px;}
#teacherTeachingJournalV01 .tjv01-actions button:focus-visible{outline:3px solid #078ee820;outline-offset:1px;}
@media (max-width:700px){#teacherTeachingJournalV01 .tjv01-topbar{top:0;border-radius:var(--radius-2xl,18px);}
#teacherTeachingJournalV01 .tjv01-mobile-card{content-visibility:auto;contain-intrinsic-size:150px;}}
:is(
  .modal-card > .close,
  .modal-card > .modal-close,
  .teacher-student-scan-dialog [data-scan-close],
  .employee-attendance-v126-dialog [data-attendance-close],
  .teacher-qr-close,
  .teacher-qr-viewer-close,
  .employee-id-card-dialog [data-employee-card-close],
  .student-id-card-dialog [data-student-card-close],
  .student-record-dialog-close,
  .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:var(--tone-fee2e2,#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-qr-close,
  .teacher-qr-viewer-close,
  .employee-id-card-dialog [data-employee-card-close],
  .student-id-card-dialog [data-student-card-close],
  .student-record-dialog-close,
  .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:var(--tone-fca5a5);background:var(--tone-fecaca,#fecaca);color:var(--tone-991b1b,#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-qr-close,
    .teacher-qr-viewer-close,
    .employee-id-card-dialog [data-employee-card-close],
    .student-id-card-dialog [data-student-card-close],
    .student-record-dialog-close,
    .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-eskul-nav-entry svg{flex:none;}
.portal-eskul-parent-active>button:not([data-open-portal-eskul]){background:transparent;color:var(--eg-body,var(--tone-424e55));box-shadow:none;}
.portal-eskul-parent-active>button:not([data-open-portal-eskul])::before{opacity:0!important;}
.portal-eskul-nav-entry.portal-eskul-menu-active:not(.active){background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 9px 20px rgba(7, 142, 232, .25);}
.portal-eskul-host{position:relative!important;min-width:0;}
.portal-eskul-native-hidden{display:none!important;}
.portal-eskul-app{position:relative;z-index:1;width:100%;flex:1 1 auto;min-width:0;min-height:0;background:var(--eskul-bg);color:var(--eskul-text);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;display:none;grid-template-rows:auto minmax(0,1fr);overflow:hidden;}
.portal-eskul-app.is-open{display:grid;}
.portal-eskul-module-title{display:flex;align-items:center;gap:12px;min-width:0;}
.portal-eskul-module-title>span{width:42px;height:42px;display:grid;place-items:center;border-radius:var(--radius-lg,14px);background:linear-gradient(145deg,var(--theme-primary-border,#d9e8f5),var(--theme-primary-border-strong,#b8d9f3));color:var(--eskul-blue-dark);box-shadow:inset 0 0 0 1px var(--theme-primary-border-strong,#b8d9f3);}
.portal-eskul-module-title small{display:block;color:var(--eskul-blue-dark);font-size:8px;font-weight:900;letter-spacing:.16em;}
.portal-eskul-module-title h1{font-size:17px;line-height:1.15;margin:2px 0 1px;font-weight:900;}
.portal-eskul-module-title p{margin:0;color:var(--eskul-muted);font-size:10px;font-weight:600;line-height:1.45;}
.portal-eskul-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;}
.portal-eskul-topbar{background:var(--theme-surface,#fff);border-bottom:1px solid var(--eskul-line);padding:16px 20px 13px;display:flex;flex-direction:column;gap:11px;min-width:0;overflow:hidden;}
.portal-eskul-tabs button{flex:0 0 auto;min-height:48px;border:2px solid var(--eskul-green);background:var(--tone-f8fbff,#f8fbff);color:var(--eskul-blue-dark);border-radius:var(--radius-xl,16px);padding:0 21px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:800 11px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;cursor:pointer;scroll-snap-align:start;box-shadow:0 7px 17px rgba(0,52,125,.06);}
.portal-eskul-tabs button:hover{background:var(--theme-primary-soft,#f0f8ff);transform:translateY(-1px);}
.portal-eskul-tabs button.active{background:var(--eskul-green);border-color:var(--theme-primary-mid,#1264ad);color:var(--theme-surface,#fff);padding-left:27px;box-shadow:inset 7px 0 0 var(--eskul-blue-dark),0 12px 26px var(--tone-ff05dd1e);}
.portal-eskul-tabs button svg{width:18px;height:18px;flex:none;}
.portal-eskul-program-selector{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border-top:1px solid var(--tone-edf2f4);padding-top:11px;min-width:0;}
.portal-eskul-side-programs-head{display:flex;align-items:center;gap:8px;color:var(--theme-text-secondary,#50657e);white-space:nowrap;}
.portal-eskul-side-programs-head b{text-transform:uppercase;letter-spacing:.08em;}
.portal-eskul-side-programs-head button{border:1px solid var(--theme-primary-border-strong,#b8d9f3);width:34px;height:34px;border-radius:11px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);display:grid;place-items:center;cursor:pointer;}
.portal-eskul-side-programs-head button:hover{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);border-color:var(--theme-primary,#078ee8);}
.portal-eskul-side-programs{min-width:0;display:flex;align-items:stretch;gap:8px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 5px;scrollbar-width:none;scroll-snap-type:x proximity;}
.portal-eskul-side-programs::-webkit-scrollbar{display:none;}
.portal-eskul-side-programs>button{flex:0 0 190px;width:auto;border:1px solid var(--tone-dbe5e9);background:var(--theme-surface,#fff);border-radius:13px;display:flex;gap:8px;align-items:center;text-align:left;color:var(--theme-text-secondary,#50657e);cursor:pointer;margin:0;scroll-snap-align:start;box-shadow:0 4px 12px var(--tone-54b474d2);}
.portal-eskul-side-programs>button>span{border-radius:var(--radius-md,10px);display:grid;place-items:center;background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-muted,#60758d);flex:none;}
.portal-eskul-side-programs>button div{min-width:0;}
.portal-eskul-side-programs>button b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.portal-eskul-side-programs>button small{display:block;color:var(--theme-text-subtle,#7e90a5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.portal-eskul-side-programs>button:hover{border-color:var(--theme-primary-border-strong,#b8d9f3);background:var(--tone-f8fbff,#f8fbff);}
.portal-eskul-side-programs>button.active{background:var(--theme-primary-soft,#f0f8ff);border-color:var(--theme-primary,#078ee8);color:var(--theme-primary-darker,#123d6b);box-shadow:0 7px 17px rgba(7, 142, 232, .12);}
.portal-eskul-side-programs>button.active>span{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);}
.portal-eskul-side-programs>p{font-size:9px;color:var(--theme-text-subtle,#7e90a5);padding:8px 10px;margin:0;white-space:nowrap;}
.portal-eskul-content{min-width:0;min-height:0;overflow:auto;padding:18px 20px 40px;scrollbar-width:thin;scrollbar-color:var(--tone-cbd5e1,#cbd5e1) transparent;}
.portal-eskul-content *{box-sizing:border-box;}
.portal-eskul-content button, .portal-eskul-content input, .portal-eskul-content select, .portal-eskul-content textarea{font-family:inherit;}
.portal-eskul-content .primary{border:0;background:var(--eskul-green);color:var(--theme-surface,#fff);border-radius:11px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;box-shadow:0 7px 16px var(--tone-f0d37d66);}
.portal-eskul-content .primary:hover{background:var(--theme-primary-mid,#1264ad);}
.portal-eskul-content .secondary{border:1px solid var(--tone-dbe5e9);background:var(--theme-surface,#fff);color:var(--theme-text-secondary,#50657e);border-radius:11px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;}
.portal-eskul-content .danger{border-color:var(--tone-fecaca,#fecaca);background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger,#b91c1c);}
.portal-eskul-content .small{padding:7px 9px!important;}
.portal-eskul-content button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;}
.portal-eskul-loading{min-height:270px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:11px;color:var(--theme-text-muted,#60758d);font-size:10px;}
.portal-eskul-loading span{width:31px;height:31px;border:4px solid var(--theme-primary-border,#d9e8f5);border-top-color:var(--theme-primary,#078ee8);border-radius:50%;}
.portal-eskul-empty{max-width:600px;margin:38px auto;background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:var(--radius-4xl,22px);padding:30px;text-align:center;box-shadow:0 12px 35px var(--tone-1dff4ce9);}
.portal-eskul-empty>span{width:52px;height:52px;border-radius:17px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);display:grid;place-items:center;margin:0 auto 12px;}
.portal-eskul-empty>b{display:block;font-size:16px;font-weight:900;}
.portal-eskul-empty p{font-size:10px;color:var(--eskul-muted);line-height:1.7;margin:7px 0 15px;}
.portal-eskul-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;}
.portal-eskul-page-head>div{min-width:0;}
.portal-eskul-page-head small{display:block;font-weight:900;letter-spacing:.12em;color:var(--theme-primary-strong,#173f70);}
.portal-eskul-page-head h2{font-size:21px;line-height:1.2;margin:3px 0 3px;font-weight:900;color:var(--tone-17212b);}
.portal-eskul-page-head p{color:var(--theme-text-muted,#60758d);margin:0;max-width:650px;}
.portal-eskul-count{border-radius:var(--radius-pill,999px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);padding:7px 10px;font-size:8px;font-weight:900;white-space:nowrap;}
.portal-eskul-detail-card{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:19px;padding:16px;display:grid;grid-template-columns:auto minmax(160px,1fr) minmax(260px,1.3fr) auto;align-items:center;gap:14px;box-shadow:0 7px 22px var(--tone-4d09289e);}
.portal-eskul-detail-icon{width:52px;height:52px;border-radius:var(--radius-xl,16px);background:linear-gradient(145deg,var(--theme-primary-border,#d9e8f5),var(--theme-primary-border-strong,#b8d9f3));color:var(--theme-primary-strong,#173f70);display:grid;place-items:center;}
.portal-eskul-detail-main span{text-transform:uppercase;font-weight:900;color:var(--theme-primary-mid,#1264ad);letter-spacing:.07em;}
.portal-eskul-detail-main h3{margin:2px 0 4px;font-weight:900;}
.portal-eskul-detail-main p{color:var(--theme-text-muted,#60758d);margin:0;}
.portal-eskul-detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
.portal-eskul-detail-stats>div{background:var(--theme-surface-soft,#f7fbff);border-radius:11px;padding:9px;}
.portal-eskul-detail-stats small{display:block;color:var(--theme-text-subtle,#7e90a5);text-transform:uppercase;font-weight:850;}
.portal-eskul-detail-stats b{display:block;color:var(--theme-text-strong,#123d6b);margin-top:3px;line-height:1.4;}
.portal-eskul-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.portal-eskul-actions>button{border:1px solid var(--tone-dbe5e9);background:var(--theme-surface,#fff);color:var(--theme-text-secondary,#50657e);border-radius:9px;font-weight:850;display:inline-flex;align-items:center;gap:5px;cursor:pointer;}
.portal-eskul-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:12px;}
.portal-eskul-quick-grid>button{border:1px solid var(--eskul-line);background:var(--theme-surface,#fff);border-radius:var(--radius-xl,16px);padding:15px;display:flex;align-items:flex-start;gap:11px;text-align:left;color:var(--theme-primary-strong,#173f70);cursor:pointer;box-shadow:0 5px 16px rgba(15,23,42,.03);}
.portal-eskul-quick-grid>button:hover{border-color:var(--theme-primary-border-strong,#b8d9f3);transform:translateY(-1px);}
.portal-eskul-quick-grid b{display:block;color:var(--theme-text-strong,#123d6b);}
.portal-eskul-quick-grid small{display:block;color:var(--theme-text-muted,#60758d);margin-top:3px;}
.portal-eskul-inline-form{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:19px;padding:17px;box-shadow:0 7px 22px rgba(15,23,42,.035);}
.portal-eskul-simple-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.portal-eskul-simple-grid.meeting{grid-template-columns:minmax(180px,.65fr) minmax(260px,1.35fr);}
.portal-eskul-simple-grid .span-2{grid-column:1/-1;}
.portal-eskul-inline-form label, .portal-eskul-panel label{display:flex;flex-direction:column;color:var(--theme-text-secondary,#50657e);font-weight:850;}
.portal-eskul-inline-form input, .portal-eskul-inline-form select, .portal-eskul-inline-form textarea, .portal-eskul-panel input, .portal-eskul-panel select, .portal-eskul-attendance-row .note, .portal-eskul-report-toolbar input{width:100%;border:1px solid var(--tone-dbe5e9);background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-strong,#123d6b);border-radius:var(--radius-md,10px);font-weight:700;outline:none;}
.portal-eskul-inline-form textarea{resize:vertical;line-height:1.55;}
.portal-eskul-inline-form input:focus, .portal-eskul-inline-form select:focus, .portal-eskul-inline-form textarea:focus, .portal-eskul-panel input:focus, .portal-eskul-panel select:focus{border-color:var(--tone-20a7ff,#20a7ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(7, 142, 232, .09);}
.portal-eskul-inline-form label>small{color:var(--theme-text-subtle,#7e90a5);font-weight:600;}
.portal-eskul-inline-form>footer, .portal-eskul-attendance-form>footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--tone-edf2f4);margin-top:16px;padding-top:14px;}
.portal-eskul-add-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:12px;}
.portal-eskul-panel{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:17px;padding:14px;display:flex;flex-direction:column;gap:10px;min-width:0;box-shadow:0 5px 17px var(--tone-54b474d2);}
.portal-eskul-panel>header b{display:block;font-size:10px;}
.portal-eskul-panel>header small{display:block;font-size:7px;color:var(--theme-text-subtle,#7e90a5);margin-top:2px;}
.portal-eskul-panel>.primary{margin-top:auto;width:100%;}
.portal-eskul-portal-students{height:120px;overflow:auto;border:1px solid var(--tone-e5edf1,#e5edf1);border-radius:var(--radius-md,10px);background:var(--theme-surface-soft,#f7fbff);padding:5px;}
.portal-eskul-portal-students>label{display:flex;flex-direction:row;align-items:center;gap:8px;padding:6px;border-radius:var(--radius-sm,8px);cursor:pointer;}
.portal-eskul-portal-students>label:hover{background:var(--theme-surface,#fff);}
.portal-eskul-portal-students input{width:15px;height:15px;accent-color:var(--theme-primary,#078ee8);flex:none;}
.portal-eskul-portal-students b{display:block;font-size:8px;color:var(--theme-text-strong,#123d6b);}
.portal-eskul-portal-students small{display:block;font-size:7px;color:var(--theme-text-subtle,#7e90a5);}
.portal-eskul-portal-students>p{font-size:8px;color:var(--theme-text-subtle,#7e90a5);text-align:center;padding:30px 4px;}
.portal-eskul-import-example{background:var(--theme-primary-soft,#f0f8ff);border:1px dashed var(--tone-84c8ff);border-radius:var(--radius-md,10px);padding:9px;color:var(--theme-primary-strong,#173f70);}
.portal-eskul-import-example b, .portal-eskul-import-example span, .portal-eskul-import-example small{display:block;}
.portal-eskul-import-example b{font-size:8px;}
.portal-eskul-import-example span{font-size:9px;font-weight:900;margin:3px 0;}
.portal-eskul-import-example small{font-size:7px;color:#4b6d80;line-height:1.4;}
.portal-eskul-table-card{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:17px;overflow:hidden;}
.portal-eskul-table-card>header{padding:12px 14px;background:var(--theme-surface-elevated,#fbfdff);border-bottom:1px solid var(--tone-edf2f4);}
.portal-eskul-table-card>header b{display:block;font-size:10px;}
.portal-eskul-table-card>header small{display:block;font-size:7px;color:var(--theme-text-subtle,#7e90a5);margin-top:2px;}
.portal-eskul-member-list{max-height:310px;overflow:auto;}
.portal-eskul-member-list article{display:grid;grid-template-columns:29px minmax(0,1fr) 31px;align-items:center;gap:9px;padding:9px 13px;border-bottom:1px solid var(--tone-edf2f4);}
.portal-eskul-member-list article:last-child{border-bottom:0;}
.portal-eskul-member-list .number{width:25px;height:25px;border-radius:var(--radius-sm,8px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);display:grid;place-items:center;font-size:8px;font-weight:900;}
.portal-eskul-member-list b{display:block;font-size:9px;}
.portal-eskul-member-list small{display:block;font-size:7px;color:var(--theme-text-subtle,#7e90a5);margin-top:2px;}
.portal-eskul-member-list .danger-icon{width:29px;height:29px;border:0;border-radius:9px;background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger-strong,#dc2626);display:grid;place-items:center;cursor:pointer;}
.portal-eskul-list-empty{text-align:center;color:var(--theme-text-subtle,#7e90a5);font-size:9px;padding:28px;}
.portal-eskul-meeting-list{display:grid;gap:10px;}
.portal-eskul-meeting-card{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:17px;padding:13px;display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:13px;align-items:center;box-shadow:0 5px 17px var(--tone-54b474d2);}
.portal-eskul-meeting-number{height:62px;border-radius:13px;background:linear-gradient(145deg,var(--theme-primary-border,#d9e8f5),var(--theme-primary-border-strong,#b8d9f3));color:var(--theme-primary-strong,#173f70);display:flex;align-items:center;justify-content:center;flex-direction:column;}
.portal-eskul-meeting-number small{font-size:6px;font-weight:900;letter-spacing:.1em;}
.portal-eskul-meeting-number b{font-size:24px;line-height:1;}
.portal-eskul-meeting-main>small{color:var(--theme-primary-strong,#173f70);font-weight:900;}
.portal-eskul-statuses{display:flex;gap:5px;flex-wrap:wrap;}
.portal-eskul-statuses span{border-radius:7px;background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-muted,#60758d);font-weight:850;}
.portal-eskul-statuses .h{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-darker,#123d6b);}
.portal-eskul-statuses .i{background:var(--tone-dbeafe);color:var(--tone-1d4ed8,#1d4ed8);}
.portal-eskul-statuses .s{background:var(--tone-fef3c7,#fef3c7);color:#a16207;}
.portal-eskul-statuses .a{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.portal-eskul-photo-strip{display:flex;gap:6px;overflow-x:auto;margin-top:8px;}
.portal-eskul-photo-strip figure{position:relative;margin:0;flex:0 0 64px;}
.portal-eskul-photo-strip img{width:64px;height:48px;object-fit:cover;border-radius:var(--radius-sm,8px);}
.portal-eskul-photo-strip button{position:absolute;top:2px;right:2px;width:18px;height:18px;border:0;border-radius:50%;background:var(--theme-danger-strong,#dc2626);color:var(--theme-surface,#fff);font-size:12px;font-weight:900;cursor:pointer;line-height:1;}
.portal-eskul-photo-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:9px;margin-top:13px;}
.portal-eskul-photo-preview figure, .portal-eskul-existing figure{position:relative;margin:0;border:1px solid var(--tone-e5edf1,#e5edf1);border-radius:11px;padding:6px;background:var(--theme-surface,#fff);}
.portal-eskul-photo-preview img, .portal-eskul-existing img{width:100%;height:95px;object-fit:cover;border-radius:var(--radius-sm,8px);}
.portal-eskul-photo-preview input{margin-top:5px;width:100%;border:1px solid var(--tone-dbe5e9);border-radius:var(--radius-sm,8px);padding:7px;}
.portal-eskul-photo-preview button, .portal-eskul-existing button{position:absolute;right:9px;top:9px;border:0;background:var(--theme-danger-strong,#dc2626);color:var(--theme-surface,#fff);width:21px;height:21px;border-radius:50%;font-weight:900;cursor:pointer;}
.portal-eskul-existing{margin-top:14px;}
.portal-eskul-existing>b{display:block;margin-bottom:7px;}
.portal-eskul-existing>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:8px;}
.portal-eskul-attendance-tools{align-items:center;position:sticky;top:0;background:var(--theme-surface,#fff);z-index:3;}
.portal-eskul-attendance-tools>button{border:1px solid var(--theme-primary-border-strong,#b8d9f3);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);font-weight:900;display:inline-flex;align-items:center;gap:5px;cursor:pointer;}
.portal-eskul-attendance-tools>div{margin-left:auto;display:flex;}
.portal-eskul-attendance-tools span{font-weight:900;}
.portal-eskul-attendance-tools .h{background:var(--theme-primary-border,#d9e8f5);color:var(--theme-primary-darker,#123d6b);}
.portal-eskul-attendance-tools .i{background:var(--tone-dbeafe);color:var(--tone-1d4ed8,#1d4ed8);}
.portal-eskul-attendance-tools .s{background:var(--tone-fef3c7,#fef3c7);color:#a16207;}
.portal-eskul-attendance-tools .a{background:var(--tone-fee2e2,#fee2e2);color:var(--theme-danger,#b91c1c);}
.portal-eskul-attendance-table{border:1px solid var(--tone-e5edf1,#e5edf1);border-radius:var(--radius-md-lg,12px);overflow:hidden;}
.portal-eskul-attendance-table>.head, .portal-eskul-attendance-row{display:grid;grid-template-columns:minmax(155px,.8fr) minmax(260px,1.25fr) minmax(130px,.75fr);gap:9px;align-items:center;padding:9px 10px;}
.portal-eskul-attendance-table>.head{background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-muted,#60758d);text-transform:uppercase;font-size:7px;font-weight:900;}
.portal-eskul-attendance-row{border-top:1px solid var(--tone-edf2f4);}
.portal-eskul-attendance-row .statuses{grid-template-columns:repeat(4,1fr);}
.portal-eskul-attendance-row .statuses small{display:block;font-size:6px;color:var(--theme-text-subtle,#7e90a5);margin-top:2px;}
.portal-eskul-attendance-row .statuses input:checked+span{color:var(--theme-surface,#fff);border-color:transparent;}
.portal-eskul-report-toolbar{display:flex;align-items:flex-end;gap:8px;background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:15px;padding:11px;margin-bottom:10px;flex-wrap:wrap;}
.portal-eskul-report-toolbar label{display:flex;flex-direction:column;gap:4px;color:var(--theme-text-muted,#60758d);font-size:7px;font-weight:850;margin-right:auto;}
.portal-eskul-report-toolbar input{min-width:165px;}
.portal-eskul-report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:10px;}
.portal-eskul-report-summary article{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:var(--radius-lg,14px);padding:12px;text-align:center;}
.portal-eskul-report-summary b{display:block;font-size:19px;color:var(--theme-primary-strong,#173f70);}
.portal-eskul-report-summary span{display:block;font-size:7px;color:var(--theme-text-muted,#60758d);margin-top:2px;}
.portal-eskul-print-preview{background:var(--theme-surface,#fff);border:1px solid var(--eskul-line);border-radius:15px;padding:16px;overflow:auto;color:#102a2a;box-shadow:0 5px 18px var(--tone-54b474d2);}
.portal-eskul-print-preview .print-header{display:flex;align-items:center;gap:12px;border-bottom:4px solid var(--theme-primary,#078ee8);padding-bottom:11px;margin-bottom:14px;min-width:780px;}
.portal-eskul-print-preview .print-header img, .portal-eskul-print-preview .attachment-title img{width:49px;height:49px;object-fit:contain;}
.portal-eskul-print-preview .print-header b{font-size:12px;color:var(--theme-primary-darker,#123d6b);}
.portal-eskul-print-preview .print-header small{display:block;font-size:7px;color:var(--theme-text-muted,#60758d);}
.portal-eskul-print-preview .print-header h1{font-size:14px;margin:5px 0 3px;}
.portal-eskul-print-preview .print-header p{font-size:7px;margin:1px 0;color:var(--theme-text-secondary,#50657e);}
.portal-eskul-print-preview .attendance-page{min-width:780px;margin-bottom:20px;}
.portal-eskul-print-preview .print-attendance{width:100%;border-collapse:collapse;font-size:7px;}
.portal-eskul-print-preview .print-attendance th, .portal-eskul-print-preview .print-attendance td{border:1px solid var(--theme-text-strong,#123d6b);padding:4px;text-align:center;}
.portal-eskul-print-preview .print-attendance th{background:var(--theme-primary-strong,#173f70);color:var(--theme-surface,#fff);}
.portal-eskul-print-preview .print-attendance td.name, .portal-eskul-print-preview .print-attendance td.note{text-align:left;}
.portal-eskul-print-preview .print-attendance tr:nth-child(even) td{background:#f4f8f7;}
.portal-eskul-print-preview .print-attendance tr.total td{background:var(--theme-primary-border,#d9e8f5);font-weight:900;}
.portal-eskul-print-preview .repeat-title{display:flex;justify-content:space-between;min-width:780px;margin:22px 0 7px;color:var(--theme-primary-strong,#173f70);font-size:8px;}
.portal-eskul-print-preview .attachments{min-width:620px;margin-top:28px;border-top:1px dashed var(--theme-text-subtle,#7e90a5);padding-top:16px;}
.portal-eskul-print-preview .attachment-title{display:flex;align-items:center;gap:10px;border-bottom:3px solid var(--theme-primary,#078ee8);padding-bottom:9px;}
.portal-eskul-print-preview .attachment-title h2{font-size:15px;margin:0;}
.portal-eskul-print-preview .attachment-title p{font-size:8px;color:var(--theme-text-muted,#60758d);margin:3px 0 0;}
.portal-eskul-print-preview .attachments article{margin-top:14px;}
.portal-eskul-print-preview .attachments h3{font-size:9px;background:var(--theme-primary-soft,#f0f8ff);border-left:4px solid var(--theme-primary,#078ee8);padding:7px;}
.portal-eskul-print-preview .photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.portal-eskul-print-preview .photo-grid figure{margin:0;border:1px solid var(--tone-dbe5e9);border-radius:9px;padding:6px;}
.portal-eskul-print-preview .photo-grid img{width:100%;height:170px;object-fit:contain;background:var(--theme-surface-soft,#f7fbff);border-radius:var(--radius-xs,6px);}
.portal-eskul-print-preview .photo-grid figcaption{font-size:7px;color:var(--theme-text-muted,#60758d);margin-top:4px;}
.portal-eskul-print-preview .no-attachment{text-align:center;border:1px dashed var(--theme-text-subtle,#7e90a5);border-radius:var(--radius-md,10px);padding:20px;font-size:8px;color:var(--theme-text-muted,#60758d);}
.portal-eskul-print-frame{position:fixed!important;left:-99999px!important;top:-99999px!important;width:1px!important;height:1px!important;border:0;opacity:0!important;pointer-events:none!important;}
.portal-eskul-toast{position:fixed;right:18px;bottom:18px;z-index:400;background:var(--theme-primary-darkest,#0a2342);color:var(--theme-surface,#fff);padding:12px 15px;border-radius:var(--radius-md-lg,12px);font:800 10px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 18px 50px var(--tone-cb540258);max-width:min(390px,calc(100vw - 32px));}
.portal-eskul-toast.is-error{background:var(--tone-991b1b,#991b1b);}
@media (max-width:1120px){.portal-eskul-detail-card{grid-template-columns:auto minmax(150px,1fr) auto;}
.portal-eskul-detail-stats{grid-column:1/-1;}
.portal-eskul-add-grid{grid-template-columns:1fr 1fr;}
.portal-eskul-add-grid>.portal-eskul-panel:last-child{grid-column:1/-1;}}
@media (max-width:820px){.portal-eskul-app{min-height:0;}
.portal-eskul-module-head{padding:10px 12px;min-height:59px;}
.portal-eskul-module-title>span{width:37px;height:37px;border-radius:var(--radius-md-lg,12px);}
.portal-eskul-module-title h1{font-size:15px;}
.portal-eskul-module-title p{font-size:8px;}
.portal-eskul-workspace{overflow:hidden;}
.portal-eskul-topbar{padding:10px 11px 9px;gap:8px;}
.portal-eskul-tabs{gap:7px;padding-bottom:4px;}
.portal-eskul-tabs button{min-height:44px;padding:0 16px;font-size:10px;border-radius:var(--radius-lg,14px);}
.portal-eskul-tabs button.active{padding-left:22px;box-shadow:inset 6px 0 0 var(--eskul-blue-dark),0 9px 20px var(--tone-f0d37d66);}
.portal-eskul-program-selector{grid-template-columns:1fr;gap:7px;padding-top:8px;}
.portal-eskul-side-programs-head{justify-content:space-between;}
.portal-eskul-side-programs-head button{width:32px;height:32px;}
.portal-eskul-side-programs{gap:6px;padding-bottom:3px;}
.portal-eskul-side-programs>button{flex-basis:165px;padding:7px 8px;}
.portal-eskul-side-programs>button>span{width:28px;height:28px;}
.portal-eskul-content{padding:13px 11px 94px;}
.portal-eskul-detail-card{grid-template-columns:auto minmax(0,1fr);align-items:start;}
.portal-eskul-detail-stats, .portal-eskul-detail-card>.portal-eskul-actions{grid-column:1/-1;}
.portal-eskul-detail-card>.portal-eskul-actions{justify-content:flex-start;}
.portal-eskul-quick-grid{grid-template-columns:1fr;}
.portal-eskul-add-grid{grid-template-columns:1fr;}
.portal-eskul-add-grid>.portal-eskul-panel:last-child{grid-column:auto;}
.portal-eskul-meeting-card{grid-template-columns:57px minmax(0,1fr);}
.portal-eskul-meeting-card>.portal-eskul-actions{grid-column:1/-1;justify-content:flex-start;}
.portal-eskul-attendance-table>.head{display:none;}
.portal-eskul-attendance-row{grid-template-columns:1fr;}
.portal-eskul-attendance-row .statuses{max-width:460px;}}
@media (max-width:520px){.portal-eskul-module-title p{display:none;}

.portal-eskul-tabs button{min-height:42px;font-size:9px;padding:0 13px;border-radius:13px;}
.portal-eskul-tabs button.active{padding-left:19px;}
.portal-eskul-tabs button svg{width:16px;height:16px;}
.portal-eskul-side-programs>button{flex-basis:150px;}
.portal-eskul-page-head{align-items:stretch;flex-direction:column;}
.portal-eskul-page-head>button{align-self:flex-start;}
.portal-eskul-page-head h2{font-size:18px;}
.portal-eskul-simple-grid, .portal-eskul-simple-grid.meeting{grid-template-columns:1fr;}
.portal-eskul-simple-grid .span-2{grid-column:auto;}
.portal-eskul-detail-stats{grid-template-columns:1fr 1fr;}
.portal-eskul-detail-stats>div:first-child{grid-column:1/-1;}
.portal-eskul-report-toolbar{align-items:stretch;}
.portal-eskul-report-toolbar label{width:100%;margin:0;}
.portal-eskul-report-toolbar input{min-width:0;}
.portal-eskul-report-toolbar button{flex:1;}
.portal-eskul-report-summary{grid-template-columns:repeat(3,1fr);}
.portal-eskul-attendance-tools{flex-wrap:wrap;}
.portal-eskul-attendance-tools>div{width:100%;margin-left:0;}
.portal-eskul-attendance-row .statuses{grid-template-columns:repeat(4,1fr);}
.portal-eskul-inline-form>footer, .portal-eskul-attendance-form>footer{position:sticky;bottom:0;background:var(--theme-surface,#fff);padding:10px 0;z-index:4;}
.portal-eskul-photo-preview, .portal-eskul-existing>div{grid-template-columns:1fr 1fr;}
.portal-eskul-toast{right:12px;bottom:80px;}}
.portal-eskul-host-open{min-width:0!important;overflow:hidden!important;}
.portal-eskul-host-open>#portalGuruEskulApp{width:100%!important;max-width:100%!important;min-width:0!important;}
.portal-eskul-tabs{flex-flow:row nowrap!important;justify-content:flex-start!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;scrollbar-width:none;}
.portal-eskul-tabs::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
.portal-eskul-tabs>button{flex:0 0 auto!important;max-width:none!important;white-space:nowrap!important;}
@media (max-width:820px){.portal-eskul-topbar{min-width:0!important;max-width:100%!important;overflow:hidden!important;}
.portal-eskul-tabs{padding-right:12px!important;scroll-padding-inline:2px 18px;}
.portal-eskul-tabs>button{min-width:max-content!important;}}
@media (max-width:520px){.portal-eskul-tabs{gap:7px!important;padding-bottom:6px!important;}
.portal-eskul-tabs>button{min-height:42px!important;padding-inline:14px!important;}
.portal-eskul-tabs>button.active{padding-left:20px!important;}}
.portal-eskul-module-head{display:none!important;}
/* V113: mode mobile Eskul lama dihapus; dock mobile dikelola controller kanonik 4 menu. */

.portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{padding-left:21px!important;}
.portal-eskul-tabs > button.active svg, .portal-eskul-tabs > button[aria-selected="true"] svg{color:currentColor;stroke:currentColor;}
.portal-nav-desktop.portal-eskul-parent-active > button:not([data-open-portal-eskul]), .portal-nav-mobile.portal-eskul-parent-active > button:not([data-open-portal-eskul]){background:transparent;color:var(--eg-body,var(--tone-424e55));box-shadow:none;}
.portal-nav-desktop.portal-eskul-parent-active > button:not([data-open-portal-eskul])::before, .portal-nav-desktop.portal-eskul-parent-active > button:not([data-open-portal-eskul])::after, .portal-nav-mobile.portal-eskul-parent-active > button:not([data-open-portal-eskul])::before, .portal-nav-mobile.portal-eskul-parent-active > button:not([data-open-portal-eskul])::after{opacity:0!important;box-shadow:none;}
.portal-nav-desktop > button[data-open-portal-eskul].portal-eskul-menu-active, .portal-nav-desktop > button[data-open-portal-eskul].active{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 9px 22px var(--tone-ff05dd1e);}
@media (max-width:767px){.portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{padding-left:14px!important;}
.portal-nav-mobile > button[data-open-portal-eskul].portal-eskul-menu-active, .portal-nav-mobile > button[data-open-portal-eskul].active{background:var(--theme-primary-strong,#173f70);color:var(--theme-surface,#fff);box-shadow:0 9px 22px rgba(0, 63, 158, .24);}}
.portal-eskul-category-note{margin-top:12px;padding:10px 12px;border:1px solid #fde68a;border-radius:11px;background:var(--tone-fffbeb,#fffbeb);color:var(--tone-92400e,#92400e);font-size:8px;font-weight:750;line-height:1.5;}
#portalEskulProgramForm button[data-eskul-save-program][disabled]{cursor:wait;opacity:.72;pointer-events:none;}
.portal-eskul-tabs > button{border:2px solid var(--theme-primary,#078ee8);border-radius:15px;}

.portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{border-color:var(--theme-primary-mid,#1264ad);}
.portal-eskul-form-status{display:none;margin-top:12px;padding:10px 12px;border-radius:11px;font-size:9px;font-weight:800;line-height:1.45;}
.portal-eskul-form-status.is-loading, .portal-eskul-form-status.is-info, .portal-eskul-form-status.is-success, .portal-eskul-form-status.is-error{display:block;}
.portal-eskul-form-status.is-loading, .portal-eskul-form-status.is-info{background:var(--tone-eff6ff,#eff6ff);border:1px solid #bfdbfe;color:var(--tone-1d4ed8,#1d4ed8);}
.portal-eskul-form-status.is-success{background:var(--theme-primary-soft,#f0f8ff);border:1px solid var(--theme-primary-border-strong,#b8d9f3);color:var(--theme-primary-strong,#173f70);}
.portal-eskul-form-status.is-error{background:var(--tone-fff1f2,#fff1f2);border:1px solid var(--tone-fecdd3);color:var(--theme-danger-deep,#be123c);}
@media (max-width:767px){.portal-eskul-tabs > button, .portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{height:44px!important;min-height:44px!important;padding:0 15px!important;border-radius:var(--radius-lg,14px);}}
.portal-eskul-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important;gap:6px!important;padding:6px!important;overflow:visible!important;border:1px solid #f3f4f6;border-radius:var(--radius-xl,16px);background:var(--theme-surface,#fff);box-shadow:0 1px 2px var(--tone-1dff4ce9);scroll-snap-type:none!important;}
.portal-eskul-tabs > button, .portal-eskul-tabs > button:hover, .portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{width:100%!important;min-width:0!important;height:auto!important;min-height:38px!important;padding:10px 12px!important;border:0;border-radius:var(--radius-md-lg,12px);box-shadow:none;transform:none!important;font-size:12px;font-weight:900;line-height:1.35;}
.portal-eskul-tabs > button{background:transparent;color:var(--tone-6b7280);}
.portal-eskul-tabs > button:hover{background:#f9fafb;color:#4b5563;}
.portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 4px 6px -1px var(--tone-e9ed6e94);}
.portal-eskul-tabs > button > svg{display:none!important;}
html[data-portal-brand="guru"] body #root
  .portal-nav-desktop.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]), html[data-portal-brand="guru"] body #root
  .portal-nav-mobile.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]){border:0;background:transparent;color:var(--eg-body,var(--tone-424e55));-webkit-text-fill-color:var(--eg-body,var(--tone-424e55))!important;box-shadow:none;text-shadow:none;transform:none!important;filter:none!important;opacity:1!important;}
html[data-portal-brand="guru"] body #root
  .portal-nav-desktop.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul])::before, html[data-portal-brand="guru"] body #root
  .portal-nav-desktop.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul])::after, html[data-portal-brand="guru"] body #root
  .portal-nav-mobile.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul])::before, html[data-portal-brand="guru"] body #root
  .portal-nav-mobile.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul])::after{display:none!important;content:none!important;opacity:0!important;box-shadow:none;}
html[data-portal-brand="guru"] body #root
  .portal-nav-desktop.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]) > svg, html[data-portal-brand="guru"] body #root
  .portal-nav-mobile.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]) > svg{width:22px!important;height:22px!important;padding:0!important;border:0;border-radius:0;background:transparent;color:inherit;-webkit-text-fill-color:inherit!important;fill:none;stroke:currentColor;box-shadow:none;filter:none!important;}
html[data-portal-brand="guru"] body #root
  .portal-nav-desktop.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]) :is(span,b,small), html[data-portal-brand="guru"] body #root
  .portal-nav-mobile.portal-eskul-parent-active
  > button.portal-eskul-native-suspended:not([data-open-portal-eskul]) :is(span,b,small){color:inherit;-webkit-text-fill-color:inherit!important;opacity:1!important;}
html[data-portal-brand="guru"] body #root
  .portal-nav-desktop > button[data-open-portal-eskul].portal-eskul-menu-active, html[data-portal-brand="guru"] body #root
  .portal-nav-desktop > button[data-open-portal-eskul].active{border-color:transparent;background:linear-gradient(135deg,var(--eg-primary,var(--theme-primary-mid,#1264ad)) 0%,var(--eg-primary-deep,var(--theme-primary-darker,#123d6b)) 100%);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:var(--eg-shadow-glow,0 10px 26px -6px rgba(0, 111, 209, .4));text-shadow:none;transform:none!important;}
@media (max-width:640px){.portal-eskul-tabs{display:flex!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity!important;}
.portal-eskul-tabs > button, .portal-eskul-tabs > button:hover, .portal-eskul-tabs > button.active, .portal-eskul-tabs > button[aria-selected="true"]{flex:0 0 auto!important;width:auto!important;min-width:132px!important;min-height:38px!important;padding:10px 14px!important;scroll-snap-align:start;}}
html[data-portal-brand="guru"] body #portalGuruEskulApp
  .portal-eskul-tabs > button.active, html[data-portal-brand="guru"] body #portalGuruEskulApp
  .portal-eskul-tabs > button[aria-selected="true"]{border:0;text-shadow:none;}
html[data-portal-brand="guru"] body #portalGuruEskulApp
  .portal-eskul-tabs > button.active :is(span,b,small), html[data-portal-brand="guru"] body #portalGuruEskulApp
  .portal-eskul-tabs > button[aria-selected="true"] :is(span,b,small){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;width:100%!important;min-width:0!important;padding:0 0 5px!important;border:0;border-radius:0;background:transparent;box-shadow:none;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity!important;scrollbar-width:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button:hover, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button.active, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button[aria-selected="true"]{position:relative!important;box-sizing:border-box!important;display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:auto!important;min-width:128px!important;max-width:none!important;height:48px!important;min-height:48px!important;max-height:48px!important;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);-webkit-text-fill-color:var(--theme-primary-deep,#075da9)!important;box-shadow:0 5px 15px rgba(0, 111, 209, .08);font-size:12px;font-weight:600;line-height:1.25;text-align:center!important;white-space:nowrap!important;transform:none!important;filter:none!important;scroll-snap-align:start!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button:hover{border-color:var(--theme-primary-mid,#1264ad);background:#e7f8f2;color:var(--theme-primary-darker,#123d6b);-webkit-text-fill-color:var(--theme-primary-darker,#123d6b)!important;transform:translateY(-1px)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button.active, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button[aria-selected="true"]{border-color:var(--theme-primary-mid,#1264ad);border-left-color:var(--theme-primary-strong,#173f70);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 20px rgba(0, 111, 209, .20);transform:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button > svg{display:block!important;flex:0 0 18px!important;width:18px!important;height:18px!important;color:currentColor;stroke:currentColor;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button :is(span,b,small){color:inherit;-webkit-text-fill-color:inherit!important;}
.portal-eskul-program-management{margin-top:14px;overflow:hidden;border:1px solid var(--eskul-line);border-radius:19px;background:var(--theme-surface,#fff);box-shadow:0 7px 22px var(--tone-4d09289e);}
.portal-eskul-program-management>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--tone-edf2f4);}
.portal-eskul-program-management>header b{display:block;font-size:11px;font-weight:900;color:var(--tone-17212b);}
.portal-eskul-program-management>header small{display:block;margin-top:2px;font-size:8px;font-weight:650;color:var(--theme-text-muted,#60758d);}
.portal-eskul-program-management>header>span{flex:none;padding:6px 9px;border-radius:var(--radius-pill,999px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);font-size:8px;font-weight:900;}
.portal-eskul-program-list{display:grid;}
.portal-eskul-program-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid var(--tone-edf2f4);}
.portal-eskul-program-row:last-child{border-bottom:0;}
.portal-eskul-program-row.is-selected{background:#f0fdf8;}
.portal-eskul-program-row-main{min-width:0;border:0;background:transparent;color:var(--theme-text-strong,#123d6b);display:flex;align-items:center;gap:10px;padding:5px;text-align:left;cursor:pointer;}
.portal-eskul-program-row-main>span{flex:none;width:34px;height:34px;border-radius:11px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);display:grid;place-items:center;}
.portal-eskul-program-row-main>div{min-width:0;}
.portal-eskul-program-row-main b{display:block;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.portal-eskul-program-row-main small{display:block;font-weight:650;color:var(--theme-text-muted,#60758d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.portal-eskul-program-row-actions{display:flex;align-items:center;gap:7px;}
.portal-eskul-program-row-actions>button{border:1px solid var(--tone-dbe5e9);border-radius:var(--radius-md,10px);background:var(--theme-surface,#fff);color:var(--theme-text-secondary,#50657e);display:inline-flex;align-items:center;justify-content:center;gap:5px;font-weight:900;cursor:pointer;}
.portal-eskul-program-row-actions>button:hover{border-color:var(--theme-primary-border-strong,#b8d9f3);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);}
.portal-eskul-program-row-actions>button.danger{border-color:var(--tone-fecaca,#fecaca);background:var(--tone-fff1f2,#fff1f2);color:var(--theme-danger,#b91c1c);}
.portal-eskul-program-row-actions>button:disabled{opacity:.65;cursor:wait;}
#portalEskulProgramForm [data-eskul-save-program]{position:relative;z-index:2;pointer-events:auto!important;touch-action:manipulation;}
#portalEskulProgramForm [data-eskul-save-program]:focus-visible{outline:3px solid var(--tone-af4f05cb,rgba(7, 142, 232, .24));outline-offset:2px;}
@media (max-width:640px){html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs{gap:8px!important;padding-right:12px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button:hover, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button.active, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button[aria-selected="true"]{width:auto!important;min-width:128px!important;height:48px!important;min-height:48px!important;max-height:48px!important;padding:9px 14px!important;border-left-width:7px!important;border-radius:var(--radius-xl,16px);}
.portal-eskul-program-row{grid-template-columns:minmax(0,1fr);gap:6px;}
.portal-eskul-program-row-actions{padding-left:49px;}
.portal-eskul-program-row-actions>button{flex:1;}}
.portal-eskul-members-page{width:100%;min-width:0;}
.portal-eskul-members-page .portal-eskul-page-head{margin-bottom:18px;}
.portal-eskul-members-page .portal-eskul-page-head h2{font-size:24px;}
.portal-eskul-members-page .portal-eskul-page-head p{font-size:12px;line-height:1.6;}
.portal-eskul-members-page .portal-eskul-count{padding:8px 12px;font-size:10px;}
.portal-eskul-members-page .portal-eskul-add-grid{grid-template-columns:minmax(280px,.95fr) minmax(360px,1.2fr) minmax(280px,.95fr);gap:16px;margin-bottom:18px;}
.portal-eskul-members-page .portal-eskul-panel{padding:18px;gap:13px;border-radius:var(--radius-3xl,20px);box-shadow:0 8px 24px var(--tone-4d09289e);}
.portal-eskul-members-page .portal-eskul-panel>header b{font-size:14px;line-height:1.35;}
.portal-eskul-members-page .portal-eskul-panel>header small{margin-top:3px;font-size:10px;line-height:1.45;}
.portal-eskul-members-page .portal-eskul-panel label{gap:7px;font-size:11px;line-height:1.35;}
.portal-eskul-members-page .portal-eskul-panel input, .portal-eskul-members-page .portal-eskul-panel select{min-height:46px;padding:11px 13px;border-radius:13px;font-size:13px;}
.portal-eskul-members-page .portal-eskul-panel input[type="file"]{padding:8px 10px;}
.portal-eskul-members-page .portal-eskul-panel>.primary{min-height:44px;border-radius:13px;font-size:12px;}
.portal-eskul-members-page .portal-eskul-portal-students{height:170px;padding:7px;border-radius:13px;}
.portal-eskul-members-page .portal-eskul-portal-students>label{gap:10px;padding:9px;border-radius:var(--radius-md,10px);}
.portal-eskul-members-page .portal-eskul-portal-students input{width:18px;height:18px;}
.portal-eskul-members-page .portal-eskul-portal-students b{font-size:12px;line-height:1.35;}
.portal-eskul-members-page .portal-eskul-portal-students small{margin-top:2px;font-size:10px;}
.portal-eskul-members-page .portal-eskul-portal-students>p{padding:50px 8px;font-size:11px;}
.portal-eskul-members-page .portal-eskul-import-example{padding:12px 13px;border-radius:13px;}
.portal-eskul-members-page .portal-eskul-import-example b{font-size:10px;}
.portal-eskul-members-page .portal-eskul-import-example span{font-size:12px;margin:5px 0;}
.portal-eskul-members-page .portal-eskul-import-example small{font-size:10px;line-height:1.55;}
.portal-eskul-members-card{border-radius:var(--radius-3xl,20px);box-shadow:0 8px 24px var(--tone-4d09289e);}
.portal-eskul-members-card>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;}
.portal-eskul-members-card>header b{font-size:15px;line-height:1.35;}
.portal-eskul-members-card>header small{margin-top:4px;font-size:10px;line-height:1.5;}
.portal-eskul-member-total{flex:none;padding:7px 10px;border-radius:var(--radius-pill,999px);background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);font-size:10px;font-weight:900;}
.portal-eskul-members-page .portal-eskul-member-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;overflow:auto;background:var(--tone-f8fbfa,#f8fbfa);}
.portal-eskul-members-page .portal-eskul-member-list article{min-height:76px;grid-template-columns:38px minmax(0,1fr) 40px;gap:12px;padding:13px 14px;border:1px solid #e3ece8;border-radius:15px;background:var(--theme-surface,#fff);box-shadow:0 3px 10px var(--tone-54b474d2);}
.portal-eskul-members-page .portal-eskul-member-list article:last-child{border-bottom:1px solid #e3ece8;}
.portal-eskul-members-page .portal-eskul-member-list article:hover{border-color:var(--theme-primary-border-strong,#b8d9f3);box-shadow:0 7px 18px rgba(7, 142, 232, .08);}
.portal-eskul-members-page .portal-eskul-member-list .number{width:34px;height:34px;border-radius:11px;font-size:11px;}
.portal-eskul-member-info{min-width:0;}
.portal-eskul-members-page .portal-eskul-member-info>b{display:block;overflow:hidden;color:var(--tone-1f2937,#1f2937);font-weight:900;text-overflow:ellipsis;white-space:nowrap;}
.portal-eskul-member-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;}
.portal-eskul-member-meta>span{display:inline-flex;align-items:center;border-radius:var(--radius-pill,999px);background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-muted,#60758d);font-weight:800;line-height:1.2;}
.portal-eskul-member-meta>span:first-child{background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);}
.portal-eskul-members-page .portal-eskul-member-list .danger-icon{width:36px;height:36px;border-radius:11px;}
.portal-eskul-members-page .portal-eskul-list-empty{grid-column:1/-1;padding:45px 20px;font-size:12px;}
@media (max-width:1180px){.portal-eskul-members-page .portal-eskul-add-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.portal-eskul-members-page .portal-eskul-add-grid>.portal-eskul-panel:last-child{grid-column:1/-1;}}
@media (max-width:900px){.portal-eskul-members-page .portal-eskul-member-list{grid-template-columns:1fr;}}
@media (max-width:820px){.portal-eskul-members-page .portal-eskul-add-grid{grid-template-columns:1fr;}
.portal-eskul-members-page .portal-eskul-add-grid>.portal-eskul-panel:last-child{grid-column:auto;}
.portal-eskul-members-page .portal-eskul-page-head h2{font-size:20px;}}
@media (max-width:520px){.portal-eskul-members-card>header{align-items:flex-start;}
.portal-eskul-members-page .portal-eskul-member-list{max-height:none;padding:8px;}
.portal-eskul-members-page .portal-eskul-member-list article{grid-template-columns:34px minmax(0,1fr) 36px;gap:9px;padding:11px;}
.portal-eskul-members-page .portal-eskul-member-info>b{font-size:12px;}}
.portal-eskul-member-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 18px;}
.portal-eskul-member-methods>button{display:flex;align-items:center;gap:13px;border:1px solid #cfe5dc;border-left:7px solid #0a6da5;background:var(--theme-surface,#fff);color:#084f76;text-align:left;cursor:pointer;}
.portal-eskul-member-methods>button:hover{border-color:#55a7d6;background:#f3fffa;}
.portal-eskul-member-methods>button>svg{flex:none;}
.portal-eskul-member-methods>button>span{display:block;min-width:0;}
.portal-eskul-member-methods b{display:block;color:var(--tone-1f2937,#1f2937);font-size:13px;font-weight:900;line-height:1.35;}
.portal-eskul-member-methods small{display:block;margin-top:3px;color:#7b8b95;font-size:10px;font-weight:700;line-height:1.4;}
.portal-eskul-members-page .portal-eskul-member-list{max-height:clamp(520px,68vh,900px);}
.portal-eskul-modal-backdrop{position:fixed;z-index:100000;display:flex;justify-content:center;}
.portal-eskul-member-modal{width:min(620px,100%);max-height:min(84vh,760px);flex-direction:column;}
.portal-eskul-member-modal.is-wide{width:min(790px,100%);}
.portal-eskul-member-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px 17px;border-bottom:1px solid var(--tone-e8efec,#e8efec);background:linear-gradient(180deg,#f4fffb 0%,var(--theme-surface,#fff) 100%);}
.portal-eskul-member-modal>header small{display:block;color:var(--theme-primary-mid,#1264ad);font-size:9px;font-weight:950;letter-spacing:.12em;}
.portal-eskul-member-modal>header h3{margin:4px 0 0;color:var(--tone-1f2937,#1f2937);font-size:21px;font-weight:950;line-height:1.25;}
.portal-eskul-member-modal>header p{margin:6px 0 0;color:var(--tone-718096,#718096);font-size:11px;font-weight:650;line-height:1.55;}
.portal-eskul-modal-close{flex:none;width:38px;height:38px;display:grid;place-items:center;font-size:24px;line-height:1;cursor:pointer;}
.portal-eskul-modal-close:hover{background:var(--tone-fff1f2,#fff1f2);border-color:var(--tone-fecdd3);color:var(--theme-danger-strong,#dc2626);}
.portal-eskul-modal-body{display:flex;flex-direction:column;gap:15px;padding:20px 24px;overflow:auto;}
.portal-eskul-modal-body label{display:flex;flex-direction:column;gap:7px;color:var(--theme-text-secondary,#50657e);font-size:11px;font-weight:850;}
.portal-eskul-modal-body input, .portal-eskul-modal-body select{width:100%;min-height:48px;padding:11px 13px;border:1px solid #dbe6e1;border-radius:13px;background:var(--tone-f8fbfa,#f8fbfa);color:var(--theme-text-strong,#123d6b);font-size:13px;font-weight:700;outline:none;}
.portal-eskul-modal-body input:focus, .portal-eskul-modal-body select:focus{border-color:var(--tone-20a7ff,#20a7ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 4px var(--tone-7f81ae39);}
.portal-eskul-member-modal>footer{display:flex;justify-content:flex-end;gap:10px;padding:15px 24px 20px;border-top:1px solid var(--tone-e8efec,#e8efec);background:var(--theme-surface-elevated,#fbfdff);}
.portal-eskul-member-modal>footer>button{min-width:130px;min-height:44px;border-radius:13px;font-size:11px;font-weight:900;}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal{height:min(390px,48vh);padding:9px;}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal>label{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:11px;padding:11px 12px;border-bottom:1px solid #e6eeeb;border-radius:var(--radius-md,10px);cursor:pointer;}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal>label:hover{background:var(--theme-primary-soft,#f0f8ff);}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal input{width:19px;height:19px;min-height:0;padding:0;}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal b{font-size:12px;}
.portal-eskul-member-modal .portal-eskul-portal-students.is-modal small{font-size:10px;}
.portal-eskul-member-modal .portal-eskul-import-example{padding:14px;border-radius:var(--radius-lg,14px);}
#portalEskulMeetingForm [data-eskul-save-meeting][disabled], .portal-eskul-member-modal button[disabled]{opacity:.65;cursor:wait;}
#portalEskulMeetingStatus{margin-top:14px;}
@media (max-width:850px){.portal-eskul-member-methods{grid-template-columns:1fr;}
.portal-eskul-member-methods>button{min-height:64px;}
.portal-eskul-members-page .portal-eskul-member-list{max-height:none;}}
@media (max-width:560px){
.portal-eskul-member-modal, .portal-eskul-member-modal.is-wide{width:100%;max-height:92vh;}

.portal-eskul-member-modal>header h3{font-size:18px;}
.portal-eskul-modal-body{padding:16px 17px;}

.portal-eskul-member-modal>footer>button{flex:1;min-width:0;}
.portal-eskul-member-methods>button{padding:12px 14px;}}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-tabs > button{font-size:12px;font-weight:850;}
.portal-eskul-side-programs>button{flex-basis:225px;min-height:58px;padding:10px 12px;}
.portal-eskul-side-programs>button>span{width:36px;height:36px;}
.portal-eskul-side-programs>button b{font-size:12px;line-height:1.4;}
.portal-eskul-side-programs>button small{font-size:9px;line-height:1.4;margin-top:3px;}
.portal-eskul-side-programs-head b{font-size:10px;}
.portal-eskul-page-head small{font-size:10px;}
.portal-eskul-page-head p{font-size:12px;line-height:1.65;}
.portal-eskul-content .primary, .portal-eskul-content .secondary{min-height:40px;padding:10px 15px;font-size:11px;}
.portal-eskul-detail-main span{font-size:10px;}
.portal-eskul-detail-main h3{font-size:20px;}
.portal-eskul-detail-main p{font-size:11px;}
.portal-eskul-detail-stats small{font-size:9px;}
.portal-eskul-detail-stats b{font-size:11px;}
.portal-eskul-actions>button{min-height:38px;padding:9px 11px;font-size:10px;}
.portal-eskul-quick-grid b{font-size:13px;}
.portal-eskul-quick-grid small{font-size:10px;line-height:1.6;}
.portal-eskul-inline-form label, .portal-eskul-panel label{font-size:11px;gap:7px;}
.portal-eskul-inline-form input, .portal-eskul-inline-form select, .portal-eskul-inline-form textarea, .portal-eskul-panel input, .portal-eskul-panel select, .portal-eskul-report-toolbar input{min-height:44px;padding:11px 12px;font-size:13px;}
.portal-eskul-inline-form label>small{font-size:10px;line-height:1.5;}
.portal-eskul-program-row-main b{font-size:13px;line-height:1.4;}
.portal-eskul-program-row-main small{font-size:10px;line-height:1.5;margin-top:3px;}
.portal-eskul-program-row-actions>button{min-height:38px;padding:8px 12px;font-size:10px;}
.portal-eskul-members-page .portal-eskul-member-info>b{font-size:15px;line-height:1.45;}
.portal-eskul-member-meta>span{min-height:26px;padding:5px 9px;font-size:10px;}
.portal-eskul-meeting-main>small{font-size:10px;}
.portal-eskul-meeting-main h3{font-size:15px;line-height:1.45;margin:4px 0 9px;}
.portal-eskul-statuses span{padding:5px 8px;font-size:10px;}
.portal-eskul-existing>b{font-size:12px;}
.portal-eskul-photo-preview input{font-size:11px;}
.portal-eskul-toast{font-size:12px;line-height:1.5;}
.portal-eskul-attendance-tools{padding:0 0 14px;gap:12px;}
.portal-eskul-attendance-tools>button{min-height:42px;padding:10px 14px;border-radius:var(--radius-md-lg,12px);font-size:11px;}
.portal-eskul-attendance-tools>div{gap:7px;flex-wrap:wrap;}
.portal-eskul-attendance-tools span{min-height:30px;display:inline-flex;align-items:center;padding:7px 10px;border-radius:9px;font-size:10px;}
.portal-eskul-attendance-row{grid-template-columns:minmax(210px,.85fr) minmax(420px,1.45fr) minmax(180px,.65fr);}
#portalEskulAttendanceStatus{margin-top:14px;}
#portalEskulAttendanceForm [data-eskul-save-attendance][disabled]{opacity:.68;cursor:wait;}
@media (max-width:1100px){.portal-eskul-attendance-row{grid-template-columns:minmax(190px,.8fr) minmax(360px,1.4fr);}
.portal-eskul-attendance-row .note{grid-column:1/-1;}}
@media (max-width:760px){.portal-eskul-side-programs>button{flex-basis:195px;}
.portal-eskul-attendance-row{grid-template-columns:1fr;}
.portal-eskul-attendance-row .note{grid-column:auto;}}
@media (max-width:480px){.portal-eskul-attendance-form{padding:11px;}
.portal-eskul-attendance-tools{align-items:stretch;}
.portal-eskul-attendance-tools>button{width:100%;justify-content:center;}
.portal-eskul-attendance-tools>div{width:100%;margin-left:0;display:grid;grid-template-columns:repeat(2,1fr);}
.portal-eskul-attendance-tools span{justify-content:center;}
.portal-eskul-attendance-row .statuses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.portal-eskul-attendance-row .statuses span{font-size:12px;}
.portal-eskul-members-page .portal-eskul-member-info>b{font-size:14px;}}
.portal-eskul-attendance-form{overflow:visible!important;}
.portal-eskul-attendance-tools{display:none!important;}
.portal-eskul-attendance-list{grid-template-columns:1fr!important;}
.portal-eskul-attendance-row .student b{overflow:visible!important;text-overflow:clip!important;}
.portal-eskul-attendance-row .statuses label{text-align:center!important;}
.portal-eskul-attendance-row .note{width:100%!important;min-height:48px!important;margin:0!important;padding:12px 14px!important;border:1px solid #d6e2ee;border-radius:var(--radius-lg,14px);background:#f6f9f8;color:#333c41;font-size:13px;font-weight:600;outline:none;}
.portal-eskul-attendance-row .note::placeholder{color:#9aa6a2;}
.portal-eskul-attendance-row .note:focus{border-color:var(--tone-20a7ff,#20a7ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 3px var(--tone-7f81ae39);}
#portalEskulAttendanceStatus{margin:14px 0 0!important;}
#portalEskulAttendanceForm>footer{display:flex!important;justify-content:flex-end!important;gap:10px!important;margin-top:16px!important;padding:15px 0 0!important;border-top:1px solid var(--tone-e8efec,#e8efec)!important;background:transparent;}
#portalEskulAttendanceForm>footer>button{min-height:48px!important;padding:12px 20px!important;border-radius:15px;font-size:13px;}
@media (min-width:1000px){.portal-eskul-attendance-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:start!important;}}
@media (max-width:760px){.portal-eskul-attendance-list{gap:12px!important;}

.portal-eskul-attendance-row .statuses{display:flex!important;grid-template-columns:none!important;gap:0!important;}

.portal-eskul-attendance-row .note{min-height:46px!important;font-size:12px;}
#portalEskulAttendanceForm>footer{position:sticky!important;bottom:0!important;z-index:8!important;margin-inline:-4px!important;padding:12px 4px calc(12px + env(safe-area-inset-bottom))!important;background:var(--tone-da3d8a08,rgba(255,255,255,.96));}
#portalEskulAttendanceForm>footer>button{flex:1 1 0!important;}}
@media (max-width:390px){

#portalEskulAttendanceForm>footer>button{padding-inline:10px!important;font-size:12px;}}
.portal-eskul-members-page .portal-eskul-member-card{cursor:pointer;outline:none;}
.portal-eskul-members-page .portal-eskul-member-card:focus-visible{border-color:var(--tone-20a7ff,#20a7ff);box-shadow:0 0 0 4px rgba(7, 142, 232, .14),0 9px 24px var(--tone-7f81ae39);}
.portal-eskul-members-page .portal-eskul-member-card:hover{transform:translateY(-1px);}
.portal-eskul-member-click-hint{display:inline-flex;align-items:center;gap:5px;margin-top:8px;color:#0a5d8a;font-size:10px;font-weight:800;line-height:1.35;}
.portal-eskul-member-click-hint svg{flex:none;}
.portal-eskul-member-detail-modal{width:min(720px,100%);}
.portal-eskul-member-preview-summary{display:flex;align-items:center;gap:14px;padding:15px;border:1px solid #dce9e4;border-radius:17px;background:linear-gradient(145deg,#f1fff9,var(--theme-surface,#fff));}
.portal-eskul-member-preview-summary .avatar{flex:none;width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);font-size:20px;font-weight:950;box-shadow:0 8px 18px var(--tone-ff05dd1e);}
.portal-eskul-member-preview-summary>div{min-width:0;}
.portal-eskul-member-preview-summary b{display:block;color:var(--tone-1f2937,#1f2937);font-size:16px;font-weight:950;line-height:1.35;overflow-wrap:anywhere;}
.portal-eskul-member-preview-summary small{display:block;margin-top:4px;color:var(--tone-718096,#718096);font-size:11px;font-weight:700;line-height:1.5;}
.portal-eskul-member-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.portal-eskul-member-detail-grid .is-full{grid-column:1/-1;}
.portal-eskul-member-detail-grid textarea{width:100%;min-height:92px;resize:vertical;padding:12px 13px;border:1px solid #dbe6e1;border-radius:13px;background:var(--tone-f8fbfa,#f8fbfa);color:var(--theme-text-strong,#123d6b);font:700 13px/1.5 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}
.portal-eskul-member-detail-grid textarea:focus{border-color:var(--tone-20a7ff,#20a7ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 4px var(--tone-7f81ae39);}
.portal-eskul-member-source-note{display:flex;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid #b3d3e6;border-radius:13px;background:var(--theme-primary-soft,#f0f8ff);color:#084f76;font-size:10px;font-weight:750;line-height:1.55;}
.portal-eskul-member-source-note svg{flex:none;margin-top:1px;}
.portal-eskul-attendance-row .statuses input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.portal-eskul-attendance-row .statuses span{cursor:pointer!important;}
.portal-eskul-attendance-row .statuses input:focus-visible+span{outline:3px solid var(--tone-ff05dd1e);outline-offset:2px!important;}
.portal-eskul-attendance-row .status-h input:checked+span{background:#075a86;box-shadow:inset 5px 0 0 rgba(0,0,0,.10),0 5px 12px rgba(0, 63, 158, .20);}
.portal-eskul-attendance-row .status-i input:checked+span{box-shadow:inset 5px 0 0 rgba(0,0,0,.08),0 5px 12px rgba(59,130,246,.20);}
.portal-eskul-attendance-row>.note[type="hidden"]{display:none!important;}
@media (max-width:760px){.portal-eskul-member-detail-grid{grid-template-columns:1fr;}
.portal-eskul-member-detail-grid .is-full{grid-column:auto;}


.portal-eskul-attendance-row .student small{font-size:12px;}
.portal-eskul-attendance-row .statuses{padding:4px!important;border-radius:var(--radius-lg,14px);}
.portal-eskul-attendance-row .statuses span{border-radius:11px;}}
@media (max-width:390px){.portal-eskul-attendance-row{padding:15px!important;}
.portal-eskul-attendance-row .statuses span{min-height:45px!important;font-size:12px;padding-inline:3px!important;}
.portal-eskul-member-click-hint{font-size:9px;}}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile).portal-eskul-parent-active
  > button:not([data-open-portal-eskul]){position:relative!important;border:2px solid #1884c3;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);color:var(--tone-0b486a);-webkit-text-fill-color:var(--tone-0b486a)!important;box-shadow:0 7px 18px rgba(15, 95, 141,.08);text-shadow:none;transform:none!important;filter:none!important;opacity:1!important;overflow:hidden!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile).portal-eskul-parent-active
  > button:not([data-open-portal-eskul])::before, html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile).portal-eskul-parent-active
  > button:not([data-open-portal-eskul])::after{content:none!important;display:none!important;opacity:0!important;box-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile).portal-eskul-parent-active
  > button:not([data-open-portal-eskul]) :is(span,b,small,p){color:var(--tone-0b486a);-webkit-text-fill-color:var(--tone-0b486a)!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile).portal-eskul-parent-active
  > button:not([data-open-portal-eskul]) :is(svg,i,.nav-icon,.admin-nav-icon){color:var(--tone-0b486a);-webkit-text-fill-color:var(--tone-0b486a)!important;stroke:currentColor;background:transparent;border:0;box-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile)
  > button[data-open-portal-eskul]:is(.active,.portal-eskul-menu-active,[aria-current="page"],[aria-selected="true"]){position:relative!important;border:2px solid #177eb9;border-radius:var(--radius-2xl,18px);background:linear-gradient(180deg,#2188c5 0%,#167ab4 100%);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 12px 24px rgba(24, 132, 195,.22);text-shadow:none;transform:none!important;filter:none!important;overflow:hidden!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile)
  > button[data-open-portal-eskul]:is(.active,.portal-eskul-menu-active,[aria-current="page"],[aria-selected="true"])::before{content:none!important;display:none!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile)
  > button[data-open-portal-eskul]:is(.active,.portal-eskul-menu-active,[aria-current="page"],[aria-selected="true"])::after{content:""!important;display:block!important;position:absolute!important;right:12px!important;top:50%!important;width:4px!important;height:58%!important;border-radius:var(--radius-pill,999px);background:#1e4dff;transform:translateY(-50%)!important;opacity:1!important;box-shadow:0 0 0 1px var(--tone-ae5def70);}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile)
  > button[data-open-portal-eskul]:is(.active,.portal-eskul-menu-active,[aria-current="page"],[aria-selected="true"])
  :is(span,b,small,p,svg,i,.nav-icon,.admin-nav-icon){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;stroke:currentColor;}
.portal-eskul-attendance-form{padding:0 0 14px!important;border:0;border-radius:0;background:transparent;box-shadow:none;}
.portal-eskul-attendance-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 1px 10px;padding:11px 13px;border:1px solid #e9eef1;border-radius:var(--radius-lg,14px);background:var(--theme-surface,#fff);box-shadow:0 2px 8px var(--tone-54b474d2);}
.portal-eskul-attendance-summary b{display:block;color:var(--tone-27313c);font-size:12px;font-weight:850;line-height:1.35;}
.portal-eskul-attendance-summary small{display:block;margin-top:2px;color:#7c8793;font-size:10px;font-weight:650;line-height:1.45;}
.portal-eskul-attendance-summary>span{flex:none;padding:6px 9px;border-radius:9px;background:#f4f7f8;color:var(--tone-718096,#718096);font-size:9px;font-weight:850;letter-spacing:.04em;}
.portal-eskul-attendance-list{display:flex!important;flex-direction:column!important;gap:8px!important;}
.portal-eskul-attendance-row{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;width:100%!important;min-height:72px!important;padding:12px 14px!important;border:1px solid #edf0f1;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);box-shadow:0 2px 7px var(--tone-54b474d2);transform:none!important;}
.portal-eskul-attendance-row:hover{border-color:var(--tone-dbe5e9);box-shadow:0 2px 7px var(--tone-54b474d2);transform:none!important;}
.portal-eskul-attendance-row.has-status{border-color:#d8e8f2;}
.portal-eskul-attendance-row .student{flex:1 1 220px!important;min-width:170px!important;width:auto!important;padding:0!important;}
.portal-eskul-attendance-row .student b{display:block!important;color:var(--tone-27313c);font-size:14px;font-weight:850;line-height:1.35;white-space:normal!important;}
.portal-eskul-attendance-row .student small{display:block!important;margin-top:3px!important;color:#7b8794;font-size:10px;font-weight:650;line-height:1.35;}
.portal-eskul-attendance-row .statuses{flex:0 1 420px!important;width:min(100%,420px)!important;display:flex!important;align-items:stretch!important;gap:3px!important;padding:4px!important;border:0;border-radius:var(--radius-md-lg,12px);background:#f5f7f8;box-shadow:none;}
.portal-eskul-attendance-row .statuses label{position:relative!important;flex:1 1 0!important;min-width:0!important;margin:0!important;}
.portal-eskul-attendance-row .statuses span{width:100%!important;min-height:38px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:8px 9px!important;border:0;border-radius:9px;background:transparent;color:#9aa2ad;font-size:11px;font-weight:800;line-height:1.2;box-shadow:none;transform:none!important;}
.portal-eskul-attendance-row .statuses span:hover{background:var(--tone-e9edef);color:#56616b;}
.portal-eskul-attendance-row .status-h input:checked+span, .portal-eskul-attendance-row .status-i input:checked+span{background:var(--tone-3b82f6);color:var(--theme-surface,#fff);box-shadow:0 2px 6px rgba(59,130,246,.18);}
.portal-eskul-attendance-row .status-s input:checked+span{background:var(--theme-warning,#f59e0b);color:var(--theme-surface,#fff);box-shadow:0 2px 6px rgba(245,158,11,.18);}
.portal-eskul-attendance-row .status-a input:checked+span{background:var(--theme-danger-light,#ef4444);color:var(--theme-surface,#fff);box-shadow:0 2px 6px rgba(239,68,68,.18);}
.portal-eskul-attendance-form>footer{margin-top:10px!important;padding-top:10px!important;border-top:0!important;background:transparent;}
.portal-eskul-attendance-form>footer button{min-height:40px!important;border-radius:var(--radius-md-lg,12px);}

.portal-eskul-member-modal.is-compact>header{padding:16px 18px 12px;}
.portal-eskul-member-modal.is-compact>header h3{font-size:18px;}
.portal-eskul-member-modal.is-compact .portal-eskul-modal-body{padding:13px 18px;}
.portal-eskul-manual-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:10px!important;}
.portal-eskul-manual-grid .is-full{grid-column:1/-1;}
.portal-eskul-manual-grid #portalEskulMemberModalStatus{grid-column:1/-1;}
.portal-eskul-member-modal.is-compact>footer{padding:11px 18px 16px;}
.portal-eskul-member-methods{gap:8px;}
.portal-eskul-member-methods>button{min-height:58px;padding:10px 12px;border-radius:var(--radius-lg,14px);box-shadow:none;}
.portal-eskul-member-methods>button:hover{transform:none;box-shadow:none;}
.portal-eskul-member-methods>button>svg{width:20px;height:20px;}
@media (max-width:760px){.portal-eskul-attendance-summary{align-items:flex-start;}
.portal-eskul-attendance-row{flex-direction:column!important;align-items:stretch!important;gap:9px!important;min-height:0!important;padding:13px!important;border-radius:var(--radius-2xl,18px);}
.portal-eskul-attendance-row .student{flex:none!important;min-width:0!important;width:100%!important;}
.portal-eskul-attendance-row .student b{font-size:14px;}
.portal-eskul-attendance-row .statuses{flex:none!important;width:100%!important;max-width:none!important;}
.portal-eskul-attendance-row .statuses span{min-height:40px!important;padding:8px 4px!important;font-size:11px;}
.portal-eskul-attendance-form>footer{position:static!important;padding-bottom:0!important;}}
@media (max-width:480px){.portal-eskul-attendance-summary>span{display:none;}
.portal-eskul-manual-grid{grid-template-columns:1fr;}
.portal-eskul-manual-grid .is-full{grid-column:auto;}
.portal-eskul-member-modal.is-compact .portal-eskul-modal-body{padding-inline:15px;}}
body.portal-eskul-member-modal-open{overflow:hidden!important;}
body.portal-eskul-member-modal-open :is(.portal-nav-mobile,[class*="bottom-nav"]){visibility:hidden!important;pointer-events:none!important;}
.portal-eskul-modal-backdrop{inset:auto 0 0!important;top:var(--portal-eskul-viewport-top,0px)!important;height:var(--portal-eskul-viewport-height,100dvh)!important;min-height:0!important;padding:12px!important;align-items:center!important;overflow-y:auto!important;overscroll-behavior:contain;}
.portal-eskul-member-modal, .portal-eskul-member-modal.is-compact, .portal-eskul-member-modal.is-wide{width:min(470px,100%)!important;max-height:calc(var(--portal-eskul-viewport-height,100dvh) - 24px)!important;margin:auto!important;}
.portal-eskul-member-modal>header, .portal-eskul-member-modal>footer{flex:none;}
.portal-eskul-member-modal .portal-eskul-modal-body{overscroll-behavior:contain;}
body.portal-eskul-keyboard-open .portal-eskul-modal-backdrop{padding:6px!important;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal{max-height:calc(var(--portal-eskul-viewport-height,100dvh) - 12px)!important;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal>header{padding:10px 14px 8px!important;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal>header small, body.portal-eskul-keyboard-open .portal-eskul-member-modal>header p{display:none;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal>header h3{margin:0;font-size:16px;}
body.portal-eskul-keyboard-open .portal-eskul-modal-close{width:34px;height:34px;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal .portal-eskul-modal-body{padding:10px 14px!important;}
body.portal-eskul-keyboard-open .portal-eskul-member-modal>footer{padding:8px 14px 10px!important;}
.portal-eskul-meeting-workspace{padding:12px!important;border:1px solid #e5ecef;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);box-shadow:none;overflow:visible!important;}
.portal-eskul-meeting-fields{display:grid;grid-template-columns:110px 160px minmax(220px,1fr) minmax(210px,.72fr);gap:9px;align-items:start;margin-bottom:10px;}
.portal-eskul-meeting-fields label{display:flex;flex-direction:column;gap:5px;color:#52606d;font-size:10px;font-weight:800;}
.portal-eskul-meeting-fields input{width:100%;min-height:42px;padding:9px 11px;border:1px solid #dfe7ea;border-radius:11px;background:#f8fafb;color:var(--tone-27313c);font-size:12px;font-weight:750;outline:none;}
.portal-eskul-meeting-fields input:focus{border-color:var(--tone-20a7ff,#20a7ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(7,142,232,.09);}
.portal-eskul-meeting-fields input[readonly]{background:#edf4f7;color:#52606d;cursor:default;}
.portal-eskul-meeting-fields label>small{color:#86929e;font-size:9px;font-weight:650;line-height:1.4;}
.portal-eskul-meeting-workspace .portal-eskul-photo-preview{grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:7px;margin:0 0 10px;}
.portal-eskul-meeting-workspace .portal-eskul-photo-preview figure, .portal-eskul-meeting-workspace .portal-eskul-existing figure{margin:0;box-shadow:none;}
.portal-eskul-meeting-workspace .portal-eskul-photo-preview img{height:76px;}
.portal-eskul-meeting-workspace .portal-eskul-existing{margin:0 0 10px;padding:9px;border:1px solid #e9eef1;border-radius:var(--radius-md-lg,12px);background:#f9fbfc;}
.portal-eskul-meeting-workspace .portal-eskul-existing>b{margin-bottom:6px;font-size:10px;}
.portal-eskul-meeting-workspace .portal-eskul-existing>div{display:flex;gap:7px;overflow-x:auto;}
.portal-eskul-meeting-workspace .portal-eskul-existing figure{position:relative;flex:0 0 92px;}
.portal-eskul-meeting-workspace .portal-eskul-existing img{width:92px;height:68px;object-fit:cover;border-radius:9px;}
.portal-eskul-meeting-workspace .portal-eskul-attendance-summary{margin-top:2px;}
.portal-eskul-meeting-workspace .portal-eskul-attendance-list{max-height:none!important;}
.portal-eskul-meeting-workspace .portal-eskul-attendance-row .status-h input:checked+span{background:var(--tone-16a34a);color:var(--theme-surface,#fff);box-shadow:0 2px 6px rgba(22,163,74,.18);}
.portal-eskul-workspace-empty{display:flex;flex-direction:column;gap:3px;padding:20px;border:1px dashed #cdd9de;border-radius:var(--radius-lg,14px);background:#f8fafb;text-align:center;color:#72808c;}
.portal-eskul-workspace-empty b{color:#34414d;font-size:13px;}
.portal-eskul-workspace-empty span{font-size:10px;}
.portal-eskul-meeting-workspace>footer{position:sticky!important;bottom:0!important;z-index:6!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;margin:10px -2px -2px!important;padding:10px 2px 2px!important;border:0;background:linear-gradient(180deg,rgba(255,255,255,.35),var(--theme-surface,#fff) 28%);}
.portal-eskul-meeting-workspace>footer button{min-height:42px!important;border-radius:var(--radius-md-lg,12px);}
@media (max-width:980px){.portal-eskul-meeting-fields{grid-template-columns:105px 150px minmax(220px,1fr);}
.portal-eskul-meeting-fields .is-photo{grid-column:1/-1;}}
@media (max-width:560px){.portal-eskul-modal-backdrop{padding:8px!important;align-items:center!important;}
.portal-eskul-member-modal, .portal-eskul-member-modal.is-compact{width:100%!important;}
.portal-eskul-member-modal>header{padding:13px 14px 10px!important;}
.portal-eskul-member-modal>header p{margin-top:3px!important;}
.portal-eskul-member-modal .portal-eskul-modal-body{padding:11px 14px!important;}
.portal-eskul-manual-grid{grid-template-columns:1fr!important;gap:8px!important;}
.portal-eskul-manual-grid .is-full{grid-column:auto!important;}
.portal-eskul-member-modal>footer{padding:9px 14px 12px!important;}
.portal-eskul-meeting-workspace{padding:9px!important;border-radius:15px;}
.portal-eskul-workspace-head{gap:8px!important;}
.portal-eskul-meeting-fields{grid-template-columns:90px minmax(0,1fr);gap:8px;}
.portal-eskul-meeting-fields .is-topic, .portal-eskul-meeting-fields .is-photo{grid-column:1/-1;}
.portal-eskul-meeting-fields input{min-height:40px;padding:8px 10px;font-size:12px;}
.portal-eskul-meeting-workspace .portal-eskul-photo-preview{grid-template-columns:1fr 1fr;}
.portal-eskul-meeting-workspace .portal-eskul-attendance-row{padding:11px!important;gap:8px!important;}
.portal-eskul-meeting-workspace .portal-eskul-attendance-row .statuses span{min-height:38px!important;font-size:10px;}
.portal-eskul-meeting-workspace>footer{bottom:72px!important;display:grid!important;grid-template-columns:.62fr 1.38fr!important;}
.portal-eskul-meeting-workspace>footer button{min-width:0!important;padding-inline:8px!important;font-size:10px;}}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button.danger,
  button.danger-icon,
  button[data-eskul-delete-program],
  button[data-eskul-remove-member],
  button[data-eskul-delete-meeting],
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
){border:1px solid #a90f36;background:#c8103f;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;opacity:1!important;box-shadow:0 8px 18px rgba(200, 16, 63, 0.24);}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button.danger,
  button.danger-icon,
  button[data-eskul-delete-program],
  button[data-eskul-remove-member],
  button[data-eskul-delete-meeting],
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
) :is(svg, path, span, b, strong){color:var(--theme-surface,#fff);stroke:currentColor;-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button.danger,
  button.danger-icon,
  button[data-eskul-delete-program],
  button[data-eskul-remove-member],
  button[data-eskul-delete-meeting],
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
):not(:disabled):hover{border-color:#8f0b2d;background:#a90f36;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 10px 22px rgba(169, 15, 54, 0.28);}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button.danger,
  button.danger-icon,
  button[data-eskul-delete-program],
  button[data-eskul-remove-member],
  button[data-eskul-delete-meeting],
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
):not(:disabled):active{transform:translateY(1px) scale(0.985)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button.danger,
  button.danger-icon,
  button[data-eskul-delete-program],
  button[data-eskul-remove-member],
  button[data-eskul-delete-meeting],
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
):disabled{border-color:#dc7894;background:#e78ca5;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;opacity:0.82!important;box-shadow:none;cursor:not-allowed!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions > button[data-eskul-delete-program]{font-weight:850;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-actions > button.danger{min-height:40px!important;padding:9px 14px!important;border-radius:var(--radius-md,10px);font-size:11px;font-weight:850;}
html[data-portal-brand="guru"] body #portalGuruEskulApp button.danger-icon[data-eskul-remove-member]{width:38px!important;height:38px!important;min-width:38px!important;border-radius:11px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(
  button[data-eskul-delete-photo],
  button[data-eskul-remove-pending-photo]
){display:grid!important;place-items:center!important;width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:0!important;border-radius:var(--radius-pill,999px);font-size:18px;line-height:1;}
html[data-portal-brand="guru"] body .portal-nav-desktop > button::after, html[data-portal-brand="guru"] body .portal-nav-mobile:not(.student-mobile-nav) > button::after{display:none!important;content:none!important;opacity:0!important;width:0!important;box-shadow:none;}
html[data-portal-brand="guru"] body :is(.portal-nav-desktop,.portal-nav-mobile)
  > button[data-open-portal-eskul]{transform:none!important;filter:none!important;}
html[data-portal-brand="guru"] body :is(.portal-nav-desktop,.portal-nav-mobile)
  > button.portal-eskul-native-suspended::before, html[data-portal-brand="guru"] body :is(.portal-nav-desktop,.portal-nav-mobile)
  > button.portal-eskul-native-suspended::after{display:none!important;content:none!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-card{min-width:0!important;min-height:0!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-table{display:block!important;min-width:0!important;min-height:0!important;max-width:100%!important;overflow:auto!important;overscroll-behavior:contain!important;touch-action:pan-x pan-y!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:thin;scrollbar-color:#9cc9e8 var(--tone-edf7fd);scrollbar-gutter:stable;}
html[data-portal-brand="guru"] #root .portal-gradebook-table:focus-visible{outline:3px solid #078ee82b;outline-offset:-3px!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-table::-webkit-scrollbar{width:9px;height:9px;}
html[data-portal-brand="guru"] #root .portal-gradebook-table::-webkit-scrollbar-track{background:var(--tone-edf7fd);}
html[data-portal-brand="guru"] #root .portal-gradebook-table::-webkit-scrollbar-thumb{border:2px solid var(--tone-edf7fd);border-radius:var(--radius-pill,999px);background:#88bddf;}
html[data-portal-brand="guru"] #root .portal-gradebook-table table{min-width:max-content!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-table thead{position:sticky!important;top:0!important;z-index:12!important;}
@media (min-width:768px){html[data-portal-brand="guru"] #root .portal-gradebook-card{max-height:var(--portal-gradebook-height,calc(100dvh - 190px))!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-table{flex:1 1 auto!important;max-height:calc(var(--portal-gradebook-height,calc(100dvh - 190px)) - 78px)!important;}}
@media (max-width:767px){html[data-portal-brand="guru"] #root main > div:has(.portal-gradebook-card), html[data-portal-brand="guru"] #root main > .portal-task-gradebook-page-v168{display:flex!important;flex-direction:column!important;min-height:0!important;height:auto!important;overflow:visible!important;padding-bottom:0!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-card{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;width:100%!important;height:var(--portal-gradebook-height,calc(100dvh - 180px))!important;min-height:320px!important;max-height:var(--portal-gradebook-height,calc(100dvh - 180px))!important;overflow:hidden!important;margin-bottom:calc(4px + env(safe-area-inset-bottom))!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-toolbar{flex:0 0 auto!important;}
html[data-portal-brand="guru"] #root .portal-gradebook-table{flex:1 1 auto!important;height:auto!important;max-height:none!important;padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(82px + env(safe-area-inset-bottom))!important;}
html[data-portal-brand="guru"] #root .grading-input-scroll{min-height:0!important;padding-bottom:calc(108px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(108px + env(safe-area-inset-bottom))!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]::before, html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]::after{content:none!important;display:none!important;opacity:0!important;width:0!important;box-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]{transform:none!important;filter:none!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(.active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"]){border-color:var(--tone-3301650e,rgba(167, 214, 243,.3));background:linear-gradient(145deg,var(--tone-115478,#115478) 0%,var(--tone-073c58,#073c58) 100%);color:var(--tone-f7fffc,#f7fffc);-webkit-text-fill-color:var(--tone-f7fffc,#f7fffc)!important;box-shadow:4px 5px 10px var(--tone-953b8eba,rgba(5, 50, 74,.22)),
    -2px -2px 6px var(--tone-18e36c23,rgba(255,255,255,.62)),
    inset 1px 1px 0 var(--tone-0e6b7be3,rgba(255,255,255,.17));text-shadow:0 1px 1px rgba(2,43,34,.2);}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(.active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"])
  :is(span,b,small,p){color:var(--tone-f7fffc,#f7fffc);-webkit-text-fill-color:var(--tone-f7fffc,#f7fffc)!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(.active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"])
  > svg{display:block!important;flex:0 0 30px!important;width:30px!important;height:30px!important;padding:5px!important;border:1px solid var(--tone-8a2dea80,rgba(255,255,255,.58));border-radius:9px;background:linear-gradient(145deg,var(--tone-effff8,#effff8),var(--tone-ccefe3,#ccefe3));color:var(--tone-073c58,#073c58);-webkit-text-fill-color:var(--tone-073c58,#073c58)!important;fill:none;stroke:currentColor;stroke-width:1.9!important;box-shadow:0 3px 7px var(--tone-155216f3,rgba(2,44,35,.16)),inset 1px 1px 0 var(--tone-d0d52e06,rgba(255,255,255,.88));text-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(.active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"])
  > :is(.nav-icon,.admin-nav-icon){display:grid!important;place-items:center!important;flex:0 0 30px!important;width:30px!important;height:30px!important;border:1px solid var(--tone-8a2dea80,rgba(255,255,255,.58));border-radius:9px;background:linear-gradient(145deg,var(--tone-effff8,#effff8),var(--tone-ccefe3,#ccefe3));color:var(--tone-073c58,#073c58);-webkit-text-fill-color:var(--tone-073c58,#073c58)!important;box-shadow:0 3px 7px var(--tone-155216f3,rgba(2,44,35,.16)),inset 1px 1px 0 var(--tone-d0d52e06,rgba(255,255,255,.88));}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(.active,[aria-current="page"],[aria-selected="true"],[aria-pressed="true"])
  > :is(.nav-icon,.admin-nav-icon) svg{width:18px!important;height:18px!important;padding:0!important;border:0;background:transparent;color:var(--tone-073c58,#073c58);-webkit-text-fill-color:var(--tone-073c58,#073c58)!important;stroke:currentColor;box-shadow:none;}
@media (max-width:767px){html[data-portal-brand="guru"] body #root
    .portal-nav-mobile:not(.student-mobile-nav)
    > button[data-open-portal-eskul]{min-width:68px!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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  [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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-mobile > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-mobile > button,
  .student-mobile-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,
  [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,
  .portal-nav-desktop > button,
  .portal-nav-mobile > button,
  .student-mobile-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,
    .portal-nav-mobile > button,
    .portal-nav-mobile > a,
    .student-mobile-nav > button,
    .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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,
  .portal-nav-desktop > button,
  .portal-nav-desktop > a,
  .portal-nav-mobile > button,
  .portal-nav-mobile > a,
  .student-mobile-nav > button,
  .student-mobile-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="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]{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);text-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(
    :hover,
    :focus-visible,
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ){border-color:var(--pp-menu-control-border);background:var(--pp-menu-control-green);color:var(--theme-surface,#fff);-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));text-shadow:none;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]
  > :is(svg,.nav-icon,.admin-nav-icon), html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]
  > :is(.nav-icon,.admin-nav-icon) svg{border:0;background:transparent;box-shadow:none;color:inherit;-webkit-text-fill-color:currentColor!important;stroke:currentColor;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(
    :hover,
    :focus-visible,
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ) > :is(svg,.nav-icon,.admin-nav-icon), html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button[data-open-portal-eskul]:is(
    :hover,
    :focus-visible,
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ) > :is(.nav-icon,.admin-nav-icon) svg{border:0;border-radius:0;padding:0!important;background:transparent;box-shadow:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;stroke:currentColor;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button:is(
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    [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,var(--theme-primary,#078ee8));background:var(--pp-menu-control-green,var(--theme-primary,#078ee8));box-shadow:inset 7px 0 0 var(--pp-menu-control-dark,var(--theme-primary-strong,#173f70)),
    0 10px 22px var(--tone-60e09799,rgba(0, 111, 209, .18));text-shadow:none;transform:none!important;filter:none!important;}
html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button:is(
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ) :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[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button:is(
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ) > :is(svg,.nav-icon,.admin-nav-icon), html[data-portal-brand="guru"] body #root
  :is(.portal-nav-desktop,.portal-nav-mobile:not(.student-mobile-nav))
  > button:is(
    .active,
    .selected,
    .is-active,
    .bg-blue-500,
    .bg-blue-50,
    .text-blue-500,
    [aria-current="page"],
    [aria-selected="true"],
    [aria-pressed="true"],
    [data-active="true"]
  ) > :is(.nav-icon,.admin-nav-icon) svg{border:0;border-radius:0;padding:0!important;background:transparent;box-shadow:none;color:inherit;-webkit-text-fill-color:currentColor!important;stroke:currentColor;fill:none;filter:none!important;}
@media (max-width:767px){html[data-portal-brand="guru"] body #root
    .portal-nav-mobile:not(.student-mobile-nav){gap:4px!important;column-gap:4px!important;}}
.eduvia-promo17-overlay{position:fixed;inset:0;z-index:260;display:flex;align-items:center;justify-content:center;padding:12px;background:var(--tone-b126b9e1);}
.eduvia-promo17-modal{width:min(470px, calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;position:relative;}
.eduvia-promo17-close{position:absolute;top:10px;right:10px;z-index:3;width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid #dbe4ee;border-radius:var(--radius-pill,999px);background:var(--theme-surface,#fff);color:var(--theme-text-strong,#123d6b);font-size:20px;line-height:1;font-weight:600;cursor:pointer;box-shadow:0 4px 12px rgba(15, 23, 42, 0.10);}
.eduvia-promo17-close:hover{background:var(--theme-surface-soft,#f7fbff);}
.eduvia-promo17-body{padding:18px;}
.eduvia-promo17-kicker{display:inline-flex;align-items:center;padding:5px 9px;border-radius:var(--radius-pill,999px);background:#eef5ff;color:#0b5bd3;font-size:10px;line-height:1;font-weight:800;letter-spacing:.06em;text-transform:uppercase;}
.eduvia-promo17-title{margin:10px 40px 5px 0;color:#102a43;font-size:21px;line-height:1.28;font-weight:800;}
.eduvia-promo17-desc{margin:0;color:var(--theme-text-muted,#60758d);font-size:12.5px;line-height:1.6;}
.eduvia-promo17-frame{margin-top:12px;overflow:hidden;border:1px solid var(--tone-dbe7f6,#dbe7f6);border-radius:var(--radius-lg,14px);background:var(--tone-f8fbff,#f8fbff);}
.eduvia-promo17-frame img{display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;}
.eduvia-promo17-note{margin-top:12px;padding:11px 12px;border:1px solid var(--tone-dbe7f6,#dbe7f6);border-radius:var(--radius-md-lg,12px);background:var(--tone-f7faff,#f7faff);}
.eduvia-promo17-note strong{display:block;color:#0f2f65;font-size:14px;line-height:1.4;}
.eduvia-promo17-note span{display:block;margin-top:3px;color:var(--theme-text-muted,#60758d);font-size:11.5px;line-height:1.5;}
.eduvia-promo17-dont-show{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--theme-text-muted,#60758d);font-size:12px;line-height:1.4;cursor:pointer;}
.eduvia-promo17-dont-show input{width:16px;height:16px;margin:0;accent-color:#0d63d8;cursor:pointer;}
.eduvia-promo17-actions{display:flex;gap:8px;margin-top:13px;}
.eduvia-promo17-btn{appearance:none;min-height:40px;border:0;border-radius:11px;padding:10px 14px;font-size:12.5px;font-weight:800;cursor:pointer;}
.eduvia-promo17-btn-primary{flex:1;color:var(--theme-surface,#fff);background:#0d63d8;}
.eduvia-promo17-btn-primary:hover{background:#0b55ba;}
.eduvia-promo17-btn-secondary{min-width:92px;color:var(--theme-text-secondary,#50657e);background:var(--tone-eef2f7,#eef2f7);}
.eduvia-promo17-btn-secondary:hover{background:var(--theme-border,#d9e8f5);}
@media (max-width: 520px){.eduvia-promo17-overlay{align-items:center;padding:10px;}
.eduvia-promo17-modal{width:min(430px, calc(100vw - 20px));max-height:calc(100dvh - 20px);}
.eduvia-promo17-body{padding:14px;}
.eduvia-promo17-title{font-size:19px;}
.eduvia-promo17-actions{flex-direction:row;}}
.eduvia-price17-old{display:block;margin-bottom:6px;font-size:13px;font-weight:800;color:var(--theme-text-subtle,#7e90a5);text-decoration:line-through;}
.eduvia-price17-badge{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:7px 10px;border-radius:var(--radius-pill,999px);background:var(--tone-eff6ff,#eff6ff);color:#0b5bd3;font-size:11px;font-weight:800;letter-spacing:.03em;}
.eduvia-price17-caption{margin-top:8px;font-size:12px;line-height:1.6;color:var(--theme-text-muted,#60758d);}
.eduvia-premium-plan-card{display:flex!important;flex-direction:column!important;}
.eduvia-plan-benefits{min-height:80px;margin:8px 0 14px;padding:10px 11px;border:1px solid var(--tone-dbe7f6,#dbe7f6);border-radius:13px;background:var(--tone-f7faff,#f7faff);color:var(--theme-text-muted,#60758d);font-size:11.5px;line-height:1.55;}
.eduvia-premium-plan-card > .eduvia-payment-retro-button{margin-top:auto;}
html[data-portal-brand="guru"] #root .eduvia-payment-retro-button{--eduvia-payment-retro-dark:var(--theme-primary-strong,#173f70);min-height:44px;border-radius:var(--radius-md-lg,12px);box-shadow:inset 7px 0 0 var(--eduvia-payment-retro-dark), 0 10px 22px rgba(0, 63, 158, .20);}
html[data-portal-brand="guru"] #root .eduvia-payment-retro-button[class*="25D366"]{--eduvia-payment-retro-dark:#168b43;box-shadow:inset 7px 0 0 var(--eduvia-payment-retro-dark), 0 10px 22px rgba(37, 211, 102, .22);}
html[data-portal-brand="guru"] #root .eduvia-payment-retro-button:not(:disabled):hover{transform:translateY(-2px);filter:saturate(1.04);}
html[data-portal-brand="guru"] #root .eduvia-payment-retro-button:not(:disabled):active{transform:translateY(1px);box-shadow:inset 4px 0 0 var(--eduvia-payment-retro-dark), 0 5px 12px var(--tone-8dd433e7);}
html[data-portal-brand="guru"] #root .eduvia-payment-retro-button:disabled{--eduvia-payment-retro-dark:var(--tone-9ca3af,#9ca3af);box-shadow:inset 7px 0 0 var(--eduvia-payment-retro-dark), 0 7px 16px rgba(100, 116, 139, .15);}
@media (max-width: 720px){.eduvia-plan-benefits{min-height:0;}}
html[data-portal-brand="guru"]
  #root
  button[class*="bg-[#25D366]"]{min-height:48px;background-color:var(--tone-25d366,#25d366);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;border:1px solid #1eae53;box-shadow:0 8px 18px rgba(37, 211, 102, 0.24);}
html[data-portal-brand="guru"]
  #root
  button[class*="bg-[#25D366]"]:not(:disabled):hover{background-color:#1ebe5d;}
html[data-portal-brand="guru"]
  #root
  button[class*="bg-[#25D366]"]:not(:disabled):active{background-color:#18a950;}
html[data-portal-brand="guru"]
  #root
  button[class*="bg-[#25D366]"]:focus-visible{outline:3px solid rgba(37, 211, 102, 0.3);outline-offset:3px;}
html[data-portal-brand="guru"]
  #root
  button[class*="bg-[#25D366]"]:disabled{background-color:var(--tone-cbd5e1,#cbd5e1);border-color:var(--tone-cbd5e1,#cbd5e1);box-shadow:none;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog h2{margin-bottom:7px!important;color:#10223b;font-size:24px;line-height:1.2;letter-spacing:-.025em;text-align:center!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog p{color:var(--theme-text-muted,#60758d);line-height:1.5;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog button{font-family:inherit;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog .eduvia-google-button{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;width:100%!important;min-height:50px!important;padding:0 18px!important;border:1px solid var(--tone-cbd5e1,#cbd5e1);border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);color:#243244;font-size:13px;font-weight:800;line-height:1;text-indent:0!important;opacity:1!important;visibility:visible!important;box-shadow:0 3px 10px var(--tone-09a9070d,rgba(15,23,42,.06));}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog .eduvia-google-button::before{content:none!important;display:none!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog .eduvia-google-button:hover{background:var(--theme-surface-soft,#f7fbff);border-color:#b9c6d5;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog .eduvia-google-button[hidden]{display:none!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-individual-auth[hidden], html[data-portal-brand="guru"] #root .eduvia-teacher-register[hidden]{display:none!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-divider{display:flex!important;align-items:center!important;gap:10px!important;margin:16px 0!important;color:var(--theme-text-subtle,#7e90a5);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
html[data-portal-brand="guru"] #root .eduvia-auth-divider::before, html[data-portal-brand="guru"] #root .eduvia-auth-divider::after{content:""!important;height:1px!important;flex:1!important;background:var(--theme-border,#d9e8f5);}
html[data-portal-brand="guru"] #root .eduvia-teacher-email-login, html[data-portal-brand="guru"] #root .eduvia-teacher-register-form{display:grid!important;gap:13px!important;text-align:left!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-email-login label, html[data-portal-brand="guru"] #root .eduvia-teacher-register-form>label:not(.eduvia-check-row){display:grid!important;gap:7px!important;color:var(--theme-text-strong,#123d6b);font-size:12px;font-weight:750;}
html[data-portal-brand="guru"] #root .eduvia-teacher-email-login input, html[data-portal-brand="guru"] #root .eduvia-teacher-register-form input:not([type="checkbox"]){box-sizing:border-box!important;width:100%!important;min-height:48px!important;padding:0 14px!important;border:1px solid var(--tone-cbd5e1,#cbd5e1);border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);color:var(--theme-text,#0a2342);font-size:14px;box-shadow:0 1px 2px rgba(15,23,42,.03);outline:none;}
html[data-portal-brand="guru"] #root .eduvia-teacher-email-login input:focus, html[data-portal-brand="guru"] #root .eduvia-teacher-register-form input:not([type="checkbox"]):focus{border-color:#178ee5;box-shadow:0 0 0 3px rgba(23,142,229,.13);}
html[data-portal-brand="guru"] #root .eduvia-password-wrap{position:relative!important;}
html[data-portal-brand="guru"] #root .eduvia-password-wrap input{padding-right:92px!important;}
html[data-portal-brand="guru"] #root .eduvia-password-toggle{position:absolute!important;right:7px!important;top:7px!important;height:34px!important;min-height:34px!important;padding:0 10px!important;border:0;border-radius:var(--radius-sm,8px);background:var(--tone-eef6ff,#eef6ff);color:#075da9;font-size:11px;font-weight:800;cursor:pointer!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-helper{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-top:-2px!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-helper small{color:var(--theme-text-subtle,#7e90a5);font-size:10.5px;line-height:1.45;}
html[data-portal-brand="guru"] #root .eduvia-auth-link, html[data-portal-brand="guru"] #root .eduvia-register-line button, html[data-portal-brand="guru"] #root .eduvia-auth-back{border:0;background:transparent;color:#075da9;font-size:11px;font-weight:850;padding:2px!important;box-shadow:none;cursor:pointer!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-primary{width:100%!important;min-height:48px!important;border:0;border-radius:var(--radius-md-lg,12px);background:linear-gradient(135deg,#0879d0,#064a9b);color:var(--theme-surface,#fff);font-size:13px;font-weight:850;box-shadow:0 9px 22px rgba(11,111,196,.19);cursor:pointer!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-primary:disabled{opacity:.65!important;cursor:wait!important;}
html[data-portal-brand="guru"] #root .eduvia-register-line{margin:16px 0 0!important;text-align:center!important;color:var(--theme-text-muted,#60758d);font-size:11.5px;line-height:1.45;}
html[data-portal-brand="guru"] #root .eduvia-teacher-register{margin-top:2px!important;padding-top:2px!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-back{display:inline-flex!important;align-items:center!important;margin:0 0 14px!important;padding:0!important;}
html[data-portal-brand="guru"] #root .eduvia-register-heading{text-align:left!important;margin-bottom:15px!important;}
html[data-portal-brand="guru"] #root .eduvia-register-heading>span{display:block!important;color:#0b64b7;font-size:9.5px;letter-spacing:.14em;font-weight:850;}
html[data-portal-brand="guru"] #root .eduvia-register-heading h3{margin:5px 0 4px!important;color:#10223b;font-size:20px;line-height:1.2;}
html[data-portal-brand="guru"] #root .eduvia-register-heading p{margin:0!important;color:#718198;font-size:11px;line-height:1.5;}
html[data-portal-brand="guru"] #root .eduvia-teacher-register-form em{color:var(--theme-text-subtle,#7e90a5);font-style:normal;font-weight:600;}
html[data-portal-brand="guru"] #root .eduvia-check-row{display:grid!important;grid-template-columns:18px 1fr!important;align-items:start!important;gap:9px!important;padding:10px 11px!important;border:1px solid var(--theme-border,#d9e8f5);border-radius:11px;background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-muted,#60758d);font-size:10.5px;font-weight:600;line-height:1.45;}
html[data-portal-brand="guru"] #root .eduvia-check-row input{width:17px!important;height:17px!important;margin:1px 0 0!important;accent-color:#0879d0;}
html[data-portal-brand="guru"] #root .eduvia-teacher-auth-message{margin-top:14px!important;padding:11px 12px!important;border:1px solid #bfdbfe;border-radius:var(--radius-md-lg,12px);background:var(--tone-eff6ff,#eff6ff);color:#1e4f7a;font-size:11px;line-height:1.5;text-align:left!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-auth-message[data-kind="success"]{border-color:#bbf7d0;background:var(--tone-f0fdf4,#f0fdf4);color:#166534;}
html[data-portal-brand="guru"] #root .eduvia-teacher-auth-message[data-kind="error"]{border-color:var(--tone-fecaca,#fecaca);background:var(--tone-fff7f7,#fff7f7);color:#b42318;}
html[data-portal-brand="guru"] #root .eduvia-teacher-auth-message[hidden]{display:none!important;}
html[data-portal-brand="guru"] #root .eduvia-teacher-register-mode .eduvia-teacher-tab{pointer-events:none!important;opacity:.55!important;}
@media (max-width:620px){html[data-portal-brand="guru"] #root .eduvia-auth-overlay{padding:10px!important;align-items:flex-start!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog{margin:auto 0!important;padding:22px 17px 24px!important;}
html[data-portal-brand="guru"] #root .eduvia-auth-dialog h2{font-size:21px;}
html[data-portal-brand="guru"] #root .eduvia-auth-helper{align-items:flex-start!important;}}
.portal-guru-dashboard{--pgd-blue:var(--theme-primary,#078ee8);--pgd-blue-dark:var(--tone-0068b8);--pgd-ink:var(--tone-142335);--pgd-muted:#687b8c;--pgd-line:var(--tone-dce7ef);display:flex!important;flex-direction:column;gap:14px!important;}
.portal-guru-dashboard>:not([hidden])~:not([hidden]){margin-top:0!important;}
.portal-guru-dashboard>.portal-school-report-gradient{min-height:118px!important;padding:22px 24px!important;border:1px solid var(--pgd-line);border-left:5px solid var(--pgd-blue)!important;border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);color:var(--pgd-ink);box-shadow:0 9px 28px #234f6812;}
.portal-guru-dashboard>.portal-school-report-gradient>div.absolute{display:none!important;}
.portal-guru-dashboard>.portal-school-report-gradient h2{margin-bottom:6px!important;color:var(--pgd-ink);font-size:24px;line-height:1.25;font-weight:900;}
.portal-guru-dashboard>.portal-school-report-gradient h2::before{content:"RINGKASAN HARI INI";display:block;margin-bottom:5px;color:var(--pgd-blue-dark);font-size:9px;font-weight:900;letter-spacing:.13em;}
.portal-guru-dashboard>.portal-school-report-gradient p{color:var(--pgd-muted);font-size:12px;line-height:1.55;opacity:1!important;}
.portal-guru-dashboard>.portal-school-report-gradient>.flex>div:last-child:not(:first-child){min-width:184px;padding:11px 14px!important;border:1px solid #cce7f6;border-radius:var(--radius-lg,14px);background:#eff8fd;box-shadow:none;}
.portal-guru-dashboard>.portal-school-report-gradient>.flex>div:last-child:not(:first-child) p:first-child{color:#5f7c8e;font-size:8px;}
.portal-guru-dashboard>.portal-school-report-gradient>.flex>div:last-child:not(:first-child) p:last-child{color:#12405b;font-size:20px;}
.portal-guru-dashboard>.qr-attendance-v191{padding:16px!important;border:1px solid var(--pgd-line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 25px var(--tone-244d680d);}
.portal-guru-dashboard>.qr-attendance-v191>header{padding:0 1px 12px!important;}
.portal-guru-dashboard>.qr-attendance-v191>header small{font-size:9px;}
.portal-guru-dashboard>.qr-attendance-v191>header h2{font-size:18px;}
.portal-guru-dashboard>.qr-attendance-v191>header>span{border:1px solid #cfe6f3;background:#eff7fb;color:#356883;font-size:9px;}
.portal-guru-dashboard .qr-attendance-v191-action{min-height:74px!important;padding:12px 13px!important;border-color:var(--tone-dfe9f0);border-radius:15px;box-shadow:none;transform:none!important;}
.portal-guru-dashboard .qr-attendance-v191-action:hover{border-color:#9ed3ef;background:var(--theme-surface-elevated,#fbfdff);box-shadow:0 7px 18px #078ee810;}
.portal-guru-dashboard .qr-attendance-v191-icon{width:42px!important;height:42px!important;border-radius:var(--radius-md-lg,12px);background:#eaf6fd;color:var(--pgd-blue-dark);}
.portal-guru-dashboard .qr-attendance-v191-icon svg{width:21px!important;height:21px!important;}
.portal-guru-dashboard .qr-attendance-v191-copy b{font-size:12px;}
.portal-guru-dashboard .qr-attendance-v191-copy small{font-size:10px;}
.portal-guru-dashboard .qr-attendance-v191-cta{min-height:38px;padding:0 13px!important;border:2px solid var(--pgd-blue);border-radius:var(--radius-md-lg,12px);background:var(--pgd-blue);color:var(--theme-surface,#fff);font-size:10px;box-shadow:0 7px 17px #078ee820;}
.portal-guru-dashboard>.grid{gap:0!important;overflow:hidden;border:1px solid var(--pgd-line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 25px var(--tone-244d680d);}
.portal-guru-dashboard>.grid>div{min-height:92px;display:grid!important;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:16px!important;border:0;border-left:1px solid #e7eef3!important;border-radius:0;background:var(--theme-surface,#fff);box-shadow:none;}
.portal-guru-dashboard>.grid>div:first-child{border-left:0!important;}
.portal-guru-dashboard>.grid>div:hover{background:var(--theme-surface-elevated,#fbfdff);box-shadow:none;}
.portal-guru-dashboard>.grid>div>div:first-child{width:42px!important;height:42px!important;margin:0!important;border:1px solid #d5ecf8;border-radius:var(--radius-md-lg,12px);background:#edf8fe;color:var(--pgd-blue);}
.portal-guru-dashboard>.grid>div>div:first-child svg{width:20px!important;height:20px!important;}
.portal-guru-dashboard>.grid>div>div:last-child p:first-child{color:#17364d;font-size:22px;line-height:1.1;}
.portal-guru-dashboard>.grid>div>div:last-child p:last-child{margin-top:4px!important;color:#6e8191;font-size:10px;}
.portal-guru-dashboard>button{margin-top:0!important;border-radius:var(--radius-2xl,18px);box-shadow:0 8px 22px #078ee812;}
.portal-guru-dashboard>.mt-8{margin-top:0!important;padding:18px!important;border:1px solid var(--pgd-line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 25px var(--tone-244d680d);}
.portal-guru-dashboard>.mt-8>.flex{margin-bottom:13px!important;}
.portal-guru-dashboard>.mt-8 h3{color:var(--pgd-ink);font-size:17px;}
.portal-guru-dashboard>.mt-8>.flex p{margin-top:3px;color:#748696;font-size:10px;}
.portal-guru-dashboard>.mt-8>.flex button{min-height:40px;padding:0 14px!important;border:2px solid var(--pgd-blue);border-radius:13px;background:var(--theme-surface,#fff);color:var(--pgd-blue-dark);font-size:10px;box-shadow:0 6px 15px #006fd110;}
.portal-guru-dashboard>.mt-8>.flex button:hover{background:var(--tone-eef8ff);}
.portal-guru-dashboard>.mt-8>div:last-child:not(.portal-teacher-today-schedule){padding:28px 20px!important;border:1px dashed #cddfe9;border-radius:15px;background:#f9fbfc;box-shadow:none;}
.portal-guru-dashboard>.mt-8>div:last-child:not(.portal-teacher-today-schedule)>div:first-child{width:48px!important;height:48px!important;margin-bottom:10px!important;border-radius:13px;}
.portal-guru-dashboard>.mt-8>div:last-child:not(.portal-teacher-today-schedule) h4{font-size:13px;}
.portal-guru-dashboard>.mt-8>div:last-child:not(.portal-teacher-today-schedule) p{font-size:10px;}
@media (max-width:767px){.portal-guru-dashboard{gap:11px!important;}
.portal-guru-dashboard>.portal-school-report-gradient{min-height:auto!important;padding:16px!important;border-left-width:4px!important;border-radius:17px;}
.portal-guru-dashboard>.portal-school-report-gradient>.flex{flex-direction:column!important;gap:13px;}
.portal-guru-dashboard>.portal-school-report-gradient h2{font-size:19px;}
.portal-guru-dashboard>.portal-school-report-gradient h2::before{font-size:8px;}
.portal-guru-dashboard>.portal-school-report-gradient>.flex>div:last-child:not(:first-child){width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;text-align:left!important;}
.portal-guru-dashboard>.qr-attendance-v191{padding:13px!important;border-radius:17px;}
.portal-guru-dashboard>.qr-attendance-v191>header{align-items:flex-end!important;}
.portal-guru-dashboard>.qr-attendance-v191>header h2{font-size:16px;}
.portal-guru-dashboard .qr-attendance-v191-action{grid-template-columns:42px minmax(0,1fr)!important;min-height:88px!important;}
.portal-guru-dashboard .qr-attendance-v191-cta{grid-column:2!important;width:max-content!important;}
.portal-guru-dashboard>.grid{border-radius:17px;}
.portal-guru-dashboard>.grid>div{min-height:82px;grid-template-columns:36px minmax(0,1fr);gap:9px;padding:12px!important;}
.portal-guru-dashboard>.grid>div:nth-child(odd){border-left:0!important;}
.portal-guru-dashboard>.grid>div:nth-child(n/**/+3){border-top:1px solid #e7eef3!important;}
.portal-guru-dashboard>.grid>div>div:first-child{width:36px!important;height:36px!important;border-radius:var(--radius-md,10px);}
.portal-guru-dashboard>.grid>div>div:first-child svg{width:18px!important;height:18px!important;}
.portal-guru-dashboard>.grid>div>div:last-child p:first-child{font-size:19px;}
.portal-guru-dashboard>.grid>div>div:last-child p:last-child{font-size:9px;}
.portal-guru-dashboard>.mt-8{padding:14px!important;border-radius:17px;}
.portal-guru-dashboard>.mt-8>.flex{align-items:center!important;}
.portal-guru-dashboard>.mt-8 h3{font-size:15px;}
.portal-guru-dashboard>.mt-8>.flex button{min-height:38px;padding:0 11px!important;}}
.attendance-daily-scroll
  div.attendance-status-options
  > button:first-child[class~="bg-blue-500"]{border-color:#15803d;background:var(--tone-16a34a);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 5px 12px rgba(22, 163, 74, .26);}
.attendance-daily-scroll
  div.attendance-status-options
  > button:first-child[class~="bg-blue-500"]:hover{background:#15803d;}
:is(
  .individual-profile-photo-actions label,
  .individual-profile-photo-actions button,
  .individual-profile-secondary,
  .individual-card-actions button,
  .employee-profile-photo-picker,
  .employee-id-card-actions button
):hover{border-color:var(--guru-btn-blue);background:var(--guru-btn-blue);color:var(--theme-surface,#fff);box-shadow:-7px 0 0 var(--guru-btn-blue-dark);}
.individual-profile-photo-actions label, .employee-profile-photo-picker{display:inline-flex!important;align-items:center!important;justify-content:center!important;}
.individual-profile-close, .portal-form-dialog[data-employee-photo-upload="1"] .portal-modal-back, .individual-card-dialog > .individual-card-close, .employee-id-card-dialog > header button[data-employee-card-close]{position:relative!important;border:1px solid var(--guru-btn-blue);border-radius:15px;background:var(--guru-btn-soft);color:var(--guru-btn-blue-text);box-shadow:-6px 0 0 var(--guru-btn-blue);font-weight:700;cursor:pointer!important;transform:translateX(6px)!important;}
.individual-profile-close:hover, .portal-form-dialog[data-employee-photo-upload="1"] .portal-modal-back:hover, .individual-card-dialog > .individual-card-close:hover, .employee-id-card-dialog > header button[data-employee-card-close]:hover{background:var(--guru-btn-blue);border-color:var(--guru-btn-blue);color:var(--theme-surface,#fff);box-shadow:-6px 0 0 var(--guru-btn-blue-dark);}
.individual-profile-close:active, .portal-form-dialog[data-employee-photo-upload="1"] .portal-modal-back:active, .individual-card-dialog > .individual-card-close:active, .employee-id-card-dialog > header button[data-employee-card-close]:active{transform:translateX(3px)!important;box-shadow:-3px 0 0 var(--guru-btn-blue-dark);}
:is(
  .individual-profile-save,
  .individual-card-actions button,
  .employee-id-card-actions button,
  .portal-form-dialog[data-employee-photo-upload="1"] button[type="submit"]
):disabled{opacity:.55!important;cursor:not-allowed!important;transform:translateX(7px)!important;box-shadow:-7px 0 0 #9bcff2;}
.portal-student-card-directory{display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;height:100%;min-height:0;}
.portal-student-card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:15px 17px;border:1px solid rgba(213,228,245,.94);border-radius:19px;background:var(--tone-d0d52e06,rgba(255,255,255,.88));box-shadow:0 13px 36px rgba(31,73,125,.08);}
.portal-student-card-toolbar h3{margin:0;color:var(--tone-17304e);font-size:17px;}
.portal-student-card-toolbar small{display:block;max-width:660px;margin-top:4px;color:#6b7f96;line-height:1.4;}
.portal-student-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.portal-student-card-search{width:min(100%,300px);height:42px;border:1px solid #cfdfef;border-radius:13px;padding:0 13px;outline:0;background:#fafdff;color:var(--tone-17304e);}
.portal-student-card-search:focus{border-color:#46a8ea;box-shadow:0 0 0 3px rgba(70,168,234,.15);}
.portal-student-card-actions button.primary,.portal-student-card-preview-actions button{min-height:42px;padding:0 15px;border:1px solid transparent;border-radius:13px;font-weight:850;cursor:pointer;}
.portal-student-card-actions button.primary,.portal-student-card-preview-actions button.primary{border-color:var(--theme-primary,#078ee8);background:linear-gradient(135deg,var(--theme-primary,#078ee8),#0878d1);color:var(--theme-surface,#fff);box-shadow:0 9px 20px rgba(7,142,232,.19);}
.portal-student-card-preview-actions button.secondary{border-color:#cfdfef;background:var(--tone-f7fbff);color:#245078;}
.portal-student-card-actions button:disabled{cursor:wait;opacity:.62;}
.portal-student-card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-content:start;gap:10px;min-height:0;overflow:auto;padding:2px 4px 18px 2px;overscroll-behavior:contain;}
.portal-student-card-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:74px;padding:13px 14px;border:1px solid #dce8f4;border-radius:17px;background:rgba(255,255,255,.91);color:var(--tone-17304e);text-align:left;cursor:pointer;box-shadow:0 7px 20px rgba(31,73,125,.055);}
.portal-student-card-row:hover{border-color:#8ec9ef;box-shadow:0 11px 28px rgba(31,93,145,.11);transform:translateY(-1px);}
.portal-student-card-row b,.portal-student-card-row span{display:block;}
.portal-student-card-row>span>span{margin-top:4px;color:#6b7f96;font-size:12px;}
.portal-student-card-arrow{margin:0!important;color:var(--theme-primary,#078ee8);font-size:25px;line-height:1;}
.portal-student-card-empty{padding:32px;border:1px dashed #bcd0e3;border-radius:17px;background:rgba(255,255,255,.64);color:#657b93;text-align:center;}
.portal-student-card-progress{flex:1 1 100%;min-height:16px;color:#54708d;font-size:12px;text-align:right;}
.portal-student-card-overlay{position:fixed;inset:0;z-index:2147482000;display:grid;width:100vw;height:100dvh;overflow:hidden;background:radial-gradient(circle at 8% 0,rgba(186,230,253,.72),transparent 35%),linear-gradient(145deg,var(--tone-f8fbff,#f8fbff),#eaf4ff);padding:clamp(10px,2vw,24px);}
.portal-student-card-dialog{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;min-height:0;overflow:hidden;}
.portal-student-card-dialog>header{z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 19px;border-bottom:1px solid #dce8f4;background:var(--tone-069d9036,rgba(255,255,255,.9));}
.portal-student-card-dialog>header h2{margin:2px 0 0;color:var(--tone-17304e);font-size:19px;}
.portal-student-card-dialog>header small{color:var(--theme-primary,#078ee8);font-weight:850;letter-spacing:.09em;}
.portal-student-card-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d6e5f3;border-radius:var(--radius-md-lg,12px);background:var(--tone-f7fbff);color:#245078;font-size:25px;cursor:pointer;}
.portal-student-card-body{display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-height:0;overflow:auto;padding:clamp(12px,2vw,22px);}
.portal-student-card-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(12px,2vw,24px);min-height:0;}
.portal-student-card-preview canvas{display:block;width:100%;height:auto;border:1px solid rgba(207,223,239,.88);border-radius:19px;box-shadow:0 14px 36px rgba(26,66,113,.12);}
.portal-student-card-preview-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:14px;}
.portal-student-card-status{min-height:20px;margin:9px 0 0;color:#60758d;font-size:12px;}
@media (max-width:760px){.portal-student-card-toolbar{align-items:stretch;padding:12px;border-radius:var(--radius-xl,16px);}
.portal-student-card-actions,.portal-student-card-search{width:100%;}
.portal-student-card-actions button.primary{flex:1 1 100%;}
.portal-student-card-list{grid-template-columns:1fr;padding-bottom:8px;}
.portal-student-card-overlay{padding:8px 8px calc(8px + env(safe-area-inset-bottom));}

.portal-student-card-dialog>header{padding:12px 14px;}
.portal-student-card-dialog>header h2{font-size:16px;}
.portal-student-card-preview{grid-template-columns:1fr;align-content:start;}
.portal-student-card-body{padding:12px;}
.portal-student-card-preview-actions>*{flex:1 1 140px;}}
body.portal-student-card-preview-open{overflow:hidden!important;}
html body .portal-current-class-card{border-color:var(--eduvia-live-line);background:linear-gradient(135deg, #f5fff9 0%, #ecfff4 52%, var(--theme-surface,#fff) 100%);box-shadow:0 8px 22px rgba(16, 148, 78, .10);}
html body .portal-current-class-card:hover{transform:translateY(-2px)!important;border-color:#65d995;}
html body .portal-current-class-accent{background:var(--eduvia-live);}
html body .portal-current-class-time{background:linear-gradient(145deg, #27c970, #10974f);box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 8px 18px rgba(16,148,78,.18);}
html body .portal-current-class-time small{color:#e8fff1;}
html body .portal-current-class-status{display:inline-flex!important;width:fit-content;align-items:center;gap:6px;margin-bottom:3px;color:var(--eduvia-live-dark);font-size:10px;letter-spacing:.06em;}
html body .portal-current-class-status::before{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12);content:"";}
html body .portal-current-class-dot{background:#22c55e;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current{border-color:#86d7a8!important;border-left-color:#16a34a!important;background:#ecfdf3!important;box-shadow:0 6px 18px rgba(22,163,74,.08)!important;opacity:1!important;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current > :nth-child(1){border-right-color:rgba(22,163,74,.18)!important;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current > :nth-child(1) > :first-child{color:#08733a!important;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current h4{color:#0b5f34!important;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current p{color:#557769!important;}
html body .portal-teacher-today-schedule-grid > .portal-teacher-schedule-card.is-current > .portal-teacher-live-badge{grid-column:1/-1!important;justify-self:start!important;width:fit-content!important;margin:0!important;padding:5px 9px!important;border:1px solid rgba(22,163,74,.17)!important;border-radius:999px!important;color:#08733a!important;background:#dcfce7!important;box-shadow:none!important;font-size:8px!important;line-height:1!important;letter-spacing:.045em!important;}
html body .portal-teacher-live-badge::before{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;vertical-align:1px;background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.12);content:"";}
html body .portal-schedule-inline-page{box-sizing:border-box!important;display:block!important;width:100%!important;max-width:920px!important;margin:0 auto!important;padding:0 0 28px!important;}
html body .portal-schedule-inline-card{box-sizing:border-box!important;width:100%!important;margin:0!important;overflow:hidden!important;border:1px solid #e3eaf1;border-radius:var(--radius-5xl,24px);background:var(--theme-surface,#fff);box-shadow:0 8px 24px rgba(18,57,91,.045);}
html body .portal-schedule-inline-header{box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:64px!important;padding:16px 20px!important;border-bottom:1px solid #e8eef4!important;background:var(--theme-surface,#fff);box-shadow:none;}
html body .portal-schedule-inline-header h3{margin:0!important;color:#172b3f;font-size:18px;letter-spacing:-.015em;}
html body .portal-schedule-inline-back{flex:0 0 auto!important;min-height:38px!important;padding:8px 12px!important;border:1px solid #dbe5ee;border-radius:11px;background:var(--theme-surface-soft,#f7fbff);color:#52677b;box-shadow:none;}
html body .portal-schedule-inline-back:hover{background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-strong,#123d6b);}
html body .portal-schedule-inline-form{box-sizing:border-box!important;display:block!important;width:100%!important;margin:0!important;padding:20px!important;overflow:visible!important;}
html body .portal-schedule-inline-form .portal-schedule-time-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important;}
html body .portal-schedule-inline-form .portal-schedule-time-fields > div{width:100%!important;min-width:0!important;}
html body .portal-schedule-inline-form .portal-schedule-subject-field{display:block!important;width:100%!important;min-width:0!important;}
html body .portal-schedule-inline-form .portal-schedule-subject-field > select{display:block!important;width:100%!important;max-width:none!important;}
html body .portal-schedule-inline-form .portal-schedule-subject-note{display:block!important;width:100%!important;max-width:none!important;margin:6px 0 0!important;padding:0!important;border:0;background:transparent;color:#718497;font-size:10.5px;font-weight:600;line-height:1.4;text-align:left!important;}
html body .portal-schedule-inline-form .portal-schedule-form-actions{width:100%!important;margin-bottom:0!important;}
html body .portal-schedule-inline-form label{color:#607487;font-weight:800;letter-spacing:0;}
html body .portal-schedule-inline-form input,
html body .portal-schedule-inline-form select,
html body .portal-schedule-inline-form textarea{min-height:44px!important;border:1px solid #dce6ee;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface-soft,#f7fbff);color:#263a4d;box-shadow:none;outline:none;}
html body .portal-schedule-inline-form input:focus,
html body .portal-schedule-inline-form select:focus,
html body .portal-schedule-inline-form textarea:focus{border-color:#72b8e8;background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(14,145,232,.10);}
html body .portal-schedule-inline-form button[data-continue-schedule="1"]{border:1px solid #cfe5f5;border-radius:var(--radius-md-lg,12px);background:#f4faff;color:#176aa5;box-shadow:none;}
html body .portal-schedule-inline-form .w-full.bg-red-50{border:1px solid #f3c8c8;border-radius:var(--radius-md-lg,12px);background:var(--tone-fff7f7,#fff7f7);color:#c53636;box-shadow:none;}
html body .portal-schedule-inline-form .w-full.bg-blue-500{border:1px solid #0b79cf;border-radius:var(--radius-md-lg,12px);background:#0e91e8;color:var(--theme-surface,#fff);box-shadow:none;}
html body .portal-schedule-inline-cancel{display:none!important;min-height:44px!important;border:1px solid #d7e1ea;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);color:#52677b;box-shadow:none;}
html body .portal-schedule-inline-cancel:hover{background:var(--theme-surface-soft,#f7fbff);color:var(--theme-text-strong,#123d6b);}
@media (max-width:700px){
html body .portal-schedule-inline-page{max-width:none!important;margin:0!important;padding:0 0 max(110px,calc(92px + env(safe-area-inset-bottom)))!important;}
html body .portal-schedule-inline-card{border-radius:var(--radius-2xl,18px);box-shadow:none;}
html body .portal-schedule-inline-header{min-height:56px!important;padding:12px 13px!important;}
html body .portal-schedule-inline-header h3{font-size:16px;}
html body .portal-schedule-inline-back{min-height:36px!important;padding:7px 10px!important;font-size:12px;}
html body .portal-schedule-inline-form{padding:13px 12px 18px!important;}
html body .portal-schedule-inline-form.space-y-4 > :not([hidden]) ~ :not([hidden]){margin-top:10px!important;}
html body .portal-schedule-inline-form .portal-schedule-time-fields{gap:10px!important;}
html body .portal-schedule-inline-form .flex.gap-3,
  html body .portal-schedule-inline-form .flex.gap-4{gap:8px!important;}
html body .portal-schedule-inline-form input,
  html body .portal-schedule-inline-form select,
  html body .portal-schedule-inline-form textarea{min-height:42px!important;font-size:14px;}
html body .portal-schedule-inline-form .portal-schedule-subject-note{margin-top:5px!important;font-size:10px;line-height:1.35;}
html body .portal-schedule-inline-form .portal-schedule-form-actions{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}
html body .portal-schedule-inline-cancel{display:block!important;}
html body .portal-schedule-inline-form .w-full.bg-red-50,
  html body .portal-schedule-inline-form .w-full.bg-blue-500,
  html body .portal-schedule-inline-form button[data-continue-schedule="1"]{min-height:44px!important;font-size:13px;}}
#portalGuruEskulApp{--eskul-soft:#f7fafc;--eskul-line:var(--tone-dce7ef);--eskul-text:#17324f;--eskul-muted:#71849a;}
#portalGuruEskulApp .portal-eskul-content{padding-bottom:24px;}
#portalGuruEskulApp .portal-eskul-page-head{gap:16px;align-items:center;margin-bottom:16px;}
#portalGuruEskulApp .portal-eskul-page-head > div{min-width:0;}
#portalGuruEskulApp .portal-eskul-page-head h2{margin:3px 0 4px!important;line-height:1.15;letter-spacing:-.02em;}
#portalGuruEskulApp .portal-eskul-page-head p{margin:0!important;color:var(--eskul-muted);line-height:1.45;}
#portalGuruEskulApp .portal-eskul-meeting-list{display:grid;gap:12px;}
#portalGuruEskulApp .portal-eskul-meeting-card{display:grid!important;grid-template-columns:76px minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;min-height:126px;padding:14px!important;border:1px solid var(--eskul-line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 24px rgba(17,42,76,.045);content-visibility:auto;contain-intrinsic-size:126px;}
#portalGuruEskulApp .portal-eskul-meeting-number{width:68px!important;min-width:68px!important;height:72px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px!important;border-radius:var(--radius-lg,14px);background:#dceeff;color:#0c5da8;}
#portalGuruEskulApp .portal-eskul-meeting-number small{font-size:9px;line-height:1.05;letter-spacing:0;white-space:nowrap;}
#portalGuruEskulApp .portal-eskul-meeting-number b{font-size:22px;line-height:1;}
#portalGuruEskulApp .portal-eskul-meeting-main{min-width:0;padding:2px 0;}
#portalGuruEskulApp .portal-eskul-meeting-date{display:block;margin-bottom:5px;color:#1768b2;font-weight:800;}
#portalGuruEskulApp .portal-eskul-meeting-main h3{margin:0 0 7px!important;font-size:16px;line-height:1.2;overflow-wrap:anywhere;}
#portalGuruEskulApp .portal-eskul-statuses{display:flex;flex-wrap:wrap;gap:5px!important;margin:0 0 7px;}
#portalGuruEskulApp .portal-eskul-statuses span{min-width:34px;padding:4px 7px!important;border-radius:var(--radius-sm,8px);font-size:9px;text-align:center;}
#portalGuruEskulApp .portal-eskul-photo-strip{display:flex!important;gap:6px!important;flex-wrap:wrap;min-height:46px;}
#portalGuruEskulApp .portal-eskul-photo-strip figure{width:58px!important;height:46px!important;margin:0!important;border-radius:var(--radius-sm,8px);overflow:visible;position:relative;}
#portalGuruEskulApp .portal-eskul-photo-strip img{width:58px!important;height:46px!important;object-fit:cover!important;border-radius:var(--radius-sm,8px);display:block;}
#portalGuruEskulApp .portal-eskul-photo-strip button{width:25px!important;height:25px!important;min-height:0!important;right:-5px!important;top:-6px!important;border-radius:50%;}
#portalGuruEskulApp .portal-eskul-actions{display:flex!important;gap:7px!important;align-items:center;justify-content:flex-end;}
#portalGuruEskulApp .portal-eskul-actions button{min-height:40px!important;border-radius:var(--radius-md-lg,12px);}
#portalGuruEskulApp .portal-eskul-meeting-workspace{border-radius:var(--radius-3xl,20px);box-shadow:0 8px 24px rgba(17,42,76,.045);}
#portalGuruEskulApp .portal-eskul-meeting-fields{gap:12px!important;}
#portalGuruEskulApp .portal-eskul-attendance-row{content-visibility:auto;contain-intrinsic-size:64px;}
#portalGuruEskulApp img{image-rendering:auto;}
#portalGuruEskulApp .portal-eskul-existing img, #portalGuruEskulApp .portal-eskul-photo-preview img{decoding:async;}
#portalGuruEskulApp .portal-eskul-report-toolbar{display:flex!important;align-items:end!important;gap:9px!important;flex-wrap:wrap;padding:12px!important;border-radius:var(--radius-xl,16px);}
#portalGuruEskulApp .portal-eskul-report-toolbar label{min-width:170px;}
#portalGuruEskulApp .portal-eskul-report-toolbar button{min-height:42px!important;border-radius:var(--radius-md-lg,12px);}
#portalGuruEskulApp .portal-eskul-report-summary{grid-template-columns:repeat(3,minmax(0,150px))!important;justify-content:start!important;gap:9px!important;}
#portalGuruEskulApp .portal-eskul-report-summary article{min-height:68px!important;border-radius:var(--radius-xl,16px);padding:10px 14px!important;}
#portalGuruEskulApp .portal-eskul-print-preview-portrait{width:min(100%, 820px)!important;margin:16px auto 0!important;padding:22px!important;background:var(--theme-surface,#fff);border:1px solid #dce6ee;border-radius:var(--radius-2xl,18px);box-shadow:0 12px 30px rgba(17,42,76,.06);color:#17324f;overflow:hidden!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-header{display:grid!important;grid-template-columns:54px 1fr!important;align-items:center;gap:12px;border-bottom:2px solid var(--tone-168fe5);padding-bottom:9px;margin-bottom:10px;}
#portalGuruEskulApp .portal-eskul-print-preview .print-header img, #portalGuruEskulApp .portal-eskul-print-preview .attachment-title img{width:50px!important;height:50px!important;object-fit:contain;}
#portalGuruEskulApp .portal-eskul-print-preview .print-header h1{font-size:16px;margin:5px 0 3px!important;line-height:1.15;}
#portalGuruEskulApp .portal-eskul-print-preview .print-header p{font-size:10px;margin:2px 0!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:9px;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance th, #portalGuruEskulApp .portal-eskul-print-preview .print-attendance td{padding:4px 3px!important;border:1px solid #8797a5;line-height:1.15;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance th{background:#eaf4fb;color:#0b4b88;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-no{width:28px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-name{width:150px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-gender{width:34px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-class{width:55px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-meeting{width:45px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-total{width:50px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance .col-note{width:112px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .page-break{margin-top:18px;padding-top:16px;border-top:1px dashed #cad7e0;}
#portalGuruEskulApp .portal-eskul-print-preview .attachment-title{display:grid;grid-template-columns:44px 1fr;gap:10px;align-items:center;border-bottom:2px solid var(--tone-168fe5);padding-bottom:8px;margin-bottom:10px;}
#portalGuruEskulApp .portal-eskul-print-preview .attachments-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .attachment-meeting{border:1px solid #d9e4eb;border-radius:var(--radius-md,10px);padding:7px;min-width:0;content-visibility:auto;contain-intrinsic-size:230px;}
#portalGuruEskulApp .portal-eskul-print-preview .attachment-meeting h3{display:flex;gap:6px;margin:0 0 6px;padding:6px;font-size:9px;line-height:1.25;background:#f2f8fc;border-left:3px solid var(--tone-168fe5);}
#portalGuruEskulApp .portal-eskul-print-preview .photo-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;}
#portalGuruEskulApp .portal-eskul-print-preview .photo-grid figure{margin:0!important;padding:3px!important;border:1px solid #e1e8ed;border-radius:var(--radius-xs,6px);min-width:0;}
#portalGuruEskulApp .portal-eskul-print-preview .photo-grid img{display:block;width:100%!important;height:105px!important;object-fit:cover!important;border-radius:4px;}
#portalGuruEskulApp .portal-eskul-print-preview .photo-grid figcaption{font-size:8px;margin-top:3px;color:#607286;}
@media (max-width:700px){#portalGuruEskulApp .portal-eskul-page-head{align-items:flex-start!important;}
#portalGuruEskulApp .portal-eskul-meeting-card{grid-template-columns:68px minmax(0,1fr)!important;gap:10px!important;padding:12px!important;}
#portalGuruEskulApp .portal-eskul-meeting-number{width:62px!important;min-width:62px!important;height:66px!important;}
#portalGuruEskulApp .portal-eskul-meeting-main h3{font-size:14px;}
#portalGuruEskulApp .portal-eskul-actions{grid-column:1/-1;justify-content:flex-end;margin-top:2px;}
#portalGuruEskulApp .portal-eskul-actions .small{min-width:86px;}
#portalGuruEskulApp .portal-eskul-report-summary{grid-template-columns:repeat(3,1fr)!important;}
#portalGuruEskulApp .portal-eskul-print-preview-portrait{padding:12px!important;border-radius:var(--radius-lg,14px);overflow-x:auto!important;}
#portalGuruEskulApp .portal-eskul-print-preview .print-attendance{min-width:690px;}
#portalGuruEskulApp .portal-eskul-print-preview .attachments-grid{grid-template-columns:1fr!important;}
#portalGuruEskulApp .portal-eskul-print-preview .photo-grid img{height:120px!important;}}
.portal-eskul-meeting-list .portal-eskul-photo-strip button[data-eskul-delete-photo]{display:none!important;pointer-events:none!important;}


#portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-photo-strip figure > button, #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-photo-strip [data-eskul-delete-photo], .portal-eskul-meeting-list .portal-eskul-photo-strip figure > button, .portal-eskul-meeting-list .portal-eskul-photo-strip [data-eskul-delete-photo]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip > figure > button, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip button[data-eskul-delete-photo], html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip [data-eskul-delete-photo], html body #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip > figure > button, html body #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip button[data-eskul-delete-photo], #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip > figure > button, #portalGuruEskulApp .portal-eskul-meeting-list .portal-eskul-meeting-card .portal-eskul-photo-strip button[data-eskul-delete-photo]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;position:absolute!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;padding:0!important;margin:0!important;border:0;box-shadow:none;overflow:hidden!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management{margin-top:14px!important;overflow:hidden!important;border:1px solid rgba(68, 105, 139, 0.14);border-radius:var(--radius-4xl,22px);background:var(--tone-dec94ca2,rgba(255, 255, 255, 0.86));box-shadow:0 12px 30px rgba(23, 55, 86, 0.055);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management > header{min-height:58px!important;padding:13px 16px!important;border-bottom:1px solid rgba(68, 105, 139, 0.1)!important;background:linear-gradient(180deg, rgba(250, 253, 255, 0.98), rgba(245, 250, 254, 0.82));}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management > header b{color:#203349;font-size:12px;line-height:1.35;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management > header small{margin-top:3px!important;color:#72849a;font-size:10px;line-height:1.45;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management > header > span{min-height:28px!important;padding:6px 10px!important;border:1px solid rgba(10, 132, 255, 0.11);border-radius:var(--radius-pill,999px);background:#edf6ff;color:var(--tone-0b6fc4,#0b6fc4);font-size:9px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-list{display:grid!important;gap:8px!important;padding:10px 12px 12px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row{grid-template-columns:minmax(0, 1fr) auto!important;gap:10px!important;min-height:62px!important;padding:8px!important;overflow:hidden!important;border:1px solid rgba(68, 105, 139, 0.13);border-radius:var(--radius-xl,16px);background:var(--tone-ac114555,rgba(255, 255, 255, 0.88));box-shadow:0 5px 16px rgba(23, 55, 86, 0.035);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row.is-selected{border-color:rgba(10, 132, 255, 0.34);background:linear-gradient(135deg, rgba(10, 132, 255, 0.105), rgba(255, 255, 255, 0.94));box-shadow:0 7px 20px rgba(10, 132, 255, 0.075), inset 3px 0 0 var(--tone-0a84ff,#0a84ff);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main[data-eduvia-button-v03]{min-width:0!important;min-height:44px!important;padding:3px 5px!important;border:0;border-radius:13px;background:transparent;color:#24425f;box-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main > span{width:40px!important;min-width:40px!important;height:40px!important;border-radius:13px;background:#e9f4ff;color:var(--tone-0875d4);box-shadow:inset 0 0 0 1px var(--tone-23061588);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main b{color:#203349;font-size:13px;line-height:1.35;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main small{margin-top:3px!important;color:#6b8096;font-size:10px;line-height:1.45;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions{display:grid!important;grid-auto-flow:column!important;grid-auto-columns:minmax(82px, auto)!important;align-items:center!important;gap:8px!important;padding:0!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions > button:not(.danger):not([data-eskul-delete-program]){min-height:40px!important;padding:8px 13px!important;border:1px solid transparent;border-radius:var(--radius-md-lg,12px);background:linear-gradient(180deg, #f1871a, #e8750a);color:var(--theme-surface,#fff);box-shadow:0 7px 16px rgba(232, 117, 10, 0.2);font-size:10.5px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions > button[data-eskul-delete-program]{min-height:40px!important;padding:8px 13px!important;border-radius:var(--radius-md-lg,12px);border-color:var(--tone-8f1f32);background:linear-gradient(180deg, #a62c40, var(--tone-8f1f32));color:var(--theme-surface,#fff);box-shadow:0 7px 16px rgba(143, 31, 50, 0.22);font-size:10.5px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid{display:grid!important;grid-template-columns:repeat(3, minmax(0, 1fr))!important;gap:10px!important;margin-top:12px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button[data-eduvia-button-v03]{display:grid!important;grid-template-columns:42px minmax(0, 1fr)!important;align-items:center!important;gap:12px!important;min-height:78px!important;padding:13px 14px!important;border:1px solid rgba(68, 105, 139, 0.14);border-radius:var(--radius-2xl,18px);background:var(--tone-ac114555,rgba(255, 255, 255, 0.88));color:var(--tone-0875d4);box-shadow:0 8px 22px rgba(23, 55, 86, 0.045);text-align:left!important;transform:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button > svg{box-sizing:content-box!important;width:20px!important;height:20px!important;padding:10px!important;border-radius:13px;background:#e9f4ff;color:var(--tone-0875d4);box-shadow:inset 0 0 0 1px var(--tone-23061588);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button b{color:#2a3c51;font-size:13px;line-height:1.35;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button small{display:block!important;margin-top:4px!important;color:#71849a;font-size:10px;line-height:1.45;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button:hover{border-color:rgba(10, 132, 255, 0.34);background:#f5faff;box-shadow:0 10px 24px var(--tone-23061588);transform:translateY(-1px)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp :is(.portal-eskul-program-row-main, .portal-eskul-quick-grid > button):focus-visible{outline:3px solid rgba(10, 132, 255, 0.22);outline-offset:2px!important;}
@media (max-width: 760px){html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management{border-radius:19px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-management > header{min-height:56px!important;padding:12px 13px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-list{padding:9px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row{grid-template-columns:minmax(0, 1fr)!important;gap:7px!important;border-radius:15px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions{grid-auto-flow:column!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;grid-auto-columns:initial!important;padding:0 4px 4px 55px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions > button{width:100%!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid{grid-template-columns:minmax(0, 1fr)!important;gap:9px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button, html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-quick-grid > button[data-eduvia-button-v03]{min-height:72px!important;padding:11px 12px!important;border-radius:var(--radius-xl,16px);}}
@media (max-width: 390px){html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-actions{padding-left:4px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-row-main small{white-space:normal!important;overflow-wrap:anywhere!important;}}
[data-affiliate-slot-v36]{display:none!important;}
.teacher-affiliate-open-v361{width:calc(100% - 0px)!important;min-height:42px!important;margin:10px 0 0!important;padding:0 13px!important;display:flex!important;align-items:center!important;gap:10px!important;border:1px solid #dce9f3;border-radius:13px;background:var(--tone-f7fbff);color:#0b78c4;font:700 12px/1.2 inherit;box-shadow:none;cursor:pointer!important;}
.teacher-affiliate-open-v361:hover{background:var(--tone-eef8ff);border-color:#c8e3f5;}
.teacher-affiliate-open-icon-v361{width:27px;height:27px;border-radius:9px;background:var(--tone-e7f5ff);display:grid;place-items:center;font-size:16px;font-weight:900;color:#0788df;flex:0 0 auto;}
.teacher-affiliate-open-v361>span:nth-child(2){flex:1;text-align:left;}
.teacher-affiliate-open-v361>i{font-style:normal;font-size:20px;line-height:1;color:#9ab1c4;font-weight:500;}
.teacher-affiliate-modal-v361{position:fixed;inset:0;z-index:120000;display:grid;place-items:center;opacity:1;visibility:visible;}
.teacher-affiliate-modal-v361.is-hidden{opacity:0;visibility:hidden;pointer-events:none;}
.teacher-affiliate-backdrop-v361{position:absolute;inset:0;background:rgba(17,37,55,.42);}
.teacher-affiliate-dialog-v361{position:relative;z-index:1;width:min(640px,calc(100vw - 28px));max-height:min(88vh,820px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:26px;}
.teacher-affiliate-close-v361{position:absolute;right:14px;top:14px;width:38px;height:38px;display:grid!important;place-items:center!important;border:1px solid #e2eaf0;border-radius:13px;background:var(--tone-f8fbfd);color:#19415f;font:500 22px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:none;cursor:pointer!important;z-index:2;}
.teacher-affiliate-close-v361:hover{background:#eef5f9;}
.teacher-affiliate-modal-head-v361{display:flex;align-items:center;gap:14px;padding-right:42px;}
.teacher-affiliate-modal-icon-v361{width:50px;height:50px;display:grid;place-items:center;flex:0 0 auto;font-size:24px;font-weight:900;}
.teacher-affiliate-modal-head-v361 span{font-size:9px;line-height:1.1;letter-spacing:.1em;font-weight:900;color:#0788da;}
.teacher-affiliate-modal-head-v361 h2{margin:2px 0 2px;font-size:22px;line-height:1.18;color:var(--tone-17324d);letter-spacing:-.02em;}
.teacher-affiliate-modal-head-v361 p{margin:0;color:#70869a;font-size:11px;line-height:1.45;}
.teacher-affiliate-reward-v361{margin-top:20px;padding:16px 17px;border:1px solid #e0ebf3;border-radius:var(--radius-2xl,18px);background:linear-gradient(180deg,#f9fcff,#f4f9fd);display:flex;align-items:center;justify-content:space-between;gap:14px;}
.teacher-affiliate-reward-v361 div{min-width:0;}
.teacher-affiliate-reward-v361 small{display:block;color:#7a90a3;font-size:8px;font-weight:900;letter-spacing:.1em;}
.teacher-affiliate-reward-v361 strong{display:block;margin-top:3px;font-size:15px;color:var(--tone-17324d);}
.teacher-affiliate-reward-v361 p{margin:4px 0 0;color:#71869a;font-size:10px;line-height:1.45;max-width:440px;}
.teacher-affiliate-reward-v361>span{flex:0 0 auto;border-radius:var(--radius-pill,999px);background:#eaf8f0;color:#15925b;border:1px solid #d3efdf;padding:7px 10px;font-size:9px;font-weight:900;}
.teacher-affiliate-progress-card-v361{margin-top:14px;padding:17px;border:1px solid #dbe8f2;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);}
.teacher-affiliate-progress-top-v361{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;}
.teacher-affiliate-progress-top-v361>div:first-child small{display:block;font-size:8px;letter-spacing:.09em;font-weight:900;color:#71889c;}
.teacher-affiliate-progress-top-v361 strong{display:block;margin-top:2px;color:#0784d3;font-size:32px;line-height:1;font-weight:900;letter-spacing:-.04em;}
.teacher-affiliate-progress-top-v361 strong em{font-style:normal;font-size:15px;color:#94a7b8;letter-spacing:0;}
.teacher-affiliate-progress-copy-v361{text-align:right;min-width:0;}
.teacher-affiliate-progress-copy-v361 b{display:block;font-size:11px;color:#29465e;}
.teacher-affiliate-progress-copy-v361 span{display:block;margin-top:3px;font-size:9px;line-height:1.35;color:#73889a;}
.teacher-affiliate-progress-v361{height:8px;margin-top:14px;border-radius:var(--radius-pill,999px);background:#e8f0f5;overflow:hidden;}
.teacher-affiliate-progress-v361 i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0a91e8,#18b678);}
.teacher-affiliate-step-row-v361{display:flex;justify-content:space-between;margin-top:7px;}
.teacher-affiliate-step-row-v361 span{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#eef3f7;color:#96a8b8;font-size:8px;font-weight:900;}
.teacher-affiliate-step-row-v361 span.is-done{background:#e1f7ec;color:#138e57;}
.teacher-affiliate-stats-v361{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;}
.teacher-affiliate-stats-v361>div{padding:12px 13px;border:1px solid #e3ebf1;border-radius:15px;background:#f9fbfd;}
.teacher-affiliate-stats-v361 span{display:block;font-size:8px;color:#7e91a3;font-weight:800;}
.teacher-affiliate-stats-v361 strong{display:block;margin-top:2px;font-size:17px;color:var(--tone-17324d);}
.teacher-affiliate-link-card-v361{margin-top:14px;padding:16px;border:1px solid #dbe8f2;border-radius:var(--radius-2xl,18px);background:#f8fcff;}
.teacher-affiliate-link-title-v361{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.teacher-affiliate-link-title-v361 small{display:block;font-size:8px;color:#768b9d;font-weight:900;letter-spacing:.08em;}
.teacher-affiliate-link-title-v361 b{display:block;margin-top:2px;font-size:11px;color:var(--tone-17324d);}
.teacher-affiliate-link-title-v361>span{border-radius:var(--radius-pill,999px);padding:5px 8px;background:#e5f7ee;color:#159159;font-size:8px;font-weight:900;}
.teacher-affiliate-link-field-v361{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px;}
.teacher-affiliate-link-field-v361>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--tone-dfe9f0);border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);padding:10px 11px;font-size:9px;color:#4c667b;}
.teacher-affiliate-link-field-v361 button, .teacher-affiliate-share-v361{border:0;border-radius:var(--radius-md-lg,12px);background:#e6f4fe;color:#087bc5;padding:10px 13px!important;font:900 10px/1 inherit;cursor:pointer!important;}
.teacher-affiliate-share-v361{width:100%!important;margin-top:8px!important;background:#0b87d8;min-height:40px!important;}
.teacher-affiliate-note-v361{margin-top:13px;padding:13px 14px;border-radius:15px;background:#f7f9fb;color:#6f8497;}
.teacher-affiliate-note-v361 b{display:block;color:#385268;font-size:10px;}
.teacher-affiliate-note-v361 p{margin:3px 0 0;font-size:9px;line-height:1.5;}
.teacher-affiliate-claim-v361{width:100%;min-height:46px!important;margin-top:14px!important;border:0;border-radius:var(--radius-lg,14px);background:linear-gradient(180deg,#22c97c,#11ad66);font:900 11px/1.2 inherit;cursor:pointer!important;}
.teacher-affiliate-claim-v361:disabled{opacity:.68;cursor:wait!important;}
.teacher-affiliate-claim-v361>span{margin-right:4px;}
.teacher-affiliate-spinner-v361{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.45);border-top-color:var(--theme-surface,#fff);border-radius:50%;vertical-align:-2px;margin-right:6px;}
.teacher-affiliate-loading-v361, .teacher-affiliate-error-v361{min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:26px;}
.teacher-affiliate-loading-icon-v361{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;background:var(--tone-e8f6ff);color:#0785d5;font-size:24px;font-weight:900;}
.teacher-affiliate-loading-v361 h2, .teacher-affiliate-error-v361 h2{margin:12px 0 2px;font-size:20px;}
.teacher-affiliate-loading-v361 p, .teacher-affiliate-error-v361 p{margin:0;color:#788b9c;font-size:11px;}
.teacher-affiliate-loading-bar-v361{width:180px;height:6px;margin-top:18px;overflow:hidden;border-radius:var(--radius-pill,999px);background:#edf2f5;}
.teacher-affiliate-loading-bar-v361 i{display:block;width:45%;height:100%;border-radius:inherit;background:#0a8ddd;}
.teacher-affiliate-error-v361 button{margin-top:14px!important;border:0;border-radius:var(--radius-md-lg,12px);background:#e7f5fe;color:#087fc9;padding:10px 16px!important;font:900 10px/1 inherit;}
.affiliate-toast-v36{position:fixed;left:50%;bottom:24px;z-index:130000;transform:translate(-50%,16px);max-width:min(420px,calc(100vw - 28px));padding:11px 15px;border-radius:13px;background:#14334c;color:var(--theme-surface,#fff);font:700 12px/1.35 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 12px 30px rgba(15,34,57,.18);opacity:0;pointer-events:none;}
.affiliate-toast-v36.show{opacity:1;transform:translate(-50%,0);}
.affiliate-toast-v36.is-error{background:#b93f4c;}
@media (max-width:640px){.teacher-affiliate-modal-v361{padding:9px;}
.teacher-affiliate-dialog-v361{width:calc(100vw - 18px);max-height:92vh;padding:18px 14px 16px;}
.teacher-affiliate-close-v361{right:10px;top:10px;width:36px;height:36px;border-radius:var(--radius-md-lg,12px);}
.teacher-affiliate-modal-head-v361{gap:10px;padding-right:38px;}
.teacher-affiliate-modal-icon-v361{width:42px;height:42px;font-size:20px;}
.teacher-affiliate-modal-head-v361 h2{font-size:19px;}
.teacher-affiliate-modal-head-v361 p{font-size:10px;}
.teacher-affiliate-reward-v361{align-items:flex-start;padding:14px;}
.teacher-affiliate-reward-v361>span{font-size:8px;}
.teacher-affiliate-progress-top-v361{align-items:flex-start;}
.teacher-affiliate-progress-copy-v361{text-align:right;max-width:58%;}
.teacher-affiliate-stats-v361{gap:6px;}
.teacher-affiliate-stats-v361>div{padding:10px 8px;text-align:center;}
.teacher-affiliate-stats-v361 span{font-size:7.5px;}
.teacher-affiliate-stats-v361 strong{font-size:16px;}
.teacher-affiliate-link-field-v361{grid-template-columns:1fr;}
.teacher-affiliate-link-field-v361 button{width:100%!important;}
.teacher-affiliate-note-v361 p{font-size:8.5px;}}
@media (max-width:380px){.teacher-affiliate-reward-v361{display:block;}
.teacher-affiliate-reward-v361>span{display:inline-block;margin-top:8px;}
.teacher-affiliate-progress-top-v361{display:block;}
.teacher-affiliate-progress-copy-v361{max-width:none;text-align:left;margin-top:8px;}
.teacher-affiliate-stats-v361{grid-template-columns:1fr 1fr;}
.teacher-affiliate-stats-v361>div:last-child{grid-column:1/-1;}}
/* V114R: legacy download/header CSS removed; React header is canonical. */


html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{border-bottom:1px solid rgba(15, 23, 42, .08)!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header small{display:none!important;}




html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid :is(input, select){width:100%!important;min-width:0!important;min-height:44px!important;padding:9px 11px!important;border:1px solid #d8e2ed;border-radius:var(--radius-md-lg,12px);outline:0;background:var(--tone-f7f9fc);color:var(--tone-17263a);font-size:16px;font-weight:650;box-shadow:none;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid :is(input, select):focus{border-color:var(--tone-0a84ff,#0a84ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(10, 132, 255, .12);}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact #portalEskulMemberModalStatus:empty{display:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{border-top:1px solid rgba(15, 23, 42, .08)!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer > button{font-size:11.5px;}
@media (max-width: 760px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]{align-items:center!important;justify-content:center!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{max-height:calc(var(--portal-eskul-viewport-height, 100dvh) - 14px)!important;}



html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid > label{gap:5px!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid :is(input, select){min-height:43px!important;padding:8px 11px!important;}


html[data-portal-brand="guru"].portal-mobile-keyboard-open body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"], html[data-portal-brand="guru"] body.portal-keyboard-open > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"], html[data-portal-brand="guru"] body.portal-eskul-keyboard-open > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]{align-items:center!important;padding:5px!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact{align-self:center!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact > header, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact > header, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact > header{padding:8px 11px 6px!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{gap:7px!important;padding:7px 11px!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact > footer, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact > footer, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact > footer{padding:7px 11px calc(7px + env(safe-area-inset-bottom))!important;}}
html[data-portal-brand="guru"] body.portal-eskul-flat-form-open, html[data-portal-brand="guru"] body.portal-eskul-member-modal-open{overflow:hidden!important;overscroll-behavior:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"], html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]{position:fixed!important;inset:0!important;z-index:2147482000!important;display:grid!important;width:100vw!important;height:100dvh!important;min-height:0!important;padding:12px!important;place-items:center!important;overflow:hidden!important;background:rgba(18, 29, 43, .46);}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{position:relative!important;inset:auto!important;display:grid!important;grid-template-rows:auto minmax(0, 1fr)!important;width:min(680px, 100%)!important;height:min(620px, calc(100dvh - 24px))!important;min-height:min(320px, calc(100dvh - 24px))!important;max-height:calc(100dvh - 24px)!important;margin:0!important;padding:0!important;overflow:hidden!important;contain:layout paint!important;transform:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{grid-template-rows:auto minmax(0, 1fr) auto!important;height:min(470px, calc(100dvh - 24px))!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{position:relative!important;top:auto!important;z-index:2!important;display:flex!important;min-height:0!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;padding:13px 15px 10px!important;border-bottom:1px solid var(--theme-border,#d9e8f5)!important;background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head small{display:block!important;margin:0 0 3px!important;color:#0877ce;font-size:9px;font-weight:900;letter-spacing:.08em;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head h2, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header h3{margin:0!important;color:var(--tone-17263a);font-size:18px;font-weight:900;line-height:1.25;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head p, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header p{margin:3px 0 0!important;color:#69798c;font-size:11px;line-height:1.35;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog > .portal-eskul-inline-form[data-portal-eskul-form="program"]{position:relative!important;display:grid!important;grid-template-rows:minmax(0, 1fr) auto auto auto!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0;border-radius:0;background:var(--theme-surface,#fff);box-shadow:none;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-simple-grid, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{display:grid!important;grid-template-columns:repeat(2, minmax(0, 1fr))!important;align-content:start!important;gap:11px 12px!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:13px 15px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;scrollbar-width:thin!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-simple-grid > label, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid > label{display:flex!important;min-width:0!important;flex-direction:column!important;gap:5px!important;color:#35465a;font-size:11.5px;font-weight:800;line-height:1.25;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-simple-grid label > small{color:var(--tone-718096,#718096);font-size:9.5px;font-weight:600;line-height:1.35;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog :is(input, select), html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact :is(input, select){width:100%!important;min-width:0!important;min-height:44px!important;padding:9px 11px!important;border:1px solid #d6e0ea;border-radius:11px;outline:0;background:var(--tone-f7f9fc);color:var(--tone-17263a);font-size:16px;box-shadow:none;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog :is(input, select):focus, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact :is(input, select):focus{border-color:var(--tone-0a84ff,#0a84ff);background:var(--theme-surface,#fff);box-shadow:0 0 0 3px rgba(10, 132, 255, .12);}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog :is(.portal-eskul-category-note, .portal-eskul-form-status){margin:0 15px 8px!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-form-status:empty, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-form-status:empty{display:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-inline-form > footer, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{position:static!important;z-index:2!important;display:grid!important;grid-template-columns:minmax(0, .78fr) minmax(0, 1.22fr)!important;gap:8px!important;width:100%!important;margin:0!important;padding:9px 15px 12px!important;border-top:1px solid var(--theme-border,#d9e8f5)!important;background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-inline-form > footer > button, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer > button{width:100%!important;min-width:0!important;min-height:43px!important;margin:0!important;border-radius:11px;box-shadow:none;}
@media (max-width: 760px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body .portal-eskul-side-programs-head > button[data-eduvia-eskul-quick-add-text]{display:none!important;width:auto!important;min-width:76px!important;min-height:44px!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:8px 11px!important;}
html[data-portal-brand="guru"] body .portal-eskul-side-programs-head > button[data-eduvia-eskul-quick-add-text]::after{content:attr(data-eduvia-eskul-quick-add-text)!important;font-size:11px;font-weight:900;line-height:1;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"], html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]{inset:auto 0 auto 0!important;top:var(--portal-visual-top, var(--portal-eskul-viewport-top, 0px))!important;bottom:auto!important;width:100vw!important;height:var(--portal-visual-height, var(--portal-eskul-viewport-height, 100dvh))!important;max-height:var(--portal-visual-height, var(--portal-eskul-viewport-height, 100dvh))!important;padding:6px!important;place-items:center!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{width:min(100%, 520px)!important;height:min(560px, calc(100% - 12px))!important;min-height:min(270px, calc(100% - 12px))!important;max-height:calc(100% - 12px)!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{width:min(100%, 430px)!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{padding:10px 12px 8px!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-head h2, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header h3{font-size:16px;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-simple-grid, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{grid-template-columns:minmax(0, 1fr)!important;gap:8px!important;padding:9px 12px!important;scroll-padding:9px 0!important;}
html[data-portal-brand="guru"] body .portal-eskul-flat-form-dialog .portal-eskul-inline-form > footer, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{padding:8px 12px calc(9px + env(safe-area-inset-bottom))!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-flat-form-dialog, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-flat-form-dialog, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-flat-form-dialog, html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact{width:min(100%, 520px)!important;height:calc(100% - 8px)!important;min-height:0!important;max-height:calc(100% - 8px)!important;}

html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-flat-form-head p, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-flat-form-head p, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-flat-form-head p, html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact > header p, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact > header p, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact > header p{display:none!important;}}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{min-width:0!important;max-height:calc(var(--portal-eskul-viewport-height, 100dvh) - 24px)!important;overflow:hidden!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid{display:grid!important;grid-template-columns:minmax(0, 1fr) minmax(150px, .72fr)!important;gap:14px!important;overflow-x:hidden!important;overflow-y:auto!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid .is-full, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid #portalEskulMemberModalStatus{grid-column:1 / -1!important;}
@media (max-width: 760px){html[data-portal-brand="guru"] body .portal-eskul-modal-backdrop{align-items:center!important;padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left))!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{width:100%!important;max-width:540px!important;max-height:calc(var(--portal-eskul-viewport-height, 100dvh) - 16px)!important;margin:auto!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{padding:16px 17px 13px!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header h3{font-size:19px;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{grid-template-columns:minmax(0, 1fr)!important;gap:12px!important;padding:15px 17px!important;scroll-padding:12px 0 20px!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid .is-full, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-manual-grid #portalEskulMemberModalStatus{grid-column:auto!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact :is(input, select){width:100%!important;min-width:0!important;min-height:48px!important;padding:11px 13px!important;font-size:16px;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{display:grid!important;grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr)!important;gap:9px!important;padding:12px 17px calc(14px + env(safe-area-inset-bottom))!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer > button{width:100%!important;min-width:0!important;min-height:46px!important;margin:0!important;}
html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-modal-backdrop{padding:6px!important;}
html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact{max-height:calc(var(--portal-eskul-viewport-height, 100dvh) - 12px)!important;}
html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{padding:10px 14px!important;}}
html[data-portal-brand="guru"] #root [data-eduvia-realtime-clock-v17], html[data-portal-brand="guru"] #root .eduvia-retro-clock-v17{position:relative!important;isolation:isolate!important;display:grid!important;align-content:center!important;justify-items:start!important;gap:5px!important;min-width:164px!important;min-height:70px!important;padding:11px 15px 12px!important;overflow:hidden!important;border:1px solid rgba(255, 255, 255, .9);border-radius:15px;background:linear-gradient(145deg, var(--theme-surface,#fff) 0%, #edf7ff 58%, #e5f2fc 100%);box-shadow:inset 0 1px 0 var(--theme-surface,#fff), 0 9px 22px rgba(7, 52, 91, .18);filter:none!important;contain:paint!important;}
html[data-portal-brand="guru"] #root [data-eduvia-realtime-clock-v17]::after, html[data-portal-brand="guru"] #root .eduvia-retro-clock-v17::after{content:"";position:absolute;z-index:0;top:-18%;bottom:-18%;left:0;width:30%;pointer-events:none;background:linear-gradient(90deg, transparent, rgba(255, 255, 255, .9), transparent);opacity:0;transform:translate3d(-190%, 0, 0) skewX(-18deg);}
html[data-portal-brand="guru"] #root .eduvia-retro-clock-label-v17{position:relative!important;z-index:1!important;display:inline-flex!important;align-items:center!important;gap:6px!important;width:max-content!important;margin:0!important;padding:3px 7px!important;border:1px solid rgba(15, 143, 107, .16);border-radius:var(--radius-pill,999px);background:#e5f8f1;color:#08745f;-webkit-text-fill-color:#08745f!important;font-family:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;font-size:8px;font-weight:850;letter-spacing:.12em;line-height:1.2;opacity:1!important;}
html[data-portal-brand="guru"] #root .eduvia-retro-clock-label-v17::before{content:"";display:block;flex:0 0 6px;width:6px;height:6px;border-radius:50%;background:#18a875;box-shadow:0 0 0 3px rgba(24, 168, 117, .13);transform:scale(.76);transform-origin:center;}
html[data-portal-brand="guru"] #root .eduvia-retro-clock-time-v17{position:relative!important;z-index:1!important;margin:0!important;color:#123f68;-webkit-text-fill-color:#123f68!important;font-family:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;font-size:clamp(21px, 2.2vw, 26px);font-weight:850;font-variant-numeric:tabular-nums!important;letter-spacing:.045em;line-height:1;text-shadow:0 1px 0 var(--theme-surface,#fff);}
@media (max-width: 767px){html[data-portal-brand="guru"] #root [data-eduvia-realtime-clock-v17]{min-width:132px!important;min-height:64px!important;padding:9px 11px 10px!important;border-radius:var(--radius-lg,14px);}
html[data-portal-brand="guru"] #root .eduvia-retro-clock-label-v17{gap:5px!important;padding:3px 6px!important;font-size:7px;letter-spacing:.08em;}
html[data-portal-brand="guru"] #root .eduvia-retro-clock-time-v17{font-size:20px;letter-spacing:.025em;}}
@media (hover: hover) and (pointer: fine){html[data-portal-brand="guru"] #root [data-eduvia-realtime-clock-v17]:hover, html[data-portal-brand="guru"] #root .eduvia-retro-clock-v17:hover{border-color:rgba(255, 255, 255, 1);box-shadow:inset 0 1px 0 var(--theme-surface,#fff), 0 11px 25px rgba(7, 52, 91, .22);transform:translateY(-1px)!important;}}
.teacher-affiliate-modal-v361{padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))!important;contain:layout paint style!important;}
.teacher-affiliate-modal-v361.is-hidden{content-visibility:hidden!important;}
.teacher-affiliate-modal-v361 .teacher-affiliate-backdrop-v361{background:rgba(15, 23, 42, 0.46);}

.teacher-affiliate-modal-v361 .eduvia-modal-grabber{display:none!important;}
.teacher-affiliate-modal-v361[data-affiliate-return-profile-v10] .teacher-affiliate-close-v361{padding:0 1px 2px 0!important;font-size:28px;line-height:1;}
.teacher-affiliate-claim-v361, .teacher-affiliate-share-v361, .teacher-affiliate-link-field-v361 button, .teacher-affiliate-error-v361 button{border-color:transparent;background:var(--eduvia-guru-blue);color:var(--theme-surface,#fff);box-shadow:none;}
#portal-subscription-notification-layer .psn-panel{border:1px solid var(--tone-ac114555,rgba(255, 255, 255, 0.88));border-radius:23px;background:var(--theme-surface,#fff);box-shadow:var(--eduvia-guru-shadow);}
#portal-subscription-notification-layer .psn-head{background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body #root button[data-open-qr-backup]{border-color:transparent;background:linear-gradient(180deg, var(--tone-168eff), var(--eduvia-guru-blue-strong));color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 20px var(--tone-29b3c3a5);}
html[data-portal-brand="guru"] body #root button[data-open-qr-backup] > *{color:inherit;-webkit-text-fill-color:inherit!important;}
/* Surat Penugasan is a content card, not a primary action button. */
html[data-portal-brand="guru"] #root button.employee-letter-card{display:block;width:100%;padding:14px 16px;border:1px solid #dce3eb;border-radius:12px;background:#fff;color:#172b46;box-shadow:none;text-align:left;cursor:pointer;}
html[data-portal-brand="guru"] #root button.employee-letter-card:hover{background:#fff;border-color:#94a3b8;}
html[data-portal-brand="guru"] #root button.employee-letter-card:focus-visible{outline:2px solid #526174;outline-offset:3px;}
html[data-portal-brand="guru"] #root button.employee-letter-card > b{display:block;color:#172b46;-webkit-text-fill-color:#172b46!important;}
html[data-portal-brand="guru"] #root button.employee-letter-card > :is(p,small){display:block;margin-top:4px;color:#526174;-webkit-text-fill-color:#526174!important;}
[data-eduvia-button-v03][data-eduvia-button-tone="primary"]{border-color:transparent;background:linear-gradient(180deg, var(--tone-168eff), var(--eduvia-guru-blue-strong));color:var(--theme-surface,#fff);box-shadow:0 8px 20px var(--tone-29b3c3a5);}
[data-eduvia-button-v03][data-eduvia-button-tone="primary"]:hover{background:linear-gradient(180deg, var(--eduvia-guru-blue), #0068d5);}
[data-eduvia-button-v03][data-eduvia-button-tone="soft"]{border-color:rgba(10, 132, 255, 0.16);background:var(--eduvia-guru-blue-soft);color:var(--eduvia-guru-blue-strong);box-shadow:none;}
[data-eduvia-button-v03][data-eduvia-button-tone="neutral"]{border-color:var(--eduvia-guru-line);background:#f3f6f9;color:var(--tone-526174);box-shadow:none;}
[data-eduvia-button-v03][data-eduvia-button-tone="plain"]{color:var(--eduvia-guru-blue-strong);}
[data-eduvia-button-v03][data-eduvia-button-tone="danger"], html[data-portal-brand="guru"] body #root :is(button, a, input)[data-eduvia-button-v03][data-eduvia-button-tone="danger"], html[data-portal-brand="guru"] body #portalGuruEskulApp button[data-eduvia-button-v03][data-eduvia-button-tone="danger"]{border-color:var(--eduvia-guru-danger);background:linear-gradient(180deg, #a62c40, var(--eduvia-guru-danger));color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 18px rgba(143, 31, 50, 0.22);}
[data-eduvia-button-v03][data-eduvia-button-tone="danger"]:hover, html[data-portal-brand="guru"] body #root :is(button, a, input)[data-eduvia-button-v03][data-eduvia-button-tone="danger"]:hover, html[data-portal-brand="guru"] body #portalGuruEskulApp button[data-eduvia-button-v03][data-eduvia-button-tone="danger"]:hover{border-color:var(--eduvia-guru-danger-hover);background:linear-gradient(180deg, #902337, var(--eduvia-guru-danger-hover));}
[data-eduvia-button-v03][data-eduvia-button-tone="edit"], html[data-portal-brand="guru"] body #root :is(button, a, input)[data-eduvia-button-v03][data-eduvia-button-tone="edit"], html[data-portal-brand="guru"] body #portalGuruEskulApp button[data-eduvia-button-v03][data-eduvia-button-tone="edit"]{border-color:var(--eduvia-guru-edit);background:linear-gradient(180deg, #f1871a, var(--eduvia-guru-edit));color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 8px 18px rgba(232, 117, 10, 0.21);}
[data-eduvia-button-v03][data-eduvia-button-tone="edit"]:hover, html[data-portal-brand="guru"] body #root :is(button, a, input)[data-eduvia-button-v03][data-eduvia-button-tone="edit"]:hover, html[data-portal-brand="guru"] body #portalGuruEskulApp button[data-eduvia-button-v03][data-eduvia-button-tone="edit"]:hover{border-color:var(--eduvia-guru-edit-hover);background:linear-gradient(180deg, #dc6a04, var(--eduvia-guru-edit-hover));}
[data-eduvia-button-v03][data-eduvia-button-tone="danger"] :is(svg, i, span), [data-eduvia-button-v03][data-eduvia-button-tone="edit"] :is(svg, i, span){color:inherit;-webkit-text-fill-color:inherit!important;stroke:currentColor;}
[data-eduvia-feedback-tone="success"], [class*="toast"].is-success, [class*="toast"].is-ok, .teacher-student-scan-toast[data-type="success"], [role="status"].is-success, [role="alert"].is-success{border-color:#167942;background:linear-gradient(180deg, #27a65f, var(--eduvia-guru-success));color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:0 10px 26px rgba(27, 143, 80, 0.22);}
[data-eduvia-feedback-tone="success"] :is(svg, i, b, strong, span, p, small), [class*="toast"].is-success :is(svg, i, b, strong, span, p, small), [class*="toast"].is-ok :is(svg, i, b, strong, span, p, small), .teacher-student-scan-toast[data-type="success"] :is(svg, i, b, strong, span, p, small){color:inherit;-webkit-text-fill-color:inherit!important;}
[data-eduvia-button-v03]:not(:disabled):active{transform:scale(0.98)!important;}
[data-eduvia-button-v03]:focus-visible{outline:3px solid var(--tone-407252d1);outline-offset:2px!important;}
[data-eduvia-button-v03]:disabled{opacity:0.6!important;cursor:wait!important;box-shadow:none;}

.teacher-attendance-history-v24{flex:1 1 0%!important;min-width:0!important;min-height:0!important;max-height:100%!important;padding-bottom:calc(38px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;scrollbar-gutter:stable!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
html[data-portal-brand="guru"] body .portal-eskul-host-open{display:flex!important;flex-direction:column!important;min-width:0!important;min-height:0!important;overflow:hidden!important;}
#portalGuruEskulApp.portal-eskul-app.is-open{display:grid!important;flex:1 1 0%!important;grid-template-rows:minmax(0, 1fr)!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;}
#portalGuruEskulApp.portal-eskul-app.is-open .portal-eskul-workspace{display:grid!important;grid-template-rows:auto minmax(0, 1fr)!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;}
#portalGuruEskulApp.portal-eskul-app.is-open .portal-eskul-content{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:none!important;padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;scrollbar-gutter:stable!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
.portal-eskul-member-modal, .portal-eskul-member-modal.is-compact, .portal-eskul-member-modal.is-wide{display:flex!important;min-height:0!important;overflow:hidden!important;}
.portal-eskul-member-modal .portal-eskul-modal-body{flex:1 1 auto!important;min-height:0!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
@media (max-width: 760px){.teacher-attendance-history-v24{padding-bottom:calc(104px + env(safe-area-inset-bottom))!important;scrollbar-gutter:auto!important;}
html[data-portal-brand="guru"] body .portal-eskul-host-open, #portalGuruEskulApp.portal-eskul-app.is-open, #portalGuruEskulApp.portal-eskul-app.is-open .portal-eskul-workspace{height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;}
#portalGuruEskulApp.portal-eskul-app.is-open{display:grid!important;}
#portalGuruEskulApp.portal-eskul-app.is-open .portal-eskul-workspace{display:grid!important;}
#portalGuruEskulApp.portal-eskul-app.is-open .portal-eskul-content{height:100%!important;padding:14px 12px calc(118px + env(safe-area-inset-bottom))!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-gutter:auto!important;}
#portalGuruEskulApp .portal-eskul-meeting-workspace > footer, #portalGuruEskulApp .portal-eskul-inline-form > footer, #portalGuruEskulApp .portal-eskul-attendance-form > footer{position:static!important;bottom:auto!important;}
.portal-eskul-modal-backdrop{padding:max(7px, env(safe-area-inset-top)) max(7px, env(safe-area-inset-right)) max(7px, env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left))!important;overflow-x:hidden!important;overflow-y:auto!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
.portal-eskul-member-modal, .portal-eskul-member-modal.is-compact, .portal-eskul-member-modal.is-wide{width:100%!important;max-height:calc(var(--portal-eskul-viewport-height, 100dvh) - 14px)!important;}
}
@media (prefers-reduced-transparency: reduce){.teacher-affiliate-modal-v361 .teacher-affiliate-backdrop-v361{background:rgba(15, 23, 42, 0.64);}}
#teacherTeachingJournalV01 .tjv01-topbar{background:linear-gradient(135deg, #0b4f96 0%, #087fc2 58%, #159ad7 100%);color:var(--theme-surface,#fff);}
#teacherTeachingJournalV01 .tjv01-heading h1{color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;opacity:1!important;}
#teacherTeachingJournalV01 .tjv01-heading p{color:var(--tone-e8f6ff);-webkit-text-fill-color:var(--tone-e8f6ff)!important;opacity:1!important;}
.portal-accreditation-fallback-hero-v190, .portal-accreditation-fallback-hero-v190 :is(small, h1, h2, p, span){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;opacity:1!important;}
.portal-accreditation-fallback-hero-v190 p{color:#e5f4ff;-webkit-text-fill-color:#e5f4ff!important;}
:is(
  .individual-profile-photo-actions button[data-remove-employee-photo],
  .individual-profile-photo-actions button[data-remove-employee-custom-photo],
  .individual-profile-photo-actions button[data-remove-individual-photo]
){border:1px solid var(--eduvia-guru-danger);background:var(--eduvia-guru-danger);color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:none;opacity:1!important;}
:is(
  .individual-profile-photo-actions button[data-remove-employee-photo],
  .individual-profile-photo-actions button[data-remove-employee-custom-photo],
  .individual-profile-photo-actions button[data-remove-individual-photo]
):hover{border-color:var(--eduvia-guru-danger-hover);background:var(--eduvia-guru-danger-hover);}
:is(
  .individual-profile-photo-actions button[data-remove-employee-photo],
  .individual-profile-photo-actions button[data-remove-employee-custom-photo],
  .individual-profile-photo-actions button[data-remove-individual-photo]
):disabled{color:var(--tone-8fafb20d,rgba(255, 255, 255, 0.9));-webkit-text-fill-color:var(--tone-8fafb20d,rgba(255, 255, 255, 0.9))!important;opacity:0.62!important;}
:is(
  .individual-card-actions button[data-edit-employee-profile],
  .individual-card-actions button[data-edit-individual-profile]
){border:1px solid var(--eduvia-guru-blue);background:var(--eduvia-guru-blue-soft);color:var(--eduvia-guru-blue-strong);-webkit-text-fill-color:var(--eduvia-guru-blue-strong)!important;box-shadow:none;opacity:1!important;}
:is(
  .individual-card-actions button[data-edit-employee-profile],
  .individual-card-actions button[data-edit-individual-profile]
):hover{background:#dceeff;color:#005fbe;-webkit-text-fill-color:#005fbe!important;}
html.portal-guru-profile-lite-v12 :is(
  .individual-profile-modal,
  .individual-card-modal,
  .employee-id-card-modal,
  .employee-profile-custom-modal,
  .employee-profile-matched-modal
){background:rgba(15, 23, 42, 0.3);contain:layout paint style!important;}
html.portal-guru-profile-lite-v12 :is(
  .individual-profile-dialog,
  .individual-card-dialog,
  .employee-id-card-dialog,
  .employee-profile-matched-dialog
){background:var(--theme-surface,#fff);box-shadow:0 18px 48px rgba(15, 23, 42, 0.18);transform:none!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;}
html.portal-guru-profile-lite-v12 #root{filter:none!important;-webkit-filter:none!important;}
html[data-clay-theme="v228"] .employee-accreditation-v128-hero :is(small,h1,h2,h3,p,span,b,strong){opacity:1!important;}

#teacherTeachingJournalV01 :is(.tjv01-stat,.tjv01-toolbar,.tjv01-panel,.tjv01-mobile-card,.tjv01-form section) :is(p,small,.muted){color:#53697e;-webkit-text-fill-color:#53697e!important;opacity:1!important;}
.teacher-student-form-modal-v16{overflow:hidden!important;overscroll-behavior:contain!important;touch-action:pan-y!important;}
.teacher-student-form-card-v16{display:flex!important;min-height:0!important;flex-direction:column!important;overflow:hidden!important;contain:layout style!important;}
.teacher-student-form-v16{flex:1 1 auto!important;min-height:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
@media (max-width: 760px){.teacher-student-form-modal-v16{align-items:flex-start!important;justify-content:center!important;height:100dvh!important;padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left))!important;}
.teacher-student-form-card-v16{width:min(100%, 430px)!important;max-width:430px!important;max-height:calc(100dvh - max(16px, env(safe-area-inset-top)) - max(16px, env(safe-area-inset-bottom)))!important;margin:0 auto!important;border-radius:var(--radius-4xl,22px);transform:none!important;}
.teacher-student-form-card-v16 > :first-child{position:relative!important;top:auto!important;flex:0 0 auto!important;padding:14px 15px!important;}
.teacher-student-form-v16{padding:15px!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;scroll-padding:14px 0 calc(28px + env(safe-area-inset-bottom))!important;}
.teacher-student-form-v16 .teacher-student-form-row-v16{display:grid!important;grid-template-columns:minmax(0, 1fr)!important;gap:14px!important;}
.teacher-student-form-v16 :is(input,select,textarea){width:100%!important;min-width:0!important;min-height:46px!important;font-size:16px;}
.portal-eskul-host-open, .portal-eskul-app.is-open, .portal-eskul-app.is-open .portal-eskul-workspace, .portal-eskul-app.is-open .portal-eskul-content{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;touch-action:pan-y!important;}
.portal-eskul-app.is-open{display:block!important;}
.portal-eskul-app.is-open .portal-eskul-workspace{display:block!important;}
.portal-eskul-app.is-open .portal-eskul-content{padding:14px 12px calc(112px + env(safe-area-inset-bottom))!important;-webkit-overflow-scrolling:auto!important;}
.portal-eskul-app.is-open :is(.portal-eskul-simple-grid,.portal-eskul-simple-grid.meeting,.portal-eskul-add-grid){grid-template-columns:minmax(0, 1fr)!important;}
.portal-eskul-app.is-open .portal-eskul-inline-form{padding:15px!important;border-radius:var(--radius-2xl,18px);}
.portal-eskul-app.is-open .portal-eskul-inline-form > footer, .portal-eskul-app.is-open .portal-eskul-attendance-form > footer{position:static!important;bottom:auto!important;z-index:auto!important;display:grid!important;grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr)!important;gap:9px!important;margin-top:18px!important;padding:14px 0 0!important;background:transparent;}
.portal-eskul-app.is-open .portal-eskul-inline-form > footer button, .portal-eskul-app.is-open .portal-eskul-attendance-form > footer button{width:100%!important;min-width:0!important;min-height:46px!important;margin:0!important;font-size:12px;}
.portal-eskul-app.is-open :is(.portal-eskul-inline-form,.portal-eskul-panel) :is(input,select,textarea){min-height:46px!important;font-size:16px;}}
@media (max-width: 760px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body.portal-eskul-member-modal-open{overflow:hidden!important;overscroll-behavior:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-modal-backdrop{position:fixed!important;inset:0!important;top:0!important;bottom:auto!important;display:flex!important;width:100vw!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;padding:max(9px, env(safe-area-inset-top)) max(9px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(9px, env(safe-area-inset-left))!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact.portal-keyboard-surface, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact.portal-mobile-form-overlay{position:relative!important;inset:auto!important;top:auto!important;bottom:auto!important;display:grid!important;grid-template-rows:auto minmax(0, 1fr) auto!important;width:min(100%, 540px)!important;height:auto!important;min-height:0!important;max-height:min(600px, calc(100dvh - 18px))!important;margin:auto!important;padding:0!important;overflow:hidden!important;transform:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact::before, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact::after{display:none!important;content:none!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{position:static!important;min-height:0!important;padding:14px 15px 11px!important;background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header h3{margin:0!important;font-size:18px;line-height:1.25;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-keyboard-scroll, html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-mobile-form-dialog{display:grid!important;grid-template-columns:minmax(0, 1fr)!important;align-content:start!important;gap:10px!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:12px 15px!important;overflow-x:hidden!important;overflow-y:auto!important;scroll-padding:10px 0!important;overscroll-behavior-y:contain!important;touch-action:pan-y!important;-webkit-overflow-scrolling:touch!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact :is(input, select, textarea){min-height:44px!important;padding:10px 12px!important;font-size:16px;scroll-margin:10px 0!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{position:static!important;display:grid!important;grid-template-columns:minmax(0, .78fr) minmax(0, 1.22fr)!important;gap:8px!important;width:100%!important;margin:0!important;padding:10px 15px calc(11px + env(safe-area-inset-bottom))!important;background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer > button{width:100%!important;min-width:0!important;min-height:44px!important;margin:0!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-modal-backdrop, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-modal-backdrop, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-modal-backdrop{height:var(--portal-visual-height, var(--portal-eskul-viewport-height, 100dvh))!important;max-height:var(--portal-visual-height, var(--portal-eskul-viewport-height, 100dvh))!important;padding:6px!important;align-items:stretch!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact{width:min(100%, 540px)!important;height:100%!important;max-height:100%!important;}
html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact > header p, html[data-portal-brand="guru"].portal-mobile-keyboard-open body .portal-eskul-member-modal.is-compact > header small, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact > header p, html[data-portal-brand="guru"] body.portal-keyboard-open .portal-eskul-member-modal.is-compact > header small, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact > header p, html[data-portal-brand="guru"] body.portal-eskul-keyboard-open .portal-eskul-member-modal.is-compact > header small{display:none!important;}}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] > .portal-eskul-flat-form-dialog{position:relative!important;display:flex!important;min-height:0!important;flex-direction:column!important;grid-template:none!important;overflow:hidden!important;isolation:isolate!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] > .portal-eskul-flat-form-dialog::before, html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] > .portal-eskul-flat-form-dialog::after, html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head::before, html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head::after{display:none!important;content:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head{position:relative!important;inset:auto!important;z-index:3!important;display:flex!important;width:100%!important;min-height:0!important;flex:0 0 auto!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin:0!important;padding:13px 15px 11px!important;overflow:visible!important;border-bottom:1px solid var(--theme-border,#d9e8f5)!important;background:var(--theme-surface,#fff);transform:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head > div{position:static!important;display:block!important;min-width:0!important;flex:1 1 auto!important;margin:0!important;padding:0!important;transform:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head :is(small, h2, p){position:static!important;inset:auto!important;display:block!important;width:auto!important;height:auto!important;transform:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head h2{margin:2px 0 0!important;font-size:18px;line-height:1.2;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head p{margin:4px 0 0!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head > .portal-eskul-modal-close{position:relative!important;inset:auto!important;flex:0 0 auto!important;margin:0!important;transform:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm{position:relative!important;inset:auto!important;z-index:1!important;display:flex!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;flex:1 1 auto!important;flex-direction:column!important;margin:0!important;padding:0!important;overflow:hidden!important;border:0;border-radius:0;background:var(--theme-surface,#fff);box-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > input[type="hidden"]{display:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > .portal-eskul-simple-grid{position:relative!important;inset:auto!important;order:1!important;display:grid!important;min-height:0!important;flex:1 1 auto!important;align-content:start!important;margin:0!important;padding:14px 15px 18px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;scroll-padding:14px 0 18px!important;touch-action:pan-y!important;transform:none!important;-webkit-overflow-scrolling:touch!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > .portal-eskul-category-note{order:2!important;flex:0 0 auto!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > .portal-eskul-form-status{order:3!important;flex:0 0 auto!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > footer{position:relative!important;inset:auto!important;order:4!important;z-index:3!important;display:grid!important;width:100%!important;min-height:0!important;flex:0 0 auto!important;margin:0!important;padding:9px 15px 12px!important;border-top:1px solid var(--theme-border,#d9e8f5)!important;background:var(--theme-surface,#fff);transform:none!important;}
@media (max-width: 760px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] > .portal-eskul-flat-form-dialog{width:min(100%, 520px)!important;height:calc(100% - 12px)!important;min-height:0!important;max-height:calc(100% - 12px)!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head{padding:11px 12px 9px!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head small{margin:0!important;font-size:9px;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head h2{margin-top:2px!important;font-size:17px;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] .portal-eskul-flat-form-head p{display:none!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > .portal-eskul-simple-grid{grid-template-columns:minmax(0, 1fr)!important;gap:11px!important;padding:13px 12px 18px!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > footer{grid-template-columns:minmax(0, .78fr) minmax(0, 1.22fr)!important;gap:8px!important;padding:8px 12px calc(9px + env(safe-area-inset-bottom))!important;}}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04].eduvia-data-admin-actions-v04 > :is(button, label), html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04].eduvia-data-admin-actions-v04 button{border:1px solid var(--eduvia-guru-blue);border-radius:var(--radius-md,10px);background:var(--eduvia-guru-blue);background-image:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:none;filter:none!important;opacity:1!important;text-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04].eduvia-data-admin-actions-v04 > :is(button, label):hover, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04].eduvia-data-admin-actions-v04 button:hover{border-color:var(--eduvia-guru-blue-strong);background:var(--eduvia-guru-blue-strong);background-image:none;box-shadow:none;filter:none!important;transform:none!important;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button[data-eduvia-button-tone="danger"], html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button[data-eduvia-button-preserve="delete"], html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button[data-eduvia-button-tone="danger"], html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button[data-eduvia-button-preserve="delete"]{border-color:var(--eduvia-guru-danger);background:var(--eduvia-guru-danger);background-image:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:none;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button[data-eduvia-button-tone="danger"]:hover, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button[data-eduvia-button-preserve="delete"]:hover, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button[data-eduvia-button-tone="danger"]:hover, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button[data-eduvia-button-preserve="delete"]:hover{border-color:var(--eduvia-guru-danger-hover);background:var(--eduvia-guru-danger-hover);background-image:none;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > :is(button, label) :is(svg, i, span), html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button :is(svg, i, span){color:inherit;-webkit-text-fill-color:inherit!important;stroke:currentColor;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button:active, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button:active{box-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-toolbar-v04] > button:disabled, html[data-portal-brand="guru"] body #root [data-eduvia-data-admin-panel-v04] button:disabled{opacity:.58!important;cursor:not-allowed!important;}
@media (max-width: 767px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body
    .portal-nav-mobile:not(.student-mobile-nav){z-index:500!important;visibility:visible!important;pointer-events:auto!important;}}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > footer > button, html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"] .portal-eskul-member-modal.is-compact > footer > button{position:relative!important;inset:auto!important;display:inline-flex!important;width:100%!important;min-width:0!important;min-height:44px!important;align-items:center!important;justify-content:center!important;gap:7px!important;margin:0!important;padding:0 14px!important;overflow:hidden!important;border-radius:var(--radius-md-lg,12px);font-size:12px;font-weight:900;line-height:1;letter-spacing:0;text-align:center!important;white-space:nowrap!important;vertical-align:middle!important;box-sizing:border-box!important;}
html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > footer > button > svg, html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"] .portal-eskul-member-modal.is-compact > footer > button > svg{position:static!important;inset:auto!important;display:block!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;flex:0 0 16px!important;align-self:center!important;margin:0!important;padding:0!important;color:inherit;stroke:currentColor;transform:none!important;vertical-align:middle!important;box-sizing:border-box!important;}
@media (max-width: 760px), (max-width: 900px) and (pointer: coarse){html[data-portal-brand="guru"] body > .portal-eskul-flat-form-backdrop[data-portal-eskul-program-floating="true"] #portalEskulProgramForm > footer > button, html[data-portal-brand="guru"] body > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"] .portal-eskul-member-modal.is-compact > footer > button{min-height:46px!important;gap:7px!important;padding-inline:11px!important;font-size:12px;}}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact{width:min(480px, calc(100vw - 28px))!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > header{padding:14px 16px 11px!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact .portal-eskul-modal-body.portal-eskul-manual-grid{grid-template-columns:minmax(0, 1fr) minmax(150px, .78fr)!important;gap:10px 12px!important;padding:12px 16px!important;}
html[data-portal-brand="guru"] body .portal-eskul-member-modal.is-compact > footer{padding:10px 16px 13px!important;}
html[data-portal-brand="guru"] #root header > div:last-child > span[class~="bg-amber-50"][class~="text-amber-500"]{display:none!important;visibility:hidden!important;width:0!important;min-width:0!important;max-width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;}
html[data-portal-brand="guru"] #root header > div:last-child > button:has(> svg):not(.portal-premium-status), html[data-portal-brand="guru"] #root header #portal-subscription-notifications, html[data-portal-brand="guru"] #root header #portal-subscription-notifications .psn-button, html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"]{box-sizing:border-box!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-radius:var(--radius-lg,14px);}
html[data-portal-brand="guru"] #root header > div:last-child > button:has(> svg):not(.portal-premium-status), html[data-portal-brand="guru"] #root header #portal-subscription-notifications .psn-button{border:1px solid rgba(8, 104, 166, .12);background:#f6fbfe;color:var(--tone-0875bf);box-shadow:0 5px 16px rgba(13, 67, 103, .055);}
html[data-portal-brand="guru"] #root header > div:last-child > button:has(> svg):not(.portal-premium-status) > svg, html[data-portal-brand="guru"] #root header #portal-subscription-notifications .psn-button svg{width:20px!important;height:20px!important;max-width:20px!important;max-height:20px!important;}
html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"]{border:2px solid var(--theme-surface,#fff);background:var(--tone-eaf5fc);box-shadow:0 0 0 1px rgba(8, 104, 166, .15), 0 5px 16px rgba(13, 67, 103, .075);}
html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"] > img{display:block!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;box-shadow:none;}
html[data-portal-brand="guru"] #root header > div:last-child > .relative:has(> button[aria-label="Buka profil"]){box-sizing:border-box!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="guru"] #root header > div:last-child{align-items:center!important;gap:8px!important;}
@media (hover:hover) and (pointer:fine){html[data-portal-brand="guru"] #root header > div:last-child > button:has(> svg):not(.portal-premium-status):hover, html[data-portal-brand="guru"] #root header #portal-subscription-notifications .psn-button:hover, html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"]:hover{transform:translateY(-1px)!important;border-color:rgba(7, 142, 232, .28);box-shadow:0 7px 18px rgba(13, 67, 103, .09);}}
@media (max-width:760px){html[data-portal-brand="guru"] #root header{overflow:visible!important;}}
@media (max-width:340px){html[data-portal-brand="guru"] #root header > div:last-child{gap:6px!important;}
}
.portal-eskul-v09-select-wrap{display:none;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-selector{display:grid!important;grid-template-columns:max-content minmax(220px,420px)!important;justify-content:start!important;align-items:center!important;gap:12px!important;min-width:0!important;padding:11px 0 2px!important;border-top:1px solid rgba(148,163,184,.20)!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs-head{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;min-width:max-content!important;white-space:nowrap!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs-head b{margin:0!important;font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.065em;color:var(--theme-text-muted,#60758d);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs-head button{width:32px!important;height:32px!important;min-width:32px!important;border-radius:var(--radius-md,10px);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-school-sync-badge{max-width:116px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs{display:block!important;width:100%!important;min-width:0!important;max-width:420px!important;overflow:visible!important;padding:0!important;margin:0!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs > button[data-eskul-select-program], html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs > p{display:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select-wrap{position:relative!important;display:block!important;width:100%!important;min-width:0!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select{box-sizing:border-box!important;display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:44px!important;margin:0!important;padding:0 42px 0 15px!important;border:1px solid rgba(7,142,232,.30);border-radius:var(--radius-lg,14px);outline:none;appearance:none!important;-webkit-appearance:none!important;background:linear-gradient(180deg,rgba(255,255,255,.99) 0%,var(--tone-f7fbff) 100%);color:#164e63;box-shadow:0 7px 20px var(--tone-1dff4ce9), inset 0 1px 0 rgba(255,255,255,.92);font:inherit;font-size:13px;line-height:1;font-weight:750;letter-spacing:0;text-overflow:ellipsis!important;white-space:nowrap!important;cursor:pointer!important;-webkit-tap-highlight-color:transparent!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select:hover{border-color:rgba(7,142,232,.46);background:var(--theme-surface,#fff);box-shadow:0 9px 24px rgba(15,23,42,.065), 0 0 0 3px rgba(7,142,232,.045);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select:focus{border-color:var(--theme-primary,#078ee8);box-shadow:0 0 0 3px rgba(7,142,232,.10), 0 9px 24px var(--tone-09a9070d,rgba(15,23,42,.06));background:var(--theme-surface,#fff);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select:disabled{opacity:.68!important;cursor:default!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select-arrow{position:absolute!important;top:50%!important;right:13px!important;width:20px!important;height:20px!important;transform:translateY(-50%)!important;display:grid!important;place-items:center!important;pointer-events:none!important;color:var(--theme-primary,#078ee8);}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select-arrow svg{width:17px!important;height:17px!important;display:block!important;}
@media (max-width:767px){html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-selector{grid-template-columns:max-content minmax(0,1fr)!important;gap:10px!important;padding:10px 12px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs{max-width:none!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs-head button{width:30px!important;height:30px!important;min-width:30px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-school-sync-badge{max-width:92px!important;}}
@media (max-width:390px){html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-program-selector{gap:8px!important;padding-left:10px!important;padding-right:10px!important;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-side-programs-head b{font-size:10px;}
html[data-portal-brand="guru"] body #portalGuruEskulApp .portal-eskul-v09-select{height:42px!important;padding-left:12px!important;padding-right:36px!important;border-radius:13px;font-size:12px;}}
html[data-portal-brand="guru"] button[data-eduvia-tab-icon-v218]{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;}
html[data-portal-brand="guru"] button[data-eduvia-tab-icon-v218] > svg{display:none!important;}
html[data-portal-brand="guru"] button[data-eduvia-tab-icon-v218]::before{content:"";display:block;flex:0 0 16px;width:16px;height:16px;background:currentColor;-webkit-mask:var(--eduvia-tab-icon-v218) center / contain no-repeat;mask:var(--eduvia-tab-icon-v218) center / contain no-repeat;}
button[data-eduvia-tab-icon-v218="grade-input"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V2h6v2M8 13l2 2 5-5'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="task-list"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11'/%3E%3Ccircle cx='4' cy='6' r='1' fill='black' stroke='none'/%3E%3Ccircle cx='4' cy='12' r='1' fill='black' stroke='none'/%3E%3Ccircle cx='4' cy='18' r='1' fill='black' stroke='none'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="material-bank"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5a2 2 0 0 1 2-2h5a2 2 0 0 1 2 2v16a2 2 0 0 0-2-2H3zM21 5a2 2 0 0 0-2-2h-5a2 2 0 0 0-2 2v16a2 2 0 0 1 2-2h7z'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="grade-summary"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 19V9M10 19V5M16 19v-7M22 19V3M2 19h20'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="attendance-daily"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18M8 15l2 2 5-5'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="attendance-history"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8M3 3v5h5M12 7v5l3 2'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="attendance-summary"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V2h6v2M9 17v-3M12 17v-6M15 17v-4'/%3E%3C/svg%3E");}
button[data-eduvia-tab-icon-v218="attendance-scan"]{--eduvia-tab-icon-v218:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8V5a2 2 0 0 1 2-2h3M16 3h3a2 2 0 0 1 2 2v3M21 16v3a2 2 0 0 1-2 2h-3M8 21H5a2 2 0 0 1-2-2v-3M7 12h10'/%3E%3C/svg%3E");}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar{gap:12px!important;padding:12px 14px!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]{display:flex!important;width:auto!important;min-width:0!important;align-items:center!important;justify-content:flex-end!important;flex:1 1 auto!important;flex-wrap:wrap!important;gap:8px!important;margin:0!important;padding:0!important;overflow:visible!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > :is(select, button, label){box-sizing:border-box!important;width:auto!important;min-width:0!important;height:48px!important;min-height:48px!important;max-height:48px!important;flex:0 0 auto!important;margin:0!important;border-radius:var(--radius-md-lg,12px);box-shadow:none;filter:none!important;font-size:13px;font-weight:400;line-height:1;letter-spacing:0;white-space:nowrap!important;transform:none!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > :is(button, label:not(.student-record-class-filter)){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 16px!important;border:1px solid var(--tone-0a84ff,#0a84ff);background:var(--tone-0a84ff,#0a84ff);background-image:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;text-shadow:none;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > :is(button, label:not(.student-record-class-filter)):hover{border-color:#006edc;background:#006edc;background-image:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;box-shadow:none;transform:none!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > button:is(
    [data-eduvia-button-preserve="delete"],
    [data-eduvia-button-tone="danger"],
    [class~="bg-red-500"],
    [class~="bg-red-600"]
  ){border-color:#d92d3f;background:#d92d3f;background-image:none;color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > button:is(
    [data-eduvia-button-preserve="delete"],
    [data-eduvia-button-tone="danger"],
    [class~="bg-red-500"],
    [class~="bg-red-600"]
  ):hover{border-color:#b42335;background:#b42335;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > select, html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > .student-record-class-filter{border:1px solid #d8e1ea;background:var(--theme-surface-soft,#f7fbff);background-image:none;color:var(--theme-text-strong,#123d6b);-webkit-text-fill-color:var(--theme-text-strong,#123d6b)!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > select{min-width:146px!important;padding:0 34px 0 14px!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > .student-record-class-filter{display:inline-flex!important;min-width:176px!important;max-width:218px!important;align-items:center!important;gap:7px!important;padding:5px 7px 5px 12px!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > .student-record-class-filter > span{display:inline!important;flex:0 0 auto!important;color:var(--theme-text-secondary,#50657e);-webkit-text-fill-color:var(--theme-text-secondary,#50657e)!important;font-size:11px;font-weight:400;line-height:1;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > .student-record-class-filter > select{width:auto!important;min-width:110px!important;max-width:148px!important;height:36px!important;min-height:36px!important;margin:0!important;padding:0 25px 0 8px!important;border:0;border-radius:var(--radius-xs,6px);background:transparent;background-color:transparent;color:var(--tone-1f2937,#1f2937);-webkit-text-fill-color:var(--tone-1f2937,#1f2937)!important;box-shadow:none;font-size:13px;font-weight:400;opacity:1!important;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > :is(select, .student-record-class-filter):focus-within{border-color:#8bbce8;background:var(--theme-surface,#fff);box-shadow:0 0 0 2px rgba(10, 132, 255, .10);outline:0;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  svg{width:18px!important;height:18px!important;flex:0 0 18px!important;color:inherit;stroke:currentColor;}
html[data-portal-brand="guru"] body #root
  .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
  > :is(button, label):disabled{opacity:.52!important;cursor:not-allowed!important;}
@media (max-width: 767px){html[data-portal-brand="guru"] body #root
    .student-record-toolbar{gap:9px!important;padding:10px!important;}
html[data-portal-brand="guru"] body #root
    .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]{width:100%!important;justify-content:flex-start!important;flex-wrap:nowrap!important;padding:1px 1px 4px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch;}
html[data-portal-brand="guru"] body #root
    .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
    > .student-record-class-filter{order:-3!important;width:auto!important;min-width:176px!important;max-width:218px!important;}
html[data-portal-brand="guru"] body #root
    .student-record-toolbar-actions[data-eduvia-data-admin-toolbar-v04]
    > :is(select, button, label){scroll-snap-align:start;}}
/* V114R: legacy unified-header CSS removed; canonical Portal Guru header only. */
@media (min-width: 768px){html[data-portal-brand="guru"]
    #root
    .portal-guru-category-tabs-v133[class~="md:hidden"]{display:none!important;}}
html[data-portal-brand="guru"]
  body
  > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]
  .portal-eskul-member-detail-modal
  > footer
  > [data-eskul-save-member-changes]{position:static!important;display:inline-flex!important;width:auto!important;min-width:190px!important;min-height:44px!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:0!important;padding:0 18px!important;overflow:hidden!important;border-radius:13px;font-size:12px;font-weight:900;line-height:1;letter-spacing:0;text-align:center!important;white-space:nowrap!important;box-sizing:border-box!important;}
html[data-portal-brand="guru"]
  body
  > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]
  .portal-eskul-member-detail-modal
  > footer
  > [data-eskul-save-member-changes]
  > svg{position:static!important;inset:auto!important;display:block!important;width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;flex:0 0 16px!important;margin:0!important;padding:0!important;color:inherit;stroke:currentColor;transform:none!important;box-sizing:border-box!important;}
@media (max-width: 560px){html[data-portal-brand="guru"]
    body
    > .portal-eskul-modal-backdrop[data-portal-eskul-floating="true"]
    .portal-eskul-member-detail-modal
    > footer
    > [data-eskul-save-member-changes]{width:100%!important;min-width:0!important;padding-inline:12px!important;}}
html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"]{box-sizing:border-box!important;display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;flex:0 0 42px!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-radius:var(--radius-pill,999px);background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important;}
html[data-portal-brand="guru"] #root header :is(.relative,.header-actions)>button[aria-label="Buka profil"],
html[data-portal-brand="guru"] #root header .relative:has(>button[aria-label="Buka profil"]){visibility:visible!important;opacity:1!important;}
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header button[aria-label="Buka profil"]{background-image:var(--eduvia-guru-profile-photo-v27);background-color:var(--tone-eaf5fc);}
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header button[aria-label="Buka profil"]>img,
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header button[aria-label="Buka profil"]>svg{opacity:0!important;visibility:hidden!important;pointer-events:none!important;}
html[data-portal-brand="guru"] #root header .portal-guru-native-profile-avatar-menu{flex:0 0 48px!important;background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important;}
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header .portal-guru-native-profile-avatar-menu{background-image:var(--eduvia-guru-profile-photo-v27);background-color:var(--tone-eaf5fc);}
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header .portal-guru-native-profile-avatar-menu>img,
html[data-portal-brand="guru"].eduvia-guru-profile-photo-active-v27 #root header .portal-guru-native-profile-avatar-menu>svg{opacity:0!important;visibility:hidden!important;}
html[data-portal-brand="guru"] #root header [data-portal-guru-bk-header-visible-v224="profile"]{visibility:visible!important;opacity:1!important;}
@media (max-width:340px){html[data-portal-brand="guru"] #root header button[aria-label="Buka profil"]{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;flex-basis:40px!important;}}

.school-documents-v33-shell{display:flex;width:100%;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #dce8f2;border-radius:20px;background:var(--tone-f7faff,#f7faff);}
.school-documents-v33-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:23px 25px;border-bottom:1px solid #e3edf5;background:linear-gradient(135deg,var(--tone-087dc8),#0aa0e6);color:var(--theme-surface,#fff);}
.school-documents-v33-head small{display:block;font-size:10px;font-weight:900;letter-spacing:.13em;color:#d9f2ff;}
.school-documents-v33-head h2{margin:4px 0 3px;font-size:23px;font-weight:900;}
.school-documents-v33-head p{margin:0;color:#e5f5ff;font-size:12px;}
.school-documents-v33-preview-heading button{display:grid;flex:0 0 39px;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.13);color:var(--theme-surface,#fff);cursor:pointer;}
.school-documents-v33-body{min-width:0;min-height:260px;padding:20px 22px 24px;}
.school-documents-v33-feedback{margin:0;padding:0 22px 16px;color:#b20e3d;font-size:13px;}
.school-documents-v33-feedback:empty{display:none;}
.school-documents-v33-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px;padding:14px 16px;border:1px solid #e1ebf3;border-radius:17px;background:var(--theme-surface,#fff);}
.school-documents-v33-toolbar b{display:block;color:#223e57;font-size:13px;}
.school-documents-v33-toolbar small{display:block;margin-top:2px;color:#7b90a4;font-size:10px;}
.school-documents-v33-toolbar button,.school-documents-v33-actions button,.school-documents-v33-error button{min-height:40px;border:0;border-radius:11px;padding:9px 13px;background:var(--tone-eaf6ff);color:#0877bf;font-size:10px;font-weight:900;cursor:pointer;}
.school-documents-v33-toolbar button:hover,.school-documents-v33-actions button:hover{background:var(--tone-087dc8);color:var(--theme-surface,#fff);}
.school-documents-v33-list{display:grid;gap:10px;}
.school-documents-v33-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid #e2ebf2;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);box-shadow:0 7px 20px rgba(20,55,85,.035);}
.school-documents-v33-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:var(--radius-lg,14px);background:var(--tone-eaf6ff);color:var(--tone-087dc8);}
.school-documents-v33-icon svg{width:23px;height:23px;}
.school-documents-v33-copy{min-width:0;}
.school-documents-v33-copy b{display:block;overflow:hidden;color:#273f56;font-size:13px;text-overflow:ellipsis;white-space:nowrap;}
.school-documents-v33-copy span{display:block;margin-top:4px;color:#8496a6;font-size:10px;}
.school-documents-v33-actions{display:flex;gap:7px;}
.school-documents-v33-actions button:last-child{background:var(--tone-087dc8);color:var(--theme-surface,#fff);}
.school-documents-v33-actions button:disabled{opacity:.55;cursor:wait;}
.school-documents-v33-loading,.school-documents-v33-empty,.school-documents-v33-error{display:flex;min-height:250px;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;color:#7890a3;}
.school-documents-v33-loading span{width:30px;height:30px;margin-bottom:12px;border:3px solid #d7ebf9;border-top-color:var(--tone-087dc8);border-radius:50%;}
.school-documents-v33-loading b,.school-documents-v33-empty b,.school-documents-v33-error b{color:#365269;font-size:14px;}
.school-documents-v33-empty>div{display:grid;width:56px;height:56px;margin-bottom:12px;place-items:center;border-radius:17px;background:var(--tone-eaf6ff);color:var(--tone-087dc8);}
.school-documents-v33-empty svg{width:28px;height:28px;}
.school-documents-v33-empty p,.school-documents-v33-error p{max-width:520px;margin:6px 0 0;font-size:11px;line-height:1.6;}
.school-documents-v33-error button{margin-top:14px;background:var(--tone-087dc8);color:var(--theme-surface,#fff);}
.school-documents-v33-preview[hidden]{display:none!important;}
.school-documents-v33-preview{min-width:0;padding:20px 22px 0;}
.school-documents-v33-preview>section{display:flex;width:100%;height:clamp(300px,65dvh,720px);flex-direction:column;overflow:hidden;border:1px solid #dce8f2;border-radius:16px;background:var(--theme-surface,#fff);}
.school-documents-v33-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;background:#123e62;color:var(--theme-surface,#fff);}
.school-documents-v33-preview-heading b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap;}
.school-documents-v33-preview-heading button{width:34px;height:34px;flex-basis:34px;font-size:22px;}
.school-documents-v33-preview>section>div:not(.school-documents-v33-preview-heading){display:grid;min-height:0;flex:1;place-items:center;overflow:auto;background:#eef3f7;}
.school-documents-v33-preview iframe,.school-documents-v33-preview img{width:100%;height:100%;border:0;object-fit:contain;}
.school-documents-v33-preview-empty{padding:25px;text-align:center;color:#62798d;}
.school-documents-v33-preview-empty p{font-size:11px;}
@media (max-width:700px){.school-documents-v33-shell{border-radius:16px;}
.school-documents-v33-head{padding:18px;}
.school-documents-v33-head h2{font-size:20px;}
.school-documents-v33-body{padding:14px;}
.school-documents-v33-card{grid-template-columns:42px minmax(0,1fr);gap:10px;padding:12px;}
.school-documents-v33-icon{width:42px;height:42px;}
.school-documents-v33-actions{grid-column:1/-1;}
.school-documents-v33-actions button{flex:1;}
.school-documents-v33-preview{padding:14px 14px 0;}}
.portal-guru-data-student-cards-v34{min-width:0;min-height:320px;display:block;}
.portal-guru-data-student-cards-v34>.portal-student-card-directory{min-height:320px;}
@media (max-width: 767px){body > aside.portal-guru-bk-sidebar-v224 .side-group > nav.side-nav
    > button.portal-guru-mobile-logout-red-v48,
  body > aside.portal-guru-bk-sidebar-v224 .side-group > nav.side-nav
    > button[data-portal-guru-account-action-v228="logout"][data-portal-guru-account-scope-v228="mobile"]{box-sizing:border-box!important;}


}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 [data-portal-guru-account-action-v228],
html[data-portal-brand="guru"] body #root .portal-nav-desktop > [data-portal-guru-account-action-v228]{position:relative!important;z-index:4!important;pointer-events:auto!important;touch-action:manipulation!important;animation:none!important;transition:none!important;transform:none!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;}
@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;}}
#portal-subscription-notifications{position:relative;z-index:90;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;}
#portal-subscription-notifications[hidden]{display:none!important;}
.psn-button{width:42px;height:42px;border:1px solid var(--theme-border,#d9e8f5);border-radius:var(--radius-lg,14px);background:var(--theme-surface,#fff);color:var(--theme-text-strong,#123d6b);display:grid;place-items:center;box-shadow:0 5px 16px var(--tone-0305fa36,rgba(15,23,42,.08));cursor:pointer;position:relative;}
.psn-button:hover{color:var(--theme-primary-mid,#1264ad);border-color:var(--theme-primary-border-strong,#b8d9f3);background:var(--tone-f0fdf4,#f0fdf4);transform:translateY(-1px);}
.psn-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.psn-badge{position:absolute;right:-7px;top:-7px;background:#ef233c;color:var(--theme-surface,#fff);border:3px solid var(--theme-surface,#fff);border-radius:var(--radius-pill,999px);min-width:23px;height:23px;padding:0 5px;font-size:11px;font-weight:900;line-height:17px;display:grid;place-items:center;box-shadow:0 5px 12px rgba(239,35,60,.35);}
.psn-panel{right:0;top:52px;width:min(390px,calc(100vw - 28px));max-height:min(540px,calc(100vh - 100px));overflow:auto;background:var(--theme-surface,#fff);border:1px solid var(--theme-border,#d9e8f5);border-radius:var(--radius-4xl,22px);box-shadow:0 24px 70px rgba(15,23,42,.22);padding:0;overscroll-behavior:contain;}
.psn-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px;background:var(--tone-da3d8a08,rgba(255,255,255,.96));border-bottom:1px solid var(--tone-eef2f7,#eef2f7);}
.psn-title{display:flex;align-items:center;gap:10px;}
.psn-title i{width:34px;height:34px;border-radius:11px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-mid,#1264ad);display:grid;place-items:center;font-style:normal;}
.psn-title strong{display:block;font-size:15px;color:var(--theme-text,#0a2342);}
.psn-title small{display:block;font-size:10px;color:var(--theme-text-muted,#60758d);margin-top:2px;}
.psn-actions{display:flex;align-items:center;gap:6px;}
.psn-read-all,.psn-clear-all,.psn-close{border:0;border-radius:9px;padding:7px 9px;cursor:pointer;font-size:10px;font-weight:800;}
.psn-read-all{background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-strong,#173f70);}.psn-clear-all{background:#fff1f2;color:#be123c;border:1px solid #fecdd3!important;}
.psn-close{background:var(--theme-surface-muted,#edf5fc);color:var(--theme-text-secondary,#50657e);}
.psn-list{padding:10px;}
.psn-item{width:100%;text-align:left;padding:13px 13px 13px 17px;border-radius:15px;background:var(--theme-surface,#fff);margin:3px 0;border:0;position:relative;cursor:pointer;display:block;}
.psn-item:hover{background:var(--theme-surface-soft,#f7fbff);}
.psn-item.unread{background:var(--tone-f0fdf4,#f0fdf4);}
.psn-item.unread:before{content:"";position:absolute;left:7px;top:19px;width:7px;height:7px;border-radius:50%;background:#ef233c;box-shadow:0 0 0 3px var(--tone-fee2e2,#fee2e2);}
.psn-item.read{background:#f1f5f9;}
.psn-item.read b,.psn-item.read p,.psn-item.read .psn-meta{color:#94a3b8;}
.psn-item.read .psn-meta em{color:#94a3b8;}
.psn-item b{display:block;color:var(--theme-text,#0a2342);font-size:13px;padding-left:3px;}
.psn-item p{color:var(--theme-text-secondary,#50657e);font-size:12px;line-height:1.55;margin:6px 0 0;padding-left:3px;}
.psn-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;padding-left:3px;color:var(--theme-text-subtle,#7e90a5);font-size:10px;}
.psn-meta em{font-style:normal;font-weight:800;color:var(--theme-primary-mid,#1264ad);}
.psn-empty{text-align:center;font-size:12px;color:var(--theme-text-muted,#60758d);padding:34px 18px;}
.psn-empty span{display:block;font-size:30px;margin-bottom:8px;}
@media (max-width:640px){#portal-subscription-notifications{width:42px;height:42px;order:90;}
.psn-panel{position:fixed;right:12px;top:70px;width:calc(100vw - 24px);max-height:calc(100dvh - 88px);}
.psn-read-all{font-size:0;}
.psn-read-all:after{content:"Baca semua";font-size:10px;}}
[data-teacher-report-host-v110]{display:block!important;min-width:0!important;}
[data-teacher-report-host-v110] > :not(.teacher-report-page-v110){display:none!important;}
.teacher-report-page-v110{box-sizing:border-box;width:100%;min-width:0;padding:0 0 calc(96px + env(safe-area-inset-bottom));color:var(--theme-text,#0a2342);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.teacher-report-head-v110{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 24px;border:1px solid #0879c7;border-radius:24px 24px 0 0;background:linear-gradient(135deg,#0877bd,#0b9fe4);color:#fff;}
.teacher-report-head-v110 small{display:block;margin-bottom:5px;color:#dff4ff;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.teacher-report-head-v110 h2{margin:0;color:#fff;font-size:22px;line-height:1.2;}
.teacher-report-head-v110 p{margin:7px 0 0;max-width:650px;color:#eaf8ff;font-size:12px;line-height:1.5;}
.teacher-report-back-v110{flex:none;min-height:40px;padding:0 15px;border:1px solid rgba(255,255,255,.54);border-radius:12px;background:rgba(255,255,255,.14);color:#fff;font-weight:800;cursor:pointer;}
.teacher-report-back-v110:hover{background:rgba(255,255,255,.24);}
.teacher-report-layout-v110{box-sizing:border-box;display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:16px;padding:16px;border:1px solid #dbe8f3;border-top:0;border-radius:0 0 24px 24px;background:#f7faff;}
.teacher-report-form-v110,.teacher-report-list-v110{box-sizing:border-box;min-width:0;padding:18px;border:1px solid #dbe8f3;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(29,73,113,.05);}
.teacher-report-fields-v110{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:13px;}
.teacher-report-fields-v110 label{display:grid;gap:7px;min-width:0;color:#41576d;font-size:11px;font-weight:800;line-height:1.35;}
.teacher-report-fields-v110 input,.teacher-report-fields-v110 select{box-sizing:border-box;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #cfdeeb;border-radius:12px;background:#f9fbfd;color:#23384d;font:600 13px inherit;outline:none;}
.teacher-report-fields-v110 input:focus,.teacher-report-fields-v110 select:focus{border-color:#0b89da;box-shadow:0 0 0 3px rgba(11,137,218,.14);}
.teacher-report-fields-v110 input[type="file"]{padding:6px;}
.teacher-report-fields-v110 input[type="file"]::file-selector-button{min-height:32px;margin-right:9px;padding:6px 11px;border:0;border-radius:9px;background:#e5f3ff;color:#0874c5;font-weight:800;cursor:pointer;}
.teacher-report-full-v110{grid-column:1/-1;}
.teacher-report-status-v110{display:none;margin:14px 0 0;padding:11px 12px;border:1px solid #c8dff1;border-radius:11px;background:#eef7ff;color:#17669f;font-size:12px;font-weight:750;line-height:1.45;}
.teacher-report-status-v110:not(:empty){display:block;}
.teacher-report-status-v110[data-type="success"]{border-color:#a8dfbd;background:#effbf3;color:#15733d;}
.teacher-report-status-v110[data-type="error"]{border-color:#f0b8b8;background:#fff3f3;color:#a52626;}
.teacher-report-save-v110{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:45px;margin-top:14px;border:0;border-radius:12px;background:linear-gradient(180deg,#159be9,#0879c7);color:#fff;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(8,121,199,.22);}
.teacher-report-save-v110:disabled{opacity:.68;cursor:wait;box-shadow:none;}
.teacher-report-save-v110.is-loading::before{content:"";width:16px;height:16px;border:2px solid rgba(255,255,255,.42);border-top-color:#fff;border-radius:50%;animation:teacherReportSpinV110 .75s linear infinite;}
@keyframes teacherReportSpinV110{to{transform:rotate(360deg);}}
.teacher-report-list-title-v110{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;}
.teacher-report-list-title-v110 h3{margin:0;color:#20384e;font-size:16px;}
.teacher-report-list-title-v110 small{display:block;margin-top:3px;color:#74879a;font-size:11px;font-weight:700;}
.teacher-report-list-title-v110 button{min-height:34px;padding:7px 11px;border:1px solid #cfe2f2;border-radius:9px;background:#f0f8ff;color:#0875c7;font-size:11px;font-weight:850;cursor:pointer;}
.teacher-report-items-v110{display:grid;gap:10px;}
.teacher-report-item-v110{display:flex;align-items:center;gap:12px;min-width:0;padding:13px;border:1px solid #e0eaf2;border-radius:14px;background:#fbfdff;}
.teacher-report-item-copy-v110{min-width:0;flex:1;}
.teacher-report-item-v110 strong,.teacher-report-item-v110 small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.teacher-report-item-v110 strong{color:#273d51;font-size:13px;}
.teacher-report-item-v110 small{margin-top:4px;color:#718497;font-size:11px;}
.teacher-report-actions-v110{display:flex;flex:none;gap:7px;}
.teacher-report-actions-v110 a,.teacher-report-actions-v110 button{box-sizing:border-box;min-height:34px;padding:8px 10px;border:0;border-radius:9px;text-decoration:none;background:#e7f4ff;color:#0875c7;font-size:11px;font-weight:850;cursor:pointer;}
.teacher-report-actions-v110 button{background:#fff0f0;color:#b02b2b;}
.teacher-report-empty-v110,.teacher-report-loading-v110{padding:28px 12px;text-align:center;color:#8292a3;font-size:12px;font-weight:650;}
.teacher-upload-toast-v110{position:fixed;right:18px;bottom:18px;z-index:2147483605;max-width:min(390px,calc(100vw - 28px));padding:13px 16px;border:1px solid #b7d8ee;border-radius:13px;background:#fff;color:#24516f;box-shadow:0 14px 38px rgba(16,53,82,.22);font:750 12px/1.45 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.teacher-upload-toast-v110[data-type="success"]{border-color:#80cc9d;background:#ecfbf1;color:#146b38;}
.teacher-upload-toast-v110[data-type="error"]{border-color:#e7a5a5;background:#fff0f0;color:#a12424;}
@media (max-width:900px){.teacher-report-layout-v110{grid-template-columns:minmax(0,1fr);}}
@media (max-width:640px){.teacher-report-page-v110{padding-bottom:calc(108px + env(safe-area-inset-bottom));}.teacher-report-head-v110{flex-direction:column;padding:18px 16px;border-radius:18px 18px 0 0;}.teacher-report-head-v110 h2{font-size:20px;}.teacher-report-back-v110{width:100%;}.teacher-report-layout-v110{gap:11px;padding:11px;border-radius:0 0 18px 18px;}.teacher-report-form-v110,.teacher-report-list-v110{padding:14px;border-radius:14px;}.teacher-report-fields-v110{grid-template-columns:minmax(0,1fr);}.teacher-report-full-v110{grid-column:auto;}.teacher-report-fields-v110 input,.teacher-report-fields-v110 select{font-size:16px;}.teacher-report-item-v110{align-items:flex-start;flex-direction:column;}.teacher-report-actions-v110{width:100%;}.teacher-report-actions-v110 a,.teacher-report-actions-v110 button{flex:1;text-align:center;}.teacher-upload-toast-v110{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));}}
#portal-schedule-bell-v85{position:fixed;inset:0;z-index:2147483100;display:grid;place-items:center;padding:18px;background:rgba(8,18,30,.48);backdrop-filter:blur(5px);font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;}
#portal-schedule-bell-v85 .schedule-bell-card{position:relative;width:min(100%,470px);overflow:hidden;border:1px solid #b9cde0;border-radius:22px;background:#f8fbff;box-shadow:0 28px 76px rgba(2,18,31,.30),inset 0 1px 0 #fff;cursor:pointer;}
#portal-schedule-bell-v85 .schedule-bell-card::before{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(28,83,128,.022) 0 1px,transparent 1px 4px);content:"";}
#portal-schedule-bell-v85 .schedule-bell-head{position:relative;display:flex;align-items:center;gap:13px;padding:18px 20px;border-bottom:1px solid #c8d9e8;background:linear-gradient(180deg,#f4f9fd,#e9f3fb);color:#17344d;}
#portal-schedule-bell-v85 .schedule-bell-head::after{position:absolute;right:18px;top:18px;width:9px;height:9px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12);content:"";animation:scheduleBellLed 1.6s ease-in-out infinite;}
#portal-schedule-bell-v85 .schedule-bell-icon{width:48px;height:48px;display:grid;place-items:center;flex:none;border:1px solid #b8d3e8;border-radius:14px;background:#fff;color:#087fc9;box-shadow:inset 0 -3px 0 #e5eff7,0 6px 14px rgba(33,92,136,.08);}
#portal-schedule-bell-v85 .schedule-bell-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}
#portal-schedule-bell-v85 .schedule-bell-head small,#portal-schedule-bell-v85 .schedule-bell-head b{display:block;}
#portal-schedule-bell-v85 .schedule-bell-head small{font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#52738e;}
#portal-schedule-bell-v85 .schedule-bell-head b{margin-top:4px;padding-right:22px;font-size:17px;line-height:1.25;color:#17344d;}
#portal-schedule-bell-v85 .schedule-bell-body{position:relative;padding:21px 22px 22px;}
#portal-schedule-bell-v85 .schedule-bell-label{margin:0;color:#087fc9;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
#portal-schedule-bell-v85 h2{margin:7px 0 4px;color:#172033;font-size:24px;line-height:1.2;}
#portal-schedule-bell-v85 .schedule-bell-class{margin:0;color:#607487;font-size:13px;font-weight:750;}
#portal-schedule-bell-v85 .schedule-bell-time{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-top:18px;padding:12px 14px;border:1px solid #c9dcea;border-radius:12px;background:#eef6fc;color:#173e5e;box-shadow:inset 0 1px 0 #fff;}
#portal-schedule-bell-v85 .schedule-bell-time span{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 9px;border:1px solid #b8d3e8;border-radius:8px;background:#fff;color:#4c6d87;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;}
#portal-schedule-bell-v85 .schedule-bell-time b{justify-self:end;font-family:"Courier New",ui-monospace,monospace;font-size:16px;letter-spacing:.04em;color:#0a5d93;}
#portal-schedule-bell-v85 button{width:100%;min-height:46px;margin-top:17px;border:1px solid #0875bd;border-radius:12px;padding:12px 14px;background:linear-gradient(180deg,#159be9,#087fc9);color:#fff;font:900 12px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 5px 0 #075f94,0 10px 20px rgba(8,127,201,.16);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;}
#portal-schedule-bell-v85 button:hover{filter:brightness(1.035);}
#portal-schedule-bell-v85 button:active{transform:translateY(3px);box-shadow:0 2px 0 #075f94,0 5px 10px rgba(8,127,201,.12);}
#portal-schedule-bell-v85 .schedule-bell-hint{display:block;margin-top:12px;text-align:center;color:#7a8d9e;font-size:9px;}
@keyframes scheduleBellLed{0%,100%{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}
@media (max-width:560px){#portal-schedule-bell-v85{align-items:end;padding:10px 10px calc(10px + env(safe-area-inset-bottom));}#portal-schedule-bell-v85 .schedule-bell-card{border-radius:19px;}#portal-schedule-bell-v85 .schedule-bell-head{padding:16px;}#portal-schedule-bell-v85 .schedule-bell-body{padding:18px 16px 19px;}#portal-schedule-bell-v85 h2{font-size:21px;}#portal-schedule-bell-v85 .schedule-bell-time{grid-template-columns:1fr;gap:8px;}#portal-schedule-bell-v85 .schedule-bell-time b{justify-self:start;}}
html[data-portal-brand="guru"] body,
      html[data-portal-brand="guru"] body *,
      html[data-portal-brand="guru"] body *::before,
      html[data-portal-brand="guru"] body *::after{font-family:var(--eduvia-system-sans-v37, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);}
html[data-portal-brand="guru"] body #root #employeeAccreditationV128
        .employee-accreditation-v128-hero :is(small, h1, h2, h3, p, span, b, strong){color:var(--theme-surface,#fff);-webkit-text-fill-color:var(--theme-surface,#fff)!important;opacity:1!important;}
html[data-portal-brand="guru"] body #root #employeeAccreditationV128
        .employee-accreditation-v128-hero p{color:var(--tone-e7f5ff);-webkit-text-fill-color:var(--tone-e7f5ff)!important;opacity:1!important;}
@media (max-width: 767px){
html[data-portal-brand="guru"] body.menu-open{overflow:hidden!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="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:flex-start!important;gap:7px!important;width:100%!important;height:68px!important;min-height:68px!important;padding:0 10px!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="guru"] body #root header[data-portal-guru-bk-header-v224="1"] > :not([data-portal-guru-native-menu-v224]):not([data-portal-guru-bk-actions-v224]){display:none!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"] > [data-portal-guru-native-menu-v224]{box-sizing:border-box!important;display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:auto!important;min-width:0!important;max-width:132px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0 11px!important;border:1px solid #a8d8f4!important;border-left:3px solid var(--theme-primary,#078ee8)!important;border-radius:14px!important;background:#f8fcff!important;color:var(--theme-primary-strong,#173f70)!important;box-shadow:0 5px 16px rgba(8,48,110,.055)!important;cursor:pointer!important;overflow:hidden!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"] > [data-portal-guru-native-menu-v224] svg{display:block!important;flex:0 0 20px!important;width:20px!important;height:20px!important;padding:0!important;color:currentColor!important;stroke:currentColor!important;}
html[data-portal-brand="guru"] body #root .portal-guru-mobile-heading-label-v114s{display:block!important;min-width:0!important;overflow:hidden!important;color:#15334e!important;font-size:13px!important;font-weight:800!important;line-height:1!important;text-overflow:ellipsis!important;text-transform:capitalize!important;white-space:nowrap!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"] > [data-portal-guru-bk-actions-v224]{display:flex!important;flex:0 0 auto!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;width:auto!important;min-width:0!important;max-width:none!important;height:42px!important;margin:0 0 0 auto!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"] > [data-portal-guru-bk-actions-v224] > :not([data-portal-guru-bk-header-visible-v224]):not(#portalGuruDownloadHostV114R){display:none!important;}
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R{order:1!important;}
html[data-portal-brand="guru"] [data-portal-guru-bk-header-visible-v224="notification"]{order:2!important;}
html[data-portal-brand="guru"] [data-portal-guru-bk-header-visible-v224="premium"]{order:3!important;}
html[data-portal-brand="guru"] [data-portal-guru-bk-header-visible-v224="profile"]{order:4!important;}
html[data-portal-brand="guru"] [data-portal-guru-bk-header-visible-v224="notification"] button,html[data-portal-brand="guru"] button[data-portal-guru-bk-header-visible-v224="notification"]{box-sizing:border-box!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;padding:0!important;border:1px solid #b7daef!important;border-radius:13px!important;background:#f8fcff!important;color:var(--theme-primary-strong,#173f70)!important;box-shadow:none!important;}
html[data-portal-brand="guru"] [data-portal-guru-bk-header-visible-v224="profile"] button[aria-label="Buka profil"],html[data-portal-brand="guru"] button[aria-label="Buka profil"][data-portal-guru-bk-header-visible-v224="profile"]{box-sizing:border-box!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;margin:0!important;padding:0!important;}
html[data-portal-brand="guru"] body > aside.portal-guru-bk-sidebar-v224{box-sizing:border-box!important;position:fixed!important;top:0!important;left:min(-300px, calc(-100vw + 34px))!important;z-index:2147483202!important;display:flex!important;flex-direction:column!important;width:min(286px, calc(100vw - 34px))!important;height:100dvh!important;padding:22px 16px max(18px, env(safe-area-inset-bottom))!important;overflow:hidden!important;overscroll-behavior:contain!important;border:0;border-right:1px solid #e2ebf4!important;background:var(--theme-surface,#fff);box-shadow:18px 0 50px rgba(8, 48, 110, .20);}
html[data-portal-brand="guru"] body > aside.portal-guru-bk-sidebar-v224.open{left:0!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .sidebar-brand{padding:0 0 20px!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .brand{position:relative!important;display:flex!important;align-items:center!important;min-height:66px!important;padding:0 50px 0 4px!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .portal-guru-sidebar-logo-v225{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;object-fit:contain!important;object-position:left center!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .portal-guru-sidebar-close-v225{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;border-radius:var(--radius-md-lg,12px);background:var(--tone-f7faff,#f7faff);color:#31506f;box-shadow:none;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .portal-guru-sidebar-close-v225 svg{width:19px!important;height:19px!important;stroke:currentColor;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-group{flex:1 1 auto!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="guru"] body > .portal-guru-bk-sidebar-v224 .side-group::-webkit-scrollbar{width:5px!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-group::-webkit-scrollbar-track{background:transparent;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-group::-webkit-scrollbar-thumb{border-radius:var(--radius-pill,999px);background:#b9d8ee;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-group > small{display:block!important;padding:0 11px 8px!important;color:#8292a6;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav{display:flex!important;flex-direction:column!important;gap:7px!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-group > .side-nav{min-height:100%!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav
          > [data-portal-guru-account-action-v228]{order:999!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav
          > .portal-guru-contact-v36{order:998!important;display:grid!important;gap:4px!important;margin-top:auto!important;padding:28px 10px 10px!important;border-top:1px solid #e5eef7!important;color:var(--tone-718096,#718096);}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav
          > .portal-guru-contact-v36 small{margin:0 0 2px!important;color:#5f7186;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav
          > .portal-guru-contact-v36 a{color:#557086;font-size:10px;font-weight:700;line-height:1.45;text-decoration:none;overflow-wrap:anywhere!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav 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;padding:0 13px!important;overflow:hidden!important;border:1px solid var(--theme-primary,#078ee8);border-left-width:2px!important;border-radius:var(--radius-md-lg,12px);background:var(--tone-f8fbff,#f8fbff);color:var(--theme-primary-strong,#173f70);box-shadow:inset 3px 0 0 var(--theme-primary,#078ee8), 0 7px 16px var(--tone-ec408d0f);font:inherit;font-size:12px;font-weight:800;text-align:left!important;cursor:pointer!important;}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav button:is(:hover, :focus-visible, .active){border-color:var(--tone-0068b8);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:inset 3px 0 0 var(--theme-primary-strong,#173f70), 0 10px 22px var(--tone-e9ed6e94);}
html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav
          > [data-portal-guru-account-action-v228="logout"]{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-radius:var(--radius-md-lg,12px);font:inherit;font-size:12px;font-weight:800;line-height:1.2;text-align:left!important;cursor:pointer!important;transform:none!important;}

html[data-portal-brand="guru"] body > .portal-guru-bk-sidebar-v224 .side-nav button .nav-icon{flex:0 0 19px!important;width:19px!important;height:19px!important;padding:0!important;color:currentColor;stroke:currentColor;}
html[data-portal-brand="guru"] body > button.portal-guru-bk-backdrop-v224{position:fixed!important;inset:0!important;z-index:2147483201!important;display:none!important;width:100%!important;height:100%!important;padding:0!important;border:0;border-radius:0;background:rgba(13, 33, 27, .35);}
html[data-portal-brand="guru"] body > button.portal-guru-bk-backdrop-v224.show{display:block!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav){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;border:0;border-top:1px solid #d8e5f1!important;background:rgba(247, 250, 255, .98);box-shadow:0 -12px 30px rgba(8, 48, 110, .09);visibility:visible!important;opacity:1!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > :not([data-portal-guru-bk-dock-v224]){display:none!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > [data-portal-guru-bk-dock-v224]{box-sizing:border-box!important;display:flex!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);border-left-width:2px!important;border-radius:var(--radius-lg,14px);background:var(--theme-surface,#fff);color:var(--theme-primary-strong,#173f70);box-shadow:inset 2px 0 0 var(--theme-primary,#078ee8), 0 5px 13px rgba(8, 48, 110, .06);font-size:8.5px;font-weight:800;line-height:1.1;white-space:nowrap!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > [data-portal-guru-bk-dock-v224] > svg{width:18px!important;height:18px!important;padding:0!important;color:currentColor;stroke:currentColor;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > [data-portal-guru-bk-dock-v224] > span{max-width:100%!important;overflow:hidden!important;color:inherit;font-size:8.5px;font-weight:800;line-height:1.1;text-overflow:ellipsis!important;white-space:nowrap!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > [data-portal-guru-bk-dock-v224].active{border-color:var(--tone-0068b8);background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:inset 3px 0 0 var(--theme-primary-strong,#173f70), 0 7px 16px var(--tone-ff05dd1e);}
html[data-portal-brand="guru"] body.menu-open #root
          .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav){visibility:hidden!important;opacity:0!important;pointer-events:none!important;}}
@media (max-width: 380px){html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"]{gap:6px!important;padding-inline:8px!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"]
          > [data-portal-guru-native-menu-v224]{flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:112px!important;height:38px!important;min-height:38px!important;max-height:38px!important;padding-inline:9px!important;border-radius:12px!important;}
html[data-portal-brand="guru"] body #root .portal-guru-mobile-heading-label-v114s{font-size:12px!important;}
html[data-portal-brand="guru"] body #root header[data-portal-guru-bk-header-v224="1"]
          > [data-portal-guru-bk-actions-v224]{gap:5px!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav){gap:4px!important;padding-inline:4px!important;}
html[data-portal-brand="guru"] body #root .portal-nav-mobile.mobile-bottom:not(.student-mobile-nav)
          > [data-portal-guru-bk-dock-v224]{min-height:54px!important;padding-inline:2px!important;border-radius:var(--radius-md-lg,12px);}}
@media (min-width: 768px){html[data-portal-brand="guru"] body > :is(.portal-guru-bk-sidebar-v224, .portal-guru-bk-backdrop-v224),
        html[data-portal-brand="guru"] body #root header > [data-portal-guru-native-menu-v224]{display:none!important;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > [data-portal-guru-account-action-v228]{order:999!important;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > .portal-guru-contact-v36{order:998!important;display:grid!important;gap:3px!important;margin-top:auto!important;padding:28px 12px 10px!important;border-top:1px solid #e5eef7!important;color:var(--tone-718096,#718096);}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > .portal-guru-contact-v36 small{color:#6d7e91;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > .portal-guru-contact-v36 a{color:#5c7187;font-size:10px;font-weight:700;line-height:1.45;text-decoration:none;overflow-wrap:anywhere!important;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > [data-portal-guru-account-action-v228="logout"]{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-danger-light,#ef4444);border-left-width:2px!important;border-radius:var(--radius-md-lg,12px);background:var(--tone-fff7f7,#fff7f7);color:var(--theme-danger,#b91c1c);box-shadow:inset 3px 0 0 var(--theme-danger-light,#ef4444), 0 7px 16px var(--tone-4a33b320);font:inherit;font-size:12px;font-weight:800;line-height:1.2;text-align:left!important;cursor:pointer!important;transform:none!important;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > [data-portal-guru-account-action-v228="logout"] .nav-icon{display:block!important;flex:0 0 19px!important;width:19px!important;height:19px!important;margin:0!important;padding:0!important;border:0;background:transparent;color:inherit;box-shadow:none;fill:none;stroke:currentColor;stroke-width:1.9!important;}
html[data-portal-brand="guru"] body #root .portal-nav-desktop
          > [data-portal-guru-account-action-v228="logout"]:is(:hover, :focus-visible, .active){border-color:var(--theme-danger,#b91c1c);background:var(--theme-danger-light,#ef4444);color:var(--theme-surface,#fff);box-shadow:inset 3px 0 0 var(--tone-991b1b,#991b1b), 0 10px 22px var(--tone-9251477a);}}
html[data-portal-brand="guru"] body.portal-guru-settings-open-v226{overflow:hidden!important;}
html[data-portal-brand="guru"] body > .portal-guru-settings-v226{position:fixed!important;inset:0!important;z-index:2147483300!important;display:grid!important;place-items:center!important;padding:20px!important;background:rgba(15, 34, 59, .46);}
.portal-guru-settings-v226 *,
      .portal-guru-settings-v226 *::before,
      .portal-guru-settings-v226 *::after,
      .portal-guru-data-workspace-v228 *,
      .portal-guru-data-workspace-v228 *::before,
      .portal-guru-data-workspace-v228 *::after{box-sizing:border-box!important;}
.portal-guru-settings-shell-v226{display:flex!important;flex-direction:column!important;width:min(590px, 100%)!important;max-height:min(780px, calc(100dvh - 40px))!important;overflow:hidden!important;border:1px solid rgba(223, 233, 244, .95);border-radius:25px;background:var(--tone-f7faff,#f7faff);color:#14243b;box-shadow:0 30px 95px rgba(9, 34, 70, .26);}
.portal-guru-settings-head-v226{display:flex!important;align-items:center!important;gap:14px!important;padding:19px 22px!important;border-bottom:1px solid #e7eef6!important;background:var(--theme-surface,#fff);}
.portal-guru-settings-lead-v226, .portal-guru-settings-card-icon-v226{display:grid!important;flex:0 0 44px!important;place-items:center!important;width:44px!important;height:44px!important;border:1px solid #d5e9ff;border-radius:var(--radius-lg,14px);background:#eff7ff;color:var(--tone-087ce1);}
.portal-guru-settings-title-v226{min-width:0!important;}
.portal-guru-settings-title-v226 h2, .portal-guru-settings-card-v226 h3{margin:0!important;color:#14243b;font-size:17px;font-weight:800;}
.portal-guru-settings-title-v226 p, .portal-guru-settings-card-v226 p{margin:4px 0 0!important;color:#75849a;font-size:12px;line-height:1.45;}
.portal-guru-settings-close-v226{display:grid!important;flex:0 0 38px!important;place-items:center!important;width:38px!important;height:38px!important;margin-left:auto!important;border:1px solid #e3eaf2;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);color:#51637b;cursor:pointer!important;}
.portal-guru-settings-content-v226{display:grid!important;gap:14px!important;min-height:0!important;padding:18px 21px 21px!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
.portal-guru-settings-card-v226{padding:16px!important;border:1px solid #e3ebf5;border-radius:var(--radius-2xl,18px);background:var(--theme-surface,#fff);}
.portal-guru-settings-card-head-v226{display:flex!important;align-items:center!important;gap:11px!important;margin-bottom:13px!important;}
.portal-guru-settings-card-icon-v226{flex-basis:37px!important;width:37px!important;height:37px!important;border-radius:var(--radius-md-lg,12px);}
.portal-guru-settings-card-v226 h3{font-size:14px;}
.portal-guru-settings-preferences-v226{display:grid!important;}
.portal-guru-settings-preference-v226{display:flex!important;align-items:center!important;gap:12px!important;min-height:61px!important;padding:10px 0!important;border-top:1px solid #edf2f7!important;}
.portal-guru-settings-preference-v226:first-child{border-top:0!important;}
.portal-guru-settings-preference-v226 > svg{flex:0 0 19px!important;width:19px!important;height:19px!important;color:var(--tone-087ce1);}
.portal-guru-settings-preference-copy-v226{min-width:0!important;}
.portal-guru-settings-preference-copy-v226 strong{display:block!important;color:#1d3049;font-size:12px;font-weight:700;}
.portal-guru-settings-preference-copy-v226 small{display:block!important;margin-top:3px!important;color:#7b899d;font-size:11px;}
.portal-guru-settings-toggle-v226{position:relative!important;flex:0 0 43px!important;width:43px!important;height:25px!important;margin-left:auto!important;border:0;border-radius:var(--radius-pill,999px);background:#dce5ef;cursor:pointer!important;}
.portal-guru-settings-toggle-v226::after{position:absolute!important;top:3px!important;left:3px!important;width:19px!important;height:19px!important;border-radius:50%;background:var(--theme-surface,#fff);box-shadow:0 1px 4px rgba(14, 40, 77, .18);content:""!important;}
.portal-guru-settings-toggle-v226[aria-checked="true"]{background:var(--tone-087ce1);}
.portal-guru-settings-toggle-v226[aria-checked="true"]::after{transform:translateX(18px)!important;}
.portal-guru-settings-action-v226{margin-left:auto!important;padding:8px 11px!important;border:1px solid #d6e7fb;border-radius:var(--radius-md,10px);background:#f1f8ff;color:#0675d5;font-size:11px;font-weight:700;cursor:pointer!important;}
.portal-guru-settings-action-v226:disabled{opacity:.65!important;cursor:default!important;}
.portal-guru-settings-school-v226{padding:12px 14px!important;border:1px solid #d8eafc;border-radius:var(--radius-lg,14px);background:#edf6ff;color:#365979;font-size:11px;}
.portal-guru-settings-school-v226 strong{color:#175089;}
.portal-guru-settings-form-v226{display:grid!important;grid-template-columns:minmax(0, 1fr) auto!important;gap:7px!important;}
.portal-guru-settings-form-v226 input{width:100%!important;height:37px!important;min-width:0!important;padding:0 10px!important;border:1px solid #dce6f0;border-radius:var(--radius-md,10px);background:var(--theme-surface,#fff);color:#263b54;font-size:11px;}
.portal-guru-settings-form-v226 button[type="submit"]{padding:0 11px!important;border:0;border-radius:var(--radius-md,10px);background:var(--tone-087ce1);color:var(--theme-surface,#fff);font-size:11px;font-weight:700;cursor:pointer!important;}
.portal-guru-settings-cancel-v226{grid-column:1 / -1!important;justify-self:start!important;padding:2px 0!important;border:0;background:none;color:#667890;font-size:10px;cursor:pointer!important;}
.portal-guru-settings-cancel-v226[hidden]{display:none!important;}
.portal-guru-settings-list-v226{display:grid!important;gap:6px!important;margin-top:12px!important;}
.portal-guru-settings-item-v226{display:flex!important;align-items:center!important;gap:6px!important;min-height:35px!important;padding:3px 7px 3px 10px!important;border:1px solid #ebf0f6;border-radius:var(--radius-md,10px);color:#31465f;font-size:11px;}
.portal-guru-settings-item-v226 > span{flex:1 1 auto!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.portal-guru-settings-item-v226 button{display:grid!important;flex:0 0 27px!important;place-items:center!important;width:27px!important;height:27px!important;border:0;border-radius:var(--radius-sm,8px);background:#f1f6fc;color:#516983;cursor:pointer!important;}
.portal-guru-settings-item-v226 button[data-guru-data-remove]{background:#fff2f3;color:#cb4d57;}
.portal-guru-settings-item-v226 button svg{width:15px!important;height:15px!important;}
.portal-guru-settings-empty-v226{padding:13px 2px 4px!important;color:#8190a3;font-size:11px;}
.portal-guru-settings-notice-v226{padding:11px 13px!important;border:1px solid #087344;border-radius:var(--radius-md-lg,12px);background:#0f8a52;color:var(--theme-surface,#fff);font-size:11px;font-weight:800;line-height:1.5;}
.portal-guru-settings-notice-v226[data-kind="error"]{border-color:#f3d5d8;background:#fff2f3;color:#ab4650;}
.portal-guru-settings-notice-v226[hidden]{display:none!important;}
html[data-portal-brand="guru"] body #root main .portal-guru-data-tab-scroll-v228{box-sizing:border-box!important;width:100%!important;max-width:100%!important;padding:8px 4px 12px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;}
.portal-guru-data-tab-scroll-v228::-webkit-scrollbar{display:none!important;}
html[data-portal-brand="guru"] body #root main .portal-guru-data-tabs-v228{display:inline-flex!important;align-items:stretch!important;gap:8px!important;width:max-content!important;min-width:max-content!important;padding:5px!important;border-radius:15px;background:var(--theme-surface-muted,#edf5fc);}
html[data-portal-brand="guru"] body #root main .portal-guru-data-tabs-v228 > button{box-sizing:border-box!important;display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:47px!important;padding:0 15px!important;border:2px solid var(--theme-primary,#078ee8);border-left-width:7px!important;border-radius:var(--radius-xl,16px);background:var(--tone-f8fbff,#f8fbff);color:#0674c9;box-shadow:none;font-size:12px;font-weight:750;line-height:1;white-space:nowrap!important;cursor:pointer!important;}
html[data-portal-brand="guru"] body #root main .portal-guru-data-tabs-v228 > button > svg{flex:0 0 16px!important;width:16px!important;height:16px!important;color:currentColor;}
html[data-portal-brand="guru"] body #root main .portal-guru-data-tabs-v228 > button:is(.active, .bg-blue-500){border-color:#0878ce;border-left-color:#07569d;background:var(--theme-primary,#078ee8);color:var(--theme-surface,#fff);box-shadow:0 8px 18px var(--tone-f0d37d66);}
html[data-portal-brand="guru"] body #root main[data-portal-guru-data-workspace-active-v228]
        > :not(.portal-guru-data-tab-scroll-v228):not(.portal-guru-data-workspace-v228){display:none!important;}
html[data-portal-brand="guru"] body #root main > .portal-guru-data-workspace-v228{display:grid!important;gap:16px!important;width:100%!important;min-width:0!important;padding:22px!important;border:1px solid #e5edf5;border-radius:var(--radius-4xl,22px);background:var(--theme-surface,#fff);box-shadow:0 12px 36px rgba(20, 47, 83, .045);}
.portal-guru-data-workspace-head-v228{display:flex!important;align-items:center!important;gap:14px!important;padding-bottom:17px!important;border-bottom:1px solid #eaf0f6!important;}
.portal-guru-data-workspace-title-v228{flex:1 1 auto!important;min-width:0!important;}
.portal-guru-data-workspace-title-v228 > small{display:block!important;margin-bottom:4px!important;color:#71839a;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}
.portal-guru-data-workspace-title-v228 > h2{margin:0!important;color:#172a43;font-size:19px;font-weight:800;}
.portal-guru-data-workspace-title-v228 > p{margin:5px 0 0!important;color:#75849a;font-size:12px;line-height:1.45;}
.portal-guru-data-workspace-count-v228{display:grid!important;flex:0 0 auto!important;min-width:78px!important;padding:9px 12px!important;border:1px solid #dceafb;border-radius:var(--radius-lg,14px);background:#f0f7ff;text-align:center!important;}
.portal-guru-data-workspace-count-v228 > strong{color:#0879da;font-size:18px;font-weight:850;}
.portal-guru-data-workspace-count-v228 > span{margin-top:2px!important;color:#627995;font-size:10px;}
.portal-guru-data-workspace-v228 .portal-guru-settings-card-v226{padding:19px!important;background:var(--theme-surface-elevated,#fbfdff);}
.portal-guru-data-workspace-v228 .portal-guru-settings-form-v226 input{height:45px!important;padding-inline:13px!important;font-size:12px;}
.portal-guru-data-workspace-v228 .portal-guru-settings-form-v226 button[type="submit"]{min-width:93px!important;padding-inline:17px!important;font-size:12px;}
.portal-guru-data-workspace-v228 .portal-guru-settings-list-v226{gap:8px!important;margin-top:16px!important;}
.portal-guru-data-workspace-v228 .portal-guru-settings-item-v226{min-height:47px!important;padding-left:13px!important;background:var(--theme-surface,#fff);font-size:12px;}
@media (max-width: 620px){html[data-portal-brand="guru"] body > .portal-guru-settings-v226{padding:11px!important;}
.portal-guru-settings-shell-v226{max-height:calc(100dvh - 22px)!important;border-radius:21px;}
.portal-guru-settings-head-v226{gap:11px!important;padding:15px!important;}
.portal-guru-settings-content-v226{padding:13px!important;}
.portal-guru-settings-card-v226{padding:14px!important;}
html[data-portal-brand="guru"] body #root main > .portal-guru-data-workspace-v228{gap:13px!important;padding:15px!important;border-radius:var(--radius-2xl,18px);}
.portal-guru-data-workspace-head-v228{gap:10px!important;}
.portal-guru-data-workspace-title-v228 > h2{font-size:16px;}
.portal-guru-data-workspace-title-v228 > p{font-size:11px;}
.portal-guru-data-workspace-count-v228{min-width:66px!important;padding-inline:8px!important;}
.portal-guru-data-workspace-v228 .portal-guru-settings-card-v226{padding:14px!important;}}


















html[data-portal-brand="guru"],html[data-portal-brand="guru"] body,html[data-portal-brand="guru"] #root{max-width:100%;overflow-x:hidden;}
html[data-portal-brand="guru"] #root :is(main,[role="main"]){min-width:0!important;max-width:100%!important;}
html[data-portal-brand="guru"] #root :is(img,video,canvas,iframe){max-width:100%!important;height:auto;}
html[data-portal-brand="guru"] #root :is(.table-wrap,.table-responsive,.data-table-wrap,[class*="table-scroll"],[class*="table-wrap"]){max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;-webkit-overflow-scrolling:touch!important;}
html[data-portal-brand="guru"] #root :is(input,select,textarea){max-width:100%!important;}
@media (max-width:1100px){html[data-portal-brand="guru"] #root :is(.toolbar,.header-actions,.view-actions,.actions,.form-actions){flex-wrap:wrap!important;}
}


.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none;}
.hide-scrollbar::-webkit-scrollbar{display:none;}
.pb-safe{padding-bottom:env(safe-area-inset-bottom);}

/* ================================================================
   V114R — PORTAL GURU APK + WINDOWS, REACT-NATIVE SINGLE SOURCE
   DOM tombol dimiliki React. JavaScript hanya membaca status update APK.
   ================================================================ */
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R.portal-guru-download-native-v114r{
  box-sizing:border-box!important;
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:auto!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  max-height:42px!important;
  margin:0!important;
  padding:0!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r{
  box-sizing:border-box!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;
  border:1px solid rgba(8,104,166,.13)!important;
  border-radius:14px!important;
  background:#f7fbfe!important;
  color:#0875bf!important;
  text-decoration:none!important;
  box-shadow:0 5px 16px rgba(13,67,103,.06)!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  line-height:0!important;
  transform:none!important;
}
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r svg{
  display:block!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!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r[data-platform="windows"] svg{fill:currentColor!important;stroke:none!important;}
html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r[data-platform="android"].has-apk-update::after{
  content:"";position:absolute;top:-4px;right:-4px;width:11px;height:11px;border-radius:999px;background:#ef233c;box-shadow:0 0 0 3px #fff,0 4px 12px rgba(239,35,60,.32);z-index:5;
}
@media (max-width:767px){
  html[data-portal-brand="guru"] #root header > .header-actions > #portalGuruDownloadHostV114R{order:1!important;display:inline-flex!important;gap:6px!important;}
  html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r{flex-basis:40px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;border-radius:13px!important;}
}
@media (max-width:340px){
  html[data-portal-brand="guru"] #portalGuruDownloadHostV114R{gap:5px!important;}
  html[data-portal-brand="guru"] #portalGuruDownloadHostV114R > .portal-guru-download-native-icon-v114r{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;}
}

/* Portal Guru — PREMIUM HEADER CANONICAL.
   Satu state visual untuk desktop + mobile: aktif hijau, free oranye. */
html[data-portal-brand="guru"] #root header .portal-premium-status{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0 14px!important;
  overflow:visible!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  isolation:isolate!important;
  transform:none!important;
  animation:none!important;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease!important;
}
html[data-portal-brand="guru"] #root header .portal-premium-status > svg{
  display:block!important;
  flex:0 0 18px!important;
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  min-height:18px!important;
  color:currentColor!important;
  stroke:currentColor!important;
}
html[data-portal-brand="guru"] #root header .portal-premium-status.is-active{
  border-color:#047857!important;
  background:linear-gradient(135deg,#10b981,#047857)!important;
  background-image:linear-gradient(135deg,#10b981,#047857)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(5,150,105,.22)!important;
  font-size:0!important;
}
html[data-portal-brand="guru"] #root header .portal-premium-status.is-active::after{
  content:"Premium";
  display:inline-block!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
}
html[data-portal-brand="guru"] #root header .portal-premium-status.is-free{
  border-color:#d97706!important;
  background:linear-gradient(135deg,#fbbf24,#d97706)!important;
  background-image:linear-gradient(135deg,#fbbf24,#d97706)!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(217,119,6,.18)!important;
}
html[data-portal-brand="guru"] #root header .portal-premium-status.is-active > span.absolute{display:none!important;}
@media (max-width:767px){
  html[data-portal-brand="guru"] #root header .portal-premium-status{
    display:grid!important;
    place-items:center!important;
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:0!important;
    gap:0!important;
    border-radius:13px!important;
    font-size:0!important;
    line-height:0!important;
  }
  html[data-portal-brand="guru"] #root header .portal-premium-status > svg{
    width:20px!important;
    min-width:20px!important;
    height:20px!important;
    min-height:20px!important;
  }
  html[data-portal-brand="guru"] #root header .portal-premium-status::after{content:none!important;display:none!important;}
  html[data-portal-brand="guru"] #root header .portal-premium-status.is-free > span.absolute{
    display:block!important;
    position:absolute!important;
    top:-4px!important;
    right:-4px!important;
    width:12px!important;
    height:12px!important;
    border:2px solid #fff!important;
    border-radius:999px!important;
    background:#ef4444!important;
  }
}

/* Portal Guru — PROFILE MENU CANONICAL.
   Semua aksi memakai satu style; logout hanya berbeda warna. */
html[data-portal-brand="guru"] #root header:has(.portal-guru-profile-menu){
  z-index:2147483600!important;
  overflow:visible!important;
  contain:none!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-owner{
  position:relative!important;
  overflow:visible!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-menu{
  box-sizing:border-box!important;
  display:block!important;
  position:absolute!important;
  top:calc(100% + 8px)!important;
  right:0!important;
  left:auto!important;
  width:288px!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100dvh - 110px)!important;
  overflow-y:auto!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:none!important;
  z-index:120!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-premium-card{
  border:1px solid #a7f3d0!important;
  background:#ecfdf5!important;
  background-image:none!important;
  color:#065f46!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-premium-label{
  color:#059669!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-action{
  box-sizing:border-box!important;
  display:flex!important;
  width:100%!important;
  min-height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:10px 12px!important;
  border:1px solid #bfdbfe!important;
  border-radius:12px!important;
  background:#eff6ff!important;
  background-image:none!important;
  color:#087dc8!important;
  box-shadow:none!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-decoration:none!important;
  transform:none!important;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-action:hover{
  border-color:#93c5fd!important;
  background:#dbeafe!important;
  color:#0369a1!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-action > svg{
  width:16px!important;
  height:16px!important;
  flex:0 0 16px!important;
  color:currentColor!important;
  stroke:currentColor!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-action.is-logout{
  border-color:#dc2626!important;
  background:#ef4444!important;
  color:#fff!important;
}
html[data-portal-brand="guru"] #root header .portal-guru-profile-action.is-logout:hover{
  border-color:#b91c1c!important;
  background:#dc2626!important;
  color:#fff!important;
}
@media (max-width:760px){
  html[data-portal-brand="guru"] #root header .portal-guru-profile-menu{
    right:0!important;
    width:min(288px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
  }
}

/* V115C — Rekap Absensi Bulanan Portal Guru */
.attendance-monthly-v115c{min-height:0;}
.attendance-monthly-v115c-head{flex:0 0 auto;}
.attendance-monthly-v115c-filters select,.attendance-monthly-v115c-filters input{min-height:40px;}
.attendance-monthly-v115c-nav{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #dbe3ec;border-radius:12px;background:#fff;color:#2563eb;font-size:24px;font-weight:900;line-height:1;}
.attendance-monthly-v115c-nav:hover{background:#eff6ff;border-color:#bfdbfe;}
.attendance-monthly-v115c-legend{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px;border-bottom:1px solid #f1f5f9;background:#fff;}
.attendance-monthly-v115c-legend span{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;}
.attendance-monthly-v115c-legend .is-H{background:#dcfce7;color:#15803d;}.attendance-monthly-v115c-legend .is-I{background:#dbeafe;color:#1d4ed8;}.attendance-monthly-v115c-legend .is-S{background:#fef3c7;color:#b45309;}.attendance-monthly-v115c-legend .is-A{background:#fee2e2;color:#b91c1c;}
.attendance-monthly-v115c-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;}
.attendance-monthly-v115c-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:11px;}
.attendance-monthly-v115c-table th,.attendance-monthly-v115c-table td{height:42px;min-width:42px;padding:5px;text-align:center;border-right:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;background:#fff;}
.attendance-monthly-v115c-table th{position:sticky;top:0;z-index:4;background:#f8fafc;color:#64748b;font-size:10px;font-weight:900;}
.attendance-monthly-v115c-table .student-col{position:sticky;left:0;z-index:3;min-width:190px;max-width:190px;text-align:left;padding:8px 12px;border-right:1px solid #e2e8f0;box-shadow:4px 0 10px rgba(15,23,42,.03);}
.attendance-monthly-v115c-table thead .student-col{z-index:6;background:#f8fafc;}
.attendance-monthly-v115c-table td.student-col{background:#fff;}
.attendance-monthly-v115c-table .student-col b,.attendance-monthly-v115c-table .student-col small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.attendance-monthly-v115c-table .student-col b{color:#1f2937;font-size:11px;font-weight:850;}.attendance-monthly-v115c-table .student-col small{margin-top:2px;color:#94a3b8;font-size:9px;font-weight:700;}
.attendance-monthly-v115c-table .is-weekend{background:#fafafa;}
.attendance-monthly-v115c-table .summary-col{min-width:44px;font-weight:900;background:#fbfdff;}
.attendance-monthly-v115c-table thead .summary-col.is-H{color:#15803d;}.attendance-monthly-v115c-table thead .summary-col.is-I{color:#1d4ed8;}.attendance-monthly-v115c-table thead .summary-col.is-S{color:#b45309;}.attendance-monthly-v115c-table thead .summary-col.is-A{color:#b91c1c;}
.attendance-monthly-v115c-mark{display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:9px;font-size:10px;font-weight:950;}
.attendance-monthly-v115c-mark.is-H{background:#dcfce7;color:#15803d;}.attendance-monthly-v115c-mark.is-I{background:#dbeafe;color:#1d4ed8;}.attendance-monthly-v115c-mark.is-S{background:#fef3c7;color:#b45309;}.attendance-monthly-v115c-mark.is-A{background:#fee2e2;color:#b91c1c;}
.attendance-monthly-v115c-empty{color:#cbd5e1;font-size:16px;font-weight:700;}.attendance-monthly-v115c-empty-state{padding:16px;text-align:center;color:#94a3b8;font-size:12px;font-weight:700;background:#fff;}
@media(max-width:767px){.attendance-monthly-v115c-head{align-items:stretch!important;padding:13px!important;}.attendance-monthly-v115c-filters{display:grid!important;grid-template-columns:minmax(0,1fr) 40px minmax(0,1.2fr) 40px;width:100%;}.attendance-monthly-v115c-filters select{grid-column:1/-1;width:100%;}.attendance-monthly-v115c-filters input{width:100%;min-width:0;padding-left:9px!important;padding-right:9px!important;}.attendance-monthly-v115c-legend{padding:9px 12px;gap:6px;}.attendance-monthly-v115c-table .student-col{min-width:145px;max-width:145px;padding:7px 9px;}.attendance-monthly-v115c-table th,.attendance-monthly-v115c-table td{min-width:38px;height:40px;padding:4px;}.attendance-monthly-v115c-mark{width:26px;height:26px;border-radius:8px;}.attendance-monthly-v115c-scroll{max-height:calc(100vh - 300px);}}

/* V115D — PDF rekap bulanan + jadwal mingguan desktop */
.attendance-monthly-v115d-pdf{
  display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:6px;
  padding:0 13px;border:1px solid #fecaca;border-radius:12px;background:#fff1f2;color:#dc2626;
  font-size:11px;font-weight:900;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease;
}
.attendance-monthly-v115d-pdf:hover{background:#ffe4e6;border-color:#fda4af;}

/* EDUVIA V117D — single schedule stylesheet, screen + print. */
.eduvia-schedule{--schedule-line:#e2e8f0;overflow:hidden;border:1px solid var(--schedule-line);border-radius:16px;background:#fff;color:#172033;font:12px/1.45 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:0 4px 18px #0f172a06;}
.eduvia-schedule *{box-sizing:border-box;}
.eduvia-schedule-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;}
.eduvia-schedule-title{display:flex;align-items:center;gap:14px;min-width:0;}
.eduvia-schedule-title img{display:block;width:106px;height:auto;object-fit:contain;flex-shrink:0;}
.eduvia-schedule-title h2{margin:0;color:#172033;font-size:18px;font-weight:800;line-height:1.3;}
.eduvia-schedule-title p{margin:3px 0 0;font-size:11px;color:#64748b;overflow-wrap:anywhere;}
.eduvia-schedule-actions{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0;}
.eduvia-schedule button,.eduvia-schedule select{font:700 11px/1.3 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.eduvia-schedule-actions button,.eduvia-schedule-colors-heading button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:8px 12px;border:1px solid #dbe3ee;border-radius:8px;color:#334155;background:#fff;cursor:pointer;box-shadow:none;}
.eduvia-schedule-actions .eduvia-schedule-add{border-color:#078ee8;background:#078ee8;color:#fff;}
.eduvia-schedule button:disabled{opacity:.55;cursor:default;}
.eduvia-schedule button:focus-visible,.eduvia-schedule select:focus-visible,.eduvia-schedule input:focus-visible,.eduvia-schedule-scroll:focus-visible{outline:2px solid #0284c7;outline-offset:2px;}
.eduvia-schedule-actions button:not(:disabled):hover{filter:brightness(.96);}
.eduvia-schedule-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:0 16px 12px;}
.eduvia-schedule-segment{display:inline-flex;gap:3px;border:1px solid #e2e8f0;padding:3px;border-radius:9px;background:#f8fafc;}
.eduvia-schedule-segment button,.eduvia-schedule-days button{min-height:30px;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer;white-space:nowrap;}
.eduvia-schedule-segment button[aria-pressed=true],.eduvia-schedule-days button[aria-pressed=true]{background:#e0f2fe;color:#075985;box-shadow:inset 0 0 0 1px #bae6fd;}
.eduvia-schedule-filter{display:flex;align-items:center;gap:7px;color:#64748b;font-size:11px;}
.eduvia-schedule-filter select{min-height:36px;max-width:190px;border:1px solid #dbe3ee;border-radius:8px;padding:6px 28px 6px 10px;background-color:#fff;color:#334155;}
.eduvia-schedule-view{margin-left:auto;}
.eduvia-schedule-colors{padding:12px 16px;border-top:1px solid var(--schedule-line);background:#f8fafc;}
.eduvia-schedule-colors-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;}
.eduvia-schedule-colors-heading p{margin:0;font-size:11px;color:#64748b;}
.eduvia-schedule-colors-heading button{min-height:30px;padding:5px 9px;white-space:nowrap;}
.eduvia-schedule-swatches{display:flex;flex-wrap:wrap;gap:8px;}
.eduvia-schedule-swatches label{display:flex;align-items:center;gap:7px;max-width:100%;padding:4px 9px 4px 4px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;}
.eduvia-schedule-swatches span{font-size:12px;font-weight:600;line-height:1.35;overflow-wrap:anywhere;}
.eduvia-schedule-swatches input{width:32px;height:30px;padding:2px;border:0;background:transparent;cursor:pointer;flex-shrink:0;}
.eduvia-schedule-days{display:flex;gap:4px;overflow-x:auto;padding:0 16px 10px;}
.eduvia-schedule-days button{min-height:36px;}
.eduvia-schedule-caption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px;padding:9px 16px;border-top:1px solid var(--schedule-line);background:#f8fafc;color:#64748b;font-size:11px;}
.eduvia-schedule-caption strong{font-weight:700;color:#334155;}
.eduvia-schedule-scroll{overflow-x:auto;width:100%;}
.eduvia-schedule-table{width:100%;min-width:650px;border-collapse:collapse;table-layout:fixed;margin:0;}
.eduvia-schedule-table th,.eduvia-schedule-table td{border:1px solid var(--schedule-line);padding:4px;vertical-align:top;}
.eduvia-schedule-table th:first-child,.eduvia-schedule-table td:first-child{border-left:0;}
.eduvia-schedule-table th:last-child,.eduvia-schedule-table td:last-child{border-right:0;}
.eduvia-schedule-table thead th{padding:9px 6px;background:#f0f7ff;color:#17518b;font-size:11px;font-weight:700;text-align:center;}
.eduvia-schedule-table .eduvia-schedule-time{width:100px;padding:10px 6px;text-align:center;vertical-align:middle;background:#fafcfe;color:#475569;font-size:10px;}
.eduvia-schedule-time strong,.eduvia-schedule-time small{display:block;white-space:nowrap;}
.eduvia-schedule-time small{font-size:9px;color:#64748b;font-weight:400;margin-top:2px;}
.eduvia-schedule .eduvia-schedule-lesson{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;width:100%;min-height:44px;margin:0;padding:7px 8px;border:0;border-left:4px solid var(--schedule-accent);border-radius:7px;background:var(--schedule-tint);color:#172033;text-align:left;white-space:normal;cursor:pointer;box-shadow:none;transition:filter .15s ease;}
.eduvia-schedule .eduvia-schedule-lesson+.eduvia-schedule-lesson{margin-top:4px;}
.eduvia-schedule .eduvia-schedule-lesson:disabled{opacity:1;cursor:default;}
.eduvia-schedule-lesson strong{font-size:11px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;}
.eduvia-schedule-lesson span{font-size:10px;font-weight:400;line-height:1.3;color:#475569;overflow-wrap:anywhere;}
.eduvia-schedule-lesson:not(:disabled):hover{filter:brightness(.96);}
.eduvia-schedule-dash{display:block;padding:12px 0;text-align:center;color:#cbd5e1;}
.eduvia-schedule-table .eduvia-schedule-empty{padding:32px 16px;text-align:center;color:#64748b;font-size:12px;}
.eduvia-schedule-table.is-daily{min-width:0;}
.eduvia-schedule-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;padding:10px 16px;color:#64748b;font-size:10px;}
@media(max-width:1000px){.eduvia-schedule-heading{align-items:flex-start;flex-direction:column;}.eduvia-schedule-actions{width:100%;}.eduvia-schedule-actions .eduvia-schedule-add{margin-left:auto;}}
@media(max-width:767px){.eduvia-schedule-heading{padding:12px;gap:12px;}.eduvia-schedule-title{gap:10px;}.eduvia-schedule-title img{width:84px;}.eduvia-schedule-title h2{font-size:16px;}.eduvia-schedule-title p{font-size:10px;}.eduvia-schedule-actions button{min-height:40px;padding:8px 10px;}.eduvia-schedule-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:0 12px 10px;gap:8px;}.eduvia-schedule-toolbar>.eduvia-schedule-segment:first-child{grid-column:1/-1;justify-self:start;}.eduvia-schedule-filter{min-width:0;}.eduvia-schedule-filter>span{display:none;}.eduvia-schedule-view{margin-left:0;}.eduvia-schedule-segment button{min-height:34px;}.eduvia-schedule-filter select{width:100%;max-width:none;min-width:0;padding-left:8px;padding-right:20px;}.eduvia-schedule-caption,.eduvia-schedule-footer{padding:9px 12px;}.eduvia-schedule-days{padding-left:12px;padding-right:12px;}.eduvia-schedule-colors{padding:10px 12px;}.eduvia-schedule-table.is-daily .eduvia-schedule-lesson{min-height:48px;}}
/* Isolated print document uses the same table and color rules. */
body.eduvia-schedule-print{margin:0;padding:0;background:#fff;color:#172033;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.eduvia-schedule-print .eduvia-schedule{border:0;border-radius:0;box-shadow:none;overflow:visible;}
.eduvia-schedule-print .eduvia-schedule-heading{display:block;padding:0 0 12px;}
.eduvia-schedule-print .eduvia-schedule-title img{width:112px;}
.eduvia-schedule-print .eduvia-schedule-scroll{overflow:visible;}
.eduvia-schedule-print .eduvia-schedule-table{min-width:0;}
.eduvia-schedule-print .eduvia-schedule-table th:first-child{border-left:1px solid #e2e8f0;}
.eduvia-schedule-print .eduvia-schedule-table th:last-child,.eduvia-schedule-print .eduvia-schedule-table td:last-child{border-right:1px solid #e2e8f0;}
.eduvia-schedule-print .eduvia-schedule-table thead{display:table-header-group;}
.eduvia-schedule-print .eduvia-schedule-table tr,.eduvia-schedule-print .eduvia-schedule-heading{break-inside:avoid;page-break-inside:avoid;}
.eduvia-schedule-print .eduvia-schedule-caption{margin-bottom:8px;border-bottom:1px solid #e2e8f0;}
.eduvia-schedule-print .eduvia-schedule-table .eduvia-schedule-time{width:86px;}
.eduvia-schedule-print .eduvia-schedule-footer{padding-left:0;padding-right:0;}
.eduvia-schedule-print .eduvia-schedule-footer span:last-child{display:none;}
@media print{@page eduvia-schedule{size:A4 landscape;margin:12mm;}@page eduvia-schedule-day{size:A4 portrait;margin:12mm;}body.eduvia-schedule-print.is-daily-print{page:eduvia-schedule-day;}body.eduvia-schedule-print{page:eduvia-schedule;-webkit-print-color-adjust:exact;print-color-adjust:exact;}.eduvia-schedule-print .eduvia-schedule-table th,.eduvia-schedule-print .eduvia-schedule-table td{padding:3px;}.eduvia-schedule-print .eduvia-schedule-lesson{min-height:34px;padding:5px 6px;}.eduvia-schedule-print .eduvia-schedule-lesson strong{font-size:10px;}.eduvia-schedule-print .eduvia-schedule-lesson span{font-size:9px;}}

@media(max-width:767px){.attendance-monthly-v115d-pdf{grid-column:1/-1;width:100%;}}

/* 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 V118A — Laporan Analisis Portal Guru */
.tav118-layer{position:fixed;z-index:76;left:var(--tav118-left,250px);top:var(--tav118-top,72px);width:var(--tav118-width,calc(100vw - 250px));height:var(--tav118-height,calc(100vh - 72px));overflow:auto;background:#f6f9fc;color:#17324d;box-sizing:border-box;padding:26px 28px 38px;overscroll-behavior:contain;}
.tav118-layer[hidden]{display:none!important;}.tav118-shell{width:100%;max-width:none;margin:0;display:grid;gap:18px;}.tav118-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px;border:1px solid #dbe7f1;border-radius:22px;background:#fff;box-shadow:0 5px 0 #e7eef5,0 16px 35px rgba(24,52,77,.07);}.tav118-top-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:15px;background:#e9f5ff;color:#087fc2;border:1px solid #bfe1f6;}.tav118-top-icon svg{width:26px;height:26px;}.tav118-top small,.tav118-panel header small{display:block;color:#087fc2;font-size:9px;font-weight:900;letter-spacing:.14em;}.tav118-top h2{margin:4px 0 5px;font-size:24px;line-height:1.16;}.tav118-top p,.tav118-panel header p{margin:0;color:#6b7f91;font-size:11px;line-height:1.55;}.tav118-refresh{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid #b7d7eb;border-radius:12px;background:#eef8ff;color:#086da8;font:800 11px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 3px 0 #d5e8f4;}.tav118-refresh svg{width:17px;height:17px;}.tav118-refresh:active{transform:translateY(2px);box-shadow:0 1px 0 #d5e8f4;}.tav118-refresh:disabled{opacity:.55;cursor:wait;}.tav118-filterbar{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end;padding:14px;border:1px solid #dce8f1;border-radius:18px;background:#fff;}.tav118-filterbar label{display:grid;gap:6px;color:#587084;font-size:10px;font-weight:800;}.tav118-filterbar select,.tav118-search input{width:100%;min-height:46px;border:1px solid #c9dbe8;border-radius:11px;background:#f9fcff;color:#17324d;padding:0 12px;font:700 12px/1.2 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}.tav118-filterbar select:focus,.tav118-search input:focus{border-color:#48a7dd;box-shadow:0 0 0 3px rgba(72,167,221,.13);}.tav118-filter-note{min-height:46px;display:flex;align-items:center;gap:7px;padding:0 14px;border-radius:11px;background:#f1f7fb;color:#61778a;}.tav118-filter-note b{color:#087fc2;font-size:18px;}.tav118-filter-note span{font-size:10px;font-weight:800;}.tav118-tabs{display:flex;gap:8px;overflow-x:auto;padding:7px;background:#eef2f5;border:1px solid #e1e8ee;border-radius:15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9);scrollbar-width:none;}.tav118-tabs::-webkit-scrollbar{display:none;}.tav118-tabs button{position:relative;flex:0 0 auto;min-height:52px;display:flex;align-items:center;justify-content:center;gap:9px;border:3px solid #1498df;border-radius:16px;background:#fff;color:#08689f;padding:0 20px;font:850 12.5px/1 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;box-shadow:0 4px 0 #d7e0e7,0 8px 14px rgba(42,73,96,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease,color .15s ease;}.tav118-tabs button::before{display:none;}.tav118-tabs button svg{width:18px;height:18px;flex:0 0 auto;color:#087fc2;}.tav118-tabs button:hover{border-color:#087fc2;background:#f5fbff;color:#075f94;transform:translateY(-1px);box-shadow:0 5px 0 #c8d7e1,0 10px 18px rgba(42,73,96,.07);}.tav118-tabs button:active{transform:translateY(2px);box-shadow:0 2px 0 #c9d7e1;}.tav118-tabs button.is-active{border-color:#087fc2;background:linear-gradient(180deg,#159de4 0%,#087fc2 100%);color:#fff;box-shadow:0 4px 0 #075d8d,0 10px 18px rgba(8,127,194,.16);}.tav118-tabs button.is-active::before{display:none;}.tav118-tabs button.is-active svg{color:#fff;}.tav118-content{display:grid;gap:18px;min-width:0;}.tav118-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}.tav118-stat{min-width:0;padding:17px;border:1px solid #dae7f0;border-radius:17px;background:#fff;box-shadow:0 4px 0 #e9eff4;}.tav118-stat>span{display:block;color:#6b7f91;font-size:10px;font-weight:800;}.tav118-stat>strong{display:flex;align-items:center;gap:7px;margin:7px 0 4px;color:#17324d;font-size:26px;line-height:1.1;}.tav118-stat>strong svg{width:20px;height:20px;}.tav118-stat>small{display:block;color:#8798a6;font-size:9px;line-height:1.5;}.tav118-trend-up{color:#14825b!important;}.tav118-trend-down{color:#c24154!important;}.tav118-trend-neutral{color:#67788a!important;}.tav118-panel{min-width:0;border:1px solid #dbe7f0;border-radius:20px;background:#fff;box-shadow:0 5px 0 #e8eef4,0 14px 30px rgba(27,53,75,.05);overflow:hidden;}.tav118-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #edf2f6;background:#fbfdff;}.tav118-panel>header h3{margin:3px 0 4px;font-size:17px;}.tav118-panel>header>span,.tav118-panel>header>button{flex:0 0 auto;}.tav118-panel>header>span{padding:6px 9px;border-radius:999px;background:#eef6fb;color:#4e6c82;font-size:9px;font-weight:900;}.tav118-panel>header>button{min-height:40px;border:1px solid #c7dcea;border-radius:10px;background:#fff;color:#087fc2;padding:0 12px;font-size:10px;font-weight:900;cursor:pointer;}.tav118-chart-panel{padding-bottom:4px;}.tav118-chart-scroll{width:100%;overflow-x:auto;padding:14px 14px 0;}.tav118-line-chart{display:block;width:100%;min-width:620px;height:auto;max-height:310px;}.tav118-grid line{stroke:#e8eff4;stroke-width:1;}.tav118-grid text,.tav118-x-label{fill:#8193a2;font:9px "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}.tav118-line{fill:none;stroke:#0d8ed2;stroke-width:3;stroke-linejoin:round;stroke-linecap:round;}.tav118-line-chart circle{fill:#fff;stroke:#0d8ed2;stroke-width:3;cursor:pointer;outline:none;}.tav118-line-chart circle:hover,.tav118-line-chart circle:focus,.tav118-line-chart circle.is-selected{fill:#0d8ed2;stroke:#bfe8fb;stroke-width:5;}.tav118-chart-detail{margin:0 18px 18px;padding:12px 14px;display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dce8f1;border-radius:13px;background:#f8fbfd;}.tav118-chart-detail div{min-width:0;display:grid;gap:2px;}.tav118-chart-detail small{color:#8193a2;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}.tav118-chart-detail b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;}.tav118-chart-detail span{color:#6b7f91;font-size:9px;}.tav118-chart-detail>strong{font-size:25px;color:#087fc2;}.tav118-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#e9f0f5;}.tav118-mini-grid>div{display:grid;gap:3px;padding:17px;background:#fff;}.tav118-mini-grid b{font-size:23px;color:#17324d;}.tav118-mini-grid span{color:#6f8291;font-size:10px;}.tav118-pending-workspace{overflow:hidden;background:#fff;}.tav118-pending-board{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:stretch;min-width:0;background:#fff;}.tav118-pending-section{min-width:0;min-height:0;padding:18px 20px 20px;background:#fff;display:flex;flex-direction:column;}.tav118-pending-section+.tav118-pending-section{border-left:1px solid #e1eaf1;}.tav118-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:11px;}.tav118-section-head small{display:block;color:#087fc2;font-size:10px;font-weight:900;letter-spacing:.11em;}.tav118-section-head h4{margin:4px 0 0;color:#17324d;font-size:16px;line-height:1.3;}.tav118-section-head>b{min-width:40px;height:34px;display:grid;place-items:center;border:1px solid #bfd9e8;border-radius:10px;background:#f5fbff;color:#087fc2;font-size:13px;}.tav118-pending-list{display:grid;gap:0;background:#fff;overflow:hidden;}.tav118-pending-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(150px,.7fr) 62px;gap:14px;align-items:center;padding:14px 4px;border-bottom:1px solid #e8eef3;background:#fff;}.tav118-pending-row:last-child{border-bottom:0;}.tav118-pending-row:hover{background:#f7fbfe;}.tav118-pending-copy{min-width:0;}.tav118-pending-copy>span{display:block;color:#087fc2;font-size:10px;font-weight:900;}.tav118-pending-copy h4{margin:4px 0 3px;font-size:14px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.tav118-pending-copy small{display:block;color:#728697;font-size:10px;}.tav118-pending-progresscol{min-width:0;}.tav118-pending-progresscol>small{display:block;margin-top:5px;color:#667d8f;font-size:10px;text-align:right;}.tav118-pending-count{height:46px;display:grid;place-items:center;align-content:center;border:1px solid #fecdd3;border-radius:12px;background:#fff6f7;color:#bd3349;}.tav118-pending-count b{font-size:18px;line-height:1;}.tav118-pending-count span{margin-top:3px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;}.tav118-pending-detail{grid-column:1/-1;margin-top:-2px;padding-top:8px;border-top:1px dashed #e3ebf1;}.tav118-pending-detail summary{min-height:42px;display:inline-flex;align-items:center;color:#087fc2;font-size:13.5px;font-weight:900;line-height:1.35;cursor:pointer;list-style:none;padding:7px 8px 7px 2px;border-radius:10px;}.tav118-pending-detail summary:hover{background:#f1f9fe;color:#07699f;}.tav118-pending-detail summary:focus-visible{outline:3px solid rgba(20,152,223,.18);outline-offset:2px;}.tav118-pending-detail summary::-webkit-details-marker{display:none;}.tav118-pending-detail summary::before{content:"+";display:inline-grid;place-items:center;width:24px;height:24px;flex:0 0 24px;margin-right:8px;border:1px solid #b9dff3;border-radius:8px;background:#eaf5fb;color:#087fc2;font-size:16px;font-weight:900;line-height:1;}.tav118-pending-detail[open] summary::before{content:"−";}.tav118-progress{height:6px;margin:0;border-radius:999px;background:#e9eef2;overflow:hidden;}.tav118-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d8ed2,#29a9e8);}.tav118-name-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;}.tav118-name-chips span{padding:6px 8px;border-radius:8px;background:#eef6fb;color:#405c70;font-size:10px;font-weight:800;}.tav118-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;color:#657c8e;font-size:10px;}.tav118-pager>div{display:flex;gap:7px;}.tav118-pager button{min-height:38px;padding:0 12px;border:2px solid #9ccfe9;border-radius:10px;background:#fff;color:#176b99;font-size:10px;font-weight:900;cursor:pointer;box-shadow:0 3px 0 #dbe7ee;}.tav118-pager button:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;}.tav118-pending-empty{border:0!important;}.tav118-table-wrap{flex:1;min-height:0;overflow:auto;max-height:none;border:0;border-radius:0;background:#fff;}.tav118-table{width:100%;border-collapse:collapse;font-size:12.5px;background:#fff;}.tav118-table th{position:sticky;top:0;z-index:1;padding:11px 10px;background:#f7fafc;color:#506b80;text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.055em;}.tav118-table td{padding:13px 10px;border-bottom:1px solid #e9eff4;background:#fff;color:#334f64;}.tav118-table td b{display:block;color:#17324d;font-size:12.5px;line-height:1.35;}.tav118-table td small{display:block;color:#748898;font-size:10px;margin-top:3px;}.tav118-missing-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:#fff1f2;color:#b73c50;font-size:10.5px;font-weight:900;white-space:nowrap;}.tav118-table-empty{padding:28px!important;text-align:center;color:#8494a1!important;}.tav118-student-missing-row{cursor:pointer;outline:none;}.tav118-student-missing-row:hover td{background:#f6fbff;}.tav118-student-missing-row:focus-visible td{background:#edf7ff;box-shadow:inset 0 0 0 2px #79bfe5;}.tav118-student-missing-row.is-selected td{background:#edf7ff;}.tav118-section-head p{margin:5px 0 0;color:#748898;font-size:10.5px;line-height:1.45;}.tav118-missing-modal-backdrop{position:fixed;inset:0;z-index:240;display:grid;place-items:center;padding:24px;}.tav118-missing-modal{width:min(760px,calc(100vw - 32px));max-height:min(82vh,760px);display:flex;flex-direction:column;overflow:hidden;}.tav118-missing-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid #e7eef3;}.tav118-missing-modal-head small{display:block;color:#087fc2;font-size:10.5px;font-weight:900;letter-spacing:.09em;}.tav118-missing-modal-head h3{margin:5px 0 5px;font-size:21px;line-height:1.25;}.tav118-missing-modal-head p{max-width:620px;margin:0;color:#647b8d;font-size:12.5px;line-height:1.55;}.tav118-missing-modal-head>button{width:42px;height:42px;flex:0 0 auto;border:1px solid #c9dce8;border-radius:12px;background:#f7fbfe;color:#4d687b;font-size:24px;line-height:1;cursor:pointer;}.tav118-missing-notice{margin:14px 20px 0;padding:11px 13px;border:1px solid #bfe3d4;border-radius:12px;background:#effaf5;color:#23654b;font-size:12px;font-weight:800;line-height:1.45;}.tav118-missing-notice.is-error{border-color:#f2c6cc;background:#fff4f5;color:#a83a4d;}.tav118-missing-modal-list{min-height:0;overflow:auto;padding:8px 20px 4px;}.tav118-missing-modal-task{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px 2px;border-bottom:1px solid #e8eef3;}.tav118-missing-modal-task:last-child{border-bottom:0;}.tav118-missing-modal-task>div{min-width:0;}.tav118-missing-modal-task b{display:block;color:#17324d;font-size:14px;line-height:1.35;}.tav118-missing-modal-task span{display:block;margin-top:4px;color:#647c8f;font-size:11.5px;line-height:1.45;}.tav118-missing-modal-task small{display:block;margin-top:5px;color:#b23d50;font-size:10.5px;font-weight:850;}.tav118-missing-modal-task>button{min-height:44px;padding:0 14px;border:2px solid #0b8fd3;border-radius:12px;background:#fff;color:#0872aa;font-size:11.5px;font-weight:900;cursor:pointer;box-shadow:0 3px 0 #d7e6ee;}.tav118-missing-modal-task>button:hover{background:#f1f9fe;}.tav118-missing-modal-task>button:active{transform:translateY(2px);box-shadow:0 1px 0 #d7e6ee;}.tav118-missing-modal-task>button:disabled{border-color:#b8d9ca;background:#eff9f4;color:#287057;box-shadow:none;cursor:default;}.tav118-missing-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px 20px;border-top:1px solid #e7eef3;}.tav118-missing-modal-actions button{min-height:46px;padding:0 16px;border:2px solid #087fc2;border-radius:12px;background:#087fc2;color:#fff;font-size:11.5px;font-weight:900;cursor:pointer;box-shadow:0 3px 0 #075d8d;}.tav118-missing-modal-actions button.secondary{background:#fff;color:#0870aa;border-color:#9bcfe8;box-shadow:0 3px 0 #dce9f0;}.tav118-missing-modal-actions button:active{transform:translateY(2px);box-shadow:0 1px 0 #075d8d;}.tav118-missing-modal-actions button.secondary:active{box-shadow:0 1px 0 #dce9f0;}.tav118-student-panel-head{align-items:end!important;}.tav118-search{width:min(260px,100%);display:grid;gap:5px;color:#61798d;font-size:9px;font-weight:900;}.tav118-search input{min-height:42px;}.tav118-student-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;}.tav118-student-card{padding:15px;border:1px solid #dce7ef;border-radius:15px;background:#fff;}.tav118-student-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}.tav118-student-card h4{margin:0;font-size:13px;}.tav118-student-card header span{display:block;margin-top:3px;color:#8091a0;font-size:9px;}.tav118-student-card header>strong{font-size:22px;color:#087fc2;}.tav118-student-metrics{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:8px;margin-top:13px;}.tav118-student-metrics>div{min-width:0;display:grid;gap:3px;}.tav118-student-metrics small{color:#8998a5;font-size:8px;}.tav118-student-metrics b{display:flex;align-items:center;gap:4px;color:#40596c;font-size:9px;line-height:1.35;}.tav118-student-metrics b svg{width:13px;height:13px;flex:0 0 auto;}.tav118-empty,.tav118-empty-chart{padding:35px 20px;text-align:center;color:#728698;}.tav118-empty svg{width:34px;height:34px;color:#35a47e;}.tav118-empty h3{margin:9px 0 4px;color:#29465d;font-size:14px;}.tav118-empty p{margin:0;font-size:10px;}.tav118-empty-chart{margin:15px;border:1px dashed #ccdce7;border-radius:14px;}.tav118-foot{display:flex;justify-content:space-between;gap:12px;color:#8696a4;font-size:8px;padding:3px 4px 18px;}.tav118-loading,.tav118-error{min-height:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:30px;}.tav118-loading span{width:36px;height:36px;border:3px solid #dbeaf4;border-top-color:#087fc2;border-radius:50%;animation:tav118-spin .8s linear infinite;}.tav118-loading strong,.tav118-error strong{color:#24445d;font-size:14px;}.tav118-loading small,.tav118-error p{color:#7c8f9e;font-size:10px;}.tav118-error button{min-height:44px;border:0;border-radius:11px;background:#087fc2;color:#fff;padding:0 16px;font-weight:900;cursor:pointer;}.tav118-inline-error{margin-bottom:10px;padding:10px 12px;border-radius:10px;background:#fff1f2;color:#b23b4e;font-size:10px;font-weight:800;}.tav118-nav{position:relative;}.tav118-nav>svg{width:20px;height:20px;flex:0 0 auto;}.tav118-nav.tav118-nav-active{background:linear-gradient(135deg,#087fc2,#0757ad)!important;color:#fff!important;border-color:#087fc2!important;box-shadow:0 5px 0 #064b86,0 10px 18px rgba(8,127,194,.17)!important;}.tav118-nav.tav118-nav-active *{color:inherit!important;}.tav118-nav.tav118-nav-active::before{background:#fff!important;}.tav118-nav.tav118-nav-active::after{background:#fff!important;}.tav118-nav.tav118-nav-active svg{stroke:#fff!important;}@keyframes tav118-spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.tav118-pending-board{grid-template-columns:1fr;}.tav118-pending-section{display:block;}.tav118-pending-section+.tav118-pending-section{border-left:0;border-top:1px solid #e1eaf1;}.tav118-table-wrap{max-height:440px;}}@media(max-width:900px){.tav118-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.tav118-student-list{grid-template-columns:1fr;}}
@media(max-width:767px){.tav118-layer{left:0!important;right:0!important;top:var(--tav118-top,64px)!important;width:100%!important;padding:15px 13px calc(90px + env(safe-area-inset-bottom));background:#f6f9fc;}.tav118-top{grid-template-columns:auto minmax(0,1fr);padding:16px;gap:11px;border-radius:18px;}.tav118-top-icon{width:44px;height:44px;border-radius:13px;}.tav118-top h2{font-size:19px;}.tav118-top p{font-size:9.5px;}.tav118-refresh{grid-column:1/-1;width:100%;min-height:46px;}.tav118-filterbar{grid-template-columns:1fr 1fr;padding:11px;gap:9px;}.tav118-filter-note{grid-column:1/-1;min-height:38px;}.tav118-tabs{margin-right:-13px;padding-right:13px;}.tav118-summary-grid{grid-template-columns:1fr 1fr;gap:9px;}.tav118-stat{padding:14px;}.tav118-stat>strong{font-size:21px;}.tav118-panel>header{padding:15px;flex-direction:column;}.tav118-panel>header>span,.tav118-panel>header>button{align-self:flex-start;}.tav118-mini-grid{grid-template-columns:1fr;}.tav118-student-panel-head{align-items:stretch!important;}.tav118-search{width:100%;}.tav118-student-list{padding:10px;}.tav118-student-metrics{grid-template-columns:1fr 1fr;}.tav118-student-metrics>div:first-child{grid-column:1/-1;}.tav118-foot{flex-direction:column;}.tav118-chart-detail{align-items:flex-start;}.tav118-chart-detail>strong{font-size:22px;}.tav118-pending-row{grid-template-columns:minmax(0,1fr) 54px;gap:9px;padding:11px;}.tav118-pending-progresscol{grid-column:1/-1;grid-row:2;}.tav118-pending-count{grid-column:2;grid-row:1;}.tav118-pending-detail{grid-row:3;}.tav118-pending-detail summary{font-size:14px;min-height:44px;}.tav118-pending-section{padding:13px;}.tav118-pager{align-items:flex-start;flex-direction:column;}.tav118-pager>div{width:100%;}.tav118-pager button{flex:1;}.tav118-table-wrap{max-height:390px;}.tav118-tabs{padding:6px;}.tav118-tabs button{min-height:48px;padding:0 15px;font-size:11.5px;}.tav118-missing-modal-backdrop{padding:12px;}.tav118-missing-modal{width:100%;max-height:calc(100vh - 24px);}.tav118-missing-modal-head{padding:16px;}.tav118-missing-modal-head h3{font-size:18px;}.tav118-missing-modal-head p{font-size:11.5px;}.tav118-missing-modal-list{padding:6px 16px;}.tav118-missing-modal-task{grid-template-columns:1fr;gap:10px;padding:14px 0;}.tav118-missing-modal-task>button{width:100%;}.tav118-missing-modal-actions{padding:14px 16px 16px;flex-direction:column-reverse;}.tav118-missing-modal-actions button{width:100%;}}
@media(max-width:420px){.tav118-summary-grid{grid-template-columns:1fr;}.tav118-filterbar{grid-template-columns:1fr;}.tav118-filter-note{grid-column:auto;}.tav118-top-icon{display:none;}.tav118-top{grid-template-columns:1fr;}.tav118-chart-scroll{padding-left:8px;padding-right:8px;}}

/* EDUVIA v118L — Reset Password Siswa + Absensi Foto */
.student-password-reset-open{overflow:hidden!important;}
.student-password-reset-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(10,24,38,.46);backdrop-filter:blur(8px);}
.student-password-reset-card{width:min(100%,520px);overflow:hidden;border:1px solid #dbe8f1;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(15,35,55,.24);}
.student-password-reset-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 18px;border-bottom:1px solid #e7eef3;}
.student-password-reset-card>header span{display:block;color:#0876b9;font-size:11px;font-weight:900;letter-spacing:.12em;}
.student-password-reset-card>header h2{margin:5px 0 2px;color:#10253a;font-size:22px;line-height:1.2;font-weight:900;}
.student-password-reset-card>header p{margin:0;color:#6d7f8d;font-size:13px;font-weight:650;}
.student-password-reset-card>header button{flex:0 0 42px;width:42px;height:42px;border:1px solid #dbe6ed;border-radius:13px;background:#f5f8fa;color:#526b7b;font-size:22px;cursor:pointer;}
.student-password-reset-body{display:grid;gap:14px;padding:20px 24px;}
.student-password-reset-body label>span{display:block;margin:0 0 7px;color:#526979;font-size:12px;font-weight:850;}
.student-password-reset-body input{box-sizing:border-box;width:100%;min-height:48px;border:1px solid #d8e5ed;border-radius:13px;background:#f8fbfd;padding:12px 14px;color:#162838;font:750 14px/1.4 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}
.student-password-reset-body input:focus{border-color:#1a9bdd;background:#fff;box-shadow:0 0 0 3px rgba(26,155,221,.12);}
.student-password-reset-note{margin:0;padding:11px 13px;border-radius:12px;background:#f4f8fb;color:#677b89;font-size:12px;line-height:1.55;}
.student-password-reset-status{margin:0;padding:11px 13px;border-radius:12px;background:#fff1f2;color:#b42338;font-size:12px;font-weight:800;line-height:1.45;}
.student-password-reset-status[data-type="loading"]{background:#eef8ff;color:#086aa5;}
.student-password-reset-status[data-type="success"]{background:#edf9f2;color:#147447;}
.student-password-reset-card>footer{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px;padding:17px 24px 22px;border-top:1px solid #e7eef3;}
.student-password-reset-card>footer button{min-height:48px;border-radius:13px;font-size:13px;font-weight:900;cursor:pointer;}
.student-password-reset-cancel{border:1px solid #dce6ec;background:#f4f7f9;color:#5d7080;}
.student-password-reset-submit{border:1px solid #0b7fc2;background:linear-gradient(180deg,#149fe7,#087bc0);color:#fff;box-shadow:0 7px 0 #066ca9,0 12px 22px rgba(8,123,192,.18);}
.student-password-reset-submit:active{transform:translateY(3px);box-shadow:0 4px 0 #066ca9;}
.student-password-reset-submit:disabled{opacity:.65;cursor:wait;transform:none;}

.photo-attendance-teacher-card-v118l{margin:0 0 18px;border:1px solid #dce8ef;border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(19,60,82,.07);overflow:hidden;color:#183247;}
.photo-attendance-teacher-head-v118l{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #e6edf2;background:linear-gradient(180deg,#fff,#f9fcfd);}
.photo-attendance-teacher-icon-v118l{display:grid;place-items:center;width:52px;height:52px;border:1px solid #bfe0f1;border-radius:16px;background:#eef8fd;color:#087dbd;box-shadow:0 5px 0 #d6edf8;}
.photo-attendance-teacher-icon-v118l svg{width:27px;height:27px;}
.photo-attendance-teacher-head-v118l span,.photo-attendance-evidence-title-v118l span{display:block;color:#0877b4;font-size:10px;font-weight:950;letter-spacing:.12em;}
.photo-attendance-teacher-head-v118l h3{margin:4px 0 3px;font-size:18px;font-weight:950;color:#102d42;}
.photo-attendance-teacher-head-v118l p{margin:0;max-width:720px;color:#687d8b;font-size:12.5px;line-height:1.5;}
.photo-attendance-switch-v118l{display:flex;align-items:center;gap:8px;min-height:44px;padding:7px 11px;border:1px solid #d9e7ee;border-radius:14px;background:#f8fbfd;cursor:pointer;}
.photo-attendance-switch-v118l input{position:absolute;opacity:0;pointer-events:none;}
.photo-attendance-switch-v118l span{position:relative;width:38px;height:22px;border-radius:999px;background:#bdcbd3;transition:.2s;}
.photo-attendance-switch-v118l span:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transition:.2s;}
.photo-attendance-switch-v118l input:checked+span{background:#14995f;}
.photo-attendance-switch-v118l input:checked+span:after{transform:translateX(16px);}
.photo-attendance-switch-v118l b{font-size:12px;color:#506979;}
.photo-attendance-teacher-grid-v118l{display:grid;grid-template-columns:minmax(0,1fr);}
.photo-attendance-settings-v118l,.photo-attendance-evidence-v118l{min-width:0;padding:18px 20px 20px;}
.photo-attendance-settings-v118l{border-right:0;border-bottom:1px solid #e5edf2;}
.photo-attendance-checkbox-v118l{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border:1px solid #dfe9ef;border-radius:15px;background:#f9fbfc;cursor:pointer;}
.photo-attendance-checkbox-v118l input{width:19px;height:19px;margin-top:1px;accent-color:#118ccb;}
.photo-attendance-checkbox-v118l b{display:block;color:#18364b;font-size:13px;}
.photo-attendance-checkbox-v118l small{display:block;margin-top:3px;color:#71838f;font-size:11.5px;line-height:1.45;}
.photo-attendance-location-fields-v118l{display:grid;gap:12px;margin-top:13px;padding:14px;border:1px dashed #bad7e7;border-radius:15px;background:#fbfdfe;}
.photo-attendance-location-fields-v118l[hidden]{display:none;}
.photo-attendance-location-fields-v118l label>span{display:block;margin-bottom:6px;color:#617683;font-size:11px;font-weight:850;}
.photo-attendance-location-fields-v118l input{box-sizing:border-box;width:100%;min-height:44px;border:1px solid #d7e5ed;border-radius:11px;background:#fff;padding:10px 12px;color:#183247;font:750 13px/1.35 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}
.photo-attendance-location-fields-v118l input:focus{border-color:#1d9ada;box-shadow:0 0 0 3px rgba(29,154,218,.1);}
.photo-attendance-coordinate-grid-v118l{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.photo-attendance-input-suffix-v118l{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid #d7e5ed;border-radius:11px;background:#fff;overflow:hidden;}
.photo-attendance-input-suffix-v118l input{border:0;border-radius:0;box-shadow:none!important;}
.photo-attendance-input-suffix-v118l b{padding:0 11px;color:#6c7f8b;font-size:10px;text-transform:uppercase;}
.photo-attendance-location-btn-v118l{min-height:44px;border:1px solid #aed7ed;border-radius:12px;background:#eef8fd;color:#0875b2;font-size:12px;font-weight:900;cursor:pointer;}
.photo-attendance-setting-actions-v118l{display:flex;align-items:center;gap:12px;margin-top:14px;}
.photo-attendance-setting-actions-v118l>button{min-height:46px;padding:0 18px;border:1px solid #0879b8;border-radius:13px;background:#0d8bca;color:#fff;font-size:12.5px;font-weight:900;box-shadow:0 5px 0 #076ca4;cursor:pointer;}
.photo-attendance-setting-actions-v118l>button:active{transform:translateY(2px);box-shadow:0 3px 0 #076ca4;}
.photo-attendance-setting-actions-v118l>button:disabled{opacity:.6;cursor:wait;}
.photo-attendance-setting-actions-v118l span{font-size:11.5px;font-weight:800;color:#607783;}
.photo-attendance-setting-actions-v118l span[data-type="success"]{color:#117748;}.photo-attendance-setting-actions-v118l span[data-type="error"]{color:#c23547;}
.photo-attendance-security-note-v118l{margin:13px 0 0;color:#7c8b94;font-size:10.5px;line-height:1.5;}
.photo-attendance-evidence-title-v118l{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
.photo-attendance-evidence-title-v118l h4{margin:3px 0 0;color:#173449;font-size:15px;font-weight:950;}
.photo-attendance-evidence-title-v118l button{min-height:38px;padding:0 12px;border:1px solid #d9e6ed;border-radius:11px;background:#f6f9fb;color:#537080;font-size:11px;font-weight:850;cursor:pointer;}
.photo-attendance-records-v118l{display:grid;gap:7px;}
.photo-attendance-record-v118l{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:9px;width:100%;padding:9px;border:1px solid #e1e9ee;border-radius:13px;background:#fff;color:inherit;text-align:left;transition:.15s;}
.photo-attendance-record-v118l:hover{border-color:#add7ea;background:#f7fcff;transform:translateY(-1px);}
.photo-attendance-record-avatar-v118l{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#e9f7ef;color:#168154;font-size:14px;font-weight:950;}
.photo-attendance-record-main-v118l{min-width:0;}.photo-attendance-record-main-v118l b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#183247;}.photo-attendance-record-main-v118l small{display:block;margin-top:2px;color:#73858f;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.photo-attendance-record-meta-v118l{text-align:right;}.photo-attendance-record-meta-v118l b{display:block;color:#138158;font-size:11px;}.photo-attendance-record-meta-v118l small{display:block;color:#788994;font-size:9.5px;}
.photo-attendance-record-open-v118l{color:#0877b4;font-size:10px;font-weight:900;}
.photo-attendance-empty-v118l{padding:24px 10px;text-align:center;color:#82919a;font-size:12px;}
.photo-attendance-evidence-modal-v118l{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:16px;}
.photo-attendance-evidence-dialog-v118l{width:min(100%,720px);max-height:calc(100dvh - 32px);overflow:auto;}
.photo-attendance-evidence-dialog-v118l>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #e7eef2;}.photo-attendance-evidence-dialog-v118l>header span{color:#0877b4;font-size:10px;font-weight:900;letter-spacing:.11em;}.photo-attendance-evidence-dialog-v118l>header h3{margin:3px 0;color:#173247;font-size:19px;}.photo-attendance-evidence-dialog-v118l>header p{margin:0;color:#73848f;font-size:11px;}.photo-attendance-evidence-dialog-v118l>header button{width:40px;height:40px;border:1px solid #dce6ec;border-radius:12px;background:#f5f8fa;color:#526a79;font-size:20px;cursor:pointer;}
.photo-attendance-evidence-dialog-v118l>img{display:block;width:calc(100% - 32px);max-height:58dvh;object-fit:contain;margin:16px;border-radius:17px;background:#101820;}
.photo-attendance-evidence-info-v118l{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 16px 12px;}.photo-attendance-evidence-info-v118l span{padding:10px;border-radius:12px;background:#f5f8fa;color:#536d7c;font-size:10px;word-break:break-word;}.photo-attendance-evidence-info-v118l b{display:block;margin-bottom:3px;color:#173247;font-size:9px;text-transform:uppercase;letter-spacing:.06em;}
.photo-attendance-evidence-actions-v118p{display:flex;justify-content:flex-end;padding:0 16px 4px;}.photo-attendance-evidence-actions-v118p a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid #bdddf0;border-radius:11px;background:#eef8ff;color:#0874b1;font-size:11px;font-weight:900;text-decoration:none;}.photo-attendance-evidence-actions-v118p a:hover{background:#e4f4fd;border-color:#93c9e7;}.photo-attendance-evidence-note-v118l{margin:0;padding:12px 16px 17px;color:#72828c;font-size:10.5px;}.photo-attendance-evidence-loading-v118l{padding:42px 24px;text-align:center;color:#607683;font-weight:800;}.photo-attendance-evidence-loading-v118l.is-error{color:#b92d42;}
@media(max-width:900px){.photo-attendance-teacher-grid-v118l{grid-template-columns:1fr;}.photo-attendance-settings-v118l{border-right:0;border-bottom:1px solid #e5edf2;}.photo-attendance-evidence-info-v118l{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.student-password-reset-overlay{padding:10px;}.student-password-reset-card{border-radius:20px;}.student-password-reset-card>header,.student-password-reset-body{padding-left:17px;padding-right:17px;}.student-password-reset-card>footer{grid-template-columns:1fr;padding:15px 17px 18px;}.photo-attendance-teacher-head-v118l{grid-template-columns:46px minmax(0,1fr);padding:15px;}.photo-attendance-teacher-icon-v118l{width:46px;height:46px;}.photo-attendance-switch-v118l{grid-column:1/-1;justify-content:center;}.photo-attendance-settings-v118l,.photo-attendance-evidence-v118l{padding:15px;}.photo-attendance-coordinate-grid-v118l{grid-template-columns:1fr;}.photo-attendance-setting-actions-v118l{align-items:stretch;flex-direction:column;}.photo-attendance-setting-actions-v118l>button{width:100%;}.photo-attendance-record-v118l{grid-template-columns:38px minmax(0,1fr) auto;}.photo-attendance-record-open-v118l{grid-column:2/-1;}.photo-attendance-evidence-info-v118l{grid-template-columns:1fr 1fr;}}

/* EDUVIA v118Q — filter harian/bulanan + aksi hapus Absensi Foto */
.photo-attendance-evidence-title-v118l small{display:block;margin-top:4px;color:#71838f;font-size:10.5px;font-weight:750;}
.photo-attendance-period-toolbar-v118q{display:grid;grid-template-columns:auto minmax(160px,220px) auto;align-items:end;gap:10px;margin:0 0 12px;padding:11px;border:1px solid #e0eaf0;border-radius:14px;background:#f8fbfc;}
.photo-attendance-view-tabs-v118q{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid #d9e6ed;border-radius:12px;background:#fff;}
.photo-attendance-view-tabs-v118q button{min-height:38px;padding:0 14px;border:0;border-radius:9px;background:transparent;color:#647986;font-size:11px;font-weight:900;cursor:pointer;}
.photo-attendance-view-tabs-v118q button.is-active{background:#0d8bca;color:#fff;box-shadow:0 3px 8px rgba(13,139,202,.2);}
.photo-attendance-period-input-v118q{display:grid;gap:5px;color:#617683;font-size:10px;font-weight:900;}
.photo-attendance-period-input-v118q input{box-sizing:border-box;width:100%;min-height:46px;padding:8px 11px;border:1px solid #d7e5ed;border-radius:11px;background:#fff;color:#183247;font:800 12px/1.3 "Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;outline:none;}
.photo-attendance-period-input-v118q input:focus{border-color:#1d9ada;box-shadow:0 0 0 3px rgba(29,154,218,.1);}
.photo-attendance-delete-all-v118q{min-height:46px;padding:0 14px;border:1px solid #efc4c8;border-radius:11px;background:#fff2f3;color:#b42338;font-size:11px;font-weight:950;cursor:pointer;}
.photo-attendance-delete-all-v118q:hover:not(:disabled){background:#ffe7e9;border-color:#e79ca4;}.photo-attendance-delete-all-v118q:disabled{opacity:.5;cursor:not-allowed;}
.photo-attendance-record-v118l{cursor:default;}
.photo-attendance-record-actions-v118q{display:flex;align-items:center;justify-content:flex-end;gap:6px;}
.photo-attendance-record-actions-v118q button{min-height:34px;padding:0 10px;border:1px solid #c9e2ef;border-radius:9px;background:#eef8fd;color:#0877b4;font-size:9.5px;font-weight:900;cursor:pointer;white-space:nowrap;}
.photo-attendance-record-actions-v118q button.danger{border-color:#f0c7cb;background:#fff2f3;color:#b42338;}.photo-attendance-record-actions-v118q button:hover{filter:brightness(.98);}
.photo-attendance-day-group-v118q{display:grid;gap:7px;padding-top:5px;}.photo-attendance-day-group-v118q+.photo-attendance-day-group-v118q{margin-top:9px;padding-top:14px;border-top:1px solid #e6edf2;}
.photo-attendance-day-heading-v118q{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 2px 2px;color:#526b79;}.photo-attendance-day-heading-v118q b{font-size:11px;color:#173449;}.photo-attendance-day-heading-v118q span{font-size:9.5px;font-weight:850;color:#748792;}
@media(max-width:760px){.photo-attendance-period-toolbar-v118q{grid-template-columns:1fr 1fr;}.photo-attendance-delete-all-v118q{grid-column:1/-1;}.photo-attendance-record-v118l{grid-template-columns:38px minmax(0,1fr) auto;}.photo-attendance-record-actions-v118q{grid-column:2/-1;justify-content:flex-start;}.photo-attendance-record-actions-v118q button{flex:1;}}
@media(max-width:480px){.photo-attendance-period-toolbar-v118q{grid-template-columns:1fr;}.photo-attendance-delete-all-v118q{grid-column:auto;}.photo-attendance-record-meta-v118l{grid-column:3;grid-row:1;}.photo-attendance-record-actions-v118q{grid-column:1/-1;}}


/* EDUVIA v118R — EDUVIA evidence preview (avoid broken uc?export=view image hotlink) */
.photo-attendance-evidence-preview-v118r{position:relative;width:calc(100% - 32px);height:min(58dvh,560px);min-height:300px;margin:16px;border-radius:17px;overflow:hidden;background:#101820;border:1px solid #e2e8ee;}
.photo-attendance-evidence-preview-v118r iframe{display:block;width:100%;height:100%;border:0;background:#101820;}
@media(max-width:640px){.photo-attendance-evidence-preview-v118r{height:48dvh;min-height:260px;margin:14px;width:calc(100% - 28px);}}


/* V118U_EMPLOYEE_WORK_ATTENDANCE */
.employee-work-overlay-v118u{position:fixed;inset:0;z-index:2147483000;background:rgba(9,20,36,.62);backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px;}.employee-work-modal-v118u{position:relative;width:min(720px,100%);max-height:92vh;overflow:auto;padding:24px;}.employee-work-close-v118u{position:absolute;right:18px;top:18px;width:40px;height:40px;border-radius:13px;border:1px solid #d8e1ea;background:#f8fafc;color:#516071;font-size:22px;font-weight:900;cursor:pointer;z-index:3;}.employee-work-head-v118u{padding-right:54px;margin-bottom:16px;}.employee-work-head-v118u span{font-size:10px;letter-spacing:.14em;font-weight:1000;color:#0879c9;}.employee-work-head-v118u h2{margin:4px 0 4px;color:#182536;font-size:24px;}.employee-work-head-v118u p{margin:0;color:#64748b;line-height:1.55;}.employee-work-camera-v118u{position:relative;overflow:hidden;border-radius:22px;background:#0d1720;aspect-ratio:4/3;}.employee-work-camera-v118u video,.employee-work-camera-v118u img{width:100%;height:100%;display:block;object-fit:cover;transform:scaleX(-1);}.employee-work-camera-v118u img{transform:none;}.employee-work-camera-v118u video[hidden],.employee-work-camera-v118u img[hidden],.employee-work-camera-v118u canvas[hidden]{display:none!important;}.employee-work-guide-v118u{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;text-shadow:0 1px 4px #000;}.employee-work-guide-v118u>div{width:38%;height:60%;border:3px solid rgba(255,255,255,.85);border-radius:48% 48% 45% 45%;box-shadow:0 0 0 999px rgba(0,0,0,.15);}.employee-work-guide-v118u b{position:absolute;bottom:15px;background:rgba(6,18,28,.72);padding:8px 12px;border-radius:12px;font-size:12px;}.employee-work-camera-v118u img:not([hidden])~.employee-work-guide-v118u{display:none;}.employee-work-status-v118u{margin-top:14px;border-radius:14px;background:#eef7ff;color:#28516e;padding:12px 14px;font-size:13px;font-weight:700;}.employee-work-status-v118u[data-type="error"]{background:#fff0f1;color:#b42332;}.employee-work-status-v118u[data-type="success"]{background:#ebfbf2;color:#147344;}.employee-work-status-v118u[data-type="loading"]{background:#fff8e7;color:#8b5b04;}.employee-work-location-v118u{margin-top:10px;padding:11px 14px;border:1px solid #dce8f2;border-radius:14px;color:#556677;font-size:12px;}.employee-work-actions-v118u{display:flex;gap:10px;margin-top:16px;}.employee-work-actions-v118u button{flex:1;min-height:46px;}.employee-work-form-v118u{display:grid;gap:15px;}.employee-work-form-v118u label{display:grid;gap:7px;color:#26384a;font-weight:800;font-size:13px;}.employee-work-form-v118u textarea,.employee-work-form-v118u input[type="file"]{width:100%;box-sizing:border-box;border:1px solid #d6e1eb;border-radius:15px;background:#f8fbfd;padding:12px;color:#26384a;}.employee-work-form-v118u small{font-weight:500;color:#78889a;}.employee-work-form-v118u button.primary{min-height:46px;}@media(max-width:640px){.employee-work-modal-v118u{padding:18px;}.employee-work-head-v118u h2{font-size:21px;}.employee-work-actions-v118u{flex-direction:column;}.employee-work-guide-v118u>div{width:48%;height:62%;}}

/* EDUVIA AI — canonical workspace styles. */

.eduvia-ai-root{width:100%;min-width:0;min-height:0;flex:1;}.eduvia-ai{--ai-blue:#078ee8;--ai-ink:#24435d;color:var(--ai-ink);width:100%;min-width:0;margin:0;font-family:inherit;}.eduvia-ai-root .eduvia-ai *{box-sizing:border-box;}.eduvia-ai-root .eduvia-ai button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:600;font-size:13px;cursor:pointer;border:1px solid #dce8f1;border-radius:12px;padding:10px 15px;background:#fff;color:#45677f;line-height:1.4;box-shadow:none;transition:background .16s,border-color .16s,box-shadow .16s;}.eduvia-ai-root .eduvia-ai button:hover:not(:disabled){background:#f0f8fd;border-color:#a8d5ee;}.eduvia-ai-root .eduvia-ai button:disabled{cursor:not-allowed;opacity:.5;}.eduvia-ai-root .eduvia-ai button:focus-visible,.eduvia-ai-root .eduvia-ai input:focus-visible,.eduvia-ai-root .eduvia-ai select:focus-visible,.eduvia-ai-root .eduvia-ai textarea:focus-visible{outline:3px solid #b2dfff;outline-offset:2px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-primary{background:var(--ai-blue);border-color:var(--ai-blue);color:#fff;box-shadow:0 3px 10px rgba(7,142,232,.12);}.eduvia-ai-root .eduvia-ai .eduvia-ai-primary:hover:not(:disabled){background:#087fc9;border-color:#087fc9;}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;align-items:stretch;margin:0 0 16px;padding:6px;background:#edf1f5;border:0;border-radius:14px;width:min(100%,536px);max-width:100%;}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs button{position:relative;min-height:48px;min-width:0;padding:10px 16px;border:2px solid var(--theme-primary,#078ee8);border-left-width:8px;border-radius:17px;background:var(--theme-primary-soft,#f0f8ff);color:var(--theme-primary-deep,#0068b8);-webkit-text-fill-color:currentColor;box-shadow:0 5px 15px rgba(7,142,232,.06);font-size:12px;font-weight:600;line-height:1.25;white-space:normal;}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs button:hover:not(:disabled){border-color:var(--theme-primary-mid,#0068b8);background:#e8f2ff;color:var(--theme-primary-strong,#00529c);}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs button.is-active,.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs button.is-active:hover:not(:disabled){border-color:var(--theme-primary-mid,#0068b8);border-left-color:var(--theme-primary-strong,#00529c);background:var(--theme-primary,#078ee8);color:#fff;box-shadow:0 8px 20px rgba(0,111,209,.2);}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:0 0 16px;}.eduvia-ai-root .eduvia-ai label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#688095;}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar label{min-width:0;width:300px;max-width:100%;flex:0 1 300px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar>button{min-height:43px;background:transparent;}.eduvia-ai-root .eduvia-ai input,.eduvia-ai-root .eduvia-ai textarea,.eduvia-ai-root .eduvia-ai select{width:100%;min-width:0;font:inherit;font-size:14px;line-height:1.55;color:var(--ai-ink);background:#f9fbfd;border:1px solid #dce7ef;border-radius:12px;padding:10px 12px;box-shadow:none;}.eduvia-ai-root .eduvia-ai textarea{resize:vertical;font-weight:400;min-height:70px;}.eduvia-ai-root .eduvia-ai small{font-size:11px;font-weight:400;color:#72849a;}.eduvia-ai-root .eduvia-ai .eduvia-ai-status{padding:12px 15px;background:#f0f8fe;border:1px solid #d9ecfa;border-radius:12px;margin-bottom:14px;font-size:13px;line-height:1.6;overflow-wrap:anywhere;}.eduvia-ai-root .eduvia-ai .eduvia-ai-status.is-error{color:#9d3030;background:#fff6f5;border-color:#f1dcd8;}.eduvia-ai-root .eduvia-ai .eduvia-ai-chat{background:#fff;border:1px solid #dfe9f1;border-radius:22px;overflow:hidden;box-shadow:0 5px 24px rgba(42,76,105,.035);}.eduvia-ai-root .eduvia-ai .eduvia-ai-messages{height:clamp(330px,54dvh,680px);min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d5e3ee transparent;padding:clamp(18px,2.3vw,32px);display:flex;flex-direction:column;gap:24px;background:linear-gradient(180deg,#fbfdff 0%,#fff 100%);}.eduvia-ai-root .eduvia-ai .eduvia-ai-message{width:fit-content;max-width:min(90%,860px);align-self:flex-start;min-width:0;flex:0 0 auto;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message-author{display:flex;align-items:center;min-height:25px;margin:0 0 7px 3px;font-size:11px;font-weight:600;color:#8497a8;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message-logo{display:block;width:48px!important;height:15px!important;max-height:15px;object-fit:contain;object-position:left center;max-width:48px!important;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble{padding:15px 19px;border:1px solid #e4edf4;background:#f7fafe;border-radius:6px 18px 18px 18px;font-size:14px;line-height:1.75;color:#344f66;overflow-wrap:anywhere;min-width:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble p{margin:0 0 12px;line-height:inherit;font-size:inherit;font-weight:400;color:inherit;white-space:normal;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble p:last-child{margin-bottom:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble h3{font-size:15px;font-weight:650;line-height:1.5;margin:16px 0 9px;color:#20425d;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble h3:first-child{margin-top:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble strong{font-weight:650;color:#26465f;}
.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble em{font-style:italic;font-weight:inherit;letter-spacing:normal;color:inherit;text-transform:none;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble ul,.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble ol{margin:8px 0 14px;padding-left:22px;list-style-position:outside;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble ul{list-style-type:disc;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble ol{list-style-type:decimal;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble li{padding-left:2px;margin:5px 0;line-height:1.75;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble>:last-child{margin-bottom:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em;padding:2px 5px;border-radius:5px;background:#eaf0f6;color:#315371;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble pre{margin:12px 0;padding:13px;background:#edf3f8;border-radius:10px;white-space:pre-wrap;overflow-wrap:anywhere;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble pre code{padding:0;background:transparent;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message.is-user{align-self:flex-end;max-width:min(80%,720px);}.eduvia-ai-root .eduvia-ai .eduvia-ai-message.is-user .eduvia-ai-message-author{justify-content:flex-end;margin:0 4px 7px 0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message.is-user .eduvia-ai-bubble{background:#eaf5fd;border-color:#d9eaf7;border-radius:18px 6px 18px 18px;color:#2a526f;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome{text-align:center;max-width:620px;width:100%;margin:auto;display:flex;flex-direction:column;align-items:center;padding:12px 0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome-logo{display:block;width:80px!important;height:24px!important;max-height:24px;object-fit:contain;margin:0 auto 18px;max-width:80px!important;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome h2{font-size:clamp(20px,2vw,26px);line-height:1.35;font-weight:650;letter-spacing:-.025em;margin:0 0 10px;color:#23465f;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome p{font-size:14px;color:#7a90a3;line-height:1.7;margin:0 0 24px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-suggestions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:100%;}.eduvia-ai-root .eduvia-ai .eduvia-ai-suggestions button{justify-content:space-between;text-align:left;font-size:12px;font-weight:500;padding:12px 14px;min-height:62px;border-radius:14px;background:#fff;line-height:1.6;}.eduvia-ai-root .eduvia-ai .eduvia-ai-suggestions button>span{color:#8fabbf;font-size:17px;flex:0 0 auto;}.eduvia-ai-root .eduvia-ai .eduvia-ai-compose-area{padding:14px 18px 12px;background:#fff;border-top:1px solid #e8eff5;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer{display:flex;align-items:flex-end;gap:8px;padding:6px;border:1px solid #dce8f1;border-radius:16px;background:#f8fbfd;transition:border-color .16s,box-shadow .16s;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer:focus-within{border-color:#a1d3f3;box-shadow:0 0 0 3px #eef8fe;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer textarea{flex:1;min-height:44px;max-height:160px;resize:none;padding:10px 12px;border:0;background:transparent;border-radius:10px;overflow-y:auto;outline:none;font-size:14px;line-height:1.6;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer textarea:focus{border:0;background:transparent;box-shadow:none!important;outline:none;transform:none;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer textarea:focus-visible{outline:none;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button{min-height:44px;flex:0 0 auto;padding:10px 14px;border-radius:12px;font-size:12px;gap:5px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button svg{width:18px;height:18px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing{display:flex;align-items:flex-start;flex-direction:column;gap:7px;max-width:100%;flex:0 0 auto;margin-left:3px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-bubble{display:flex;align-items:center;gap:11px;padding:12px 16px;min-height:45px;background:#f4f8fc;border:1px solid #e3ecf4;border-radius:6px 16px 16px 16px;color:#7e94a7;font-size:11px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-dots{display:flex;align-items:center;gap:4px;height:14px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-dots i{display:block;width:5px;height:5px;border-radius:50%;background:#73b3dc;animation:eduvia-ai-typing 1.2s ease-in-out infinite;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-dots i:nth-child(2){animation-delay:.16s;}.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-dots i:nth-child(3){animation-delay:.32s;}
@keyframes eduvia-ai-typing{0%,65%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.eduvia-ai-root .eduvia-ai .eduvia-ai-workspace{display:grid;grid-template-columns:minmax(270px,.8fr) minmax(0,1.7fr);gap:25px;align-items:start;background:#fff;border:1px solid #dce7f0;border-radius:20px;padding:24px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form{display:flex;flex-direction:column;gap:16px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form h2{font-size:20px;font-weight:650;margin:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form>p{color:#6e8398;font-size:12px;line-height:1.6;margin:-9px 0 0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;}.eduvia-ai-root .eduvia-ai details{border-top:1px solid #e5edf4;padding-top:12px;}.eduvia-ai-root .eduvia-ai summary{cursor:pointer;font-size:12px;color:#406789;font-weight:600;margin-bottom:10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-preview{min-width:0;border-left:1px solid #e1ebf4;padding-left:24px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-empty{display:flex;min-height:350px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-empty>span{font-size:45px;color:#a9d7f3;}.eduvia-ai-root .eduvia-ai .eduvia-ai-empty h3{font-size:20px;font-weight:650;margin:15px 0 10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-empty p{color:#6d8195;font-size:13px;max-width:390px;line-height:1.7;margin:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result{display:flex;flex-direction:column;gap:16px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result-head{display:flex;justify-content:space-between;gap:10px;align-items:center;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result-head h3{font-size:20px;font-weight:650;margin:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result-head span{font-size:11px;color:#6d8195;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:end;padding-top:15px;border-top:1px solid #e1ebf4;}.eduvia-ai-root .eduvia-ai .eduvia-ai-checkbox{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;font-size:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-checkbox input{width:17px;height:17px;padding:0;accent-color:var(--ai-blue);}.eduvia-ai-root .eduvia-ai .eduvia-ai-delete-confirm{background:#fff6f5;padding:12px;border:1px solid #f1d5d1;border-radius:12px;display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:15px;font-size:13px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}.eduvia-ai-root .eduvia-ai .eduvia-ai-print-frame{position:fixed;width:1px;height:1px;left:-9999px;border:0;}

.eduvia-ai-root .eduvia-ai .eduvia-ai-table-scroll{max-width:100%;overflow-x:auto;border-radius:8px;margin:12px 0;overscroll-behavior-x:contain;}.eduvia-ai-root .eduvia-ai .eduvia-ai-table-scroll table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:13px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-table-scroll :is(td,th){border:1px solid #dce7ef;padding:10px 12px;vertical-align:top;overflow-wrap:anywhere;white-space:normal;line-height:1.55;}.eduvia-ai-root .eduvia-ai .eduvia-ai-table-scroll th{background:#eaf4fb;color:#24435d;font-weight:650;}.eduvia-ai-root .eduvia-ai .eduvia-ai-table-scroll tr:nth-child(even) td{background:#fbfdff;}.eduvia-ai-root .eduvia-ai .eduvia-ai-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-shortcuts button{font-size:12px;padding:8px 10px;color:#087fc9;background:#fff;}
.eduvia-ai-root .eduvia-ai .eduvia-ai-choices{border:0;padding:0;margin:10px 0 15px;min-width:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-choices legend{font-size:12px;font-weight:600;color:#45677f;margin:0 0 10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-choices>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-choices label{display:flex;flex-direction:row;gap:7px;align-items:flex-start;font-weight:400;line-height:1.5;}.eduvia-ai-root .eduvia-ai .eduvia-ai-choices input{flex:none;width:16px;height:16px;min-height:0;padding:0;margin-top:1px;accent-color:#078ee8;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form details{display:flex;flex-direction:column;gap:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form details[open]>label{margin-bottom:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-form input[readonly]{color:#627c92;background:#f1f6fa;cursor:default;}
.eduvia-ai-root .eduvia-ai .eduvia-ai-paper{font-family:inherit;font-size:13px;line-height:1.65;color:#344f66;overflow-wrap:anywhere;min-width:0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-document-logo{display:block;width:72px!important;height:22px!important;object-fit:contain;margin:0 0 18px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper h1{font-size:22px;line-height:1.4;margin:0 0 6px;color:#24435d;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper h2{font-size:15px;margin:23px 0 9px;color:#24435d;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper p{font-size:13px;margin:0 0 10px;line-height:1.65;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper .subtitle{color:#7a90a3;font-size:12px;margin-bottom:18px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper .option{padding-left:15px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper .table-scroll{max-width:100%;overflow:auto;margin:8px 0 14px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper :is(td,th){border:1px solid #d9d9d9;padding:9px 10px;vertical-align:top;overflow-wrap:anywhere;line-height:1.55;text-align:left;white-space:normal;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper table.wide-table{min-width:560px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper th{background:#edf5fb;font-weight:650;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper .page-break{margin-top:24px;border-top:1px solid #e5edf4;}.eduvia-ai-root .eduvia-ai .eduvia-ai-paper .eduvia-ai-document-footer{font-size:10px;color:#7a90a3;text-align:center;margin-top:24px;}.eduvia-ai-root .eduvia-ai [data-ai-edit][open]>label{margin:12px 0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-editor-row{border-bottom:1px solid #e5edf4;padding:14px 0;display:flex;flex-direction:column;gap:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-editor-row h4{font-size:14px;margin:0;color:#45677f;}
@media(max-width:760px){
html[data-portal-brand="guru"] body #root > .flex.h-screen > .flex-1.flex.flex-col > main:has(.eduvia-ai-root){min-height:0!important;overflow-y:auto!important;touch-action:pan-y pinch-zoom!important;padding-bottom:calc(var(--portal-mobile-dock-height) + 8px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(var(--portal-mobile-dock-height) + 8px + env(safe-area-inset-bottom))!important;}
.eduvia-ai-root{flex:0 0 auto;height:auto;min-height:0;}
.eduvia-ai-root[data-ai-current="chat"] .eduvia-ai{min-height:var(--ai-page-height,0px);display:flex;flex-direction:column;}.eduvia-ai-root[data-ai-current="chat"] .eduvia-ai-chat{flex:1;display:flex;flex-direction:column;}.eduvia-ai-root[data-ai-current="chat"] .eduvia-ai-messages{flex:1;}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs{flex-shrink:0;width:100%;margin-bottom:12px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-tabs button{min-width:0;min-height:45px;padding:9px 4px;border-left-width:7px;border-radius:15px;font-size:11px;white-space:normal;}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar{gap:7px;margin-bottom:14px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar label{flex-basis:100%;width:100%;flex-grow:1;}.eduvia-ai-root .eduvia-ai .eduvia-ai-history-bar>button{font-size:12px;padding:9px 12px;min-height:40px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-chat{border-radius:18px;overflow:visible;}.eduvia-ai-root .eduvia-ai .eduvia-ai-messages{border-radius:18px 18px 0 0;padding:18px 14px;height:auto;min-height:clamp(200px,36dvh,340px);max-height:none;overflow:visible;overscroll-behavior:auto;gap:20px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message{max-width:96%;}.eduvia-ai-root .eduvia-ai .eduvia-ai-message.is-user{max-width:90%;}.eduvia-ai-root .eduvia-ai .eduvia-ai-bubble{padding:13px 15px;font-size:14px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome-logo{margin-bottom:18px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome h2{font-size:22px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-welcome p{font-size:13px;margin-bottom:20px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-suggestions{grid-template-columns:1fr;gap:7px;max-width:350px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-suggestions button{min-height:42px;padding:9px 12px;font-size:11px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-compose-area{position:sticky;bottom:0;z-index:2;border-radius:0 0 18px 18px;flex:none;padding:8px;background:#fff;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer textarea{padding:10px 8px;font-size:16px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button{width:44px;min-width:44px;padding:10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button>span{display:none;}.eduvia-ai-root .eduvia-ai .eduvia-ai-workspace{grid-template-columns:1fr;padding:17px;gap:24px;border-radius:16px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-preview{padding:22px 0 0;border-left:0;border-top:1px solid #dce7f0;}.eduvia-ai-root .eduvia-ai .eduvia-ai-empty{min-height:200px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-result-actions>button{flex:1 1 130px;}
}
@media(max-width:360px){.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button>span{display:none;}.eduvia-ai-root .eduvia-ai .eduvia-ai-composer button{width:42px;padding:10px;}.eduvia-ai-root .eduvia-ai .eduvia-ai-field-pair{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.eduvia-ai-root .eduvia-ai .eduvia-ai-typing-dots i{animation:none;}.eduvia-ai-root .eduvia-ai button,.eduvia-ai-root .eduvia-ai .eduvia-ai-composer{transition:none;}}
