*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:#29252c;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.hidden{display:none!important}
.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,560px) minmax(0,420px);align-items:center;justify-content:center;gap:40px;padding:40px 24px;background:radial-gradient(circle at 75% 45%,#3f917955,transparent 55%)}
.login-card{padding:40px;border:1px solid #739582;border-radius:24px;background:linear-gradient(125deg,#354b40,#322e36 72%)}
.login-brand{display:flex;align-items:baseline;gap:10px}
.login-name{font-size:40px;font-weight:900;letter-spacing:-.04em}
.login-by{font-size:14px;color:#d9d5dc}
.login-by span{color:#9effa9}
.login h1{font-size:clamp(34px,4.5vw,52px);line-height:1.05;letter-spacing:-.025em;margin:28px 0 14px}
.login h1 span{color:#9effa9}
.login-copy{color:#d9d5dc;font-size:15px;line-height:1.6;margin:0 0 26px}
.login-google{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:12px;background:#fff;color:#29252c;font-weight:800;font-size:15px;text-decoration:none;box-shadow:0 10px 25px #0000004d}
.login-google:hover,.login-google:focus-visible{outline:3px solid #9effa9;outline-offset:3px}
.login-google svg{width:22px;height:22px}
.login-message{margin:0 0 20px;padding:12px 14px;border:1px solid #9effa9;border-radius:10px;background:#9effa91a;color:#e3f2e6;font-size:13px;line-height:1.5}
.login-message.error{border-color:#d9877c;background:#5b2f2b66;color:#ffd5cf}
.login-local{color:#e3f2e6;font-size:13px;line-height:1.6}
.login-local a{color:#9effa9;font-weight:800}
.login-help{margin:26px 0 0;color:#aaa4ad;font-size:12px}
.login-gigi{width:100%;max-width:420px;filter:drop-shadow(0 25px 40px #00000066)}
@media(max-width:860px){.login{grid-template-columns:1fr}.login-gigi{display:none}.login-card{padding:28px}}
