/* ILC File Sharing — targeted refinements loaded after the shared design system. */

/* Keep the transparent logo visually integrated with its surrounding hero. */
body.ilc-sharing .brand-logo.pulse-logo {
  animation: none !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.ilc-sharing .brand-logo .logo-ring {
  display: none !important;
}

body.ilc-sharing.ilc-dashboard .topbar {
  isolation: isolate;
}

body.ilc-sharing.ilc-dashboard .topbar .brand-logo {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.ilc-sharing.ilc-dashboard .topbar .brand-logo-img {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  mix-blend-mode: multiply;
}

/* Search remains full-width; its three actions form a centered row below it. */
body.ilc-sharing.ilc-dashboard .topbar .top-actions {
  flex: 1 1 640px;
  width: min(100%, 720px) !important;
  max-width: 720px;
  margin-left: auto;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  justify-content: center !important;
  justify-items: stretch;
  gap: 12px;
}

body.ilc-sharing.ilc-dashboard .topbar .top-actions #searchInput {
  width: 100% !important;
  min-width: 0 !important;
  grid-column: auto !important;
}

body.ilc-sharing.ilc-dashboard .topbar .top-action-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

body.ilc-sharing.ilc-dashboard .topbar .top-action-buttons .btn {
  flex: 0 0 auto;
}

/* Give folder names and the current path enough breathing room. */
body.ilc-sharing.ilc-dashboard .breadcrumbs {
  align-items: center;
  gap: 10px 7px;
}

body.ilc-sharing.ilc-dashboard :is(.crumb, .linklike) {
  min-height: 40px !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(157, 224, 126, .22) !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, .045) !important;
  color: var(--ilc-text) !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

body.ilc-sharing.ilc-dashboard .linklike {
  max-width: 100%;
  overflow-wrap: anywhere;
  white-space: normal !important;
  text-align: left;
}

body.ilc-sharing.ilc-dashboard :is(.crumb, .linklike):hover,
body.ilc-sharing.ilc-dashboard :is(.crumb, .linklike):focus-visible {
  border-color: rgba(22, 216, 97, .62) !important;
  background: rgba(22, 216, 97, .12) !important;
  color: #f2fff5 !important;
}

body.ilc-sharing.ilc-dashboard .file-name {
  min-width: 0;
  gap: 12px;
}

/* Center the login card in the usable viewport without clipping short screens. */
body.ilc-sharing.login-page {
  align-items: stretch !important;
  justify-content: center !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.ilc-sharing.login-page .login-shell {
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100dvh - 38px) !important;
  margin: 0 !important;
  padding: clamp(24px, 5vh, 48px) 18px !important;
  display: flex !important;
  flex-direction: column;
}

body.ilc-sharing.login-page .login-card {
  width: min(100%, 560px);
  margin: auto;
}

body.ilc-sharing.ilc-auth .brand-logo {
  width: 116px !important;
  height: 60px !important;
  flex: 0 0 116px !important;
}

body.ilc-sharing.ilc-auth .brand-logo-img {
  width: 116px !important;
  height: 60px !important;
  object-fit: contain !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: drop-shadow(0 0 12px rgba(22, 216, 97, .18)) !important;
}

@media (max-width: 1100px) {
  body.ilc-sharing.ilc-dashboard .topbar .top-actions {
    flex: 1 1 auto;
    width: 100% !important;
    max-width: none;
    margin-inline: auto;
  }
}

@media (max-width: 680px) {
  body.ilc-sharing.login-page .login-shell {
    min-height: calc(100dvh - 34px) !important;
    padding: 22px 14px !important;
  }

  body.ilc-sharing.ilc-auth .brand-logo,
  body.ilc-sharing.ilc-auth .brand-logo-img {
    width: 92px !important;
    height: 48px !important;
    flex-basis: 92px !important;
  }
}

@media (max-width: 520px) {
  body.ilc-sharing.ilc-dashboard .topbar .top-action-buttons {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.ilc-sharing.ilc-dashboard .topbar .top-action-buttons .btn {
    width: 100%;
  }
}
