/* GENERATED ecosystem design tokens. Do not hand-edit. */
:root{
  --mofa-core-palette-canvas-light:#f7f8fb;
  --mofa-core-palette-surface-light:#ffffff;
  --mofa-core-palette-surface-soft-light:#f4f5f9;
  --mofa-core-palette-surface-hover-light:#f0effa;
  --mofa-core-palette-text-light:#171928;
  --mofa-core-palette-text-muted-light:#6f7586;
  --mofa-core-palette-border-light:#e5e7ee;
  --mofa-core-palette-border-strong-light:#d6d9e3;
  --mofa-core-palette-primary-light:#5b36d6;
  --mofa-core-palette-primary-hover-light:#4f2bc7;
  --mofa-core-palette-primary-soft-light:#f0ecff;
  --mofa-core-palette-success-light:#188554;
  --mofa-core-palette-success-soft-light:#eaf8f1;
  --mofa-core-palette-warning-light:#a7660a;
  --mofa-core-palette-warning-soft-light:#fff6df;
  --mofa-core-palette-danger-light:#c63f4b;
  --mofa-core-palette-danger-soft-light:#fff0f1;
  --mofa-core-palette-info-light:#2466b5;
  --mofa-core-palette-info-soft-light:#eef6ff;
  --mofa-core-palette-shell-nav-light:#17142c;
  --mofa-core-palette-shell-nav-text-light:#d6d3e6;
  --mofa-core-palette-shell-nav-muted-light:#8e88aa;
  --mofa-core-palette-shell-nav-active-light:#8e6cf4;
  --mofa-core-palette-canvas-dark:#111319;
  --mofa-core-palette-surface-dark:#171a22;
  --mofa-core-palette-surface-soft-dark:#1e2230;
  --mofa-core-palette-surface-hover-dark:#252a39;
  --mofa-core-palette-text-dark:#f1f3f7;
  --mofa-core-palette-text-muted-dark:#9ca4b4;
  --mofa-core-palette-border-dark:#2a2f3b;
  --mofa-core-palette-border-strong-dark:#394150;
  --mofa-core-palette-primary-dark:#8f74ef;
  --mofa-core-palette-primary-hover-dark:#9c84f4;
  --mofa-core-palette-primary-soft-dark:#29213f;
  --mofa-core-palette-success-dark:#55b889;
  --mofa-core-palette-success-soft-dark:#173126;
  --mofa-core-palette-warning-dark:#e0a64d;
  --mofa-core-palette-warning-soft-dark:#382c18;
  --mofa-core-palette-danger-dark:#eb7882;
  --mofa-core-palette-danger-soft-dark:#382027;
  --mofa-core-palette-info-dark:#6da6e8;
  --mofa-core-palette-info-soft-dark:#182c43;
  --mofa-core-palette-shell-nav-dark:#0f1119;
  --mofa-core-palette-shell-nav-text-dark:#e4e7f0;
  --mofa-core-palette-shell-nav-muted-dark:#959daf;
  --mofa-core-palette-shell-nav-active-dark:#9b82f3;
  --mofa-core-font-sans:"Vazirmatn",Tahoma,Arial,sans-serif;
  --mofa-core-font-mono:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  --mofa-core-font-size-xs:12px;
  --mofa-core-font-size-sm:13px;
  --mofa-core-font-size-md:14px;
  --mofa-core-font-size-lg:16px;
  --mofa-core-font-size-xl:18px;
  --mofa-core-font-size-2xl:22px;
  --mofa-core-font-size-3xl:28px;
  --mofa-core-font-weight-regular:400;
  --mofa-core-font-weight-medium:500;
  --mofa-core-font-weight-semibold:600;
  --mofa-core-font-weight-bold:700;
  --mofa-core-font-weight-extrabold:800;
  --mofa-core-font-weight-black:900;
  --mofa-core-line-height-tight:1.45;
  --mofa-core-line-height-normal:1.75;
  --mofa-core-space-0:0;
  --mofa-core-space-1:4px;
  --mofa-core-space-2:8px;
  --mofa-core-space-3:12px;
  --mofa-core-space-4:16px;
  --mofa-core-space-5:20px;
  --mofa-core-space-6:24px;
  --mofa-core-space-7:28px;
  --mofa-core-space-8:32px;
  --mofa-core-space-10:40px;
  --mofa-core-space-12:48px;
  --mofa-core-space-16:64px;
  --mofa-core-radius-none:0;
  --mofa-core-radius-xs:6px;
  --mofa-core-radius-sm:8px;
  --mofa-core-radius-md:12px;
  --mofa-core-radius-lg:16px;
  --mofa-core-radius-xl:20px;
  --mofa-core-radius-pill:999px;
  --mofa-core-border-width:1px;
  --mofa-core-control-height-sm:36px;
  --mofa-core-control-height-compact:40px;
  --mofa-core-control-height-md:44px;
  --mofa-core-control-height-lg:48px;
  --mofa-core-hit-target:44px;
  --mofa-core-field-height:46px;
  --mofa-core-field-radius:7px;
  --mofa-core-field-padding-y:10px;
  --mofa-core-field-padding-x:var(--mofa-core-space-3);
  --mofa-core-field-font-size:var(--mofa-core-font-size-xs);
  --mofa-core-field-border-width:var(--mofa-core-border-width);
  --mofa-core-field-label-bg:var(--mofa-core-color-surface);
  --mofa-core-add-field-height:32px;
  --mofa-core-add-field-hit-inset:calc((var(--mofa-core-hit-target) - var(--mofa-core-add-field-height))/2);
  --mofa-core-add-field-padding-x:9px;
  --mofa-core-add-field-icon-size:13px;
  --mofa-core-add-field-radius:var(--mofa-core-field-radius);
  --mofa-core-dialog-close-size:var(--mofa-core-hit-target);
  --mofa-core-dialog-close-icon-size:13px;
  --mofa-core-editor-row-gap:var(--mofa-core-space-4);
  --mofa-core-form-grid-gap-x:var(--mofa-core-space-3);
  --mofa-core-form-grid-gap-y:var(--mofa-core-space-3);
  --mofa-core-form-section-gap:var(--mofa-core-space-4);
  --mofa-core-form-addon-gap:7px;
  --mofa-core-form-addon-margin:var(--mofa-core-space-3);
  --mofa-core-optional-panel-gap:var(--mofa-core-space-3);
  --mofa-core-editor-column-gap:var(--mofa-core-space-3);
  --mofa-core-dialog-body-pad:var(--mofa-core-space-5);
  --mofa-core-dialog-footer-pad-y:var(--mofa-core-space-3);
  --mofa-core-dialog-width-compact:520px;
  --mofa-core-dialog-width-default:680px;
  --mofa-core-dialog-width-wide:900px;
  --mofa-core-dialog-width-wizard:920px;
  --mofa-core-dialog-width-composer:1180px;
  --mofa-core-dialog-max-height:88dvh;
  --mofa-core-dialog-header-pad-y:18px;
  --mofa-core-dialog-header-pad-x:22px;
  --mofa-core-textarea-min-height:112px;
  --mofa-core-badge-height:26px;
  --mofa-core-icon-size-sm:16px;
  --mofa-core-icon-size-md:18px;
  --mofa-core-icon-size-lg:20px;
  --mofa-core-icon-size-xl:24px;
  --mofa-core-page-max:1500px;
  --mofa-core-page-wide:var(--mofa-core-page-max);
  --mofa-core-page-standard:1180px;
  --mofa-core-page-compact:760px;
  --mofa-core-breakpoint-xs:480px;
  --mofa-core-breakpoint-sm:640px;
  --mofa-core-breakpoint-md:768px;
  --mofa-core-breakpoint-lg:960px;
  --mofa-core-breakpoint-xl:1200px;
  --mofa-core-breakpoint-2xl:1500px;
  --mofa-core-shell-sidebar-width:224px;
  --mofa-core-shell-sidebar-compact-width:72px;
  --mofa-core-shell-topbar-height:68px;
  --mofa-core-shell-sidebar-padding:var(--mofa-core-space-3);
  --mofa-core-shell-nav-item-height:36px;
  --mofa-core-shell-nav-icon-size:18px;
  --mofa-core-shell-nav-group-gap:10px;
  --mofa-core-shell-nav-item-gap:2px;
  --mofa-core-color-canvas:var(--mofa-core-palette-canvas-light);
  --mofa-core-color-surface:var(--mofa-core-palette-surface-light);
  --mofa-core-color-surface-soft:var(--mofa-core-palette-surface-soft-light);
  --mofa-core-color-surface-hover:var(--mofa-core-palette-surface-hover-light);
  --mofa-core-color-text:var(--mofa-core-palette-text-light);
  --mofa-core-color-text-muted:var(--mofa-core-palette-text-muted-light);
  --mofa-core-color-border:var(--mofa-core-palette-border-light);
  --mofa-core-color-border-strong:var(--mofa-core-palette-border-strong-light);
  --mofa-core-color-primary:var(--mofa-core-palette-primary-light);
  --mofa-core-color-primary-hover:var(--mofa-core-palette-primary-hover-light);
  --mofa-core-color-primary-soft:var(--mofa-core-palette-primary-soft-light);
  --mofa-core-color-on-primary:var(--mofa-core-palette-surface-light);
  --mofa-core-color-success:var(--mofa-core-palette-success-light);
  --mofa-core-color-success-soft:var(--mofa-core-palette-success-soft-light);
  --mofa-core-color-warning:var(--mofa-core-palette-warning-light);
  --mofa-core-color-warning-soft:var(--mofa-core-palette-warning-soft-light);
  --mofa-core-color-danger:var(--mofa-core-palette-danger-light);
  --mofa-core-color-danger-soft:var(--mofa-core-palette-danger-soft-light);
  --mofa-core-color-info:var(--mofa-core-palette-info-light);
  --mofa-core-color-info-soft:var(--mofa-core-palette-info-soft-light);
  --mofa-core-color-focus:rgba(91,54,214,.18);
  --mofa-core-color-overlay:rgba(15,17,25,.48);
  --mofa-core-color-shell-nav:var(--mofa-core-palette-shell-nav-light);
  --mofa-core-color-shell-nav-text:var(--mofa-core-palette-shell-nav-text-light);
  --mofa-core-color-shell-nav-muted:var(--mofa-core-palette-shell-nav-muted-light);
  --mofa-core-color-shell-nav-border:rgba(255,255,255,.08);
  --mofa-core-color-shell-nav-hover:rgba(255,255,255,.055);
  --mofa-core-color-shell-nav-active:var(--mofa-core-palette-shell-nav-active-light);
  --mofa-core-shadow-none:none;
  --mofa-core-shadow-xs:0 1px 1px rgba(26,24,44,.04);
  --mofa-core-shadow-sm:0 1px 2px rgba(26,24,44,.05);
  --mofa-core-shadow-md:0 8px 28px rgba(26,24,44,.07);
  --mofa-core-shadow-popover:0 16px 44px rgba(26,24,44,.14);
  --mofa-core-shadow-dialog:0 26px 78px rgba(26,24,44,.2);
  --mofa-core-focus-ring:0 0 0 3px var(--mofa-core-color-focus);
  --mofa-core-opacity-disabled:.5;
  --mofa-core-opacity-muted:.72;
  --mofa-core-motion-duration-fast:120ms;
  --mofa-core-motion-duration-standard:160ms;
  --mofa-core-motion-duration-slow:220ms;
  --mofa-core-motion-easing:ease;
  --mofa-core-motion-fast:var(--mofa-core-motion-duration-fast) var(--mofa-core-motion-easing);
  --mofa-core-motion-standard:var(--mofa-core-motion-duration-standard) var(--mofa-core-motion-easing);
  --mofa-core-z-base:0;
  --mofa-core-z-raised:10;
  --mofa-core-z-sticky:100;
  --mofa-core-z-dropdown:500;
  --mofa-core-z-overlay:900;
  --mofa-core-z-modal:2100;
  --mofa-core-z-toast:2200;
}
html[data-theme="dark"]{
  --mofa-core-color-canvas:var(--mofa-core-palette-canvas-dark);
  --mofa-core-color-surface:var(--mofa-core-palette-surface-dark);
  --mofa-core-color-surface-soft:var(--mofa-core-palette-surface-soft-dark);
  --mofa-core-color-surface-hover:var(--mofa-core-palette-surface-hover-dark);
  --mofa-core-color-text:var(--mofa-core-palette-text-dark);
  --mofa-core-color-text-muted:var(--mofa-core-palette-text-muted-dark);
  --mofa-core-color-border:var(--mofa-core-palette-border-dark);
  --mofa-core-color-border-strong:var(--mofa-core-palette-border-strong-dark);
  --mofa-core-color-primary:var(--mofa-core-palette-primary-dark);
  --mofa-core-color-primary-hover:var(--mofa-core-palette-primary-hover-dark);
  --mofa-core-color-primary-soft:var(--mofa-core-palette-primary-soft-dark);
  --mofa-core-color-success:var(--mofa-core-palette-success-dark);
  --mofa-core-color-success-soft:var(--mofa-core-palette-success-soft-dark);
  --mofa-core-color-warning:var(--mofa-core-palette-warning-dark);
  --mofa-core-color-warning-soft:var(--mofa-core-palette-warning-soft-dark);
  --mofa-core-color-danger:var(--mofa-core-palette-danger-dark);
  --mofa-core-color-danger-soft:var(--mofa-core-palette-danger-soft-dark);
  --mofa-core-color-info:var(--mofa-core-palette-info-dark);
  --mofa-core-color-info-soft:var(--mofa-core-palette-info-soft-dark);
  --mofa-core-color-focus:rgba(143,116,239,.24);
  --mofa-core-color-overlay:rgba(4,6,12,.72);
  --mofa-core-color-shell-nav:var(--mofa-core-palette-shell-nav-dark);
  --mofa-core-color-shell-nav-text:var(--mofa-core-palette-shell-nav-text-dark);
  --mofa-core-color-shell-nav-muted:var(--mofa-core-palette-shell-nav-muted-dark);
  --mofa-core-color-shell-nav-border:rgba(255,255,255,.09);
  --mofa-core-color-shell-nav-hover:rgba(255,255,255,.07);
  --mofa-core-color-shell-nav-active:var(--mofa-core-palette-shell-nav-active-dark);
  --mofa-core-shadow-xs:0 1px 1px rgba(0,0,0,.15);
  --mofa-core-shadow-sm:0 1px 2px rgba(0,0,0,.18);
  --mofa-core-shadow-md:0 8px 28px rgba(0,0,0,.20);
  --mofa-core-shadow-popover:0 18px 50px rgba(0,0,0,.38);
  --mofa-core-shadow-dialog:0 28px 84px rgba(0,0,0,.52);
}
@media(max-width:960px){
  :root{
    --mofa-core-control-height-md:48px;
    --mofa-core-hit-target:48px;
  }
}
/* Core owns font delivery for Admin, Auth and module UI. Vazirmatn: SIL OFL 1.1. */
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:100 900;font-display:swap;src:url("/assets/fonts/Vazirmatn-variable.ttf") format("truetype")}
/* MOFA Site canonical component runtime.
 * Semantic contract: mofa.component-foundation.v1 (MOFA One 1.0.12 reference).
 * Runtime is product-local; no cross-subdomain CSS dependency.
 * Legacy Site selectors remain compatibility adapters until semantic migration patches.
 */
