/*
 * LogiMag product skin.  It is deliberately kept outside the upstream
 * Clessidra checkout so the platform core can evolve independently.
 */
:root {
  --bg: #f5f6ff;
  --bg-a: #e6e8ff;
  --bg-b: #d9fffb;
  --surface: #ffffff;
  --glass: rgba(255, 255, 255, 0.92);
  --glass-strong: #ffffff;
  --glass-edge: #d9dcf4;
  --text: #13133d;
  --muted: #51527c;
  --line: #d9dcf4;
  --field: #51527c;
  --soft: #eef0ff;
  --chip: #e3fffc;
  --accent: #191970;
  --accent-ink: #191970;
  --accent-text: #ffffff;
  --focus: #05f9e2;
  --side-bg: #191970;
  --side-text: #ffffff;
  --side-muted: #c9c9fa;
  --side-hover: rgba(5, 249, 226, 0.14);
  --side-active: #05f9e2;
  --side-active-text: #12123d;
  --side-mark: #05f9e2;
  --head-bg: #191970;
  --head-text: #ffffff;
  --head-muted: #c9c9fa;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0d0d2b;
    --bg-a: #15154a;
    --bg-b: #083f46;
    --surface: #171746;
    --glass: rgba(23, 23, 70, 0.92);
    --glass-strong: #171746;
    --glass-edge: rgba(255, 255, 255, 0.14);
    --text: #f2f2ff;
    --muted: #c9c9fa;
    --line: rgba(255, 255, 255, 0.14);
    --field: #c9c9fa;
    --soft: rgba(5, 249, 226, 0.12);
    --chip: rgba(255, 255, 255, 0.08);
    --accent: #05f9e2;
    --accent-ink: #05f9e2;
    --accent-text: #12123d;
    --focus: #05f9e2;
    --head-bg: #10103b;
  }
}

/* The authenticated header stays compact; the full official wordmark gives
   the anonymous entry surfaces an unmistakably LogiMag identity. */
.signin-top .brand svg {
  display: none;
}

.signin-top .brand-name {
  display: none;
}

.signin-top .brand::before {
  content: '';
  display: block;
  width: 188px;
  height: 32px;
  background: url('./logimag-logo-official.svg') center / contain no-repeat;
}

.signin .card {
  border-top: 4px solid #05f9e2;
}

.primary {
  background: #191970;
  border-color: #191970;
}

.primary:hover:not(:disabled) {
  background: #121252;
  border-color: #121252;
}

input:focus, select:focus, textarea:focus {
  outline-color: #05f9e2;
  box-shadow: 0 0 0 3px rgba(5, 249, 226, 0.28);
}

/* Keep the customer launcher geometry stable: unavailable modules may be
   omitted, but the remaining tiles must never expand to fill their space. */
.launcher-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.launcher-grid > li {
  flex: 0 0 250px;
}

@media (max-width: 899px), (hover: none) {
  .launcher-grid {
    justify-content: center;
  }

  .launcher-grid > li {
    flex-basis: 96px;
  }
}
