/* Aperture Left 1.0.0 - sidebar overlay for DNN 10 Aperture */
:root { --aperture-left-width: 280px; }

@media (min-width: 768px) {
  .aperture-left-theme .aperture-left-layout { display: grid; grid-template-columns: var(--aperture-left-width) minmax(0, 1fr); min-height: 100vh; }
  .aperture-left-theme .aperture-left-page { grid-column: 2; min-width: 0; display: flex; flex-direction: column; min-height: 100vh; }
  .aperture-left-theme .aperture-main { flex: 1 0 auto; }

  .aperture-left-sidebar {
    grid-column: 1; position: fixed; inset: 0 auto 0 0; width: var(--aperture-left-width); height: 100vh;
    z-index: 100; flex-direction: column; background: var(--dnn-color-background, #fff);
    border-right: 1px solid var(--dnn-color-neutral-light, #e5e7eb); overflow-y: auto;
  }
  .aperture-left-sidebar__inner { display: flex; flex-direction: column; min-height: 100%; padding: 2rem 1.5rem 1.5rem; }
  .aperture-left-logo { margin-bottom: 2rem; }
  .aperture-left-logo img, .aperture-left-logo svg { max-width: 100%; max-height: 72px; width: auto; height: auto; }
  .aperture-left-nav { flex: 1 1 auto; }
  .aperture-left-account { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; padding-top: 1.5rem; margin-top: 1.5rem; border-top: 1px solid var(--dnn-color-neutral-light, #e5e7eb); font-size: .9rem; }

  .aperture-left-menu, .aperture-left-menu__children { list-style: none; margin: 0; padding: 0; }
  .aperture-left-menu__item { margin: .15rem 0; }
  .aperture-left-menu__link { display: block; padding: .65rem .8rem; border-radius: .35rem; text-decoration: none; line-height: 1.3; color: inherit; transition: background-color .15s ease, color .15s ease; }
  .aperture-left-menu__link:hover, .aperture-left-menu__link:focus-visible { background: var(--dnn-color-neutral-light, #f3f4f6); text-decoration: none; }
  .aperture-left-menu__item.selected > .aperture-left-menu__link { font-weight: 700; background: var(--dnn-color-primary-light, #eef4ff); color: var(--dnn-color-primary, inherit); }
  .aperture-left-menu__children { padding-left: .85rem; margin: .1rem 0 .35rem; border-left: 1px solid var(--dnn-color-neutral-light, #e5e7eb); }
  .aperture-left-menu__children .aperture-left-menu__link { padding-top: .48rem; padding-bottom: .48rem; font-size: .94em; }

  /* Stock Aperture constrains inner content; keep that behavior in the content column. */
  .aperture-left-page .aperture-container { max-width: none; }
}

@media (max-width: 767.98px) {
  .aperture-left-theme .aperture-left-layout { display: block; }
  .aperture-left-theme .aperture-left-page { min-width: 0; }
}

/* Edit mode: prevent Persona Bar / control UI from being hidden behind the sidebar. */
body.dnnEditState .aperture-left-sidebar { z-index: 10; }
