:root {
  --blue:#2e4e88;
  --ink:#1f2d4d;
  --muted:#667899;
  --line:#d7e1f0;
  --red:#d84b4b;
  --panel:rgba(255,255,255,.94);
  --shadow:0 18px 42px rgba(33,53,90,.2);
}

* {
  box-sizing:border-box;
}

html,
body {
  margin:0;
  min-height:100%;
}

body {
  font-family:"Segoe UI", Arial, sans-serif;
  color:var(--ink);
  background:url("../mb/assets/images/fon.jpg") center/cover fixed no-repeat;
}

.admin-login-page {
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.admin-login-card {
  width:min(430px, 100%);
  padding:30px;
  border:1px solid rgba(215,225,240,.86);
  border-radius:24px;
  background:var(--panel);
  box-shadow:var(--shadow);
}

.admin-login-logo {
  display:block;
  width:min(250px, 78%);
  height:auto;
  margin:0 auto 18px;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));
}

.eyebrow {
  margin:0 0 6px;
  color:var(--blue);
  font-size:13px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

h1 {
  margin:0;
  color:var(--blue);
  font-size:30px;
  line-height:1.15;
}

.intro {
  margin:10px 0 24px;
  color:var(--muted);
  line-height:1.45;
}

label {
  display:block;
  color:var(--blue);
  font-size:14px;
  font-weight:700;
}

input {
  width:100%;
  margin-top:8px;
  border:1px solid #c8d5ea;
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  padding:13px 14px;
  outline:none;
}

input:focus {
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(46,78,136,.12);
}

button {
  width:100%;
  margin-top:16px;
  border:1px solid var(--blue);
  border-radius:999px;
  background:var(--blue);
  color:#fff;
  cursor:pointer;
  padding:13px 18px;
  font:700 16px/1 "Segoe UI", Arial, sans-serif;
  box-shadow:0 12px 24px rgba(46,78,136,.2);
}

button:hover {
  background:#244579;
}

.link-button {
  margin-top:10px;
  border-color:transparent;
  background:transparent;
  color:var(--blue);
  box-shadow:none;
}

.link-button:hover {
  background:rgba(46,78,136,.08);
}

.plain-link {
  display:block;
  margin-top:14px;
  color:var(--blue);
  text-align:center;
  text-decoration:none;
  font-weight:700;
}

.plain-link:hover {
  text-decoration:underline;
}

.login-message {
  min-height:42px;
  margin-top:16px;
  padding:12px 14px;
  border-radius:14px;
  color:var(--muted);
  line-height:1.35;
}

.login-message.error {
  background:#fff1f1;
  color:var(--red);
}

.login-message.success {
  background:#edf8f1;
  color:#21804f;
}
