.login-page-root{--ts-blue:#0967ed;--ts-navy:#071b4c;--ts-muted:#536688;min-height:100vh;overflow-x:hidden;background:#fff;color:var(--ts-navy)}.login-loading{display:grid;place-items:center;color:#62738e;font-size:14px}.login-loading,.login-page{min-height:100vh;background:#fff}.login-page{position:relative;display:grid;grid-template-columns:minmax(560px,1fr) minmax(600px,1.08fr)}.login-intro{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:42px clamp(38px,4.6vw,72px) 32px;background:radial-gradient(circle at -4% 106%,#edf5ff 0 22%,transparent 22.2%),#fff}.login-intro-logo{z-index:1;display:block;width:min(430px,88%);height:auto;object-fit:contain;object-position:left center}.login-intro-copy{z-index:1;width:100%;max-width:690px;margin-top:28px}.login-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 16px;border-radius:999px;background:#eef5ff;color:#075fdc;font-size:13px;font-weight:750;letter-spacing:.01em;white-space:nowrap}.login-intro h1{margin:20px 0 16px;color:var(--ts-navy);font-size:clamp(54px,4.5vw,76px);font-weight:780;line-height:.96;letter-spacing:-3.2px}.login-intro h1 strong{color:var(--ts-blue);font-weight:780}.login-intro-lead{max-width:610px;margin:0;color:var(--ts-muted);font-size:16px;line-height:1.55}.login-features{display:grid;grid-template-columns:repeat(4,minmax(118px,1fr));gap:15px;margin-top:22px}.login-feature{min-height:155px;padding:14px 8px 12px;border:1px solid #e3ebf5;border-radius:16px;background:#fff;box-shadow:0 9px 24px rgba(31,72,126,.09);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.login-feature img{width:76px;height:76px;margin-bottom:8px;object-fit:contain}.login-feature b{max-width:130px;color:#071b4c;font-size:12.5px;font-weight:700;line-height:1.28}.login-copyright{z-index:1;margin:auto 0 0;padding-top:24px;color:#536688;font-size:12px}.login-signin-side{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;padding:40px clamp(40px,5vw,80px);background:radial-gradient(circle at 110% 62%,#eef5ff 0 25%,transparent 25.2%),linear-gradient(135deg,#fff,#fff 72%,#f7faff)}.login-card{position:relative;z-index:1;width:min(100%,620px);padding:42px 42px 38px;border:1px solid #e2eaf4;border-radius:24px;background:rgba(255,255,255,.98);box-shadow:0 18px 48px rgba(25,59,105,.11)}.login-card-logo{display:block;width:min(320px,72%);height:auto;margin:0 auto 32px;object-fit:contain}.login-card h2{margin:0;color:var(--ts-navy);text-align:center;font-size:39px;font-weight:780;line-height:1;letter-spacing:-1.4px}.login-card-subtitle{margin:14px 0 34px;color:#5c6e90;text-align:center;font-size:15px}.login-alerts{display:grid;gap:10px;margin-bottom:16px}.login-alerts:empty{display:none}.login-notice{display:flex;gap:10px;padding:11px 13px;border-radius:9px;font-size:13px}.login-notice svg{width:18px;height:18px;flex:none}.login-notice p{margin:3px 0 0;line-height:1.4}.login-notice-warn{border:1px solid #f3d9a8;background:#fff8ec;color:#7a5308}.login-notice-success{border:1px solid #a7e3c3;background:#f0fff7;color:#176b42}.login-notice-error{border:1px solid #f5c2c7;background:#fff5f5;color:#9b1c1c}.login-field-label{display:block;margin:0 0 8px;color:var(--ts-navy);font-size:14px;font-weight:750}.login-field{position:relative;margin-bottom:24px}.login-field input{box-sizing:border-box;width:100%;height:64px;padding:0 55px;border:1.5px solid #d6dfec;border-radius:9px;outline:none;background:#fff;color:#172a50;font:inherit;font-size:15px;transition:border-color .18s ease,box-shadow .18s ease}.login-field input:focus{border-color:var(--ts-blue);box-shadow:0 0 0 3px rgba(9,103,237,.1)}.login-field-icon{position:absolute;z-index:2;left:20px;top:50%;width:18px;height:16px;transform:translateY(-50%);pointer-events:none}.login-field-icon.mail{border:2px solid #72809b;border-radius:3px}.login-field-icon.mail:after{content:"";position:absolute;left:2px;top:1px;width:10px;height:7px;border-left:2px solid #72809b;border-bottom:2px solid #72809b;transform:rotate(-45deg)}.login-field-icon.lock{top:56%;height:15px;border:2px solid #72809b;border-radius:3px}.login-field-icon.lock:before{content:"";position:absolute;left:3px;top:-10px;width:9px;height:9px;border:2px solid #72809b;border-bottom:0;border-radius:8px 8px 0 0}.login-toggle-password{position:absolute;right:9px;top:50%;width:46px;height:46px;transform:translateY(-50%);border:0;border-radius:8px;background:transparent;color:#73819c;cursor:pointer;display:grid;place-items:center}.login-toggle-password svg{width:21px;height:21px}.login-forgot{margin:-8px 0 25px;text-align:right}.login-forgot a,.login-signup a{color:#0563eb;font-weight:550;text-decoration:none}.login-forgot a:hover,.login-signup a:hover{text-decoration:underline}.login-submit{position:relative;width:100%;height:62px;border:0;border-radius:8px;background:linear-gradient(90deg,#096cf2,#0757dc);box-shadow:0 8px 18px rgba(7,87,220,.18);color:#fff;cursor:pointer;font:inherit;font-size:18px;font-weight:650;display:flex;align-items:center;justify-content:center}.login-submit span:last-child{position:absolute;right:24px;font-size:25px;font-weight:400}.login-submit:disabled{opacity:.62;cursor:not-allowed}.login-divider{display:flex;align-items:center;gap:14px;margin:25px 0;color:#5f6e89;font-size:14px;font-weight:600}.login-divider:after,.login-divider:before{content:"";height:1px;background:#dce4ef;flex:1}.login-google{overflow:hidden;border:1px solid #dbe3ee;border-radius:8px;background:#fff}.login-signup{margin:27px 0 0;color:#61708d;text-align:center;font-size:15px}@media (max-width:1180px){.login-page{grid-template-columns:1fr 1fr}.login-intro{padding:36px 30px 28px}.login-features{grid-template-columns:repeat(2,minmax(130px,1fr))}.login-signin-side{padding:36px 28px}.login-card{padding:38px 30px}}@media (max-width:900px){.login-page{display:block}.login-intro{display:none}.login-signin-side{min-height:100vh;padding:24px}.login-card{max-width:580px}}@media (max-width:560px){.login-signin-side{padding:12px}.login-card{padding:28px 18px;border-radius:18px}.login-card-logo{width:290px;max-width:82%;margin-bottom:25px}.login-card h2{font-size:32px}.login-card-subtitle{margin-bottom:26px}.login-field input,.login-submit{height:57px}}