/* SDPI Digital Campus PWA shell v1.0.41 / Campus v1.12.310
   Standalone-only mobile shell; no desktop portal replacement. */
:root{--sdpi-pwa-blue:#233b2d;--sdpi-pwa-blue-deep:#192c21;--sdpi-pwa-green:#c7a24b;--sdpi-pwa-text:#1f2937;--sdpi-pwa-border:#ded8c9;--sdpi-pwa-surface:#fff}
.sdpi-pwa-mobile-header,.sdpi-pwa-bottom-nav{display:none}
  html.sdpi-pwa-standalone body.sdpi-portal-body{padding-top:62px!important;padding-bottom:calc(76px + env(safe-area-inset-bottom))!important;background:#f8f5ec!important}
  html.sdpi-pwa-standalone body.admin-bar{padding-top:62px!important}
  html.sdpi-pwa-standalone #wpadminbar{display:none!important}
  html.sdpi-pwa-standalone .sdpi-portal-header,html.sdpi-pwa-standalone .sdpi-portal-footer,html.sdpi-pwa-standalone .sdpi-staff-compact-footer{display:none!important}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-header{position:fixed;display:flex;top:0;left:0;right:0;z-index:10020;min-height:62px;padding:max(8px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 8px max(14px,env(safe-area-inset-left));align-items:center;justify-content:space-between;gap:12px;background:rgba(255,255,255,.98);border-bottom:1px solid var(--sdpi-pwa-border);box-shadow:0 5px 18px rgba(35,59,45,.08);backdrop-filter:blur(12px)}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand{display:flex;align-items:center;min-width:0;gap:9px;color:var(--sdpi-pwa-text)!important;text-decoration:none!important}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand>span{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:8px;background:var(--sdpi-pwa-green);color:var(--sdpi-pwa-text);font-size:13px;font-weight:900;letter-spacing:.02em}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand strong,html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand strong{font-size:16px;line-height:1.15;color:var(--sdpi-pwa-blue)}
  html.sdpi-pwa-standalone .sdpi-pwa-mobile-brand small{margin-top:2px;font-size:13px;line-height:1.15;color:var(--sdpi-pwa-text)}
  html.sdpi-pwa-standalone .sdpi-pwa-online-state{display:inline-flex;align-items:center;min-height:29px;padding:5px 8px;border:1px solid #dfcf9f;border-radius:6px;background:#f6efdf;color:#233b2d;font-size:13px;font-weight:800}
  html.sdpi-pwa-standalone .sdpi-pwa-online-state.is-offline{border-color:#ebc5bf;background:#fff3f1;color:#89291e}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));left:0;right:0;bottom:0;z-index:10030;min-height:68px;padding:7px max(6px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:rgba(255,255,255,.985);border-top:1px solid var(--sdpi-pwa-border);box-shadow:0 -8px 24px rgba(35,59,45,.10);backdrop-filter:blur(14px)}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a{display:flex;min-width:0;min-height:52px;align-items:center;justify-content:center;flex-direction:column;gap:3px;border-radius:8px;color:#526579!important;text-decoration:none!important;font-size:12px!important;font-weight:750!important;line-height:1.1!important}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a>b{display:grid;place-items:center;width:28px;height:25px;border-radius:6px;background:#f6efdf;color:var(--sdpi-pwa-blue);font-size:11px;line-height:1;font-weight:900}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a>span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a:is(:hover,:focus-visible,.is-active){background:#f6efdf;color:var(--sdpi-pwa-blue)!important;outline:none}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a.is-active>b{background:var(--sdpi-pwa-green);color:var(--sdpi-pwa-text)}
  html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a.is-active{box-shadow:inset 0 3px 0 var(--sdpi-pwa-green)}

  /* Installed app gets a real mobile canvas rather than a desktop sidebar squeezed into a phone. */
  html.sdpi-pwa-standalone .sdpi-admin-shell,html.sdpi-pwa-standalone .sdpi-ops-shell,html.sdpi-pwa-standalone .sdpi-student-classic-shell{display:block!important;grid-template-columns:1fr!important;max-width:none!important;width:100%!important}
  html.sdpi-pwa-standalone .sdpi-admin-sidebar,html.sdpi-pwa-standalone .sdpi-ops-sidebar,html.sdpi-pwa-standalone .sdpi-student-side-nav{display:none!important}
  html.sdpi-pwa-standalone .sdpi-admin-main,html.sdpi-pwa-standalone .sdpi-ops-main,html.sdpi-pwa-standalone .sdpi-student-classic-main{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
  html.sdpi-pwa-standalone .sdpi-admin-main,html.sdpi-pwa-standalone .sdpi-ops-main{padding:8px!important}
  html.sdpi-pwa-standalone body.sdpi-portal-body .sdpi-scm-public-wrap{padding-left:8px!important;padding-right:8px!important;padding-bottom:12px!important}
  html.sdpi-pwa-standalone .sdpi-admin-head,html.sdpi-pwa-standalone .sdpi-ops-head{position:static!important;margin:0 0 8px!important;padding:12px!important;border-radius:10px!important}
  html.sdpi-pwa-standalone .sdpi-admin-head h1,html.sdpi-pwa-standalone .sdpi-ops-head h1{font-size:22px!important}
  html.sdpi-pwa-standalone .sdpi-admin-head-actions,html.sdpi-pwa-standalone .sdpi-ops-head-actions{display:none!important}
  html.sdpi-pwa-standalone .sdpi-admin-module-host,html.sdpi-pwa-standalone .sdpi-ops-module-host{padding:8px!important}
  html.sdpi-pwa-standalone .sdpi-student-dashboard-v1174{padding:8px!important}
  html.sdpi-pwa-standalone .sdpi-student-classic-main [id^="sdpi-student-"],html.sdpi-pwa-standalone #sdpi-my-attendance{scroll-margin-top:72px!important}

  /* Safe-area and touch targets. */
  html.sdpi-pwa-standalone :is(button,.button,.sdpi-scm-primary,.sdpi-scm-secondary,input,select){min-height:44px}
  html.sdpi-pwa-standalone :is(.sdpi-table-scroll,.wp-list-table){-webkit-overflow-scrolling:touch}
/* Standalone class is added by display-mode or iOS navigator.standalone detection. */
html.sdpi-pwa-standalone .sdpi-pwa-mobile-header{display:flex}
html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav{display:grid}
@media(max-width:760px){
  html.sdpi-pwa-standalone body.sdpi-portal-body{padding-top:62px!important;padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
  html.sdpi-pwa-standalone .sdpi-portal-header,html.sdpi-pwa-standalone .sdpi-portal-footer,html.sdpi-pwa-standalone .sdpi-staff-compact-footer{display:none!important}
  html.sdpi-pwa-standalone .sdpi-admin-sidebar,html.sdpi-pwa-standalone .sdpi-ops-sidebar,html.sdpi-pwa-standalone .sdpi-student-side-nav{display:none!important}
  html.sdpi-pwa-standalone .sdpi-admin-shell,html.sdpi-pwa-standalone .sdpi-ops-shell,html.sdpi-pwa-standalone .sdpi-student-classic-shell{display:block!important;grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){html.sdpi-pwa-standalone .sdpi-pwa-bottom-nav>a{transition:none!important}}
