:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#213547;background:#fafbfc}body{margin:0}.portal{max-width:1380px;margin:auto;padding:38px 24px 25px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;color:#526777}h1{font-size:clamp(27px,4vw,38px);letter-spacing:-.035em;margin:14px 0}.intro{font-size:17px;color:#526777}.notice{background:#eaf3fa;border-left:3px solid #3678a4;padding:13px 16px;line-height:1.5}.controls{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:23px 0}.controls label{font-size:13px;font-weight:600;display:grid;gap:7px}:where(.portal,.login-card) :is(select,button){font:inherit;border:1px solid #8899a7;border-radius:4px;padding:9px 13px;background:#fff;color:#213547}:where(.portal,.login-card) button{cursor:pointer;background:#174e70;color:#fff;border-color:#174e70;font-weight:600}:where(.portal,.login-card) button:disabled{opacity:.6;cursor:wait}#clear{background:#fff;color:#213547}a{color:#155d8b}.controls a{font-size:14px;padding:10px 0}#session{font-size:14px;line-height:1.6}ol{padding-left:22px;line-height:1.85;font-size:14px}details{font-size:14px;line-height:1.65;border-top:1px solid #dbe1e5;padding-top:15px}summary{cursor:pointer;font-weight:600}.portal code{font-size:13px;background:#edf0f3;padding:2px 4px;border-radius:3px}.swagger-ui .wrapper{max-width:1428px;padding:0 24px}.swagger-ui .info{margin:20px 0}.swagger-ui .info .title{font-size:23px}.swagger-ui .scheme-container{box-shadow:none;border-block:1px solid #e2e7eb;background:#fff}.swagger-ui .model-box{background:#f1f4f6}footer{max-width:1380px;margin:35px auto;padding:20px 24px;border-top:1px solid #dbe1e5;font-size:12px;color:#526777}[hidden]{display:none!important}:focus-visible{outline:3px solid #368dbc;outline-offset:3px}@media(max-width:600px){.portal{padding:24px 16px}.controls{gap:12px}.controls a{flex-basis:100%}.swagger-ui .wrapper{padding:0 12px}.swagger-ui .opblock .opblock-summary-path{max-width:calc(100% - 95px);font-size:13px}.swagger-ui .opblock-summary-description{display:none}}

