.auth-screen{background:var(--canvas);flex-direction:column;min-height:100dvh;display:flex}.auth-top{padding:18px 24px}.auth-main{flex:1;justify-content:center;align-items:flex-start;padding:24px 16px 48px;display:flex}.auth-foot{color:var(--text-3);text-align:center;padding:16px 24px;font-size:12px}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;max-width:440px;box-shadow:var(--shadow-card)}.auth-card.auth-wide{max-width:720px}.auth-card-head{border-bottom:1px solid var(--line);padding:24px 28px 18px}.auth-card-head h1{margin-bottom:6px;font-size:22px}.auth-card-head p{color:var(--text-2);font-size:14px;line-height:1.55}.auth-card-head .eyebrow{margin-bottom:8px;display:block}.auth-card-body{gap:18px;padding:22px 28px 26px;display:grid}.auth-card-foot{border-top:1px solid var(--line);background:var(--surface-2);color:var(--text-3);border-radius:0 0 var(--radius) var(--radius);flex-wrap:wrap;justify-content:space-between;gap:6px 16px;padding:14px 28px;font-size:13px;display:flex}.auth-card-foot a,.auth-link{color:var(--brand-strong);font-weight:600}.auth-card-foot a:hover,.auth-link:hover{text-underline-offset:3px;text-decoration:underline}.auth-form{gap:16px;display:grid}.auth-signin-methods{gap:18px;display:grid}.auth-google{color:#1f1f1f;cursor:pointer;background:#fff;border:1px solid #747775;border-radius:20px;justify-content:center;align-items:center;gap:12px;width:100%;min-height:42px;padding:10px 16px;font-family:Arial,sans-serif;font-size:14px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.auth-google svg{flex-shrink:0}.auth-google:hover:not(:disabled){background:#f8fafd;border-color:#1f1f1f}.auth-google:focus-visible{outline-offset:3px;box-shadow:var(--focus);outline:2px solid #0000}.auth-google:disabled{opacity:.65;cursor:wait}.auth-divider{color:var(--text-3);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-field{gap:6px;display:grid}.auth-field label,.auth-label{color:var(--text);font-size:13px;font-weight:600}.auth-field .input{min-height:40px}.auth-field .input[readonly]{background:var(--surface-2);border-color:var(--line-strong);color:var(--text-2)}.auth-field .input[readonly]:hover{border-color:var(--line-strong)}.auth-field-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-field-row a{font-size:13px}.auth-hint{color:var(--text-3);font-size:12px;line-height:1.5}.auth-field-error{color:var(--red-ink);font-size:12px;font-weight:600}.auth-field[data-invalid=true] .input{border-color:var(--red)}.auth-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.auth-actions .btn{min-height:40px}.auth-actions .btn-primary{min-width:140px}.auth-full{width:100%}.auth-message{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--text-2);align-items:flex-start;gap:10px;padding:10px 12px;font-size:13px;line-height:1.5;display:flex}.auth-message svg{flex-shrink:0;width:16px;height:16px;margin-top:2px}.auth-message strong{color:var(--text)}.auth-message.error{background:var(--red-soft);border-color:var(--red-line);color:var(--red-ink)}.auth-message.success{background:var(--green-soft);border-color:var(--green-line);color:var(--green-ink)}.auth-message.info{background:var(--blue-soft);border-color:var(--blue-line);color:var(--blue-ink)}.auth-message.warning{background:var(--amber-soft);border-color:var(--amber-line);color:var(--amber-ink)}.auth-facts{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;font-size:13px;display:grid}.auth-facts dt{color:var(--text-3)}.auth-facts dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-weight:550}.auth-steps{color:var(--text-3);flex-wrap:wrap;gap:6px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.auth-steps li{background:var(--surface-3);border-radius:3px;padding:1px 6px;font-weight:600}.auth-steps li[aria-current=step]{background:var(--brand-soft);color:var(--red-ink)}.auth-step-title{font-size:16px;font-weight:650}.auth-step-title:focus:not(:focus-visible){outline:none}.auth-text{color:var(--text-2);font-size:14px;line-height:1.55}.auth-text strong,.auth-hint strong{color:var(--text);font-weight:650}.auth-hint code{background:var(--surface-3);color:var(--text);border-radius:3px;padding:0 4px;font-size:12px}.auth-factor-head{gap:2px;display:grid}.auth-factor-head .auth-toggle{font-size:12px}.auth-next{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);gap:6px;padding:12px 14px;display:grid}.auth-next .auth-list{color:var(--text-2);font-size:13px}.auth-apps{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:0;list-style:none;display:grid}.auth-apps li{color:var(--text-3);align-items:flex-start;gap:10px;padding:9px 12px;font-size:13px;line-height:1.45;display:flex}.auth-apps li+li{border-top:1px solid var(--line)}.auth-apps strong{color:var(--text);font-weight:650}.auth-apps svg{width:16px;height:16px;color:var(--text-3);margin-top:1px}.auth-howto{color:var(--text-2);gap:8px;padding-left:20px;font-size:14px;line-height:1.5;display:grid}.auth-howto strong{color:var(--text);font-weight:650}.auth-manual{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);gap:10px;padding:14px 16px;display:grid}.auth-manual h3{font-size:14px}.auth-manual .auth-secret{background:var(--surface)}.auth-copy-status{color:var(--green-ink);font-size:12px}.auth-copy-status.failed{color:var(--red-ink);font-weight:600}.auth-copy-status:empty{display:none}@media (hover:hover) and (pointer:fine){.auth-otp-link{display:none}}.auth-field .input.auth-code{font-variant-numeric:tabular-nums;letter-spacing:.3em;text-align:center;max-width:240px;font-size:18px}.auth-field .input.auth-code-backup{letter-spacing:.08em;max-width:280px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}.auth-toggle{text-align:left;color:var(--brand-strong);justify-self:start;padding:0;font-size:13px;font-weight:600}.auth-toggle:hover{text-underline-offset:3px;text-decoration:underline}.auth-enroll{grid-template-columns:auto 1fr;align-items:start;gap:18px;display:grid}.auth-qr{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;width:168px;height:168px;padding:8px}.auth-qr svg{width:100%;height:100%;display:block}.auth-secret{-webkit-user-select:all;user-select:all;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);letter-spacing:.06em;overflow-wrap:anywhere;color:var(--text);padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;display:block}.auth-codes{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:12px;list-style:none;display:grid}.auth-codes li{letter-spacing:.05em;color:var(--text);text-align:center;padding:3px 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.auth-section{border-top:1px solid var(--line);grid-template-columns:200px minmax(0,1fr);gap:20px;padding:20px 28px;display:grid}.auth-section:first-child{border-top:0}.auth-section h2{margin-bottom:4px;font-size:15px}.auth-section>div:first-child p{color:var(--text-3);font-size:13px;line-height:1.5}.auth-sessions{border:1px solid var(--line);border-radius:var(--radius-sm);display:grid}.auth-session{justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.auth-session+.auth-session{border-top:1px solid var(--line)}.auth-session strong{color:var(--text);font-size:13px;display:block}.auth-session span{color:var(--text-3)}.auth-lozenge{letter-spacing:.03em;text-transform:uppercase;background:var(--slate-soft);color:var(--slate-ink);border-radius:3px;align-items:center;padding:1px 6px;font-size:11px;font-weight:700;line-height:18px;display:inline-flex}.auth-lozenge.on{background:var(--green-soft);color:var(--green-ink)}.auth-lozenge.off{background:var(--amber-soft);color:var(--amber-ink)}@media (max-width:640px){.auth-top{padding:14px 16px}.auth-main{padding:8px 12px 32px}.auth-card-head,.auth-card-body,.auth-card-foot{padding-left:18px;padding-right:18px}.auth-enroll{grid-template-columns:1fr;justify-items:center}.auth-enroll .auth-howto{justify-self:stretch}.auth-manual{padding:12px}.auth-manual .auth-facts{grid-template-columns:1fr;gap:2px}.auth-manual .auth-facts dd+dt{margin-top:6px}.auth-section{grid-template-columns:1fr;gap:10px;padding:18px}.auth-actions .btn{min-height:44px}.auth-session{flex-wrap:wrap}}.auth-list{gap:6px;padding-left:18px;display:grid}ul.auth-list{list-style:outside}.auth-foot-actions{flex-wrap:wrap;align-items:center;gap:6px 16px;display:inline-flex}.auth-foot-button{color:var(--text-2);align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.auth-foot-button:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.auth-foot-button svg{width:14px;height:14px}.auth-lozenges{flex-wrap:wrap;gap:6px;display:flex}.auth-codes-box{gap:8px;display:grid}.auth-print-only{display:none}@media print{body:has(.auth-codes-box) :not(:has(.auth-codes-box)):not(.auth-codes-box):not(.auth-codes-box *){display:none!important}body:has(.auth-codes-box) :has(.auth-codes-box){max-width:none;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;display:block}body:has(.auth-codes-box){background:#fff}.auth-codes-box{padding:16px 0}.auth-print-only{color:#000;margin-bottom:6px;font-size:14px;font-weight:650;display:block}.auth-codes{background:#fff;border-color:#000}}.auth-list code{background:var(--surface-3);color:var(--text);border-radius:3px;padding:1px 4px;font-size:12px}.auth-title-gap{margin-top:12px}.auth-link .auth-back-icon{vertical-align:-2px;width:14px;height:14px}
