/* ITPlugg v20.93 – launch stability layer.
   Final ownership: desktop sidebar, teacher scrolling and predictable workspace sizing. */
:root{--v2093-sidebar-wide:252px;--v2093-sidebar-mid:190px;--v2093-sidebar-narrow:184px;--v2093-sidebar-collapsed:78px}

/* Manual sidebar state always wins over historical auto-compact classes. */
@media (min-width:620px){
  /* v21.08: the canonical sidebar must be recoverable even if a legacy layer
     previously wrote hidden/visibility/transform state directly on it. */
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.itplugg-lab-active):not(.itplugg-cisco-active):not(.itp-teacher-open) #v1919DevSidebar{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-mid)!important;padding-bottom:0!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important;width:var(--v2093-sidebar-mid)!important;padding:16px 11px!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed.v1919-nav-collapsed{padding-left:var(--v2093-sidebar-collapsed)!important;padding-bottom:0!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed.v1919-nav-collapsed .v1919-dev-sidebar{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important;width:var(--v2093-sidebar-collapsed)!important;padding:12px 9px!important}

  /* Undo v20.92 auto-compact presentation when the user has chosen expanded. */
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-brand>div,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-lock,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-nav-group,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>b,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>small,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>em,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>kbd,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-sidebar-pulse,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-footer-actions{display:revert!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar>header{display:flex!important;align-items:center!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-brand>span{margin:0!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar>header>button{display:grid!important;margin:0!important;pointer-events:auto!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar>header>button svg{transform:none!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar nav button,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar footer>button{display:grid!important;grid-template-columns:28px minmax(0,1fr) auto!important;grid-template-areas:"icon label extra" "icon hint extra"!important;place-items:initial!important;gap:0 8px!important;padding:8px 10px!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>span{grid-area:icon!important;align-self:center!important}

  /* Collapsed mode keeps the expand control available at every desktop width. */
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed.v1919-nav-collapsed .v1919-dev-sidebar>header>button{display:grid!important;margin:7px auto 0!important;pointer-events:auto!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed.v1919-nav-collapsed .v1919-dev-sidebar>header>button svg{transform:rotate(180deg)!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed .v1939-main-nav{display:none!important}
}
@media (min-width:1240px){
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-wide)!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar{width:var(--v2093-sidebar-wide)!important;padding:16px 14px!important}
}
@media (min-width:880px) and (max-width:1239px){
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-mid)!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar{width:var(--v2093-sidebar-mid)!important}
}
@media (min-width:620px) and (max-width:879px){
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-narrow)!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar{width:var(--v2093-sidebar-narrow)!important;padding:12px 9px!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>small,
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-lock small{display:none!important}
  html[data-itplugg-navigation="desktop"] body.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar button>b{font-size:11px!important}
}

/* Teacher Studio: fixed shell + independently scrollable workspace. */
#adminModal .admin-panel{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important}
#adminModal .v1919-admin-shell{display:grid!important;flex:1 1 auto!important;min-height:0!important;height:0!important;overflow:hidden!important}
#adminModal .v1919-admin-workspace{min-height:0!important;height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;scrollbar-gutter:stable}
#adminModal .v1919-admin-workspace>[data-admin-panel],#adminModal .v1946-dev-panel{min-height:min-content!important}
#adminModal>.admin-panel>.admin-actions{flex:0 0 auto!important}

/* Course/subject picker must remain above content and scroll internally. */
.itp92-subject-dock{position:relative!important;z-index:300!important}
.itp83-picker{z-index:310!important}.itp83-menu{z-index:20000!important}.itp83-list{overscroll-behavior:contain!important}

/* Subject pages must not inherit the historical 220px split-view rule. */
@media (hover:hover) and (pointer:fine) and (min-width:620px) and (max-width:759px){
  html[data-itplugg-navigation="desktop"] body.itp83-mode.v2093-nav-managed:not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-narrow)!important}
  html[data-itplugg-navigation="desktop"] body.itp83-mode.v2093-nav-managed:not(.v1919-nav-collapsed) .v1919-dev-sidebar{width:var(--v2093-sidebar-narrow)!important}
}

/* Locked academic subjects are visually clear, IT remains normal. */
.itp83-group button em[title="Endast verifierad admin"]{display:grid!important;place-items:center!important;width:26px;height:26px;border-radius:9px;background:color-mix(in srgb,#f59e0b 9%,transparent);color:#e7b95c!important}

@media(max-width:619px){
  #adminModal .v1919-admin-shell{height:auto!important;display:flex!important}
  #adminModal .v1919-admin-workspace{height:auto!important;flex:1 1 auto!important}
}

/* v21.12 startup hotfix: desktop recovery may not depend on an older script
   having written html[data-itplugg-navigation="desktop"]. The hardening owner
   has already verified a fine-pointer desktop before unhiding the sidebar. */
@media (hover:hover) and (pointer:fine) and (min-width:760px){
  body.v2093-nav-managed:not(.itp83-mode):not(.itplugg-lab-active):not(.itplugg-cisco-active):not(.itp-teacher-open) #v1919DevSidebar{
    display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important
  }
  body.v2093-nav-managed:not(.itp83-mode):not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-mid)!important;padding-bottom:0!important}
  body.v2093-nav-managed:not(.itp83-mode):not(.v1919-nav-collapsed) #v1919DevSidebar{width:var(--v2093-sidebar-mid)!important;padding:16px 11px!important}
  body.v2093-nav-managed:not(.itp83-mode).v1919-nav-collapsed{padding-left:var(--v2093-sidebar-collapsed)!important;padding-bottom:0!important}
  body.v2093-nav-managed:not(.itp83-mode).v1919-nav-collapsed #v1919DevSidebar{width:var(--v2093-sidebar-collapsed)!important;padding:12px 9px!important}
}
@media (hover:hover) and (pointer:fine) and (min-width:1240px){
  body.v2093-nav-managed:not(.itp83-mode):not(.v1919-nav-collapsed){padding-left:var(--v2093-sidebar-wide)!important}
  body.v2093-nav-managed:not(.itp83-mode):not(.v1919-nav-collapsed) #v1919DevSidebar{width:var(--v2093-sidebar-wide)!important;padding:16px 14px!important}
}