/* Button / icon button */
.mofa-ds-button,.mofa-ds-icon-button{
  box-sizing:border-box;appearance:none;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border-strong);
  background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text);
  font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-md);font-weight:var(--mofa-core-font-weight-bold);line-height:1;
  text-decoration:none;cursor:pointer;transition:background var(--mofa-core-motion-standard),border-color var(--mofa-core-motion-standard),color var(--mofa-core-motion-standard),box-shadow var(--mofa-core-motion-standard),opacity var(--mofa-core-motion-standard)
}
.mofa-ds-button{min-height:var(--mofa-core-control-height-md);padding-inline:var(--mofa-core-space-4);border-radius:var(--mofa-core-radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:var(--mofa-core-space-2);white-space:nowrap}
.mofa-ds-button:hover,.mofa-ds-icon-button:hover{background:var(--mofa-core-color-surface-hover);border-color:color-mix(in srgb,var(--mofa-core-color-primary) 24%,var(--mofa-core-color-border-strong))}
.mofa-ds-button--primary{background:var(--mofa-core-color-primary);border-color:var(--mofa-core-color-primary);color:var(--mofa-core-color-on-primary)}
.mofa-ds-button--primary:hover{background:var(--mofa-core-color-primary-hover);border-color:var(--mofa-core-color-primary-hover)}
.mofa-ds-button--secondary{background:var(--mofa-core-color-surface);border-color:var(--mofa-core-color-border-strong);color:var(--mofa-core-color-text)}
.mofa-ds-button--danger{color:var(--mofa-core-color-danger);border-color:color-mix(in srgb,var(--mofa-core-color-danger) 28%,var(--mofa-core-color-border-strong));background:var(--mofa-core-color-surface)}
.mofa-ds-button--danger:hover{background:var(--mofa-core-color-danger-soft);border-color:color-mix(in srgb,var(--mofa-core-color-danger) 42%,var(--mofa-core-color-border-strong))}
.mofa-ds-button--ghost{border-color:transparent;background:transparent}
.mofa-ds-button--sm{min-height:var(--mofa-core-control-height-sm);padding-inline:var(--mofa-core-space-3);font-size:var(--mofa-core-font-size-sm)}
.mofa-ds-button--lg{min-height:var(--mofa-core-control-height-lg);padding-inline:var(--mofa-core-space-5);font-size:var(--mofa-core-font-size-lg)}
.mofa-ds-button--block{width:100%}
.mofa-ds-button[disabled],.mofa-ds-button[aria-disabled="true"],.mofa-ds-icon-button[disabled],.mofa-ds-icon-button[aria-disabled="true"]{opacity:var(--mofa-core-opacity-disabled);cursor:not-allowed;pointer-events:none}
.mofa-ds-button[aria-busy="true"]{cursor:progress}
.mofa-ds-icon-button{width:var(--mofa-core-hit-target);height:var(--mofa-core-hit-target);padding:0;border-radius:var(--mofa-core-radius-sm);display:inline-grid;place-items:center}
.mofa-ds-icon-button svg,.mofa-ds-button svg{width:var(--mofa-core-icon-size-md);height:var(--mofa-core-icon-size-md);flex:0 0 var(--mofa-core-icon-size-md);fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Field / input / select / textarea */
.mofa-ds-form{display:flex;flex-direction:column;gap:var(--mofa-core-editor-row-gap)}
.mofa-ds-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--mofa-core-editor-column-gap);row-gap:var(--mofa-core-editor-row-gap)}
.mofa-ds-field{position:relative;display:flex;flex-direction:column;gap:var(--mofa-core-space-2);min-width:0}
.mofa-ds-field__label{color:var(--mofa-core-color-text);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-sm);font-weight:var(--mofa-core-font-weight-bold);line-height:1.6}
.mofa-ds-field__hint{color:var(--mofa-core-color-text-muted);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-medium);line-height:1.7}
.mofa-ds-field__error{color:var(--mofa-core-color-danger);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-semibold);line-height:1.7}
.mofa-ds-input,.mofa-ds-select,.mofa-ds-textarea{box-sizing:border-box;width:100%;min-height:var(--mofa-core-field-height);padding:var(--mofa-core-field-padding-y) var(--mofa-core-field-padding-x);border:var(--mofa-core-field-border-width) solid var(--mofa-core-color-border-strong);border-radius:var(--mofa-core-field-radius);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-field-font-size);font-weight:var(--mofa-core-font-weight-medium);line-height:1.55;outline:0;box-shadow:none;transition:border-color var(--mofa-core-motion-fast),background var(--mofa-core-motion-fast)}
.mofa-ds-textarea{min-height:max(82px,var(--mofa-core-textarea-min-height));resize:vertical;line-height:var(--mofa-core-line-height-normal)}
.mofa-ds-input::placeholder,.mofa-ds-textarea::placeholder{color:var(--mofa-core-color-text-muted);opacity:var(--mofa-core-opacity-muted)}
.mofa-ds-input:focus,.mofa-ds-select:focus,.mofa-ds-textarea:focus,.mofa-ds-input:focus-visible,.mofa-ds-select:focus-visible,.mofa-ds-textarea:focus-visible{outline:0;border-width:var(--mofa-core-field-border-width);border-color:var(--mofa-core-color-primary);box-shadow:none}
.mofa-ds-input[disabled],.mofa-ds-select[disabled],.mofa-ds-textarea[disabled]{background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text-muted);opacity:var(--mofa-core-opacity-disabled);cursor:not-allowed}
.mofa-ds-field--error :is(.mofa-ds-input,.mofa-ds-select,.mofa-ds-textarea),:is(.mofa-ds-input,.mofa-ds-select,.mofa-ds-textarea)[aria-invalid="true"]{border-color:var(--mofa-core-color-danger)}
/* Floating label: idle label lives inside the control; focus/value moves it onto the top border. */
.mofa-ds-field--floating{position:relative;display:block;min-width:0;margin:0;padding:0}
.mofa-ds-field--floating>.mofa-ds-field__legacy-label{display:none}
.mofa-ds-floating-label{position:absolute;z-index:2;inset-inline-start:var(--mofa-core-field-padding-x);top:50%;max-width:calc(100% - 52px);padding:0 var(--mofa-core-space-1);background:transparent;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-sm)/1.2 var(--mofa-core-font-sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:translateY(-50%);transform-origin:center right;pointer-events:none;transition:top var(--mofa-core-motion-fast),transform var(--mofa-core-motion-fast),font-size var(--mofa-core-motion-fast),color var(--mofa-core-motion-fast),background var(--mofa-core-motion-fast)}
.mofa-ds-field--floating:is(:focus-within,.is-filled)>.mofa-ds-floating-label{top:0;transform:translateY(-50%);padding-inline:6px;background:var(--mofa-core-field-label-bg);color:var(--mofa-core-color-primary);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-bold)}
.mofa-ds-field--floating :is(.mofa-ds-input,.mofa-ds-select,.mofa-ds-textarea){padding-top:11px;padding-bottom:9px}
.mofa-ds-field--floating :is(.mofa-ds-input,.mofa-ds-textarea)::placeholder{color:transparent;opacity:0;transition:opacity var(--mofa-core-motion-fast)}
.mofa-ds-field--floating:is(:focus-within,.is-filled) :is(.mofa-ds-input,.mofa-ds-textarea)::placeholder{color:var(--mofa-core-color-text-muted);opacity:.7}
.mofa-ds-field__required{margin-inline-start:3px;color:var(--mofa-core-color-danger);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-extrabold)}
.mofa-ds-field__clear{position:absolute;z-index:3;inset-inline-end:1px;top:50%;width:var(--mofa-core-hit-target);height:var(--mofa-core-hit-target);display:none;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--mofa-core-color-text-muted);font:700 15px/1 var(--mofa-core-font-sans);cursor:pointer;touch-action:manipulation;transform:translateY(-50%)}
.mofa-ds-field--floating.is-filled>.mofa-ds-field__clear{display:grid}.mofa-ds-field__clear:hover{background:var(--mofa-core-color-surface-hover);color:var(--mofa-core-color-text)}.mofa-ds-field__clear:focus-visible{outline:0;color:var(--mofa-core-color-primary);box-shadow:none}
.mofa-ds-field--floating:has(>.mofa-ds-field__clear) :is(.mofa-ds-input,.mofa-ds-textarea){padding-inline-end:52px}
/* Composite field trigger (search-select/date-time): same field geometry and one-border focus contract. */
.mofa-ds-composite-field{box-sizing:border-box;width:100%;min-height:var(--mofa-core-field-height);padding:var(--mofa-core-field-padding-y) var(--mofa-core-field-padding-x);border:var(--mofa-core-field-border-width) solid var(--mofa-core-color-border-strong);border-radius:var(--mofa-core-field-radius);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text);box-shadow:none;outline:0;transition:border-color var(--mofa-core-motion-fast),background var(--mofa-core-motion-fast)}
.mofa-ds-composite-field:is(:focus,:focus-visible),:is(.mofa-search-select.open,.mofa-jdatetime.open,.contact-jalali.open)>.mofa-ds-composite-field{border-width:var(--mofa-core-field-border-width);border-color:var(--mofa-core-color-primary);box-shadow:none;outline:0}
/* S4-03 Field Foundation V2 — canonical data-entry fallback / floating-label hardening */
.mofa-ds-field--floating.is-select>.mofa-ds-floating-label,.mofa-ds-field--floating.is-composite>.mofa-ds-floating-label{top:0;transform:translateY(-50%);padding-inline:6px;background:var(--mofa-core-field-label-bg);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-bold)}
.mofa-ds-field--floating.is-select:focus-within>.mofa-ds-floating-label,.mofa-ds-field--floating.is-composite:focus-within>.mofa-ds-floating-label{color:var(--mofa-core-color-primary)}
.mofa-ds-field--floating.is-error>.mofa-ds-floating-label,.mofa-ds-field--floating:has([aria-invalid="true"])>.mofa-ds-floating-label{color:var(--mofa-core-color-danger)}
.mofa-ds-field--floating.is-textarea:not(:focus-within):not(.is-filled)>.mofa-ds-floating-label{top:20px}
.mofa-ds-field--floating.is-composite>.mofa-search-select,.mofa-ds-field--floating.is-composite>.mofa-jdatetime{width:100%}
.mofa-ds-field--floating.is-composite .mofa-ds-composite-field{min-height:var(--mofa-core-field-height)}
.mofa-ds-field--floating.is-composite .mofa-ds-composite-field>.mofa-ds-field__legacy-label{display:none}

