@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700;800&display=swap');
:root{--navy:#031523;--navy2:#061d2c;--blue:#0b86b8;--gold:#f3c75e;--gold2:#dba83d;--white:#f8fafc;--muted:#a9b7c2;--line:rgba(214,229,238,.22)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Vazirmatn,Tahoma,sans-serif;background:var(--navy);color:var(--white)}body{overflow-x:hidden}.login-page{min-height:100vh;display:grid;grid-template-columns:1.02fr .98fr;background:radial-gradient(circle at 82% 12%,rgba(14,101,140,.22),transparent 30%),var(--navy)}
.back-home{position:fixed;z-index:10;top:22px;right:24px;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.5);border-radius:30px;padding:11px 18px;background:rgba(3,21,35,.55);backdrop-filter:blur(12px);transition:.25s}.back-home:hover{border-color:var(--gold);color:var(--gold)}.back-home span{margin-right:10px}
.login-showcase{position:relative;min-height:100vh;background:linear-gradient(90deg,rgba(0,8,14,.35),rgba(0,8,14,.75)),url('assets/watch-background-clean.jpg') center/cover no-repeat;display:flex;align-items:center}.showcase-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,5,9,.08),rgba(0,9,17,.83) 88%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 60%)}.showcase-content{position:relative;z-index:1;padding:70px 9vw 50px 9%;max-width:680px}.showcase-logo{width:205px;height:auto;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));margin-bottom:52px}.eyebrow{color:#f4f5f6;font-size:15px}.showcase-content h1{font-size:48px;line-height:1.35;margin:12px 0 18px;font-weight:700;letter-spacing:-1px}.showcase-content h1 b{color:var(--gold)}.showcase-content>p{color:#d5dde2;font-size:18px;line-height:2;max-width:500px}.trust-list{display:grid;gap:18px;margin-top:40px}.trust-list>div{display:flex;gap:15px;align-items:center}.trust-list i{width:45px;height:45px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-style:normal;font-weight:700;background:rgba(0,0,0,.25)}.trust-list span{display:grid;gap:2px}.trust-list strong{font-size:15px}.trust-list small{color:#aebbc4;font-size:12px}
.login-panel{display:flex;align-items:center;justify-content:center;padding:75px 5vw 35px;position:relative;background:radial-gradient(circle at 80% 15%,rgba(13,105,145,.18),transparent 35%)}.panel-inner{width:min(600px,100%);border:1px solid rgba(155,191,210,.45);border-radius:22px;padding:38px 38px 28px;background:linear-gradient(145deg,rgba(7,30,45,.92),rgba(2,17,28,.96));box-shadow:0 28px 80px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.05);position:relative}.brand-mark{position:absolute;top:28px;left:32px;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#031425;border:1px solid rgba(243,199,94,.4);box-shadow:0 0 30px rgba(243,199,94,.08)}.brand-mark img{width:47px;max-height:47px;object-fit:contain}.welcome{padding-left:90px;margin-bottom:25px}.welcome h2{font-size:28px;margin:0 0 9px}.welcome p{color:#b7c3cb;line-height:1.9;margin:0;font-size:14px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:15px;padding:4px;margin-bottom:26px}.auth-tabs button{border:0;background:transparent;color:#eaf0f3;padding:13px;border-radius:11px;font-family:inherit;font-weight:700;cursor:pointer}.auth-tabs button.active{color:var(--gold);border:1px solid var(--gold);box-shadow:0 0 20px rgba(243,199,94,.08)}.auth-tabs span{color:var(--gold);margin-right:7px}form>label{display:block;font-size:13px;font-weight:700;margin:0 0 8px}.field{display:flex;align-items:center;border:1px solid #426174;border-radius:13px;min-height:55px;margin-bottom:5px;background:rgba(3,24,38,.65);transition:.25s}.field:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(243,199,94,.08)}.field input{flex:1;border:0;outline:0;background:transparent;color:#fff;font-family:inherit;font-size:13px;padding:0 10px}.field input::placeholder{color:#7f919d}.field-icon{color:#e8edf0;padding:0 14px}.toggle-pass{background:transparent;border:0;color:#9fb0ba;cursor:pointer;padding:0 15px}.field-error{min-height:18px;color:#ff9d9d;font-size:11px;margin:0 3px 7px}.form-row{display:flex;justify-content:space-between;align-items:center;margin:12px 2px 20px;font-size:12px}.form-row a{color:var(--gold);text-decoration:none}.remember{display:flex;align-items:center;gap:6px;color:#c7d1d7}.remember input{accent-color:var(--gold)}.primary-btn{width:100%;border:0;border-radius:14px;background:linear-gradient(180deg,#f6cf70,#e7b94e);color:#16202a;font:800 14px Vazirmatn;padding:16px;cursor:pointer;box-shadow:0 12px 30px rgba(231,185,78,.17);transition:.25s}.primary-btn:hover{transform:translateY(-1px);box-shadow:0 15px 35px rgba(231,185,78,.27)}.primary-btn span{margin-right:9px}.divider{display:flex;align-items:center;gap:15px;color:#91a1aa;margin:23px 0}.divider:before,.divider:after{content:'';height:1px;background:var(--line);flex:1}.google-btn{width:100%;display:flex;justify-content:center;align-items:center;gap:12px;border:1px solid #426174;background:rgba(4,27,42,.65);color:#fff;border-radius:13px;padding:13px;font:700 13px Vazirmatn;cursor:pointer;transition:.25s}.google-btn:hover{border-color:var(--gold);background:rgba(243,199,94,.06)}.google-g{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#4285f4;font:800 16px Arial}.google-note{text-align:center;color:#6f818d;font-size:10px;line-height:1.7;margin:8px 0 18px}.signup-line{text-align:center;color:#9daeb8;font-size:12px}.signup-line button{background:transparent;border:0;color:var(--gold);font:700 12px Vazirmatn;cursor:pointer}.signup-line span{margin-right:6px}.security-note{text-align:center;color:#60727e;font-size:10px;margin:18px 0 0}
@media(max-width:950px){.login-page{grid-template-columns:1fr}.login-showcase{display:none}.login-panel{min-height:100vh;padding:85px 18px 25px}.back-home{top:14px;right:14px}.panel-inner{padding:30px 22px 24px}.brand-mark{left:22px;top:22px}.welcome{padding-left:75px}.welcome h2{font-size:24px}}
@media(max-width:560px){.panel-inner{border-radius:18px;padding:25px 16px 22px}.brand-mark{width:56px;height:56px;left:17px}.brand-mark img{width:38px}.welcome{padding-left:62px}.welcome h2{font-size:20px}.welcome p{font-size:12px}.auth-tabs button{font-size:12px}.form-row{font-size:11px}}

/* V46 layout + responsive polish */
html,body{width:100%;height:100%;overflow:hidden}
.login-page{height:100vh;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);direction:ltr;overflow:hidden}
.login-showcase{grid-column:1;grid-row:1;direction:rtl;min-height:100vh}
.login-panel{grid-column:2;grid-row:1;direction:rtl;min-height:100vh;height:100vh;overflow:hidden;padding:62px 4vw 24px}
.panel-inner{width:min(590px,100%);max-height:calc(100vh - 86px);overflow:hidden;padding:28px 34px 20px;border-radius:20px}
.showcase-content{padding:48px 9% 38px;max-width:640px}
.showcase-logo{width:108px;height:108px;object-fit:contain;margin:0 0 28px;filter:drop-shadow(0 10px 25px rgba(0,0,0,.55))}
.showcase-content h1{font-size:44px;line-height:1.28;margin:8px 0 14px}
.showcase-content>p{font-size:16px;line-height:1.8;margin:0;max-width:470px}
.trust-list{gap:12px;margin-top:25px}
.trust-list>div{gap:12px}.trust-list i{width:40px;height:40px}.trust-list strong{font-size:14px}.trust-list small{font-size:11px}
.brand-mark{top:22px;left:26px;width:66px;height:66px}.brand-mark img{width:48px;height:48px}
.welcome{padding-left:82px;margin-bottom:18px}.welcome h2{font-size:26px}.welcome p{line-height:1.7}
.auth-tabs{margin-bottom:18px}.auth-tabs button{padding:11px}
form>label{margin-bottom:6px}.field{min-height:50px}.field-error{min-height:14px;margin-bottom:4px}
.form-row{margin:8px 2px 15px}.primary-btn{padding:13px}.divider{margin:15px 0}.google-btn{padding:11px}.signup-line{margin-top:14px}.security-note{display:none}
.google-note{display:none}
.register-fields[hidden]{display:none!important}
@media(max-width:950px){
  html,body{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}
  .login-page{height:auto;min-height:100vh;display:flex;flex-direction:column;direction:rtl;overflow:visible}
  .login-panel{order:1;min-height:100vh;height:auto;overflow:visible;padding:78px 18px 28px}
  .login-showcase{order:2;display:none}
  .panel-inner{max-height:none;overflow:visible}
}


