.auth-root{min-height:100vh;display:flex;container-type:inline-size;container-name:authshell;background:var(--canvas)}.auth-brand{display:none}.auth-form-wrap{flex:1;min-width:0;display:flex;flex-direction:column;overflow-y:auto;background:var(--canvas)}.auth-form-inner{width:100%;max-width:380px;margin:auto;padding:36px 24px}.auth-logo-mobile{display:flex;justify-content:center;margin-bottom:30px}@container authshell (min-width: 820px){.auth-brand{display:flex;flex:0 0 46%;position:relative;overflow:hidden;background:linear-gradient(165deg,var(--ink-900),var(--ink-950) 60%,oklch(.22 .04 210))}.auth-logo-mobile{display:none}.auth-form-inner{padding:40px}}.auth-field-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.auth-field-box{display:flex;align-items:center;gap:9px;padding:0 12px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);height:46px;transition:border-color .15s}.auth-field-box:focus-within{border-color:var(--brand-500);box-shadow:0 0 0 3px var(--brand-100)}.auth-field-box input{flex:1;border:none;outline:none;background:transparent;font-size:14px;font-family:var(--font-ui);color:var(--text);min-width:0}.auth-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:46px;border-radius:var(--r-md);font-size:14px;font-weight:600;border:none;transition:background .15s,opacity .15s}.auth-btn-primary{background:var(--brand-600);color:#fff}.auth-btn-primary:hover{background:var(--brand-700)}.auth-btn-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}.auth-btn:disabled{opacity:.7;cursor:default}.auth-sso{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:46px;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-md);font-size:13.5px;font-weight:600;transition:background .15s}.auth-sso:hover{background:var(--ink-050)}.auth-sso:disabled{opacity:.55;cursor:default}.auth-error{background:var(--danger-100);color:var(--danger-600);border:1px solid color-mix(in oklch,var(--danger-500) 30%,transparent)}.auth-error,.auth-ok{border-radius:var(--r-md);padding:10px 13px;font-size:13px}.auth-ok{background:var(--positive-100);color:var(--positive-600)}.otp-input{flex:1;min-width:0;height:54px;text-align:center;font-size:22px;font-weight:700;font-family:var(--font-mono);color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);outline:none}.otp-input:focus{border-color:var(--brand-500)}