/* Optional-field reveal / add-more action — one plus only, no decorative icon language. */
.mofa-ds-add-field{box-sizing:border-box;appearance:none;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:5px;width:auto;min-height:var(--mofa-core-add-field-height);padding:3px var(--mofa-core-add-field-padding-x);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-add-field-radius);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text-muted);box-shadow:none;font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-bold);line-height:1.35;white-space:nowrap;cursor:pointer;transition:border-color var(--mofa-core-motion-fast),background var(--mofa-core-motion-fast),color var(--mofa-core-motion-fast)}
.mofa-ds-add-field::before{content:"+";box-sizing:border-box;display:inline-grid;place-items:center;width:var(--mofa-core-add-field-icon-size);height:var(--mofa-core-add-field-icon-size);border:var(--mofa-core-border-width) solid currentColor;border-radius:4px;font-size:10px;font-weight:var(--mofa-core-font-weight-extrabold);line-height:1;opacity:.72}
.mofa-ds-add-field> :is(svg,i,.icon,.contact-addon-mark,[aria-hidden="true"]){display:none}.mofa-ds-add-field::after{content:"";position:absolute;inset-block:calc(var(--mofa-core-add-field-hit-inset)*-1);inset-inline:0}
.mofa-ds-add-field:hover,.mofa-ds-add-field:is(.is-active,.active,[aria-pressed="true"],[aria-expanded="true"]){border-color:color-mix(in srgb,var(--mofa-core-color-primary) 34%,var(--mofa-core-color-border));background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary)}
.mofa-ds-add-field:focus-visible{outline:0;border-color:var(--mofa-core-color-primary);box-shadow:none}.mofa-ds-add-field[disabled],.mofa-ds-add-field[aria-disabled="true"]{opacity:var(--mofa-core-opacity-disabled);cursor:not-allowed;pointer-events:none}
/* Checkbox / radio */
.mofa-ds-check{display:inline-flex;align-items:center;gap:var(--mofa-core-space-2);min-height:var(--mofa-core-hit-target);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-md);font-weight:var(--mofa-core-font-weight-semibold);line-height:1.5;color:var(--mofa-core-color-text);cursor:pointer}
.mofa-ds-check input:is([type="checkbox"],[type="radio"]){width:var(--mofa-core-icon-size-md);height:var(--mofa-core-icon-size-md);margin:0;accent-color:var(--mofa-core-color-primary)}
.mofa-ds-check:has(input:disabled){opacity:var(--mofa-core-opacity-disabled);cursor:not-allowed}

/* Switch */
.mofa-ds-switch{position:relative;display:inline-flex;align-items:center;gap:var(--mofa-core-space-2);min-height:var(--mofa-core-hit-target);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-md);color:var(--mofa-core-color-text);cursor:pointer}
.mofa-ds-switch input{position:absolute;opacity:0;pointer-events:none}
.mofa-ds-switch__track{box-sizing:border-box;width:42px;height:24px;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-border-strong);position:relative;transition:background var(--mofa-core-motion-standard),box-shadow var(--mofa-core-motion-standard)}
.mofa-ds-switch__track::after{content:"";position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:var(--mofa-core-color-surface);box-shadow:var(--mofa-core-shadow-sm);transition:transform var(--mofa-core-motion-standard)}
.mofa-ds-switch input:checked + .mofa-ds-switch__track{background:var(--mofa-core-color-primary)}
.mofa-ds-switch input:checked + .mofa-ds-switch__track::after{transform:translateX(-18px)}
.mofa-ds-switch input:focus-visible + .mofa-ds-switch__track{box-shadow:var(--mofa-core-focus-ring)}
.mofa-ds-switch:has(input:disabled){opacity:var(--mofa-core-opacity-disabled);cursor:not-allowed}

/* Card */
.mofa-ds-card{box-sizing:border-box;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);padding:var(--mofa-core-space-4);color:var(--mofa-core-color-text);box-shadow:var(--mofa-core-shadow-none);min-width:0}
.mofa-ds-card--raised{box-shadow:var(--mofa-core-shadow-md)}
.mofa-ds-card--soft{background:var(--mofa-core-color-surface-soft)}
.mofa-ds-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--mofa-core-space-3);margin-bottom:var(--mofa-core-space-3)}
.mofa-ds-card__title{margin:0;font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-lg);font-weight:var(--mofa-core-font-weight-extrabold);line-height:1.55;color:var(--mofa-core-color-text)}
.mofa-ds-card__meta{color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-sm)}

/* Badge / chip */
.mofa-ds-badge,.mofa-ds-chip{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--mofa-core-space-1);min-height:var(--mofa-core-badge-height);padding:var(--mofa-core-space-1) var(--mofa-core-space-2);border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text-muted);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-bold);line-height:1.4;white-space:nowrap}
.mofa-ds-badge--success{background:var(--mofa-core-color-success-soft);color:var(--mofa-core-color-success)}
.mofa-ds-badge--warning{background:var(--mofa-core-color-warning-soft);color:var(--mofa-core-color-warning)}
.mofa-ds-badge--danger{background:var(--mofa-core-color-danger-soft);color:var(--mofa-core-color-danger)}
.mofa-ds-badge--info{background:var(--mofa-core-color-info-soft);color:var(--mofa-core-color-info)}
.mofa-ds-chip{border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text)}

/* Avatar / divider */
.mofa-ds-avatar{box-sizing:border-box;display:inline-grid;place-items:center;width:var(--mofa-core-control-height-md);height:var(--mofa-core-control-height-md);overflow:hidden;border-radius:50%;background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-sm);font-weight:var(--mofa-core-font-weight-extrabold);line-height:1}
.mofa-ds-avatar--sm{width:var(--mofa-core-control-height-sm);height:var(--mofa-core-control-height-sm);font-size:var(--mofa-core-font-size-xs)}
.mofa-ds-avatar--lg{width:var(--mofa-core-control-height-lg);height:var(--mofa-core-control-height-lg);font-size:var(--mofa-core-font-size-md)}
.mofa-ds-avatar img{width:100%;height:100%;object-fit:cover}
.mofa-ds-divider{box-sizing:border-box;width:100%;height:var(--mofa-core-border-width);border:0;background:var(--mofa-core-color-border);margin:var(--mofa-core-space-4) 0}

/* Alert */
.mofa-ds-alert{box-sizing:border-box;display:flex;align-items:flex-start;gap:var(--mofa-core-space-3);padding:var(--mofa-core-space-3) var(--mofa-core-space-4);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-sm);background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text);font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-md);font-weight:var(--mofa-core-font-weight-medium);line-height:var(--mofa-core-line-height-normal)}
.mofa-ds-alert--success{background:var(--mofa-core-color-success-soft);border-color:color-mix(in srgb,var(--mofa-core-color-success) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-success)}
.mofa-ds-alert--warning{background:var(--mofa-core-color-warning-soft);border-color:color-mix(in srgb,var(--mofa-core-color-warning) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-warning)}
.mofa-ds-alert--danger{background:var(--mofa-core-color-danger-soft);border-color:color-mix(in srgb,var(--mofa-core-color-danger) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-danger)}
.mofa-ds-alert--info{background:var(--mofa-core-color-info-soft);border-color:color-mix(in srgb,var(--mofa-core-color-info) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-info)}

