
:root{--g:#4CAF50;--g2:#38a03c;--o:#F5821F;--b:#7DC6E8;--r:#E8253A;--n:#1B3A6B}
*{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:hidden}
body{min-height:100vh;background:var(--n);font-family:'Nunito',sans-serif;display:flex;align-items:center;justify-content:center;padding:24px 20px;position:relative;overflow:hidden}
.bg-tile{position:absolute;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:64px;pointer-events:none;opacity:.06}
.card{background:rgba(255,255,255,.08);backdrop-filter:blur(20px);border:1.5px solid rgba(255,255,255,.14);border-radius:26px;padding:36px 28px;width:100%;max-width:400px;position:relative;z-index:2;box-shadow:0 24px 64px rgba(0,0,0,.35)}
.sport-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:84px;margin:0 auto 14px}
.sport-tile{height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px}
.brand{text-align:center;margin-bottom:28px}
.brand-name{font-family:'Fredoka One',cursive;font-size:22px;color:var(--g);font-weight:400;letter-spacing:.5px}
.brand-tag{color:rgba(255,255,255,.35);font-size:12px;margin-top:3px}
.field-label{display:block;color:rgba(255,255,255,.45);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}
.field-input{width:100%;padding:13px 15px;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.2);border-radius:12px;color:#ffffff;font-size:16px;font-family:'Nunito',sans-serif;outline:none;transition:all .2s;margin-bottom:14px;-webkit-text-fill-color:#fff}
.field-input:focus{border-color:rgba(76,175,80,.7);background:rgba(255,255,255,.18)}
.field-input::placeholder{color:rgba(255,255,255,.35)}
.field-input:-webkit-autofill,.field-input:-webkit-autofill:hover,.field-input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px rgba(27,58,107,.8) inset!important;-webkit-text-fill-color:#fff!important;border-color:rgba(76,175,80,.5)!important}
.submit-btn{width:100%;padding:14px;border:none;border-radius:13px;background:linear-gradient(135deg,var(--g),var(--g2));color:#fff;font-family:'Fredoka One',cursive;font-size:19px;cursor:pointer;box-shadow:0 6px 20px rgba(76,175,80,.4);transition:opacity .2s;margin-top:4px}
.submit-btn:hover{opacity:.9}
.error-msg{background:rgba(232,37,58,.15);border:1px solid rgba(232,37,58,.3);border-radius:10px;padding:10px 14px;color:#ff9aa6;font-size:13px;margin-bottom:14px;text-align:center}
.links{text-align:center;margin-top:20px;display:flex;flex-direction:column;gap:8px}
.links a{color:rgba(255,255,255,.45);font-size:13px;text-decoration:none;transition:color .2s}
.links a:hover{color:rgba(255,255,255,.8)}
.links .register-link{color:var(--g);font-weight:700}
.remember-row{display:flex;align-items:center;gap:8px;margin-bottom:14px}
.remember-row input{accent-color:var(--g);width:16px;height:16px}
.remember-row label{color:rgba(255,255,255,.45);font-size:13px}
