.login-module__Si-P0q__page{min-height:100vh;padding:var(--s-5);justify-content:center;align-items:center;display:flex}.login-module__Si-P0q__card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--r-xl);width:100%;max-width:430px;padding:var(--s-6);box-shadow:var(--shadow)}.login-module__Si-P0q__logo{font-family:var(--font-display-stack);font-weight:800;font-size:var(--text-lede);letter-spacing:-.02em}.login-module__Si-P0q__logo span{color:var(--mint)}.login-module__Si-P0q__title{font-family:var(--font-display-stack);font-weight:800;font-size:var(--text-title);letter-spacing:-.02em;margin-top:var(--s-5);line-height:1.18}.login-module__Si-P0q__sub{font-size:var(--text-fine);color:var(--muted);margin-top:var(--s-3);line-height:1.6}.login-module__Si-P0q__link{color:var(--mint)}.login-module__Si-P0q__link:hover{text-underline-offset:3px;text-decoration:underline}.login-module__Si-P0q__warn,.login-module__Si-P0q__error,.login-module__Si-P0q__notice{margin-top:var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--r-sm);font-size:var(--text-meta);font-family:var(--font-mono-stack);overflow-wrap:anywhere;line-height:1.6}.login-module__Si-P0q__warn{background:var(--amber-wash);color:var(--amber);border:1px solid #9a651259}.login-module__Si-P0q__error{background:var(--danger-wash);color:var(--danger);border:1px solid #b23a2e59}.login-module__Si-P0q__notice{border:1px solid var(--line-strong);background:var(--mint-wash);color:var(--mint)}.login-module__Si-P0q__warn code,.login-module__Si-P0q__error code,.login-module__Si-P0q__notice code{color:inherit}.login-module__Si-P0q__oauth{margin-top:var(--s-5)}.login-module__Si-P0q__google{justify-content:center;align-items:center;gap:var(--s-3);width:100%;font-family:var(--font-mono-stack);font-weight:600;font-size:var(--text-meta);color:var(--text);background:var(--bg-inset);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:var(--s-3) var(--s-4);cursor:pointer;transition:border-color .18s,transform .18s;display:flex}.login-module__Si-P0q__google:hover:not(:disabled){border-color:var(--mint);transform:translateY(-1px)}.login-module__Si-P0q__google:disabled{opacity:.55;cursor:not-allowed}.login-module__Si-P0q__divider{align-items:center;gap:var(--s-3);margin:var(--s-5) 0 2px;font-family:var(--font-mono-stack);font-size:var(--text-label);letter-spacing:.06em;color:var(--faint);display:flex}.login-module__Si-P0q__divider:before,.login-module__Si-P0q__divider:after{content:"";background:var(--line);flex:1;height:1px}.login-module__Si-P0q__form{margin-top:var(--s-5);gap:var(--s-4);display:grid}.login-module__Si-P0q__label{gap:var(--s-2);font-family:var(--font-mono-stack);font-size:var(--text-meta);letter-spacing:.04em;color:var(--muted);display:grid}.login-module__Si-P0q__input{background:var(--color-card);border:1px solid var(--line-strong);border-radius:var(--r);color:var(--text);font-family:var(--font-mono-stack);font-size:var(--text-fine);padding:var(--s-3) var(--s-4);outline:none;transition:border-color .18s,box-shadow .18s;box-shadow:inset 0 1px 2px #2e220c0f}.login-module__Si-P0q__input:hover:not(:focus){border-color:var(--muted)}.login-module__Si-P0q__input:focus{border-color:var(--mint);box-shadow:inset 0 1px 2px #2e220c0f, 0 0 0 3px var(--mint-wash)}.login-module__Si-P0q__actions{gap:var(--s-3);margin-top:var(--s-2);display:flex}.login-module__Si-P0q__primary,.login-module__Si-P0q__secondary{font-family:var(--font-mono-stack);font-weight:600;font-size:var(--text-meta);border-radius:var(--r-pill);padding:var(--s-3) var(--s-4);cursor:pointer;flex:1;transition:transform .18s,box-shadow .18s,border-color .18s,opacity .18s}.login-module__Si-P0q__primary{background:var(--grad-brand);color:var(--mint-ink);box-shadow:var(--glow-mint);border:none}.login-module__Si-P0q__primary:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 0 0 1px #15603c40,0 16px 40px -10px #15603c80}.login-module__Si-P0q__secondary{color:var(--text);border:1px solid var(--line-strong);background:0 0}.login-module__Si-P0q__secondary:hover:not(:disabled){border-color:var(--mint)}.login-module__Si-P0q__primary:disabled,.login-module__Si-P0q__secondary:disabled{opacity:.45;cursor:not-allowed}