/* Progress / skeleton / spinner */
.mofa-ds-progress{box-sizing:border-box;display:block;width:100%;height:var(--mofa-core-space-2);overflow:hidden;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-surface-soft)}
.mofa-ds-progress__bar{display:block;height:100%;width:var(--mofa-progress-value,0%);border-radius:inherit;background:var(--mofa-core-color-primary);transition:width var(--mofa-core-motion-standard)}
.mofa-ds-skeleton{display:block;min-height:var(--mofa-core-font-size-md);border-radius:var(--mofa-core-radius-xs);background:linear-gradient(90deg,var(--mofa-core-color-surface-soft),color-mix(in srgb,var(--mofa-core-color-surface-soft) 60%,var(--mofa-core-color-border)),var(--mofa-core-color-surface-soft));background-size:220% 100%;animation:mofa-ds-shimmer 1.4s linear infinite}
.mofa-ds-spinner{box-sizing:border-box;display:inline-block;width:var(--mofa-core-icon-size-lg);height:var(--mofa-core-icon-size-lg);border:2px solid color-mix(in srgb,currentColor 24%,transparent);border-top-color:currentColor;border-radius:50%;animation:mofa-ds-spin .8s linear infinite}
@keyframes mofa-ds-spin{to{transform:rotate(360deg)}}

/* Primitive focus contract */
:is(.mofa-ds-button,.mofa-ds-icon-button,.mofa-ds-check input):focus-visible{outline:0;box-shadow:var(--mofa-core-focus-ring);border-color:var(--mofa-core-color-primary)}

/* MOFA UI Canonical Primitive Components — END */

html.mofa-ds-overlay-open,html.mofa-ds-overlay-open body{overflow:hidden}


[data-mofa-required-group]{position:relative}.mofa-ds-required-group-note{grid-column:1/-1;margin:0 0 -4px;color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-semibold)}.mofa-ds-required-group-note::after{content:" *";color:var(--mofa-core-color-danger);font-weight:var(--mofa-core-font-weight-extrabold)}

/* S2-07 canonical dialog completion — retained audit continuity marker. */
/* S3-03 Dialog + Entity Editor Convergence — preserved contract marker */
/* S4-02 Dialog Shell + Header/Footer + Action Policy */
/* MOFA UI Canonical Complex Components & UX Patterns — START
 * These selectors are owned only by MOFA UI Core. Domains/products compose
 * them; domain surfaces compose them through canonical adapters.
 */

/* Tabs */
/* S3-02 Tabs + Selection Convergence — canonical single visual owner. */
.mofa-ds-tabs{box-sizing:border-box;display:flex;align-items:center;gap:var(--mofa-core-space-1);max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap}
.mofa-ds-tabs::-webkit-scrollbar{display:none}
.mofa-ds-tabs--primary{width:100%;padding:var(--mofa-core-space-1);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);box-shadow:var(--mofa-core-shadow-xs)}
.mofa-ds-tabs--context{width:max-content;padding:var(--mofa-core-space-1);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface-soft)}
.mofa-ds-tabs--segmented{width:max-content;padding:3px;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface-soft)}
.mofa-ds-tab{position:relative;box-sizing:border-box;min-height:var(--mofa-core-hit-target);padding:0 var(--mofa-core-space-3);border:var(--mofa-core-border-width) solid transparent;border-radius:var(--mofa-core-radius-sm);background:transparent;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-bold) var(--mofa-core-font-size-md)/1 var(--mofa-core-font-sans);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--mofa-core-space-2);flex:0 0 auto;white-space:nowrap;cursor:pointer;transition:background var(--mofa-core-motion-standard),border-color var(--mofa-core-motion-standard),color var(--mofa-core-motion-standard),box-shadow var(--mofa-core-motion-standard)}
.mofa-ds-tabs--segmented>.mofa-ds-tab{padding-inline:var(--mofa-core-space-2);font-size:var(--mofa-core-font-size-sm)}
.mofa-ds-tab:hover{background:color-mix(in srgb,var(--mofa-core-color-primary) 5%,var(--mofa-core-color-surface));color:var(--mofa-core-color-text)}
.mofa-ds-tab:is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active){background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary);border-color:color-mix(in srgb,var(--mofa-core-color-primary) 22%,var(--mofa-core-color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mofa-core-color-primary) 7%,transparent)}
.mofa-ds-tabs--primary>.mofa-ds-tab:is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active)::after{content:"";position:absolute;inset-inline:var(--mofa-core-space-3);bottom:2px;height:2px;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-primary)}
.mofa-ds-tab__count{min-width:22px;height:22px;padding:0 6px;border-radius:var(--mofa-core-radius-pill);display:inline-grid;place-items:center;background:color-mix(in srgb,var(--mofa-core-color-text-muted) 9%,transparent);color:inherit;font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-extrabold);font-variant-numeric:tabular-nums}
.mofa-ds-tab:is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active)>.mofa-ds-tab__count{background:color-mix(in srgb,var(--mofa-core-color-primary) 12%,transparent)}
@media(max-width:768px){.mofa-ds-tabs--primary{width:calc(100% + (var(--mofa-core-space-4) * 2));max-width:none;margin-inline:calc(var(--mofa-core-space-4) * -1);padding-inline:var(--mofa-core-space-4);border-inline:0;border-radius:0;box-shadow:none}.mofa-ds-tabs--context,.mofa-ds-tabs--segmented{width:100%}}

/* S3-05 Data Surface Convergence — canonical section/data surface owner. */
.mofa-ds-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--mofa-core-space-3);min-width:0;margin:0 0 var(--mofa-core-space-3)}
.mofa-ds-section-header>div:first-child,.mofa-ds-section-header__copy{min-width:0}
.mofa-ds-section-header :is(h2,h3,h4,.mofa-ds-section-header__title){margin:0;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-extrabold) var(--mofa-core-font-size-lg)/1.5 var(--mofa-core-font-sans)}
.mofa-ds-section-header :is(p,.mofa-ds-section-header__meta){margin:var(--mofa-core-space-1) 0 0;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-sm)/1.6 var(--mofa-core-font-sans)}
.mofa-ds-section-header__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--mofa-core-space-2);flex-wrap:wrap}
.mofa-ds-surface-stack{display:grid;gap:var(--mofa-core-space-4);min-width:0}

/* Toolbar / filter bar */
.mofa-ds-toolbar,.mofa-ds-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--mofa-core-space-2);flex-wrap:wrap;min-width:0}
.mofa-ds-toolbar__group,.mofa-ds-filter-bar__group{display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap;min-width:0}
.mofa-ds-filter-bar{padding:var(--mofa-core-space-2) var(--mofa-core-space-3);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface)}
.mofa-ds-filter-bar__search{flex:1 1 260px;min-width:min(100%,220px)}
.mofa-ds-filter-bar__actions{display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap}

/* KPI */
.mofa-ds-kpi{display:flex;flex-direction:column;gap:var(--mofa-core-space-1)}
.mofa-ds-kpi__value{font:var(--mofa-core-font-weight-extrabold) var(--mofa-core-font-size-3xl)/1.25 var(--mofa-core-font-sans);color:var(--mofa-core-color-text)}
.mofa-ds-kpi__label{font:var(--mofa-core-font-weight-semibold) var(--mofa-core-font-size-sm)/1.6 var(--mofa-core-font-sans);color:var(--mofa-core-color-text-muted)}

/* Data table */
.mofa-ds-table-wrap{box-sizing:border-box;width:100%;overflow:auto;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface)}
.mofa-ds-table{width:100%;min-width:720px;border-collapse:collapse;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-md)/1.6 var(--mofa-core-font-sans)}
.mofa-ds-table th,.mofa-ds-table td{padding:10px 14px;border-bottom:var(--mofa-core-border-width) solid var(--mofa-core-color-border);text-align:right;vertical-align:middle}
.mofa-ds-table th{background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-sm);font-weight:var(--mofa-core-font-weight-extrabold);white-space:nowrap}
.mofa-ds-table tbody tr:last-child td{border-bottom:0}
.mofa-ds-table tbody tr:hover td{background:color-mix(in srgb,var(--mofa-core-color-primary) 2.5%,var(--mofa-core-color-surface))}
.mofa-ds-table__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--mofa-core-space-1)}

/* Dropdown */
.mofa-ds-dropdown{position:relative;display:inline-flex;min-width:0}
.mofa-ds-dropdown__menu{box-sizing:border-box;position:absolute;z-index:var(--mofa-core-z-dropdown);top:calc(100% + var(--mofa-core-space-2));inset-inline-end:0;min-width:220px;max-width:min(360px,calc(100vw - var(--mofa-core-space-8)));padding:var(--mofa-core-space-2);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);box-shadow:var(--mofa-core-shadow-popover);display:grid;gap:var(--mofa-core-space-1)}
.mofa-ds-dropdown__menu[hidden]{display:none}
.mofa-ds-dropdown__item{box-sizing:border-box;min-height:var(--mofa-core-control-height-compact);padding:var(--mofa-core-space-2) var(--mofa-core-space-3);border:0;border-radius:var(--mofa-core-radius-sm);background:transparent;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-semibold) var(--mofa-core-font-size-sm)/1.5 var(--mofa-core-font-sans);text-decoration:none;text-align:start;display:flex;align-items:center;gap:var(--mofa-core-space-2);cursor:pointer}
.mofa-ds-dropdown__item:hover,.mofa-ds-dropdown__item:focus-visible{background:var(--mofa-core-color-surface-hover);color:var(--mofa-core-color-text);outline:0}
.mofa-ds-dropdown__item--danger{color:var(--mofa-core-color-danger)}

/* Empty / loading / error state */
.mofa-ds-state{display:grid;place-items:center;min-height:180px;padding:var(--mofa-core-space-6);border:var(--mofa-core-border-width) dashed var(--mofa-core-color-border-strong);border-radius:var(--mofa-core-radius-md);text-align:center;background:var(--mofa-core-color-surface)}
.mofa-ds-state__content{max-width:480px}
.mofa-ds-state__icon{width:var(--mofa-core-control-height-lg);height:var(--mofa-core-control-height-lg);margin:0 auto var(--mofa-core-space-3);display:grid;place-items:center;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text-muted)}
.mofa-ds-state h3{margin:0;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-extrabold) var(--mofa-core-font-size-lg)/1.6 var(--mofa-core-font-sans)}
.mofa-ds-state p{margin:var(--mofa-core-space-2) 0 0;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-md)/var(--mofa-core-line-height-normal) var(--mofa-core-font-sans)}
.mofa-ds-state__actions{display:flex;align-items:center;justify-content:center;gap:var(--mofa-core-space-2);flex-wrap:wrap;margin-top:var(--mofa-core-space-4)}
.mofa-ds-state--error .mofa-ds-state__icon{background:var(--mofa-core-color-danger-soft);color:var(--mofa-core-color-danger)}
@keyframes mofa-ds-shimmer{to{background-position:-220% 0}}

