.doc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;width:210mm;max-width:100%;margin:0 auto 16px}.doc-toolbar .tb-group{display:flex;align-items:center;gap:8px}.doc-page{background:#fff;width:210mm;min-height:auto;margin:0 auto;padding:13mm 12mm;box-shadow:var(--shadow);color:#232a2f;font-size:11px;position:relative}.inv-head{display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:stretch;gap:18px;padding-bottom:12px;border-bottom:3px solid var(--brand-red)}.inv-brand{display:flex;align-items:flex-start;text-align:right;min-width:0}.inv-logo{width:116px;height:auto;object-fit:contain;margin-bottom:12px}.inv-brand-text{min-width:0}.inv-name-ar{font-size:17px;font-weight:800;color:var(--brand-red);line-height:1.25;margin-bottom:1px}.inv-name-en{font-size:15px;font-weight:800;color:var(--brand-charcoal);line-height:1.15;letter-spacing:.2px}.inv-tag{font-size:8.5px;color:var(--brand-red);font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin:3px 0 6px}.inv-contact{font-size:9.5px;color:#4c545b;line-height:1.5}.inv-doc{text-align:left;min-width:232px;display:flex;flex-direction:column;align-items:flex-start}.inv-doc-badge{background:var(--brand-charcoal);color:#fff;font-size:17px;font-weight:800;letter-spacing:2px;padding:7px 16px;border-radius:4px;border-left:4px solid var(--brand-red)}.inv-doc-sub{font-size:8px;color:var(--muted);letter-spacing:.8px;text-transform:uppercase;margin:5px 0 8px}.inv-ids{display:flex;justify-content:flex-end;gap:16px;margin-top:6px;font-size:9.5px;color:#6b7680}.inv-ids strong{color:var(--brand-charcoal);font-weight:700}.inv-meta-simple{width:100%;margin-top:6px}.m-row{display:flex;align-items:baseline;gap:12px;padding:5px 0}.m-label{min-width:116px;flex-shrink:0;font-size:8.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:700;white-space:nowrap}.m-value{font-size:11px;font-weight:700;color:var(--brand-charcoal);text-align:left}.m-value.hl{color:var(--brand-red);font-size:12.5px;font-weight:800;letter-spacing:.3px}.parties{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.party{border:1px solid #d8dee3;border-radius:5px;padding:8px 11px;background:#fcfdfe}.party .p-h{font-size:8.5px;text-transform:uppercase;letter-spacing:.5px;color:#fff;background:var(--brand-charcoal);display:inline-block;padding:2px 9px;border-radius:3px;margin-bottom:6px;font-weight:700}.party .p-name{font-weight:800;font-size:12px;color:var(--brand-charcoal)}.party .p-line{color:#3a4248;white-space:pre-line;font-size:10px;line-height:1.45}.items-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:10px}.items-table thead th{background:var(--brand-charcoal);color:#fff;padding:7px 6px;text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.3px;border:1px solid var(--brand-charcoal)}.items-table tbody td{padding:6px;border:1px solid #dde2e6;vertical-align:top}.items-table tbody tr:nth-child(2n){background:#f8fafb}.items-table .r{text-align:right}.items-table .c{text-align:center}.items-table .desc{font-weight:600;color:#2a3136}.items-table .code{font-size:8.5px;color:var(--muted)}.totals-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;margin-top:12px;align-items:stretch}.words-box{border:1px solid #d8dee3;border-radius:5px;padding:10px 13px;background:#f7f9fa;display:flex;flex-direction:column;justify-content:center;gap:4px}.words-box .lbl{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:700;letter-spacing:.4px}.words-box .val{font-weight:800;color:var(--brand-charcoal);font-size:11px}.totals-table{width:100%;border-collapse:collapse;font-size:11px}.totals-table td{padding:5px 10px;border:1px solid #dde2e6}.totals-table td.lbl{color:#3a4248}.totals-table td.amt{text-align:right;font-weight:700}.totals-table tr.grand td{background:var(--brand-red);color:#fff;font-size:13px;font-weight:800;border-color:var(--brand-red)}.totals-table tr.balance td{background:#2e353a;color:#fff;font-weight:800;border-color:#2e353a}.totals-table td.lbl{background:#f2f4f6}.parties.one,.pay-grid.one{grid-template-columns:1fr}.doc-subject{margin-top:12px;padding:8px 14px;border:1px solid #d8dee3;border-left:3px solid var(--brand-red);border-radius:5px;background:#f7f9fa;font-size:11px;text-align:center;color:var(--brand-charcoal)}.doc-subject span{font-weight:800;color:var(--brand-red);text-transform:uppercase;letter-spacing:.4px;margin-right:4px}.tax-summary{width:100%;border-collapse:collapse;margin-top:12px;font-size:9.5px}.tax-summary th,.tax-summary td{border:1px solid #dde2e6;padding:5px 7px}.tax-summary th{background:#eef1f3;color:var(--brand-charcoal);text-transform:uppercase;font-size:8.5px;letter-spacing:.3px}.tax-summary .r{text-align:right}.tax-summary tfoot td{font-weight:800;background:#f7f8fa}.pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.pay-box{border:1px solid #d8dee3;border-radius:5px;padding:9px 12px}.bank-box{background:#f7f9fa}.pay-box h4{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--brand-red);margin:0 0 7px;padding-bottom:5px;border-bottom:1px solid #e6eaed}.pay-box .kv{display:flex;justify-content:space-between;gap:8px;padding:2px 0;font-size:10px}.pay-box .kv span:first-child{color:var(--muted)}.pay-box .kv span:last-child{font-weight:700;text-align:right;color:#2a3136}.pay-box .strong-kv{border-top:1px dashed #cfd6db;margin-top:3px;padding-top:4px}.pay-box .strong-kv span:last-child{color:var(--brand-red);font-weight:800}.pay-status{display:inline-block;padding:1px 8px;border-radius:999px;font-size:9px;font-weight:800}.st-PAID{background:#e3f5ec;color:var(--ok)}.st-PARTIAL{background:#fbf0dc;color:var(--warn)}.st-UNPAID{background:#fde7ea;color:var(--brand-red)}.pay-instruction{margin-top:10px;padding:7px 11px;border-left:3px solid var(--brand-red);background:#fbf4f5;font-size:9.5px;color:#3a4248;border-radius:0 4px 4px 0}.pay-instruction strong{color:var(--brand-charcoal)}.desc-notes{border:1px solid #d8dee3;border-left:3px solid var(--brand-red);border-radius:5px;padding:9px 12px;margin-top:14px;background:#fcfdfe}.desc-notes h4{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--brand-red);margin:0 0 6px;border-bottom:1px solid #e6eaed;padding-bottom:4px}.desc-notes .body{white-space:pre-line;color:#3a4248;font-size:9.5px;line-height:1.55}.closing-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:12px;margin-top:14px;align-items:stretch}.closing-col{display:flex;flex-direction:column;gap:10px}.terms-box{border:1px solid #d8dee3;border-radius:5px;padding:9px 12px}.terms-box h4{font-size:9px;text-transform:uppercase;letter-spacing:.5px;color:var(--brand-charcoal);margin:0 0 6px;border-bottom:1px solid #e6eaed;padding-bottom:4px}.terms-box .body{white-space:pre-line;color:#3a4248;font-size:9.5px;line-height:1.5}.sign-box{border:1px solid #d8dee3;border-radius:5px;padding:10px 12px;display:flex;flex-direction:column;text-align:center;background:#fcfdfe}.sign-box .sign-for{font-size:9.5px;color:var(--muted);font-weight:700}.sign-stamp-space{flex:1;min-height:46px;display:flex;align-items:center;justify-content:center}.paid-stamp{border:2px solid var(--ok);color:var(--ok);font-weight:800;padding:4px 14px;border-radius:6px;transform:rotate(-8deg);letter-spacing:2px;font-size:14px}.sign-box .sign-line{border-top:1px solid #8a949b;padding-top:5px;font-weight:800;color:var(--brand-charcoal);font-size:10px}.doc-footer{margin-top:14px;border-top:2px solid var(--brand-charcoal);padding-top:7px;text-align:center;font-size:8.5px;color:var(--muted);line-height:1.5}@media print{html,body{background:#fff!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.no-print,.sidebar,.topbar,.doc-toolbar{display:none!important}.app-shell{display:block}.content{padding:0!important}.doc-page{box-shadow:none;margin:0 auto}.print-a4 .doc-page{width:100%!important;padding:0!important}.inv-head,.parties,.party,.totals-wrap,.tax-summary,.pay-grid,.pay-box,.desc-notes,.closing-grid,.terms-box,.sign-box,.items-table tr,.dn-items tr{break-inside:avoid;page-break-inside:avoid}.items-table thead,.dn-items thead{display:table-header-group}}.dnote{color:#232b31;font-size:11px;position:relative}.dn-intro{display:flex;align-items:center;gap:8px;margin:16px 0 8px;font-size:10px;font-weight:700;color:#3a4248}.dn-intro:before{content:"";width:4px;height:14px;background:var(--brand-red);border-radius:2px}.dn-items{width:100%;border-collapse:collapse;font-size:10.5px;border:1px solid #dbe0e4}.dn-items thead th{background:var(--brand-charcoal);color:#fff;font-size:8px;text-transform:uppercase;letter-spacing:.5px;padding:9px 8px;text-align:left;font-weight:700;border-bottom:2px solid var(--brand-red)}.dn-items thead th.c{text-align:center}.dn-items thead th.r{text-align:right}.dn-items tbody td{padding:8px;border-bottom:1px solid #eef1f3;vertical-align:middle}.dn-items tbody tr:nth-child(2n){background:#f8fafb}.dn-items td.c{text-align:center}.dn-items td.r{text-align:right}.dn-items .idx{color:var(--muted);font-weight:700}.dn-items .desc{font-weight:600;color:#2a3136}.dn-items .model{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:9.5px;color:#4c545b}.dn-empty td{height:22px}.dn-items tfoot td{background:#eef1f3;font-weight:800;color:var(--brand-charcoal);padding:7px 8px;border-top:1px solid #dbe0e4;font-size:9.5px;text-transform:uppercase;letter-spacing:.4px}.dn-warranty{display:flex;gap:11px;align-items:flex-start;margin-top:14px;padding:10px 14px;background:#fbf4f5;border:1px solid #f0d9dc;border-left:4px solid var(--brand-red);border-radius:6px}.dn-warranty .ico{font-size:15px;line-height:1.2}.dn-warranty .lbl{display:block;font-size:7.5px;text-transform:uppercase;letter-spacing:1px;color:var(--brand-red);font-weight:800;margin-bottom:2px}.dn-warranty .txt{font-size:10.5px;color:#3a4248}.dn-warranty .txt strong{color:var(--brand-charcoal)}.dn-note-box{margin-top:10px;padding:8px 12px;border:1px dashed #cfd6db;border-radius:6px;font-size:9.5px;color:#4c545b;white-space:pre-line}.dn-sign{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.dn-sign-box{border:1px solid #e0e4e8;border-radius:8px;padding:12px 14px;min-height:100px;display:flex;flex-direction:column;background:#fcfdfe}.dn-sign-h{align-self:flex-start;font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#fff;background:var(--brand-charcoal);padding:3px 11px;border-radius:4px;font-weight:700}.dn-sign-name{margin-top:10px;font-size:12px;font-weight:800;color:var(--brand-charcoal);min-height:15px}.dn-sign-spacer{flex:1;min-height:24px}.dn-sign-line{border-top:1px solid #8a949b;padding-top:4px;font-size:8.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.4px}.dn-sign-date{margin-top:6px;font-size:9.5px;color:#3a4248}.dn-foot{margin-top:18px;border-top:2px solid var(--brand-charcoal);padding-top:8px;text-align:center;font-size:8.5px;color:var(--muted);line-height:1.6}.dn-foot .row1{color:#3a4248;font-weight:700}@media print{.dn-items thead{display:table-header-group}.dn-items tr,.dn-warranty,.dn-sign,.dn-sign-box{break-inside:avoid;page-break-inside:avoid}}.inv-doc-root{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;--red: #e4002b;--ink: #14181c;--muted: #333a41;--border: #dde1e6;--soft: transparent;--page-w: 210mm;--page-h: 297mm;--pad-x: 8mm}.inv-doc-root .sheets{display:flex;flex-direction:column;align-items:center;gap:10mm;padding:4mm 0 14mm}.inv-doc-root .sheet{position:relative;width:var(--page-w);background:#fff;box-shadow:0 3px 18px #0000002e;display:flex;flex-direction:column;color:var(--ink);font-family:Segoe UI,Tahoma,Arial,Helvetica,sans-serif}.inv-doc-root .sheet-header{padding:7mm var(--pad-x) 0;flex:0 0 auto;position:relative;z-index:1}.inv-doc-root .sheet-body{padding:0 var(--pad-x) 5mm;flex:0 0 auto;position:relative;z-index:1}.inv-doc-root .sheet-footer{padding:2.5mm var(--pad-x) 4mm;flex:0 0 auto;border-top:.35mm solid var(--border);position:relative;z-index:1}.inv-doc-root .sheet-watermark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;overflow:hidden}.inv-doc-root .sheet-watermark img{width:74%;max-width:160mm;height:auto;opacity:.06;-webkit-print-color-adjust:exact;print-color-adjust:exact}.inv-doc-root .letterhead{display:flex;justify-content:space-between;align-items:flex-start;gap:8mm}.inv-doc-root .lh-left{flex:0 0 auto}.inv-doc-root .logo-img{display:block;height:11mm;width:auto;margin-bottom:1.5mm}.inv-doc-root .tax-tag{display:inline-block;background:var(--ink);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;padding:3.5px 12px;margin-bottom:1.5mm;border-left:3px solid var(--red)}.inv-doc-root .original-tag{font-size:7.5px;color:var(--muted);letter-spacing:1px}.inv-doc-root .lh-right{flex:0 0 auto;text-align:right;max-width:120mm}.inv-doc-root .company-ar{font-family:Noto Naskh Arabic,Segoe UI,serif;font-size:12.5px;font-weight:700;color:var(--red);margin-bottom:.3mm;line-height:1.2}.inv-doc-root .company-en{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:.5mm}.inv-doc-root .company-tag{font-size:7.5px;font-weight:700;letter-spacing:.6px;color:var(--red);text-transform:uppercase;margin-bottom:1mm}.inv-doc-root .company-addr,.inv-doc-root .company-contact{font-size:9px;color:#232a30;line-height:1.45}.inv-doc-root .company-reg{font-size:9px;color:var(--muted)}.inv-doc-root .company-reg strong{color:var(--ink)}.inv-doc-root .rule{height:.7mm;background:var(--red);margin:2mm 0 2.5mm}.inv-doc-root .meta{display:flex;flex-direction:column;gap:1mm;margin-bottom:2.5mm}.inv-doc-root .meta-row{display:flex;align-items:baseline;gap:4mm;font-size:10.5px}.inv-doc-root .meta-row span{color:var(--muted);letter-spacing:.3px;min-width:32mm}.inv-doc-root .meta-row strong{color:var(--ink);font-size:11.5px}.inv-doc-root .meta-row strong.accent{color:var(--red)}.inv-doc-root .bill-ship{display:flex;gap:8mm;margin-bottom:2.5mm}.inv-doc-root .bill-ship>div{flex:1 1 0;min-width:0}.inv-doc-root .party-tag{display:inline-block;background:var(--ink);color:#fff;font-size:9px;font-weight:700;letter-spacing:.4px;padding:2.5px 9px;margin-bottom:1.5mm}.inv-doc-root .party-name{font-size:12px;font-weight:700;color:var(--ink);margin-bottom:.6mm}.inv-doc-root .party-line{font-size:10px;color:#14181c;line-height:1.5;white-space:pre-line}.inv-doc-root table.items{width:100%;border-collapse:collapse;margin-bottom:3mm}.inv-doc-root table.items thead th{background:var(--ink);color:#fff;font-size:8px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;padding:1.9mm 1.8mm;text-align:left;border:.2mm solid var(--ink)}.inv-doc-root table.items tbody td{font-size:9px;color:var(--ink);padding:1.7mm 1.8mm;border:.2mm solid #cfd5db;vertical-align:middle}.inv-doc-root .c-no{width:4%;text-align:center}.inv-doc-root .c-desc{width:26%}.inv-doc-root .c-unit{width:7%;text-align:center}.inv-doc-root .c-qty{width:6%;text-align:center}.inv-doc-root .c-price{width:11%;text-align:right}.inv-doc-root .c-tax{width:12%;text-align:right}.inv-doc-root .c-vat{width:7%;text-align:center;white-space:nowrap}.inv-doc-root .c-vatamt{width:11%;text-align:right}.inv-doc-root .c-amt{width:16%;text-align:right;font-weight:700}.inv-doc-root .c-code{text-align:left;word-break:break-word}.inv-doc-root thead .c-no,.inv-doc-root thead .c-unit,.inv-doc-root thead .c-qty,.inv-doc-root thead .c-vat{text-align:center}.inv-doc-root thead .c-price,.inv-doc-root thead .c-tax,.inv-doc-root thead .c-vatamt,.inv-doc-root thead .c-amt{text-align:right}.inv-doc-root table.items.with-code .c-no{width:4%}.inv-doc-root table.items.with-code .c-code{width:11%}.inv-doc-root table.items.with-code .c-desc{width:31%}.inv-doc-root table.items.with-code .c-unit{width:5%}.inv-doc-root table.items.with-code .c-qty{width:4%}.inv-doc-root table.items.with-code .c-price{width:9%}.inv-doc-root table.items.with-code .c-tax{width:10%}.inv-doc-root table.items.with-code .c-vat{width:5%}.inv-doc-root table.items.with-code .c-vatamt{width:9%}.inv-doc-root table.items.with-code .c-amt{width:12%}.inv-doc-root .closing-row{display:flex;gap:6mm;margin-bottom:3mm}.inv-doc-root .closing-row>div{flex:1 1 0;min-width:0}.inv-doc-root .words-box{border:.3mm solid var(--border);padding:3mm 3.5mm;background:var(--soft)}.inv-doc-root .box-caption{font-size:8.5px;color:var(--muted);letter-spacing:.4px;text-transform:uppercase;margin-bottom:1.5mm}.inv-doc-root .words-value{font-size:11px;font-weight:700;color:var(--ink)}.inv-doc-root .totals-box{border:.3mm solid var(--border)}.inv-doc-root .totals-row{display:flex;justify-content:space-between;padding:2.3mm 3.5mm;font-size:11px;border-bottom:.25mm solid var(--border)}.inv-doc-root .totals-row span{color:var(--muted)}.inv-doc-root .totals-row strong{color:var(--ink)}.inv-doc-root .totals-row.grand{background:var(--red);border-bottom:none;padding:3mm 3.5mm}.inv-doc-root .totals-row.grand span,.inv-doc-root .totals-row.grand strong{color:#fff;font-size:13px;font-weight:700}.inv-doc-root .section-heading{font-size:10.5px;font-weight:700;color:var(--red);letter-spacing:.4px;text-transform:uppercase;padding-bottom:1.3mm;border-bottom:.3mm solid var(--border);margin-bottom:2.5mm}.inv-doc-root .bank-box{margin-bottom:3mm;padding:2.5mm 3.5mm;border:.3mm solid var(--border);background:var(--soft)}.inv-doc-root .bank-box .section-heading{margin-bottom:2mm;border-bottom:.3mm solid var(--border);padding-bottom:1.3mm}.inv-doc-root .bank-grid{display:flex;flex-direction:column;gap:1mm}.inv-doc-root .bank-row{display:flex;justify-content:space-between;font-size:10px;padding:.6mm 0;gap:4mm}.inv-doc-root .bank-row span{color:var(--muted)}.inv-doc-root .bank-row strong{color:var(--ink);text-align:right}.inv-doc-root .terms-sign{display:flex;gap:6mm;margin-top:1.5mm;align-items:stretch}.inv-doc-root .terms-sign .terms-col{flex:1.4 1 0;min-width:0;display:flex;flex-direction:column;gap:3mm}.inv-doc-root .terms-sign .sign-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column}.inv-doc-root .terms-box,.inv-doc-root .notes-box{border:.3mm solid var(--border);padding:3mm 4mm;background:transparent;margin-bottom:3mm}.inv-doc-root .sign-row{display:flex;justify-content:flex-end;margin-top:1mm}.inv-doc-root .sign-row .sign-box{flex:0 0 auto;width:90mm;min-height:34mm}.inv-doc-root .terms-box .section-heading,.inv-doc-root .notes-box .section-heading{margin-bottom:2mm}.inv-doc-root .box-text{font-size:10px;color:#14181c;line-height:1.55;white-space:pre-line}.inv-doc-root .sign-box{border:.3mm solid var(--border);padding:2.5mm 4mm;background:transparent;display:flex;flex-direction:column;flex:1 1 auto;min-height:26mm;text-align:center}.inv-doc-root .sign-for{font-size:10.3px;font-weight:700;color:var(--ink);text-align:left}.inv-doc-root .sign-spacer{flex:1;min-height:10mm}.inv-doc-root .sign-stamp-wrap{flex:1;min-height:14mm;display:flex;align-items:center;justify-content:center}.inv-doc-root .sign-stamp{max-height:22mm;max-width:92%;object-fit:contain}.inv-doc-root .sign-line{border-top:.3mm solid var(--ink);margin-bottom:1.2mm}.inv-doc-root .sign-label{font-size:10px;color:var(--ink);font-weight:700}.inv-doc-root .foot-addr{font-size:8.4px;color:var(--muted);text-align:center;margin-top:3mm;letter-spacing:.15px;line-height:1.5}.inv-doc-root .foot-legal{font-size:9px;color:var(--muted);text-align:center;margin-top:3mm;letter-spacing:.2px}.inv-doc-root .foot-note{position:relative;font-size:8.7px;color:var(--muted);text-align:center;margin-top:1mm}.inv-doc-root .foot-page{position:absolute;right:0;bottom:0;color:var(--muted)}.inv-doc-root .sheet--paged{min-height:var(--page-h)}.inv-doc-root .sheet--paged .sheet-body{flex:1 1 auto}@media print{@page{size:A4;margin:0}.inv-doc-root .sheets{padding:0;gap:0}.inv-doc-root .sheet{box-shadow:none}.inv-doc-root .sheets>.sheet--paged{page-break-after:always}.inv-doc-root .sheets>.sheet--paged:last-child{page-break-after:auto}.inv-doc-root table.items tr,.inv-doc-root .closing-row,.inv-doc-root .bank-box,.inv-doc-root .terms-sign,.inv-doc-root .terms-box,.inv-doc-root .notes-box,.inv-doc-root .sign-box,.inv-doc-root .dn-sign,.inv-doc-root .ir-block,.inv-doc-root .dn-warranty{page-break-inside:avoid}.inv-doc-root table.items thead{display:table-header-group}}.inv-doc-root .doc-subject{border:.3mm solid var(--border);border-left:3px solid var(--red);background:var(--soft);padding:2.4mm 3.5mm;font-size:10.5px;color:var(--ink);margin-bottom:5mm}.inv-doc-root .doc-subject span{font-weight:700;color:var(--red);text-transform:uppercase;letter-spacing:.3px;margin-right:4px}.inv-doc-root .dn-intro{display:flex;align-items:center;gap:2mm;margin:1mm 0 2.5mm;font-size:10px;font-weight:700;color:#1f262b}.inv-doc-root .dn-intro:before{content:"";width:1mm;height:3.6mm;background:var(--red);border-radius:1px}.inv-doc-root .d-no{width:12%;text-align:center}.inv-doc-root .d-desc{width:48%}.inv-doc-root .d-model{width:25%;font-family:ui-monospace,Consolas,monospace;font-size:9.6px;color:#2c333a}.inv-doc-root .d-qty{width:15%;text-align:center}.inv-doc-root thead .d-no,.inv-doc-root thead .d-qty{text-align:center}.inv-doc-root .p-no{width:6%;text-align:center}.inv-doc-root .p-code{width:15%;font-family:ui-monospace,Consolas,monospace;font-size:9px}.inv-doc-root .p-desc{width:37%}.inv-doc-root .p-qty{width:8%;text-align:center}.inv-doc-root .p-unit{width:9%;text-align:center}.inv-doc-root .p-rate{width:12.5%;text-align:right}.inv-doc-root .p-amt{width:12.5%;text-align:right;font-weight:700}.inv-doc-root thead .p-no,.inv-doc-root thead .p-qty,.inv-doc-root thead .p-unit{text-align:center}.inv-doc-root thead .p-rate,.inv-doc-root thead .p-amt{text-align:right}.inv-doc-root .po-terms-grid{display:flex;flex-direction:column;gap:2.5mm}.inv-doc-root .dn-total{display:flex;justify-content:space-between;align-items:center;background:transparent;border:.3mm solid var(--border);padding:2.6mm 4mm;font-size:10px;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.4px;margin-bottom:3.5mm}.inv-doc-root .dn-warranty{display:flex;gap:3mm;align-items:flex-start;margin-bottom:3.5mm;padding:2.6mm 4mm;background:#fbf4f5;border:.3mm solid #f0d9dc;border-left:3px solid var(--red)}.inv-doc-root .dn-warranty .ico{font-size:15px;line-height:1.1}.inv-doc-root .dn-warranty .lbl{display:block;font-size:8px;text-transform:uppercase;letter-spacing:1px;color:var(--red);font-weight:800;margin-bottom:1px}.inv-doc-root .dn-warranty .txt{font-size:10.3px;color:#262c32}.inv-doc-root .dn-warranty .txt strong{color:var(--ink)}.inv-doc-root .dn-note-box{margin-bottom:3.5mm;padding:2.6mm 4mm;border:.3mm dashed #cfd6db;font-size:9.6px;color:#2c333a;white-space:pre-line}.inv-doc-root .dn-sign{display:flex;gap:10mm;margin-top:1.5mm}.inv-doc-root .dn-sign-box{flex:1 1 0;min-width:0;border:.3mm solid var(--border);padding:3mm 4mm;background:transparent;display:flex;flex-direction:column;min-height:27mm}.inv-doc-root .dn-sign-h{align-self:flex-start;background:var(--ink);color:#fff;font-size:8px;font-weight:700;letter-spacing:.4px;padding:2px 9px}.inv-doc-root .dn-sign-name{margin-top:2.5mm;font-size:12px;font-weight:700;color:var(--ink);min-height:4mm}.inv-doc-root .dn-sign-spacer{flex:1;min-height:8mm}.inv-doc-root .dn-sign-box.has-stamp{min-height:40mm}.inv-doc-root .dn-sign-box .sign-stamp-wrap{margin:1.5mm 0}.inv-doc-root .dn-sign-line{border-top:.3mm solid var(--ink);padding-top:1.2mm;font-size:9px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.3px}.inv-doc-root .dn-sign-date{margin-top:1.5mm;font-size:9.5px;color:#262c32}.inv-doc-root .dn-sign-rule{border-top:.3mm solid var(--ink);margin-top:1mm}.inv-doc-root .dn-sign-signer{margin-top:1.2mm;font-size:11px;font-weight:700;color:var(--ink)}.inv-doc-root .dn-sign-for{font-size:9px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.3px}@media screen and (max-width: 820px){.inv-doc-root.fit-active{overflow:hidden;height:var(--fit-h, auto)}.inv-doc-root.fit-active .sheets{align-items:flex-start;padding:0;transform-origin:top left;transform:scale(var(--fit-scale, 1))}}@media screen and (max-width: 820px){.inv-doc-root.fit-active table.items{table-layout:auto}.inv-doc-root.fit-active table.items .c-desc,.inv-doc-root.fit-active table.items .p-desc,.inv-doc-root.fit-active table.items .d-desc{width:auto!important}.inv-doc-root.fit-active table.items .c-no,.inv-doc-root.fit-active table.items .c-code,.inv-doc-root.fit-active table.items .c-unit,.inv-doc-root.fit-active table.items .c-qty,.inv-doc-root.fit-active table.items .c-price,.inv-doc-root.fit-active table.items .c-tax,.inv-doc-root.fit-active table.items .c-vat,.inv-doc-root.fit-active table.items .c-vatamt,.inv-doc-root.fit-active table.items .c-amt,.inv-doc-root.fit-active table.items .p-no,.inv-doc-root.fit-active table.items .p-code,.inv-doc-root.fit-active table.items .p-unit,.inv-doc-root.fit-active table.items .p-qty,.inv-doc-root.fit-active table.items .p-rate,.inv-doc-root.fit-active table.items .p-amt,.inv-doc-root.fit-active table.items .d-no,.inv-doc-root.fit-active table.items .d-model,.inv-doc-root.fit-active table.items .d-qty{width:1%!important}.inv-doc-root.fit-active table.items td.c-no,.inv-doc-root.fit-active table.items td.c-code,.inv-doc-root.fit-active table.items td.c-unit,.inv-doc-root.fit-active table.items td.c-qty,.inv-doc-root.fit-active table.items td.c-price,.inv-doc-root.fit-active table.items td.c-tax,.inv-doc-root.fit-active table.items td.c-vat,.inv-doc-root.fit-active table.items td.c-vatamt,.inv-doc-root.fit-active table.items td.c-amt,.inv-doc-root.fit-active table.items td.p-no,.inv-doc-root.fit-active table.items td.p-unit,.inv-doc-root.fit-active table.items td.p-qty,.inv-doc-root.fit-active table.items td.p-rate,.inv-doc-root.fit-active table.items td.p-amt,.inv-doc-root.fit-active table.items td.d-no,.inv-doc-root.fit-active table.items td.d-qty{white-space:nowrap}}.inv-doc-root .sr-grid3,.inv-doc-root .sr-grid2{display:grid;margin-bottom:2.5mm;border-top:.3mm solid var(--border);border-left:.3mm solid var(--border)}.inv-doc-root .sr-grid3{grid-template-columns:repeat(3,1fr)}.inv-doc-root .sr-grid2{grid-template-columns:repeat(2,1fr)}.inv-doc-root .sr-grid3>.sr-box,.inv-doc-root .sr-grid2>.sr-box{border-right:.3mm solid var(--border);border-bottom:.3mm solid var(--border)}.inv-doc-root .sr-box.sr-full{border:.3mm solid var(--border);margin-bottom:2.5mm}.inv-doc-root .sr-box-h{background:var(--ink);color:#fff;font-size:8px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;padding:1.6mm 2.2mm}.inv-doc-root .sr-box-b{padding:2mm 2.2mm;font-size:9px;color:var(--ink)}.inv-doc-root .sr-row{display:flex;gap:2mm;margin-bottom:1mm;align-items:baseline}.inv-doc-root .sr-k{color:var(--muted);min-width:17mm;font-weight:600}.inv-doc-root .sr-v{color:var(--ink);font-weight:600;flex:1}.inv-doc-root .sr-check{display:flex;align-items:center;gap:1.6mm;margin-bottom:1.2mm}.inv-doc-root .sr-cb{display:inline-flex;align-items:center;justify-content:center;width:3mm;height:3mm;border:.3mm solid var(--ink);font-size:8px;line-height:1;flex:0 0 auto}.inv-doc-root .sr-cb.on{background:var(--ink);color:#fff}.inv-doc-root .sr-cb-l{font-size:9px}.inv-doc-root .sr-quarters{display:flex;gap:4mm;margin:0 0 1.5mm 5mm}.inv-doc-root .sr-q{display:inline-flex;align-items:center;gap:1.2mm}.inv-doc-root .sr-q .sr-cb-l{font-size:8.5px}.inv-doc-root .sr-text{font-size:9.5px;min-height:9mm;white-space:pre-wrap;line-height:1.5}.inv-doc-root .sr-para{margin:0;min-height:30mm;font-size:9.5px;line-height:1.7;color:var(--ink)}.inv-doc-root .sr-feedback{display:flex;flex-wrap:wrap;gap:2mm 6mm;margin-bottom:2mm}.inv-doc-root .sr-fb{display:inline-flex;align-items:center;gap:1.4mm}.inv-doc-root .sr-seal{display:flex;align-items:center;gap:3mm;margin-top:2mm;min-height:16mm}.inv-doc-root .sr-stamp{max-height:20mm;max-width:55%;object-fit:contain}.inv-doc-root .hw-brand-row{display:flex;justify-content:space-between;align-items:flex-end;gap:10mm}.inv-doc-root .hw-addr-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10mm}.inv-doc-root .hw-col-en{text-align:left}.inv-doc-root .hw-col-ar{text-align:right}.inv-doc-root .hw-logo{display:block;height:8.5mm;width:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}.inv-doc-root .hw-brand{font-family:Segoe UI,Tahoma,Arial,Helvetica,sans-serif;font-size:26px;font-weight:800;letter-spacing:-.5px;line-height:1;color:#ee3124;-webkit-print-color-adjust:exact;print-color-adjust:exact}.inv-doc-root .hw-brand-ar{font-family:Noto Naskh Arabic,Segoe UI,serif;font-size:27px;font-weight:700;line-height:1.15}.inv-doc-root .hw-rule{height:.6mm;background:#ee3124;margin:1.4mm 0 1.6mm;-webkit-print-color-adjust:exact;print-color-adjust:exact}.inv-doc-root .hw-addr{font-size:9.5px;color:#5b6068;line-height:1.5}.inv-doc-root .hw-addr .hw-name{font-weight:700;color:var(--ink)}.inv-doc-root .hw-addr-ar{font-family:Noto Naskh Arabic,Segoe UI,serif;font-size:10.5px;line-height:1.55}.inv-doc-root .hw-title{text-align:center;margin:1.5mm 0 2.5mm}.inv-doc-root .hw-title span{display:inline-block;font-size:14px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink);border-bottom:.4mm solid var(--ink);padding-bottom:.8mm}.inv-doc-root .hw-foot-ar{font-family:Noto Naskh Arabic,Segoe UI,serif;font-size:15px;font-weight:400;color:var(--ink);text-align:center;line-height:1.45}.inv-doc-root .hw-cr-num{unicode-bidi:isolate;direction:ltr}.inv-doc-root .hw-foot-page{position:absolute;right:var(--pad-x);bottom:2mm}.inv-doc-root .hw-foot-page span{font-size:8.5px;color:var(--muted)}.inv-doc-root .hw-systypes{display:flex;flex-wrap:wrap;gap:1.4mm 5mm}.inv-doc-root .hw-systypes .sr-check{margin-bottom:0}.inv-doc-root .sr-v.sr-fill{align-self:flex-end;min-height:3.4mm;border-bottom:.25mm dotted #9aa2ab}.inv-doc-root .sr-lines{display:flex;flex-direction:column}.inv-doc-root .sr-lines .sr-line{min-height:6mm;border-bottom:.25mm dotted #9aa2ab}.inv-doc-root .ir-subtitle{text-align:center;font-size:11px;font-weight:700;color:var(--ink);margin:1mm 0 3mm;padding-bottom:2mm;border-bottom:.3mm solid var(--border)}.inv-doc-root .ir-info{display:grid;grid-template-columns:1fr 1fr;border-top:.3mm solid var(--border);border-left:.3mm solid var(--border);margin-bottom:3.5mm}.inv-doc-root .ir-info-cell{border-right:.3mm solid var(--border);border-bottom:.3mm solid var(--border);padding:1.8mm 2.4mm}.inv-doc-root .ir-info-k{font-size:7.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--muted);margin-bottom:.8mm}.inv-doc-root .ir-info-v{font-size:9.5px;font-weight:600;color:var(--ink);line-height:1.4}.inv-doc-root .ir-sec{font-size:10px;font-weight:800;color:var(--ink);text-transform:none;letter-spacing:.2px;margin:3.5mm 0 1.8mm;padding-bottom:1.2mm;border-bottom:.4mm solid var(--ink)}.inv-doc-root .ir-para{font-size:9.5px;color:var(--ink);line-height:1.55;text-align:justify;white-space:pre-wrap;margin-bottom:1mm}.inv-doc-root .ir-table{width:100%;border-collapse:collapse;margin-bottom:1mm;table-layout:fixed}.inv-doc-root .ir-table th{background:var(--ink);color:#fff;font-size:7.5px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:1.6mm;text-align:left;vertical-align:middle;border:.3mm solid var(--ink)}.inv-doc-root .ir-table thead .ir-findings-title th{background:#fff;color:var(--ink);border:0;border-bottom:.4mm solid var(--ink);padding:0 0 1.2mm;font-size:10px;font-weight:800;text-transform:none;letter-spacing:.2px}.inv-doc-root .ir-table td{font-size:8.8px;color:var(--ink);vertical-align:top;padding:1.6mm;border:.3mm solid var(--border);line-height:1.4;word-wrap:break-word}.inv-doc-root .ir-table .ir-c-sno{text-align:center}.inv-doc-root .ir-table .ir-c-num{text-align:center;white-space:nowrap}.inv-doc-root .ir-serial{color:var(--muted);font-size:8.2px}.inv-doc-root .ir-obs{margin:0;padding-left:3.5mm}.inv-doc-root .ir-obs li{font-size:8.6px;line-height:1.45;margin-bottom:.6mm}.inv-doc-root .ir-acts{margin-bottom:1mm}.inv-doc-root .ir-act{font-size:9.3px;color:var(--ink);line-height:1.5;text-align:justify;margin-bottom:1.6mm;padding-left:1mm}.inv-doc-root .ir-act-eq{font-weight:700}.inv-doc-root .ir-bullets{margin:0 0 1mm;padding-left:5mm}.inv-doc-root .ir-bullets li{font-size:9.3px;line-height:1.55;margin-bottom:1mm}.inv-doc-root .ir-sign{display:grid;grid-template-columns:1fr 1fr;border-top:.3mm solid var(--border);border-left:.3mm solid var(--border);margin-top:5mm}.inv-doc-root .ir-sign-cell{border-right:.3mm solid var(--border);border-bottom:.3mm solid var(--border);padding:2.4mm 3mm}.inv-doc-root .ir-sign-h{font-size:9px;font-weight:800;color:var(--ink);text-transform:uppercase;letter-spacing:.4px;margin-bottom:3mm}.inv-doc-root .ir-sign-row{display:flex;align-items:flex-end;gap:2mm;margin-bottom:3mm}.inv-doc-root .ir-sign-k{font-size:9px;color:var(--muted);font-weight:600;min-width:16mm}.inv-doc-root .ir-sign-v{flex:1;font-size:9px;font-weight:600;color:var(--ink);border-bottom:.3mm solid var(--ink);min-height:4mm;padding-bottom:.5mm}.inv-doc-root .ir-stamp-wrap{display:flex;justify-content:flex-start;padding-left:10mm;margin-top:3mm}.inv-doc-root .ir-stamp{max-height:26mm;max-width:42%;object-fit:contain}.inv-doc-root .ir-block{break-inside:avoid;overflow:hidden}.inv-doc-root .ir-block>*:first-child{margin-top:0}.inv-doc-root .ir-block+.ir-block{margin-top:3mm}.inv-doc-root .ir-block+.ir-block.ir-block--continuation{margin-top:.8mm}.inv-doc-root .ir-block--continuation .ir-acts,.inv-doc-root .ir-block--continuation .ir-bullets{margin:0}.inv-doc-root.ir-mode .sheet{min-height:var(--page-h)}.inv-doc-root.ir-mode .sheet-body{flex:1 1 auto}.inv-doc-root.ir-mode .content-inner{display:block}.inv-doc-root .pr-title{text-align:center;font-size:15px;font-weight:800;letter-spacing:1px;color:var(--ink);text-decoration:underline;margin:1mm 0 3mm}.inv-doc-root .pr-meta{text-align:right;margin-bottom:3mm}.inv-doc-root .pr-meta-row{font-size:11px;color:var(--ink)}.inv-doc-root .pr-meta-row span{color:var(--muted)}.inv-doc-root .pr-meta-row strong{margin-left:2mm}.inv-doc-root .pr-to{margin-bottom:3mm}.inv-doc-root .pr-to-h{font-size:11.5px;font-weight:700;color:var(--ink);margin-bottom:1.5mm}.inv-doc-root .pr-to-row{font-size:11px;color:var(--ink);line-height:1.6}.inv-doc-root .pr-subject{font-size:11.5px;font-weight:700;color:var(--ink);text-decoration:underline;margin:2mm 0 3mm;line-height:1.5}.inv-doc-root .pr-salutation{font-size:11px;color:var(--ink);margin-bottom:1.5mm}.inv-doc-root .pr-para{font-size:11px;color:var(--ink);line-height:1.6;text-align:justify;white-space:pre-wrap;margin-bottom:2mm}.inv-doc-root .pr-block{margin-bottom:2.5mm;break-inside:avoid}.inv-doc-root .pr-block--tight{margin-bottom:0;break-inside:avoid}.inv-doc-root .pr-sec{font-size:12.5px;font-weight:800;color:var(--red);letter-spacing:.3px;margin:2mm 0;padding-bottom:1mm;border-bottom:.3mm solid var(--border)}.inv-doc-root .pr-table{width:100%;border-collapse:collapse;margin-bottom:2mm;table-layout:fixed}.inv-doc-root .pr-table th{background:#1f3b63;color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.2px;padding:1.7mm 1.8mm;text-align:left;border:.25mm solid #1f3b63;vertical-align:middle}.inv-doc-root .pr-table td{font-size:10px;color:var(--ink);padding:1.7mm 1.8mm;border:.25mm solid #cfd5db;vertical-align:top;line-height:1.45;word-wrap:break-word}.inv-doc-root .pr-table .pr-c-sno{text-align:center;white-space:nowrap}.inv-doc-root table.items.pr-scope thead th{background:#1f3b63;color:#fff;font-size:9px;text-transform:uppercase;border:.25mm solid #1f3b63;padding:1.7mm 1.8mm;text-align:left}.inv-doc-root table.items.pr-scope tbody td{font-size:10px;padding:1.7mm 1.8mm;border:.25mm solid #cfd5db;vertical-align:top;line-height:1.45}.inv-doc-root table.items.pr-scope .pr-c-sno{text-align:center}.inv-doc-root table.items.pr-scope .pr-c-num{text-align:center;white-space:nowrap}.inv-doc-root table.items.pr-scope .pr-c-amt{text-align:right;white-space:nowrap}.inv-doc-root table.items.pr-scope thead .pr-c-num{text-align:center}.inv-doc-root table.items.pr-scope thead .pr-c-amt{text-align:right}.inv-doc-root .pr-note-line{font-size:10px;color:var(--ink);line-height:1.5;margin-top:1mm}.inv-doc-root .pr-totals-wrap{display:flex;gap:6mm;align-items:flex-start;margin-bottom:2.5mm}.inv-doc-root .pr-words{flex:1 1 0;border:.3mm solid var(--border);padding:2.5mm 3mm;background:var(--soft)}.inv-doc-root .pr-words-cap{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;margin-bottom:1.2mm}.inv-doc-root .pr-words-val{font-size:11px;font-weight:700;color:var(--ink);line-height:1.4}.inv-doc-root .pr-totals{flex:0 0 62mm;border:.3mm solid var(--border)}.inv-doc-root .pr-tot-row{display:flex;justify-content:space-between;padding:2mm 3mm;font-size:11px;border-bottom:.25mm solid var(--border)}.inv-doc-root .pr-tot-row span{color:var(--muted)}.inv-doc-root .pr-tot-row strong{color:var(--ink)}.inv-doc-root .pr-tot-row.grand{background:#1f3b63;border-bottom:none;padding:2.4mm 3mm}.inv-doc-root .pr-tot-row.grand span,.inv-doc-root .pr-tot-row.grand strong{color:#fff;font-size:12.5px;font-weight:700}.inv-doc-root .pr-note-box{font-size:10px;color:var(--ink);line-height:1.55;text-align:justify}.inv-doc-root .pr-term{display:flex;gap:2mm;font-size:10.5px;color:var(--ink);line-height:1.6;margin-bottom:1.8mm;text-align:justify}.inv-doc-root .pr-term-dot{color:var(--red);flex:0 0 auto}.inv-doc-root .pr-signoff{margin-top:3mm}.inv-doc-root .pr-sign-for{font-size:11px;font-weight:700;color:var(--ink);margin-top:1mm}.inv-doc-root .pr-sign-gap{height:12mm}.inv-doc-root .pr-stamp-wrap{margin:1mm 0}.inv-doc-root .pr-stamp{max-height:26mm;max-width:45mm;object-fit:contain}.inv-doc-root .pr-sign-name{font-size:11.5px;font-weight:800;color:var(--ink);font-style:italic}.inv-doc-root .pr-sign-title{font-size:10px;color:var(--ink)}@font-face{font-family:Noto Naskh Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(/admin/fonts/NotoNaskhArabic-Regular.ttf) format("truetype")}@font-face{font-family:Noto Naskh Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(/admin/fonts/NotoNaskhArabic-Bold.ttf) format("truetype")}:root{--brand-red: #dc2626;--brand-red-dark: #b91c1c;--brand-red-glow: rgba(220, 38, 38, .25);--brand-red-soft: rgba(220, 38, 38, .08);--brand-charcoal: #1e293b;--ink: #0f172a;--ink-secondary: #334155;--muted: #64748b;--muted-light: #94a3b8;--line: #e2e8f0;--line-light: #f1f5f9;--bg: #f8fafc;--bg-warm: #f1f5f9;--panel: #ffffff;--ok: #059669;--ok-soft: rgba(5, 150, 105, .1);--warn: #d97706;--warn-soft: rgba(217, 119, 6, .1);--danger-soft: rgba(220, 38, 38, .08);--info: #6366f1;--info-soft: rgba(99, 102, 241, .1);--sidebar-bg: #ffffff;--sidebar-text: #475569;--sidebar-text-hover: #0f172a;--sidebar-active-bg: rgba(220, 38, 38, .08);--sidebar-active-text: #dc2626;--sidebar-border: #e2e8f0;--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--radius-xl: 20px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 8px 10px -6px rgba(0, 0, 0, .04);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .15);--shadow-glow-red: 0 0 20px rgba(220, 38, 38, .15);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0 0 .4em;color:var(--brand-charcoal);font-weight:700;letter-spacing:-.01em}::selection{background:var(--brand-red);color:#fff}.app-shell{display:flex;min-height:100vh}.sidebar{width:272px;background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;border-right:1px solid var(--sidebar-border);box-shadow:1px 0 #00000005;z-index:20}.sidebar-brand{display:flex;align-items:center;gap:14px;padding:22px 20px 20px;border-bottom:1px solid var(--line-light);position:relative}.sidebar-brand img{width:52px;height:52px;object-fit:contain;flex-shrink:0;transition:transform var(--duration-normal) var(--ease-spring)}.sidebar-brand img:hover{transform:scale(1.08)}.sidebar-brand>div{min-width:0;flex:1;text-align:right}.sidebar-brand .name{font-weight:800;color:var(--ink);font-size:16px;line-height:1.1;letter-spacing:1.2px}.sidebar-brand .name-ar{font-family:Noto Naskh Arabic,Segoe UI,serif;font-size:12.5px;font-weight:700;color:var(--brand-red);direction:rtl;text-align:right;line-height:1.5}.sidebar-brand .sub{font-size:9px;color:var(--muted);letter-spacing:.8px;text-transform:uppercase;margin-top:2px}.nav{padding:16px 12px;display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto;min-height:0}.nav::-webkit-scrollbar{width:4px}.nav::-webkit-scrollbar-track{background:transparent}.nav::-webkit-scrollbar-thumb{background:#0000001a;border-radius:4px}.nav::-webkit-scrollbar-thumb:hover{background:#0003}.nav-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--muted-light);padding:14px 14px 6px}.nav a{padding:9px 14px;border-radius:var(--radius-sm);color:var(--sidebar-text);font-weight:600;font-size:13px;display:flex;align-items:center;gap:11px;transition:all var(--duration-fast) ease;position:relative;border:1px solid transparent}.nav a:hover{background:var(--bg-warm);color:var(--sidebar-text-hover)}.nav a.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:700}.nav a.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--brand-red);border-radius:0 3px 3px 0}.nav .nav-ico{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.nav a.active .nav-ico{opacity:1}.nav .nav-ico svg{width:18px;height:18px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:14px 16px;border-top:1px solid var(--line-light);background:var(--bg)}.su-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--brand-red),#ef4444);color:#fff;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.5px}.su-meta{min-width:0;flex:1}.su-name{font-size:12px;font-weight:700;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.su-email{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.su-logout{border:1px solid var(--line);background:#fff;color:var(--brand-red);width:32px;height:32px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all var(--duration-fast) ease}.su-logout:hover{background:var(--brand-red);border-color:var(--brand-red);color:#fff}.sidebar-foot{padding:14px 20px;font-size:10px;color:var(--muted);border-top:1px solid var(--line-light);line-height:1.6;letter-spacing:.2px}.main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg)}.topbar{background:#ffffffd9;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--line);padding:16px 30px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.topbar h2{margin:0;font-size:18px;font-weight:700;padding-left:14px;border-left:3px solid var(--brand-red);line-height:1.1;color:var(--ink);letter-spacing:-.02em}.topbar-sub{font-size:12px;color:var(--muted);font-weight:500;letter-spacing:.3px}.content{padding:28px 30px 60px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px 22px;transition:box-shadow var(--duration-normal) ease,transform var(--duration-normal) ease}.card:hover{box-shadow:var(--shadow)}.grid{display:grid;gap:20px}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 900px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}}.kpi-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.dash-split{display:grid;gap:20px;grid-template-columns:1.7fr 1fr;margin-bottom:20px}.chart-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:20px}@media (max-width: 940px){.dash-split{grid-template-columns:1fr}}.table-wrap{width:100%;overflow-x:auto}.kpi{position:relative;overflow:hidden;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}a.kpi-link{display:block;text-decoration:none;color:inherit;cursor:pointer}a.kpi-link:hover{border-color:var(--brand-red)}.kpi .kpi-label{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.kpi .kpi-value{font-size:22px;font-weight:800;color:var(--ink);margin-top:6px;line-height:1.1;word-break:break-word;letter-spacing:-.02em}.kpi .kpi-sub{font-size:11px;color:var(--muted);margin-top:4px;font-weight:500}.kpi .kpi-strip{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:0 4px 4px 0}.chart-legend{display:flex;gap:16px;flex-wrap:wrap}.chart-legend .lg{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);font-weight:500}.chart-legend .lg i{width:10px;height:10px;border-radius:3px;display:inline-block}.btn{border:1px solid var(--line);background:#fff;color:var(--ink-secondary);padding:9px 18px;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;font-size:13px;font-family:inherit;line-height:1.2;transition:all var(--duration-fast) ease;display:inline-flex;align-items:center;justify-content:center;gap:7px;position:relative;overflow:hidden}.btn:hover{border-color:#cbd5e1;background:#f8fafc;box-shadow:var(--shadow-xs)}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,var(--brand-red) 0%,#ef4444 100%);border-color:transparent;color:#fff;box-shadow:0 1px 3px #dc262640}.btn-primary:hover{background:linear-gradient(135deg,var(--brand-red-dark) 0%,var(--brand-red) 100%);border-color:transparent;box-shadow:0 4px 12px #dc26264d;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-dark{background:linear-gradient(135deg,var(--brand-charcoal) 0%,#334155 100%);border-color:transparent;color:#fff;box-shadow:0 1px 3px #00000026}.btn-dark:hover{background:linear-gradient(135deg,#0f172a 0%,var(--brand-charcoal) 100%);box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:var(--bg-warm);border-color:var(--line)}.btn-sm{padding:6px 12px;font-size:12px;border-radius:6px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.mat-picker{width:auto;min-width:210px;max-width:280px;padding:6px 32px 6px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background-color:#fff;color:var(--brand-charcoal);font-size:12.5px;font-weight:600;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;background-size:12px;transition:all var(--duration-fast) ease}.mat-picker:hover{border-color:#cbd5e1}.mat-picker:focus{outline:none;border-color:var(--brand-red);box-shadow:0 0 0 3px var(--brand-red-soft)}label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px;letter-spacing:.2px}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;padding:10px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:13.5px;font-family:inherit;color:var(--ink);background:#fff;transition:all var(--duration-fast) ease}textarea{min-height:96px;line-height:1.5;resize:vertical}input[type=checkbox],input[type=radio]{width:auto;cursor:pointer;flex-shrink:0;accent-color:var(--brand-red)}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-red);box-shadow:0 0 0 3px var(--brand-red-soft),var(--shadow-sm)}input::placeholder,textarea::placeholder{color:var(--muted-light)}.field{margin-bottom:16px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-light)}.table th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;background:var(--bg);border-bottom-color:var(--line)}.table tbody tr{transition:background var(--duration-fast) ease}.table tbody tr:hover{background:#f8fafc}.right{text-align:right}.center{text-align:center}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.3px}.badge-red{background:#fef2f2;color:var(--brand-red);border:1px solid rgba(220,38,38,.12)}.badge-gray{background:#f1f5f9;color:var(--brand-charcoal);border:1px solid rgba(30,41,59,.08)}.badge-green{background:#ecfdf5;color:var(--ok);border:1px solid rgba(5,150,105,.12)}.badge-amber{background:#fffbeb;color:var(--warn);border:1px solid rgba(217,119,6,.12)}.stat{display:flex;flex-direction:column;gap:4px}.stat .value{font-size:26px;font-weight:800;color:var(--brand-charcoal);letter-spacing:-.02em}.stat .label{font-size:12px;color:var(--muted);font-weight:600}.stat .accent{color:var(--brand-red)}.row-actions{display:flex;gap:6px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.muted{color:var(--muted)}.pill-tabs{display:inline-flex;background:var(--bg-warm);border-radius:999px;padding:3px;border:1px solid var(--line)}.pill-tabs button{border:none;background:transparent;padding:7px 20px;border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;color:var(--muted);transition:all var(--duration-fast) ease}.pill-tabs button.active{background:#fff;color:var(--brand-red);box-shadow:var(--shadow-sm)}.empty{text-align:center;padding:50px 20px;color:var(--muted);font-weight:500}.toast{position:fixed;bottom:24px;right:24px;background:var(--brand-charcoal);color:#fff;padding:14px 20px;border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:100;font-weight:600;font-size:13px;display:flex;align-items:center;gap:10px;animation:toast-in .35s var(--ease-spring);max-width:400px}.toast:before{content:"✓";width:22px;height:22px;border-radius:50%;background:var(--ok);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.toast.error{background:linear-gradient(135deg,var(--brand-red) 0%,#b91c1c 100%)}.toast.error:before{content:"!";background:#ffffff40}@keyframes toast-in{0%{opacity:0;transform:translate(20px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}.cat-group{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:14px}.cat-head{background:var(--bg);padding:12px 16px;font-weight:700;color:var(--brand-charcoal);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background var(--duration-fast) ease}.cat-head:hover{background:var(--bg-warm)}.cat-head small{color:var(--muted);font-weight:600}.svc-row{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-top:1px solid var(--line-light);gap:10px;transition:background var(--duration-fast) ease}.svc-row:hover{background:#fafbfc}.svc-row .svc-info{min-width:0}.svc-row .svc-name{font-weight:600}.svc-row .svc-meta{font-size:11.5px;color:var(--muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;z-index:50;overflow:auto;animation:backdrop-in .2s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:var(--radius-lg);width:100%;max-width:620px;padding:26px 28px;box-shadow:var(--shadow-xl);animation:modal-in .3s var(--ease-out)}.modal-lg{max-width:900px}@keyframes modal-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);position:relative;overflow:hidden}.login-card{width:100%;max-width:420px;background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-xl);padding:40px 36px 32px;box-shadow:var(--shadow-xl);animation:login-rise .6s var(--ease-out);position:relative;z-index:2}@keyframes login-rise{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.login-brand{text-align:center;margin-bottom:28px}.login-brand img{width:72px;height:72px;object-fit:contain;margin-bottom:12px;filter:drop-shadow(0 4px 12px rgba(220,38,38,.15))}.login-ar{font-family:Noto Naskh Arabic,serif;font-size:14px;font-weight:700;color:var(--brand-red);direction:rtl;line-height:1.5}.login-name{font-size:24px;font-weight:900;color:var(--ink);letter-spacing:2px;line-height:1.1;margin-top:4px}.login-sub{font-size:11px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase;margin-top:2px}.login-title{text-align:center;font-size:18px;margin:0 0 4px;color:var(--ink);font-weight:700}.login-hint{text-align:center;color:var(--muted);font-size:12.5px;margin:0 0 24px;font-weight:500}.login-card .field label{color:var(--muted);font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.login-card input:not([type=checkbox]):not([type=radio]){background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:var(--radius-sm);padding:11px 14px;font-size:14px;transition:all var(--duration-normal) ease}.login-card input::placeholder{color:var(--muted-light)}.login-card input:focus{border-color:var(--brand-red);box-shadow:0 0 0 3px var(--brand-red-soft)}.login-popup{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-sm);font-weight:600;font-size:13px;margin-bottom:18px;animation:login-popup-in .3s var(--ease-spring)}@keyframes login-popup-in{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.login-popup.success{background:var(--ok-soft);color:var(--ok);border:1px solid rgba(5,150,105,.2)}.login-popup.error{background:var(--danger-soft);color:var(--brand-red);border:1px solid rgba(220,38,38,.2)}.login-popup-ico{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:11px;color:#fff;flex-shrink:0}.login-popup.success .login-popup-ico{background:var(--ok)}.login-popup.error .login-popup-ico{background:var(--brand-red)}.pwd-wrap{position:relative}.pwd-wrap input{padding-right:64px}.pwd-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:var(--bg-warm);color:var(--muted);font-weight:600;font-size:11px;cursor:pointer;padding:4px 10px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;transition:all var(--duration-fast) ease}.pwd-toggle:hover{background:#e2e8f0;color:var(--ink)}.login-btn{width:100%;justify-content:center;padding:13px;font-size:14px;font-weight:700;margin-top:6px;background:linear-gradient(135deg,var(--brand-red) 0%,#ef4444 50%,var(--brand-red) 100%);background-size:200% 200%;border:none;letter-spacing:.5px;position:relative;overflow:hidden;transition:all var(--duration-normal) ease}.login-btn:hover{background-position:100% 0;box-shadow:0 8px 24px #dc262640;transform:translateY(-1px)}.login-foot{text-align:center;font-size:10.5px;color:var(--muted);margin-top:24px;display:flex;align-items:center;justify-content:center;gap:6px}.login-foot:before{content:"🔒";font-size:11px}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:600;background:var(--bg)}.btn-danger{color:var(--brand-red);border-color:#dc262633}.btn-danger:hover{background:var(--brand-red);border-color:var(--brand-red);color:#fff}.catalog-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--bg-warm);border-radius:var(--radius);margin-bottom:20px;border:1px solid var(--line)}.cat-tab{border:none;background:transparent;padding:9px 20px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;transition:all var(--duration-fast) ease}.cat-tab:hover{color:var(--brand-charcoal)}.cat-tab.active{background:#fff;color:var(--brand-red);box-shadow:var(--shadow-sm)}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.catalog-heading h3{margin:0 0 2px}.catalog-actions{display:flex;align-items:center;gap:10px}.search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 13px;color:var(--muted);transition:all var(--duration-fast) ease;min-width:280px}.search-box:focus-within{border-color:var(--brand-red);box-shadow:0 0 0 3px var(--brand-red-soft)}.search-box input{border:none;padding:10px 0;background:transparent}.search-box input:focus{outline:none;box-shadow:none}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-top:1px solid var(--line)}.pager-info{color:var(--muted);font-size:12.5px}.pager-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.pager-size{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12.5px}.pager-size select{padding:5px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff}.pager-pages{display:flex;align-items:center;gap:4px}.pager-btn{min-width:32px;height:32px;padding:0 8px;border:1px solid var(--line);background:#fff;border-radius:var(--radius-sm);color:var(--ink, #1e293b);font-size:13px;cursor:pointer;transition:all var(--duration-fast) ease}.pager-btn:hover:not(:disabled):not(.active){border-color:var(--brand-red);color:var(--brand-red)}.pager-btn.active{background:var(--brand-red);border-color:var(--brand-red);color:#fff;font-weight:700}.pager-btn:disabled{opacity:.45;cursor:not-allowed}.pager-ellipsis{padding:0 4px;color:var(--muted)}.pr-scope-form{table-layout:fixed}.pr-scope-form th,.pr-scope-form td{padding:5px 6px;vertical-align:top}.pr-scope-form input,.pr-scope-form textarea{width:100%;box-sizing:border-box;min-width:0;padding:7px 8px;font-size:12.5px}.pr-scope-form textarea{min-height:42px;line-height:1.4}.list-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.list-toolbar .search-box{min-width:260px}@media (max-width: 640px){.list-toolbar{align-items:stretch}.list-toolbar .search-box{min-width:0;flex:1}.pager{justify-content:center}}.catalog-layout{display:grid;grid-template-columns:250px 1fr;gap:22px;align-items:start}.cat-rail{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:8px;position:sticky;top:90px;box-shadow:var(--shadow-sm);max-height:calc(100vh - 120px);overflow:auto}.cat-rail-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;border:none;background:transparent;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;color:var(--ink-secondary);transition:all var(--duration-fast) ease;margin-bottom:2px}.cat-rail-item:hover{background:var(--bg-warm);color:var(--brand-charcoal)}.cat-rail-item.active{background:linear-gradient(135deg,var(--brand-red) 0%,#ef4444 100%);color:#fff;box-shadow:0 4px 12px #dc262640}.cat-count{font-size:10.5px;font-weight:800;background:#0000000d;color:inherit;padding:2px 9px;border-radius:999px;min-width:26px;text-align:center}.cat-rail-item.active .cat-count{background:#fff3}.svc-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.svc-panel-head{padding:14px 20px;border-bottom:1px solid var(--line);background:var(--bg)}.svc-scope-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.svc-scope-title strong{font-size:14.5px;color:var(--brand-charcoal)}.svc-table-wrap{width:100%;overflow-x:auto}.svc-table{width:100%;border-collapse:collapse;font-size:13px}.svc-table thead th{text-align:left;padding:12px 16px;font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700;background:var(--bg);border-bottom:1px solid var(--line)}.svc-table tbody td{padding:12px 16px;border-bottom:1px solid var(--line-light);vertical-align:middle}.svc-table tbody tr{transition:background var(--duration-fast) ease}.svc-table tbody tr:hover{background:#fafbfc}.svc-table tbody tr:last-child td{border-bottom:none}.svc-table .r{text-align:right}.svc-table .c{text-align:center}.code-chip{font-size:10.5px;font-weight:700;color:var(--brand-charcoal);background:var(--bg-warm);padding:3px 10px;border-radius:6px;letter-spacing:.3px;white-space:nowrap;font-family:SF Mono,Fira Code,monospace}.vat-badge{font-size:10px;font-weight:700;color:var(--brand-red);background:#fef2f2;padding:3px 10px;border-radius:999px;white-space:nowrap;border:1px solid rgba(220,38,38,.1)}.svc-t-name{font-weight:700;font-size:13px;color:var(--ink);line-height:1.3}.svc-t-cat{font-size:11px;color:var(--muted);margin-top:2px}.svc-price{font-size:14px;font-weight:800;color:var(--brand-red);white-space:nowrap}.svc-row-actions{display:inline-flex;gap:6px;justify-content:flex-end}.icon-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--duration-fast) ease}.icon-btn:hover{border-color:var(--brand-charcoal);color:var(--brand-charcoal);background:var(--bg-warm);box-shadow:var(--shadow-xs)}.icon-btn.danger:hover{border-color:var(--brand-red);color:#fff;background:var(--brand-red);box-shadow:0 2px 8px #dc26264d}@media (max-width: 860px){.catalog-layout{grid-template-columns:1fr}.cat-rail{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:6px}.cat-rail-item{width:auto}.search-box{min-width:0;flex:1}}.section-sub{font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);margin:24px 2px 12px}.ins-presets{display:flex;flex-wrap:wrap;gap:6px}.ins-presets .cat-tab{background:var(--bg-warm);border-radius:var(--radius-sm)}.ins-presets .cat-tab.active{background:linear-gradient(135deg,var(--brand-red) 0%,#ef4444 100%);color:#fff;box-shadow:0 2px 8px #dc26264d}.ins-vat-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:var(--radius);margin-bottom:18px;border:1px solid transparent}.ins-vat-banner.safe{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.ins-vat-banner.due-soon{background:#fffbeb;border-color:#fcd34d;color:#92400e}.ins-vat-banner.overdue{background:#fef2f2;border-color:#fca5a5;color:#991b1b}.ins-vat-banner .ivb-icon{font-size:22px;line-height:1}.ins-vat-banner .ivb-title{font-weight:800;font-size:13.5px}.ins-vat-banner .ivb-sub{font-size:12px;opacity:.9;margin-top:2px}.ins-vat-banner .ivb-count{min-width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;background:#fff9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ins-alerts{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:18px}.ins-alert{display:flex;align-items:flex-start;gap:10px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--brand-red);border-radius:var(--radius-sm);padding:12px 14px;font-size:12.5px;transition:box-shadow var(--duration-fast) ease}.ins-alert:hover{box-shadow:var(--shadow-sm)}.ins-alert .ia-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0}@media print{.ins-vat-banner{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.hamburger{display:none;border:none;background:transparent;color:var(--brand-charcoal);padding:6px;border-radius:var(--radius-sm);cursor:pointer;align-items:center;justify-content:center;flex-shrink:0;transition:background var(--duration-fast) ease}.hamburger:hover{background:var(--bg-warm)}.sidebar-backdrop{display:none}@media (max-width: 860px){.hamburger{display:inline-flex}.sidebar{position:fixed;top:0;left:0;height:100vh;width:84vw;max-width:310px;z-index:60;transform:translate(-100%);transition:transform .3s var(--ease-out);box-shadow:4px 0 32px #0000001a}.app-shell.menu-open .sidebar{transform:translate(0)}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0003;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:55;opacity:0;pointer-events:none;transition:opacity .3s ease}.app-shell.menu-open .sidebar-backdrop{opacity:1;pointer-events:auto}.topbar{padding:12px 16px;gap:10px}.topbar h2{font-size:16px;padding-left:10px}.topbar-sub{display:none}.content{padding:16px 14px 56px}.card{padding:16px}.grid.cols-2,.grid.cols-3,.grid.cols-4,.dash-split,.chart-grid,.catalog-layout{grid-template-columns:1fr!important}.section-title{flex-wrap:wrap;gap:8px}.catalog-toolbar,.catalog-actions,.row-actions{flex-wrap:wrap}.doc-toolbar{width:100%!important;flex-wrap:wrap;gap:8px}.table:not(.rtable),.svc-table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}.inv-doc-root{overflow-x:auto;-webkit-overflow-scrolling:touch}.modal,.modal-lg{width:94vw;max-width:94vw}}@media (max-width: 480px){.topbar h2{font-size:14px}.btn{padding:8px 13px}.kpi .kpi-value{font-size:20px}}@media (max-width: 640px){.rtable,.rtable tbody,.rtable tr,.rtable td{display:block;width:100%}.rtable thead{display:none}.rtable tr{border:1px solid var(--line);border-radius:var(--radius);padding:8px 16px;margin-bottom:12px;background:var(--panel);box-shadow:var(--shadow-xs)}.rtable td{display:flex;justify-content:space-between;align-items:center;gap:14px;border:none;padding:8px 0;text-align:right;white-space:normal;min-height:0}.rtable td+td{border-top:1px dashed var(--line-light)}.rtable td:before{content:attr(data-label);font-weight:700;color:var(--muted);text-align:left;font-size:11px;letter-spacing:.3px;flex-shrink:0;text-transform:uppercase}.rtable td.actions-cell{padding-top:10px}.rtable td.actions-cell .row-actions{flex-wrap:nowrap;gap:8px}.rtable td.actions-cell .btn{flex:1;text-align:center}}.inv-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:18px}.inv-kpi{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:var(--radius);padding:14px 16px;transition:box-shadow var(--duration-fast) ease}.inv-kpi:hover{box-shadow:var(--shadow-sm)}.inv-kpi .k-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-weight:600}.inv-kpi .k-value{font-size:20px;font-weight:700;color:var(--ink);margin-top:4px;letter-spacing:-.02em}.inv-kpi.ok{border-left-color:var(--ok)}.inv-kpi.warn{border-left-color:var(--warn)}.inv-kpi.danger{border-left-color:var(--brand-red)}.inv-badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 10px;border-radius:999px;white-space:nowrap}.inv-badge.ok{background:#ecfdf5;color:var(--ok)}.inv-badge.low{background:#fffbeb;color:#b45309}.inv-badge.out{background:#fef2f2;color:var(--brand-red)}@media (max-width: 1100px){.inv-kpis{grid-template-columns:repeat(3,1fr)}}@media (max-width: 560px){.inv-kpis{grid-template-columns:repeat(2,1fr)}}.inv-act{height:32px;padding:0 12px;font-size:12px;font-weight:700;border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px;line-height:1;transition:all var(--duration-fast) ease}.inv-act.in{color:var(--ok);border-color:#a7f3d0;background:#f0fdf4}.inv-act.in:hover{background:#ecfdf5;box-shadow:var(--shadow-xs)}.inv-act.out{color:var(--brand-red);border-color:#fca5a5;background:#fef2f2}.inv-act.out:hover{background:#fee2e2;box-shadow:var(--shadow-xs)}.inv-act:disabled{opacity:.5;cursor:not-allowed}@media print{.no-print,.sidebar,.topbar{display:none!important}.content{padding:0!important}.app-shell{display:block}body{background:#fff}}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.content>div{animation:page-in .3s var(--ease-out)}.bd{display:flex;flex-direction:column;gap:16px}.bd-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-radius:var(--radius-lg);flex-wrap:wrap;background:linear-gradient(120deg,#16357e,#1e46a8 45%,#3358c6);box-shadow:var(--shadow-md)}.bd-banner-left{display:flex;align-items:center;gap:14px}.bd-banner-logo{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:#ffffff29;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.bd-banner h2{margin:0;color:#fff;font-size:21px;font-weight:800;letter-spacing:-.2px}.bd-banner-left span{color:#ffffffc7;font-size:12.5px}.bd-banner-actions{display:flex;gap:10px;flex-wrap:wrap}.bd-btn{padding:9px 16px;border-radius:10px;font-size:13px;font-weight:700;text-decoration:none;transition:all var(--duration-fast) ease;white-space:nowrap}.bd-btn.ghost{color:#fff;background:#ffffff24;border:1px solid rgba(255,255,255,.28)}.bd-btn.ghost:hover{background:#ffffff3d}.bd-btn.solid{color:#16357e;background:#fff}.bd-btn.solid:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.bd-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bd-filter{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:4px 10px;box-shadow:var(--shadow-xs)}.bd-filter-ic{font-size:14px;opacity:.75}.bd-filter select{border:none;background:transparent;font-size:13px;padding:6px 4px;min-width:150px;cursor:pointer}.bd-filter select:focus{outline:none}.bd-loading{color:var(--muted);font-size:12.5px}.bd-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.bd-kpi{position:relative;overflow:hidden;padding:16px 18px;border-radius:var(--radius);color:#fff;text-decoration:none;display:block;box-shadow:var(--shadow-md);transition:transform var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.bd-kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.bd-kpi.navy{background:linear-gradient(135deg,#16357e,#1f47a8)}.bd-kpi.blue{background:linear-gradient(135deg,#0e83c9,#1e9adf)}.bd-kpi.green{background:linear-gradient(135deg,#0f9d6b,#16a34a)}.bd-kpi.purple{background:linear-gradient(135deg,#7c3aed,#9333ea)}.bd-kpi-label{font-size:12px;font-weight:600;opacity:.9}.bd-kpi-value{font-size:25px;font-weight:800;margin-top:6px;letter-spacing:-.5px}.bd-kpi-foot{font-size:11.5px;opacity:.85;margin-top:4px;font-style:italic}.bd-row{display:grid;gap:16px}.bd-6-4{grid-template-columns:1.5fr 1fr}.bd-1-1{grid-template-columns:1fr 1fr}.bd-mb{margin-bottom:0}.bd-panel{padding:16px 18px}.bd-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.bd-panel-title{font-size:14.5px;font-weight:800;color:var(--ink);display:flex;align-items:baseline;gap:8px}.bd-panel-note{font-size:11px;font-weight:500;font-style:italic;color:var(--muted-light)}.bd-panel-head .search-box{min-width:240px;padding:4px 12px}.bd-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px}.bd-legend.center{justify-content:center}.bd-lg{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-secondary)}.bd-lg i{width:10px;height:10px;border-radius:3px;display:inline-block;flex:none}.bd-donut-wrap{display:flex;flex-direction:column;align-items:center}.bd-table-wrap{overflow-x:auto}.bd-table{width:100%;border-collapse:collapse;font-size:12.5px}.bd-table thead th{text-align:left;font-size:11px;font-weight:700;text-transform:none;color:var(--muted);padding:8px 10px;border-bottom:2px solid var(--line);white-space:nowrap;background:var(--bg);position:sticky;top:0}.bd-table th.r,.bd-table td.r{text-align:right}.bd-table tbody td{padding:9px 10px;border-bottom:1px solid var(--line-light);color:var(--ink-secondary);white-space:nowrap}.bd-table tbody tr:hover td{background:#5b9bd50d}.bd-strong{font-weight:700;color:var(--ink)}.bd-due{color:var(--brand-red);font-weight:600}.bd-empty{text-align:center;color:var(--muted);padding:26px 10px!important}.bd-table tfoot td{padding:10px;border-top:2px solid var(--line);background:var(--bg);color:var(--ink)}.bd-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:700}.bd-badge.ok{background:var(--ok-soft);color:var(--ok)}.bd-badge.warn{background:var(--warn-soft);color:var(--warn)}.bd-badge.due{background:var(--danger-soft);color:var(--brand-red)}.bd-tip{background:#232a30;color:#fff;border-radius:8px;padding:8px 11px;font-size:11.5px;box-shadow:var(--shadow-lg)}.bd-tip-h{font-weight:700;margin-bottom:5px}.bd-tip-row{display:flex;align-items:center;gap:7px;padding:1px 0}.bd-tip-row i{width:9px;height:9px;border-radius:2px}.bd-tip-row span{color:#c7cfd8}.bd-tip-row b{margin-left:auto;padding-left:12px}.bd-note{background:#fff5f6;border:1px solid #f6d6da;border-left:4px solid var(--brand-red);border-radius:var(--radius-sm);padding:12px 16px;font-size:12px;color:var(--ink-secondary);line-height:1.6}@media (max-width: 900px){.bd-kpis{grid-template-columns:repeat(2,1fr)}.bd-6-4,.bd-1-1{grid-template-columns:1fr}}@media (max-width: 520px){.bd-kpis{grid-template-columns:1fr}}.ah-page{display:flex;flex-direction:column;gap:16px}.ah-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:20px 22px;border-radius:var(--radius-lg);color:#fff;background:linear-gradient(120deg,#101d3a,#193b82 52%,#315ab8);box-shadow:var(--shadow-md)}.ah-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#8edbe1;margin-bottom:5px}.ah-hero h2{color:#fff;margin:0 0 4px;font-size:23px}.ah-hero p{margin:0;max-width:690px;color:#ffffffc2;font-size:12.5px}.ah-hero-controls{display:flex;gap:8px;align-items:center}.ah-hero-controls select{min-width:140px;border:1px solid rgba(255,255,255,.3);background:#ffffff1f;color:#fff}.ah-hero-controls select option{color:#17202a;background:#fff}.ah-refresh{border-color:#ffffff4d;background:#fff;color:#193b82;font-weight:700}.ah-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ah-kpi{color:#fff;border-radius:var(--radius);padding:15px 16px;box-shadow:var(--shadow);min-width:0}.ah-kpi.navy{background:linear-gradient(135deg,#172c5b,#244e99)}.ah-kpi.blue{background:linear-gradient(135deg,#1479b8,#1e9bd7)}.ah-kpi.teal{background:linear-gradient(135deg,#078d88,#16b7aa)}.ah-kpi.purple{background:linear-gradient(135deg,#6741b6,#8b5fd3)}.ah-kpi.red{background:linear-gradient(135deg,#bd3948,#e15362)}.ah-kpi-label{font-size:11px;font-weight:700;opacity:.86}.ah-kpi-value{margin-top:4px;font-size:25px;line-height:1.1;font-weight:800}.ah-kpi-note{margin-top:5px;font-size:10.5px;opacity:.77}.ah-chart-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:16px}.ah-chart-grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.ah-panel{padding:16px 18px;min-width:0}.ah-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ah-panel-head h3{margin:0;font-size:14px}.ah-panel-head span{color:var(--muted);font-size:11px}.ah-pie-wrap{display:flex;align-items:center;gap:4px}.ah-legend{min-width:110px;display:flex;flex-direction:column;gap:7px}.ah-legend span{display:flex;align-items:center;gap:6px;color:var(--ink-secondary);font-size:11px}.ah-legend i{width:9px;height:9px;border-radius:50%}.ah-legend b{margin-left:auto;color:var(--ink)}.ah-empty-box{min-height:190px;display:grid;place-items:center;color:var(--muted);font-size:12px}.ah-breakdowns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ah-breakdowns h4{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.ah-rank{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--line-light);font-size:11.5px}.ah-rank span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ah-rank b{color:var(--brand-blue,#1f47a8)}.ah-log-card{padding:0;overflow:hidden}.ah-tabs{display:flex;gap:2px;padding:10px 14px 0;border-bottom:1px solid var(--line)}.ah-tabs button{border:0;background:transparent;padding:10px 14px;color:var(--muted);font-size:12.5px;font-weight:700;cursor:pointer;border-bottom:2px solid transparent}.ah-tabs button.active{color:#1f47a8;border-bottom-color:#1f47a8}.ah-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px}.ah-toolbar .search-box{min-width:min(380px,100%);flex:1}.ah-toolbar select{width:auto;min-width:155px}.ah-table-wrap{width:100%;overflow-x:auto}.ah-table{width:100%;border-collapse:collapse;font-size:11.5px}.ah-table th{padding:9px 10px;text-align:left;white-space:nowrap;color:var(--muted);background:var(--bg);border-bottom:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.35px}.ah-table td{padding:9px 10px;white-space:nowrap;color:var(--ink-secondary);border-bottom:1px solid var(--line-light)}.ah-table tbody tr:hover td{background:#1f47a809}.ah-table .strong{font-weight:700;color:var(--ink)}.ah-table .mono{font-family:Consolas,SFMono-Regular,monospace;font-size:10.5px}.ah-table .r{text-align:right}.ah-description{max-width:320px;overflow:hidden;text-overflow:ellipsis}.ah-empty{text-align:center;padding:28px!important;color:var(--muted)!important}.ah-pill,.ah-event,.ah-action,.ah-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:9.5px;font-weight:800;white-space:nowrap}.ah-pill{color:#315ab8;background:#e8effc}.ah-event.page{color:#1a6b66;background:#dcf7f3}.ah-event.api{color:#6043a2;background:#eee8fb}.ah-action{color:#193b82;background:#e8effc;text-transform:capitalize}.ah-status{color:#247348;background:#e4f6ec}.ah-status.bad{color:#b42d3a;background:#fde8eb}.ah-privacy-note{padding:12px 14px;border:1px solid #cfe0f6;border-left:4px solid #315ab8;border-radius:var(--radius-sm);background:#f5f9ff;color:var(--ink-secondary);font-size:11.5px;line-height:1.55}@media (max-width: 1100px){.ah-kpi-grid{grid-template-columns:repeat(3,1fr)}.ah-chart-grid,.ah-chart-grid.equal{grid-template-columns:1fr}}@media (max-width: 650px){.ah-kpi-grid{grid-template-columns:repeat(2,1fr)}.ah-hero{align-items:flex-start}.ah-hero-controls{width:100%}.ah-hero-controls select{flex:1}.ah-pie-wrap{flex-direction:column}.ah-legend{width:100%}.ah-breakdowns{grid-template-columns:1fr}}@media (max-width: 420px){.ah-kpi-grid{grid-template-columns:1fr}}
