/* ISP Partners — auth pages (login / signup): teal split-screen */
:root{
  --teal:#20b499;--teal-d:#1a9d86;--ink:#2b3648;--txt:#5b6472;--dim:#9aa1ac;
  --line:#e2e5ea;--navy:#1b2431;
  --sans:'Inter',system-ui,-apple-system,sans-serif;--serif:'Playfair Display',Georgia,serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body.auth{font-family:var(--sans);min-height:100vh;color:var(--ink);
  background:radial-gradient(1100px 700px at 0% 0%, #1fae95 0%, #14766a 30%, #172230 62%, #131a25 100%);
  display:flex;align-items:center;justify-content:center;padding:40px 16px;position:relative}
.auth-flag{position:fixed;top:22px;right:30px;font-size:24px;line-height:1;z-index:5}
.auth-card{display:grid;grid-template-columns:1fr 1fr;width:min(1080px,100%);background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 40px 90px -40px rgba(0,0,0,.5);min-height:520px}
.auth-card.narrow{grid-template-columns:1fr 1.05fr}
.auth-visual{position:relative;overflow:hidden;background:#20323f}
.auth-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.auth-visual .tint{position:absolute;inset:0;background:linear-gradient(140deg,rgba(31,174,149,.72),rgba(37,74,110,.72))}
.auth-visual .logo{position:relative;z-index:2;padding:44px;display:flex;align-items:center;gap:10px}
.auth-visual .logo img{position:static;height:34px;width:auto;filter:brightness(0) invert(1)}
.auth-form{padding:48px 52px;display:flex;flex-direction:column;justify-content:center}
.auth-form.scroll{justify-content:flex-start;padding:44px 52px}
.af-field{margin-bottom:18px}
.af-row{display:flex;justify-content:space-between;align-items:baseline}
.af-field label{display:block;font:700 14px var(--sans);color:var(--ink);margin-bottom:9px}
.af-field .fp{font:500 13px var(--sans);color:var(--dim)}
.af-field .fp:hover{color:var(--teal)}
.af-input{width:100%;background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px 16px;color:var(--ink);font:500 15px var(--sans);outline:none;transition:.15s}
.af-input::placeholder{color:#aeb4bd}
.af-input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(32,180,153,.15)}
.af-pass{position:relative}
.af-pass .eye{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#aeb4bd;cursor:pointer;background:none;border:none;padding:4px}
.af-pass .eye svg{width:19px;height:19px;display:block}
select.af-input{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%239aa1ac' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.af-btn{width:100%;background:var(--teal);color:#fff;border:none;border-radius:6px;padding:15px;font:600 15px var(--sans);cursor:pointer;transition:.15s;margin-top:6px}
.af-btn:hover{background:var(--teal-d)}
.af-consent{display:flex;gap:11px;align-items:flex-start;font:500 13.5px var(--sans);color:var(--ink);margin:6px 0 18px}
.af-consent input{width:18px;height:18px;flex:none;margin-top:1px;accent-color:var(--teal)}
.af-consent a{color:var(--teal);font-weight:600}
.af-alt{text-align:center;margin-top:22px;font:600 14px var(--sans);color:#3a5fb0}
.af-alt a{color:#3a5fb0;text-decoration:none}
.af-alt.u a{text-decoration:underline}
.af-err{background:rgba(200,60,45,.08);border:1px solid rgba(200,60,45,.3);color:#a2372a;border-radius:6px;padding:12px 15px;font-size:14px;margin-bottom:18px}
.af-ok{background:rgba(32,180,153,.1);border:1px solid rgba(32,180,153,.35);color:#127a67;border-radius:6px;padding:12px 15px;font-size:14px;margin-bottom:18px}
.af-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:860px){
  .auth-card,.auth-card.narrow{grid-template-columns:1fr}
  .auth-visual{min-height:150px}
  .auth-visual .logo{padding:26px}
  .auth-form{padding:34px 26px}
}

/* language switcher (auth pages) */
.auth .langsw{position:fixed;top:18px;right:26px;z-index:20}
.langsw-btn{background:none;border:none;cursor:pointer;font-size:26px;line-height:1;padding:4px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}
.langsw-menu{display:none;position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 40px -14px rgba(0,0,0,.4);padding:6px;min-width:140px}
.langsw.open .langsw-menu{display:block}
.langsw-menu a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:6px;font:600 14px var(--sans);color:var(--ink)}
.langsw-menu a span{font-size:20px}
.langsw-menu a:hover{background:#f4f6f7}
.langsw-menu a.on{background:rgba(32,180,153,.12);color:var(--teal-d)}
