/* Multi-page IIDM shell — works with Bootstrap + platform.css */
.iidm-portal-hero {
  min-height: 72vh;
  display: flex;
  align-items: center;
  background: linear-gradient(135deg, #0f172a 0%, #312e81 45%, #065f46 100%);
  color: #fff;
}

.iidm-portal-hero.has-banner {
  background-image:
    linear-gradient(135deg, rgba(15, 23, 42, 0.9) 0%, rgba(79, 70, 229, 0.5) 50%, rgba(16, 185, 129, 0.4) 100%),
    url("./final.png");
  background-size: cover;
  background-position: center;
}

.portal-card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  border-radius: 1rem;
}

.portal-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 1.25rem 2.5rem rgba(15, 23, 42, 0.15);
}

.client-strip img {
  max-height: 48px;
  width: auto;
  object-fit: contain;
  opacity: 0.85;
  filter: grayscale(0.2);
}

.dashboard-shell {
  min-height: 100vh;
  background: var(--bs-body-bg);
}

.dashboard-sidebar {
  min-height: 100vh;
  background: linear-gradient(180deg, #0f172a 0%, #1e1b4b 100%);
  color: #e2e8f0;
}

.dashboard-sidebar .nav-link {
  color: rgba(255, 255, 255, 0.85);
  border-radius: 0.5rem;
  padding: 0.5rem 0.75rem;
}

.dashboard-sidebar .nav-link:hover,
.dashboard-sidebar .nav-link.active {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.dashboard-main {
  padding-bottom: 3rem;
}

@media (max-width: 991.98px) {
  .dashboard-sidebar {
    min-height: auto;
  }
}

/* Sticky notes board */
.iidm-note-card {
  border: 1px solid rgba(15, 23, 42, 0.08);
  cursor: grab;
}
.iidm-note-card:active {
  cursor: grabbing;
}
.iidm-note--amber {
  background: linear-gradient(145deg, #fffbeb 0%, #fde68a55 100%);
}
.iidm-note--mint {
  background: linear-gradient(145deg, #ecfdf5 0%, #6ee7b755 100%);
}
.iidm-note--sky {
  background: linear-gradient(145deg, #eff6ff 0%, #7dd3fc55 100%);
}
.iidm-note--rose {
  background: linear-gradient(145deg, #fff1f2 0%, #fda4af55 100%);
}
.iidm-note--slate {
  background: linear-gradient(145deg, #f8fafc 0%, #cbd5e1aa 100%);
}
html[data-bs-theme="dark"] .iidm-note-card {
  border-color: rgba(255, 255, 255, 0.08);
}
html[data-bs-theme="dark"] .iidm-note--amber {
  background: linear-gradient(145deg, #422006 0%, #78350f 100%);
}
html[data-bs-theme="dark"] .iidm-note--mint {
  background: linear-gradient(145deg, #064e3b 0%, #065f46 100%);
}
html[data-bs-theme="dark"] .iidm-note--sky {
  background: linear-gradient(145deg, #1e3a5f 0%, #1e40af 100%);
}
html[data-bs-theme="dark"] .iidm-note--rose {
  background: linear-gradient(145deg, #4c0519 0%, #9f1239 100%);
}
html[data-bs-theme="dark"] .iidm-note--slate {
  background: linear-gradient(145deg, #1e293b 0%, #334155 100%);
}
.iidm-note-body:empty::before {
  content: "(empty)";
  opacity: 0.45;
  font-style: italic;
}
.iidm-notes-search {
  max-width: 28rem;
  flex: 1 1 16rem;
}

/* Media hub */
.iidm-media-grid .iidm-media-card img {
  transition: transform 0.25s ease;
}
.iidm-media-grid .iidm-media-card:hover img {
  transform: scale(1.03);
}
.iidm-asset-thumb {
  opacity: 0.92;
  filter: grayscale(0.15);
}
