
/* ELEMENTARY v3.2.2 — shell geometry, legacy workspace and access cohesion */
:root{
  --eo-header-height:74px;
  --eo-sidebar-footer-height:46px;
  --eo-radius:6px;
  --eo-radius-sm:4px;
}

/* Brand block and header share one exact datum line */
.eo-sidebar-brand{
  flex:0 0 var(--eo-header-height)!important;
  height:var(--eo-header-height)!important;
  min-height:var(--eo-header-height)!important;
  justify-content:center!important;
  padding:5px 17px 2px!important;
}
.eo-brand-link{
  min-height:0!important;
  justify-content:center!important;
}
.eo-brand-logo{
  max-height:47px!important;
}
.eo-brand-caption{
  margin-top:-7px!important;
  padding-right:3px!important;
  font-size:12px!important;
  line-height:1!important;
  letter-spacing:.15em!important;
}

/* Deterministic independent sidebar scroll */
.eo-sidebar-scroll{
  flex:1 1 0!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100dvh - var(--eo-header-height) - var(--eo-sidebar-footer-height))!important;
  overflow-y:scroll!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  touch-action:pan-y!important;
  pointer-events:auto!important;
  scrollbar-gutter:stable!important;
  -webkit-overflow-scrolling:touch!important;
}
.eo-sidebar-footer{
  flex:0 0 var(--eo-sidebar-footer-height)!important;
  height:var(--eo-sidebar-footer-height)!important;
  min-height:var(--eo-sidebar-footer-height)!important;
  padding:4px 12px!important;
}

/* Minimal radii across the global shell */
.eo-header,
.eo-ai-composer,
.eo-plus-menu,
.eo-profile-menu,
.eo-ai-panel,
.eo-inspector,
.eo-command-results,
.eo-file-chip,
.eo-icon-button,
.eo-profile-trigger,
.eo-sidebar .nav a,
.eo-sidebar .nav-disabled{
  border-radius:var(--eo-radius)!important;
}
.eo-content :is(
  .card,
  [class$="-card"],
  [class*="-card "],
  [class$="-hero"],
  [class*="-hero "],
  [class$="-metric"],
  [class*="-metric "],
  [class$="-step"],
  [class*="-step "],
  [class$="-panel"],
  [class*="-panel "],
  .table-wrap,
  details,
  summary,
  input,
  select,
  textarea,
  button,
  .btn,
  a.btn
){
  border-radius:var(--eo-radius)!important;
}
.eo-profile-avatar{
  border-radius:50%!important;
}
.eo-composer-submit{
  border-radius:var(--eo-radius)!important;
}

/* Profile menu becomes the natural home of account and system administration */
.eo-profile-menu{
  width:320px!important;
  max-height:min(620px,calc(100dvh - 92px))!important;
  overflow-y:auto!important;
}
.eo-profile-menu-section{
  padding:7px!important;
  border-bottom:1px solid var(--eo-line)!important;
}
.eo-profile-menu-section-title{
  padding:7px 9px 5px!important;
  color:var(--eo-muted)!important;
  font-size:9px!important;
  font-weight:700!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.eo-profile-menu-link{
  min-height:39px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:8px 9px!important;
  border:0!important;
  border-radius:var(--eo-radius-sm)!important;
  color:var(--eo-text)!important;
  text-decoration:none!important;
  background:transparent!important;
}
.eo-profile-menu-link:hover{
  background:var(--eo-panel-muted)!important;
}
.eo-profile-menu-link svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.35!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  color:var(--eo-muted)!important;
}
.eo-profile-system-links:empty{
  display:none!important;
}

/* Normal workspace */
.eo-workspace{
  min-width:0!important;
}
.eo-content{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding-top:20px!important;
}
.eo-content > :first-child{
  margin-top:0!important;
}

/* Runtime-normalised standalone/legacy workspaces */
body.eo-legacy-bridge-active{
  min-width:0!important;
}
body.eo-legacy-bridge-active .eo-legacy-content-host{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:calc(100dvh - var(--eo-header-height))!important;
  margin:0!important;
  padding:20px clamp(18px,2vw,32px) 42px!important;
  transform:none!important;
  overflow:visible!important;
}
body.eo-legacy-bridge-active .eo-legacy-functional-root,
body.eo-legacy-bridge-active .eo-legacy-functional-root :is(
  main,
  [class$="-main"],
  [class*="-main "],
  [class$="-content"],
  [class*="-content "],
  [class$="-container"],
  [class*="-container "],
  [class$="-wrap"],
  [class*="-wrap "]
){
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding-top:0!important;
  transform:none!important;
  grid-template-columns:minmax(0,1fr)!important;
}
body.eo-legacy-bridge-active .eo-legacy-functional-root > :first-child{
  margin-top:0!important;
}
body.eo-legacy-bridge-active .eo-legacy-functional-root h1{
  width:auto!important;
  max-width:none!important;
  margin-top:0!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body.eo-legacy-bridge-active .eo-legacy-functional-root :is(
  table,
  form,
  [class$="-grid"],
  [class*="-grid "],
  [class$="-table"],
  [class*="-table "],
  [class$="-metrics"],
  [class*="-metrics "]
){
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
body.eo-legacy-bridge-active .eo-legacy-duplicate-shell,
body.eo-legacy-bridge-active .eo-empty-legacy-spacer{
  display:none!important;
}

/* Known narrow legacy operational screens */
body.eo-legacy-bridge-active :is(
  .bc-shell,
  .bc-main,
  .bc-content,
  .blockage-shell,
  .blockage-main,
  .blockage-content,
  .commercial-shell,
  .commercial-main,
  .commercial-content
){
  position:relative!important;
  inset:auto!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding-top:0!important;
  transform:none!important;
  grid-template-columns:minmax(0,1fr)!important;
}

/* Access administration */
.eo-user-create-card{
  scroll-margin-top:calc(var(--eo-header-height) + 16px)!important;
}
.eo-access-create-grid{
  display:grid!important;
  grid-template-columns:1.15fr 1.25fr 1fr!important;
  gap:12px!important;
}
.eo-access-create-grid .eo-access-passwords{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
}
.eo-access-note{
  margin-top:9px!important;
  color:var(--eo-muted)!important;
  font-size:11px!important;
}

@media(max-width:1100px){
  .eo-access-create-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .eo-access-create-grid .eo-access-passwords{
    grid-column:1 / -1!important;
  }
}

@media(max-width:768px){
  .eo-sidebar-brand{
    height:var(--eo-header-height)!important;
    min-height:var(--eo-header-height)!important;
  }
  .eo-brand-logo{
    max-height:44px!important;
  }
  .eo-brand-caption{
    margin-top:-6px!important;
  }
  .eo-profile-menu{
    position:fixed!important;
    right:10px!important;
    left:10px!important;
    width:auto!important;
  }
  body.eo-legacy-bridge-active .eo-legacy-content-host{
    padding:14px 11px 88px!important;
  }
  .eo-access-create-grid,
  .eo-access-create-grid .eo-access-passwords{
    grid-template-columns:1fr!important;
  }
}
