/* LOST THREADS — UNIFIED SITE POLISH */
:root {
  --lt-nextcloud-blue: #0082c9;
  --lt-nextcloud-sky: #1cafff;
  --lt-play-green: #7dac8b;
  --lt-play-gold: #d7aa67;
  --lt-surface-border: rgba(255,255,255,.15);
  --lt-surface-shadow: 0 22px 64px rgba(0,0,0,.27);
}

html { scroll-behavior: smooth; }

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.hero { margin-bottom: 2px; }

.hero .eyebrow {
  color: rgba(240,201,133,.92);
  font-weight: 800;
}

.hero h1 { text-wrap: balance; }

.hero .subtitle {
  max-width: 680px;
  line-height: 1.52;
}

.grid {
  gap: 17px;
  margin-bottom: 17px;
}

.grid > .card {
  display: flex;
  min-height: 176px;
  flex-direction: column;
  isolation: isolate;
  padding: 22px 23px 20px;
  border-color: var(--lt-surface-border);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025), 0 15px 42px rgba(0,0,0,.18);
}

.grid > .card > .icon {
  width: 46px;
  height: 46px;
  margin-bottom: 17px;
  padding: 9px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 8px 20px rgba(0,0,0,.15);
}

.grid > .card > .lt-service-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lt-service-card--abs .lt-service-logo {
  border-color: rgba(205,157,73,.48);
  background: rgba(135,93,39,.18);
}

.lt-service-card--jellyfin .lt-service-logo {
  border-color: rgba(0,164,220,.48);
  background: #000b25;
}

.lt-service-logo--nextcloud {
  padding: 10px 8px !important;
  border-color: rgba(255,255,255,.22) !important;
  background: linear-gradient(135deg,var(--lt-nextcloud-blue),var(--lt-nextcloud-sky)) !important;
}

.lt-service-logo--play {
  padding: 0 !important;
  border-color: rgba(125,172,139,.48) !important;
  background: #101914 !important;
}

.grid > .card > strong {
  margin-bottom: 7px;
  font-size: 1.28rem;
  letter-spacing: -.025em;
}

.grid > .card > span {
  max-width: 19rem;
  font-size: .91rem;
  line-height: 1.43;
}

.grid > .card > .status {
  width: 100%;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.075);
}

.grid > .card:hover {
  transform: translateY(-3px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 19px 44px rgba(0,0,0,.3);
}

.lt-service-card--nextcloud::after {
  background: linear-gradient(90deg,var(--lt-nextcloud-blue),var(--lt-nextcloud-sky));
}

.lt-service-card--play::after {
  background: linear-gradient(90deg,var(--lt-play-green),var(--lt-play-gold));
}

.lt-service-card--nextcloud:hover {
  border-color: rgba(28,175,255,.66) !important;
}

.lt-service-card--play:hover,
.lt-service-card--play.is-open {
  border-color: rgba(125,172,139,.62) !important;
}

.lt-service-card--nextcloud .dot { background: var(--lt-nextcloud-sky); }
.lt-service-card--play .dot { background: var(--lt-play-green); }

.card:focus-visible,
.lt-featured-controls button:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: 4px;
}

.lt-featured,
.ab-hub,
.mt-hub,
.minecraft {
  border-color: var(--lt-surface-border);
  box-shadow: var(--lt-surface-shadow);
}

.lt-featured { margin-top: 22px; }

.ab-hub,
.mt-hub,
.minecraft {
  scroll-margin-top: 26px;
}

.ab-head h2,
.mt-head h2,
.section-title h2,
.lt-featured-head h2 {
  letter-spacing: -.045em;
}

.ab-listen-card,
.mt-watch-card,
.server {
  border-color: rgba(255,255,255,.13);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 12px 30px rgba(0,0,0,.15);
}

.ab-controls input,
.ab-controls select,
.mt-controls input,
.mt-controls select {
  border-color: rgba(255,255,255,.16);
  background: rgba(8,10,15,.72);
}

.mt-copy.lt-brand-button--compact {
  grid-template-columns: minmax(0,1fr) auto;
}

.mt-watch-action.lt-brand-button--jellyfin {
  gap: 0;
}

.lt-brand-button--jellyfin {
  background: linear-gradient(100deg,rgba(170,92,195,.16),rgba(0,164,220,.12),rgba(0,11,37,.72)) !important;
}

.lt-brand-card--jellyfin .mt-watch-icon--web {
  border-color: rgba(79,127,197,.48);
  color: #8eb2e7;
  background: rgba(79,127,197,.11);
}

.lt-featured-controls button,
.ab-results-row button,
.ab-more-row button,
.mt-results-row button,
.mt-more-row button {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}

@media (max-width: 620px) {
  main {
    width: min(92vw, 1040px);
    padding-top: 42px;
  }

  .grid { gap: 13px; }

  .grid > .card {
    min-height: 160px;
    padding: 19px;
  }

  .grid > .card > .icon {
    width: 43px;
    height: 43px;
    margin-bottom: 14px;
  }

  .lt-featured,
  .ab-hub,
  .mt-hub,
  .minecraft {
    border-radius: 19px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }

  .grid > .card,
  .ab-listen-card,
  .mt-watch-card,
  .server {
    transition: none !important;
  }
}
