/* EDUVIA V106 — canonical simple UI: no animation, no transition, no backdrop blur. */
:root{--tone-087fd4:#087fd4;--tone-0f1c00d7:rgba(255,255,255,.08);--tone-6e5bc0e0:rgba(255,255,255,.1);--tone-bdbe0bae:rgba(255,255,255,.07);--tone-edf2f6:#edf2f6;--tone-edf2f7:#edf2f7;--navy:#063b78;--blue:var(--tone-087fd4);--sky:#e9f4ff;--ink:#14213d;--muted:#6b7a90;--line:#dfe8f1;--white:var(--theme-surface,#fff);--green:#16a16b;--orange:var(--theme-warning,#f59e0b);--rose:#df4d68;--shadow:0 18px 55px rgba(24,53,87,.12);--admin-navy:#0a2f5f;--admin-navy-2:#0b3c78;--admin-blue:#1877d2;--admin-cyan:#36a8e7;--admin-bg:#f3f6fa;--admin-surface:var(--theme-surface,#fff);--admin-text:#16233b;--admin-muted:#718096;--admin-line:var(--theme-border,#d9e8f5);--admin-shadow:0 14px 40px rgba(20,46,80,.09);--admin-shell-topbar-height:74px;--admin-module-heading-height:104px;}
*{box-sizing:border-box;}
html,body{margin:0;min-height:100%;font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--tone-f4f7fb,#f4f7fb);}
button,input{font:inherit;}
button,a{touch-action:manipulation;}
button{cursor:pointer;}
a{text-decoration:none;color:inherit;}
[hidden]{display:none!important;}
.eyebrow{display:block;color:#1681c5;font-weight:800;letter-spacing:.14em;}
.session-restoring body{visibility:visible;}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(390px,.92fr);background:var(--theme-surface,#fff);}
.login-visual{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;padding:8vw;color:var(--theme-surface,#fff);}
.login-visual:after{content:"";position:absolute;right:-120px;bottom:-140px;width:430px;height:430px;border-radius:50%;background:var(--tone-0f1c00d7);}
.login-visual>img{width:72px;height:72px;object-fit:contain;border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);padding:8px;box-shadow:0 16px 36px rgba(0,0,0,.18);position:relative;z-index:2;}
.login-visual>span{margin-top:30px;font-weight:800;letter-spacing:.16em;color:#aee7ff;}
.login-visual h1{max-width:620px;margin:16px 0 12px;font-size:clamp(36px,5vw,66px);line-height:1.04;letter-spacing:-.05em;}
.login-visual p{max-width:560px;margin:0;color:#d9f0ff;font-size:16px;line-height:1.7;}
.visual-products{display:flex;gap:9px;flex-wrap:wrap;margin-top:38px;}
.visual-products b{padding:10px 14px;border:1px solid rgba(255,255,255,.24);border-radius:var(--radius-pill,999px);background:var(--tone-6e5bc0e0);}
.visual-orbit{position:absolute;border:1px solid rgba(255,255,255,.14);border-radius:50%;}
.orbit-one{width:440px;height:440px;right:-160px;top:-180px;}
.orbit-two{width:240px;height:240px;left:-100px;bottom:30px;}
.login-card{width:min(430px,calc(100% - 48px));margin:auto;padding:36px;}
.mobile-login-brand{display:none;}
.login-card h2{margin:10px 0 8px;font-size:30px;letter-spacing:-.04em;}
.login-card>p{margin:0 0 28px;color:var(--muted);font-size:13px;line-height:1.6;}
.login-card label{display:block;margin:17px 0;color:#34445c;font-size:12px;font-weight:800;}
.login-card input{display:block;width:100%;margin-top:8px;padding:14px 15px;border:1px solid #cad7e4;border-radius:13px;outline:0;color:var(--ink);background:var(--theme-surface,#fff);}
.login-card input:focus{border-color:#1687d2;box-shadow:0 0 0 4px rgba(22,135,210,.12);}
.password-wrap{display:flex;align-items:center;position:relative;}
.password-wrap input{padding-right:75px;}
.password-wrap button{position:absolute;right:9px;bottom:9px;padding:7px 10px;border:0;background:#eef6fc;color:#12679f;border-radius:var(--radius-sm,8px);font-size:10px;font-weight:800;}
.primary{border:0;border-radius:var(--radius-md-lg,12px);padding:12px 16px;background:linear-gradient(135deg,var(--tone-087fd4),#0751a0);color:var(--theme-surface,#fff);font-weight:800;box-shadow:0 9px 22px rgba(7,105,182,.2);}
.login-button{width:100%;padding:15px;}
.login-button:disabled{opacity:.65;}
.login-card>small{display:block;margin-top:18px;text-align:center;color:#8794a7;font-size:10px;}
.form-error{padding:11px 13px!important;margin:0 0 14px!important;border:1px solid #f2bdc6;border-radius:var(--radius-md,10px);background:#fff2f4;color:#b62d45;font-weight:700;}
.app-shell{min-height:100vh;}
.sidebar{position:fixed;inset:0 auto 0 0;width:250px;z-index:30;display:flex;flex-direction:column;padding:22px 16px;background:linear-gradient(180deg,#062e61,#073e7d);color:var(--theme-surface,#fff);box-shadow:12px 0 45px rgba(5,39,79,.13);}
.brand{display:flex;align-items:center;gap:11px;padding:3px 8px 24px;}
.brand img{width:42px;height:42px;object-fit:contain;border-radius:var(--radius-md-lg,12px);background:var(--theme-surface,#fff);padding:4px;}
.brand b,.brand small{display:block;}
.brand b{font-size:15px;}
.brand small{margin-top:2px;color:#a8d9f8;font-size:9px;letter-spacing:.08em;text-transform:uppercase;}
.sidebar nav{display:grid;gap:5px;}
.sidebar nav a,.sidebar nav button{position:relative;display:flex;align-items:center;gap:11px;width:100%;min-height:var(--eduvia-nav-h,42px);padding:9px 12px;border:0;border-radius:var(--radius-md-lg,12px);background:transparent;color:#d5e9f7;text-align:left;font-size:12px;font-weight:700;}
.sidebar nav a:hover,.sidebar nav button:hover,.sidebar nav button.active{background:rgba(255,255,255,.12);color:var(--theme-surface,#fff);}
.nav-icon{width:22px;text-align:center;font-size:18px;}
.sidebar nav em{margin-left:auto;min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:var(--radius-pill,999px);background:#f25369;color:var(--theme-surface,#fff);font-size:9px;font-style:normal;}
.sidebar-status{display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md-lg,12px);background:rgba(255,255,255,.06);}
.sidebar-status>span{width:9px;height:9px;border-radius:50%;background:#44dc9b;box-shadow:0 0 0 5px rgba(68,220,155,.12);}
.sidebar-status b,.sidebar-status small{display:block;}
.sidebar-status b{font-size:10px;}
.sidebar-status small{margin-top:2px;color:#acd3ec;font-size:8px;}
.logout-button{border:0;border-radius:11px;background:transparent;color:#cce2f1;text-align:left;font-size:11px;font-weight:800;}
.logout-button:hover{background:var(--tone-6e5bc0e0);}
.workspace{min-height:100vh;margin-left:250px;}
.topbar{position:sticky;top:0;z-index:20;height:78px;display:flex;align-items:center;padding:0 30px;border-bottom:1px solid rgba(211,224,237,.8);background:rgba(255,255,255,.92);}
.topbar>div:first-of-type small{display:block;color:#1681c5;font-weight:800;}
.topbar h2{margin:3px 0 0;}
.menu-button{display:none;margin-right:12px;font-size:22px;}
.topbar-actions{display:flex;align-items:center;gap:10px;margin-left:auto;}
.profile-button{display:flex;align-items:center;gap:9px;border-radius:var(--radius-md-lg,12px);background:transparent;color:var(--ink);text-align:left;}
.profile-button>span{display:grid;place-items:center;color:#075ba9;font-weight:800;}
.profile-button b,.profile-button small{display:block;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

.profile-button small{color:var(--muted);}
.notification-root{position:relative;}
.notification-button{position:relative;border:1px solid var(--line);background:var(--theme-surface,#fff);font-size:21px;}
.notification-button span{position:absolute;right:-4px;top:-5px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--theme-surface,#fff);border-radius:var(--radius-pill,999px);background:#ed4c68;color:var(--theme-surface,#fff);font-weight:800;}
.notification-panel{position:absolute;right:0;top:52px;width:min(420px,calc(100vw - 30px));overflow:hidden;border:1px solid var(--line);background:var(--theme-surface,#fff);}
.notification-panel header{display:flex;align-items:center;padding:16px;border-bottom:1px solid var(--tone-edf2f7);}
.notification-panel header b,.notification-panel header small{display:block;}

.notification-panel header small{margin-top:3px;color:var(--muted);font-size:9px;}
.notification-panel header button{margin-left:auto;border:0;background:transparent;color:#8190a4;font-size:20px;}
.notification-list{max-height:420px;overflow:auto;}
.notification-item{display:flex;gap:10px;width:100%;padding:13px 15px;border:0;border-bottom:1px solid var(--tone-edf2f7);background:#f5faff;text-align:left;}
.notification-item.read{background:var(--theme-surface,#fff);}
.notification-dot{width:8px;height:8px;flex:0 0 auto;margin-top:5px;border-radius:50%;background:#1689d3;}
.notification-item.read .notification-dot{background:#c9d3dc;}
.notification-item b,.notification-item small,.notification-item time{display:block;}

.notification-item small{margin-top:3px;color:#63748a;}
.notification-item time{margin-top:5px;color:#98a5b5;}
.notification-panel footer{display:flex;justify-content:space-between;padding:11px 14px;}
.notification-panel footer button{border:0;background:transparent;color:#0875bf;font-size:9px;font-weight:800;}
.page{display:none;padding:28px 30px 48px;}
.page.active{display:block;}
.welcome-banner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;color:var(--theme-surface,#fff);}
.welcome-banner:before,.welcome-banner:after{content:"";position:absolute;border-radius:50%;background:var(--tone-0f1c00d7);}
.welcome-banner:before{width:280px;height:280px;right:-100px;top:-150px;}
.welcome-banner:after{width:180px;height:180px;right:190px;bottom:-150px;}
.welcome-banner .eyebrow{color:#bdeaff;}
.welcome-banner h1{margin:9px 0 7px;letter-spacing:-.04em;}
.welcome-banner p{margin:0;color:#d8f1ff;}
.welcome-date{position:relative;z-index:1;min-width:175px;padding:16px 20px;border:1px solid rgba(255,255,255,.2);background:var(--tone-6e5bc0e0);}
.welcome-date small,.welcome-date b{display:block;}
.welcome-date small{color:#ccecff;font-size:9px;}
.welcome-date b{margin-top:5px;font-size:13px;}
.global-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px;}
.global-metrics article{border:1px solid var(--line);background:var(--theme-surface,#fff);}
.global-metrics span,.global-metrics b,.global-metrics small{display:block;}
.global-metrics span{color:#5c6c83;font-weight:700;}
.global-metrics b{margin:7px 0 3px;color:#0a4f91;}
.global-metrics small{color:#9aa7b6;}
.section-heading,.page-heading{display:flex;align-items:end;justify-content:space-between;margin:30px 0 14px;}
.section-heading h2,.page-heading h1{margin:5px 0 0;letter-spacing:-.035em;}
.section-heading>small{color:var(--muted);}
.page-heading{align-items:center;margin-top:6px;}
.page-heading h1{font-size:27px;}
.page-heading p{margin:6px 0 0;color:var(--muted);}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.product-card{position:relative;min-height:285px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:0 8px 25px rgba(34,64,97,.05);}
.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.product-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;border-radius:var(--radius-3xl,20px) var(--radius-3xl,20px) 0 0;background:#1787cf;}
.product-card.counseling:before{background:#23a97a;}
.product-card.admission:before{background:#f39a2f;}
.product-logo{width:51px;height:51px;display:grid;place-items:center;border-radius:15px;background:#eff7ff;}
.product-logo img{max-width:41px;max-height:41px;object-fit:contain;}
.text-logo{background:#e6f9f1;color:#14805b;font-weight:800;}
.product-status{position:absolute;right:18px;top:20px;padding:6px 9px;border-radius:var(--radius-pill,999px);background:#e8f8f1;color:#168258;font-weight:800;}
.product-status.offline{background:#fff0f2;color:#bd3e52;}
.product-card h3{margin:17px 0 7px;font-size:17px;}
.product-card p{min-height:49px;margin:0;color:var(--muted);}
.product-stats{display:flex;gap:8px;margin:16px 0;}
.product-stats span{padding:7px 9px;border-radius:var(--radius-sm,8px);background:#f4f7fa;color:#728095;}
.product-stats b{color:#23476d;}
.open-product{display:block;margin-top:16px;color:#0874bd;font-size:10px;}
.dashboard-lower{display:grid;grid-template-columns:1.45fr .75fr;margin-top:18px;}
.panel{border:1px solid var(--line);background:var(--theme-surface,#fff);box-shadow:0 7px 24px rgba(35,65,100,.04);}
.panel>header{display:flex;align-items:center;border-bottom:1px solid var(--tone-edf2f6);}
.panel h3{margin:4px 0 0;}
.panel>header button{margin-left:auto;border:0;background:transparent;color:#0873bd;font-size:9px;font-weight:800;}
.attention-list{padding:6px 18px;}
.attention-row{display:flex;align-items:center;gap:11px;padding:12px 1px;border-bottom:1px solid var(--tone-edf2f6);}
.attention-row:last-child{border:0;}
.attention-row>span{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-md,10px);background:#eef7ff;color:#0872ba;font-weight:800;}
.attention-row b,.attention-row small{display:block;}

.attention-row small{margin-top:3px;color:var(--muted);}
.attention-row time{margin-left:auto;color:#9aa6b4;}
.system-panel>div{padding:11px 18px;}
.connection-row{display:flex;align-items:center;padding:11px 0;border-bottom:1px solid var(--tone-edf2f6);}
.connection-row:last-child{border:0;}
.connection-row span{width:9px;height:9px;margin-right:9px;border-radius:50%;background:#27b47e;}
.connection-row.offline span{background:#e2556a;}

.connection-row small{margin-left:auto;color:#8795a7;}
.empty-state{padding:24px;text-align:center;color:#8b98a8;font-size:10px;}
.filter-row{display:flex;gap:7px;margin:12px 0;}
.filter-row button{padding:9px 13px;border:1px solid var(--line);border-radius:var(--radius-md,10px);background:var(--theme-surface,#fff);color:#607086;font-size:9px;font-weight:800;}
.filter-row button.active{border-color:#1583cb;background:#eaf6ff;color:#0871b8;}
.notification-page-list{overflow:hidden;}
.notification-page-list .notification-item{padding:16px 18px;}
.table-panel{overflow:hidden;}
.table-wrap{overflow:auto;}
table{width:100%;border-collapse:collapse;min-width:740px;}
th,td{padding:13px 15px;border-bottom:1px solid #e9eff4;text-align:left;font-size:9px;}
th{background:#f7f9fb;color:#65758a;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
td{color:#36485f;}
.toast{position:fixed;right:18px;bottom:18px;z-index:100;padding:13px 16px;border-radius:var(--radius-md-lg,12px);background:#112a45;color:var(--theme-surface,#fff);box-shadow:var(--shadow);font-weight:700;}
@media (max-width:1100px){.global-metrics{grid-template-columns:repeat(2,1fr);}
.product-grid{grid-template-columns:1fr;}
.product-card{min-height:0;}
.product-card p{min-height:0;}
.dashboard-lower{grid-template-columns:1fr;}}
@media (max-width:760px){.login-shell{display:block;padding:26px 0;background:linear-gradient(180deg,#eef7ff,var(--theme-surface,#fff));}
.login-visual{display:none;}
.login-card{width:min(430px,calc(100% - 24px));padding:25px 20px;border:1px solid var(--line);border-radius:var(--radius-3xl,20px);background:var(--theme-surface,#fff);box-shadow:var(--shadow);}
.mobile-login-brand{display:flex;align-items:center;gap:9px;margin-bottom:25px;}
.mobile-login-brand img{width:38px;height:38px;object-fit:contain;}
.sidebar{transform:translateX(-105%);}
.sidebar.open{transform:translateX(0);}
.workspace{margin-left:0;}
.topbar{height:68px;padding:0 14px;}
.menu-button{display:block;}
.profile-button div{display:none;}
.page{padding:18px 12px 36px;}
.welcome-banner{min-height:0;padding:25px 20px;border-radius:19px;}
.welcome-banner h1{font-size:24px;}
.welcome-date{display:none;}
.global-metrics{gap:9px;}
.global-metrics article{padding:15px;}
.global-metrics b{font-size:21px;}
.section-heading{display:block;}
.section-heading>small{display:block;margin-top:6px;}
.product-grid{gap:11px;}
.product-card{padding:18px;}
.dashboard-lower{gap:11px;}
.page-heading{display:block;}
.page-heading .primary{margin-top:13px;}
.notification-panel{position:fixed;right:10px;top:74px;width:calc(100vw - 20px);}
.topbar h2{font-size:15px;}
.profile-button{padding:3px;}
.profile-button>span{width:34px;height:34px;}
.notification-button{width:38px;height:38px;}
.sidebar:after{content:"";}
.section-heading{margin-top:23px;}}
.unified-nav{flex:1;min-height:0;overflow-y:auto;padding-right:3px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;}
.unified-nav::-webkit-scrollbar{width:5px;}
.unified-nav::-webkit-scrollbar-thumb{border-radius:9px;background:rgba(255,255,255,.22);}
.nav-group{display:block;padding:17px 12px 5px;color:#7fc4ec;font-weight:800;letter-spacing:.13em;}
.nav-group:first-child{padding-top:2px;}
.sidebar .unified-nav{gap:4px;}
.sidebar .unified-nav button{min-height:var(--eduvia-nav-h,42px);padding:8px 10px;gap:9px;border-radius:11px;font-size:10px;}
.sidebar .unified-nav .nav-icon{width:20px;font-size:15px;}
.sidebar-status{margin-top:10px;padding:10px 12px;}
.logout-button{margin-top:8px;padding:9px 11px;}
.quick-action-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.quick-action{display:grid;grid-template-columns:42px 1fr 18px;gap:11px;align-items:center;border:1px solid var(--line);background:var(--theme-surface,#fff);color:var(--ink);text-align:left;box-shadow:0 7px 22px rgba(35,65,100,.04);}
.quick-action:hover{transform:translateY(-2px);border-color:#b8d8ef;box-shadow:var(--shadow);}
.quick-action>span{display:grid;place-items:center;border-radius:var(--radius-md-lg,12px);background:#edf7ff;color:#0874bd;font-size:20px;}
.quick-action.counseling>span{background:#e8f8f3;color:#158260;}
.quick-action.admission>span{background:#fff4e6;color:#c87212;}
.quick-action b,.quick-action small{display:block;}
.quick-action small{margin-top:5px;color:var(--muted);}
.quick-action small strong{color:#234b70;}
.quick-action>em{color:#93a2b4;font-style:normal;}
.product-connection-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:14px;overflow:hidden;border:1px solid var(--line);background:var(--line);}
.product-connection-strip>span{display:grid;grid-template-columns:10px 1fr;column-gap:9px;background:var(--theme-surface,#fff);}
.product-connection-strip i{grid-row:1/3;width:9px;height:9px;margin-top:2px;border-radius:50%;background:#27b47e;box-shadow:0 0 0 4px rgba(39,180,126,.1);}
.product-connection-strip i.offline{background:#e2556a;box-shadow:0 0 0 4px rgba(226,85,106,.1);}

.product-connection-strip small{margin-top:3px;color:var(--muted);}
.attention-row{width:100%;border-left:0;border-right:0;border-top:0;background:transparent;color:inherit;text-align:left;}
.attention-row:hover{background:#f8fbfd;}
.module-page{padding:0;background:var(--tone-edf2f7);}
.module-heading{display:flex;align-items:center;justify-content:space-between;}
.module-heading h1{letter-spacing:-.03em;}
.module-heading p{margin:0;color:var(--muted);}
.module-product{display:inline-flex;border-radius:var(--radius-pill,999px);background:#eaf5ff;color:#0871b8;font-weight:800;}
.module-product[data-product="counseling"]{background:#e5f8f2;color:#08766d;}
.module-product[data-product="ppdb"]{background:#fff2e2;color:#bd6810;}
.module-refresh{border:1px solid #c9d9e7;font-size:9px;font-weight:800;}
.module-frame-shell{position:relative;}
.module-loading{position:absolute;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;gap:10px;color:#587087;}
.module-loading span{width:34px;height:34px;border:3px solid #d5e6f2;border-top-color:var(--tone-087fd4);border-radius:50%;}
@media (max-width:1200px){.quick-action-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:760px){

.module-page{padding:0;}


.module-refresh{font-size:8px;}
}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden;}
.sidebar svg,.topbar svg,.quick-action svg,.module-refresh svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.app-shell .sidebar{width:280px!important;padding:18px 14px 14px!important;background:linear-gradient(180deg,var(--admin-navy) 0%,#0b3971 68%,#092b55 100%);box-shadow:12px 0 36px rgba(9,36,70,.14);}
.app-shell .brand{gap:12px;padding:2px 8px 18px!important;border-bottom:1px solid var(--tone-6e5bc0e0);margin-bottom:12px;}
.app-shell .brand img{width:44px;height:44px;border-radius:13px;padding:5px;box-shadow:0 8px 20px rgba(0,0,0,.13);}
.app-shell .brand b{font-size:15px;letter-spacing:-.01em;}
.app-shell .brand small{font-size:8px;letter-spacing:.13em;color:#91caef;}
.app-shell .unified-nav{display:block!important;flex:1;min-height:0;padding:0 3px 5px 0!important;overflow-y:auto;}
.nav-caption{display:block;padding:8px 11px 7px;color:#7eb9e2;font-weight:800;letter-spacing:.14em;}
.nav-primary{padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.09);margin-bottom:8px;}
.sidebar .unified-nav button{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-shadow:none;transform:none!important;}
.sidebar .nav-primary>button,.sidebar .nav-section-items>button{display:flex!important;align-items:center!important;gap:11px!important;width:100%!important;margin:2px 0!important;padding:9px 11px!important;border:1px solid transparent;border-radius:11px;background:transparent;color:#cfe4f5;text-align:left!important;font-weight:650;line-height:1.3;}
.sidebar .nav-primary>button:hover,.sidebar .nav-section-items>button:hover{background:var(--tone-0f1c00d7);color:var(--theme-surface,#fff);}
.sidebar .nav-primary>button.active,.sidebar .nav-section-items>button.active{border-color:rgba(136,204,247,.18);background:linear-gradient(135deg,rgba(46,137,211,.45),rgba(55,155,222,.27));color:var(--theme-surface,#fff);box-shadow:inset 3px 0 0 #65c1f2,0 8px 18px rgba(0,23,55,.12);}
.sidebar .nav-icon{flex:0 0 19px;width:19px!important;height:19px!important;color:#9bd0ef;}
.sidebar button.active .nav-icon{color:var(--theme-surface,#fff);}
.sidebar .unified-nav em{margin-left:auto;border:2px solid rgba(255,255,255,.18);background:#ef5772;font-size:8px;}
.nav-section{padding:3px 0;border-bottom:1px solid var(--tone-bdbe0bae);}
.sidebar .nav-section-toggle{display:grid!important;grid-template-columns:32px 1fr 18px!important;gap:10px!important;align-items:center!important;width:100%!important;padding:8px 9px!important;margin:0!important;border:0;border-radius:var(--radius-md-lg,12px);background:transparent;color:var(--theme-surface,#fff);text-align:left!important;}
.sidebar .nav-section-toggle:hover{background:rgba(255,255,255,.06);}
.nav-section-toggle .section-icon{width:32px;height:32px;padding:7px;border:1px solid rgba(151,210,244,.16);border-radius:var(--radius-md,10px);background:var(--tone-bdbe0bae);color:#a9ddf8;}
.nav-section-toggle span b,.nav-section-toggle span small{display:block;}
.nav-section-toggle span b{font-size:11px;font-weight:750;}
.nav-section-toggle span small{margin-top:3px;color:#8fc0df;font-size:8px;font-weight:500;}
.nav-section-toggle .chevron{width:17px;height:17px;color:#8ebad8;}
.nav-section.open .chevron{transform:rotate(90deg);}
.nav-section-items{display:none;padding:1px 0 6px 12px;}
.nav-section.open .nav-section-items{display:block;}
.sidebar .nav-section-items>button{padding:8px 10px!important;}
.sidebar .sidebar-status{flex:0 0 auto;margin-top:10px!important;padding:10px 11px!important;border-color:var(--tone-6e5bc0e0);background:rgba(255,255,255,.055);}

.sidebar .sidebar-status small{color:#91c4e5;}
.sidebar .logout-button{display:flex;align-items:center;gap:10px;width:100%;margin-top:7px!important;padding:8px 11px!important;border:1px solid transparent;color:#b9d5e9;}
.sidebar .logout-button:hover{border-color:var(--tone-6e5bc0e0);background:var(--tone-bdbe0bae);color:var(--theme-surface,#fff);}
.logout-button svg{width:18px;height:18px;}
.app-shell .workspace{margin-left:280px!important;background:var(--admin-bg);}
.app-shell .topbar{height:74px!important;padding:0 26px!important;border-bottom:1px solid var(--admin-line)!important;background:rgba(255,255,255,.96);box-shadow:0 3px 18px rgba(35,57,83,.035);}
.topbar>div:first-of-type small{letter-spacing:.16em;}
.topbar h2{margin-top:4px!important;color:var(--admin-text);font-size:17px;letter-spacing:-.02em;}
.menu-button{width:40px;height:40px;padding:9px!important;border:1px solid var(--admin-line);border-radius:11px;background:var(--theme-surface,#fff);color:var(--admin-navy);}
.menu-button svg{width:20px;height:20px;}
.notification-button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border-color:var(--admin-line);border-radius:11px;color:#315d87;box-shadow:0 4px 12px rgba(35,61,90,.04);}
.notification-button>svg{width:19px;height:19px;}
.profile-button{padding:5px 8px 5px 5px!important;border:1px solid transparent;}
.profile-button:hover{border-color:var(--admin-line);background:var(--theme-surface-soft,#f7fbff);}
.profile-button>span{width:37px!important;height:37px!important;border-radius:var(--radius-md,10px);background:linear-gradient(135deg,#e7f4ff,#d9ebfb);}
.app-shell .page{padding:26px 28px 44px;}
.welcome-banner{min-height:175px!important;padding:30px 34px!important;border-radius:var(--radius-3xl,20px);background:linear-gradient(130deg,#0a3973,#1079c5 64%,#35a8df);box-shadow:0 16px 38px rgba(12,92,159,.17);}
.welcome-banner h1{font-size:28px;}

.welcome-date{border-radius:var(--radius-lg,14px);}
.global-metrics{gap:12px!important;}
.global-metrics article{position:relative;overflow:hidden;padding:18px!important;border-radius:15px;box-shadow:0 5px 18px rgba(35,65,100,.035);}
.global-metrics article:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:#258ed2;}
.global-metrics b{font-size:24px;}


.section-heading{margin:26px 0 12px!important;}
.section-heading h2{font-size:19px;}

.quick-action-grid{gap:12px!important;}
.quick-action{padding:14px!important;border-radius:15px;}
.quick-action>span{width:40px!important;height:40px!important;}
.quick-action>span svg{width:20px;height:20px;}


.quick-action>em{font-size:14px;}
.product-connection-strip{border-radius:var(--radius-lg,14px);}
.product-connection-strip>span{padding:13px 14px!important;}
.dashboard-lower{gap:14px!important;}
.panel{border-radius:var(--radius-xl,16px);}
.panel>header{padding:15px 17px!important;}
.panel h3{font-size:13px;}
.app-shell .module-page{padding:0!important;background:#eef2f7;}
.module-heading{min-height:82px;padding:15px 24px!important;border-bottom:1px solid var(--admin-line)!important;background:var(--theme-surface,#fff);}
.module-heading h1{margin:5px 0 2px!important;color:var(--admin-text);}

.module-product{padding:4px 8px!important;letter-spacing:.13em;}
.module-refresh{display:flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px!important;border-color:#ccd9e6;border-radius:var(--radius-md,10px);background:var(--theme-surface,#fff);color:#315d87;}
.module-refresh:hover{background:#f5f9fc;}
.module-refresh svg{width:16px;height:16px;}
.module-refresh span{font-weight:750;}
.module-frame-shell{height:calc(100vh - 156px)!important;min-height:580px!important;background:var(--tone-f4f7fb,#f4f7fb);}
.module-frame-shell iframe{display:block!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;border:0;background:var(--tone-f4f7fb,#f4f7fb);}
.module-loading{background:linear-gradient(180deg,#f7f9fc,#f2f5f9);}
.module-loading b{font-weight:650;}
.module-error{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;background:linear-gradient(180deg,var(--theme-surface-soft,#f7fbff),var(--theme-surface-muted,#edf5fc));text-align:center;}
.module-error[hidden]{display:none!important;}
.module-error>svg{width:36px;height:36px;padding:8px;border-radius:var(--radius-md-lg,12px);background:#e5eff8;color:#47769f;}
.module-error h3{margin:13px 0 5px;font-size:15px;}
.module-error p{margin:0;color:var(--admin-muted);}
.module-error button{margin-top:14px;padding:9px 14px;border:0;border-radius:var(--radius-md,10px);background:var(--admin-blue);color:var(--theme-surface,#fff);font-weight:750;}
.notification-panel{border-radius:15px;box-shadow:0 22px 55px rgba(17,45,79,.16);}
.notification-item{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.filter-row button{font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.table-panel{border-radius:15px;}

.login-card{border-radius:var(--radius-4xl,22px);}
.login-button{min-height:49px;}
.login-visual{background:linear-gradient(145deg,#082e5f,#0b5ea8 65%,#1b98d3);}
@media (max-width:1180px){.quick-action-grid{grid-template-columns:repeat(2,1fr)!important;}}
@media (max-width:760px){.app-shell .sidebar{width:min(290px,88vw)!important;transform:translateX(-105%);}
.app-shell .sidebar.open{transform:translateX(0);}
.app-shell .workspace{margin-left:0!important;}
.app-shell .topbar{height:66px!important;padding:0 12px!important;}
.app-shell .page{padding:16px 11px 34px;}
.quick-action-grid{grid-template-columns:1fr!important;}
.product-connection-strip{grid-template-columns:1fr!important;}
.module-heading{min-height:72px;padding:11px 12px!important;}
.module-heading h1{font-size:15px;}
.module-heading p{display:none;}
.module-refresh span{display:none;}
.module-refresh{width:38px;justify-content:center;padding:8px!important;}
.module-frame-shell{height:calc(100vh - 138px)!important;min-height:520px!important;}}
html.module-workspace-open,
html.module-workspace-open body{width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none!important;}
html.module-workspace-open .app-shell{width:100%!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;}
html.module-workspace-open .app-shell > .workspace{height:100dvh!important;min-height:0!important;overflow:hidden!important;overscroll-behavior:none!important;}
.app-shell,
.app-shell > .workspace,
.app-shell .module-page,
.app-shell .module-frame-shell{min-width:0!important;max-width:none!important;}
.app-shell > .workspace{width:calc(100% - 280px)!important;}
.app-shell .module-page.active{display:block!important;width:100%!important;overflow:hidden!important;}
html.module-workspace-open .app-shell .module-page.active{height:calc(100dvh - var(--admin-shell-topbar-height))!important;min-height:0!important;max-height:calc(100dvh - var(--admin-shell-topbar-height))!important;}
.app-shell .module-heading,
.app-shell .module-frame-shell{width:100%!important;max-width:none!important;}
html.module-workspace-open .app-shell .module-heading{box-sizing:border-box!important;height:var(--admin-module-heading-height)!important;min-height:var(--admin-module-heading-height)!important;max-height:var(--admin-module-heading-height)!important;overflow:hidden!important;}
.app-shell .module-frame-shell{position:relative!important;overflow:hidden!important;contain:layout paint;}
html.module-workspace-open .app-shell .module-frame-shell{height:calc(100dvh - var(--admin-shell-topbar-height) - var(--admin-module-heading-height))!important;min-height:0!important;max-height:calc(100dvh - var(--admin-shell-topbar-height) - var(--admin-module-heading-height))!important;}
.app-shell .module-frame-shell > iframe#moduleFrame{position:absolute!important;inset:0!important;display:block!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;border:0;}
@media (max-width: 760px){body{--admin-shell-topbar-height:66px;--admin-module-heading-height:72px;}
.app-shell > .workspace{width:100%!important;}}
.app-shell .module-frame-shell > iframe.module-frame{position:absolute!important;inset:0!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important;min-height:100%!important;margin:0!important;padding:0!important;border:0;}
.app-shell .module-frame-shell > iframe.module-frame[hidden]{display:none!important;}
.app-shell .module-frame-shell > iframe.module-frame:not([hidden]){display:block!important;}
.app-shell #moduleLoading{display:none!important;pointer-events:none!important;}
html,
body{font-size:14px;}
body :where(button, input, select, textarea, label, p, small, td, th, time, em, a, li){font-size:13px;line-height:1.5;}
.eyebrow,
.nav-caption,
.module-product,
.module-refresh span,
.sidebar .nav-section-toggle span b,
.sidebar .nav-section-toggle span small,
.sidebar .sidebar-status b,
.sidebar .sidebar-status small,
.profile-button b,
.profile-button small,
.global-metrics span,
.global-metrics small,
.quick-action b,
.quick-action small,
.product-connection-strip b,
.product-connection-strip small,
.attention-row b,
.attention-row small,
.attention-row time,
.connection-row b,
.connection-row small,
.notification-item b,
.notification-item small,
.notification-item time,
.module-loading b,
.module-error p,
.product-status,
.product-stats span,
.visual-products b,
.login-visual > span,
.notification-panel header b,
.notification-button span,
.product-stats b,
.attention-row > span,
.nav-group,
.topbar > div:first-of-type small,
.section-heading > small,
.module-heading p,
.module-error button,
.toast{font-size:13px;line-height:1.45;}
.sidebar .nav-primary > button,
.sidebar .nav-section-items > button{min-height:46px!important;font-size:13px;}
.sidebar .nav-section-toggle{min-height:64px!important;}
.sidebar .logout-button{min-height:46px!important;font-size:13px;}
.notification-button span{min-width:24px!important;height:24px!important;}
.sidebar .nav-section-toggle span b{font-weight:750;}
.sidebar .unified-nav em{min-width:25px!important;height:25px!important;}
.quick-action{min-height:100px!important;}
.module-heading h1{font-size:20px;}
.page-heading p,
.welcome-banner p,
.product-card p{font-size:14px;line-height:1.65;}
@media (max-width: 760px){body{--admin-module-heading-height:86px;}
.sidebar .nav-primary > button,
  .sidebar .nav-section-items > button{min-height:48px!important;}
.module-heading h1{font-size:17px;}}
#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;}}

/* EDUVIA Admin Native — polish khusus APK. Tidak mengubah tampilan browser desktop. */
html.eduvia-admin-native,
html.eduvia-admin-native body{
  min-height:100dvh;
  overscroll-behavior:none;
  -webkit-tap-highlight-color:transparent;
  background:#f3f6fa;
}
html.eduvia-admin-native body{
  padding-top:env(safe-area-inset-top);
  padding-bottom:env(safe-area-inset-bottom);
}
html.eduvia-admin-native .topbar{
  top:env(safe-area-inset-top);
}
html.eduvia-admin-native .notification-panel,
html.eduvia-admin-native .profile-menu,
html.eduvia-admin-native .panel,
html.eduvia-admin-native .quick-action,
html.eduvia-admin-native .global-metrics article{
  border-color:rgba(211,224,237,.86);
  box-shadow:0 10px 32px rgba(20,46,80,.075);
}
html.eduvia-admin-native button,
html.eduvia-admin-native a,
html.eduvia-admin-native input,
html.eduvia-admin-native select,
html.eduvia-admin-native textarea{
  -webkit-tap-highlight-color:transparent;
}
@media (max-width:760px){
  html.eduvia-admin-native body{--admin-shell-topbar-height:70px;}
  html.eduvia-admin-native .app-shell .topbar{
    height:70px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    background:rgba(255,255,255,.985);
  }
  html.eduvia-admin-native .app-shell .page{padding:16px 12px 34px!important;}
  html.eduvia-admin-native .welcome-banner{border-radius:24px!important;}
  html.eduvia-admin-native .quick-action,
  html.eduvia-admin-native .global-metrics article,
  html.eduvia-admin-native .panel{border-radius:18px!important;}
  html.eduvia-admin-native .menu-button,
  html.eduvia-admin-native .notification-button{border-radius:13px!important;}
  html.eduvia-admin-native .sidebar{padding-top:calc(18px + env(safe-area-inset-top))!important;padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;}
  html.eduvia-admin-native #portal-notification-permission-v78{display:none!important;}
}
