*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'DM Sans',sans-serif;background:#061221;color:#dde8f5;min-height:100vh;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;}
.logo{display:flex;align-items:center;gap:9px;text-decoration:none;}
.logo-bar{width:6px;height:26px;background:linear-gradient(180deg,#2563eb,#0891b2);border-radius:3px;}
.logo-txt{font-family:'Syne',sans-serif;font-size:16px;font-weight:800;color:#dde8f5;letter-spacing:-0.02em;}
.card{background:#0a111c;border:1px solid #1e3048;border-radius:16px;padding:36px;width:100%;max-width:420px;}
.card h1{font-size:22px;font-weight:700;margin-bottom:6px;}
.card p{color:#4d7196;font-size:14px;margin-bottom:28px;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:12px;font-weight:600;color:#4d7196;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:6px;}
.field input{width:100%;background:#061221;border:1px solid #1e3048;border-radius:8px;color:#dde8f5;padding:11px 14px;font-size:14px;font-family:'DM Sans',sans-serif;transition:border-color .15s;outline:none;}
.field input:focus{border-color:#2563eb;}
.btn-primary{width:100%;background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:8px;color:#fff;padding:12px;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s;margin-top:4px;}
.btn-primary:hover{opacity:.9;}
.btn-primary:disabled{opacity:.5;cursor:not-allowed;}
.divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#253a52;font-size:12px;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:#1e3048;}
.btn-google{width:100%;background:transparent;border:1px solid #1e3048;border-radius:8px;color:#dde8f5;padding:11px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:10px;}
.btn-google:hover{background:#0a111c;border-color:#2d3f58;}
.btn-google svg{width:18px;height:18px;flex-shrink:0;}
.links{margin-top:20px;text-align:center;font-size:13px;color:#4d7196;}
.links a{color:#2563eb;text-decoration:none;font-weight:600;}
.links a:hover{text-decoration:underline;}
.error{background:#2d0a0a;border:1px solid #f87171;border-radius:8px;color:#f87171;padding:10px 14px;font-size:13px;margin-bottom:16px;display:none;}
.error.show{display:block;}
.success{background:#0d2818;border:1px solid #4ade80;border-radius:8px;color:#4ade80;padding:10px 14px;font-size:13px;margin-bottom:16px;display:none;}
.success.show{display:block;}
.forgot{text-align:right;margin-top:-8px;margin-bottom:16px;}
.forgot a{font-size:12px;color:#4d7196;text-decoration:none;}
.forgot a:hover{color:#2563eb;}
