:root{
  color-scheme:light;
  --text:#14253b;
  --muted:#64758a;
  --line:#d6e4f1;
  --surface:rgba(255,255,255,.91);
  --primary:#0879ce;
  --primary-strong:#0563ad;
  --success:#087f5b;
  --danger:#c7354c;
  --warning:#9a6200;
  --shadow:0 24px 70px rgba(31,78,116,.16);
}
*{box-sizing:border-box}
html{min-height:100%;background:#f5f9ff}
body{
  margin:0;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  color:var(--text);
  font:15px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(900px 540px at 7% 0%,rgba(4,142,229,.18),transparent 64%),
    radial-gradient(780px 520px at 96% 92%,rgba(51,190,112,.16),transparent 62%),
    linear-gradient(135deg,#f8fbff 0%,#eaf6ff 52%,#f2fff6 100%);
  background-attachment:fixed;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(25,76,115,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(25,76,115,.026) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 80%);
}
button,input{font:inherit}
.login-layout{position:relative;z-index:1;display:grid;place-items:center;flex:1;width:100%;padding:34px 18px 18px}
.login-card{
  width:min(460px,100%);
  padding:clamp(25px,5vw,38px);
  border:1px solid rgba(198,217,234,.94);
  border-radius:26px;
  background:linear-gradient(150deg,var(--surface),rgba(247,252,255,.84));
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px) saturate(140%);
}
.brand{text-align:center}
.brand-logo{display:block;width:min(310px,86%);height:auto;margin:0 auto 18px;object-fit:contain}
.eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
h1{margin:5px 0 8px;font-size:clamp(25px,5vw,33px);line-height:1.14;letter-spacing:-.035em}
.brand p{margin:0 auto;color:var(--muted);max-width:370px}
form{display:grid;gap:10px;margin-top:27px}
label{font-size:13px;font-weight:800}
input{
  width:100%;
  min-height:52px;
  padding:13px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--text);
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease;
}
input::placeholder{color:#93a2b4}
input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(8,121,206,.12)}
button{
  min-height:52px;
  margin-top:4px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,var(--primary),#0b94df);
  color:#fff;
  cursor:pointer;
  font-weight:850;
  box-shadow:0 13px 28px rgba(8,121,206,.23);
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
button:hover{transform:translateY(-1px);background:linear-gradient(135deg,var(--primary-strong),var(--primary));box-shadow:0 16px 32px rgba(8,121,206,.28)}
button:disabled{opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
.status{min-height:22px;margin-top:14px;white-space:pre-wrap;text-align:center;color:var(--muted);font-weight:700}
.status.success{color:var(--success)}.status.error{color:var(--danger)}.status.warning{color:var(--warning)}
.security-note{display:flex;gap:10px;align-items:flex-start;margin-top:20px;padding:13px 14px;border:1px solid #cde5f7;border-radius:14px;background:#eef8ff;color:var(--muted)}
.security-note>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#daf6e8;color:var(--success);font-weight:900;flex:0 0 auto}.security-note p{margin:1px 0 0;font-size:13px}
.login-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:9px 16px;flex-wrap:wrap;padding:16px 20px 24px;color:var(--muted);font-size:12px;text-align:center}.login-footer a{color:var(--primary);font-weight:800;text-decoration:none}.login-footer a:hover{text-decoration:underline}
@media(max-width:520px){.login-layout{padding-top:18px}.login-card{padding:24px 19px;border-radius:22px}.brand-logo{width:min(280px,94%)}.login-footer{padding-bottom:18px}}
.turnstile-slot{min-height:65px;display:flex;justify-content:center;align-items:center;margin:4px 0 2px}.turnstile-slot>div{max-width:100%}
.checkout-price{margin:22px 0 4px;padding:17px;border:1px solid #cde5f7;border-radius:16px;background:#f1f9ff;text-align:center}.checkout-price strong{display:block;color:var(--primary);font-size:28px;line-height:1.1}.checkout-price span{color:var(--muted);font-size:13px}.checkout-benefits{display:grid;gap:8px;margin:16px 0 0;padding:0;list-style:none;color:var(--muted);font-size:13px}.checkout-benefits li::before{content:"✓";margin-right:8px;color:var(--success);font-weight:900}.checkout-login-link{margin-top:15px;text-align:center;font-size:13px}.checkout-login-link a{color:var(--primary);font-weight:800;text-decoration:none}.checkout-login-link a:hover{text-decoration:underline}
