/* Public login only; dashboard styling remains unchanged. */
body:has(.farm-auth-login) { margin: 0; }
body.modern-ui .farm-auth-login { position: fixed; inset: 0; overflow: auto; background: #d9e7d2; color: #101c40; }
.farm-auth-photo { position: fixed; inset: 0; pointer-events: none; }
.farm-auth-photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.farm-auth-login-panel { position:relative; min-height:100%; display:flex; align-items:center; justify-content:center; padding:24px; box-sizing:border-box; }
body.modern-ui .farm-auth-card { position:relative; isolation:isolate; overflow:hidden; box-sizing:border-box; width:280px; max-width:100%; padding:16px 16px 26px; border:2px solid #ffffffdf; border-radius:22px; background:rgba(255,255,255,.84); backdrop-filter:blur(15px); -webkit-backdrop-filter:blur(15px); box-shadow:0 16px 48px #172b3833; }
body.modern-ui .farm-auth-card h1 { margin:0 0 5px; font-size:18px; line-height:1.2; font-weight:800; letter-spacing:-.7px; color:#0b153c; text-align:center; }
body.modern-ui .farm-auth-intro { margin:0 0 10px; color:#5e6b86; font-size:12px; line-height:1.4; text-align:center; }
body.modern-ui .farm-auth-input { display:flex; align-items:center; gap:10px; height:32px; padding:0 12px; margin:0 0 6px; border:1px solid #bed4fc; border-radius:12px; background:#ffffffbc; color:#5d6a84; box-sizing:border-box; }
body.modern-ui .farm-auth-input > i { font-size:14px; width:20px; text-align:center; }
body.modern-ui .farm-auth-input input { flex:1; min-width:0; width:100%; height:100%; padding:0; margin:0; border:0; border-radius:0; background:transparent; box-shadow:none; outline:none; font:inherit; font-size:13px; color:#142344; }
body.modern-ui .farm-auth-input input::placeholder { color:#66738c; opacity:1; }
body.modern-ui .farm-auth-input:focus-within { border-color:#3183e7; outline:2px solid #3183e72b; }
body.modern-ui .farm-auth-eye { display:grid; place-items:center; flex-shrink:0; width:30px; height:28px; padding:0; border:0; background:none; box-shadow:none; color:#5d6a84; font-size:14px; cursor:pointer; }
body.modern-ui .farm-auth-options { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:8px 0 10px; font-size:11px; }
body.modern-ui .farm-auth-options label { display:flex; align-items:center; gap:7px; margin:0; font-size:inherit; color:#142344; }
body.modern-ui .farm-auth-options input { width:16px; height:16px; margin:0; accent-color:#0869ef; }
body.modern-ui .farm-auth-options a { color:#065ce2; text-decoration:none; }
body.modern-ui .farm-auth-submit { display:flex; align-items:center; justify-content:center; gap:16px; width:100%; height:34px; padding:0 16px; border:0; border-radius:12px; color:white; background:linear-gradient(165deg,#008df0,#0554ac); box-shadow:0 6px 15px #0464bc26; font-size:15px; font-weight:700; cursor:pointer; }
body.modern-ui .farm-auth-submit:hover { background:linear-gradient(165deg,#087bd5,#064995); }
body.modern-ui .farm-auth-card :is(button,a):focus-visible { outline:3px solid #5daaff; outline-offset:3px; }
body.modern-ui .farm-auth-card .flash { padding:9px 12px; margin:0 0 12px; font-size:12px; line-height:1.5; border-radius:8px; }
.farm-auth-landscape { position:absolute; bottom:0; left:0; width:100%; height:24px; z-index:-1; pointer-events:none; }
body.modern-ui .farm-auth-card { min-width:0; }
.farm-auth-login-panel { width:100%; min-width:0; }
@media(max-width:900px) { .farm-auth-login-panel { padding:24px; } }
@media(max-width:540px) { .farm-auth-login-panel { padding:16px; } body.modern-ui .farm-auth-card { padding:16px 16px 26px; border-radius:22px; } body.modern-ui .farm-auth-card h1 { font-size:18px; } body.modern-ui .farm-auth-intro { font-size:12px; margin-bottom:10px; } }
@media(max-height:500px) { .farm-auth-login-panel { padding-top:12px; padding-bottom:12px; } body.modern-ui .farm-auth-card { padding-top:14px; padding-bottom:24px; } }