/* V47 register-only scroll polish */
.login-panel{padding-top:88px;padding-bottom:22px}
.back-home{top:18px}
.panel-inner.register-mode{
  max-height:calc(100vh - 112px);
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:thin;
  scrollbar-color:rgba(66,97,116,.95) rgba(3,21,35,.72);
}
.panel-inner.register-mode::-webkit-scrollbar{width:8px}
.panel-inner.register-mode::-webkit-scrollbar-track{background:rgba(3,21,35,.72);border-radius:12px;margin:12px 0}
.panel-inner.register-mode::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#355466,#203b4b);border:1px solid rgba(243,199,94,.22);border-radius:12px}
.panel-inner.register-mode::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#496a7c,#2a4859)}
.panel-inner.register-mode .security-note{display:none}
@media(max-width:950px){
  .login-panel{padding-top:76px;padding-bottom:24px}
  .panel-inner.register-mode{max-height:calc(100vh - 100px)}
}
@media(max-width:560px){
  .panel-inner.register-mode{max-height:calc(100vh - 92px);padding-right:14px}
}

/* V58 — login page isolation */
html:has(.login-page), body:has(.login-page){
  width:100%;
  max-width:100%;
  margin:0;
  overflow-x:hidden !important;
}
.login-page,
.login-page *{max-width:100%;}
.login-page img{display:block;}
.login-page button,.login-page input{font-family:Vazirmatn,Tahoma,sans-serif;}
@media(min-width:951px){
  html:has(.login-page),body:has(.login-page){height:100%;overflow:hidden !important;}
  .login-page{height:100vh !important;min-height:0 !important;overflow:hidden !important;}
  .login-panel{height:100vh !important;min-height:0 !important;overflow:hidden !important;}
  .panel-inner:not(.register-mode){max-height:calc(100vh - 112px);overflow:hidden !important;}
  .panel-inner.register-mode{max-height:calc(100vh - 112px);overflow-y:auto !important;overflow-x:hidden !important;}
}
@media(max-width:950px){
  html:has(.login-page),body:has(.login-page){overflow-x:hidden !important;}
  .login-page{width:100%;max-width:100%;}
  .login-panel{width:100%;max-width:100%;}
  .panel-inner{width:100%;max-width:590px;}
  .panel-inner.register-mode{overflow-y:auto !important;overflow-x:hidden !important;max-height:calc(100vh - 100px);}
}

