.ts-auth{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:18px;opacity:0;pointer-events:none;transition:opacity .2s ease}.ts-auth.is-open{opacity:1;pointer-events:auto}.ts-auth__backdrop{position:absolute;inset:0;border:0;background:rgba(2,8,23,.72);backdrop-filter:blur(12px)}.ts-auth__card{position:relative;width:min(100%,470px);max-height:calc(100vh - 28px);overflow:auto;border:1px solid rgba(148,163,184,.22);border-radius:30px;padding:28px;background:linear-gradient(160deg,#fff,#f8fbff);box-shadow:0 32px 90px rgba(2,8,23,.35);color:#0f172a;transform:translateY(18px) scale(.98);transition:transform .25s ease}.ts-auth.is-open .ts-auth__card{transform:none}.theme-dark .ts-auth__card{background:linear-gradient(160deg,#111827,#07111f);color:#f8fafc}.ts-auth__close{position:absolute;right:18px;top:16px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(148,163,184,.14);font-size:26px;color:inherit;cursor:pointer}.ts-auth__brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.ts-auth__brand img{width:47px;height:47px;object-fit:contain}.ts-auth__brand strong,.ts-auth__brand small{display:block}.ts-auth__brand strong{font-size:18px}.ts-auth__brand small{font-size:11px;color:#64748b}.ts-auth__view{display:none}.ts-auth__view.is-active{display:block;animation:tsAuthIn .22s ease}.ts-auth__eyebrow{margin:0 0 8px;color:#0891b2;font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.2em}.ts-auth h2{margin:0;font-size:clamp(25px,6vw,35px);line-height:1.05;letter-spacing:-.04em}.ts-auth__lead{margin:12px 0 22px;color:#64748b;line-height:1.6}.ts-auth__google,.ts-auth__email,.ts-auth__submit{width:100%;min-height:52px;border-radius:16px;font-weight:850;font-size:15px;display:flex;align-items:center;justify-content:center;gap:11px;text-decoration:none;cursor:pointer}.ts-auth__google{border:1px solid #dbe4ef;background:#fff;color:#0f172a}.ts-auth__google svg{width:22px}.theme-dark .ts-auth__google{background:#fff;color:#0f172a}.ts-auth__email,.ts-auth__submit{border:0;background:linear-gradient(135deg,#06b6d4,#0e7490);color:#fff;box-shadow:0 12px 30px rgba(6,182,212,.22)}.ts-auth__divider{display:flex;align-items:center;gap:12px;margin:17px 0;color:#94a3b8;font-size:12px}.ts-auth__divider:before,.ts-auth__divider:after{content:"";height:1px;background:rgba(148,163,184,.28);flex:1}.ts-auth__switch,.ts-auth__legal{text-align:center}.ts-auth__switch{margin:18px 0 0;color:#64748b;font-size:14px}.ts-auth__switch button,.ts-auth__back{border:0;background:transparent;color:#0891b2;font-weight:850;cursor:pointer}.ts-auth__legal{margin:14px 18px 0;color:#94a3b8;font-size:11px;line-height:1.5}.ts-auth__back{padding:0;margin:0 0 18px}.ts-auth label{display:block;margin-top:15px;font-size:13px;font-weight:800}.ts-auth label em{font-weight:500;color:#94a3b8}.ts-auth input[type=text],.ts-auth input[type=email],.ts-auth input[type=tel],.ts-auth input[type=password]{width:100%;box-sizing:border-box;margin-top:7px;border:1px solid rgba(148,163,184,.35);border-radius:14px;padding:14px 15px;background:rgba(255,255,255,.7);color:inherit;outline:none}.theme-dark .ts-auth input{background:rgba(15,23,42,.75)}.ts-auth input:focus{border-color:#06b6d4;box-shadow:0 0 0 4px rgba(6,182,212,.12)}.ts-auth label small{display:block;min-height:14px;margin-top:4px;color:#dc2626;font-weight:600}.ts-auth__password{position:relative}.ts-auth__password input{padding-right:68px!important}.ts-auth__password button{position:absolute;right:8px;top:14px;border:0;background:transparent;color:#0891b2;font-weight:800;cursor:pointer}.ts-auth__remember{display:flex!important;align-items:center;gap:8px;font-weight:600!important}.ts-auth__remember input{margin:0}.ts-auth__submit{margin-top:8px}.ts-auth__submit[disabled]{opacity:.6;cursor:wait}.ts-auth__notice{margin:14px 0;border-radius:13px;padding:11px 13px;background:#fee2e2;color:#991b1b;font-size:13px}.ts-auth__notice.is-success{background:#dcfce7;color:#166534}@keyframes tsAuthIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:520px){.ts-auth{align-items:end;padding:0}.ts-auth__card{width:100%;max-height:92vh;border-radius:28px 28px 0 0;padding:24px 20px 28px}}
