/* Search Core completion — compact catalogue search states and result actions. */

.cinema-search-page [data-search-source-note],
.cinema-search-page [data-search-status][hidden] {
  display: none !important;
}

.cinema-search-page [data-search-status] {
  margin: 8px 0 0 !important;
  padding: 9px 11px;
  border-radius: 8px;
  font-size: .68rem !important;
}

.cinema-search-page [data-search-status][data-tone="error"] {
  border: 1px solid rgba(230,101,122,.24);
  background: rgba(119,35,50,.12);
  color: #ef9eac;
}

.cinema-search-page [data-search-result-count] {
  margin: 10px 0 0;
  width: fit-content;
  min-height: 26px;
  padding: 0 9px;
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(155,92,255,.22);
  border-radius: 999px;
  background: rgba(112,58,180,.10);
  color: #b999ea;
  font-size: .64rem;
  font-weight: 800;
}

.cinema-search-page [data-search-result-count][hidden] {
  display: none !important;
}

.cinema-search-results {
  grid-template-columns: repeat(auto-fill,minmax(220px,1fr)) !important;
  gap: 12px !important;
  padding: 14px !important;
}

.cinema-search-state {
  grid-column: 1 / -1;
  min-height: 330px;
  padding: 24px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 11px;
  text-align: center;
}

.cinema-search-state img {
  width: min(100%, 230px);
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 13px;
  filter: drop-shadow(0 18px 32px rgba(0,0,0,.24));
}

.cinema-search-state strong {
  color: #f0edf5;
  font-size: .95rem;
  font-weight: 850;
}

.cinema-search-state span {
  color: #7f8394;
  font-size: .7rem;
}

.cinema-search-state.is-loading img {
  animation: comrade-search-pulse 1.7s ease-in-out infinite;
}

@keyframes comrade-search-pulse {
  0%,100% { transform: translateY(0) scale(1); opacity: .94; }
  50% { transform: translateY(-4px) scale(1.018); opacity: 1; }
}

.cinema-search-result-card {
  min-width: 0;
  overflow: hidden;
  display: grid;
  grid-template-rows: minmax(0,1fr) auto auto;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 10px;
  background: #10131f;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.cinema-search-result-card:hover {
  border-color: rgba(155,92,255,.34);
  box-shadow: 0 14px 30px rgba(0,0,0,.16);
}

.cinema-search-page .cinema-search-result-open.poster-card {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.cinema-search-page .cinema-search-result-open .poster-frame {
  border-radius: 0 !important;
}

.cinema-search-page .cinema-search-result-open .poster-source-pill {
  max-width: calc(100% - 12px);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cinema-search-result-source {
  min-height: 31px;
  padding: 7px 10px;
  overflow: hidden;
  border-top: 1px solid rgba(255,255,255,.06);
  color: #74798a;
  font-size: .61rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cinema-search-result-actions {
  min-height: 44px;
  padding: 7px 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  border-top: 1px solid rgba(255,255,255,.07);
  background: #0b0e17;
}

.cinema-search-result-action {
  min-height: 30px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 7px;
  font: inherit;
  font-size: .62rem;
  font-weight: 820;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.cinema-search-result-action.is-secondary,
.cinema-search-result-action.is-save {
  border: 1px solid rgba(255,255,255,.09);
  background: transparent;
  color: #aeb1be;
}

.cinema-search-result-action.is-secondary:hover,
.cinema-search-result-action.is-save:hover:not(:disabled) {
  border-color: rgba(155,92,255,.34);
  background: rgba(155,92,255,.09);
  color: #e6dafa;
}

.cinema-search-result-action.is-primary {
  border: 1px solid rgba(155,92,255,.28);
  background: rgba(112,58,180,.24);
  color: #d7bdff;
}

.cinema-search-result-action.is-primary:hover {
  background: rgba(125,67,198,.34);
  color: #f0e7ff;
}

.cinema-search-result-action.is-save {
  margin-left: auto;
}

.cinema-search-result-action.is-save:disabled {
  border-color: rgba(93,229,140,.17);
  background: rgba(38,128,75,.08);
  color: #6bd993;
  opacity: 1;
  cursor: default;
}

html[data-comrade-theme="light"] .cinema-search-state strong {
  color: #242733;
}

html[data-comrade-theme="light"] .cinema-search-state span {
  color: #6f7582;
}

html[data-comrade-theme="light"] .cinema-search-result-card {
  border-color: rgba(24,28,39,.10);
  background: #fff;
}

html[data-comrade-theme="light"] .cinema-search-result-source {
  border-color: rgba(24,28,39,.07);
  color: #747a87;
}

html[data-comrade-theme="light"] .cinema-search-result-actions {
  border-color: rgba(24,28,39,.08);
  background: #f7f8fb;
}

html[data-comrade-theme="light"] .cinema-search-result-action.is-secondary,
html[data-comrade-theme="light"] .cinema-search-result-action.is-save {
  border-color: rgba(24,28,39,.12);
  color: #606674;
}

@media (max-width: 980px) {
  .cinema-search-results {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width: 640px) {
  .cinema-search-form {
    min-height: 0 !important;
    padding: 9px !important;
    grid-template-columns: 1fr !important;
  }

  .cinema-search-form button {
    width: 100%;
  }

  .cinema-search-results {
    grid-template-columns: 1fr !important;
    padding: 10px !important;
  }

  .cinema-search-state {
    min-height: 280px;
    padding: 18px;
  }

  .cinema-search-state img {
    width: min(100%, 200px);
  }

  .cinema-search-result-actions {
    flex-wrap: wrap;
  }

  .cinema-search-result-action {
    flex: 1 1 auto;
  }

  .cinema-search-result-action.is-save {
    margin-left: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cinema-search-state.is-loading img {
    animation: none;
  }
}
