.login-page{min-height:100dvh;color:var(--text);background:linear-gradient(90deg, transparent 49.92%, var(--border-soft) 50%, transparent 50.08%), var(--bg-deep);place-items:center;padding:clamp(28px,5vw,72px);display:grid;position:relative;overflow:hidden}.login-page:before{pointer-events:none;opacity:.28;background-image:repeating-linear-gradient(0deg, transparent 0 47px, var(--border-soft) 48px);content:"";position:absolute;inset:0}.login-theme-toggle{z-index:2;position:fixed;top:20px;right:20px}.login-shell{z-index:1;border-block:1px solid var(--border);background:var(--bg-deep);grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);width:min(1120px,100%);min-height:min(680px,100dvh - 96px);display:grid;position:relative;box-shadow:0 34px 90px #0000003d}.login-intro{border-right:1px solid var(--border);flex-direction:column;min-width:0;padding:clamp(42px,6vw,72px) clamp(42px,7vw,84px) clamp(42px,6vw,70px) 0;display:flex}.login-logo{width:172px;padding:0}.login-protocol{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:10px;margin:clamp(56px,8vh,92px) 0 18px;font-size:10px;font-weight:600;display:flex}.login-protocol>span{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 5px var(--success-soft);border-radius:50%}.login-intro h1{letter-spacing:-.065em;text-wrap:balance;max-width:650px;margin:0;font-size:clamp(46px,6vw,74px);font-weight:560;line-height:.97}.login-intro-copy{max-width:590px;color:var(--text-secondary);text-wrap:pretty;margin:24px 0 0;font-size:15px;line-height:1.65}.login-steps{margin:auto 0 0;padding:42px 0 0;list-style:none}.login-steps li{border-top:1px solid var(--border-soft);grid-template-columns:48px 1fr;gap:18px;padding:16px 0;display:grid}.login-steps li>span{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.08em;font-size:10px}.login-steps strong,.login-steps small{display:block}.login-steps strong{font-size:13px;font-weight:560}.login-steps small{color:var(--text-muted);margin-top:5px;font-size:11px;line-height:1.45}.login-panel{flex-direction:column;justify-content:center;min-width:0;padding:clamp(42px,6vw,72px) 0 clamp(42px,6vw,72px) clamp(42px,6vw,72px);display:flex}.login-panel-header{margin-bottom:32px}.login-eyebrow{color:var(--text-muted);letter-spacing:.04em;margin:0 0 12px;font-size:11px;font-weight:520}.login-panel h2{letter-spacing:-.05em;text-wrap:balance;margin:0;font-size:clamp(30px,4vw,43px);font-weight:560;line-height:1.04}.login-copy{max-width:410px;color:var(--text-secondary);text-wrap:pretty;margin:16px 0 0;font-size:13px;line-height:1.55}.login-code-status{border-block:1px solid var(--success-border);gap:5px;margin-bottom:22px;padding:15px 0;display:grid}.login-code-status.is-idle{border-color:var(--border-soft)}.login-code-status span{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:9px}.login-code-status strong{color:var(--success-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:540;overflow:hidden}.login-code-status.is-idle strong{color:var(--text)}.login-panel form{text-align:left;gap:14px;width:100%;margin:0;padding:0;display:grid}.login-panel label{color:var(--text-secondary);gap:9px;font-size:11px;font-weight:520;display:grid}.login-panel input{border:1px solid var(--border-strong);background:var(--surface-input);width:100%;height:54px;color:var(--text);border-radius:8px;outline:none;padding:0 16px;font-size:14px;transition:border-color .16s,background .16s,transform .16s}.login-panel input::placeholder{color:var(--text-muted)}.login-panel input:focus{border-color:var(--focus-ring);background:var(--surface-raised)}.login-panel input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.login-code-input{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.22em;font-size:22px!important}.login-panel .primary-button{border-radius:8px;justify-content:space-between;width:100%;height:50px;padding:0 17px;transition:background .18s,transform .18s}.login-panel .primary-button:hover:not(:disabled){transform:translateY(-1px)}.login-panel .primary-button:active:not(:disabled){transform:translateY(1px)}.login-panel .primary-button:focus-visible,.login-panel .secondary-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.login-invite-actions{width:100%}.login-secondary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.login-panel .secondary-button{border:1px solid var(--border);min-height:42px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;font-size:11px;transition:color .16s,border-color .16s,background .16s}.login-panel .secondary-button:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-hover)}.login-panel .secondary-button:disabled,.login-panel .primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-panel footer{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:30px;font-size:10px;display:flex}.login-panel footer>span{background:var(--text-muted);border-radius:50%;width:3px;height:3px}.login-sent{border-left:2px solid var(--green);color:var(--success-text);gap:7px;margin:0 0 22px;padding:18px 0 18px 18px;display:grid}.login-sent span{max-width:380px;color:var(--text-secondary);font-size:12px;line-height:1.5}.login-error{border-left:2px solid var(--red);color:var(--danger-text);background:var(--danger-soft);margin:14px 0 0;padding:11px 13px;font-size:11px;line-height:1.5}@media (max-width:900px){.login-page{background:var(--bg-deep);padding:72px 28px 40px;display:block;overflow:auto}.login-shell{min-height:0;box-shadow:none;border-block:0;grid-template-columns:1fr}.login-intro{border-right:0;border-bottom:1px solid var(--border);padding:0 0 38px}.login-protocol{margin-top:46px}.login-intro h1{max-width:720px}.login-steps{margin-top:34px;padding-top:0}.login-panel{padding:42px 0 0}}@media (max-width:560px){.login-page{padding:72px 20px 32px}.login-theme-toggle{top:14px;right:14px}.login-logo{width:146px}.login-protocol{margin-top:38px}.login-intro h1{font-size:44px}.login-intro-copy{font-size:13px}.login-steps{display:none}.login-panel{padding-top:34px}.login-secondary-actions{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.login-panel input,.login-panel .primary-button,.login-panel .secondary-button{transition:none}}
