/* Стартовая страница SVOD и интерактивная сцена.
   Отдельный файл: рабочий интерфейс остаётся светлым, стартовая — космической. */

.start {
  --cosmos: #020611;
  --plate: #061320;
  --plate-line: #31556b;
  --plate-text: #effbff;
  --mint: #62f5d1;
  --sky: #62cbff;
  min-height: 100vh;
  background: var(--cosmos);
  color: var(--plate-text);
  display: flex;
  flex-direction: column;
}

.start a { color: var(--sky); }
.start a:hover { color: #9adcff; }

.start-grid {
  display: grid;
  grid-template-columns: 370px minmax(0, 1fr);
  gap: 24px;
  padding: 24px;
  align-items: start;
}

/* ── Карточка входа ─────────────────────────────────────── */

.start-card {
  padding: 28px;
  border-radius: 16px;
  border: 1px solid rgba(98, 203, 255, 0.28);
  background: linear-gradient(180deg, rgba(8, 32, 44, 0.95), rgba(5, 20, 30, 0.95));
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}
.start-card .lockup { display: block; width: 190px; height: auto; margin-bottom: 6px; }
.start-card .tagline {
  font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase;
  color: rgba(233, 251, 255, 0.5); margin: 0 0 22px;
}
.start-card .eyebrow {
  font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--sky); margin: 0 0 10px;
}
.start-card h1 {
  font-size: 27px; line-height: 1.24; font-weight: 600; letter-spacing: -0.01em;
  color: #ffffff; margin: 0 0 12px;
}
.start-card .lead { color: rgba(233, 251, 255, 0.62); font-size: 14.5px; margin: 0 0 20px; }
.start-card label {
  display: block; font-size: 13px; color: rgba(233, 251, 255, 0.66); margin-bottom: 6px;
}
.start-card input {
  width: 100%; padding: 11px 13px; margin-bottom: 16px;
  border-radius: 10px;
  border: 1px solid rgba(98, 203, 255, 0.26);
  background: rgba(3, 14, 22, 0.85);
  color: var(--plate-text); font-size: 15px; font-family: inherit;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.start-card input::placeholder { color: rgba(233, 251, 255, 0.3); }
.start-card input:focus {
  outline: none; border-color: var(--mint);
  box-shadow: 0 0 0 3px rgba(98, 245, 209, 0.18);
}
.start-card .submit {
  width: 100%; padding: 12px 16px; border-radius: 10px; border: 0; cursor: pointer;
  font-family: inherit; font-size: 15px; font-weight: 600; color: #04202b;
  background: linear-gradient(90deg, #3fd0f0, #62f5d1);
  box-shadow: 0 8px 26px rgba(63, 208, 240, 0.28);
  transition: filter 0.15s ease, transform 0.1s ease;
}
.start-card .submit:hover { filter: brightness(1.08); }
.start-card .submit:active { transform: translateY(1px); }
.start-card .submit[disabled] { opacity: 0.7; cursor: progress; }
.start-card .note { font-size: 12.5px; color: rgba(233, 251, 255, 0.42); margin: 16px 0 0; }
.start-card .alert {
  margin: 0 0 16px; padding: 11px 13px; border-radius: 10px;
  border: 1px solid rgba(255, 136, 180, 0.45);
  background: rgba(255, 136, 180, 0.12); color: #ffd9e6; font-size: 14px;
}
.start-card .demo {
  margin: 0 0 16px; padding: 10px 12px; border-radius: 10px;
  border: 1px solid rgba(244, 189, 112, 0.4); background: rgba(244, 189, 112, 0.1);
  color: #ffe4bd; font-size: 13px;
}

/* ── Сцена ──────────────────────────────────────────────── */

.scene-block { display: block; }
.scene {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  border: 1px solid rgba(98, 203, 255, 0.18);
  background: var(--cosmos);
}
.scene canvas { display: block; width: 100%; height: 100%; }
.scene-canvas-wrap { height: max(760px, calc(100vh - 112px)); }
.scene-canvas-wrap canvas { height: 100%; }

.scene-overlay {
  position: absolute; top: 16px; left: 16px; right: 16px;
  display: flex; flex-direction: column; gap: 8px; align-items: flex-start;
  pointer-events: none;
}
.scene-plate {
  background: var(--plate);
  border: 1px solid var(--plate-line);
  border-radius: 6px;
  padding: 7px 9px;
  color: var(--plate-text);
}
.scene-brandline { font-size: 11px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.scene-claim { font-size: 22px; font-weight: 700; line-height: 1.25; }
.scene-claim .accent { color: var(--mint); }
.scene-sub { font-size: 12.5px; color: rgba(233, 251, 255, 0.72); }
.scene-status { font-size: 12px; font-weight: 600; letter-spacing: 0.04em; }

.scene-notes {
  position: absolute; left: 16px; right: 16px; bottom: 16px;
  opacity: 0; transform: translateY(10px);
  transition: opacity 0.5s ease, transform 0.5s ease;
  pointer-events: none;
}
.scene-notes.is-visible { opacity: 1; transform: none; }
.scene-notes .caption {
  display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: 0.14em;
  text-transform: uppercase; color: rgba(233, 251, 255, 0.7);
  background: var(--plate); border: 1px solid var(--plate-line);
  border-radius: 6px; padding: 5px 9px; margin-bottom: 8px;
}
.scene-notes .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.scene-note {
  background: var(--plate); border: 1px solid var(--plate-line);
  border-left-width: 3px; border-radius: 8px; padding: 10px 12px;
}
.scene-note.mint { border-left-color: var(--mint); }
.scene-note.sky { border-left-color: var(--sky); }
.scene-note.violet { border-left-color: #be9aff; }
.scene-note .title { font-size: 13.5px; font-weight: 700; color: var(--plate-text); }
.scene-note .path { font-size: 12px; color: rgba(233, 251, 255, 0.62); margin-top: 3px; }

.scene-panel {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  padding: 14px 4px 0;
}
.scene-panel .left { font-size: 13px; color: rgba(233, 251, 255, 0.6); }
.scene-panel .spacer { flex: 1; }
.scene-panel button {
  font-family: inherit; font-size: 13.5px; cursor: pointer;
  padding: 8px 14px; border-radius: 9px;
  border: 1px solid rgba(98, 203, 255, 0.28);
  background: rgba(8, 32, 44, 0.8); color: var(--plate-text);
}
.scene-panel button:hover { background: rgba(12, 46, 62, 0.9); }
.scene-panel button[disabled] { opacity: 0.5; cursor: not-allowed; }

/* ── Каталог ────────────────────────────────────────────── */

.catalog { margin: 20px 4px 40px; }
.catalog summary {
  cursor: pointer; list-style: none;
  display: flex; align-items: center; gap: 10px;
  padding: 12px 14px; border-radius: 10px;
  border: 1px solid rgba(98, 203, 255, 0.2);
  background: rgba(8, 24, 34, 0.7);
  font-size: 14.5px; font-weight: 600;
}
.catalog summary::-webkit-details-marker { display: none; }
.catalog summary .spacer { flex: 1; }
.catalog summary .hint { font-weight: 500; font-size: 13px; color: rgba(233, 251, 255, 0.6); }
.catalog .disclaimer { font-size: 12.5px; color: rgba(233, 251, 255, 0.5); margin: 12px 2px 14px; }
.catalog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.catalog-card {
  border: 1px solid rgba(98, 203, 255, 0.16); border-radius: 10px;
  padding: 12px 14px; background: rgba(6, 19, 32, 0.75);
}
.catalog-card h3 { margin: 0 0 8px; font-size: 13.5px; font-weight: 700; color: var(--plate-text); }
.catalog-card .dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 7px; }
.catalog-card ul { margin: 0; padding-left: 16px; }
.catalog-card li { font-size: 12.5px; color: rgba(233, 251, 255, 0.66); margin-bottom: 3px; }

@media (max-width: 1180px) {
  .start-grid { grid-template-columns: 320px minmax(0, 1fr); }
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .start-grid { grid-template-columns: 1fr; }
  .scene-canvas-wrap { height: 700px; }
  .scene-notes .row { grid-template-columns: 1fr; }
  .scene-notes .row .scene-note:nth-child(n + 3) { display: none; }
  .catalog-grid { grid-template-columns: 1fr; }
  .scene-claim { font-size: 18px; }
}

@media (prefers-reduced-motion: reduce) {
  .scene-notes { transition: none; }
}
