/* Full-page authentication. All presentation rules stay inside this surface. */
html.rd-auth-open,body.rd-auth-open{overflow:hidden!important;overscroll-behavior:none}
.rd-p2-auth-overlay.rd-auth-page{
  --auth-bg:#fffcf9;--auth-surface:#fff;--auth-ink:#302d2b;--auth-muted:#78716a;
  --auth-line:#eee7e1;--auth-soft:#fff0e2;--auth-orange:#ff9c51;--auth-orange-ink:#a54f18;
  position:fixed;inset:0;width:100%;height:100%;height:var(--rd-auth-height,100dvh);z-index:2147483000;
  display:block;padding:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;
  background:var(--auth-bg);color:var(--auth-ink);font-family:Vazirmatn,Tahoma,sans-serif;
  backdrop-filter:none;-webkit-backdrop-filter:none;animation:rdAuthPageIn .24s ease both;
  -webkit-overflow-scrolling:touch;scrollbar-width:thin;color-scheme:light;
}
.rd-p2-auth-overlay.rd-auth-page::before{display:none}
.rd-auth-page *, .rd-auth-page *::before,.rd-auth-page *::after{box-sizing:border-box}
.rd-auth-page [hidden]{display:none!important}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-auth-card{
  position:relative;display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:none;
  min-height:100%;max-height:none;height:auto;overflow:visible;margin:0;padding:0;
  border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  background:radial-gradient(ellipse 400px 290px at 88% 0%,#ffe9d0a8,transparent 90%),var(--auth-bg);
  animation:none;color:var(--auth-ink);
}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-auth-card::before{display:none}
.rd-auth-page .rd-auth-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0;
  width:100%;max-width:500px;margin:0 auto;
  padding:calc(18px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 12px max(24px,env(safe-area-inset-left));
}
.rd-auth-page .rd-auth-toolbar>img{width:86px;height:auto;display:block;object-fit:contain}
.rd-auth-page .rd-auth-close{
  position:static;display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;
  padding:10px;margin-left:-10px;border:0;border-radius:50%;background:transparent;
  color:var(--auth-ink);box-shadow:none;transform:none;cursor:pointer;
}
.rd-auth-page .rd-auth-close:hover{background:var(--auth-soft);transform:none}
.rd-auth-page .rd-auth-close svg{width:22px;height:22px}
.rd-auth-page .rd-auth-content{width:100%;max-width:452px;margin:0 auto;padding:18px 26px 26px;flex:1}
.rd-auth-page .rd-auth-hero{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:0;margin:0 0 26px}
.rd-auth-page .rd-auth-hero-mark{
  display:grid;place-items:center;width:60px;height:60px;flex-shrink:0;margin-bottom:22px;
  border:1px solid #ffe2c5;border-radius:21px;background:linear-gradient(145deg,#fff4e9,#ffe8d0);
  color:#e98032;box-shadow:0 6px 16px #e7963c08;
}
.rd-auth-page .rd-auth-hero-mark>svg{width:28px;height:28px;stroke-width:1.55}
.rd-auth-page .rd-auth-eyebrow{display:block;color:var(--auth-orange-ink);font-size:11px;font-weight:600;line-height:1.8;margin-bottom:7px}
.rd-auth-page h1{margin:0;color:var(--auth-ink);font-family:inherit;font-size:29px;font-weight:800;line-height:1.65;letter-spacing:-.7px;outline:none}
.rd-auth-page .rd-auth-hero p{font-size:12px;line-height:2;color:var(--auth-muted);margin:7px 0 0;max-width:34em;text-wrap:pretty}
.rd-auth-page .rd-auth-hero bdi{display:inline-block;color:var(--auth-ink);font-size:14px;font-weight:600;letter-spacing:.6px}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-tabs{
  display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:0 0 25px;
  border:1px solid var(--auth-line);border-radius:16px;background:#f7f2ed;
}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-tabs button{
  height:42px;border:0;border-radius:12px;background:transparent;color:var(--auth-muted);
  font:600 12px Vazirmatn,Tahoma,sans-serif;box-shadow:none;transform:none;cursor:pointer;
  transition:background .24s ease,color .24s ease,box-shadow .24s ease;
}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-tabs button.active{background:var(--auth-surface);color:var(--auth-orange-ink);box-shadow:0 2px 6px #543a1c08;transform:none}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-form{gap:17px;animation:rdAuthPageIn .2s ease both}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-field{display:grid;gap:8px;min-width:0}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-field label{
  display:flex;justify-content:space-between;gap:8px;padding:0 2px;color:var(--auth-ink);font:600 12px/1.8 Vazirmatn,Tahoma,sans-serif;
}
.rd-auth-page .rd-p2-field label small{color:var(--auth-muted);font-size:10px;font-weight:400}
.rd-auth-page .rd-auth-input{
  display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:4px;
  min-height:53px;padding:0 13px;border:1px solid var(--auth-line);border-radius:16px;
  background:var(--auth-surface);transform:none;box-shadow:0 2px 3px #46331f02;
  transition:border-color .22s ease,box-shadow .22s ease;
}
.rd-auth-page .rd-auth-input:focus-within{border-color:#ffa562;box-shadow:0 0 0 3px #ff9c5112;transform:none}
.rd-auth-page .rd-auth-input>span{display:grid;place-items:center;width:23px;height:25px;padding:0;border-radius:0;background:transparent;color:#ada096}
.rd-auth-page .rd-auth-input>span svg{width:20px;height:20px;stroke-width:1.5}
.rd-auth-page .rd-auth-at{font:400 21px system-ui,sans-serif}
.rd-p2-auth-overlay.rd-auth-page .rd-auth-input input{
  display:block;width:100%;min-width:0;height:51px;margin:0;padding:0 6px;border:0!important;
  outline:0;background:transparent;box-shadow:none!important;color:var(--auth-ink);font:400 16px/1.5 Vazirmatn,Tahoma,sans-serif;
  letter-spacing:0;border-radius:0;
}
.rd-p2-auth-overlay.rd-auth-page .rd-auth-input input::placeholder{color:#b5ada6;font-size:12px;opacity:1}
.rd-auth-page .rd-auth-pass{
  min-width:42px;min-height:44px;height:auto;padding:0 3px;border:0;border-radius:8px;
  background:transparent;color:var(--auth-orange-ink);font:600 10px Vazirmatn,Tahoma,sans-serif;cursor:pointer;
}
.rd-auth-page .rd-auth-pass:hover{background:transparent;color:#c96525}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-submit{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:53px;min-height:53px;
  padding:0 15px;margin:7px 0 0;border:0;border-radius:16px;transform:none;
  background:linear-gradient(110deg,#ffb16a,#ff9650);color:#542708;
  font:750 13px/1.8 Vazirmatn,Tahoma,sans-serif;box-shadow:0 6px 16px #ff99451a;
  cursor:pointer;transition:filter .2s ease,transform .2s ease,opacity .2s ease;
}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-submit:hover:not(:disabled){filter:brightness(1.035);transform:none;box-shadow:0 6px 16px #ff99451a}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-submit:active:not(:disabled){transform:scale(.987)}
.rd-auth-page button:disabled{opacity:.48;cursor:not-allowed}
.rd-auth-page .rd-p2-submit[data-loading=true]::after{content:"";width:14px;height:14px;border:1.5px solid #54270830;border-top-color:#542708;border-radius:50%;animation:rdAuthSpin .7s linear infinite}
.rd-p2-auth-overlay.rd-auth-page .rd-p2-error{padding:12px 14px;margin:0;border:1px solid #f6d9d5;border-radius:14px;background:#fff3f0;color:#ac3d36;font-size:12px;line-height:1.9;animation:rdAuthPageIn .18s ease both;overflow-wrap:anywhere}
.rd-auth-page .rd-auth-trust{display:flex;align-items:center;justify-content:center;gap:6px;padding:0;margin:22px 0 0;border:0;border-radius:0;background:transparent;color:var(--auth-muted)}
.rd-auth-page .rd-auth-trust>svg{width:15px;height:15px;flex-shrink:0}
.rd-auth-page .rd-auth-trust p{display:block;margin:0;font-size:10px;line-height:1.9}
.rd-auth-page .rd-auth-guest{width:100%;margin:15px 0 0;padding:8px 0;min-height:40px;background:transparent;border:0;color:var(--auth-muted);font:400 11px/1.8 Vazirmatn,Tahoma,sans-serif;cursor:pointer}
.rd-auth-page .rd-auth-guest:hover{color:var(--auth-orange-ink)}
.rd-auth-page .rd-auth-footer{display:flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;margin-top:auto;padding:0 24px calc(20px + env(safe-area-inset-bottom));font-size:10px;color:var(--auth-muted)}
.rd-auth-page .rd-auth-footer span{color:#efb27f}
.rd-auth-page button:focus-visible{outline:2px solid #e18b46;outline-offset:3px}
/* The six inputs share one submitted code. Green only follows server verification. */
.rd-auth-page[data-screen=otp] .rd-auth-content{padding-top:40px}
.rd-auth-page[data-screen=otp] .rd-auth-hero{margin-bottom:34px}
.rd-auth-page .rd-otp-boxes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%;direction:ltr;margin-top:6px}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes .rd-otp-digit{
  display:block;min-width:0;width:100%;height:58px;margin:0;padding:0;text-align:center;direction:ltr;
  border:1.5px solid var(--auth-line);border-radius:14px;background:var(--auth-surface);color:var(--auth-ink);
  font:600 23px/1 Vazirmatn,Tahoma,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:0;
  outline:0;box-shadow:0 2px 5px #643e1b03;caret-color:#e98843;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes .rd-otp-digit.is-filled{border-color:#edc29e;background:#fffaf4}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes .rd-otp-digit:focus{border-color:#ff9e54;box-shadow:0 0 0 3px #ff9c5117;background:var(--auth-surface)}
.rd-auth-page .rd-otp-help{margin:7px 0 0;color:var(--auth-muted);font-size:10px;line-height:1.9;text-align:center}
.rd-auth-page .rd-otp-actions{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 4px}
.rd-auth-page .rd-otp-actions small{font-size:10px;color:var(--auth-muted);font-variant-numeric:tabular-nums}
.rd-auth-page .rd-otp-actions button,.rd-auth-page .rd-auth-back{border:0;background:transparent;color:var(--auth-orange-ink);font:500 11px/1.8 Vazirmatn,Tahoma,sans-serif;cursor:pointer;padding:10px 0;min-height:40px}
.rd-auth-page .rd-auth-back{width:100%;margin:-4px 0 0}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes[data-state=checking] .rd-otp-digit{animation:rdOtpChecking .8s ease-in-out calc(var(--digit-i)*.09s) infinite alternate}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes[data-state=success] .rd-otp-digit{animation:rdOtpSuccess .2s ease calc(var(--digit-i)*.08s) both}
.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes[data-state=error] .rd-otp-digit{animation:rdOtpError .2s ease calc(var(--digit-i)*.06s) both}
/* Confirmation has enough reading time and an immediate continue action. */
.rd-auth-page[data-screen=success] .rd-auth-content{display:flex;align-items:center;padding-top:30px;padding-bottom:55px}
.rd-auth-page .rd-auth-success{display:flex;flex-direction:column;align-items:center;width:100%;min-height:0;padding:0;text-align:center;animation:rdAuthPageIn .3s ease both}
.rd-auth-page .rd-auth-success-art{position:relative;display:grid;place-items:center;width:100px;height:100px;margin:0 0 36px;border-radius:35px;background:linear-gradient(145deg,#fff0dc,#ffd5ad);color:#d67a30;box-shadow:0 0 0 12px #fff4e9,0 0 0 24px #fff8f1}
.rd-auth-page .rd-auth-success-art>svg{width:44px;height:44px;stroke-width:1.8;animation:rdAuthCheckIn .45s ease both}
.rd-auth-page .rd-auth-success-art>span{position:absolute;display:block;width:7px;height:7px;border:0;border-radius:50%;background:#ffb16f;box-shadow:none;animation:none;top:-9px;right:-20px}
.rd-auth-page .rd-auth-success-art>span:last-child{width:5px;height:5px;top:auto;right:auto;bottom:3px;left:-22px;background:#f6c297}
.rd-auth-page .rd-auth-success h1{font-size:29px;margin:0 0 8px}
.rd-auth-page .rd-auth-success p{margin:0;color:var(--auth-muted);font-size:12px;line-height:2.1}
.rd-auth-page .rd-auth-verified{display:flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:8px 12px;margin:22px 0 29px;background:#eff7f1;color:#397458;font-size:10px}
.rd-auth-page .rd-auth-verified>svg{width:15px;height:15px}
.rd-auth-page .rd-auth-success-status{display:block;margin-top:15px;font-size:10px;line-height:1.9;color:var(--auth-muted)}
html.dark .rd-p2-auth-overlay.rd-auth-page{--auth-bg:#191816;--auth-surface:#23211e;--auth-ink:#f6efe8;--auth-muted:#aba29a;--auth-line:#3a332c;--auth-soft:#39291e;--auth-orange-ink:#ffb67d;color-scheme:dark;background:var(--auth-bg)}
html.dark .rd-auth-page .rd-p2-auth-card{background:radial-gradient(ellipse 400px 290px at 88% 0%,#ff9c510d,transparent 90%),var(--auth-bg);border:0;box-shadow:none}
html.dark .rd-auth-page .rd-auth-hero-mark{background:linear-gradient(145deg,#3a2a1f,#34241a);border-color:#55402d;color:#ffb273}
html.dark .rd-auth-page .rd-p2-tabs{background:#201e1b;border-color:var(--auth-line)}
html.dark .rd-auth-page .rd-auth-input{background:var(--auth-surface);border-color:var(--auth-line)}
html.dark .rd-auth-page .rd-auth-input:focus-within{border-color:#bd7b47}
html.dark .rd-auth-page .rd-auth-input>span{background:transparent;color:#b3a496}
html.dark .rd-auth-page .rd-auth-trust{background:transparent}
html.dark .rd-auth-page .rd-p2-error{background:#372522;border-color:#573c35;color:#f0a69a}
html.dark .rd-auth-page .rd-otp-boxes .rd-otp-digit.is-filled{background:#2a231c;border-color:#826044}
html.dark .rd-auth-page .rd-auth-success-art{background:linear-gradient(145deg,#4c3420,#6c4326);color:#ffc38c;box-shadow:0 0 0 12px #241e18,0 0 0 24px #1e1b17}
html.dark .rd-auth-page .rd-auth-verified{background:#203028;color:#98c7ac}
@keyframes rdAuthPageIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes rdAuthCheckIn{from{opacity:0;transform:scale(.75)}to{opacity:1;transform:scale(1)}}
@keyframes rdOtpChecking{from{border-color:#edc29e}to{border-color:#f29950;box-shadow:0 0 0 3px #ff9c5112}}
@keyframes rdOtpSuccess{to{border-color:#67a988;background:#edf7f0;color:#357552;box-shadow:0 0 0 2px #60a6810b}}
@keyframes rdOtpError{to{border-color:#df8e82;background:#fff1ed;color:#ac4b40;box-shadow:none}}
@media(min-width:761px){.rd-auth-page .rd-auth-content{padding-top:32px}.rd-auth-page .rd-auth-toolbar{max-width:1040px;padding-top:28px}.rd-auth-page[data-screen=otp] .rd-auth-content{padding-top:58px}}
@media(max-width:360px){.rd-auth-page .rd-auth-content{padding-inline:20px}.rd-auth-page .rd-auth-toolbar{padding-inline:20px}.rd-auth-page h1,.rd-auth-page .rd-auth-success h1{font-size:26px}.rd-auth-page .rd-otp-boxes{gap:6px}.rd-p2-auth-overlay.rd-auth-page .rd-otp-boxes .rd-otp-digit{height:52px;border-radius:12px}}
@media(max-height:720px){.rd-auth-page .rd-auth-content{padding-top:10px}.rd-auth-page .rd-auth-hero{margin-bottom:20px}.rd-auth-page .rd-auth-hero-mark{width:48px;height:48px;border-radius:17px;margin-bottom:14px}.rd-auth-page .rd-auth-toolbar{padding-top:calc(10px + env(safe-area-inset-top))}.rd-p2-auth-overlay.rd-auth-page .rd-p2-form{gap:13px}.rd-auth-page[data-screen=register] .rd-auth-content{padding-top:4px}.rd-auth-page[data-screen=register] .rd-auth-hero-mark{display:none}.rd-auth-page[data-screen=otp] .rd-auth-content{padding-top:22px}}
@media(prefers-reduced-motion:reduce){.rd-auth-page,.rd-auth-page *{animation:none!important;transition:none!important}.rd-auth-page .rd-otp-boxes[data-state=success] .rd-otp-digit{border-color:#67a988!important;background:#edf7f0!important;color:#357552!important}.rd-auth-page .rd-otp-boxes[data-state=error] .rd-otp-digit{border-color:#df8e82!important;background:#fff1ed!important;color:#ac4b40!important}}
html[data-rd-motion=off] .rd-auth-page,html[data-rd-motion=off] .rd-auth-page *{animation:none!important;transition:none!important}
html[data-rd-motion=off] .rd-auth-page .rd-otp-boxes[data-state=success] .rd-otp-digit{border-color:#67a988!important;background:#edf7f0!important;color:#357552!important}
html[data-rd-motion=off] .rd-auth-page .rd-otp-boxes[data-state=error] .rd-otp-digit{border-color:#df8e82!important;background:#fff1ed!important;color:#ac4b40!important}