/* V104 — adaptive login/register scrolling
   No forced scroll when content fits; vertical scroll appears only when needed. */
html:has(.login-page),body:has(.login-page){
  width:100%;
  min-height:100%;
  height:auto;
  overflow-x:hidden !important;
  overflow-y:auto !important;
}
.login-page{
  width:100%;
  min-height:100dvh;
  height:auto !important;
  overflow:visible !important;
}
.login-showcase{
  min-height:100dvh;
  height:auto;
}
.login-panel{
  min-height:100dvh;
  height:auto !important;
  max-height:none !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  align-items:center;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(243,199,94,.45) rgba(3,21,35,.55);
}
.login-panel::-webkit-scrollbar{width:8px}
.login-panel::-webkit-scrollbar-track{background:rgba(3,21,35,.55)}
.login-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(243,199,94,.65),rgba(66,97,116,.9));border-radius:10px;border:2px solid rgba(3,21,35,.55)}
.panel-inner{
  max-height:none !important;
  overflow:visible !important;
  flex:none;
}
.panel-inner.register-mode{
  max-height:none !important;
  overflow:visible !important;
}
@media(max-width:950px){
  html:has(.login-page),body:has(.login-page){
    height:auto;
    min-height:100%;
    overflow-x:hidden !important;
    overflow-y:auto !important;
  }
  .login-page{
    min-height:100dvh;
    height:auto !important;
    overflow:visible !important;
  }
  .login-panel{
    min-height:100dvh;
    height:auto !important;
    max-height:none !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    align-items:flex-start;
    padding-top:76px;
    padding-bottom:32px;
  }
  .panel-inner{margin-top:auto;margin-bottom:auto}
}
@media(max-height:760px) and (min-width:951px){
  .login-panel{align-items:flex-start;padding-top:82px;padding-bottom:28px}
}
@media(max-width:560px){
  .login-panel{padding-left:12px;padding-right:12px;padding-bottom:28px}
  .panel-inner{width:100%;margin-top:0;margin-bottom:0}
}
