/* HS24 Cloud branding — based on husservice24.se */
:root {
  --bs-primary: #0ea5e9;
  --bs-primary-rgb: 14, 165, 233;
}

body.app-blank {
  min-height: 100vh;
  overflow-x: hidden;
  color: #0f172a;
  background:
    radial-gradient(900px 520px at 100% 0%, rgba(14, 165, 233, .20), transparent 62%),
    radial-gradient(720px 460px at 0% 100%, rgba(249, 132, 20, .12), transparent 62%),
    linear-gradient(145deg, #f6f9fc 0%, #eef7fc 52%, #f8fafc 100%) !important;
}

body.app-blank #app_root > div::before {
  content: "HS24 CLOUD";
  position: fixed;
  top: 26px;
  left: 32px;
  color: #0b4f82;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .18em;
}

body.app-blank .bg-body.rounded.shadow-sm {
  width: min(92vw, 470px) !important;
  padding: 42px 46px !important;
  border: 1px solid rgba(230, 234, 240, .95);
  border-radius: 24px !important;
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: 0 24px 66px rgba(15, 23, 42, .13) !important;
  backdrop-filter: blur(14px);
}

body.app-blank .container.mb-10 {
  margin-bottom: 32px !important;
}

body.app-blank .container.mb-10 .row {
  justify-content: center;
  text-align: center;
}

body.app-blank .container.mb-10 .col-5,
body.app-blank .container.mb-10 .col-7 {
  width: 100%;
}

body.app-blank .container.mb-10 img {
  width: 154px !important;
  height: 154px !important;
  object-fit: contain;
  filter: drop-shadow(0 10px 18px rgba(11, 79, 130, .15));
}

body.app-blank .container.mb-10 h1 {
  margin: 15px 0 0 !important;
  color: #0f172a !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -.02em;
}

body.app-blank .container.mb-10 h1::after {
  content: "Bezpieczna przestrzeń HusService24";
  display: block;
  margin-top: 6px;
  color: #64748b;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
}

body.app-blank .form-control.form-control-solid {
  min-height: 54px;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #f8fafc;
  color: #0f172a;
}

body.app-blank .form-control.form-control-solid:focus {
  border-color: #0ea5e9;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(14, 165, 233, .13);
}

body.app-blank .btn.btn-primary {
  min-height: 54px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #0ea5e9, #0284c7) !important;
  box-shadow: 0 12px 24px rgba(2, 132, 199, .23);
  font-weight: 700;
}

body.app-blank .btn.btn-primary:hover {
  background: linear-gradient(135deg, #0284c7, #075985) !important;
  transform: translateY(-1px);
}

body.app-blank .link-primary,
body.app-blank .text-primary {
  color: #0284c7 !important;
}

body.app-blank hr {
  border-color: #e6eaf0;
}

@media (max-width: 575px) {
  body.app-blank #app_root > div::before {
    top: 18px;
    left: 20px;
    font-size: 12px;
  }
  body.app-blank .bg-body.rounded.shadow-sm {
    padding: 32px 24px !important;
    border-radius: 20px !important;
  }
  body.app-blank .container.mb-10 img {
    width: 132px !important;
    height: 132px !important;
  }
}
