@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Thin.0bd8ivb2xogiu.woff2)format("woff2");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-ExtraLight.1ba-pjko-mym7.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Light.1gc67kpj175nw.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Regular.0dcb8kz605k8s.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Medium.2-_uiwuue8zmx.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-SemiBold.324a-bwgua3id.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Bold.3_l2lbvbvgs-_.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-ExtraBold.2nbua_npfyp0v.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(../media/Vazirmatn-Black.2o5hrkiylztya.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}
:root{--bg:#eef1f4;--panel:#fff;--ink:#16222e;--muted:#5b6b7a;--rule:#d6dce3;--rule-strong:#aab4bf;--accent:#1d4e89;--accent-soft:#e4edf7;--ok:#1e7b4f;--ok-soft:#e3f3ea;--warn:#9a5b00;--warn-soft:#fff3dc;--bad:#b3261e;--bad-soft:#fde8e6;--radius:6px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0;font-family:Vazirmatn,Tahoma,sans-serif;font-size:15px;line-height:1.7}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.num{font-variant-numeric:tabular-nums;text-align:left;direction:ltr;unicode-bidi:isolate}.shell{max-width:1480px;margin:0 auto;padding:0 20px 80px}.topbar{border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;padding:18px 0 14px;display:flex}.topbar h1{letter-spacing:-.2px;margin:0;font-size:21px;font-weight:800}.topbar .sub{color:var(--muted);font-size:13px}.toolbar{flex-wrap:wrap;gap:8px;display:flex}.btn{border:1px solid var(--rule-strong);background:var(--panel);border-radius:var(--radius);padding:7px 14px;font-size:14px;font-weight:600}.btn:hover{border-color:var(--ink)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#163d6c}.btn.ghost{color:var(--accent);background:0 0;border-color:#0000;padding:4px 8px}.btn.danger{color:var(--bad)}.btn:disabled{opacity:.5;cursor:not-allowed}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:18px;padding:18px 20px}.panel h2{margin:0 0 4px;font-size:16px;font-weight:800}.panel .hint{color:var(--muted);margin:0 0 14px;font-size:13px}.slots{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (max-width:860px){.slots{grid-template-columns:1fr}}.slot{border:1.5px dashed var(--rule-strong);border-radius:var(--radius);cursor:pointer;background:#fafbfc;flex-direction:column;gap:6px;min-height:128px;padding:16px;transition:border-color .12s,background .12s;display:flex}.slot:hover,.slot.drag{border-color:var(--accent);background:var(--accent-soft)}.slot.filled{border-style:solid;border-color:var(--ok);background:var(--ok-soft)}.slot .src{color:var(--muted);font-size:12px}.slot .title{font-weight:800}.slot .file{text-align:right;word-break:break-all;direction:ltr;font-size:13px}.slot .where{color:var(--muted);margin-top:auto;font-size:12px}.row-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.notice{border-radius:var(--radius);white-space:pre-line;border:1px solid;margin-bottom:12px;padding:10px 14px;font-size:14px}.notice.error{background:var(--bad-soft);color:var(--bad);border-color:#eab1ac}.notice.warn{background:var(--warn-soft);color:var(--warn);border-color:#ecd09b}.notice.ok{background:var(--ok-soft);color:var(--ok);border-color:#b6dfc8}.summary{border:1px solid var(--ink);border-radius:var(--radius);background:var(--panel);grid-template-columns:1.4fr repeat(3,1fr);gap:0;margin-bottom:18px;display:grid;overflow:hidden}@media (max-width:900px){.summary{grid-template-columns:1fr 1fr}}.summary>div{border-inline-start:1px solid var(--rule);padding:14px 18px}.summary>div:first-child{background:var(--ink);color:#fff;border-inline-start:0}.summary .k{color:var(--muted);font-size:12px}.summary>div:first-child .k{color:#b8c4d0}.summary .v{font-size:22px;font-weight:800}.summary>div:first-child .v{font-size:28px}.summary .u{color:var(--muted);font-size:12px;font-weight:400}.summary>div:first-child .u{color:#b8c4d0}.map-row{border-top:1px solid var(--rule);grid-template-columns:1.2fr 1fr 1.4fr auto;align-items:center;gap:10px;padding:8px 0;display:grid}.map-row:first-of-type{border-top:0}@media (max-width:800px){.map-row{grid-template-columns:1fr}}.tag{border:1px solid var(--rule-strong);color:var(--muted);border-radius:3px;margin-inline-end:6px;padding:0 6px;font-size:11px;display:inline-block}select,input[type=text]{border:1px solid var(--rule-strong);background:#fff;border-radius:4px;width:100%;padding:5px 8px}.tablewrap{border:1px solid var(--rule);border-radius:var(--radius);background:var(--panel);max-height:74vh;overflow:auto}table.ledger{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}.ledger th{z-index:2;border-bottom:2px solid var(--ink);text-align:right;white-space:nowrap;background:#f4f6f8;padding:9px 10px;font-weight:700;position:sticky;top:0}.ledger th.n,.ledger td.n{text-align:left}.ledger td{border-bottom:1px solid var(--rule);white-space:nowrap;background:var(--panel);padding:7px 10px}.ledger td.name,.ledger th.name{z-index:1;background:var(--panel);border-inline-start:1px solid var(--rule);font-weight:600;position:sticky;right:0}.ledger th.name{z-index:3;background:#f4f6f8}.ledger tr.open td,.ledger tr.open td.name{background:var(--accent-soft)}.ledger td.final{font-weight:800}.ledger td.neg{color:var(--bad)}.ledger tfoot td{border-top:3px double var(--ink);background:#f4f6f8;font-weight:800;position:sticky;bottom:0}.ledger .toggle{color:var(--accent);background:0 0;border:0;padding:0 6px;font-weight:700}.ledger .instl{text-align:left;direction:ltr;width:112px;padding:3px 6px}.editor{border-bottom:2px solid var(--accent);background:#fbfcfd;padding:14px 18px 18px}.editor-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 14px;display:grid}.editor label{color:var(--muted);margin-bottom:2px;font-size:12px;display:block}.editor input{text-align:left;direction:ltr}.editor h3{margin:16px 0 6px;font-size:13px}.rates{grid-template-columns:auto repeat(3,1fr);align-items:center;gap:6px 10px;max-width:520px;display:grid}.rates .lab{font-size:13px}.calcgrid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:2px 18px;margin-top:10px;font-size:13px;display:grid}.calcgrid div{border-bottom:1px dotted var(--rule);justify-content:space-between;padding:2px 0;display:flex}.calcgrid span:first-child{color:var(--muted)}.settings-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 14px;max-width:760px;display:grid}.periods li{border-top:1px solid var(--rule);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.periods{margin:0;padding:0;list-style:none}.spinner{border:2px solid var(--rule);border-top-color:var(--accent);vertical-align:-2px;border-radius:50%;width:15px;height:15px;margin-inline-end:6px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}
