.ztom-trigger{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--mra-line,#ebe5e8);background:var(--mra-surface,#fff);color:var(--mra-accent,#ad2455);border-radius:12px;min-height:40px;padding:0 14px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}.ztom-trigger:hover{background:#fff0f5}.ztom-dialog{box-sizing:border-box;border:0;padding:0;max-width:min(92vw,440px);width:100%;max-height:min(88dvh,760px);border-radius:22px;background:transparent;box-shadow:0 22px 70px #20091632;color:#29232a;font-family:Vazirmatn,Tahoma,sans-serif;overflow:visible}.ztom-dialog::backdrop{background:rgb(33 18 28 / .57);backdrop-filter:blur(3px)}.ztom-dialog *{box-sizing:border-box}.ztom-dialog-card{background:#fff;border-radius:22px;overflow:hidden;max-height:88dvh;overflow-y:auto}.ztom-dialog-head{display:flex;align-items:center;gap:13px;padding:22px 22px 18px;border-bottom:1px solid #f2e7ec}.ztom-dialog-head h2{font-size:19px;line-height:1.5;margin:0;font-weight:800;color:#2d2531}.ztom-dialog-head p{margin:3px 0 0;color:#817580;font-size:12px}.ztom-dialog-title-icon{display:grid;place-items:center;flex:none;background:#fcebf2;color:#ad2455;width:42px;height:42px;border-radius:13px;font-size:23px}.ztom-close{margin-inline-start:auto;flex:none;display:grid;place-items:center;border:0;background:#f7f2f5;border-radius:10px;width:34px;height:34px;cursor:pointer;font-size:24px;color:#817580}.ztom-dialog-body{padding:22px}.ztom-form{display:grid;gap:12px}.ztom-form[hidden],.ztom-notice[hidden],#ztom-result[hidden],#ztom-back[hidden]{display:none!important}.ztom-form label{font-weight:700;font-size:13px}.ztom-form input{font:inherit;width:100%;min-height:48px;padding:10px 14px;border:1px solid #ded5da;border-radius:12px;background:#fff;color:#222;outline:0}.ztom-form input:focus-visible{border-color:#ad2455;box-shadow:0 0 0 3px #ad24551c}.ztom-main-button{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;border:0;border-radius:12px;background:var(--mra-accent,#ad2455);color:white!important;font:inherit;font-size:14px;font-weight:750;min-height:46px;padding:10px 14px;cursor:pointer}.ztom-main-button:hover{filter:brightness(.94)}.ztom-main-button:disabled{opacity:.55;cursor:wait}.ztom-form-tip{font-size:13px;line-height:1.9;color:#6b606a;margin:8px 0}.ztom-notice{border-radius:12px;padding:12px 14px;background:#fff3eb;color:#8f461b;margin-top:12px;line-height:1.8;font-size:13px}.ztom-success{background:#edf9f1;color:#197543;border-radius:12px;padding:13px 16px;font-weight:800;font-size:16px}.ztom-status{font-size:13px;color:#6b606a;margin:15px 0}.ztom-track-label{font-size:13px;font-weight:700}.ztom-copy{width:100%;border:1px dashed #c39eaf;border-radius:13px;background:#fff7fa;color:#8b1e48;min-height:52px;cursor:pointer;font-size:16px;direction:ltr;overflow-wrap:anywhere}.ztom-copy:focus-visible,.ztom-trigger:focus-visible,.ztom-close:focus-visible{outline:3px solid #d96e95;outline-offset:2px}.ztom-external{margin-top:15px}.ztom-back{border:0;background:transparent;text-decoration:underline;color:#9b2550;cursor:pointer;font:inherit;font-size:13px;margin-top:18px}@media(max-width:520px){.ztom-dialog{width:calc(100% - 24px);max-width:none;max-height:calc(100dvh - 24px);margin:auto}.ztom-dialog-head{padding:18px}.ztom-dialog-body{padding:18px}}@media(prefers-reduced-motion:reduce){.ztom-dialog::backdrop{backdrop-filter:none}}
.ztom-auth{background:#fff;border:1px solid #f0e0e6;border-radius:14px;padding:18px;margin:16px 0;color:#382933}.ztom-auth h3{margin:0 0 14px;font-size:15px}.ztom-auth form{display:grid;gap:12px}.ztom-auth form[hidden]{display:none!important}.ztom-auth label{display:grid;gap:8px;font-size:13px;font-weight:700}.ztom-auth input{font:inherit;min-height:42px;border:1px solid #ddd;border-radius:10px;padding:8px 12px}.ztom-auth-msg{font-size:12px;line-height:1.8;color:#7b3961}
/* ZarinTar Order Manager — Midora header and mobile dock integration. */
.mra-header__actions .ztom-header-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:38px;padding-inline:10px;white-space:nowrap;font-size:12px;font-weight:800;color:var(--mra-accent,#a82454)}
.mra-header__actions .ztom-header-action .mra-icon{flex-shrink:0}
.mra-header__actions .ztom-header-action:hover{background:#fff1f6}
.mra-mobile-dock .ztom-dock-tracking{min-width:0;white-space:nowrap;color:var(--mra-accent,#a82454)}
@media(max-width:1100px){.mra-header__actions .ztom-header-action{width:36px;min-width:36px;padding:0}.ztom-header-label{display:none}}
@media(min-width:1101px){.ztom-header-label{display:inline}}
@media(max-width:380px){.mra-mobile-dock .ztom-dock-tracking span{font-size:9px;letter-spacing:-.12px}}
.ztom-midora-auth .ztom-auth{margin:16px 14px}

.ztom-midora-auth{margin:14px 18px;border-top:1px solid #eee3e8;padding-top:10px}.ztom-midora-auth summary{cursor:pointer;color:var(--mra-accent,#a82454);font-size:13px;font-weight:750;padding:9px;list-style-position:inside}.ztom-midora-auth .ztom-auth{margin:8px 0}

/* Shared passwordless storefront authentication, scoped to its own widget. */
.ztom-auth{width:100%;max-width:440px;margin:0 auto;direction:rtl;text-align:right;color:#283244;box-sizing:border-box}
.ztom-auth *{box-sizing:border-box}.ztom-auth h3{font-size:19px;line-height:1.6;margin:0 0 4px}.ztom-auth-help,.ztom-auth-sent{font-size:13px;line-height:1.8;color:#64748b;margin:4px 0 16px}
.ztom-auth form:not([hidden]){display:grid;gap:13px}.ztom-auth form[hidden]{display:none!important}
.ztom-auth form label{display:grid;gap:6px;font-size:13px;font-weight:700}.ztom-auth form input{display:block;width:100%;min-height:48px;padding:10px 14px;border:1px solid #d9dce4;border-radius:12px;background:#fff;color:#243047;font-size:16px;line-height:1.5;box-shadow:none;outline:none}.ztom-auth input:focus-visible{border-color:#a3275b;box-shadow:0 0 0 3px #a3275b20}.ztom-auth input[dir=ltr]{direction:ltr;text-align:center;letter-spacing:1px}
.ztom-auth .ztom-main-button{width:100%;min-height:48px;border:0;border-radius:12px;background:#9c2257;color:#fff;font:inherit;font-weight:750;cursor:pointer}.ztom-auth .ztom-main-button:hover{background:#831a47}.ztom-auth button:disabled{opacity:.55;cursor:wait}.ztom-auth-back{border:0;background:transparent;color:#9c2257;font:inherit;cursor:pointer;padding:9px}.ztom-auth-msg{font-size:13px;min-height:20px;line-height:1.8;color:#8b214c;margin:8px 0}.ztom-midora-auth{padding:0 20px 18px}.ztom-midora-auth>.ztom-auth{padding:4px 0}

/* 1.1.1 compact Persian authentication; no nested borders in the Midora modal. */
.ztom-auth {max-width:440px; padding:18px 20px; margin:12px auto; line-height:1.65;}
.ztom-auth h3 {font-size:16px; font-weight:750; margin:0 0 14px;}
.ztom-auth form:not([hidden]) {gap:11px;}
.ztom-auth form label {font-size:12px; line-height:1.7; gap:5px;}
.ztom-auth form input {height:43px; min-height:43px; border-radius:10px; font-size:15px; padding:8px 12px;}
.ztom-auth .ztom-main-button {min-height:42px; width:auto; min-width:156px; justify-self:start; padding:8px 19px; font-size:12.5px; line-height:1.5; border-radius:10px;}
.ztom-auth .ztom-auth-sent,.ztom-auth .ztom-auth-help {font-size:12px; margin:0 0 7px; line-height:1.75;}
.ztom-auth .ztom-auth-msg {margin:0; min-height:0; font-size:12px;}
.ztom-auth .ztom-auth-msg:empty {display:none;}
.mra-auth-dialog .ztom-midora-auth {margin:0; padding:18px 24px 24px; border:0;}
.mra-auth-dialog .ztom-midora-auth > .ztom-auth {width:100%; max-width:none; margin:0; border:0; padding:0; background:transparent; border-radius:0; box-shadow:none;}
.mra-auth-dialog .ztom-auth h3 {display:none;}
.mra-auth-dialog .ztom-auth form input {width:100%; max-width:none;}
@media(max-width:520px){.mra-auth-dialog .ztom-midora-auth {padding:16px 20px 22px;}.ztom-auth {padding:14px 16px;}.ztom-auth .ztom-main-button {min-width:146px;}}

/* v1.1.2: clear OTP-step hierarchy; same compact button in all storefront states. */
.ztom-auth .ztom-main-button {justify-self:center; align-self:center; text-align:center;}
.ztom-auth .ztom-auth-back {justify-self:center;}
.ztom-auth .ztom-auth-msg:not(:empty) {margin:0 0 13px; text-align:center; font-size:15px; line-height:1.65; font-weight:750; color:#187346;}
.ztom-auth .ztom-auth-msg[data-state="error"] {color:#ab294d;}
.ztom-auth .ztom-auth-sent {margin:0 0 3px; color:#69768a; text-align:center; line-height:1.7; font-size:12px; font-weight:500;}
.mra-auth-dialog [data-mra-auth-subtitle][hidden] {display:none!important;}


/* Only during an open virtual keyboard: keep the form above the keyboard. */
.ztom-dialog.ztom-keyboard-adjusted {
  position:fixed;
  top:calc(var(--ztom-viewport-top) + 8px);
  bottom:auto;
  left:0;
  right:0;
  margin:0 auto;
  max-height:calc(var(--ztom-viewport-height) - 16px);
  overflow:hidden;
}
.ztom-dialog.ztom-keyboard-adjusted .ztom-dialog-card {
  max-height:calc(var(--ztom-viewport-height) - 16px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
