.auth-shell{--p-muted:var(--muted);--rule-soft:var(--rule);--paper-4:var(--paper);--navy:var(--surface-inverse);--rust:var(--accent);--rust-ink:var(--accent-ink);--green:var(--success);--red:var(--danger);font-family:var(--sans);color:var(--ink);min-height:100vh;background:var(--paper-warm);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.auth-shell *{box-sizing:border-box}.auth-shell a{color:inherit;text-decoration:none}.auth-shell button{font-family:inherit;cursor:pointer}.auth-shell .auth-grid{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh}.auth-shell .brand-side{background:var(--navy);color:var(--ink-inverse);display:flex;flex-direction:column;justify-content:space-between;padding:56px 64px}.auth-shell .brand-top{display:flex;align-items:center;gap:16px}.auth-shell .brand-top img{height:46px;width:auto;display:block}.auth-shell .brand-top .label{font:600 11px/1.35 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-inverse);padding-left:16px;border-left:1px solid var(--rule-inverse)}.auth-shell .brand-mid{max-width:460px}.auth-shell .brand-mid .kicker{font:600 12px/1.3 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-inverse);margin-bottom:20px}.auth-shell .brand-mid h1{font:700 clamp(34px,3.4vw,46px)/1.12 var(--display);letter-spacing:-.015em;color:var(--ink-inverse);margin:0;text-wrap:balance}.auth-shell .brand-mid h1 em{font-style:normal;color:var(--accent)}.auth-shell .brand-mid p{font:400 17px/1.6 var(--sans);color:var(--muted-inverse);margin:20px 0 0}.auth-shell .brand-bottom{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--rule-inverse);padding-top:22px}.auth-shell .brand-bottom .proverb{font:400 15px/1.5 var(--sans);color:var(--muted-inverse)}.auth-shell .brand-bottom .proverb b{display:block;font-weight:600;color:var(--accent);font-size:12px;letter-spacing:.04em;margin-bottom:4px}.auth-shell .brand-bottom .yr{font:600 11px var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-inverse)}.auth-shell .form-side{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 40px;background:var(--paper-warm)}.auth-shell .form-mark{display:none;width:150px;height:auto;margin:0 0 32px}.auth-shell .form-box{width:100%;max-width:440px;padding:32px;background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}.auth-shell .form-box .top-rule{margin:0}.auth-shell .form-box .kicker{font:600 12px/1.3 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.auth-shell .form-box h2{font:700 27px/1.25 var(--display);letter-spacing:-.01em;color:var(--ink);margin:0 0 8px;text-wrap:balance}.auth-shell .form-box h2 em{font-style:normal;color:inherit}.auth-shell .form-box .lede{font:400 16px/1.6 var(--sans);color:var(--ink-2);margin:0 0 12px}.auth-shell .form-box .top-rule .lede:last-child{margin-bottom:0}.auth-shell .form-box .lede strong{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.auth-shell .field{display:flex;flex-direction:column;gap:8px;margin:24px 0 0}.auth-shell .field label{font:600 14px/1.4 var(--display);color:var(--ink)}.auth-shell .field .inp{display:flex;align-items:center;gap:10px;min-height:var(--control-h);padding:0 14px;border:none;box-shadow:inset 0 0 0 1px var(--subtle);border-radius:var(--radius-input);background:var(--paper);transition:box-shadow var(--dur-fast) var(--ease)}.auth-shell .field .inp:focus-within{box-shadow:inset 0 0 0 1px var(--ink),var(--focus-ring)}.auth-shell .field .inp input:focus-visible{box-shadow:none}.auth-shell .field .inp svg{width:18px;height:18px;color:var(--muted);flex-shrink:0}.auth-shell .field .inp input{flex:1;min-width:0;align-self:stretch;border:none;background:transparent;outline:none;font:400 16px var(--sans);color:var(--ink)}.auth-shell .field .inp input::-moz-placeholder{color:var(--muted)}.auth-shell .field .inp input::placeholder{color:var(--muted)}.auth-shell .btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:var(--control-h-lg);margin-top:24px;padding:0 24px;font:600 14px/1.2 var(--display);letter-spacing:.02em;text-transform:uppercase;background:var(--primary);color:var(--on-primary);border:2px solid var(--primary);border-radius:var(--radius-control);transition:background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.auth-shell .btn:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.auth-shell .btn:active{background:var(--primary-press);border-color:var(--primary-press);transform:scale(.98)}.auth-shell .btn:disabled{background:var(--paper-3);border-color:var(--paper-3);color:var(--muted);cursor:not-allowed;transform:none}.auth-shell .ghost-btn{display:inline-flex;align-items:center;min-height:var(--control-h);margin-top:16px;padding:0;font:600 14px var(--sans);color:var(--accent-ink);border:none;background:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur-fast) var(--ease)}.auth-shell .ghost-btn:hover{color:var(--ink);text-decoration-thickness:2px}.auth-shell .spin{width:14px;height:14px;border:2px solid color-mix(in srgb,var(--on-primary) 30%,transparent);border-top-color:var(--on-primary);border-radius:50%;animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(1turn)}}.auth-shell .msg{font:400 15px/1.5 var(--sans);padding:12px 16px;border:1px solid transparent;border-radius:var(--radius-md);margin-top:24px}.auth-shell .msg.error{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 25%,transparent)}.auth-shell .msg.warn{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 25%,transparent)}.auth-shell .msg .hd{display:flex;align-items:center;gap:8px;font:600 13px var(--display);letter-spacing:.02em;margin-bottom:4px}.auth-shell .msg .hd svg{width:16px;height:16px;flex-shrink:0}.auth-shell .fineprint{font:400 13px/1.5 var(--sans);color:var(--muted);margin-top:24px;text-align:center}.auth-shell .dev-box{margin-top:20px;padding:10px 12px;background:var(--paper-2);border-radius:var(--radius-input)}.auth-shell .dev-box .k{font:600 11px var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.auth-shell .dev-box a{font:400 13px/1.4 var(--mono);color:var(--accent-ink);word-break:break-all;text-decoration:underline;text-underline-offset:2px}.auth-shell .mark{width:48px;height:48px;border-radius:var(--radius-pill);display:flex;align-items:center;justify-content:center;margin-bottom:16px;background:var(--paper-2);color:var(--ink)}.auth-shell .mark svg{width:24px;height:24px}.auth-shell .mark.sent{background:var(--accent-soft);color:var(--accent-ink)}.auth-shell .mark.ok{background:var(--success-soft);color:var(--success)}.auth-shell .mark.err{background:var(--danger-soft);color:var(--danger)}.auth-shell .mark.load .spin{width:22px;height:22px;border:2px solid var(--rule);border-top-color:var(--accent-ink)}@media (max-width:860px){.auth-shell .auth-grid{grid-template-columns:1fr}.auth-shell .brand-side{display:none}.auth-shell .form-side{justify-content:flex-start;padding:48px 20px 32px;min-height:100vh}.auth-shell .form-mark{display:block}}@media (max-width:420px){.auth-shell .form-box{padding:24px}}