:root { color: #f5f7f3; background: #101714; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; }
.auth-screen { display: grid; place-items: center; min-height: 100svh; padding: 24px; background: radial-gradient(circle at 50% 10%, rgba(216,255,98,.14), transparent 24rem), #101714; }
.auth-card { width: min(100%, 430px); padding: 27px 23px; border: 1px solid rgba(255,255,255,.09); border-radius: 28px; background: linear-gradient(145deg, rgba(31,42,37,.98), rgba(20,29,25,.98)); box-shadow: 0 30px 90px rgba(0,0,0,.35); }
.auth-brand { display: flex; align-items: center; gap: 11px; margin-bottom: 38px; font-size: 1.15rem; letter-spacing: .03em; }
.auth-brand span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 13px; color: #142000; background: #d8ff62; font-weight: 900; }
.eyebrow { margin: 0 0 7px; color: #d8ff62; font-size: .71rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
h1 { max-width: 330px; margin: 0 0 12px; font-size: clamp(2.5rem, 13vw, 3.8rem); line-height: .98; letter-spacing: -.055em; }
p { margin: 0 0 26px; color: #9eaaa4; line-height: 1.5; }
label { display: block; margin-bottom: 8px; color: #dce4df; font-size: .78rem; font-weight: 800; }
input { width: 100%; min-height: 58px; padding: 12px 15px; border: 1px solid rgba(255,255,255,.14); border-radius: 15px; outline: 0; color: #f5f7f3; background: #111915; font: inherit; font-size: 1.35rem; letter-spacing: .2em; }
input:focus { outline: 3px solid rgba(216,255,98,.45); outline-offset: 2px; }
button { width: 100%; min-height: 54px; margin-top: 14px; padding: 12px 18px; border: 0; border-radius: 15px; color: #142000; background: #d8ff62; cursor: pointer; font: inherit; font-weight: 800; }
button:disabled { cursor: wait; opacity: .55; }
.auth-error { margin: 12px 0 0; padding: 11px 12px; border: 1px solid rgba(255,129,109,.25); border-radius: 12px; color: #ffb2a6; background: rgba(255,129,109,.08); font-size: .8rem; }
