:root{font-family:"IRANYekanX",Tahoma,Arial,sans-serif;color:#162b42;background:#f2f5f9;font-size:16px;line-height:1.8;--blue:#1769d2;--border:#dfe6ef}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--border);border-radius:8px;background:white;color:#233b55;padding:8px 16px}button:hover{background:#edf4ff;border-color:#8bb2e9}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #85b7fc;outline-offset:2px}.primary{background:var(--blue);border-color:var(--blue);color:white}.primary:hover{background:#1055b0;color:white}.danger{color:#b02c3b}aside{position:fixed;right:0;top:0;width:246px;height:100vh;background:#12283f;color:white;padding:26px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:17px;margin-bottom:30px}.brand>.brand-logo{display:block;width:48px;height:48px;flex:0 0 48px;object-fit:contain}.brand small{display:block;font-size:12px;color:#aac0d7}.entity{font-size:13px;color:#afc1d4}.entity select{width:100%;background:#203a54;color:white;border-color:#37506a;margin-top:7px}.navlabel{font-size:12px;color:#91a9c3;margin:30px 12px 10px}nav{display:grid;gap:8px}nav button{text-align:right;background:transparent;border:0;color:#c4d2e1;padding:12px;font-size:14px}nav button.active{color:white;background:#244766;border-right:3px solid #6eb4ff}nav button .num{display:inline-block;margin-left:12px;color:#83a8ce;font-size:12px}.aside-bottom{margin-top:auto;font-size:12px;color:#c0cfde}.aside-bottom span{color:#809bb6}main{margin-right:246px;padding:26px 34px;max-width:1900px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:12px}h1{font-size:24px;margin:2px 0}h2{font-size:18px;margin:0}h3{font-size:16px;margin:0 0 12px}.eyebrow{font-size:12px;color:#6e8298}.header-actions{display:flex;gap:10px;align-items:center}.pill,.tag{background:#e8f1fd;color:#245da6;padding:4px 10px;border-radius:6px;font-size:12px}.notice{font-size:13px;background:#e8eff7;color:#53687e;padding:10px 14px;border-radius:8px;margin-bottom:20px}.panel{background:white;border:1px solid var(--border);border-radius:12px;margin-bottom:18px;overflow:hidden}.panel-head{padding:17px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.panel-body{padding:20px}.formgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}label{display:block;font-size:14px;color:#4a6178}input,select,textarea{display:block;width:100%;border:1px solid #cbd6e2;border-radius:7px;background:white;padding:9px 10px;color:#203a54;font-size:14px;min-height:43px}input[type=number]{direction:ltr;text-align:right}label input,label select{margin-top:5px}.wide{grid-column:1/-1}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px}.toolbar input{flex:1}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:right;font-size:14px}th{background:#f8fafc;color:#667c91;font-weight:normal;font-size:13px}td,th{padding:14px 17px;border-bottom:1px solid #edf1f6}tbody tr:hover{background:#f8fbff}td strong{display:block;font-weight:normal;color:#18334e}td small{display:block;color:#8a99a9;font-size:12px}.money{font-variant-numeric:tabular-nums;direction:ltr;text-align:right}.empty{text-align:center;color:#7c8da0;padding:40px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stat{background:white;border:1px solid var(--border);border-radius:10px;padding:18px}.stat span{color:#72849a;font-size:13px}.stat strong{display:block;font-size:23px;margin-top:5px}.stat.highlight{background:#163d67;color:white;border:0}.stat.highlight span{color:#b8d5f5}.invoice-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.totalrow{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px}.totalrow.final{border-top:1px solid var(--border);padding-top:14px;font-size:19px;color:#165bb3}.subtle{color:#7a8b9f;font-size:13px}.actions{display:flex;gap:10px;flex-wrap:wrap}.link{padding:4px 9px;color:#1b66be;border:0;background:transparent;font-size:13px}.badge{color:#217956;background:#e7f6ee;border-radius:5px;padding:3px 7px;font-size:12px}.mono{font-family:inherit;font-variant-numeric:tabular-nums;direction:ltr;display:inline-block;font-size:13px}.hint{background:#f4f7fb;padding:12px;border-radius:8px;color:#5c7086;font-size:13px}footer{display:flex;justify-content:space-between;color:#8493a5;font-size:12px;margin-top:24px}dialog{width:min(730px,95vw);border:0;border-radius:15px;padding:24px;box-shadow:0 20px 100px #0b284c44}dialog::backdrop{background:#132d4b77}.dialog-head{display:flex;justify-content:space-between;margin-bottom:20px}.dialog-actions{margin-top:20px;text-align:left}#formerror{color:#b52b3e;font-size:14px}#toast{position:fixed;bottom:25px;left:25px;max-width:80vw;background:#153e65;color:white;padding:14px 24px;border-radius:10px;display:none;z-index:100}.segment{display:flex;gap:6px}.segment button.selected{background:#e8f1fd;border-color:#80ace1;color:#1656a5}.rowinput{width:140px;min-height:35px;padding:5px;font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.info{border-right:3px solid #4f8ddd;padding:10px 15px;background:#f4f8ff;margin-top:15px;font-size:14px}.negative{color:#b34250}@media(max-width:1000px){aside{width:205px}main{margin-right:205px;padding:20px}.formgrid{grid-template-columns:repeat(2,1fr)}.invoice-bottom{grid-template-columns:1fr}}@media(max-width:700px){aside{position:static;width:100%;height:auto;padding:14px}.brand{margin:0 0 12px}.entity,.navlabel,.aside-bottom{display:none}nav{display:flex;overflow:auto;gap:4px}nav button{white-space:nowrap;padding:8px;font-size:13px}nav button .num{display:none}main{margin:0;padding:15px}.header-actions .pill{display:none}h1{font-size:20px}.summary{gap:8px}.stat{padding:11px}.stat strong{font-size:17px}.formgrid,.split{grid-template-columns:1fr}.toolbar{flex-wrap:wrap}.panel-head{flex-wrap:wrap}.notice{font-size:12px}}@media print{@page{size:A5;margin:8mm}body{background:white;font-size:11px}aside,header,.notice,footer,button,.toolbar,.no-print{display:none!important}main{margin:0;padding:0}.panel{border-color:#999;break-inside:avoid}.panel-head,.panel-body{padding:8px}td,th{padding:6px;font-size:10px}.summary{gap:5px}.stat{padding:5px}.stat strong{font-size:14px}.formgrid{grid-template-columns:repeat(3,1fr)}input,select{border:0;font-size:11px;padding:0}.invoice-bottom{grid-template-columns:1fr}.panel:before{content:'نمونه آزمایشی — فاقد اعتبار مالی';display:block;color:#555;font-size:10px;padding:4px}}

nav{overflow-y:auto;min-height:0} .aside-bottom{padding-top:15px} [hidden]{display:none!important}
#receipt-view{display:none}@media print{body.receipt-print>aside,body.receipt-print>main,body.receipt-print>dialog{display:none!important}body.receipt-print>#receipt-view{display:block;padding:10mm}#receipt-view table{white-space:normal}}
.checkbox{display:inline-flex;align-items:center;gap:6px;margin:4px}.checkbox input{width:18px;min-height:18px;margin:0}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-grid figure{margin:0}.photo-grid img{display:block;width:100%;max-height:250px;object-fit:contain;border:1px solid var(--border);border-radius:8px}.photo-grid figcaption{font-size:12px;overflow-wrap:anywhere}td button{margin:2px}.toolbar{flex-wrap:wrap}@media(max-width:700px){.entity{display:block;margin:10px 0}.entity select{max-width:100%}.photo-grid{grid-template-columns:1fr}}

.history-value{white-space:pre-wrap;word-break:break-word;max-width:250px;direction:rtl}
.summary{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{min-width:0}.stat strong{overflow-wrap:anywhere}.manual-row{border-top:1px solid var(--border);padding-top:14px;margin-top:14px}details summary{cursor:pointer;margin-bottom:10px}input[type=file]{min-width:0;max-width:100%}
@media(max-width:700px){.summary{grid-template-columns:repeat(2,minmax(0,1fr))}.summary>.stat:nth-child(3):last-child{grid-column:1/-1}.stat strong{font-size:17px}header{flex-wrap:wrap}footer{gap:10px;flex-wrap:wrap}.toolbar>*{max-width:100%}.panel-body{padding:14px}.tablewrap{max-width:100%}}
.branch-grants{border:1px solid var(--line,#e2e8f0);border-radius:10px;padding:12px}
.branch-grants label{display:flex;align-items:center;gap:8px;margin:8px 0}
.branch-grants input[type=checkbox]{width:18px;height:18px;flex:0 0 18px}
#stock-location{max-width:100%}
#location-caption{margin:6px 0 0;font-size:12px}
#dispatch-lines .table-wrap{max-height:260px;overflow:auto}
@media(max-width:700px){aside .entity{display:block;margin:8px 0}.branch-grants label{font-size:13px}}
/* Keep the reviewed decision and its submit control usable on a phone. */
dialog.reviewed-modal{padding:0;max-height:calc(100dvh - 32px);overflow:hidden}dialog.reviewed-modal form{display:flex;flex-direction:column;max-height:calc(100dvh - 32px)}dialog.reviewed-modal .dialog-head{margin:0;padding:14px 20px;border-bottom:1px solid var(--border);align-items:center}dialog.reviewed-modal #fields{padding:20px;overflow:auto;min-height:0}dialog.reviewed-modal #formerror{margin:0 20px}dialog.reviewed-modal .dialog-actions{margin:0;padding:14px 20px;border-top:1px solid var(--border)}dialog.reviewed-modal #manager-review{overflow-wrap:anywhere}dialog.reviewed-modal .dialog-actions button{white-space:normal}#manager-invoices button{margin:3px}

@media(max-width:700px){.manager-command-list .tablewrap,#manager-invoices .tablewrap{overflow:visible}.manager-command-list table,#manager-invoices table{white-space:normal}.manager-command-list thead,#manager-invoices thead{display:none}.manager-command-list tbody,.manager-command-list tr,#manager-invoices tbody,#manager-invoices tr{display:block}.manager-command-list tr,#manager-invoices tr{padding:12px;border-bottom:1px solid var(--border)}.manager-command-list td,#manager-invoices td{display:block;border:0;padding:4px 0;overflow-wrap:anywhere}.manager-command-list td:nth-child(3){margin:8px 0;padding:10px;border-radius:8px;background:#f1f6fc;font-weight:bold}.manager-command-list td:last-child,#manager-invoices td:last-child{display:flex;flex-wrap:wrap;gap:6px}#manager-invoices [data-label]::before{content:attr(data-label) " : ";color:#6e8298;font-size:12px}}

.connection-address{overflow-wrap:anywhere;padding:10px;border:1px solid var(--border);background:#f8fafc;border-radius:8px;font-size:14px}

.provider-agreement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}.provider-agreement-grid .info{margin:0}.provider-window{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(95px,1fr) 40px;gap:8px;align-items:end;padding:12px 0;border-bottom:1px solid #e2e8f0}.provider-window label{min-width:0}.provider-window input,.provider-window select{width:100%;min-width:0}.provider-window button{margin-bottom:0}[hidden]{display:none!important}@media(max-width:600px){.provider-window{grid-template-columns:repeat(2,minmax(0,1fr))}.provider-window button{grid-column:2}}

@media(max-width:700px){.money-table .tablewrap{overflow:visible}.money-table table{white-space:normal}.money-table thead{display:none}.money-table tbody,.money-table tr{display:block}.money-table tr{padding:12px;border-bottom:1px solid var(--border)}.money-table td{display:block;padding:5px 8px;border:0;overflow-wrap:anywhere}.money-table td[data-label]::before{content:attr(data-label) " : ";color:#667c91;font-size:12px;margin-left:8px}.money-table td small{padding-right:12px}.money-table .money-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}}

@media(max-width:580px){
  .reviewed-modal .review-table-wrap{overflow:visible}
  .reviewed-modal table.review-table{display:block;min-width:0;width:100%;table-layout:auto}
  .reviewed-modal .review-table thead{display:none}
  .reviewed-modal .review-table tbody{display:block}
  .reviewed-modal .review-table tr{display:block;border:1px solid var(--border);border-radius:10px;margin:10px 0;overflow:hidden}
  .reviewed-modal .review-table td{display:flex;align-items:baseline;justify-content:space-between;gap:12px;white-space:normal;overflow-wrap:anywhere;padding:10px;min-width:0;text-align:left}
  .reviewed-modal .review-table td:before{content:attr(data-label);color:#667c91;font-size:12px;text-align:right;flex:0 0 42%}
  .reviewed-modal .review-table td small{display:contents}
}

@media(max-width:580px){.cost-jobs .tablewrap{overflow:visible}.cost-jobs table{white-space:normal}.cost-jobs thead{display:none}.cost-jobs tbody,.cost-jobs tr{display:block}.cost-jobs td{display:block;padding:8px;overflow-wrap:anywhere}.cost-jobs td:before{content:attr(data-label) " : ";color:#667c91}}
/* New review and setup tables retain every labelled field on narrow screens. */
#v19-review,.reviewed-modal #fields>*{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){
 .v19-table{overflow:visible;min-width:0}.v19-table table{white-space:normal;min-width:0}.v19-table thead{display:none}
 .v19-table tbody,.v19-table tr{display:block}.v19-table tr{padding:10px 14px;border-bottom:1px solid var(--border)}
 .v19-table td{display:block;border:0;padding:5px 0;overflow-wrap:anywhere}
 .v19-table td[data-label]:before{content:attr(data-label) " : ";color:#667c91;font-size:12px;margin-left:6px}
 .v19-table button{margin:3px;white-space:normal}
}

/* Grouped number controls retain RTL labels and an LTR editing cursor. */
input.number-input{direction:ltr;text-align:right;font-variant-numeric:tabular-nums}

.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px;color:#18334e;font-size:19px;font-weight:600}.login-brand img{display:block;width:72px;height:72px;flex:0 0 72px;object-fit:contain}.login-brand small{display:block;color:#678096;font-size:13px;font-weight:400}
