/* amaniq project additions — layered on top of carbon.min.css */

/* Auth card: centred single-column layout */
.amaniq-auth-card {
  margin: 0 auto;
  width: 100%;
  max-width: 420px;
  padding: 2rem;
  background: #ffffff;
  box-shadow: 0 2px 6px rgba(0,0,0,.12);
}

.amaniq-brand {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0f62fe;
  letter-spacing: -.02em;
  margin-bottom: .25rem;
}

.amaniq-brand-sub {
  font-size: .75rem;
  color: #6f6f6f;
  margin-bottom: 1.5rem;
}

/* Ensure body is centred vertically for auth pages */
body.amaniq-auth-body {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f4f4f4;
}

/* Wide card variant for consent page */
.amaniq-auth-card--wide {
  max-width: 560px;
}

/* Scope list */
.amaniq-scope-list {
  list-style: none;
  padding: 0;
  margin: 1rem 0;
}
.amaniq-scope-list li {
  padding: .5rem .75rem;
  border-bottom: 1px solid #e0e0e0;
  font-size: .875rem;
}
.amaniq-scope-list li:last-child { border-bottom: none; }

/* Form row spacing (auth pages) */
.amaniq-form-row {
  margin-bottom: 1rem;
}

/* Header title: keep on one line, truncate instead of wrapping (a wrapped
   second line gets hidden behind the side-nav, which shares the header's
   z-index but comes later in the DOM). min-width:0 lets the flex item shrink
   below its content size so the ellipsis can actually kick in. */
.cds--header__name {
  min-width: 0;
}
.amaniq-header-title {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
}

/* Hamburger button — hidden on desktop, shown on mobile */
.amaniq-hamburger {
  display: none;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  color: var(--cds-icon-primary, #161616);
  cursor: pointer;
  padding: 0 1rem;
  block-size: 3rem;
  font-size: 1.25rem;
}

@media (max-width: 65.98rem) {
  .amaniq-hamburger {
    display: flex;
  }

  .cds--side-nav--fixed {
    transform: translateX(-100%);
    transition: transform 0.2s ease;
  }

  .cds--side-nav--fixed.amaniq-nav-open {
    transform: translateX(0);
  }

  .cds--side-nav ~ .cds--content {
    margin-inline-start: 0 !important;
  }

  .amaniq-nav-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 7999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
  }

  .amaniq-nav-backdrop.amaniq-nav-open {
    opacity: 1;
    pointer-events: auto;
  }
}
