:root{
  --entry-bg:#090d16;
  --entry-panel:rgba(255,255,255,.075);
  --entry-panel-strong:rgba(255,255,255,.12);
  --entry-line:rgba(255,255,255,.16);
  --entry-text:#f8fbff;
  --entry-muted:#b9c7dc;
  --entry-blue:#1688ff;
  --entry-orange:#ff8a1f;
  --entry-white:#fff;
}
*{box-sizing:border-box}
.entry-page{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 18% 16%,rgba(22,136,255,.28),transparent 34%),
    radial-gradient(circle at 82% 20%,rgba(255,138,31,.22),transparent 30%),
    linear-gradient(135deg,#080b12 0%,#111827 48%,#080b12 100%);
  color:var(--entry-text);
  font-family:Inter,Arial,Helvetica,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.entry-page:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 82%);
}
.entry-shell{
  position:relative;
  width:min(1120px,calc(100% - 36px));
  min-height:100vh;
  margin:0 auto;
  display:grid;
  align-content:center;
  gap:24px;
  padding:42px 0 28px;
}
.landing-hero{
  display:grid;
  gap:22px;
  padding:34px;
  border:1px solid var(--entry-line);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.055));
  box-shadow:0 28px 90px rgba(0,0,0,.34);
  overflow:hidden;
}
.brand-mark img{
  display:block;
  width:min(520px,100%);
  height:auto;
  object-fit:contain;
}
.eyebrow{
  width:max-content;
  margin:0 0 12px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#dceaff;
  background:rgba(22,136,255,.12);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.landing-hero h1{
  margin:0;
  font-size:clamp(38px,7vw,78px);
  line-height:.94;
  letter-spacing:0;
}
.lead{
  margin:16px 0 0;
  color:#fff;
  font-size:clamp(20px,2.4vw,30px);
  font-weight:900;
}
.summary{
  max-width:780px;
  margin:12px 0 0;
  color:var(--entry-muted);
  font-size:18px;
  line-height:1.55;
  font-weight:700;
}
.entry-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:2px;
}
.entry-actions a{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 18px;
  border-radius:12px;
  font-weight:900;
  text-decoration:none;
}
.primary-action{
  color:#06111f;
  background:linear-gradient(135deg,#55b4ff,#ff9b37);
}
.secondary-action{
  color:#f8fbff;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.feature-grid article{
  min-height:150px;
  padding:18px;
  border:1px solid var(--entry-line);
  border-radius:18px;
  background:var(--entry-panel);
}
.feature-grid span{
  color:#7abfff;
  font-size:12px;
  font-weight:900;
}
.feature-grid h2{
  margin:12px 0 8px;
  font-size:18px;
}
.feature-grid p{
  margin:0;
  color:var(--entry-muted);
  line-height:1.45;
  font-weight:700;
}
.entry-footer{
  color:rgba(255,255,255,.55);
  font-size:12px;
  font-weight:800;
  text-align:center;
}
.login-page .entry-shell{
  width:min(460px,calc(100% - 32px));
  justify-items:stretch;
}
.auth-card{
  display:grid;
  gap:18px;
  padding:28px;
  border:1px solid var(--entry-line);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.065));
  box-shadow:0 28px 90px rgba(0,0,0,.36);
}
.auth-logo{
  display:grid;
  justify-items:center;
  gap:10px;
  text-align:center;
}
.auth-logo img{
  width:min(300px,88%);
  height:auto;
  display:block;
  object-fit:contain;
}
.auth-card h1{
  margin:0;
  font-size:30px;
  line-height:1;
}
.auth-subtitle{
  margin:0;
  color:var(--entry-muted);
  font-weight:800;
}
.auth-card form{
  display:grid;
  gap:13px;
}
.auth-card label{
  display:grid;
  gap:7px;
  color:#dce7f8;
  font-size:13px;
  font-weight:900;
}
.auth-card input{
  width:100%;
  min-height:44px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(255,255,255,.95);
  color:#101828;
  font:inherit;
  padding:10px 12px;
}
.auth-card .password-field{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
}
.auth-card .password-field input{
  border-radius:10px 0 0 10px;
}
.auth-card .password-toggle{
  width:44px;
  min-height:44px;
  padding:0;
  border:1px solid rgba(255,255,255,.18);
  border-left:0;
  border-radius:0 10px 10px 0;
  background:#fff;
  color:#25344d;
  cursor:pointer;
}
.auth-submit{
  width:100%;
  min-height:46px;
  border:0;
  border-radius:12px;
  color:#06111f;
  background:linear-gradient(135deg,#55b4ff,#ff9b37);
  font-weight:900;
  cursor:pointer;
}
.auth-message{
  margin:0;
  padding:11px 12px;
  border-radius:12px;
  background:rgba(254,243,242,.98);
  border:1px solid #fecdca;
  color:#b42318;
  font-size:14px;
  font-weight:900;
}
.auth-foot{
  margin:0;
  color:rgba(255,255,255,.58);
  text-align:center;
  font-size:12px;
  font-weight:800;
}
@media(max-width:760px){
  .entry-shell{width:min(100% - 24px,1120px);padding:24px 0}
  .landing-hero{padding:24px}
  .feature-grid{grid-template-columns:1fr}
  .entry-actions a{width:100%}
  .auth-card{padding:22px}
}
