/* Login-only skin: leaves the existing portal, admin and invitation CSS intact. */
.vida-login-body{min-height:100vh;padding:0;background:#071632;color:#edf8ff;font-family:Tahoma,"Segoe UI",sans-serif}
.vida-login-shell{min-height:100vh;width:min(1320px,100%);margin:auto;display:grid;grid-template-columns:minmax(370px,.9fr) minmax(440px,1.1fr);direction:ltr;background:#091a37;overflow:hidden}
.vida-stage,.vida-login-panel{direction:rtl}.vida-stage{position:relative;isolation:isolate;overflow:hidden;min-height:480px;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(36px,6vw,76px);background:radial-gradient(circle at 50% 72%,rgba(27,227,224,.18),transparent 23%),radial-gradient(circle at 12% 18%,rgba(83,123,255,.26),transparent 34%),linear-gradient(155deg,#102b64,#071734 68%)}
.vida-stage::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.4;background-image:radial-gradient(circle at 20% 28%,#d8feff 0 1px,transparent 1.6px),radial-gradient(circle at 76% 22%,#b5d4ff 0 1px,transparent 1.6px),radial-gradient(circle at 86% 75%,#ddffff 0 1px,transparent 1.6px);background-size:88px 94px,126px 113px,104px 139px}
.stage-glow{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}.stage-glow-one{width:420px;height:420px;top:-210px;left:-130px;background:rgba(84,133,255,.22)}.stage-glow-two{width:330px;height:330px;bottom:-200px;right:-80px;border:1px solid rgba(105,245,239,.28);box-shadow:0 0 110px rgba(25,224,216,.18)}
.vida-copy{max-width:330px}.vida-kicker{margin:0 0 13px;color:#8ef0eb;font-size:13px;font-weight:700}.vida-copy h1{margin:0;color:#fff;font-size:clamp(34px,4.1vw,58px);line-height:1.25;letter-spacing:-.03em}.vida-copy p:last-child{margin:17px 0 0;color:#c5d8f5;line-height:2;font-size:15px}
.vida-character{width:min(300px,74%);margin:12px auto 0;filter:drop-shadow(0 22px 26px rgba(0,0,0,.2));transform-origin:center bottom}.vida-character svg{display:block;width:100%;height:auto}.vida-waterline{height:50px;margin:0 -8% -8%;border-radius:50% 50% 0 0;background:linear-gradient(180deg,rgba(86,246,239,.28),rgba(7,55,106,.03));filter:blur(.1px)}
.vida-login-panel{display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,7vw,96px);background:radial-gradient(circle at 100% 0,rgba(45,91,185,.17),transparent 28%),linear-gradient(145deg,#0d2147,#07152e)}.text-brand{display:flex;flex-direction:column;width:max-content;color:#f6fbff;text-decoration:none;margin-bottom:clamp(42px,8vh,88px)}.text-brand strong{font-size:24px;letter-spacing:-.04em}.text-brand span{margin-top:2px;color:#95b5dc;font-size:12px}
.vida-login-panel .login-heading .eyebrow{margin:0 0 9px;color:#7de8e1;font-size:12px}.vida-login-panel .login-heading h2{margin:0;color:#fff;font-size:clamp(31px,3.2vw,42px);line-height:1.3}.vida-login-panel .login-heading p:last-child{margin:10px 0 0;color:#b0c6e4;font-size:15px}.vida-login-panel form{display:grid;gap:18px;margin-top:32px}.vida-login-panel label{display:grid;gap:8px;color:#e6f0ff;font-size:14px;font-weight:700}.vida-login-panel input{width:100%;padding:14px 15px;border:1px solid #36527e;border-radius:14px;background:#081831;color:#f8fcff;font:inherit;direction:ltr;outline:none;transition:border-color .2s,box-shadow .2s}.vida-login-panel input:focus{border-color:#79e9df;box-shadow:0 0 0 4px rgba(76,228,220,.13)}.password-control{position:relative}.password-control input{padding-inline-end:52px}.password-toggle{position:absolute;inset-inline-end:8px;top:50%;width:36px;height:36px;transform:translateY(-50%);border:0;border-radius:10px;background:transparent;color:#a9bfdf;cursor:pointer}.password-toggle:hover,.password-toggle:focus-visible{background:rgba(134,230,225,.12);outline:none}.eye-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.eye-closed{display:none}.password-toggle.is-visible .eye-open{display:none}.password-toggle.is-visible .eye-closed{display:block}
.login-submit{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:5px;padding:15px 20px;border:1px solid rgba(220,255,255,.5);border-radius:14px;background:linear-gradient(135deg,#1abdb8,#2087c8);color:white;font:inherit;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(13,162,183,.22);transition:transform .18s,box-shadow .18s}.login-submit:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(13,162,183,.3)}.login-submit:disabled{cursor:wait;transform:none;opacity:.72}.vida-login-panel .alert{margin-top:25px;padding:11px 14px;border:1px solid rgba(255,167,167,.38);border-radius:12px;background:rgba(156,30,54,.25);color:#ffd8dd}.login-help{margin:25px 0 0;color:#afc4df;font-size:13px}.login-security{margin:12px 0 0;color:#718cab;font-size:12px}
@media (max-width:780px){.vida-login-shell{grid-template-columns:1fr;min-height:100dvh}.vida-stage{min-height:290px;padding:28px 28px 0}.vida-copy{max-width:230px}.vida-copy h1{font-size:34px}.vida-copy p:last-child{font-size:13px;line-height:1.8}.vida-character{position:absolute;width:170px;bottom:5px;left:24px;margin:0}.vida-waterline{height:30px}.vida-login-panel{padding:34px 27px 42px}.text-brand{margin-bottom:37px}.vida-login-panel form{margin-top:25px}.login-help{font-size:12px}}
@media (prefers-reduced-motion:reduce){.vida-character{transform:none!important}.login-submit{transition:none}}

/* Approved full-page RTL refinement. */
html,body.vida-login-body{width:100%;height:100%;overflow:hidden;font-family:"Vazirmatn",Tahoma,"Segoe UI",sans-serif}
.vida-login-shell{width:100vw;min-height:0;height:100dvh;grid-template-columns:minmax(0,42%) minmax(0,58%);max-width:none}
.vida-stage,.vida-login-panel{min-height:0}.vida-stage{padding:clamp(28px,4vw,62px);justify-content:center}.vida-login-panel{padding:clamp(32px,5vw,78px)}
.vida-copy{max-width:440px;margin:0 auto 10px;text-align:center}.vida-copy h1{font-size:clamp(32px,3.35vw,52px);line-height:1.45}.vida-character{width:min(270px,65%);margin:0 auto}
.vida-login-panel input{direction:rtl;text-align:right}
@media (max-width:780px){html,body.vida-login-body{overflow:auto}.vida-login-shell{width:100%;height:auto;min-height:100dvh;grid-template-columns:1fr}.vida-stage{min-height:38dvh;padding:24px 26px}.vida-copy{margin:0;max-width:250px;text-align:right}.vida-copy h1{font-size:28px}.vida-character{width:150px;bottom:15px}.vida-login-panel{min-height:62dvh;padding:30px 26px}.text-brand{margin-bottom:28px}}

/* MOBILE_LOGIN_RESPONSIVE_PATCH_V1 */
@media (max-width: 780px) {
  html { width: 100%; overflow-x: hidden; }

  body.vida-login-body {
    display: block;
    width: 100%;
    min-height: 100svh;
    height: auto;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .vida-login-shell {
    display: block;
    width: 100%;
    min-height: 100svh;
    height: auto;
    overflow: visible;
  }

  .vida-stage {
    box-sizing: border-box;
    min-height: clamp(280px, 42svh, 360px);
    padding:
      max(28px, env(safe-area-inset-top))
      max(24px, env(safe-area-inset-right))
      24px
      max(24px, env(safe-area-inset-left));
  }

  .vida-copy {
    width: 100%;
    max-width: 300px;
    margin: 0;
    text-align: right;
  }

  .vida-copy h1 {
    font-size: clamp(26px, 7.3vw, 30px);
    line-height: 1.45;
  }

  .vida-character {
    left: max(24px, env(safe-area-inset-left));
    bottom: 16px;
    width: clamp(118px, 36vw, 150px);
  }

  .vida-login-panel {
    box-sizing: border-box;
    min-height: 0;
    padding:
      32px
      max(20px, env(safe-area-inset-right))
      calc(32px + env(safe-area-inset-bottom))
      max(20px, env(safe-area-inset-left));
  }

  .text-brand { margin-bottom: 24px; }
  .vida-login-panel form { gap: 16px; margin-top: 22px; }
  .vida-login-panel input { min-height: 50px; }
  .login-submit { min-height: 52px; }
}

/* MOBILE_LOGIN_VIDA_POSITION_PATCH_V2 */
@media (max-width: 780px) {
  .vida-character {
    width: clamp(160px, 45vw, 190px);
    left: max(12px, env(safe-area-inset-left));
    bottom: -42px;
    margin: 0;
  }
}

/* MOBILE_LOGIN_TITLE_POSITION_PATCH_V3 */
@media (max-width: 1024px) {
  .vida-copy {
    transform: translateY(clamp(-28px, -3vw, -18px));
  }
}

/* MOBILE_LOGIN_TITLE_AND_VIDA_POSITION_PATCH_V4 */
@media (max-width: 1024px) {
  .vida-copy,
  .vida-character {
    translate: 0 -20px;
  }
}



/* AUTH_DESKTOP_STYLE_LANDSCAPE_V3 */
@media (orientation: landscape) and (max-width: 1100px) {
  .vida-login-shell {
    width: 100vw;
    min-height: 100dvh;
    height: 100dvh;
    grid-template-columns: minmax(0, 42%) minmax(0, 58%);
    overflow: hidden;
  }

  .vida-stage {
    min-height: 100dvh;
    padding: clamp(20px, 4vw, 44px);
  }

  .vida-login-panel {
    min-height: 100dvh;
    max-height: 100dvh;
    overflow-y: auto;
    padding: clamp(20px, 4vw, 44px);
  }

  .vida-copy {
    max-width: 440px;
    margin: 0 auto 10px;
    text-align: center;
    transform: none;
    translate: none;
  }

  .vida-copy h1 {
    font-size: clamp(26px, 4.2vw, 46px);
  }

  .vida-character {
    position: relative;
    inset: auto;
    width: min(220px, 56%);
    margin: 0 auto;
    transform: none;
    translate: none;
  }

  .text-brand {
    margin-bottom: clamp(16px, 4vh, 34px);
  }
}

/* AUTH_LANDSCAPE_RTL_COLUMN_ORDER_V4 */
@media (orientation: landscape) and (max-width: 1100px) {
  .vida-stage {
    grid-column: 2;
    grid-row: 1;
  }

  .vida-login-panel {
    grid-column: 1;
    grid-row: 1;
  }
}

/* AUTH_LANDSCAPE_FORM_WIDTH_V5 */
@media (orientation: landscape) and (max-width: 1100px) {
  .vida-login-shell {
    grid-template-columns: minmax(0, 58%) minmax(0, 42%);
  }

  .vida-login-panel {
    min-width: 0;
  }

  .vida-login-panel form {
    width: 100%;
  }

  .login-submit {
    width: 100%;
    min-height: 52px;
    padding-inline: 14px;
    flex-shrink: 0;
  }
}
