/* Approved UI-01A tokens, scoped to migrated interactions; legacy pages keep their layout. */
.arta-dialog, .arta-toolbar, .arta-dialog-trigger {
    --arta-surface: #fff; --arta-ink: #182b34; --arta-muted: #566972;
    --arta-line: #dce4e6; --arta-border: #788c91; --arta-brand: #14675f;
    --arta-on-brand: #fff; --arta-subtle: #eff3f3; --arta-danger: #a52a3e;
    --arta-danger-soft: #fff0f2; --arta-focus: #286eb7;
    --arta-glow: rgb(17 160 138 / 18%);
}
.mud-theme-dark .arta-dialog, .mud-theme-dark .arta-toolbar, .mud-theme-dark .arta-dialog-trigger,
[data-theme="dark"] .arta-dialog {
    --arta-surface: #18272e; --arta-ink: #edf4f5; --arta-muted: #b6c8cf;
    --arta-line: #354951; --arta-border: #7f989f; --arta-brand: #8bd6c7;
    --arta-on-brand: #102e2a; --arta-subtle: #20323a; --arta-danger: #ffb4c1;
    --arta-danger-soft: #462a34; --arta-focus: #9bcaff; --arta-glow: rgb(94 220 193 / 22%);
}
dialog[data-arta-dialog] {
    box-sizing: border-box; padding: 0; margin: auto;
    width: min(620px, calc(100% - 40px)); max-width: none;
    max-height: calc(100dvh - 48px); color: var(--arta-ink); background: var(--arta-surface);
    border: 1px solid var(--arta-line); border-radius: 18px;
    box-shadow: 0 24px 90px rgb(9 29 33 / 24%), 0 0 28px var(--arta-glow);
    font: 15px/1.8 Vazirmatn, Tahoma, Arial, sans-serif; overflow: hidden;
}
dialog[data-arta-dialog]::backdrop { background: rgb(12 28 33 / 52%); backdrop-filter: blur(3px); }
dialog[data-arta-dialog][open] { display: flex; flex-direction: column; }
dialog[data-arta-dialog] form { display: flex; flex-direction: column; min-height: 0; margin: 0; max-height: inherit; }
.arta-dialog__header { flex: 0 0 auto; padding: 22px 26px 16px; border-bottom: 1px solid var(--arta-line); }
.arta-dialog__header h2 { margin: 0; font: 700 21px/1.6 Vazirmatn, Tahoma, sans-serif; color: inherit; }
.arta-dialog__header p { margin: 6px 0 0; color: var(--arta-muted); }
.arta-dialog__body { padding: 24px 26px; overflow: auto; overscroll-behavior: contain; min-height: 0; }
.arta-dialog__body label { display: grid; gap: 7px; margin-bottom: 18px; font-weight: 600; }
.arta-dialog__body :is(input:not([type="hidden"]):not([type="checkbox"]),select,textarea) {
    box-sizing: border-box; width: 100%; min-height: 46px; padding: 10px 12px;
    border: 1px solid var(--arta-border); border-radius: 10px;
    color: var(--arta-ink); background: var(--arta-surface); font: inherit; font-weight: 400;
}
.arta-dialog__body textarea { resize: vertical; min-height: 96px; }
.arta-dialog__body input[type="checkbox"] { width: 20px; height: 20px; accent-color: var(--arta-brand); }
.arta-dialog__body label:has(input[type="checkbox"]) { display: flex; align-items: center; gap: 10px; }
.arta-dialog__body small { color: var(--arta-muted); font-weight: 400; }
.arta-dialog__footer {
    flex: 0 0 auto; display: flex; flex-wrap: wrap; gap: 10px;
    padding: 16px 26px; border-top: 1px solid var(--arta-line); background: var(--arta-surface);
}
.arta-dialog button, .arta-dialog-trigger, .arta-toolbar button {
    box-sizing: border-box; min-height: 44px; border: 1px solid var(--arta-border); border-radius: 10px;
    padding: 8px 18px; font: 600 14px/1.8 Vazirmatn, Tahoma, sans-serif;
    color: var(--arta-ink); background: var(--arta-surface); cursor: pointer;
    transition: box-shadow 150ms, background-color 150ms;
}
.arta-dialog :is(button[type="submit"],.arta-primary), .arta-dialog-trigger {
    color: var(--arta-on-brand); background: var(--arta-brand); border-color: var(--arta-brand);
    box-shadow: 0 2px 8px var(--arta-glow), 0 0 15px var(--arta-glow);
}
.arta-dialog .arta-danger { color: var(--arta-danger); border-color: var(--arta-danger); background: var(--arta-danger-soft); box-shadow: none; }
.arta-dialog :is(button,input,textarea,select,a):focus-visible, .arta-dialog-trigger:focus-visible {
    outline: 3px solid var(--arta-focus); outline-offset: 3px;
}
.arta-dialog button:hover:not(:disabled), .arta-dialog-trigger:hover:not(:disabled) { box-shadow: 0 0 22px var(--arta-glow); }
.arta-dialog :disabled { cursor: default; opacity: .6; box-shadow: none !important; }
.arta-dialog__error { padding: 12px 14px; border: 1px solid var(--arta-danger); border-radius: 10px; color: var(--arta-danger); background: var(--arta-danger-soft); }
.arta-dialog__status { color: var(--arta-muted); margin: 12px 0 0; }
.arta-dialog__discard { border: 1px solid var(--arta-border); border-radius: 10px; padding: 14px; background: var(--arta-subtle); }
.arta-dialog__discard p { margin: 0 0 10px; }
.arta-dialog__discard button { margin-inline-end: 8px; }
.arta-dialog [hidden] { display: none !important; }
.arta-dialog__retry { margin-top: 12px; }
.arta-dialog__fields.cc-form { width: 100%; max-width: none; }
.arta-dialog__fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 18px; }
.arta-field--wide { grid-column: 1 / -1; }
.arta-dialog__header:has(.arta-dialog__close) { display: flex; justify-content: space-between; gap: 18px; }
.arta-dialog .arta-dialog__close { flex: 0 0 44px; padding: 0; font-size: 24px; align-self: start; }
.arta-dialog :is(button.arta-button--danger,button.cc-danger) { color: var(--arta-danger); border-color: var(--arta-danger); background: var(--arta-danger-soft); box-shadow: none; }
.arta-list-toolbar, .arta-list-pager { display: flex; gap: 14px; flex-wrap: wrap; align-items: end; margin: 18px 0; }
.arta-list-toolbar label { display: grid; gap: 6px; }
.arta-list-toolbar :is(input,select), .arta-list-toolbar button, .arta-list-pager button { font: inherit; min-height: 44px; border-radius: 10px; padding: 8px 12px; border: 1px solid var(--mud-palette-lines-inputs,#788c91); background: var(--mud-palette-surface,#fff); color: var(--mud-palette-text-primary,#182b34); }
.arta-toolbar { display: flex; flex-wrap: wrap; gap: 14px; align-items: end; margin: 20px 0; padding: 18px; border: 1px solid var(--arta-line); border-radius: 14px; color: var(--arta-ink); background: var(--arta-surface); }
.arta-toolbar label { display: grid; gap: 6px; }
.arta-toolbar :is(input,select) { min-height: 44px; padding: 8px 12px; font: inherit; color: inherit; background: var(--arta-surface); border: 1px solid var(--arta-border); border-radius: 10px; }
/* Native form fallback remains reachable when the enhancement module is unavailable. */
html:not(.arta-dialog-enhanced) dialog[data-arta-dialog]:not([data-dialog-interactive]):not([open]) {
    display: block; position: static; margin: 20px 0; max-height: none; box-shadow: none;
}
html:not(.arta-dialog-enhanced) [data-dialog-open] { display: none; }
@media (max-width: 600px) {
    dialog[data-arta-dialog] { width: 100%; height: 100dvh; max-height: 100dvh; border-radius: 0; border: 0; }
    dialog[data-arta-dialog] form { height: 100%; }
    .arta-dialog__header { padding: 18px 20px 14px; }
    .arta-dialog__body { flex: 1 1 auto; padding: 20px; }
    .arta-dialog__footer { padding: 14px 20px max(14px, env(safe-area-inset-bottom)); }
    .arta-dialog__footer button { flex: 1 1 auto; }
    .arta-toolbar { align-items: stretch; }
    .arta-toolbar label { width: 100%; }
    .arta-dialog__fields { grid-template-columns: minmax(0,1fr); }
    .arta-list-toolbar label { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .arta-dialog *, .arta-dialog-trigger { transition: none !important; animation: none !important; } }
@media (forced-colors: active) { dialog[data-arta-dialog], .arta-dialog button { border: 1px solid CanvasText; box-shadow: none; } }
@media print { dialog[data-arta-dialog], [data-dialog-open] { display: none !important; } }