/* Modal/dialog and drawer */
/* S4-02 Entity Editor Shell — one visual owner for header/body/footer/actions. */
body.mofa-dialog-open{overflow:hidden}
.mofa-ds-dialog,.mofa-ds-drawer{position:fixed;inset:0;z-index:var(--mofa-core-z-modal);display:grid;background:transparent}
.mofa-ds-dialog[hidden],.mofa-ds-drawer[hidden]{display:none}
.mofa-ds-dialog{place-items:center;padding:var(--mofa-core-space-4);opacity:0;transition:opacity var(--mofa-core-motion-fast)}
.mofa-ds-dialog.open{opacity:1}
.mofa-ds-dialog__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--mofa-core-color-overlay) 92%,transparent);backdrop-filter:blur(4px)}
.mofa-ds-dialog__panel{position:relative;z-index:1;box-sizing:border-box;width:min(var(--mofa-core-dialog-width-default),calc(100vw - var(--mofa-core-space-8)));max-height:var(--mofa-core-dialog-max-height);display:flex;flex-direction:column;overflow:hidden;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-lg);background:var(--mofa-core-color-surface);box-shadow:var(--mofa-core-shadow-dialog);color:var(--mofa-core-color-text);transform:translateY(8px) scale(.99);transition:transform var(--mofa-core-motion-fast);isolation:isolate}
.mofa-ds-dialog.open .mofa-ds-dialog__panel{transform:none}
.mofa-ds-dialog__panel--compact{width:min(var(--mofa-core-dialog-width-compact),calc(100vw - var(--mofa-core-space-8)))}
.mofa-ds-dialog__panel--create{width:min(var(--mofa-core-dialog-width-default),calc(100vw - var(--mofa-core-space-8)))}
.mofa-ds-dialog__panel--wide{width:min(var(--mofa-core-dialog-width-wide),calc(100vw - var(--mofa-core-space-8)))}
.mofa-ds-dialog__panel--wizard{width:min(var(--mofa-core-dialog-width-wizard),calc(100vw - var(--mofa-core-space-8)))}
.mofa-ds-dialog__panel--fullscreen{width:min(var(--mofa-core-dialog-width-composer),calc(100vw - var(--mofa-core-space-6)));height:min(92dvh,940px);max-height:92dvh}
.mofa-ds-dialog__header{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--mofa-core-space-4);padding:var(--mofa-core-dialog-header-pad-y) var(--mofa-core-dialog-header-pad-x);border-bottom:var(--mofa-core-border-width) solid var(--mofa-core-color-border);background:var(--mofa-core-color-surface)}
.mofa-ds-dialog__heading,.mofa-ds-dialog__header>div:first-child{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--mofa-core-space-1);flex:1}
.mofa-ds-dialog__header .eyebrow{display:none}
.mofa-ds-dialog__header :is(h1,h2,h3,.mofa-ds-dialog__title){margin:0;max-width:none;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-extrabold) var(--mofa-core-font-size-lg)/1.45 var(--mofa-core-font-sans)}
.mofa-ds-dialog__header :is(p,.mofa-ds-dialog__subtitle){margin:0;max-width:76ch;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-sm)/var(--mofa-core-line-height-normal) var(--mofa-core-font-sans)}
.mofa-ds-dialog__body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:var(--mofa-core-dialog-body-pad)}
.mofa-ds-dialog__body :is(.mofa-form-grid,.form-grid,.mofa-ds-form-grid){}
.mofa-ds-dialog__footer{flex:0 0 auto;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;gap:var(--mofa-core-space-2);flex-wrap:wrap;direction:ltr;padding:var(--mofa-core-dialog-footer-pad-y) var(--mofa-core-dialog-body-pad);border-top:var(--mofa-core-border-width) solid var(--mofa-core-color-border);background:var(--mofa-core-color-surface)}
.mofa-ds-dialog__footer>*{direction:rtl}
.mofa-ds-dialog__footer>div:not([role="alert"]){display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap}
.mofa-ds-dialog__footer [role="alert"]{flex:1 0 100%}
.mofa-ds-dialog__footer .mofa-ds-button--primary,.mofa-ds-dialog__footer [data-editor-primary],.mofa-ds-dialog__footer [data-wizard-action="next"],.mofa-ds-dialog__footer [data-wizard-action="save"]{order:0}
.mofa-ds-dialog__footer [data-mofa-cancel],.mofa-ds-dialog__footer .mofa-ds-action--cancel,.mofa-ds-dialog__footer [data-wizard-action="back"]{order:1}
.mofa-ds-dialog__footer .mofa-ds-action--delete,.mofa-ds-dialog__footer [data-edit-only]{order:20;margin-left:auto}
.mofa-ds-dialog.is-create-mode [data-edit-only],.mofa-ds-dialog.is-create-mode .mofa-ds-action--delete[data-edit-only]{display:none}
.mofa-ds-dialog__title{margin:0;font:var(--mofa-core-font-weight-extrabold) var(--mofa-core-font-size-lg)/1.45 var(--mofa-core-font-sans)}
.mofa-ds-dialog__close{box-sizing:border-box;width:var(--mofa-core-dialog-close-size);height:var(--mofa-core-dialog-close-size);min-width:var(--mofa-core-dialog-close-size);min-height:var(--mofa-core-dialog-close-size);flex:0 0 var(--mofa-core-dialog-close-size);display:inline-grid;place-items:center;padding:0;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-field-radius);background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text-muted);font:inherit;font-size:var(--mofa-core-dialog-close-icon-size);font-weight:var(--mofa-core-font-weight-bold);line-height:1;text-decoration:none;cursor:pointer;transition:background var(--mofa-core-motion-fast),border-color var(--mofa-core-motion-fast),color var(--mofa-core-motion-fast)}
.mofa-ds-dialog__close>span{display:block;font:inherit;font-size:inherit;line-height:1}
.mofa-ds-dialog__close:hover,.mofa-ds-dialog__close:focus-visible{background:var(--mofa-core-color-surface-hover);color:var(--mofa-core-color-text);border-color:var(--mofa-core-color-primary);outline:0;box-shadow:none}
.mofa-ds-dialog__form,.mofa-ds-dialog[data-mofa-entity-editor] form.mofa-ds-dialog__form{display:contents}
.mofa-ds-drawer{place-items:stretch start;background:color-mix(in srgb,var(--mofa-core-color-overlay) 80%,transparent)}
.mofa-ds-drawer__panel{box-sizing:border-box;width:min(520px,calc(100vw - var(--mofa-core-space-7)));height:100%;overflow:auto;background:var(--mofa-core-color-surface);border-inline-end:var(--mofa-core-border-width) solid var(--mofa-core-color-border);box-shadow:var(--mofa-core-shadow-dialog);color:var(--mofa-core-color-text)}


/* S4-02 final shell hardening: managed editor structure and action semantics. */
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer{min-height:64px}
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer .mofa-ds-button{min-width:96px}
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer [data-wizard-action="next"],.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer [data-wizard-action="save"],.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer [data-editor-primary]{min-width:112px}
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer [data-wizard-action="back"]{order:1}
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer [data-wizard-action="cancel"]{order:1}
.mofa-ds-dialog[data-mofa-entity-editor][data-wizard-step="2"] .mofa-ds-dialog__footer [data-wizard-action="cancel"],.mofa-ds-dialog[data-mofa-entity-editor][data-wizard-step="3"] .mofa-ds-dialog__footer [data-wizard-action="cancel"]{display:none}
.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__body>.mofa-ds-dialog__footer{margin-inline:calc(var(--mofa-core-dialog-body-pad) * -1);margin-bottom:calc(var(--mofa-core-dialog-body-pad) * -1)}
@media(max-width:768px){.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__header{padding:var(--mofa-core-space-4)}.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__body{padding:var(--mofa-core-space-4)}.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer{padding:var(--mofa-core-space-3) var(--mofa-core-space-4) calc(var(--mofa-core-space-3) + env(safe-area-inset-bottom));min-height:68px}.mofa-ds-dialog[data-mofa-entity-editor] .mofa-ds-dialog__footer .mofa-ds-button{min-height:44px}}

/* Confirmation pattern */
.mofa-ds-confirmation{display:flex;flex-direction:column;gap:var(--mofa-core-space-4)}
.mofa-ds-confirmation__message{margin:0;color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-md)/var(--mofa-core-line-height-normal) var(--mofa-core-font-sans)}
.mofa-ds-confirmation__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--mofa-core-space-2);flex-wrap:wrap}
.mofa-ds-confirmation--danger .mofa-ds-confirmation__message{color:var(--mofa-core-color-danger)}

/* Toast / tooltip */
.mofa-ds-toast-region{position:fixed;z-index:var(--mofa-core-z-toast);left:var(--mofa-core-space-4);bottom:var(--mofa-core-space-4);display:flex;flex-direction:column;gap:var(--mofa-core-space-2);width:min(380px,calc(100vw - var(--mofa-core-space-8)));pointer-events:none}
.mofa-ds-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--mofa-core-space-3);padding:var(--mofa-core-space-3);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);box-shadow:var(--mofa-core-shadow-popover);color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-sm)/1.7 var(--mofa-core-font-sans)}
.mofa-ds-tooltip{position:absolute;z-index:var(--mofa-core-z-toast);max-width:260px;padding:6px 9px;border-radius:var(--mofa-core-radius-xs);background:var(--mofa-core-color-text);color:var(--mofa-core-color-surface);font:var(--mofa-core-font-weight-semibold) var(--mofa-core-font-size-xs)/1.55 var(--mofa-core-font-sans);box-shadow:var(--mofa-core-shadow-popover)}

/* Pagination */
.mofa-ds-pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--mofa-core-space-3);flex-wrap:wrap;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-medium) var(--mofa-core-font-size-sm)/1.5 var(--mofa-core-font-sans)}
.mofa-ds-pagination__pages{display:flex;align-items:center;gap:var(--mofa-core-space-1)}
.mofa-ds-page-button{box-sizing:border-box;min-width:var(--mofa-core-control-height-compact);height:var(--mofa-core-control-height-compact);padding:0 var(--mofa-core-space-2);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-sm);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-bold) var(--mofa-core-font-size-sm)/1 var(--mofa-core-font-sans);display:inline-grid;place-items:center;text-decoration:none;cursor:pointer}
.mofa-ds-page-button[aria-current="page"]{background:var(--mofa-core-color-primary-soft);border-color:color-mix(in srgb,var(--mofa-core-color-primary) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-primary)}

/* Create/Edit and List/Detail composition patterns */
.mofa-ds-create-edit{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:var(--mofa-core-space-6);align-items:start;min-width:0}
.mofa-ds-create-edit__main,.mofa-ds-create-edit__aside{min-width:0;display:flex;flex-direction:column;gap:var(--mofa-core-space-4)}
.mofa-ds-create-edit__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--mofa-core-space-2);flex-wrap:wrap}
.mofa-ds-list-detail{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:var(--mofa-core-space-4);align-items:start;min-width:0}
.mofa-ds-list-detail__list,.mofa-ds-list-detail__detail{min-width:0}

/* Accessible focus contract for complex controls */
:is(.mofa-ds-tab,.mofa-ds-page-button,.mofa-ds-dropdown__item):focus-visible{outline:0;box-shadow:var(--mofa-core-focus-ring);border-color:var(--mofa-core-color-primary)}

/* MOFA UI Canonical Complex Components & UX Patterns — END */

@media(max-width:768px){
  .mofa-ds-page{gap:var(--mofa-core-space-4)}
  .mofa-ds-page-header{flex-direction:column}
  .mofa-ds-page-header__actions{width:100%}
  .mofa-ds-form-grid{grid-template-columns:1fr}
  .mofa-ds-form-grid>.span-2{grid-column:auto}
  .mofa-ds-toolbar{align-items:stretch;flex-direction:column}
  .mofa-ds-toolbar__group{width:100%}
  .mofa-ds-dialog{padding:0}
  .mofa-ds-dialog__panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0}
  .mofa-ds-drawer__panel{width:min(92vw,520px)}
}
@media(prefers-reduced-motion:reduce){
  .mofa-ds-skeleton{animation:none}
  .mofa-ds-dialog,.mofa-ds-drawer,.mofa-ds-toast{scroll-behavior:auto}
}



