.login{background:var(--surface-page);min-height:calc(100vh - var(--header-h));display:flex;align-items:center}.login__grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--sp-9);gap:var(--sp-9);align-items:center;width:100%}.login__intro h1{font-size:var(--fs-2xl);font-weight:var(--fw-heavy);color:var(--ifal-navy-700);letter-spacing:var(--ls-tighter);margin:var(--sp-3) 0 var(--sp-4)}.login__intro p{font-size:var(--fs-base);line-height:var(--lh-relaxed);color:var(--text-body);max-width:440px;margin-bottom:var(--sp-5)}.login__points{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--sp-3)}.login__points li{display:flex;gap:10px;align-items:flex-start;font-size:var(--fs-sm);color:var(--text-body)}.login__points .check{color:var(--ifal-success-500);margin-top:2px;flex-shrink:0}.login__card-h{font-size:var(--fs-lg);font-weight:var(--fw-bold);color:var(--ifal-navy-700);margin-bottom:var(--sp-2)}.login__card-sub{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:var(--sp-5)}.oauth-list{flex-direction:column}.oauth-btn,.oauth-list{display:flex;gap:var(--sp-3)}.oauth-btn{align-items:center;justify-content:center;width:100%;min-height:50px;padding:12px 20px;font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--ifal-navy-700);background:#fff;border:var(--bw-thin) solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.oauth-btn:hover:not(:disabled){background:var(--ifal-navy-50);border-color:var(--border-strong);color:var(--ifal-navy-700)}.oauth-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.oauth-btn:disabled{opacity:.55;cursor:not-allowed}.oauth-form{width:100%}.login__note{font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--sp-5);line-height:var(--lh-normal)}.login__divider{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-5) 0;color:var(--text-subtle);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--ls-wide)}.login__divider:after,.login__divider:before{content:"";height:1px;flex:1 1;background:var(--border-subtle)}.login__unconfigured{font-size:var(--fs-xs);color:var(--ifal-warning-500);margin-top:4px}@media (max-width:860px){.login__grid{grid-template-columns:1fr;gap:var(--sp-6)}.login{display:block;padding:var(--sp-8) 0}}