@font-face{font-family:Vazir;src:url('assets/vazirmatn.ttf')}*{box-sizing:border-box}body{margin:0;background:#f4f6f8;color:#172b35;font-family:Vazir,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.demo{padding:10px 24px;background:#e8eff4;color:#486071;text-align:center;font-size:13px;border-bottom:1px solid #dce4e9}.demo span{font-weight:700;margin-left:12px}.shell{display:flex;min-height:calc(100vh - 43px)}.shell>aside{width:246px;flex-shrink:0;background:#fff;border-left:1px solid #e3e9eb;padding:35px 23px;display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 43px)}.brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:750}.brand>b{background:#174e48;color:#fff;border-radius:14px;width:46px;height:46px;display:grid;place-items:center;font-size:27px}.brand small{display:block;font-size:12px;color:#7a8791;font-weight:400}.role{display:flex;margin:37px 0 27px;background:#f1f4f5;padding:4px;border-radius:9px}.role button{border:0;background:none;color:#687984;font-size:13px;padding:8px 9px;flex:1;border-radius:6px}.role .active{background:white;box-shadow:0 2px 5px #153b4912;color:#174e48;font-weight:700}nav{display:grid;gap:9px}nav a{display:flex;align-items:center;gap:12px;padding:13px;border-radius:9px;font-size:14px;color:#61737d}nav a.active{background:#eaf4f0;color:#174e48;font-weight:650}.icon{width:21px;height:21px;display:inline-block;vertical-align:middle;flex-shrink:0}.side-bottom{margin-top:auto;display:flex;gap:11px;border-top:1px solid #edf0f2;padding-top:22px}.avatar{width:39px;height:39px;background:#edf1f6;display:grid;place-items:center;border-radius:50%;color:#42617c}.side-bottom strong{font-size:14px}.side-bottom small{display:block;font-size:12px;color:#89969d}main{min-width:0;flex:1;padding:0 48px;max-width:1600px}header{height:90px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e7ea;color:#71818b;font-size:13px}.header-note{color:#9aa5ac}#app{min-height:calc(100vh - 210px);padding:38px 0}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:29px;gap:18px}h1{font-size:29px;letter-spacing:-.6px;margin:0 0 7px;font-weight:750}h2{font-size:19px;margin:0}h3{font-size:16px;margin:0 0 12px}p{line-height:1.9;margin:8px 0;color:#6d7e89;font-size:14px}.btn{display:inline-flex;gap:8px;align-items:center;justify-content:center;background:#174e48;border:1px solid #174e48;color:white;padding:11px 19px;border-radius:9px;font-size:14px;font-weight:600;white-space:nowrap}.btn:hover{background:#103c37}.btn.secondary{background:white;color:#33535e;border-color:#dce4e8}.btn.secondary:hover{background:#f1f6f5}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.small{padding:7px 12px;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;margin-bottom:28px}.stat{background:white;border:1px solid #e0e7eb;border-radius:12px;padding:22px;display:flex;align-items:center;gap:16px}.stat-icon{padding:12px;background:#eff4f8;color:#63829a;border-radius:12px}.stat:nth-child(2) .stat-icon{background:#fff4e6;color:#b77c2c}.stat:nth-child(3) .stat-icon{background:#eaf5ef;color:#367a61}.stat strong{display:block;font-size:28px;line-height:1.1}.stat span{font-size:13px;color:#76868f}.panel{background:#fff;border:1px solid #e0e7eb;border-radius:13px;overflow:hidden}.panel-title{padding:23px 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f2}.panel-title small{color:#92a0a7;font-size:12px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap}th{font-size:12px;font-weight:500;background:#fafbfc;color:#83929b;padding:14px 24px}td{font-size:14px;padding:21px 24px;border-bottom:1px solid #edf0f3}tr:last-child td{border:0}.doc-name{display:flex;align-items:center;gap:13px}.doc-icon{background:#f2f5f7;border:1px solid #e6ecef;color:#68818d;padding:9px;border-radius:9px}.doc-name small{display:block;font-size:12px;color:#98a4ab;margin-top:3px}.badge{display:inline-flex;border-radius:6px;padding:5px 10px;font-size:12px;font-weight:500;background:#edf3fa;color:#4a6f99}.badge.wait{background:#fff2dd;color:#986920}.badge.ready{background:#eaf6ef;color:#28795a}.text-btn{border:0;background:none;color:#29685d;padding:6px;font-size:13px;font-weight:600}.tip{display:flex;align-items:center;gap:14px;border:1px dashed #cddbdc;border-radius:11px;padding:18px 22px;margin-top:25px;color:#74868c;font-size:13px}.tip .icon{color:#468474}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:25px}.form-panel{padding:28px}.form-section{margin-bottom:26px}.form-section>label,.field>label{display:block;font-size:14px;font-weight:600;margin-bottom:9px}.optional{color:#96a0a6;font-weight:400;font-size:12px;margin-right:5px}.drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:182px;border:1.5px dashed #aac8c1;background:#f7fbf9;border-radius:11px;text-align:center;cursor:pointer;padding:25px}.drop.drag{background:#dcefe6;border-color:#174e48}.drop .upload-icon{background:#e4f0e9;border-radius:12px;padding:13px;color:#286657;margin-bottom:13px}.drop strong{font-size:15px}.drop small{font-size:12px;color:#91a099;margin-top:8px}.file-input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}input:not([type=file]),select,textarea{background:white;color:#233e48;border:1px solid #dce4e7;border-radius:8px;padding:11px 13px;width:100%;font-size:14px}textarea{resize:vertical;min-height:90px}.passport{display:flex;align-items:center;gap:12px;border:1px solid #e4e9ec;border-radius:9px;padding:16px;position:relative}.passport p{font-size:12px;margin:2px 0}.passport .btn{margin-right:auto}.form-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0f2;padding-top:22px}.form-bottom small{font-size:12px;color:#8b989f}.helper{padding:24px;background:#edf4f2;border:1px solid #dfebe6;border-radius:12px;align-self:start}.helper>div{display:flex;gap:11px;margin:22px 0;font-size:14px;line-height:1.9;color:#607a70}.helper b{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;background:#dcebe3;border-radius:50%;font-size:12px;color:#2e6d57}.helper small{display:block;border-top:1px solid #d6e4dd;padding-top:18px;font-size:12px;color:#7c9187;line-height:1.9}.file-row{display:flex;align-items:center;gap:10px;background:#f8fafb;border-radius:8px;padding:10px 13px;margin-top:9px;font-size:13px}.file-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:75%}.file-row button{margin-right:auto}.error{color:#a73c36;font-size:13px;margin:10px 0}dialog{border:1px solid #dde6e9;border-radius:15px;width:min(720px,94vw);padding:0;color:#213b46;max-height:90vh}dialog::backdrop{background:#112d3c70;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid #e8edef}.close{font-size:26px;background:none;border:0;color:#798b93}.modal-body{padding:25px}.modal-meta{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.section{border-top:1px solid #e8edef;margin-top:22px;padding-top:22px}.message{background:#f1f6f4;padding:13px 16px;border-radius:9px;margin:10px 0;font-size:14px;line-height:1.9}.message.user{background:#f0f4fa}.message small{display:block;font-size:11px;color:#86969c}.inline-form{display:flex;gap:10px;margin-top:14px}.inline-form input{flex:1;min-width:0}.download{display:flex;gap:10px;flex-wrap:wrap}.empty{text-align:center;padding:50px 20px;color:#7d8e98}.editor-form{padding:25px;display:grid;gap:18px}.search-bar{display:flex;gap:12px;margin-bottom:22px}.search-bar input{max-width:340px}.search-bar select{width:auto}.count{font-size:13px;color:#8b9ba3}.status-form{display:flex;align-items:center;gap:12px;margin:18px 0}.status-form select{flex:1}.mini-note{font-size:12px;color:#8b989f;line-height:1.8}.toolbar{display:flex;gap:10px;align-items:center}.file-link{color:#236a5d;text-decoration:underline}.sample{font-size:11px;color:#94a2a7}footer{padding:23px 0;color:#90a0a8;display:flex;justify-content:space-between;font-size:12px;border-top:1px solid #e1e7ea}#toast{position:fixed;bottom:25px;left:25px;background:#173f38;color:white;border-radius:10px;padding:14px 22px;box-shadow:0 8px 35px #122f3325;opacity:0;transform:translateY(15px);transition:.2s;pointer-events:none;z-index:10}#toast.show{opacity:1;transform:translateY(0)}@media(min-width:1500px){main{padding:0 65px}.form-layout{grid-template-columns:minmax(0,1fr) 300px}}@media(max-width:1050px){main{padding:0 25px}.shell>aside{width:210px;padding:25px 16px}.form-layout{grid-template-columns:1fr}.helper{display:none}.stat{padding:17px;gap:10px}.stat-icon{padding:8px}td,th{padding:18px}.header-note{display:none}}@media(max-width:700px){.demo{font-size:12px;padding:9px 14px}.shell{display:block}.shell>aside{position:static;width:100%;height:auto;padding:15px 18px;border-bottom:1px solid #e1e7ea;display:grid;grid-template-columns:1fr 1fr;gap:12px}.brand{font-size:19px}.brand>b{width:37px;height:37px}.brand small,.side-bottom{display:none}.role{margin:0;align-self:center}nav{grid-column:1/-1;display:flex;gap:7px;overflow:auto}nav a{padding:9px;font-size:13px}nav .icon{width:18px}main{padding:0 18px}header{height:48px;font-size:12px}#app{padding:25px 0}.page-head{align-items:flex-start;gap:10px}h1{font-size:23px}.page-head p{font-size:12px}.page-head>.btn{padding:10px 12px;font-size:12px}.stats{gap:8px}.stat{padding:14px 8px;display:block;text-align:center}.stat-icon{display:none}.stat strong{font-size:23px;margin-bottom:8px}.stat span{font-size:11px}.panel-title{padding:18px}.form-panel{padding:20px}.fields{gap:12px}td,th{padding:15px;font-size:12px}.doc-icon{display:none}.form-bottom{gap:10px}.form-bottom small{max-width:45%}.passport{flex-wrap:wrap}.passport .btn{margin-right:0}.tip{padding:15px;font-size:12px}footer span{display:none}.inline-form{flex-wrap:wrap}.modal-body{padding:18px}.search-bar{flex-wrap:wrap}.search-bar input{max-width:none}.toolbar{flex-wrap:wrap}.page-head .toolbar{justify-content:flex-end}}

.helper{width:auto;height:auto;position:static;display:block}.quote{padding:18px;background:#f1f7f4;border-radius:10px}.quote>div{display:flex;justify-content:space-between;gap:15px;font-size:14px;margin:8px 0}.wallet-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px;background:#174e48;color:white;border-radius:13px;margin-bottom:16px}.wallet-card strong{display:block;font-size:27px;margin-top:12px}.wallet-card span{font-size:14px;color:#c5ded5}.credit{color:#28795a}.debit{color:#985027}.pricing-note{padding:8px 24px}#ratesForm input{max-width:220px}@media(max-width:700px){.wallet-card{padding:22px;align-items:flex-start;flex-direction:column}.wallet-card strong{font-size:22px}.quote>div{flex-wrap:wrap}}

[hidden]{display:none!important}.person-row{margin-top:16px}.quote-item{display:flex;align-items:center;gap:12px;border-bottom:1px solid #e4e9ec;padding:16px 0}.quote-item span{flex:1;min-width:0}.quote-item small{display:block;overflow-wrap:anywhere;color:#6d7e89}.quote-item strong{font-size:14px}.quote-item input[type=checkbox],.check-label input[type=checkbox]{width:20px;height:20px;flex-shrink:0}.quote-editor-row{border:1px solid #dce4e7;border-radius:10px;padding:16px;margin-bottom:18px}.check-label{display:flex;align-items:center;gap:10px;margin:16px 0}.badge.checking{background:#edf3fa;color:#4a6f99}.badge.quoted{background:#fff2dd;color:#986920}@media(max-width:700px){.quote-item{flex-wrap:wrap}.quote-item strong{margin-right:32px}.fields{grid-template-columns:1fr}}

.payment-panel{margin-top:24px}.payment-methods{border:0;padding:0;margin:20px 0;display:grid;gap:12px}.payment-methods label{border:1px solid #dce4e7;padding:16px;border-radius:10px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.payment-methods input{width:20px;height:20px}.payment-methods small{color:#63777d}.payment-destination{display:grid;gap:10px;text-align:center;background:#edf5f2;padding:22px;border-radius:10px;margin:18px 0}.payment-destination b{font-size:24px;letter-spacing:2px}.receipt-preview{max-width:100%;max-height:420px;object-fit:contain;display:block;margin:20px auto}.payment-reason{display:block;max-width:280px;overflow-wrap:anywhere;margin-top:8px}.editor-form input{max-width:100%}
.auth-layout{min-height:calc(100vh - 64px);max-width:1080px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:48px 32px}.auth-intro h1{font-size:40px;line-height:1.7;margin:34px 0 18px}.auth-intro p{color:#627875;line-height:2;max-width:390px}.auth-points{display:grid;gap:14px;margin-top:30px;color:#24665b}.auth-card{padding:32px}.auth-card h2{margin:28px 0 8px}.auth-card .field{margin:20px 0}.auth-card .btn{width:100%;margin-top:12px}.auth-tabs{display:flex;border-bottom:1px solid #e2e9e6;gap:25px}.auth-tabs button{border:0;background:transparent;font:inherit;padding:12px 6px;color:#637970;cursor:pointer}.auth-tabs .selected{color:#184c45;border-bottom:3px solid #184c45}.logout-btn{margin:12px 24px}.user-contact{display:block;margin-top:7px;font-size:12px;color:#71817d}.account-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.account-metrics>div{background:#f0f5f3;padding:16px;border-radius:8px}.account-metrics small,.account-metrics strong{display:block}.account-metrics strong{margin-top:8px}.account-facts p{margin:8px 0}#usersSummary .stat strong{font-size:20px}.auth-card small{line-height:1.8;color:#6b7d76}@media(max-width:760px){.auth-layout{grid-template-columns:1fr;gap:24px;padding:24px 16px}.auth-intro h1{font-size:26px;margin:18px 0 8px}.auth-intro h1 br{display:none}.auth-intro p,.auth-points{display:none}.auth-card{padding:24px}.account-metrics{grid-template-columns:1fr}.auth-intro .brand{margin:0}}

.shell>aside nav{margin-top:28px}.side-bottom small{overflow-wrap:anywhere}.stats .stat{min-width:0}#authRoot{width:100%}.auth-layout>*{min-width:0}@media(max-width:500px){#usersSummary .stats{grid-template-columns:1fr}#usersSummary .stat{padding:18px}#usersSummary .stat strong{font-size:22px}#usersSummary .stat span{display:block;margin-top:10px}.auth-intro h1{font-size:24px}.account-facts{overflow-wrap:anywhere}}

/* Mobile navigation and content containment, shared by both account roles. */
.menu-toggle{display:none}.menu-open{overflow:hidden}
.table-wrap{max-width:100%;min-width:0;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.table-scroll-hint{margin:0;padding:10px 16px;background:#f1f7f4;color:#37675b;font-size:12px;border-bottom:1px solid #e0e7eb}
.field,.fields>*{min-width:0}input[type=file]{max-width:100%;min-width:0}
.file-row span{min-width:0;flex:1}.file-row small,.file-row a,.file-row button{flex-shrink:0}
.file-row button{margin-right:0}.modal-head>div{min-width:0;overflow-wrap:anywhere}.modal-head .close{flex-shrink:0}
#mobileMenu{inset:0 0 0 auto;margin:0;width:min(340px,calc(100vw - 28px));max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:18px 0 0 18px;padding:0;overscroll-behavior:contain}
#mobileMenuContent{min-height:100%;display:flex;flex-direction:column;padding:20px 18px;padding-bottom:max(20px,env(safe-area-inset-bottom))}
.drawer-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid #e5ece9}
.drawer-head .brand small{display:block}.drawer-head .close{width:44px;height:44px;border:1px solid #e1e8e5;border-radius:10px}
#mobileMenu nav{display:grid;overflow:visible;gap:5px;margin:16px 0}#mobileMenu nav a{min-height:48px;padding:12px;font-size:15px;gap:14px}#mobileMenu nav .icon{width:21px;height:21px}
.drawer-account{margin-top:auto;border-top:1px solid #e4ebe8;padding-top:16px;overflow-wrap:anywhere}.drawer-account strong,.drawer-account small{display:block}.drawer-account small{font-size:12px;color:#72837b;text-align:right;margin-top:5px}.drawer-account .text-btn{margin-top:12px;min-height:44px}
@media(max-width:760px){
  .shell{display:block}.shell>aside{display:none}
  main{width:100%;max-width:100%;padding:0 16px}
  header{height:64px;gap:12px;justify-content:flex-start;position:sticky;top:0;background:#f4f6f8;z-index:2}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid #d8e3df;background:white;color:#174e48;border-radius:10px}
  #breadcrumb{min-width:0;font-size:12px;line-height:1.7}.header-note{display:none}
  #app{padding:24px 0;min-height:calc(100dvh - 190px)}
  .page-head{flex-wrap:wrap;align-items:flex-start;margin-bottom:22px}.page-head>div{min-width:0;max-width:100%}.page-head h1{font-size:23px}.page-head .toolbar{justify-content:flex-start}
  .btn{min-height:44px;white-space:normal;line-height:1.7}.text-btn{min-height:44px}.close{min-width:44px;min-height:44px}
  input:not([type=file]),select,textarea{font-size:16px;min-width:0}input[type=file]{font-size:13px;width:100%}
  .fields{grid-template-columns:minmax(0,1fr)}.form-layout{grid-template-columns:minmax(0,1fr)}
  .form-panel,.editor-form{padding:18px}.form-section,.panel,.editor-form>*{min-width:0}
  .panel-title{padding:16px;gap:12px;flex-wrap:wrap}.panel-title h2{font-size:17px;min-width:0}
  .panel p,.modal-body p,.editor-form p,.message,.account-facts,.tip{overflow-wrap:anywhere}
  table{font-size:13px}td,th{padding:14px 16px}td:first-child{white-space:normal;min-width:135px;max-width:210px;overflow-wrap:anywhere}
  .doc-name{min-width:150px;max-width:210px}.doc-name>div{min-width:0}.doc-name small{overflow-wrap:anywhere}
  .user-contact{max-width:190px;white-space:normal;overflow-wrap:anywhere}
  .search-bar{flex-wrap:wrap}.search-bar input{max-width:none}.search-bar select{width:100%}
  .toolbar{flex-wrap:wrap}.status-form{flex-wrap:wrap}.status-form select{flex-basis:100%}
  .form-bottom{flex-wrap:wrap;align-items:stretch;gap:14px}.form-bottom small{max-width:none;width:100%}.form-bottom .btn{width:100%}
  .file-row{flex-wrap:wrap;gap:8px;padding:12px}.file-row span{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;max-width:none;flex-basis:calc(100% - 40px)}
  .file-row small{margin-inline-start:31px}.file-row a,.file-row button{margin-inline-start:auto}
  .passport{flex-wrap:wrap}.passport>div{min-width:0}.drop{padding:20px 14px}.drop strong{font-size:14px}
  dialog:not(#mobileMenu){width:calc(100vw - 24px);max-width:680px;max-height:calc(100dvh - 24px);margin:auto;overscroll-behavior:contain}
  .modal-head{padding:14px 16px;gap:10px}.modal-head h2{font-size:18px;overflow-wrap:anywhere}.modal-body{padding:16px}.modal-meta{gap:10px;overflow-wrap:anywhere}
  .quote-editor-row{min-width:0;padding:12px}.quote-editor-row legend{white-space:normal;max-width:100%}
  .payment-methods{min-width:0}.payment-methods label{padding:12px}.payment-methods input{width:20px;min-width:20px;flex:0 0 20px}
  .payment-destination{padding:16px 10px}.payment-destination b{font-size:20px;letter-spacing:1px}
  .account-metrics{grid-template-columns:minmax(0,1fr)}.account-metrics strong{overflow-wrap:anywhere}
  #toast{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:14px 16px;overflow-wrap:anywhere;max-height:40dvh;overflow:auto}
  .auth-card{max-width:calc(100% - 24px)}.auth-layout .auth-card{max-width:100%}
  #coreForm textarea{min-height:130px}pre{max-width:100%;min-width:0}
}
@media(prefers-reduced-motion:reduce){#toast{transition:none}}