.mofa-ds-page-header .eyebrow{display:inline-flex;align-items:center;min-height:var(--mofa-core-badge-height);padding:var(--mofa-core-space-1) var(--mofa-core-space-2);border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary);font-size:var(--mofa-core-font-size-xs);font-weight:var(--mofa-core-font-weight-bold)}
/* Core 1.23.3 semantic child aliases: canonical containers own legacy-compatible direct children during migration. */
.mofa-ds-tabs>a,.mofa-ds-tabs>button{position:relative;box-sizing:border-box;min-height:var(--mofa-core-hit-target);padding:0 var(--mofa-core-space-3);border:var(--mofa-core-border-width) solid transparent;border-radius:var(--mofa-core-radius-sm);background:transparent;color:var(--mofa-core-color-text-muted);font:var(--mofa-core-font-weight-bold) var(--mofa-core-font-size-md)/1 var(--mofa-core-font-sans);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--mofa-core-space-2);flex:0 0 auto;white-space:nowrap;cursor:pointer;transition:background var(--mofa-core-motion-standard),border-color var(--mofa-core-motion-standard),color var(--mofa-core-motion-standard),box-shadow var(--mofa-core-motion-standard)}
.mofa-ds-tabs>a:hover,.mofa-ds-tabs>button:hover{background:color-mix(in srgb,var(--mofa-core-color-primary) 5%,var(--mofa-core-color-surface));color:var(--mofa-core-color-text)}
.mofa-ds-tabs>:is(a,button):is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active){background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary);border-color:color-mix(in srgb,var(--mofa-core-color-primary) 22%,var(--mofa-core-color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mofa-core-color-primary) 7%,transparent)}
.mofa-ds-tabs--primary>:is(a,button):is([aria-selected="true"],[aria-current="page"],[aria-pressed="true"],.active)::after{content:"";position:absolute;inset-inline:var(--mofa-core-space-3);bottom:2px;height:2px;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-primary)}
.mofa-ds-pagination a{box-sizing:border-box;min-width:var(--mofa-core-control-height-compact);height:var(--mofa-core-control-height-compact);padding:0 var(--mofa-core-space-2);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-sm);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text);font:var(--mofa-core-font-weight-bold) var(--mofa-core-font-size-sm)/1 var(--mofa-core-font-sans);display:inline-grid;place-items:center;text-decoration:none;cursor:pointer}
.mofa-ds-pagination a:is(.active,[aria-current="page"]){background:var(--mofa-core-color-primary-soft);border-color:color-mix(in srgb,var(--mofa-core-color-primary) 24%,var(--mofa-core-color-border));color:var(--mofa-core-color-primary)}

/* MOFA Site canonical semantic page/pattern runtime.
 * Exact generic page-shell semantics aligned to MOFA One 1.0.12.
 * Product/domain composition remains local to MOFA Site.
 */
.mofa-ds-surface{font-family:var(--mofa-core-font-sans);font-size:var(--mofa-core-font-size-md);line-height:var(--mofa-core-line-height-normal);color:var(--mofa-core-color-text)}
.mofa-ds-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mofa-ds-stack{display:flex;flex-direction:column;gap:var(--mofa-core-space-4)}
.mofa-ds-inline{display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap}
.mofa-ds-page{display:flex;flex-direction:column;gap:var(--mofa-core-space-6);min-width:0}
.mofa-ds-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--mofa-core-space-4);min-width:0}
.mofa-ds-page-header__copy{min-width:0}
.mofa-ds-page-header h1{margin:0;color:var(--mofa-core-color-text);font-size:var(--mofa-core-font-size-2xl);line-height:var(--mofa-core-line-height-tight);font-weight:850;letter-spacing:-.015em}
.mofa-ds-page-header p{margin:var(--mofa-core-space-1) 0 0;color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-md)}
.mofa-ds-page-header__actions{display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap}

/* Shared listing filters: canonical control width must not force one row per field. */
.mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form){display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--mofa-core-space-2);min-width:0}
.mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form)>:is(input:not([type="hidden"]),select){width:auto;min-width:0;max-width:100%;flex:1 1 160px}
.mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form)>input[type="search"]{flex:2 1 240px}
.mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form)>:is(button,.mofa-ds-button){flex:0 0 auto;width:auto;white-space:nowrap}
@media(max-width:640px){
 .mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form)>:is(input:not([type="hidden"]),select){flex-basis:140px}
 .mofa-ds-app-body :is(.mofa-ds-filterbar,.list-toolbar,.taxonomy-list-tools form,.wp-media-toolbar form)>input[type="search"]{flex-basis:100%}
}

/* Core 1.26 product-workspace patterns.
 * Domain modules compose these patterns and never own a parallel visual system.
 */
.mofa-ds-settings-shell{display:flex;flex-direction:column;gap:var(--mofa-core-space-5);min-width:0}
.mofa-ds-settings-shell__nav{position:sticky;top:calc(var(--mofa-adminbar-h,0px) + var(--mofa-core-shell-topbar-height));z-index:var(--mofa-core-z-sticky);padding-block:var(--mofa-core-space-2);background:color-mix(in srgb,var(--mofa-core-color-canvas) 94%,transparent);backdrop-filter:blur(10px)}
.mofa-ds-settings-shell__content{width:100%;min-width:0}

.mofa-ds-master-detail{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:var(--mofa-core-space-5);align-items:start;min-width:0}
.mofa-ds-master-detail__master,.mofa-ds-master-detail__detail{min-width:0}
.mofa-ds-master-detail__master{position:sticky;top:calc(var(--mofa-adminbar-h,0px) + var(--mofa-core-shell-topbar-height) + var(--mofa-core-space-5))}

.mofa-ds-stepper{counter-reset:mofa-step;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--mofa-core-space-2);margin:0;padding:0;list-style:none}
.mofa-ds-stepper__item{counter-increment:mofa-step;display:grid;grid-template-columns:var(--mofa-core-hit-target) minmax(0,1fr);align-items:center;gap:var(--mofa-core-space-2);min-width:0;padding:var(--mofa-core-space-2);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);color:var(--mofa-core-color-text-muted)}
.mofa-ds-stepper__item::before{content:counter(mofa-step);width:var(--mofa-core-control-height-compact);height:var(--mofa-core-control-height-compact);display:grid;place-items:center;border-radius:var(--mofa-core-radius-pill);background:var(--mofa-core-color-surface-soft);color:var(--mofa-core-color-text);font-weight:var(--mofa-core-font-weight-extrabold)}
.mofa-ds-stepper__item:is(.is-active,[aria-current="step"]){border-color:color-mix(in srgb,var(--mofa-core-color-primary) 35%,var(--mofa-core-color-border));background:var(--mofa-core-color-primary-soft);color:var(--mofa-core-color-primary)}
.mofa-ds-stepper__item.is-complete::before{content:"✓";background:var(--mofa-core-color-success-soft);color:var(--mofa-core-color-success)}
.mofa-ds-stepper__copy{min-width:0}.mofa-ds-stepper__copy strong,.mofa-ds-stepper__copy small{display:block}.mofa-ds-stepper__copy small{margin-top:2px;color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-xs)}

.mofa-ds-builder{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:var(--mofa-core-space-5);align-items:start;min-width:0}
.mofa-ds-builder__rail,.mofa-ds-builder__canvas{min-width:0}
.mofa-ds-builder__rail{display:flex;flex-direction:column;gap:var(--mofa-core-space-3)}
.mofa-ds-builder__canvas{display:flex;flex-direction:column;gap:var(--mofa-core-space-4)}

.mofa-ds-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--mofa-core-space-3)}
.mofa-ds-choice-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--mofa-core-space-3);align-items:start;min-height:var(--mofa-core-hit-target);padding:var(--mofa-core-space-4);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-md);background:var(--mofa-core-color-surface);cursor:pointer;transition:background var(--mofa-core-motion-standard),border-color var(--mofa-core-motion-standard),box-shadow var(--mofa-core-motion-standard)}
.mofa-ds-choice-card:hover{border-color:var(--mofa-core-color-border-strong);background:var(--mofa-core-color-surface-hover)}
.mofa-ds-choice-card:has(input:checked){border-color:color-mix(in srgb,var(--mofa-core-color-primary) 42%,var(--mofa-core-color-border));background:var(--mofa-core-color-primary-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--mofa-core-color-primary) 12%,transparent)}
.mofa-ds-choice-card input{margin-top:3px}.mofa-ds-choice-card strong,.mofa-ds-choice-card small{display:block}.mofa-ds-choice-card small{margin-top:var(--mofa-core-space-1);color:var(--mofa-core-color-text-muted);line-height:var(--mofa-core-line-height-normal)}

.mofa-ds-data-list{display:flex;flex-direction:column;border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-lg);background:var(--mofa-core-color-surface);overflow:hidden}
.mofa-ds-data-list__item{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(100px,.7fr)) auto;gap:var(--mofa-core-space-3);align-items:center;min-width:0;padding:var(--mofa-core-space-3) var(--mofa-core-space-4);border-block-end:var(--mofa-core-border-width) solid var(--mofa-core-color-border)}
.mofa-ds-data-list__item:last-child{border-block-end:0}.mofa-ds-data-list__primary{min-width:0}.mofa-ds-data-list__primary strong,.mofa-ds-data-list__primary small{display:block}.mofa-ds-data-list__primary small{margin-top:2px;color:var(--mofa-core-color-text-muted)}

.mofa-ds-sticky-actions{position:sticky;bottom:var(--mofa-core-space-4);z-index:var(--mofa-core-z-sticky);display:flex;align-items:center;justify-content:space-between;gap:var(--mofa-core-space-3);flex-wrap:wrap;min-height:64px;padding:var(--mofa-core-space-3) var(--mofa-core-space-4);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-lg);background:color-mix(in srgb,var(--mofa-core-color-surface) 94%,transparent);box-shadow:var(--mofa-core-shadow-popover);backdrop-filter:blur(12px)}
.mofa-ds-sticky-actions__status{min-width:0;color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-sm)}
.mofa-ds-sticky-actions__buttons{display:flex;align-items:center;gap:var(--mofa-core-space-2);flex-wrap:wrap}

.mofa-ds-empty-state{display:grid;place-items:center;min-height:220px;padding:var(--mofa-core-space-8) var(--mofa-core-space-5);border:var(--mofa-core-border-width) dashed var(--mofa-core-color-border-strong);border-radius:var(--mofa-core-radius-lg);background:var(--mofa-core-color-surface-soft);text-align:center}
.mofa-ds-empty-state__content{max-width:460px}.mofa-ds-empty-state h2,.mofa-ds-empty-state h3{margin:0}.mofa-ds-empty-state p{margin:var(--mofa-core-space-2) 0 var(--mofa-core-space-4);color:var(--mofa-core-color-text-muted)}

