.digi-inv-app{max-width:1180px;margin:20px auto;font-family:Arial,sans-serif;color:#111}.di-login,.di-card{background:#fff;border:1px solid #e3e3e3;border-radius:14px;padding:22px;margin:18px 0;box-shadow:0 8px 25px rgba(0,0,0,.04)}.di-login{max-width:420px;margin:40px auto}.di-login input,.di-card input,.di-card select,.di-card textarea{width:100%;box-sizing:border-box;border:1px solid #d9d9d9;border-radius:8px;padding:11px;margin:6px 0 12px;background:#fff}.di-card textarea{min-height:78px}.di-card label{font-size:13px;font-weight:700;color:#333}.di-top{display:flex;justify-content:space-between;align-items:center}.di-top h2{margin:0;color:#063b33}.di-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.di-tabs button,.digi-inv-app button{border:0;border-radius:8px;padding:11px 16px;background:#111;color:#fff;cursor:pointer}.di-tabs button{background:#eee;color:#111}.di-tabs button.active{background:#111;color:#fff}.di-light{background:#eee!important;color:#111!important}.di-tab{display:none}.di-tab.active{display:block}.di-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.di-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.di-filters input,.di-filters select{max-width:220px}.di-table{width:100%;border-collapse:collapse;margin-top:15px}.di-table th,.di-table td{border-bottom:1px solid #eee;padding:10px;text-align:left;vertical-align:top}.di-table th{background:#fafafa}.di-badge{display:inline-block;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.di-paid{background:#dcfce7;color:#166534}.di-unpaid{background:#fee2e2;color:#991b1b}.di-credit{background:#fef3c7;color:#92400e}.di-offer{background:#e0f2fe;color:#075985}.di-actions{display:flex;gap:6px;flex-wrap:wrap}.di-actions button{padding:7px 10px;font-size:12px}.di-items{width:100%;border-collapse:collapse}.di-items th,.di-items td{border:1px solid #e5e5e5;padding:6px}.di-items input{margin:0}.di-total-box{background:#fafafa;border:1px solid #eee;border-radius:10px;padding:12px;margin:12px 0;text-align:right}.di-dash{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.di-stat{border-radius:14px;padding:18px;background:#fff;border:1px solid #e5e5e5;box-shadow:0 8px 25px rgba(0,0,0,.04)}.di-stat b{display:block;font-size:28px;margin-top:7px}.di-msg{margin-top:10px;font-weight:700}.di-ok{color:#15803d}.di-err{color:#b91c1c}.di-modal{display:none;position:fixed;z-index:999999;inset:0;background:rgba(0,0,0,.55);overflow:auto}.di-modal.show{display:block}.di-modal-inner{background:#fff;max-width:960px;margin:30px auto;padding:20px;border-radius:12px;position:relative}.di-close{position:absolute;right:10px;top:10px}.di-preview-actions{margin:20px 0;text-align:right}.di-doc{width:794px;min-height:1123px;margin:0 auto;background:#fff;padding:45px;color:#111;font-family:Arial,Helvetica,sans-serif;font-size:16px}.di-doc-head{display:flex;justify-content:space-between;align-items:flex-start}.di-logo{max-width:90px;max-height:90px}.di-company-left{display:flex;align-items:center;gap:10px;font-weight:bold}.di-company-right{text-align:right}.di-line{border-top:2px solid #333;border-bottom:1px solid #333;text-align:center;margin:30px 0 12px;padding:3px}.di-doc-title{text-align:center;font-size:22px;font-weight:bold;margin:15px}.di-client-row{display:flex;gap:45px;margin:30px 0}.di-client-box{border:2px solid #111;border-radius:14px;padding:18px;flex:1;min-height:58px}.di-doc table{width:100%;border-collapse:collapse;margin-top:35px}.di-doc th,.di-doc td{border:1px solid #222;padding:5px}.di-doc th{text-align:left}.di-totals{border:2px solid #111;border-radius:20px;padding:18px;width:300px;margin:80px 0 20px auto}.di-totals div{display:flex;justify-content:space-between;padding:7px 0}.di-totals .grand{border-top:1px solid #333;margin-top:8px;padding-top:15px;font-weight:bold}.di-sign{margin-top:90px}.di-receipt{border:2px solid #111;padding:18px;margin-top:25px}.di-danger{background:#b91c1c!important}@media(max-width:800px){.di-grid,.di-dash{grid-template-columns:1fr}.di-filters{display:block}.di-filters input,.di-filters select{max-width:none}.di-table{font-size:13px}.di-table thead{display:none}.di-table tr{display:block;border:1px solid #eee;border-radius:10px;margin:10px 0;padding:8px}.di-table td{display:block;border:0;padding:5px}.di-doc{width:auto;min-height:auto;padding:20px}.di-client-row,.di-doc-head{display:block}.di-company-right{text-align:left;margin-top:15px}.di-totals{width:auto;margin:30px 0}}@media print{body *{visibility:hidden!important}.di-doc,.di-doc *{visibility:visible!important}.di-doc{position:absolute;left:0;top:0;width:100%;min-height:0;margin:0;padding:30px}.di-preview-actions,.di-close{display:none!important}}

/* v2.0.6 print fixes: print only the preview document, not the whole CRM page */
@media print{
  @page{size:A4;margin:10mm}
  html,body{background:#fff!important;margin:0!important;padding:0!important}
  body *{visibility:hidden!important}
  #di-preview-body .di-doc,#di-preview-body .di-doc *{visibility:visible!important}
  #di-preview-body .di-doc{position:absolute!important;left:0!important;top:0!important;width:190mm!important;min-height:auto!important;margin:0!important;padding:8mm!important;box-sizing:border-box!important;page-break-after:auto!important;page-break-inside:avoid!important}
  .di-modal,.di-modal-inner,#di-preview-body{display:block!important;position:static!important;background:#fff!important;margin:0!important;padding:0!important;overflow:visible!important;box-shadow:none!important;border:0!important}
  .di-preview-actions,.di-close,.di-top,.di-tabs,.di-card{display:none!important}
}
.di-hidden{display:none!important}

/* v2.1.0 Offer template fixes */
.di-client-row-offer{display:block}
.di-offer-client{width:48%;box-sizing:border-box}
.di-offer-page2{page-break-before:always;break-before:page;min-height:990px;padding-top:15px}
.di-offer-page2 h2{font-size:18px;margin-top:30px}
.di-terms-text{white-space:pre-line;line-height:1.45}
.di-closing-text{white-space:pre-line;line-height:1.45;margin-top:30px}
.di-offer-sign{margin-top:45px;display:flex;justify-content:space-between;gap:70px;align-items:flex-start}.di-sign-left{width:45%}.di-sign-right{width:45%;text-align:left}
@media(max-width:800px){.di-offer-client{width:auto}}
/* v2.1.5 receipt document styles */
.di-receipt-badge{background:#f3e8ff;color:#6b21a8}
.di-receipt-summary{border:2px solid #111;border-radius:14px;padding:20px;margin:55px 0 20px auto;width:330px;font-size:18px}
.di-receipt-summary div{display:flex;justify-content:space-between;gap:20px}
.di-receipt-doc .di-doc-title{font-size:24px}
/* v2.1.6 invoice revert + cancelled receipts */
.di-valid{background:#dcfce7;color:#166534}
.di-cancelled{background:#fee2e2;color:#991b1b}

/* v2.1.8 mobile login click fixes */
.di-login{position:relative;z-index:1000000;pointer-events:auto!important}
#di-login-form{position:relative;z-index:1000001;pointer-events:auto!important}
#di-login,.di-login-btn{display:block!important;width:100%!important;min-height:48px!important;font-size:16px!important;line-height:1.2!important;cursor:pointer!important;pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(0,0,0,.15)}
#di-login.di-disabled{opacity:.65;cursor:wait!important}
.di-login input{font-size:16px!important;pointer-events:auto!important}

/* v2.2.0 offer terms templates */
.di-offer-template-settings{border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin:18px 0;background:#fafafa}
.di-template-card{background:#fff;border:1px solid #ddd;border-radius:12px;padding:14px;margin:12px 0}
.di-template-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.di-template-head button{padding:7px 10px;font-size:12px}
#offer-custom-box{border:1px dashed #bbb;border-radius:12px;padding:14px;margin:10px 0;background:#fff}

/* v2.2.1 collapsible offer template settings */
.di-template-card.is-collapsed .di-template-body{display:none}
.di-template-card.is-open .di-template-body{display:block;margin-top:12px}
.di-template-head .toggle-offer-template{flex:1;text-align:left;background:#f3f4f6!important;color:#111!important;border:1px solid #e5e7eb!important}
.di-template-arrow{display:inline-block;width:18px;font-weight:bold}
.di-template-head{gap:8px}

.di-doc,.di-doc table,.di-totals{font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1;}
.di-doc td:nth-child(1),.di-doc th:nth-child(1){text-align:center}.di-doc td:nth-child(3),.di-doc th:nth-child(3),.di-doc td:nth-child(4),.di-doc th:nth-child(4),.di-doc td:nth-child(5),.di-doc th:nth-child(5){text-align:right}
/* v2.2.6 Payment method modal */
.di-payment-modal-inner{max-width:520px!important}
.di-payment-modal-inner label{display:block;font-weight:700;margin:14px 0}
.di-payment-modal-inner select,.di-payment-modal-inner input{width:100%;box-sizing:border-box;border:1px solid #d9d9d9;border-radius:8px;padding:11px;margin-top:6px;background:#fff}
.di-payment-close{position:absolute;right:10px;top:10px}
.di-payment-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.di-payment-msg{margin-top:12px;font-weight:700}

.di-documents-table th.di-sortable{padding:0;cursor:pointer;user-select:none}.di-documents-table .di-sort-button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;padding:10px;background:transparent!important;color:inherit!important;border:0!important;border-radius:0!important;font:inherit;font-weight:700;text-align:left}.di-documents-table th.di-sortable:hover,.di-documents-table th.di-sortable.is-sorted{background:#f0f5f4}.di-sort-arrow{font-size:11px;opacity:.55}.di-documents-table th.is-sorted .di-sort-arrow{opacity:1}.di-documents-table td:nth-child(6),.di-documents-table th:nth-child(6){text-align:right;font-variant-numeric:tabular-nums}

/* Item reordering */
.di-items-help{margin:-4px 0 10px;color:#666;font-size:12px}.di-items .it-drag-head,.di-items .it-drag-cell{width:42px;text-align:center;padding:4px}.digi-inv-app .it-drag{display:inline-flex;align-items:center;justify-content:center;width:34px;height:38px;padding:0!important;border-radius:7px!important;background:#f1f1f1!important;color:#333!important;font-size:20px;line-height:1;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.digi-inv-app .it-drag:active,.di-items tr.is-dragging .it-drag{cursor:grabbing;background:#ddd!important}.di-items tr.is-dragging{opacity:.72;box-shadow:0 5px 16px rgba(0,0,0,.16);background:#fff}.di-item-dragging,.di-item-dragging *{cursor:grabbing!important}.di-item-dragging{user-select:none;-webkit-user-select:none}
@media(max-width:800px){.di-items{min-width:760px}.di-card:has(.di-items){overflow-x:auto}.digi-inv-app .it-drag{width:38px;height:44px;font-size:22px}}
