:root{--tdp-primary:#24205b;--tdp-brand-primary:#24205b;--tdp-accent:#009fe3;--tdp-surface:#eef0f3;--tdp-text:#172133;--tdp-muted:#667085;--tdp-border:#d8dde5;--tdp-white:#fff;--tdp-danger:#b42318;--tdp-success:#157347;--tdp-shadow:0 10px 24px rgba(15,23,42,.12)}
*{box-sizing:border-box}
html{min-height:100%;background:#eef0f3}
body.tdp-crm-login-page{min-height:100vh;margin:0;color:var(--tdp-text);background:#eef0f3;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--tdp-primary);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--tdp-primary);text-decoration-thickness:2px}
.tdp-login-shell{display:grid;place-items:center;min-height:100vh;padding:clamp(22px,5vw,58px);background:#eef0f3}
.tdp-login-panel{display:flex;width:100%;align-items:center;justify-content:center}
.tdp-login-card{position:relative;isolation:isolate;overflow:hidden;width:min(100%,560px);border:1px solid var(--tdp-border);border-radius:6px;background:#fff;box-shadow:var(--tdp-shadow)}
.tdp-login-card::after{position:relative;z-index:2;content:"";display:block;height:14px;border-top:3px solid var(--tdp-accent);background:var(--tdp-brand-primary)}
.tdp-login-watermark{position:absolute;z-index:0;top:45%;left:50%;width:62%;max-height:330px;transform:translate(-50%,-50%);object-fit:contain;opacity:.045;pointer-events:none;user-select:none}
.tdp-login-card-header{position:relative;z-index:1;display:flex;align-items:flex-start;padding:29px 36px 22px;border-bottom:1px solid #dbdee6}
.tdp-login-logo{display:block;max-width:210px;max-height:56px;object-fit:contain;object-position:left center}
.tdp-login-wordmark{max-width:300px;color:var(--tdp-primary);font-size:19px;font-weight:700;line-height:1.25}
.tdp-login-card-body{position:relative;z-index:1;padding:29px 40px 38px}
.tdp-login-card h1{margin:0;color:var(--tdp-primary);font-size:29px;font-weight:700;letter-spacing:0;line-height:1.25;text-align:center}
.tdp-login-intro{margin:10px 0 0;color:var(--tdp-muted);font-size:15px;line-height:1.6;text-align:center}
.tdp-login-section-heading{display:flex;align-items:center;gap:10px;margin:28px 0 23px;color:var(--tdp-primary);font-size:13px;font-weight:700;line-height:1.3}
.tdp-login-section-heading::before{content:"";flex:0 0 4px;width:4px;height:20px;background:var(--tdp-primary)}
.tdp-login-section-heading::after{content:"";flex:1;border-top:1px solid #dbdee6}
.tdp-alert{margin:0 0 22px;padding:12px 14px;border-radius:4px;font-size:14px;line-height:1.5}
.tdp-alert-error{border:1px solid #f3c7c3;color:var(--tdp-danger);background:#fff4f2}
.tdp-alert-success{border:1px solid #b8dfcb;color:var(--tdp-success);background:#f0fbf5}
.tdp-login-form{display:grid;gap:20px}
.tdp-field{display:grid;gap:8px}
.tdp-field label,.tdp-label-row label{color:#252b3b;font-size:14px;font-weight:700}
.tdp-label-row{display:flex;align-items:center;justify-content:space-between;gap:20px}
.tdp-label-row a{font-size:13px;font-weight:650}
.tdp-field input[type="text"],.tdp-field input[type="password"]{width:100%;height:49px;padding:0 14px;border:1px solid #c7ced9;border-radius:5px;outline:0;background:#fff;color:var(--tdp-text);font:inherit;transition:border-color .18s,box-shadow .18s}
.tdp-field input:hover{border-color:#9fa9b7}.tdp-field input:focus{border-color:#005fcc;box-shadow:0 0 0 3px rgba(0,95,204,.18)}
.tdp-password-wrap{position:relative}.tdp-password-wrap input{padding-right:52px!important}
.tdp-password-toggle{position:absolute;top:50%;right:6px;width:38px;height:36px;padding:0;transform:translateY(-50%);border:0;border-radius:4px;background:transparent;cursor:pointer}
.tdp-password-toggle:hover{background:#f0f2f5}.tdp-password-toggle:focus-visible{outline:3px solid #005fcc;outline-offset:2px;background:#fff}
.tdp-password-toggle span{position:relative;display:block;width:20px;height:13px;margin:auto;border:2px solid #697286;border-radius:50%/60%}
.tdp-password-toggle span::after{content:"";position:absolute;left:50%;top:50%;width:5px;height:5px;transform:translate(-50%,-50%);border-radius:50%;background:#697286}
.tdp-password-toggle.is-visible span::before{content:"";position:absolute;z-index:2;left:-3px;top:4px;width:23px;height:2px;transform:rotate(-38deg);background:#697286}
.tdp-remember{display:flex;align-items:flex-start;gap:10px;color:#4c5568;font-size:14px;line-height:1.45;cursor:pointer}.tdp-remember input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--tdp-primary)}
.tdp-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 20px;border:0;border-radius:4px;text-align:center;text-decoration:none;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s}
.tdp-button-primary{color:#fff;background:var(--tdp-primary)}
.tdp-button-primary:hover{color:#fff;background:var(--tdp-primary);filter:brightness(.82)}
.tdp-button-primary:focus-visible{color:#fff;background:var(--tdp-primary);outline:3px solid #005fcc;outline-offset:3px}
.tdp-login-card-body>.tdp-button{width:100%}
.tdp-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (max-width:600px){.tdp-login-shell{padding:12px}.tdp-login-card{border-radius:4px}.tdp-login-card-header{padding:23px 24px 18px}.tdp-login-card-body{padding:25px 24px 32px}.tdp-login-logo{max-width:184px;max-height:50px}.tdp-login-card h1{font-size:26px}.tdp-login-watermark{width:74%;opacity:.03}.tdp-label-row{align-items:flex-start}.tdp-button{width:100%}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