@media(max-width:1050px){
 .mofa-ds-data-list__item{grid-template-columns:minmax(180px,1fr) repeat(2,minmax(90px,.6fr)) auto}
 .mofa-ds-data-list__item>[data-collapse="desktop"]{display:none}
}
@media(max-width:900px){
 .mofa-ds-master-detail,.mofa-ds-builder{grid-template-columns:1fr}
 .mofa-ds-master-detail__master{position:static}
}
@media(max-width:760px){
 .mofa-ds-settings-shell{gap:var(--mofa-core-space-4)}
 .mofa-ds-settings-shell__nav{top:calc(var(--mofa-adminbar-h,0px) + var(--mofa-core-shell-topbar-height));margin-inline:calc(var(--mofa-core-space-4) * -1);padding-inline:var(--mofa-core-space-4)}
 .mofa-ds-stepper{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-block-end:var(--mofa-core-space-1)}
 .mofa-ds-stepper__item{flex:0 0 min(82vw,300px);scroll-snap-align:start}
 .mofa-ds-data-list{border:0;background:transparent;gap:var(--mofa-core-space-3);overflow:visible}
 .mofa-ds-data-list__item{grid-template-columns:minmax(0,1fr) auto;padding:var(--mofa-core-space-4);border:var(--mofa-core-border-width) solid var(--mofa-core-color-border);border-radius:var(--mofa-core-radius-lg);background:var(--mofa-core-color-surface)}
 .mofa-ds-data-list__item>[data-label]::before{content:attr(data-label) ": ";color:var(--mofa-core-color-text-muted);font-size:var(--mofa-core-font-size-xs)}
 .mofa-ds-data-list__item>[data-label]{grid-column:1/-1}
 .mofa-ds-sticky-actions{bottom:0;margin-inline:calc(var(--mofa-core-space-4) * -1);border-inline:0;border-end-start-radius:0;border-end-end-radius:0;padding-bottom:calc(var(--mofa-core-space-3) + env(safe-area-inset-bottom))}
}
@media(max-width:560px){
 .mofa-ds-choice-grid{grid-template-columns:1fr}
 .mofa-ds-sticky-actions__buttons{width:100%}.mofa-ds-sticky-actions__buttons>.mofa-ds-button{flex:1 1 auto}
}
/* Core-owned Auth embedded composition. Modules consume this runtime. */
.mofa-auth-embedded{
  --auth-accent:var(--mofa-core-color-primary);
  --auth-ink:var(--mofa-core-color-text);
  --auth-muted:var(--mofa-core-color-text-muted);
  --auth-soft:var(--mofa-core-color-surface-soft);
  --auth-surface:var(--mofa-core-color-surface);
  --auth-line:var(--mofa-core-color-border);
  --auth-line-strong:var(--mofa-core-color-border-strong);
  --auth-success:var(--mofa-core-color-success);
  --auth-danger:var(--mofa-core-color-danger);
  --auth-radius:var(--mofa-core-radius-xl);
  --auth-shadow:var(--mofa-core-shadow-dialog);
  width:100%;
  color:var(--auth-ink);
  font-family:var(--font-body,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  font-size:15px;
  line-height:1.6;
}
.mofa-auth-embedded *,
.mofa-auth-embedded *::before,
.mofa-auth-embedded *::after{box-sizing:border-box}
.mofa-auth-embedded button,
.mofa-auth-embedded input,
.mofa-auth-embedded select,
.mofa-auth-embedded textarea{font:inherit}
.mofa-auth-embedded a{color:inherit}
.mofa-auth-embedded [hidden]{display:none!important}

.mofa-auth-embedded .auth-managed-shell{
  width:min(1180px,calc(100vw - 40px));
  margin-inline:auto;
  padding:clamp(32px,5vw,72px) 0 clamp(56px,7vw,96px);
}
.mofa-auth-embedded .auth-alert{
  width:min(760px,100%);
  margin:0 auto 18px;
  padding:13px 15px;
  border-radius:14px;
  font-size:13px;
  line-height:1.7;
}
.mofa-auth-embedded .auth-alert-error{background:#fff2f4;color:#a71f36;border:1px solid #ffd7de}
.mofa-auth-embedded .auth-alert-success{background:#eefaf5;color:#12633f;border:1px solid #cceede}

.mofa-auth-embedded .auth-profile-page{display:grid;gap:22px}
.mofa-auth-embedded .auth-profile-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:26px;
  padding:26px 28px;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--auth-accent) 10%,transparent),transparent 34%),
    var(--auth-surface);
  border:1px solid var(--auth-line);
  border-radius:24px;
  box-shadow:0 12px 38px rgba(27,39,45,.045);
}
.mofa-auth-embedded .auth-profile-identity{display:flex;align-items:center;gap:16px;min-width:0}
.mofa-auth-embedded .auth-profile-avatar{
  width:58px;height:58px;flex:0 0 58px;
  display:grid;place-items:center;
  border-radius:18px;
  background:color-mix(in srgb,var(--auth-accent) 10%,#fff);
  border:1px solid color-mix(in srgb,var(--auth-accent) 18%,var(--auth-line));
  color:var(--auth-accent);
  font-size:22px;font-weight:850;
}
.mofa-auth-embedded .auth-profile-eyebrow,
.mofa-auth-embedded .auth-section-kicker{
  display:block;
  margin-bottom:5px;
  color:color-mix(in srgb,var(--auth-accent) 82%,#263238);
  font-size:10px;
  font-weight:850;
  letter-spacing:.095em;
}
.mofa-auth-embedded .auth-profile-hero h1{
  margin:0;
  font-size:clamp(28px,3.1vw,42px);
  line-height:1.12;
  letter-spacing:-.04em;
}
.mofa-auth-embedded .auth-profile-hero p{
  margin:7px 0 0;
  color:var(--auth-muted);
  font-size:14px;
}
.mofa-auth-embedded .auth-profile-session{
  flex:0 0 auto;
  min-width:220px;
  display:grid;
  gap:4px;
  padding:12px 14px;
  background:rgba(255,255,255,.76);
  border:1px solid var(--auth-line);
  border-radius:14px;
}
.mofa-auth-embedded .auth-profile-session span{color:var(--auth-muted);font-size:11px}
.mofa-auth-embedded .auth-profile-session strong{font-size:13px;overflow-wrap:anywhere}

.mofa-auth-embedded .auth-profile-layout{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);
  gap:22px;
  align-items:start;
}
.mofa-auth-embedded .auth-profile-main,
.mofa-auth-embedded .auth-profile-aside{min-width:0}
.mofa-auth-embedded .auth-profile-aside{display:grid;gap:16px}
.mofa-auth-embedded .auth-profile-panel{
  background:var(--auth-surface);
  border:1px solid var(--auth-line);
  border-radius:22px;
  box-shadow:0 10px 34px rgba(27,39,45,.04);
  overflow:hidden;
}
.mofa-auth-embedded .auth-section-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:24px 26px 20px;
  border-bottom:1px solid var(--auth-line);
}
.mofa-auth-embedded .auth-section-head h2{
  margin:0;
  font-size:20px;
  line-height:1.3;
  letter-spacing:-.025em;
}
.mofa-auth-embedded .auth-section-head p{
  max-width:610px;
  margin:6px 0 0;
  color:var(--auth-muted);
  font-size:13px;
  line-height:1.7;
}