@media(max-width:600px){.swagger-ui .responses-inner{padding:12px}.swagger-ui .opblock-body .highlight-code{max-width:100%;box-sizing:border-box}.swagger-ui .opblock-body pre{max-width:100%;box-sizing:border-box}}
@media(max-width:600px){.swagger-ui .servers>label{display:block;margin-right:0}.swagger-ui .schemes-server-container{min-width:0;max-width:100%}}
#coverage{font-size:13px;color:#526777}.controls select{max-width:350px}@media(max-width:600px){.controls label{max-width:100%}.controls select{max-width:100%;width:100%}.controls label[for="service"]{width:100%}}
@media(max-width:600px){.swagger-ui .opblock-tag small{display:none}.swagger-ui .opblock-tag{font-size:18px}}
.login-card{max-width:440px;margin:7vh auto;padding:28px;line-height:1.6}.login-card form{display:grid;gap:10px;margin:28px 0}.login-card input{font:inherit;padding:12px;border:1px solid #8899a7;border-radius:4px;min-width:0}.login-card button{margin-top:12px}.login-help{font-size:13px;color:#526777}.login-help code{overflow-wrap:anywhere}#login-status{min-height:1.6em}#login-identity{font-size:14px}.login-toolbar{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
/* Website CI: client-website/src/index.css and packages/ui/src/index.css. */
@font-face{font-family:'Vazirmatn Variable';font-style:normal;font-weight:100 900;font-display:swap;src:url('/docs/assets/vazirmatn-latin.woff2') format('woff2')}
:root{--brand-primary:#0B2341;--brand-accent:#03D59F;--brand-background:#F7F9FC;--brand-border:#D0D5DD;--brand-muted:#475467;font-family:'Vazirmatn Variable',sans-serif;color:var(--brand-primary);background:var(--brand-background)}
body{font-family:'Vazirmatn Variable',sans-serif;-webkit-font-smoothing:antialiased}.brand-header{min-height:88px;padding:0 max(24px,calc((100vw - 1380px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #EAECF0}.brand-logo{display:block;width:238px;max-width:100%;height:auto}.brand-header a{flex-shrink:0}.environment-label{font-size:12px;font-weight:600;padding:6px 11px;color:var(--brand-primary);background:#E7FCF5;border:1px solid #b0efda;border-radius:6px}.eyebrow{color:var(--brand-muted);letter-spacing:.12em}.intro,#coverage,footer{color:var(--brand-muted)}a{color:var(--brand-primary)}:where(.portal,.login-card) button{background:var(--brand-primary);border-color:var(--brand-primary);border-radius:6px}:where(.portal,.login-card) button:hover:not(:disabled){background:#12345C}.notice{background:#E7FCF5;border-left-color:var(--brand-accent)}:where(.portal,.login-card) :is(select,input){border-color:var(--brand-border);border-radius:6px}:focus-visible{outline-color:var(--brand-primary)}::selection{background:var(--brand-accent);color:var(--brand-primary)}.swagger-ui,.swagger-ui .info p,.swagger-ui .opblock-tag,.swagger-ui button,.swagger-ui select{font-family:'Vazirmatn Variable',sans-serif}.swagger-ui .btn.authorize{color:var(--brand-primary);border-color:var(--brand-primary)}.swagger-ui .btn.authorize svg{fill:var(--brand-primary)}.swagger-ui .btn.execute{background:var(--brand-primary);border-color:var(--brand-primary)}.swagger-ui .opblock.opblock-post{background:#03D59F0d;border-color:#067647}.swagger-ui .opblock.opblock-post .opblock-summary-method{background:#067647}.swagger-ui .opblock.opblock-get{background:#0B234108;border-color:#275376}.swagger-ui .opblock.opblock-get .opblock-summary-method{background:#275376}
.login-layout{max-width:1120px;min-height:calc(100vh - 200px);margin:auto;padding:60px 32px;box-sizing:border-box;display:grid;grid-template-columns:1fr 440px;align-items:center;gap:80px}.login-introduction h2{font-size:clamp(32px,3.5vw,48px);font-weight:750;line-height:1.23;letter-spacing:-1.6px;margin:22px 0 24px}.login-introduction h2 span{text-decoration:underline;text-decoration-color:var(--brand-accent);text-decoration-thickness:5px;text-underline-offset:9px}.login-introduction>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--brand-muted);max-width:430px}.participant-labels{display:flex;gap:0;flex-wrap:wrap;margin-top:30px;font-size:12px;font-weight:550}.participant-labels span{padding:0 12px;border-right:1px solid var(--brand-border)}.participant-labels span:first-child{padding-left:0}.participant-labels span:last-child{border:0}.login-card{margin:0;max-width:none;padding:32px;background:white;border:1px solid #EAECF0;border-top:4px solid var(--brand-accent);border-radius:12px;box-shadow:0 3px 14px -7px rgb(11 35 65 / 17%)}.login-card h1{font-size:27px;letter-spacing:-.6px;margin:8px 0 10px}.login-card>p:not(.eyebrow){font-size:14px;color:var(--brand-muted)}.login-card form{margin:24px 0 8px;gap:8px}.login-card label{font-size:13px;font-weight:600}.login-card input{padding:11px 12px;border-color:#7D899A}.login-card label[for=password]{margin-top:10px}.login-card button{background:var(--brand-accent);color:var(--brand-primary);border-color:var(--brand-accent);min-height:46px}.login-card button:hover:not(:disabled){background:#00be8d;border-color:#00be8d}.login-card #login-status{color:#B42318}.login-card .login-help{border-top:1px solid #EAECF0;padding-top:16px;font-size:12px}.login-footer{margin:0 auto;max-width:1120px;display:flex;justify-content:space-between;gap:16px;box-sizing:border-box;padding:24px 32px}
@media(max-width:800px){.login-layout{grid-template-columns:1fr;max-width:540px;gap:30px;padding:32px 20px}.login-introduction h2{font-size:34px}.login-introduction>p:not(.eyebrow),.participant-labels{display:none}.login-introduction h2 br{display:none}.login-card{padding:26px}.brand-header{padding:0 20px;min-height:76px;gap:12px}.brand-logo{width:190px}.environment-label{max-width:90px;text-align:center;font-size:10px}.login-footer{padding:24px 20px;font-size:11px}.brand-header a{flex-shrink:1}}

/* Keep portal button styling out of Swagger disclosure controls and tabs. */
:root {
  --control-hover: #E8F0F8;
  --control-active: #D8E7F4;
  --control-focus: #1C6CA0;
  --control-primary-hover: #174670;
}
:where(.portal,.login-card) button { transition: background-color .12s ease, border-color .12s ease; }
:where(.portal,.login-card) button:disabled { cursor: not-allowed; }
#clear:hover:not(:disabled), #logout:hover:not(:disabled) {
  background: var(--control-hover); border-color: var(--brand-primary); color: var(--brand-primary);
}
#logout { background: #fff; color: var(--brand-primary); }
.controls select { min-height: 44px; }
.controls select:hover:not(:disabled), .login-card input:hover { border-color: #667B92; }
.controls a:hover, footer a:hover { color: #174670; text-decoration-thickness: 2px; text-underline-offset: 4px; }
#swagger-ui .btn {
  color: var(--brand-primary); background: #fff; border-color: #667B92;
  border-radius: 6px; box-shadow: none; min-height: 40px;
  transition: background-color .12s ease, border-color .12s ease;
}
#swagger-ui .btn:hover:not(:disabled) { color: var(--brand-primary); background: var(--control-hover); border-color: var(--brand-primary); box-shadow: none; }
#swagger-ui .btn:active:not(:disabled) { background: var(--control-active); }
#swagger-ui .btn.execute { color: #fff; background: var(--brand-primary); border-color: var(--brand-primary); }
#swagger-ui .btn.execute:hover:not(:disabled) { color: #fff; background: var(--control-primary-hover); border-color: var(--control-primary-hover); }
#swagger-ui .btn.execute:active:not(:disabled) { background: #07192E; }
#swagger-ui .btn.authorize { color: #075C46; border-color: #08745B; background: #fff; }
#swagger-ui .btn.authorize:hover:not(:disabled) { color: #075C46; background: #E7FCF5; border-color: #075C46; }
#swagger-ui .btn.authorize svg { fill: currentColor; color: inherit; }
#swagger-ui .btn.cancel { color: #B42318; border-color: #B42318; }
#swagger-ui .btn.cancel:hover:not(:disabled) { color: #912018; background: #FEF3F2; border-color: #912018; }
#swagger-ui button:disabled { cursor: not-allowed; }
#swagger-ui :is(.opblock-summary-control,.opblock-control-arrow,.expand-operation,.authorization__btn,.model-box-control,.models-control,.close-modal) {
  color: var(--brand-primary); border-radius: 4px;
}
#swagger-ui :is(.opblock-summary-control,.opblock-control-arrow,.expand-operation,.authorization__btn,.model-box-control,.models-control,.close-modal):hover {
  color: var(--brand-primary); background-color: var(--control-hover);
}
#swagger-ui :is(.opblock-control-arrow,.expand-operation,.authorization__btn,.models-control,.close-modal) svg { fill: currentColor; color: inherit; }
#swagger-ui .opblock-tag:hover { background: var(--control-hover); }
#swagger-ui .opblock .opblock-summary-path, #swagger-ui .opblock .opblock-summary-description { color: var(--brand-primary); }
#swagger-ui .tab button { color: var(--brand-muted); background: transparent; border: 0; border-radius: 4px; padding: 8px 10px; }
#swagger-ui .tab button:hover { color: var(--brand-primary); background: var(--control-hover); }
#swagger-ui .tab li.active button, #swagger-ui .tab button[aria-selected="true"] {
  color: var(--brand-primary); background: #E7FCF5; box-shadow: inset 0 -3px 0 #08745B;
}
#swagger-ui .model-box { background: #F0F4F8; }
#swagger-ui .dialog-ux .modal-ux { border: 1px solid var(--brand-border); border-radius: 12px; }
#swagger-ui :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border-color: #7D899A; border-radius: 6px; color: var(--brand-primary); background-color: #fff; }
#swagger-ui :is(button,a,input,select,textarea):focus-visible,
:where(.portal,.login-card,.brand-header,footer) :is(button,a,input,select,summary):focus-visible {
  outline: 3px solid var(--control-focus); outline-offset: 3px; box-shadow: 0 0 0 2px #fff;
}
#swagger-ui .opblock-summary-control:focus-visible { outline-offset: -3px; box-shadow: none; }
@media (prefers-reduced-motion: reduce) {
  #swagger-ui .btn, :where(.portal,.login-card) button { transition: none; }
}

/* Swagger sanitizes classes in Markdown; language and direction remain safe hooks.
   Persian copy is isolated from LTR API paths, payloads and controls. */
@font-face {
  font-family: 'Vazirmatn Persian'; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url('/docs/assets/vazirmatn-arabic.woff2') format('woff2');
}
#swagger-ui .opblock-description div[lang="fa"][dir="rtl"] {
  direction: rtl; text-align: right; unicode-bidi: isolate;
  font-family: 'Vazirmatn Persian', 'Vazirmatn Variable', sans-serif;
  background: #fff; color: var(--brand-primary);
  border: 1px solid #DCE5ED; border-inline-start: 3px solid #08745B;
  border-radius: 8px; padding: 18px 22px; margin-top: 24px;
  max-width: 100%; box-sizing: border-box; overflow-wrap: anywhere;
}
#swagger-ui .opblock-description div[lang="fa"][dir="rtl"] h4 {
  font-family: inherit; font-size: 15px; font-weight: 750;
  margin: 0 0 10px; color: #075C46;
}
#swagger-ui .opblock-description div[lang="fa"][dir="rtl"] p {
  font-family: inherit; font-size: 14px; line-height: 2.1;
  text-align: right; margin: 0 0 10px;
}
#swagger-ui .opblock-description div[lang="fa"][dir="rtl"] p:first-of-type { font-weight: 650; }
#swagger-ui .opblock-description div[lang="fa"][dir="rtl"] p:last-child { margin-bottom: 0; }
@media(max-width:600px) {
  #swagger-ui .opblock-description div[lang="fa"][dir="rtl"] { padding: 14px 16px; margin-top: 18px; }
}
