.tl-auth{background:var(--app-shell-bg);min-height:100dvh;font-family:var(--font-sans);grid-template-columns:1fr 1.05fr;gap:8px;padding:8px;display:grid}@media (max-width:880px){.tl-auth{grid-template-columns:1fr}.tl-auth .auth-aside{display:none}}.tl-auth .auth-form{background:var(--surface-base);border:1px solid var(--card-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow-y:auto}.tl-auth .auth-form-top{justify-content:space-between;align-items:center;padding:22px 26px;display:flex}.tl-auth .auth-brand{align-items:center;gap:9px;text-decoration:none;display:flex}.tl-auth .auth-brand img{width:30px;height:30px;display:block}.tl-auth .auth-brand .word{font-family:var(--font-display);letter-spacing:-.03em;color:var(--accent-hover);font-size:21px;font-weight:700}.tl-auth .auth-theme{border-radius:var(--radius-md);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:background var(--hover-out-dur) var(--ease-out-quart);background:0 0;border:none;justify-content:center;align-items:center;font-size:19px;display:flex}.tl-auth .auth-theme:hover{background:var(--hover-overlay);color:var(--text-primary)}.tl-auth .auth-body{flex-direction:column;flex:1;justify-content:center;padding:12px 26px 40px;display:flex}.tl-auth .auth-card{width:100%;max-width:380px;margin:0 auto}.tl-auth .auth-h{font-family:var(--font-display);letter-spacing:-.02em;color:var(--display-color);margin:0 0 8px;font-size:32px;font-weight:700;line-height:1.08}.tl-auth .auth-sub{color:var(--text-secondary);margin:0 0 26px;font-size:14.5px;line-height:1.5}.tl-auth .auth-alert{border-radius:var(--radius-md);background:var(--status-danger-soft);border:1px solid var(--status-danger);color:var(--status-danger);flex-direction:column;gap:8px;margin:0 0 18px;padding:12px 14px;font-size:13.5px;line-height:1.45;display:flex}.tl-auth .auth-alert button{font:inherit;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:12.5px;font-weight:600;text-decoration:underline}.tl-auth .auth-alert button:disabled{opacity:.5;cursor:default}.tl-auth .auth-alert .ok{color:var(--status-success);font-size:12.5px}.tl-auth .field{flex-direction:column;gap:7px;margin-bottom:15px;display:flex}.tl-auth .field>label{color:var(--text-secondary);font-size:13px;font-weight:600}.tl-auth .field-row{justify-content:space-between;align-items:center;display:flex}.tl-auth .forgot{color:var(--accent);font-size:12.5px;font-weight:600;text-decoration:none}.tl-auth .forgot:hover{color:var(--accent-hover);text-decoration:underline}.tl-auth .input{border-radius:var(--radius-md);border:1px solid var(--border-visible);background:var(--surface-raised);height:46px;transition:border-color var(--duration-fast), box-shadow var(--duration-fast);align-items:center;gap:10px;padding:0 14px;display:flex}.tl-auth .input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.tl-auth .input>.lead-ic{color:var(--text-tertiary);flex:none;font-size:18px;display:inline-flex}.tl-auth .input input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:14.5px}.tl-auth .input input::placeholder{color:var(--text-muted)}.tl-auth .reveal{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;align-items:center;padding:4px;font-size:18px;display:flex}.tl-auth .reveal:hover{color:var(--text-secondary)}.tl-auth .remember{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;margin:4px 0 22px;display:flex}.tl-auth .remember .check{border:1.5px solid var(--text-tertiary);background:var(--surface-raised);color:#fff;width:20px;height:20px;transition:background var(--duration-fast), border-color var(--duration-fast);border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:13px;display:flex}.tl-auth .remember .check .ic{opacity:0;transition:opacity var(--duration-fast);display:inline-flex}.tl-auth .remember.on .check{background:var(--accent);border-color:var(--accent)}.tl-auth .remember.on .check .ic{opacity:1}.tl-auth .remember span{color:var(--text-secondary);font-size:13.5px}.tl-auth .auth-submit{cursor:pointer;border-radius:var(--radius-md);background:var(--accent);color:#fff;width:100%;height:46px;font-family:var(--font-display);letter-spacing:-.01em;transition:background var(--duration-normal) var(--ease-spring), transform .1s;border:none;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:600;display:inline-flex}.tl-auth .auth-submit:hover{background:var(--accent-hover)}.tl-auth .auth-submit:active{transform:scale(.985)}.tl-auth .auth-submit:disabled{opacity:.65;cursor:default}.tl-auth .auth-or{color:var(--text-tertiary);align-items:center;gap:16px;margin:22px 0 16px;font-size:13px;font-weight:600;display:flex}.tl-auth .auth-or:before,.tl-auth .auth-or:after{content:"";background:var(--border-subtle);flex:1;height:1px}.tl-auth .auth-soc-row{grid-auto-columns:1fr;grid-auto-flow:column;gap:12px;display:grid}.tl-auth .auth-soc{border-radius:var(--radius-md);border:1.5px solid var(--card-hairline-strong);background:var(--surface-raised);height:46px;color:var(--text-primary);font-family:var(--font-display);cursor:pointer;justify-content:center;align-items:center;gap:10px;font-size:15px;font-weight:600;transition:border-color .16s,box-shadow .16s,transform .1s;display:inline-flex}.tl-auth .auth-soc:hover{border-color:var(--text-primary);box-shadow:var(--shadow-sm)}.tl-auth .auth-soc:active{transform:scale(.985)}.tl-auth .auth-soc:disabled{opacity:.6;cursor:default}.tl-auth .auth-foot{color:var(--text-tertiary);text-align:center;margin:26px 0 0;font-size:13.5px}.tl-auth .auth-foot a{color:var(--accent);font-weight:600;text-decoration:none}.tl-auth .auth-foot a:hover{text-decoration:underline}.tl-auth .auth-aside{border-radius:var(--radius-lg);background:var(--accent-deep);position:relative;overflow:hidden}.tl-auth .auth-aside img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.tl-auth .auth-aside .scrim{background:linear-gradient(#1124361a 0%,#1124364d 45%,#112436d1 100%);position:absolute;inset:0}.tl-auth .aside-content{padding:44px 48px;position:absolute;bottom:0;left:0;right:0}.tl-auth .aside-h{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;text-wrap:balance;max-width:15ch;margin:0 0 14px;font-size:33px;font-weight:700;line-height:1.1}.tl-auth .aside-sub{color:#ffffffd1;max-width:34ch;margin:0;font-size:15px;line-height:1.5}.tl-auth .aside-ratings{border-top:1px solid #ffffff2e;gap:36px;margin-top:30px;padding-top:26px;display:flex}.tl-auth .aside-rating{align-items:center;gap:12px;display:flex}.tl-auth .aside-rating .store{flex:none;font-size:30px;display:inline-flex}.tl-auth .aside-rating .r-top{align-items:center;gap:8px;display:flex}.tl-auth .aside-rating .r-score{font-family:var(--font-display);color:#fff;letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:19px;font-weight:800}.tl-auth .aside-rating .r-stars{color:#ffc15a;font-size:14px;display:inline-flex}.tl-auth .aside-rating .r-lbl{color:#ffffffb3;margin-top:3px;font-size:12px}@media (prefers-reduced-motion:no-preference){.tl-auth .auth-card{animation:tlAuthRise .55s var(--ease-spring)}@keyframes tlAuthRise{0%{transform:translateY(12px)}to{transform:none}}}