.mofa-auth-embedded .auth-profile-form{padding:24px 26px 26px}
.mofa-auth-embedded .auth-profile-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.mofa-auth-embedded .auth-field{
  display:grid;
  align-content:start;
  gap:8px;
  min-width:0;
}
.mofa-auth-embedded .auth-field--textarea,
.mofa-auth-embedded .auth-field--select,
.mofa-auth-embedded .auth-field--searchable_select,
.mofa-auth-embedded .auth-field--date,
.mofa-auth-embedded .auth-field--checkbox,
.mofa-auth-embedded .auth-field--toggle{grid-column:1/-1}
.mofa-auth-embedded .auth-field-label{
  color:#344046;
  font-size:12px;
  font-weight:760;
  line-height:1.45;
}
.mofa-auth-embedded .auth-input,
.mofa-auth-embedded .auth-select-trigger{
  width:100%;
  min-height:48px;
  border:1px solid var(--auth-line-strong);
  background:#fff;
  color:var(--auth-ink);
  border-radius:13px;
  padding:0 14px;
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.mofa-auth-embedded textarea.auth-input{
  min-height:120px;
  padding:12px 14px;
  resize:vertical;
}
.mofa-auth-embedded .auth-input:hover{border-color:#c7d0d4}
.mofa-auth-embedded .auth-input:focus,
.mofa-auth-embedded .auth-select-trigger:focus,
.mofa-auth-embedded .auth-select[data-open="1"] .auth-select-trigger{
  border-color:color-mix(in srgb,var(--auth-accent) 55%,var(--auth-line));
  box-shadow:0 0 0 4px color-mix(in srgb,var(--auth-accent) 9%,transparent);
}
.mofa-auth-embedded .auth-input[readonly],
.mofa-auth-embedded .auth-input:disabled{background:#f7f9f9;color:#7c878c}
.mofa-auth-embedded .auth-select-native{appearance:auto}
.mofa-auth-embedded .auth-checkline{
  display:flex;align-items:center;gap:10px;
  min-height:48px;padding:10px 13px;
  border:1px solid var(--auth-line);
  border-radius:13px;background:#fafbfb;
}
.mofa-auth-embedded .auth-checkline input{width:18px;height:18px;accent-color:var(--auth-accent)}

.mofa-auth-embedded .auth-radio-group{display:flex;flex-wrap:wrap;gap:8px}
.mofa-auth-embedded .auth-radio-group label{cursor:pointer}
.mofa-auth-embedded .auth-radio-group input{position:absolute;opacity:0;pointer-events:none}
.mofa-auth-embedded .auth-radio-group span{
  min-height:38px;display:inline-flex;align-items:center;padding:7px 11px;
  border:1px solid var(--auth-line-strong);border-radius:999px;background:#fff;
  color:#5d696f;font-size:12px;font-weight:650;transition:.15s ease
}
.mofa-auth-embedded .auth-radio-group input:checked+span{
  border-color:color-mix(in srgb,var(--auth-accent) 45%,var(--auth-line));
  background:color-mix(in srgb,var(--auth-accent) 8%,#fff);color:var(--auth-ink)
}
.mofa-auth-embedded .auth-form-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid var(--auth-line);
}
.mofa-auth-embedded .auth-primary,
.mofa-auth-embedded .auth-secondary{
  min-height:46px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:12px;
  padding:0 18px;
  font-weight:780;
  cursor:pointer;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}
.mofa-auth-embedded .auth-primary{
  border:1px solid color-mix(in srgb,var(--auth-accent) 82%,#000);
  background:var(--auth-accent);
  color:#fff;
  box-shadow:0 8px 22px color-mix(in srgb,var(--auth-accent) 18%,transparent);
}
.mofa-auth-embedded .auth-secondary{
  border:1px solid var(--auth-line-strong);
  background:#fff;
  color:var(--auth-ink);
}
.mofa-auth-embedded .auth-primary:hover,
.mofa-auth-embedded .auth-secondary:hover{transform:translateY(-1px);filter:brightness(.985)}
.mofa-auth-embedded button:disabled{opacity:.58;cursor:not-allowed;transform:none!important}

.mofa-auth-embedded .auth-extension-sections{
  display:grid;
  gap:12px;
  margin:0;
}
.mofa-auth-embedded .auth-extension-sections > *{margin-top:0!important}
.mofa-auth-embedded .auth-extension-sections .mm-account-card,
.mofa-auth-embedded .auth-extension-sections .mm-account-downloads,
.mofa-auth-embedded .auth-extension-sections .mm-checkout-resume{
  margin:0!important;
  border-radius:22px;
  border-color:var(--auth-line);
  box-shadow:0 10px 34px rgba(27,39,45,.04);
}
.mofa-auth-embedded .auth-extension-sections .mm-account-icon{
  background:color-mix(in srgb,var(--auth-accent) 9%,#fff);
  color:var(--auth-accent);
}
.mofa-auth-embedded .auth-extension-sections .mm-account-action button{
  background:var(--auth-ink);
}

.mofa-auth-embedded .auth-security-panel{padding-bottom:18px}
.mofa-auth-embedded .auth-security-list{display:grid;padding:0 18px}
.mofa-auth-embedded .auth-details{
  margin:0;
  border:0;
  border-bottom:1px solid var(--auth-line);
  border-radius:0;
  padding:0;
}
.mofa-auth-embedded .auth-details:last-child{border-bottom:0}
.mofa-auth-embedded .auth-details summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:70px;
  padding:14px 4px;
  cursor:pointer;
}
.mofa-auth-embedded .auth-details summary::-webkit-details-marker{display:none}
.mofa-auth-embedded .auth-details summary>span{display:grid;gap:3px;min-width:0}
.mofa-auth-embedded .auth-details summary b{font-size:13px;line-height:1.4}
.mofa-auth-embedded .auth-details summary small{
  color:var(--auth-muted);
  font-size:11px;
  font-weight:500;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.mofa-auth-embedded .auth-details summary i{
  flex:0 0 auto;
  color:#8c969a;
  font-style:normal;
  transition:transform .16s ease;
}
.mofa-auth-embedded .auth-details[open] summary i{transform:rotate(180deg)}
.mofa-auth-embedded .auth-form-compact{
  display:grid;
  gap:14px;
  padding:4px 4px 18px;
}
.mofa-auth-embedded .auth-password{position:relative}
.mofa-auth-embedded .auth-password .auth-input{padding-inline-end:48px}
.mofa-auth-embedded .auth-password button{
  position:absolute;
  top:50%;
  inset-inline-end:7px;
  transform:translateY(-50%);
  width:35px;height:35px;
  border:0;border-radius:9px;
  background:#f2f4f5;color:#69757b;
  cursor:pointer;
}
.mofa-auth-embedded .auth-logout{margin:15px 18px 0}
.mofa-auth-embedded .auth-danger-button{
  width:100%;
  min-height:44px;
  border:1px solid #f1cbd2;
  border-radius:12px;
  background:#fff7f8;
  color:var(--auth-danger);
  font-weight:760;
  cursor:pointer;
}

.mofa-auth-embedded .auth-entry-card{
  width:min(520px,100%);
  margin:0 auto;
  padding:32px;
  background:#fff;
  border:1px solid var(--auth-line);
  border-radius:24px;
  box-shadow:var(--auth-shadow);
}
.mofa-auth-embedded .auth-entry-copy{margin-bottom:24px}
.mofa-auth-embedded .auth-entry-copy h1{
  margin:0;
  font-size:clamp(28px,4vw,38px);
  line-height:1.15;
  letter-spacing:-.04em;
}
.mofa-auth-embedded .auth-entry-copy p{
  margin:9px 0 0;
  color:var(--auth-muted);
  font-size:14px;
}
.mofa-auth-embedded .auth-form{display:grid;gap:16px}
.mofa-auth-embedded .auth-method-tabs{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;margin:0 0 18px;padding:4px;
  border:1px solid var(--auth-line);border-radius:13px;background:#f7f9f9;
}
.mofa-auth-embedded .auth-method-tabs button{
  min-height:40px;border:0;border-radius:9px;background:transparent;color:#69757b;cursor:pointer
}
.mofa-auth-embedded .auth-method-tabs button.active{
  background:#fff;color:var(--auth-ink);font-weight:760;box-shadow:0 3px 10px rgba(27,39,45,.06)
}
.mofa-auth-embedded .auth-divider{
  display:flex;align-items:center;gap:12px;
  margin:18px 0;color:#8a9499;font-size:11px;
}
.mofa-auth-embedded .auth-divider::before,
.mofa-auth-embedded .auth-divider::after{content:"";height:1px;background:var(--auth-line);flex:1}
.mofa-auth-embedded .auth-google-button{
  min-height:46px;display:flex;align-items:center;justify-content:center;gap:10px;
  border:1px solid var(--auth-line-strong);border-radius:12px;background:#fff;
  color:#202124;text-decoration:none;font-weight:700
}
.mofa-auth-embedded .auth-google-g{font-size:17px;font-weight:850;color:#4285f4}
.mofa-auth-embedded .auth-terms{
  margin:22px 0 0;color:#889398;font-size:11px;line-height:1.85;text-align:center
}
.mofa-auth-embedded .auth-terms a{color:#526068}

.mofa-auth-embedded .auth-field-error{color:var(--auth-danger);font-size:11px;line-height:1.5}
.mofa-auth-embedded .auth-field[data-error="1"] .auth-input{border-color:#e07c8e;box-shadow:0 0 0 3px #fff0f3}
.mofa-auth-embedded .auth-inline-status{
  display:inline-flex;margin-inline-start:7px;padding:3px 6px;border-radius:999px;
  color:var(--auth-accent);background:color-mix(in srgb,var(--auth-accent) 8%,#fff);
  font-size:9px;font-weight:800
}
.mofa-auth-embedded .auth-honeypot{position:absolute;inset:0 auto auto 0;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;opacity:0;pointer-events:none}

.mofa-auth-embedded .auth-jalali{position:relative}
.mofa-auth-embedded .auth-date-trigger{display:flex;align-items:center;justify-content:space-between;text-align:start;cursor:pointer}
.mofa-auth-embedded .auth-calendar{
  position:absolute;z-index:40;top:calc(100% + 8px);inset-inline-start:0;
  width:min(340px,calc(100vw - 56px));
  padding:12px;background:#fff;border:1px solid var(--auth-line);
  border-radius:16px;box-shadow:0 20px 55px rgba(26,38,44,.16)
}
.mofa-auth-embedded .auth-cal-head{display:grid;grid-template-columns:36px 1fr 1fr 36px;align-items:center;gap:6px}
.mofa-auth-embedded .auth-cal-head button,
.mofa-auth-embedded .auth-cal-actions button{
  min-height:34px;border:0;border-radius:9px;background:#f3f5f6;color:#3d494f;cursor:pointer
}
.mofa-auth-embedded .auth-cal-head .auth-cal-title{font-weight:780;background:transparent}
.mofa-auth-embedded .auth-cal-submenu{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;max-height:190px;overflow:auto;padding:8px 0}
.mofa-auth-embedded .auth-cal-submenu button{border:0;background:#f6f8f8;padding:7px;border-radius:8px;cursor:pointer}
.mofa-auth-embedded .auth-cal-week,
.mofa-auth-embedded .auth-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.mofa-auth-embedded .auth-cal-week{margin-top:9px;color:#929ca0;font-size:10px;text-align:center}
.mofa-auth-embedded .auth-cal-grid{margin-top:6px}
.mofa-auth-embedded .auth-cal-grid button{border:0;background:transparent;aspect-ratio:1;border-radius:9px;cursor:pointer}
.mofa-auth-embedded .auth-cal-grid button:hover{background:#f2f5f5}
.mofa-auth-embedded .auth-cal-grid button[data-selected="1"]{background:var(--auth-accent);color:#fff}
.mofa-auth-embedded .auth-cal-grid button:disabled{opacity:.22;cursor:default}
.mofa-auth-embedded .auth-cal-actions{display:flex;justify-content:space-between;gap:8px;margin-top:10px}

.mofa-auth-embedded .auth-captcha{
  display:grid;gap:10px;padding:12px;background:#fafbfb;border:1px solid var(--auth-line);border-radius:13px
}
.mofa-auth-embedded .auth-captcha-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mofa-auth-embedded .auth-captcha img{width:210px;max-width:62%;height:68px;object-fit:contain;border-radius:10px}
.mofa-auth-embedded .auth-identity-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}

.mofa-auth-embedded[dir="ltr"]{text-align:left}
.mofa-auth-embedded[dir="rtl"]{text-align:right}
.mofa-auth-embedded[dir="ltr"] .auth-profile-session{text-align:left}
.mofa-auth-embedded[dir="rtl"] .auth-profile-session{text-align:right}

@media(max-width:960px){
  .mofa-auth-embedded .auth-managed-shell{width:min(100% - 28px,820px);padding-top:34px}
  .mofa-auth-embedded .auth-profile-layout{grid-template-columns:1fr}
  .mofa-auth-embedded .auth-profile-aside{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:start
  }
  .mofa-auth-embedded .auth-security-panel{min-width:0}
  .mofa-auth-embedded .auth-extension-sections{min-width:0}
}

@media(max-width:700px){
  .mofa-auth-embedded .auth-managed-shell{width:min(100% - 20px,660px);padding:22px 0 56px}
  .mofa-auth-embedded .auth-profile-hero{
    align-items:flex-start;flex-direction:column;padding:20px;border-radius:20px
  }
  .mofa-auth-embedded .auth-profile-session{width:100%;min-width:0}
  .mofa-auth-embedded .auth-profile-fields{grid-template-columns:1fr;gap:15px}
  .mofa-auth-embedded .auth-field{grid-column:1/-1!important}
  .mofa-auth-embedded .auth-profile-form{padding:20px}
  .mofa-auth-embedded .auth-section-head{padding:20px}
  .mofa-auth-embedded .auth-profile-aside{grid-template-columns:1fr}
  .mofa-auth-embedded .auth-form-actions{justify-content:stretch}
  .mofa-auth-embedded .auth-primary{width:100%}
  .mofa-auth-embedded .auth-entry-card{padding:24px 20px;border-radius:20px}
}

@media(max-width:480px){
  .mofa-auth-embedded{font-size:14px}
  .mofa-auth-embedded .auth-managed-shell{width:calc(100% - 16px)}
  .mofa-auth-embedded .auth-profile-hero{padding:17px}
  .mofa-auth-embedded .auth-profile-avatar{width:50px;height:50px;flex-basis:50px;border-radius:15px;font-size:19px}
  .mofa-auth-embedded .auth-profile-hero h1{font-size:28px}
  .mofa-auth-embedded .auth-profile-hero p{font-size:13px}
  .mofa-auth-embedded .auth-profile-form,
  .mofa-auth-embedded .auth-section-head{padding:17px}
  .mofa-auth-embedded .auth-security-list{padding:0 14px}
  .mofa-auth-embedded .auth-logout{margin-inline:14px}
  .mofa-auth-embedded .auth-input,
  .mofa-auth-embedded .auth-primary,
  .mofa-auth-embedded .auth-secondary{font-size:16px}
  .mofa-auth-embedded .auth-identity-input{grid-template-columns:1fr}
  .mofa-auth-embedded .auth-identity-input .auth-secondary{width:100%}
  .mofa-auth-embedded .auth-captcha-row{align-items:flex-start;flex-direction:column}
  .mofa-auth-embedded .auth-captcha img{max-width:100%}
}

@media(prefers-reduced-motion:reduce){
  .mofa-auth-embedded *,
  .mofa-auth-embedded *::before,
  .mofa-auth-embedded *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
