@font-face{font-family:"Vazir";src:url("../fonts/vazir-regular.398b39dd0060.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Vazir";src:url("../fonts/vazir-bold.8cea4a726814.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"B Nazanin";src:url("../fonts/b-nazanin-regular.1d81cf12cfb3.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"B Nazanin";src:url("../fonts/b-nazanin-bold.991c306aad9d.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"B Zar";src:url("../fonts/b-zar-regular.757c8b734389.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"B Zar";src:url("../fonts/b-zar-bold.94dd3bf3ed61.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}

:root{
  --brand-primary:#2f3f8f;--brand-primary-dark:#253374;--brand-secondary:#3f8bc5;
  --brand-secondary-soft:#eaf4fb;--brand-gray:#5e6064;--brand-gray-soft:#f3f4f6;
  --bg:#f4f6f9;--surface:#fff;--line:#dce2ea;--text:#202d3a;--muted:#68798a;
  --success:#167c5a;--warning:#9a6509;--danger:#a53131;
  --radius-sm:8px;--radius-md:13px;--radius-lg:18px;
  --shadow:0 10px 30px rgba(37,51,116,.08);
  --font-ui:"Vazir",Tahoma,"Segoe UI",sans-serif;
  --font-document:"B Nazanin","Vazir",Tahoma,sans-serif;
  --font-accent:"B Zar","Vazir",Tahoma,sans-serif;
}

/* SMS center */
.button-row { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; }
.filter-form { display: flex; flex-wrap: wrap; align-items: end; gap: .75rem; }
.filter-form p { margin: 0; min-width: 13rem; flex: 1; }
.field-help { color: var(--muted); font-size: .9rem; margin-top: -.5rem; }
.error-text { color: #a61b1b; font-size: .9rem; }
.notice { padding: .8rem 1rem; border-radius: .75rem; background: #f2f7f5; border: 1px solid #cfe2db; margin: 1rem 0; }
@media (max-width: 760px) {
  .filter-form, .button-row { align-items: stretch; }
  .filter-form > *, .button-row > * { width: 100%; }
}

*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);line-height:1.7}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.document-text{font-family:var(--font-document);font-size:1.1rem}
.font-zar{font-family:var(--font-accent)}

.topbar{min-height:92px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;padding:8px 4vw;border-bottom:3px solid var(--brand-primary);box-shadow:0 4px 18px rgba(37,51,116,.08)}
.brand{display:flex;align-items:center;gap:16px;min-width:0}
.brand-logo{display:block;width:245px;height:74px;object-fit:contain;object-position:right center}
.brand-divider{width:1px;height:46px;background:var(--line)}
.platform-name{display:flex;flex-direction:column;color:var(--brand-primary);white-space:nowrap}
.platform-name strong{font-weight:700}
.platform-name small{color:var(--brand-gray)}
.top-actions{display:flex;align-items:center;gap:12px}
.company-switcher{display:flex;align-items:center;gap:8px;padding:6px 9px;background:var(--brand-gray-soft);border-radius:var(--radius-sm)}
.company-switcher label{font-size:12px;color:var(--muted)}
.company-switcher select{max-width:210px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:7px 9px}
.user-chip{padding:7px 12px;color:var(--brand-primary);background:var(--brand-secondary-soft);border-radius:20px;font-size:13px}
.link-button{border:1px solid var(--line);background:var(--surface);color:var(--brand-primary);border-radius:var(--radius-sm);padding:7px 11px;cursor:pointer}
.link-button:hover{background:var(--brand-gray-soft)}

.page-shell{max-width:1440px;margin:0 auto;padding:32px 4vw 64px}
.auth-shell{min-height:100vh;display:grid;place-items:center}
.auth-card,.setup-card,.panel,.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.auth-card{width:min(440px,94vw);padding:36px;text-align:center;border-top:4px solid var(--brand-primary)}
.auth-brand-logo{display:block;width:min(330px,100%);height:auto;margin:0 auto 20px}
.auth-logo{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;background:linear-gradient(135deg,var(--brand-secondary),var(--brand-primary));color:#fff;font-weight:700;border-radius:14px}
.auth-card h1,.setup-card h1,.dashboard-head h1,.section-title h1{margin:0 0 6px;color:var(--brand-primary)}
.auth-card>p,.setup-card p,.section-title p,.dashboard-head p{color:var(--muted);margin-top:5px}

.stack-form{display:grid;gap:16px;text-align:right;margin-top:24px}
.stack-form label,.stack-form p{display:grid;gap:7px;margin:0;font-weight:700;color:var(--text)}
.stack-form p:has(input[type=checkbox]){display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:28px}
.stack-form p:has(input[type=checkbox]) label{display:inline-flex;align-items:center;margin:0;line-height:1.5}
.stack-form input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:0;align-self:center;accent-color:var(--brand-secondary)}
.stack-form input:not([type=checkbox]),.stack-form textarea,.stack-form select{width:100%;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:11px 12px;background:#fbfcfd;outline:none}
.stack-form input:focus,.stack-form textarea:focus,.stack-form select:focus{border-color:var(--brand-secondary);box-shadow:0 0 0 3px rgba(63,139,197,.15)}
.checkbox-label{grid-template-columns:auto 1fr;align-items:center;font-weight:400!important}
.primary-button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:var(--radius-sm);background:linear-gradient(100deg,var(--brand-primary),var(--brand-secondary));color:#fff;padding:11px 18px;font-weight:700;cursor:pointer}
.primary-button:hover{background:var(--brand-primary-dark)}
.form-errors,.errorlist{color:var(--danger);font-size:13px;list-style:none;padding:0}

.setup-card{width:min(800px,94vw);padding:34px;display:grid;grid-template-columns:1fr 190px;gap:24px;align-items:center;border-top:4px solid var(--brand-primary)}
.setup-card form{grid-column:1/-1}.qr{width:180px;border:1px solid var(--line);border-radius:10px}.secret{direction:ltr;text-align:left;background:var(--brand-gray-soft);padding:10px;border-radius:8px;overflow:auto}
.eyebrow{font-family:var(--font-accent);font-size:14px;font-weight:700;color:var(--brand-secondary)}

.dashboard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;padding-right:16px;border-right:4px solid var(--brand-secondary)}
.status-card{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);padding:14px 18px;border-radius:var(--radius-md)}
.status-card div{display:flex;flex-direction:column}.status-card small{color:var(--muted)}
.status-dot{width:10px;height:10px;border-radius:50%;background:#25a875;box-shadow:0 0 0 5px rgba(37,168,117,.1)}

.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.quick-card{padding:20px;background:linear-gradient(135deg,var(--surface),#f9fbfd);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;flex-direction:column;transition:.2s;border-top:3px solid var(--brand-primary)}
.quick-card:hover{transform:translateY(-2px);border-color:var(--brand-secondary);box-shadow:var(--shadow)}
.quick-card span{font-family:var(--font-accent);font-size:14px;color:var(--brand-secondary);font-weight:700}.quick-card strong{color:var(--brand-primary)}.quick-card small{color:var(--muted)}
.section-title{display:flex;justify-content:space-between;align-items:end;margin:34px 0 15px}.section-title h2{margin:0;color:var(--brand-primary)}

.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.module-card{position:relative;display:grid;grid-template-columns:54px 1fr;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:18px;min-height:140px}
.module-card.planned{background:#fafbfc}.module-icon{width:50px;height:50px;border-radius:12px;background:var(--brand-secondary-soft);color:var(--brand-primary);display:grid;place-items:center;font-weight:700}
.module-card h3{font-size:16px;margin:3px 0;color:var(--brand-primary)}.module-card p{font-size:13px;color:var(--muted);margin:0}
.module-card:has(.card-actions){min-height:180px;padding-bottom:46px}.card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.danger-button{color:var(--danger)!important;border-color:#efb9b9!important}
.badge{display:inline-flex;width:max-content;border-radius:18px;padding:3px 9px;background:#fff3dc;color:var(--warning);font-size:11px}.module-card>.badge{position:absolute;bottom:13px;left:13px}.badge.ready{background:#e5f5ef;color:var(--success)}

.two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:24px;border-top:3px solid var(--brand-primary)}.panel h2{margin-top:0;color:var(--brand-primary)}.check-list{padding-right:20px}.check-list li{margin:10px 0}
.table-card{overflow:auto;margin-top:20px;border-radius:var(--radius-md)}table{border-collapse:collapse;width:100%;min-width:700px}th,td{padding:14px 16px;text-align:right;border-bottom:1px solid #e7edf2}th{background:var(--brand-primary);color:#fff;font-size:12px}td small{display:block;color:var(--muted)}tbody tr:hover{background:var(--brand-secondary-soft)}
.truncate{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.messages{display:grid;gap:8px;margin-bottom:16px}.message{padding:12px 15px;border-radius:var(--radius-sm);background:var(--brand-secondary-soft)}.message.success{background:#e5f5ef;color:#126145}.message.error{background:#fdecec;color:#8a2929}
.empty-state{grid-column:1/-1;padding:30px;text-align:center;color:var(--muted);background:var(--surface);border:1px dashed #cbd7e0;border-radius:var(--radius-md)}
.inline-form{display:inline;margin-right:8px}.small-button{border:1px solid #cbd7e0;background:var(--surface);border-radius:7px;padding:4px 8px;font-size:11px;cursor:pointer}
.site-footer{max-width:1440px;margin:0 auto;padding:16px 4vw 24px;border-top:1px solid var(--line);color:var(--muted);display:flex;justify-content:space-between;font-size:12px}
.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:18px;color:var(--muted);font-size:13px}.breadcrumbs a{color:var(--brand-primary);font-weight:700}.breadcrumb-back{margin-right:auto}.select-search{margin-bottom:7px}.catalog-import-panel{margin-top:22px}

/* Inventory module */
.inventory-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.inventory-stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:18px;border-right:4px solid var(--brand-secondary);display:flex;flex-direction:column;gap:6px}
.inventory-stat span{font-size:12px;color:var(--muted)}.inventory-stat strong{font-size:28px;color:var(--brand-primary)}
.inventory-actions{margin-bottom:28px}.inventory-search{display:flex;gap:10px;margin-bottom:16px}.inventory-search input{flex:1;min-width:0}
.inventory-form-panel{max-width:820px;margin:auto}.form-actions{display:flex;gap:10px;align-items:center;margin-top:10px}
.inventory-detail-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(320px,1.2fr);gap:18px}
.inventory-identity{display:grid;grid-template-columns:1fr 120px;gap:16px;align-items:start}.inventory-identity dl{grid-column:1/-1;display:grid;grid-template-columns:130px 1fr;gap:8px 12px;margin:0}.inventory-identity dt{color:var(--muted)}.inventory-identity dd{margin:0;font-weight:700}
.inventory-main-image{width:100%;max-height:260px;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.inventory-qr{width:120px;height:120px;border:1px solid var(--line);border-radius:var(--radius-sm)}
.inventory-upload-grid{margin-top:22px}.inventory-document-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.inventory-document-grid .panel{padding:18px}.inventory-document-grid ul{padding-right:18px}
.inventory-code-chip{display:inline-block;margin:3px;padding:3px 9px;border-radius:16px;background:var(--brand-secondary-soft);color:var(--brand-primary)}
.quick-customer-fields{margin:14px 0;padding:14px;border:1px dashed var(--brand-secondary);border-radius:var(--radius-sm);background:var(--brand-secondary-soft)}.quick-customer-fields legend{padding:0 8px;color:var(--brand-primary);font-weight:700}.quick-customer-fields small{color:var(--muted)}
.inventory-definition-list{display:grid;grid-template-columns:120px 1fr;gap:8px 12px}.inventory-definition-list dt{color:var(--muted)}.inventory-definition-list dd{margin:0;font-weight:700}
.inventory-line-form{margin-top:22px}.inventory-notice{margin:12px 0;padding:12px 14px;border-right:4px solid var(--warning);background:#fff8e8;border-radius:var(--radius-sm);color:#704b08}.inventory-success{padding:12px 14px;border-right:4px solid var(--success);background:#e5f5ef;border-radius:var(--radius-sm);color:#126145}
.transition-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;margin:18px 0}.transition-summary>div:not(.transition-arrow){padding:18px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--brand-gray-soft);display:grid;gap:5px;text-align:center}.transition-summary span{color:var(--muted);font-size:13px}.transition-summary strong{color:var(--brand-primary);font-size:18px}.transition-arrow{font-size:28px;color:var(--brand-secondary)}
.module-card[href],a.module-card{color:inherit;text-decoration:none}.module-card h3 a{color:var(--brand-primary);text-decoration:none}.module-card h3 a:hover{color:var(--brand-secondary)}

/* Customer repairs module */
.repair-case-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:18px}.repair-case-identity{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:start}.repair-case-identity .badge{align-self:center}.repair-case-identity dl{grid-column:1/-1}.repair-action-panel,.repair-component-form{margin-top:20px}.repair-inline-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.repair-inline-form p{margin:0;display:grid;gap:6px;min-width:260px}.repair-inline-form select{width:100%;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm)}.repair-component-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;align-items:start}.repair-component-field{display:grid;grid-template-rows:auto auto;align-content:start;gap:6px;min-width:0}.repair-component-field input,.repair-component-field select,.repair-component-field textarea{width:100%;height:auto;align-self:start;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}.repair-component-field textarea{min-height:86px;resize:vertical}.repair-component-field .helptext{color:var(--muted);line-height:1.65}.repair-component-field .errorlist{margin:0;padding:0;list-style:none;color:var(--danger);font-size:12px}.repair-component-grid .form-actions{grid-column:1/-1}.pricing-anchor{scroll-margin-top:24px}.repair-timeline{display:grid;gap:0;padding:0 12px}.repair-timeline article{display:grid;grid-template-columns:20px 1fr;gap:12px;min-height:72px}.repair-timeline article>span{width:12px;height:12px;border-radius:50%;background:var(--brand-secondary);margin-top:8px;position:relative}.repair-timeline article>span:after{content:"";position:absolute;top:12px;right:5px;width:2px;height:60px;background:var(--line)}.repair-timeline article:last-child>span:after{display:none}.repair-timeline article div{padding-bottom:18px}.repair-timeline strong,.repair-timeline small{display:block}.repair-timeline small{color:var(--muted)}.repair-timeline p{margin:4px 0}.repair-timeline em{font-style:normal;color:var(--brand-primary);font-size:12px}.repair-status-R03,.repair-status-R06{background:#eaf4fb;color:#276d9d}.repair-status-R05,.repair-status-R10,.repair-status-R12{background:#fff3dc;color:var(--warning)}.repair-status-R15,.repair-status-R16,.repair-status-R17{background:#e5f5ef;color:var(--success)}.repair-status-R11,.repair-status-R13,.repair-status-R18,.repair-status-R19{background:#fdecec;color:var(--danger)}

.current-technician{padding:10px 12px;border-right:4px solid var(--brand-secondary);background:var(--brand-secondary-soft);border-radius:var(--radius-sm)}
.repair-team-list{display:grid;gap:9px;margin:14px 0}.repair-team-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd}.repair-team-list article>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.repair-team-list small{width:100%;color:var(--muted)}.repair-team-form{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1.5fr) auto;gap:12px;align-items:end;margin-top:18px}.repair-team-form p{display:grid;gap:6px;margin:0}.repair-team-form input:not([type=checkbox]),.repair-team-form select{width:100%;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}.repair-team-form p:has(input[type=checkbox]){display:flex;align-items:center;gap:8px;padding-bottom:10px}.repair-team-form .helptext{font-size:11px;color:var(--muted)}
.repair-workflow{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:12px}
.workflow-stage{display:grid;grid-template-columns:42px 1fr;align-items:start;gap:10px;min-height:132px;padding:12px;border-radius:12px;border:1px solid var(--line)}
.workflow-stage>.workflow-code{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:11px;font-weight:700}.workflow-stage-content{display:flex;flex-direction:column;gap:5px;min-width:0}.workflow-stage-content>strong{font-size:13px}.workflow-stage-content>small{font-size:11px;line-height:1.6}.workflow-stage-content>p{margin:0;font-size:11px;line-height:1.75;color:inherit}
.workflow-stage.completed{background:#eef0f2;color:#66717c}.workflow-stage.completed>.workflow-code{background:#cfd5db;color:#42505c}
.workflow-stage.current{background:#e7f2fb;border-color:#3f8bc5;color:#225f8c;box-shadow:0 0 0 2px rgba(63,139,197,.12)}.workflow-stage.current>.workflow-code{background:#3f8bc5;color:#fff}.workflow-stage.current .workflow-stage-content>strong{font-size:14px}
.workflow-stage.upcoming{background:#fff8df;border-color:#e5c45c;color:#755a00}.workflow-stage.upcoming>.workflow-code{background:#f4d878;color:#5c4700}
.workflow-stage.exceptional{border-style:dashed}.workflow-stage.current.exceptional{background:#fdecec;border-color:var(--danger);color:var(--danger)}.workflow-stage.current.exceptional>.workflow-code{background:var(--danger)}
.workflow-actions{border-top:1px solid var(--line);padding-top:16px}
.pricing-inline-form{display:grid;grid-template-columns:minmax(130px,1fr) minmax(150px,1.4fr) auto;gap:6px;align-items:center}.pricing-inline-form input{width:100%;border:1px solid #cbd5df;border-radius:6px;padding:7px;background:#fff}
.pricing-totals{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--brand-gray-soft)}.pricing-totals strong{color:var(--brand-primary);direction:ltr}.pricing-adjustment-form input{width:100%;min-width:120px;padding:8px;border:1px solid #cbd5df;border-radius:6px;background:#fff}.pricing-adjustment-form .errorlist{margin:3px 0}.timeline-disclosure{margin-top:34px;border:1px solid var(--line);border-top:3px solid var(--brand-primary);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.timeline-disclosure>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:18px 22px;color:var(--brand-primary);font-weight:700}.timeline-disclosure>summary::-webkit-details-marker{display:none}.timeline-disclosure>summary:after{content:"＋";font-size:20px;color:var(--brand-secondary)}.timeline-disclosure[open]>summary:after{content:"−"}.timeline-disclosure>summary small{color:var(--muted);font-weight:400}.timeline-disclosure .repair-timeline{padding:6px 24px 20px;border-top:1px solid var(--line)}.print-footer-note{margin-top:18px;padding:12px;border:1px solid var(--line);white-space:pre-line}
.inbox-button{position:relative;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--brand-primary)}.inbox-button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}.inbox-button>span{position:absolute;top:-5px;left:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:12px;background:var(--danger);color:#fff;font-size:11px;display:grid;place-items:center}.inbox-list{display:grid;gap:12px}.inbox-item{display:block;color:inherit;text-decoration:none;border-top-width:1px}.inbox-item.unread{border-right:5px solid var(--brand-secondary);background:#f4f9fd}.inbox-item>div{display:flex;justify-content:space-between;gap:12px}.inbox-item p{margin:8px 0;color:var(--muted)}.inbox-item small{color:var(--muted)}
.repair-dashboard-actions{margin:28px 0}.repair-dashboard-actions-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.repair-dashboard-actions-head h2{margin-bottom:2px}.repair-dashboard-actions-head p{margin:0;color:var(--muted)}.repair-dashboard-actions-head .action-count-active{background:#fdecec;color:var(--danger)}.repair-dashboard-action-list{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:10px;margin-top:16px}.repair-dashboard-action{display:block;padding:13px 15px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd}.repair-dashboard-action:hover{border-color:var(--brand-secondary);background:var(--brand-secondary-soft)}.repair-dashboard-action.unread{border-right:4px solid var(--brand-secondary)}.repair-dashboard-action>div{display:flex;justify-content:space-between;gap:10px}.repair-dashboard-action p{margin:5px 0 0;color:var(--muted);font-size:13px}.repair-case-filter{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;padding:18px;border-top-width:1px}.repair-case-filter label{display:grid;gap:5px;color:var(--muted);font-size:12px}.repair-case-filter input,.repair-case-filter select{width:100%;min-width:0;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}.repair-filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px;color:var(--muted)}
@media(max-width:900px){.repair-workflow{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:760px){.repair-workflow{grid-template-columns:1fr}.workflow-stage{min-height:auto}.repair-team-form,.repair-case-filter,.repair-dashboard-action-list{grid-template-columns:1fr}.timeline-disclosure>summary{align-items:flex-start;gap:8px}.timeline-disclosure>summary small{display:none}}
@media(max-width:420px){.repair-workflow{grid-template-columns:1fr}}

/* Customers and business partners module */
.partner-stat-grid{grid-template-columns:repeat(5,1fr)}.partner-stat-alert{border-right-color:var(--danger);background:#fff8f8}.partner-stat-alert strong{color:var(--danger)}
.partner-compact-list{display:grid;gap:8px}.partner-compact-list>a{display:grid;padding:11px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd}.partner-compact-list>a:hover{border-color:var(--brand-secondary);background:var(--brand-secondary-soft)}.partner-compact-list span,.partner-compact-list small{color:var(--muted)}
.partner-filter{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(130px,1fr)) auto;gap:12px;align-items:end;padding:18px}.partner-filter label{display:grid;gap:5px;color:var(--muted);font-size:12px}.partner-filter input,.partner-filter select{width:100%;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}
.partner-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:18px}.partner-profile-grid h3{color:var(--brand-primary);margin-bottom:4px}
.partner-card-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:14px}.partner-mini-card{padding:18px}.partner-mini-card>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.partner-mini-card small{color:var(--muted)}.partner-mini-card p{margin:8px 0}
.partner-overdue-row{background:#fff1f1}.partner-rank-A{background:#e8eafa;color:var(--brand-primary)}.partner-rank-B{background:#eaf4fb;color:#276d9d}.partner-rank-C{background:#e5f5ef;color:var(--success)}.partner-rank-D{background:#f0f1f3;color:var(--muted)}
.partner-related-grid{margin-top:28px}.partner-related-grid p{border-bottom:1px solid var(--line);padding-bottom:10px}.partner-related-grid small{display:block;color:var(--muted)}
.partner-data-form #id_roles,.partner-data-form #id_groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:7px 0 3px;padding:0;border:0}.partner-data-form #id_roles>div,.partner-data-form #id_groups>div{min-width:0}.partner-data-form #id_roles label,.partner-data-form #id_groups label{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd;cursor:pointer;font-weight:600;transition:border-color .15s ease,background .15s ease}.partner-data-form #id_roles label:hover,.partner-data-form #id_groups label:hover{border-color:var(--brand-secondary);background:var(--brand-secondary-soft)}.partner-data-form #id_roles input[type=checkbox],.partner-data-form #id_groups input[type=checkbox]{flex:0 0 19px;width:19px;height:19px;margin:0;accent-color:var(--brand-primary)}.partner-data-form p:has(>#id_roles),.partner-data-form p:has(>#id_groups){display:block}.partner-data-form p:has(>#id_roles)>label,.partner-data-form p:has(>#id_groups)>label{display:block;margin-bottom:5px;color:var(--brand-primary);font-weight:700}.partner-logo-frame{display:grid;place-items:center;width:min(100%,280px);height:150px;margin:4px 0 18px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff}.partner-logo-frame img{display:block;max-width:100%;max-height:100%;object-fit:contain}.partner-import-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:18px;align-items:start}.partner-import-panel{display:grid;gap:16px}.partner-import-step{display:flex;gap:12px;align-items:flex-start}.partner-import-step>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--brand-primary);color:#fff;font-weight:700}.partner-import-step h2{margin:1px 0 3px;font-size:16px}.partner-import-step p,.partner-import-scope p{margin:0;color:var(--muted)}.partner-import-form{display:grid;gap:8px;margin-top:4px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fafc}.partner-import-form label{font-weight:700}.partner-import-form input[type=file]{width:100%;padding:10px;border:1px dashed #9aacb9;border-radius:var(--radius-sm);background:#fff}.partner-import-form small{color:var(--muted)}.partner-import-form .errorlist,.partner-import-error{margin:0;color:var(--danger)}.partner-import-form button{justify-self:start;margin-top:6px}.partner-import-scope ul{padding-right:20px;line-height:2}.partner-import-results{margin-top:18px;border-right:4px solid var(--danger)}.partner-import-results>h2{color:var(--danger)}.partner-import-results td ul{margin:0;padding-right:18px}

@media(max-width:1050px){.platform-name,.brand-divider{display:none}.brand-logo{width:220px}.topbar{align-items:flex-start}.top-actions{flex-wrap:wrap;justify-content:flex-end}.quick-grid,.module-grid{grid-template-columns:repeat(2,1fr)}.inventory-stat-grid,.partner-stat-grid{grid-template-columns:repeat(2,1fr)}.partner-filter{grid-template-columns:repeat(3,1fr)}.partner-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.topbar{height:auto;padding:12px 18px;flex-direction:column;align-items:stretch}.brand{justify-content:center}.brand-logo{width:245px}.top-actions{justify-content:center}.page-shell{padding:22px 16px 50px}.quick-grid,.module-grid,.two-column,.inventory-detail-grid,.inventory-document-grid,.repair-case-grid,.partner-profile-grid,.partner-import-grid{grid-template-columns:1fr}.repair-component-grid,.partner-filter,.partner-card-grid,.partner-data-form #id_roles,.partner-data-form #id_groups{grid-template-columns:1fr}.dashboard-head{align-items:flex-start}.setup-card{grid-template-columns:1fr}.qr{margin:auto}.setup-card form{grid-column:auto}.company-switcher{max-width:100%}.inventory-search{flex-direction:column}.inventory-main-image{max-height:220px}}

.jalali-picker-field{display:flex;width:100%;align-items:stretch;direction:rtl}.jalali-picker-field>input{flex:1;min-width:0;border-radius:0 var(--radius-sm) var(--radius-sm) 0!important}.jalali-picker-button{flex:0 0 42px;border:1px solid #cbd5df;border-right:0;border-radius:var(--radius-sm) 0 0 var(--radius-sm);background:#eef4f8;color:var(--brand-primary);font-size:21px;cursor:pointer}.jalali-picker-button:hover,.jalali-picker-button:focus{background:#deebf3}.jalali-picker-dialog{width:min(360px,calc(100vw - 28px));border:0;border-radius:16px;padding:18px;box-shadow:0 22px 70px rgba(15,38,54,.28);color:var(--text)}.jalali-picker-dialog::backdrop{background:rgba(15,38,54,.42)}.jalali-picker-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:12px}.jalali-picker-head strong{text-align:center;font-size:18px}.jalali-picker-head button,.jalali-picker-days button{border:0;border-radius:9px;background:transparent;color:inherit;cursor:pointer}.jalali-picker-head button{height:40px;font-size:26px;background:#f1f5f8}.jalali-picker-weekdays,.jalali-picker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.jalali-picker-weekdays{color:var(--muted);font-size:12px;margin-bottom:5px}.jalali-picker-days span,.jalali-picker-days button{aspect-ratio:1;display:grid;place-items:center}.jalali-picker-days button:hover,.jalali-picker-days button:focus{background:#eaf4fb}.jalali-picker-days button.selected{background:var(--brand-primary);color:#fff}.jalali-picker-time{display:flex;justify-content:center;align-items:end;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.jalali-picker-time label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.jalali-picker-time input{width:70px;padding:7px;text-align:center;border:1px solid #cbd5df;border-radius:8px}.jalali-picker-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:480px){.company-switcher{width:100%;justify-content:space-between}.company-switcher select{max-width:190px}.user-chip{display:none}.auth-card{padding:26px 20px}.site-footer{flex-direction:column;align-items:center;gap:4px}.dashboard-head{flex-direction:column;gap:14px}.inventory-stat-grid{grid-template-columns:1fr}.inventory-identity{grid-template-columns:1fr}.inventory-qr{margin:auto}.inventory-identity dl{grid-template-columns:1fr}.inventory-identity dd{margin-bottom:8px}}
.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 14px;border:1px solid #bcc9d6;border-radius:var(--radius-sm);background:#fff;color:var(--brand-primary);font-weight:700;cursor:pointer;text-decoration:none}.button:hover,.button:focus{border-color:var(--brand-secondary);background:var(--brand-secondary-soft)}.button.primary{border-color:transparent;background:linear-gradient(100deg,var(--brand-primary),var(--brand-secondary));color:#fff}.button.primary:hover{background:var(--brand-primary-dark)}.button.danger{border-color:#dfb0b0;background:#fff4f4;color:var(--danger)!important}.action-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0}.metric-card{background:#fff;border:1px solid var(--border,#dbe3e8);border-radius:14px;padding:1rem;display:flex;justify-content:space-between;align-items:center}.metric-card strong{font-size:1.7rem;color:#0d5661}.metric-danger{border-color:#e5b7b7;background:#fff8f8}.metric-danger strong{color:var(--danger)}.filter-grid,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.filter-grid{grid-template-columns:2fr repeat(3,1fr) auto;align-items:end}.span-2{grid-column:span 2}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.65rem;background:#eef4f5;border:1px solid #cbd9dc;border-bottom:0;border-radius:10px 10px 0 0}.editor-toolbar button{border:1px solid #b9c9cc;background:white;border-radius:6px;padding:.35rem .55rem;cursor:pointer}.letter-editor{min-height:420px;border:1px solid #b9c9cc;background:#fff;font-family:"B Zar","Vazir",Tahoma,sans-serif;font-size:20px;line-height:1.8;outline:none;overflow:auto}.letter-editor-content{min-height:420px;padding:24px;outline:none}.letter-editor table,.letter-body-view table{width:100%;border-collapse:collapse;table-layout:fixed}.letter-editor td,.letter-editor th,.letter-body-view td,.letter-body-view th{border:1px solid #667;padding:6px;min-width:48px;vertical-align:top}.letter-editor .selectedCell:after{content:"";position:absolute;inset:0;background:rgba(63,139,197,.18);pointer-events:none}.letter-editor .selectedCell{position:relative}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.key-values{display:grid;grid-template-columns:max-content 1fr;gap:.55rem 1rem}.key-values dt{font-weight:700}.key-values dd{margin:0}.compact-form p{margin:.45rem 0}.inline-decision{display:flex;gap:.5rem;align-items:center;margin:.6rem 0}.inline-decision textarea{min-height:60px}.file-list,.timeline{list-style:none;padding:0}.file-list li,.timeline li{padding:.65rem 0;border-bottom:1px solid #e3e8ea;display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.timeline li span,.timeline li small{color:#68787e}.a4-preview{position:relative;width:210mm;min-height:297mm;max-width:100%;margin:auto;padding:35mm 22mm 28mm;background:white;box-shadow:0 4px 22px #0002;font-family:"B Zar","Vazir",Tahoma,sans-serif;font-size:20px;line-height:1.8}.draft-preview:before{content:"پیش‌نویس / فاقد اعتبار";position:absolute;inset:45% auto auto 15%;transform:rotate(-28deg);font-size:42px;color:#b33;opacity:.14}.letter-meta{text-align:left}.recipient-block,.a4-preview h2,.signature-block{font-weight:700}.signature-block{width:45%;margin-right:auto;text-align:center;margin-top:4rem}.danger{color:#a22222!important}.message.warning{background:#fff6d8;color:#704f00}

/* Correspondence module */
.correspondence-head{gap:18px}.correspondence-primary-actions{justify-content:flex-end}.correspondence-nav{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin:0 0 18px}.correspondence-nav-card{display:grid;gap:3px;padding:15px 17px;border:1px solid var(--line);border-right:4px solid var(--brand-secondary);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow)}.correspondence-nav-card:hover{background:var(--brand-secondary-soft);border-color:var(--brand-secondary)}.correspondence-nav-card strong{color:var(--brand-primary)}.correspondence-nav-card span{font-size:12px;color:var(--muted)}.correspondence-nav-card.has-alert{border-right-color:var(--danger);background:#fff8f8}.correspondence-admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0;padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fafc}.correspondence-compact-panel{padding:18px}.correspondence-compact-panel .panel-head{margin-bottom:10px}.correspondence-compact-panel .form-grid{gap:10px 14px}.correspondence-compact-panel input,.correspondence-compact-panel select{padding:8px 10px}.incoming-form-grid input[type=file]{padding:7px;background:#fff}.incoming-filter-grid{display:grid;grid-template-columns:2fr repeat(3,minmax(140px,1fr));gap:10px;align-items:end}.incoming-filter-grid label,.form-grid label{display:grid;gap:5px;font-size:13px;font-weight:700}.incoming-filter-grid input,.incoming-filter-grid select,.form-grid input:not([type=checkbox]),.form-grid select,.form-grid textarea{width:100%;min-width:0;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}.incoming-filter-grid .filter-wide{grid-column:span 2}.incoming-filter-grid .filter-actions{display:flex;gap:8px}.incoming-detail-grid{margin-bottom:18px}.incoming-files{margin-top:18px}.inline-file-form{display:grid;grid-template-columns:150px 1fr 1.5fr auto;gap:10px;align-items:end;margin-top:12px}.inline-file-form label{display:grid;gap:5px}.inline-file-form input,.inline-file-form select{width:100%;padding:9px;border:1px solid #cbd5df;border-radius:var(--radius-sm)}.compact-disclosure{margin-top:12px;padding:10px 12px;border:1px dashed var(--brand-secondary);border-radius:var(--radius-sm)}.compact-disclosure summary{cursor:pointer;color:var(--brand-primary);font-weight:700}.referral-list{display:grid;gap:12px}.referral-card{padding:15px;border:1px solid var(--line);border-right:4px solid var(--brand-secondary);border-radius:var(--radius-sm);background:#fbfcfd}.referral-card header{display:flex;justify-content:space-between;gap:12px}.referral-card header div{display:flex;gap:10px}.referral-card header span,.referral-card small{color:var(--muted)}.referral-card dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 10px}.referral-card dd{margin:0}.overdue-referral,.overdue-row{background:#fff3f3!important}.referral-actions-history{margin:10px 0;padding:10px;border-right:3px solid var(--success);background:#f0faf6}.inline-action-form{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:end}.inline-action-form textarea{min-height:74px;padding:8px;border:1px solid #cbd5df;border-radius:var(--radius-sm)}.correspondence-timeline article{display:grid;grid-template-columns:18px 1fr;gap:10px;min-height:65px}.correspondence-timeline article>span{position:relative;width:11px;height:11px;margin-top:7px;border-radius:50%;background:var(--brand-secondary)}.correspondence-timeline article>span:after{content:"";position:absolute;top:11px;right:4px;width:2px;height:54px;background:var(--line)}.correspondence-timeline article:last-of-type>span:after{display:none}.correspondence-timeline strong,.correspondence-timeline small{display:block}.correspondence-timeline small{color:var(--muted)}.correspondence-final-actions{margin-top:18px}
@media(max-width:900px){.metric-grid,.detail-grid,.filter-grid,.form-grid,.correspondence-nav,.incoming-filter-grid{grid-template-columns:1fr}.span-2,.incoming-filter-grid .filter-wide{grid-column:auto}.a4-preview{width:auto;min-height:0;padding:24px}.editor-toolbar{overflow-x:auto;flex-wrap:nowrap}.letter-editor,.letter-editor-content{min-height:320px}.key-values{grid-template-columns:1fr}.key-values dt{margin-top:.5rem}.inline-file-form,.inline-action-form{grid-template-columns:1fr}.correspondence-primary-actions{justify-content:flex-start}}
.report-filter-panel{padding:16px;margin-bottom:18px}.report-filter-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.report-filter-form label{display:grid;gap:5px;font-size:13px;font-weight:700}.report-filter-form input{min-width:180px;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:9px;background:#fbfcfd}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.report-card{min-width:0;padding:16px;overflow:hidden}.report-card .data-table{width:100%;min-width:0;margin-top:8px;table-layout:fixed}.report-card th,.report-card td{overflow-wrap:anywhere}.report-list{margin-top:18px}
@media(max-width:900px){.report-grid{grid-template-columns:1fr}.report-filter-form{align-items:stretch}.report-filter-form label{width:100%}.report-filter-form input{width:100%}}

/* Global page context and correspondence UX corrections */
.page-context-nav{max-width:1440px;margin:0 auto;padding:12px 4vw;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);background:#f8fafc}.page-context-trail{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:13px}.page-context-trail a{color:var(--brand-primary);font-weight:700}.page-context-trail [aria-current=page]{font-weight:700;color:var(--text)}.page-back-button{flex:0 0 auto;min-height:36px;padding:6px 12px}
.page-action-bar,.form-submit-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fafc}.page-action-bar form{margin:0}.dashboard-head>.page-action-bar{align-self:center}.form-submit-bar{justify-content:flex-start;margin-top:16px;border-right:4px solid var(--brand-secondary)}
.correspondence-navigation-panel{padding:18px;margin-bottom:20px}.correspondence-navigation-panel .panel-head{margin-bottom:14px}.correspondence-navigation-panel .correspondence-nav{gap:16px;margin:0}.correspondence-nav-card{min-height:74px;align-content:center;isolation:isolate}.correspondence-nav-card strong{font-size:15px}.correspondence-nav-card span{margin-top:4px}
.referral-panel{scroll-margin-top:20px}.referral-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.referral-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.referral-form input:not([type=checkbox]),.referral-form select,.referral-form textarea{width:100%;min-width:0;border:1px solid #cbd5df;border-radius:var(--radius-sm);padding:10px;background:#fbfcfd}.referral-recipient,.referral-instruction{grid-column:span 2}.referral-instruction textarea{min-height:96px;resize:vertical}.referral-response{align-self:end;min-height:42px}.referral-submit{grid-column:1/-1;margin:0}.incoming-form select:disabled{opacity:1;color:var(--brand-primary);background:#eef3f6;border-style:dashed;cursor:not-allowed}

.signature-block{float:left;clear:both;width:45%;margin:4rem 0 0;text-align:center}
.correspondence-action-panel{display:grid;align-content:start;gap:12px}.correspondence-action-panel>h2{margin-bottom:0}.correspondence-action-group{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#f8fafc}.correspondence-action-group h3{margin:0;color:var(--brand-primary);font-size:15px}.correspondence-action-group form{margin:0}.correspondence-print-form p{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:10px}.correspondence-print-form select,.correspondence-print-form input{width:100%;min-width:0}.correspondence-admin-form .helptext{display:block;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.8}.correspondence-admin-form input[type=file]{padding:10px;background:#fff}
.letter-editor-fallback{display:block;width:100%;min-height:420px;padding:24px;border:0;outline:none;resize:vertical;font:inherit;line-height:1.8;direction:rtl}.editor-load-error{margin:0;border-radius:0}.notification-history{margin-top:24px;padding:0;overflow:hidden}.notification-history>summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;padding:16px 20px;color:var(--brand-primary);font-weight:700}.notification-history-list{display:grid;border-top:1px solid var(--line)}.notification-history-item{display:block;padding:14px 20px;border-bottom:1px solid var(--line);color:inherit;background:#fbfcfd}.notification-history-item:last-child{border-bottom:0}.notification-history-item>div{display:flex;justify-content:space-between;gap:12px}.notification-history-item p{margin:5px 0;color:var(--muted)}.notification-history-item small{color:var(--muted)}
@media(max-width:900px){.referral-form{grid-template-columns:1fr 1fr}.referral-recipient,.referral-instruction{grid-column:1/-1}}
@media(max-width:760px){.page-context-nav{align-items:flex-start}.page-context-trail{line-height:1.9}.page-action-bar,.form-submit-bar{width:100%}.dashboard-head>.page-action-bar{align-self:stretch}.referral-form{grid-template-columns:1fr}.referral-recipient,.referral-instruction{grid-column:auto}.referral-submit{grid-column:auto}}
.correspondence-access-layout{align-items:start}.correspondence-access-form ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.correspondence-access-form li{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;background:#fbfcfd}.correspondence-access-form li label{display:flex;align-items:center;gap:10px;cursor:pointer}.correspondence-access-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-primary)}
.notification-history-filter{display:grid;grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr)) auto auto;gap:10px;align-items:end;padding:16px 20px;border-top:1px solid var(--line);background:#f8fafc}.notification-history-filter label{display:grid;gap:5px;font-size:13px;font-weight:700}.notification-history-filter input,.notification-history-filter select{width:100%;min-width:0;padding:9px;border:1px solid #cbd5df;border-radius:var(--radius-sm);background:#fff}.notification-archive-form{display:flex;justify-content:flex-start;padding:0 20px 14px;background:#f8fafc}@media(max-width:900px){.notification-history-filter{grid-template-columns:1fr 1fr}.notification-history-filter label:first-child{grid-column:1/-1}}@media(max-width:760px){.notification-history-filter{grid-template-columns:1fr}.notification-history-filter label:first-child{grid-column:auto}}
.dispatch-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.dispatch-form label{display:grid;align-content:start;gap:6px;font-size:13px;font-weight:700}.dispatch-form input,.dispatch-form select,.dispatch-form textarea{width:100%;min-width:0;padding:9px;border:1px solid #cbd5df;border-radius:var(--radius-sm);background:#fbfcfd}.dispatch-form .dispatch-note{grid-column:1/-1}.dispatch-form textarea{min-height:76px;resize:vertical}.dispatch-submit{grid-column:1/-1;display:flex;justify-content:flex-start}.dispatch-history{margin-top:16px}.correspondence-history{padding:0}.correspondence-history-content{padding:0 22px 18px;border-top:1px solid var(--line)}.correspondence-void-form{padding:12px;background:#fff8f8;border-radius:var(--radius-sm)}@media(max-width:760px){.dispatch-form{grid-template-columns:1fr}.dispatch-form .dispatch-note,.dispatch-submit{grid-column:auto}}
.official-output-form{display:grid;gap:9px}.signature-print-option{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #cbd5df;border-radius:var(--radius-sm);background:#fff;font-weight:700;cursor:pointer}.signature-print-option input{width:18px;height:18px;accent-color:var(--brand-primary)}.official-output-form>small{color:var(--muted);line-height:1.7}.official-output-form .action-row{margin-top:4px}.correspondence-print-form input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-primary)}

/* Global upload manager */
.system-settings-link{font-size:13px;font-weight:700;color:var(--brand-primary);white-space:nowrap}
.upload-modal{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:20px}.upload-modal[hidden]{display:none}.upload-modal-backdrop{position:absolute;inset:0;background:rgba(12,31,39,.48);backdrop-filter:blur(2px)}.upload-modal-card{position:relative;width:min(440px,100%);padding:24px;border:1px solid #d5e0e3;border-radius:18px;background:#fff;box-shadow:0 24px 80px #10283055;text-align:center}.upload-modal-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 10px;border-radius:50%;background:var(--brand-secondary-soft);color:var(--brand-primary);font-size:27px;font-weight:800}.upload-modal-card h2{margin:0 0 8px;color:var(--brand-primary);font-size:19px}.upload-modal-file{min-height:24px;margin:0 0 14px;color:var(--text);font-weight:700;overflow-wrap:anywhere}.upload-progress{height:12px;overflow:hidden;border-radius:999px;background:#e6edef;direction:rtl}.upload-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand-secondary),var(--brand-primary));transition:width .15s ease}.upload-progress-meta{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:var(--muted);font-size:13px}.upload-progress-meta strong{color:var(--brand-primary);font-size:15px}.upload-modal-status{min-height:24px;margin:14px 0 4px;color:var(--muted)}.upload-modal-error{margin:10px 0;padding:10px 12px;border-radius:9px;background:#fff0f0;color:var(--danger);line-height:1.8}.upload-modal-actions{display:flex;justify-content:center;gap:9px;margin-top:14px}.upload-modal.is-success .upload-modal-icon{background:#e7f7ef;color:var(--success)}.upload-modal.is-success .upload-progress span{background:var(--success)}.upload-modal.is-error .upload-modal-icon{background:#fff0f0;color:var(--danger)}.staged-upload-list{display:grid;gap:6px;margin-top:8px}.staged-upload-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 10px;border:1px solid #cfe1d8;border-radius:8px;background:#f2fbf6;color:#245d43;font-size:13px}.staged-upload-item span{overflow-wrap:anywhere}.staged-upload-remove{border:0;background:transparent;color:var(--danger);cursor:pointer;font:inherit}.upload-field-error{margin-top:6px;color:var(--danger);font-size:13px}.upload-settings-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;align-items:start}.upload-policy-form p{display:grid;grid-template-columns:minmax(220px,1fr) minmax(120px,180px);gap:8px 16px;align-items:center}.upload-policy-form p label{font-weight:700}.upload-policy-form p input{width:100%}.upload-policy-form .helptext,.upload-policy-form .errorlist{grid-column:1/-1}.upload-policy-form .errorlist{margin:0;color:var(--danger)}
@media(max-width:760px){.upload-modal{padding:14px}.upload-modal-card{padding:20px 16px}.upload-settings-layout{grid-template-columns:1fr}.upload-policy-form p{grid-template-columns:1fr}.system-settings-link{display:none}}
.danger-link { color: #b42318 !important; }
.danger-console { max-width: 1100px; margin-inline: auto; }
.deletion-warning { margin: 1rem 0; padding: 1rem; border: 1px solid #f04438; border-radius: 12px; background: #fff1f0; color: #7a271a; }
.deletion-filter { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(220px, 1fr) auto; gap: .75rem; align-items: end; }
.deletion-filter label, .final-confirmation > label { display: grid; gap: .35rem; }
.record-selection-head { display: flex; justify-content: space-between; gap: 1rem; margin: 1.25rem 0 .5rem; font-weight: 700; }
.record-delete-list { border: 1px solid var(--border, #d0d5dd); border-radius: 12px; max-height: 480px; overflow: auto; }
.record-delete-row { display: flex; gap: .75rem; align-items: flex-start; padding: .8rem 1rem; border-bottom: 1px solid var(--border, #eaecf0); cursor: pointer; }
.record-delete-row:last-child { border-bottom: 0; }
.record-delete-row:hover { background: #fff8f7; }
.record-delete-row span { display: grid; gap: .25rem; }
.record-delete-row small { color: var(--muted, #667085); direction: rtl; }
.deletion-scope { display: flex; flex-wrap: wrap; gap: 1rem; margin: 1rem 0; padding: 1rem; border: 1px solid #fda29b; border-radius: 12px; }
.deletion-scope legend { padding-inline: .5rem; font-weight: 700; }
.final-confirmation { display: grid; gap: .8rem; padding: 1rem; background: #fffbfa; border: 1px solid #fecdca; border-radius: 12px; }
.button.danger { background: #b42318; border-color: #b42318; color: white; justify-self: start; }
@media (max-width: 760px) { .deletion-filter { grid-template-columns: 1fr; } .record-selection-head { align-items: flex-start; flex-direction: column; } }

/* Account, authentication and profile */
.today-date{padding:5px 9px;border:1px solid #d8e2e7;border-radius:999px;background:#f7fafb;color:var(--muted);font-size:12px;white-space:nowrap}.system-settings-link{font-size:13px;font-weight:700;color:var(--brand-primary);white-space:nowrap}.user-profile-chip{display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid #d7e1e6;border-radius:999px;background:#fff;color:var(--text)}.user-profile-chip img,.user-profile-chip>span{width:34px;height:34px;border-radius:50%;object-fit:cover}.user-profile-chip>span,.dashboard-avatar span,.profile-preview-avatar span{display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff;font-weight:800}.user-profile-chip strong{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.dashboard-user-intro{display:flex;align-items:center;gap:16px}.dashboard-avatar{flex:0 0 auto;width:78px;height:78px;border:3px solid #fff;border-radius:50%;overflow:hidden;background:#eaf3f6;box-shadow:0 5px 20px #193b4c24}.dashboard-avatar img,.dashboard-avatar span{width:100%;height:100%;object-fit:cover;font-size:28px}.profile-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:18px;align-items:start}.profile-preview{display:grid;justify-items:center;gap:8px;text-align:center}.profile-preview-avatar{width:150px;height:150px;overflow:hidden;border:4px solid #fff;border-radius:50%;background:#eaf3f6;box-shadow:0 8px 28px #193b4c26}.profile-preview-avatar img,.profile-preview-avatar span{width:100%;height:100%;object-fit:cover;font-size:48px}.profile-form input[type=file]{padding:9px;background:#fff}.auth-note{display:block;margin-top:16px;color:var(--muted);line-height:1.8}.auth-policy-form textarea{min-height:90px}.login-history-filter{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.login-history-filter label{display:grid;gap:5px;min-width:260px;font-weight:700}.login-history-filter input{width:100%}.field-help{color:var(--muted);font-size:13px}
@media(max-width:1050px){.today-date{order:4}.user-profile-chip strong{display:none}.user-profile-chip{padding:3px}.system-settings-link{font-size:12px}}
@media(max-width:760px){.today-date{width:100%;text-align:center;order:0}.profile-layout{grid-template-columns:1fr}.dashboard-user-intro{align-items:flex-start}.dashboard-avatar{width:64px;height:64px}.login-history-filter label{min-width:100%;width:100%}}

/* A4-bounded correspondence editor */
.a4-editor-frame{overflow-x:auto;padding:12px;background:#e8ecef;border-radius:0 0 10px 10px}.a4-editor-frame .letter-editor{box-sizing:border-box;width:210mm;max-width:100%;min-height:297mm;margin:0 auto;line-height:1.15;overflow:hidden}.a4-editor-frame .letter-editor-content{box-sizing:border-box;width:100%;max-width:100%;min-height:297mm;padding:24mm 22mm 28mm;overflow-x:hidden;overflow-wrap:anywhere;word-break:break-word}.letter-editor .tableWrapper{max-width:100%;overflow:hidden}.letter-editor table,.letter-body-view table{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed}.letter-editor col,.letter-body-view col{width:auto!important}.letter-editor td,.letter-editor th,.letter-body-view td,.letter-body-view th{min-width:0;overflow-wrap:anywhere;word-break:break-word}.letter-editor img,.letter-body-view img{max-width:100%;height:auto}.letter-body-view{max-width:100%;line-height:1.15;overflow-wrap:anywhere;word-break:break-word}.a4-editor-frame .letter-editor-fallback{box-sizing:border-box;min-height:297mm;padding:24mm 22mm 28mm;line-height:1.15;overflow-x:hidden}.call-referral{padding:12px 0;border-bottom:1px solid var(--line)}
@media(max-width:900px){.a4-editor-frame .letter-editor{width:210mm;max-width:none}}

/* Compact, aligned checkbox rows for correspondence forms. */
.form-check-row{display:flex!important;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd;cursor:pointer;font-weight:700!important}.form-check-row input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:var(--brand-primary)}.form-check-row span{line-height:1.6}.form-check-row .errorlist{flex-basis:100%;margin:0}.correspondence-role-options{display:grid;gap:9px}.correspondence-role-option{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fbfcfd;cursor:pointer;font-weight:600!important}.correspondence-role-option:hover{border-color:var(--brand-secondary);background:var(--brand-secondary-soft)}.correspondence-role-option input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:var(--brand-primary)}.correspondence-role-option span{line-height:1.6}
