/* ==== Apple-style theme for MAS ==== */
:root {
  --apple-blue: #0071e3;
  --apple-blue-hover: #0077ed;
  --apple-bg: #f5f5f7;
  --apple-text: #1d1d1f;
  --apple-secondary: #6e6e73;
  --apple-border: #d2d2d7;
  --apple-radius: 12px;
}

html, body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  background: var(--apple-bg) !important;
  color: var(--apple-text) !important;
  -webkit-font-smoothing: antialiased;
  letter-spacing: -0.01em;
}

/* Карточка по центру, как форма Apple ID */
.layout-container {
  max-width: 440px !important;
  margin: 6vh auto !important;
  background: #fff !important;
  border-radius: 18px !important;
  padding: 48px 40px !important;
  box-shadow: 0 4px 24px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.04) !important;
}

/* Заголовки */
.page-heading .title, h1 {
  font-size: 28px !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  color: var(--apple-text) !important;
  text-align: center;
}
.page-heading .text, .page-heading p {
  color: var(--apple-secondary) !important;
  font-size: 15px !important;
  text-align: center;
}
.page-heading .icon { display: none !important; }

/* Поля ввода */
.cpd-text-control, input[type="text"], input[type="password"], input[type="email"] {
  border: 1px solid var(--apple-border) !important;
  border-radius: var(--apple-radius) !important;
  background: #fff !important;
  font-size: 17px !important;
  padding: 14px 16px !important;
  height: auto !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
  color: var(--apple-text) !important;
}
.cpd-text-control:focus, input:focus {
  outline: none !important;
  border-color: var(--apple-blue) !important;
  box-shadow: 0 0 0 4px rgba(0,113,227,.15) !important;
}

.cpd-form-label {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--apple-secondary) !important;
  letter-spacing: 0 !important;
}

/* Кнопки */
.cpd-button[data-kind="primary"], button[type="submit"].cpd-button {
  background: var(--apple-blue) !important;
  border: none !important;
  border-radius: 980px !important;   /* фирменная "pill" кнопка Apple */
  font-size: 17px !important;
  font-weight: 500 !important;
  padding: 12px 24px !important;
  height: auto !important;
  min-height: 48px !important;
  color: #fff !important;
  transition: background .15s ease !important;
  letter-spacing: -0.01em !important;
}
.cpd-button[data-kind="primary"]:hover, button[type="submit"].cpd-button:hover {
  background: var(--apple-blue-hover) !important;
}
.cpd-button[data-kind="secondary"], .cpd-button[data-kind="tertiary"] {
  border-radius: 980px !important;
  border: 1px solid var(--apple-border) !important;
  color: var(--apple-blue) !important;
  background: transparent !important;
  font-weight: 500 !important;
}

/* Ссылки */
.cpd-link, a {
  color: var(--apple-blue) !important;
  text-decoration: none !important;
}
.cpd-link:hover, a:hover { text-decoration: underline !important; }

/* Чекбоксы */
.cpd-checkbox-ui {
  border-radius: 6px !important;
  border-color: var(--apple-border) !important;
}
.cpd-checkbox-input:checked + .cpd-checkbox-ui {
  background: var(--apple-blue) !important;
  border-color: var(--apple-blue) !important;
}

/* Ошибки */
.text-critical { color: #ff3b30 !important; }

/* Разделитель */
.separator { color: var(--apple-secondary) !important; }

/* Футер */
footer, .footer {
  font-size: 12px !important;
  color: var(--apple-secondary) !important;
}

/* Тёмная тема, как на apple.com */
@media (prefers-color-scheme: dark) {
  :root {
    --apple-bg: #000;
    --apple-text: #f5f5f7;
    --apple-secondary: #86868b;
    --apple-border: #424245;
  }
  html, body { background: #000 !important; color: var(--apple-text) !important; }
  .layout-container {
    background: #1d1d1f !important;
    box-shadow: 0 4px 24px rgba(0,0,0,.4) !important;
  }
  .cpd-text-control, input[type="text"], input[type="password"], input[type="email"] {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
  }
  .page-heading .title, h1 { color: #f5f5f7 !important; }
}
