/* =============================================================================
   hiroart-auth.css — styly přihlašovacích stránek
   =============================================================================
   Vzniklo 11. 8. 2026. Šablony v `resources/views/auth/` používají třídy,
   které v žádném z načítaných stylů NEJSOU definované. Změřeno:

       .btn-gradient      0 definic   → tlačítko bez pozadí, prakticky neviditelné
       .shadow-soft       0 definic
       .section--soft     0 definic
       .glass             2 definice  (existuje, ale bez viditelného podkladu)

   K tomu `hiroart.css` má `h1{letter-spacing:-3.6px}`. To je počítané pro
   hero nadpis o velikosti 46–72 px, kde je to v pořádku. Přihlášení ale
   používá `<h1 class="h3">`, tedy ~28 px — a záporné prostrkání zůstane
   stejné, takže se písmena slepí. Proto se tu prostrkání přepočítává
   relativně (em), ne absolutně (px).

   Týká se to VŠECH šesti stránek na `layouts/app.blade.php`: přihlášení,
   registrace, ověření a tří stránek resetu hesla.
   ========================================================================== */

/* --- karta ---------------------------------------------------------------- */

.section--soft {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(0, 111, 255, .14), transparent 45%),
    var(--bg, #030713);
}

.glass {
  border: 1px solid rgba(81, 122, 172, .28);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(11, 22, 45, .96), rgba(5, 11, 25, .95));
  backdrop-filter: blur(14px);
}

.shadow-soft {
  box-shadow: 0 25px 60px rgba(0, 0, 0, .45), 0 0 35px rgba(0, 132, 255, .06);
}

/* --- nadpis --------------------------------------------------------------- */

/* Prostrkání v `em` se zmenší spolu s písmem. Absolutní -3.6px z hiroart.css
   je u 28px nadpisu přes 12 % šířky znaku, a to písmena překryje. */
.glass h1,
.glass h2,
.glass h3,
.section--soft h1 {
  letter-spacing: -.01em;
  line-height: 1.25;
}

/* --- formulář ------------------------------------------------------------- */

.glass .form-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .3px;
  margin-bottom: 6px;
}

.glass .form-control {
  min-height: 48px;
  border: 1px solid rgba(81, 122, 172, .3);
  border-radius: 6px;
  background: #050c19;
  color: #e7edf6;
  padding: 12px 15px;
  transition: .25s;
}

.glass .form-control::placeholder { color: #62718a; }

.glass .form-control:focus {
  border-color: #08aeda;
  background: #050c19;
  color: #e7edf6;
  box-shadow: 0 0 0 3px rgba(0, 180, 230, .12);
}

.glass .form-check-input {
  background-color: #050c19;
  border-color: rgba(81, 122, 172, .45);
}

.glass .form-check-input:checked {
  background-color: #06c7df;
  border-color: #06c7df;
}

.glass .form-check-label { color: #a7b1c2; font-size: 13px; }

/* --- tlačítko ------------------------------------------------------------- */

/* Stejný přechod, jaký má `.button--primary` ve zbytku webu — aby
   přihlášení nevypadalo jako z jiné stránky. */
.btn-gradient {
  border: 0;
  color: #fff;
  font-weight: 700;
  letter-spacing: .4px;
  border-radius: 6px;
  padding: 12px 26px;
  background: linear-gradient(105deg, #236cff, #06c7df);
  box-shadow: 0 10px 30px rgba(0, 137, 255, .28), inset 0 1px rgba(255, 255, 255, .25);
  transition: .3s;
}

.btn-gradient:hover,
.btn-gradient:focus {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 15px 38px rgba(0, 168, 255, .42);
}

.btn-gradient:active { transform: none; }

/* --- odkazy pod formulářem ------------------------------------------------ */

.glass a:not(.btn) { color: #09c4e8; }
.glass a:not(.btn):hover { text-decoration: underline; }

/* --- chybové hlášky ------------------------------------------------------- */

.glass .invalid-feedback { color: #ff8a8a; font-size: 12px; }
.glass .alert { border: 0; border-radius: 6px; font-size: 13px; }

/* --- malé obrazovky ------------------------------------------------------- */

@media (max-width: 576px) {
  .glass { padding: 24px !important; }
}
