.login-page{background:var(--color-soft);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login-card{border:2px solid var(--color-ink);background:var(--color-canvas);width:100%;max-width:400px;box-shadow:6px 6px 0 var(--color-ink);border-radius:16px;padding:36px 28px}.login-mark{margin:0 0 28px;line-height:0}.login-card h1{letter-spacing:-.6px;color:var(--color-ink);margin:0 0 8px;font-size:26px;font-weight:900}.login-lead{color:var(--color-muted);margin:0 0 24px;font-size:14px;line-height:1.6}.login-error{border:2px solid var(--color-ink);color:var(--color-danger);background:var(--color-danger-soft);border-radius:12px;margin:0 0 16px;padding:12px 14px;font-size:14px;line-height:1.5}.login-notice{border:2px solid var(--color-ink);color:var(--color-ink);background:var(--color-soft);border-radius:12px;margin:0 0 12px;padding:12px 14px;font-size:14px;line-height:1.6}.login-google,.login-submit{border:2px solid var(--color-ink);width:100%;font:inherit;color:var(--color-ink);cursor:pointer;box-shadow:3px 3px 0 var(--color-ink);border-radius:10px;justify-content:center;align-items:center;gap:10px;font-size:15px;font-weight:700;transition:transform .1s,box-shadow .1s,background-color .1s;display:inline-flex}.login-google{background:var(--color-canvas);min-height:48px}.login-google:hover{background:var(--color-soft)}.login-submit{background:var(--color-primary);min-height:48px;color:var(--color-on-primary)}.login-submit:hover:not(:disabled){background:var(--color-primary-active)}.login-google:hover,.login-submit:hover:not(:disabled){box-shadow:4px 4px 0 var(--color-ink);transform:translate(-1px,-1px)}.login-google:active,.login-submit:active:not(:disabled){box-shadow:1px 1px 0 var(--color-ink);transform:translate(2px,2px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-email{margin-top:20px}.login-divider{color:var(--color-muted);align-items:center;gap:10px;margin:0 0 16px;font-size:13px;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--color-ink);flex:1;height:1.5px}.login-tabs{border:2px solid var(--color-ink);background:var(--color-canvas);border-radius:999px;margin-bottom:14px;display:flex;overflow:hidden}.login-tabs button{height:36px;font:inherit;color:var(--color-ink);cursor:pointer;background:0 0;border:0;flex:1;font-size:14px;font-weight:700}.login-tabs button.on{background:var(--color-ink);color:var(--color-canvas)}.login-fields{flex-direction:column;gap:12px;display:flex}.login-fields label{color:var(--color-ink);flex-direction:column;gap:6px;font-size:13px;font-weight:700;display:flex}.login-fields input{border:2px solid var(--color-ink);height:44px;color:var(--color-ink);background:var(--color-canvas);border-radius:10px;padding:0 12px;font-size:16px}.login-fields input:focus{outline:3px solid var(--color-orange);outline-offset:1px}.login-hint{color:var(--color-muted);margin:-4px 0 0;font-size:12px}.login-link{color:var(--color-ink);text-underline-offset:2px;align-self:center;font-size:13px;text-decoration:underline}button.login-link{cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:13px}
