/* Inherited draft-save / general-affairs styles — bundled in FRONTERA ONE V1.5.7.15 */
:root{
  --v1550-navy:#0A1D3A;
  --v1550-blue:#175CD3;
  --v1550-green:#067647;
  --v1550-amber:#B54708;
  --v1550-red:#B42318;
  --v1550-line:#DCE3EC;
  --v1550-soft:#F6F8FB;
}
.v1550-phase-note{
  display:none;margin:0 0 14px;padding:12px 14px;border:1px solid #F5C26B;
  border-radius:11px;background:#FFF8E8;color:#854A0E;font-size:15px;line-height:1.6;
}
.v1550-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px;padding:5px;background:#EDF2F7;border-radius:12px}
.v1550-tabs button{border:0;background:transparent;color:#667085;border-radius:9px;padding:9px 14px;font-size:14px;font-weight:850;cursor:pointer}
.v1550-tabs button.on{background:#fff;color:var(--v1550-navy);box-shadow:0 2px 8px rgba(10,29,58,.09)}
.v1550-pane{display:none}.v1550-pane.on{display:block}
.v1550-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.v1550-kpi{background:#fff;border:1px solid var(--v1550-line);border-radius:12px;padding:13px;min-width:0}
.v1550-kpi label{display:block;color:#7B8794;font-size:14px;font-weight:850;letter-spacing:.02em}
.v1550-kpi strong{display:block;margin-top:6px;color:var(--v1550-navy);font-size:20px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.v1550-kpi small{display:block;margin-top:4px;color:#98A2B3;font-size:14px;line-height:1.4}
.v1550-kpi.warn strong{color:var(--v1550-amber)}.v1550-kpi.alert strong{color:var(--v1550-red)}.v1550-kpi.good strong{color:var(--v1550-green)}
.v1550-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.v1550-toolbar select,.v1550-toolbar input{height:35px;border:1px solid #D0D5DD;border-radius:9px;background:#fff;padding:0 10px;color:#344054;font-size:14px;min-width:125px}
.v1550-toolbar input{min-width:210px}
.v1550-actionbar{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.v1550-money{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:800;color:#243B53}
.v1550-center{text-align:center!important}.v1550-left{text-align:left!important}
.v1550-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:14px;font-weight:850;white-space:nowrap}
.v1550-status.MATCHED,.v1550-status.RESOLVED,.v1550-status.PAID,.v1550-status.CLOSED{background:#E8F7EF;color:#067647}
.v1550-status.PENDING,.v1550-status.OPEN,.v1550-status.IN_PROGRESS{background:#FFF4E5;color:#B54708}
.v1550-status.MISMATCH,.v1550-status.REJECTED,.v1550-status.CANCELLED{background:#FDECEC;color:#B42318}
.v1550-status.HOLD,.v1550-status.APPROVED{background:#EAF2FF;color:#175CD3}
.v1550-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
.v1550-summary-box{border:1px solid #E2E8F0;background:#FAFBFC;border-radius:10px;padding:10px;min-width:0}
.v1550-summary-box label{display:block;color:#7B8794;font-size:14px;font-weight:800}.v1550-summary-box b{display:block;margin-top:5px;color:#0B2344;font-size:15px;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}
.v1550-detail-note{padding:10px 12px;border:1px dashed #CBD5E1;border-radius:9px;background:#FBFCFD;color:#667085;font-size:14px;line-height:1.55}
.v1550-section-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:16px 0 8px;padding-bottom:7px;border-bottom:1px solid #E4E7EC;color:#0B2344;font-weight:900;font-size:15px}
.v1550-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.v1550-form-grid .span2{grid-column:span 2}.v1550-form-grid .span3{grid-column:span 3}.v1550-form-grid .span4{grid-column:span 4}
.v1550-form-grid .field label{font-size:14px}
.v1550-form-grid input,.v1550-form-grid select,.v1550-form-grid textarea{width:100%;box-sizing:border-box}
.v1550-inline{display:flex;gap:7px;align-items:center}.v1550-inline>*{min-width:0}
.v1550-calc{padding:10px 12px;border-radius:10px;background:#F0F5FF;border:1px solid #D6E4FF;color:#344054;font-size:14px;line-height:1.55}
.v1550-calc.ok{background:#EAF8F0;border-color:#ABEFC6;color:#067647}.v1550-calc.bad{background:#FDECEC;border-color:#FECDCA;color:#B42318}.v1550-calc.wait{background:#FFF8E8;border-color:#FEDF89;color:#B54708}
.v1550-allocation-table input{width:105px;min-width:90px;text-align:right}
.v1550-allocation-table tr.over{background:#FFF1F0}
.v1550-file-list{display:grid;gap:7px}.v1550-file-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #E4E7EC;border-radius:9px;background:#fff;padding:9px 10px}
.v1550-file-row .meta{min-width:0}.v1550-file-row b{display:block;color:#344054;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v1550-file-row small{display:block;margin-top:3px;color:#98A2B3;font-size:14px}
.v1550-file-actions{display:flex;gap:5px;flex:0 0 auto}
.v1550-private-lock{display:inline-flex;align-items:center;gap:5px;color:#6941C6;background:#F4F0FF;border-radius:999px;padding:4px 8px;font-size:14px;font-weight:850}
.v1550-staff-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.v1550-directory-hint{padding:10px 12px;background:#F4F0FF;border:1px solid #D9D6FE;border-radius:10px;color:#4A3A82;font-size:14px;line-height:1.55;margin-bottom:12px}
.v1550-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 12px}
.v1550-cost-card{border:1px solid #E4E7EC;border-radius:10px;background:#fff;padding:10px}.v1550-cost-card span{display:block;font-size:14px;color:#667085}.v1550-cost-card b{display:block;margin-top:4px;font-size:14px;color:#0B2344;font-variant-numeric:tabular-nums}
.v1550-clickable{cursor:pointer}.v1550-clickable:hover{background:#F8FAFC}
.v1550-mobile-list{display:none}
.v1550-mobile-card{background:#fff;border:1px solid #E4E7EC;border-radius:12px;padding:12px;margin-bottom:9px}
.v1550-mobile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.v1550-mobile-title{font-size:14px;font-weight:900;color:#0B2344}.v1550-mobile-sub{font-size:14px;color:#667085;margin-top:4px;line-height:1.45}
.v1550-mobile-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.v1550-mobile-kv{background:#F8FAFC;border-radius:8px;padding:8px}.v1550-mobile-kv label{display:block;font-size:7px;color:#98A2B3}.v1550-mobile-kv b{display:block;margin-top:3px;font-size:14px;color:#344054}
.v1550-modal-wide .modal{width:min(1180px,96vw);max-width:1180px}
.v1550-modal-mid .modal{width:min(860px,95vw);max-width:860px}
.v1550-modal-small .modal{width:min(620px,94vw);max-width:620px}
.v1550-table-scroll{max-height:390px;overflow:auto;border:1px solid #E4E7EC;border-radius:10px}
.v1550-table-scroll table{margin:0}
.v1550-muted{color:#98A2B3;font-size:14px}
.v1550-danger-text{color:#B42318}.v1550-good-text{color:#067647}.v1550-warn-text{color:#B54708}
.v1550-owner-only{display:none}
body.permission-owner .v1550-owner-only,body.permission-finance-manage .v1550-owner-only{display:inline-flex}

@media(max-width:1180px){.v1550-kpis{grid-template-columns:repeat(3,1fr)}.v1550-summary-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
  .v1550-kpis,.v1550-staff-kpis{grid-template-columns:1fr 1fr}
  .v1550-form-grid{grid-template-columns:1fr 1fr}.v1550-form-grid .span3,.v1550-form-grid .span4{grid-column:span 2}
  .v1550-cost-grid{grid-template-columns:1fr 1fr}
  .v1550-desktop-table{display:none!important}.v1550-mobile-list{display:block}
}
@media(max-width:640px){
  .v1550-toolbar{justify-content:stretch}.v1550-toolbar select,.v1550-toolbar input{width:100%;min-width:0}
  .v1550-kpis,.v1550-staff-kpis,.v1550-summary-grid,.v1550-cost-grid{grid-template-columns:1fr 1fr}
  .v1550-form-grid{grid-template-columns:1fr}.v1550-form-grid .span2,.v1550-form-grid .span3,.v1550-form-grid .span4{grid-column:span 1}
  .v1550-tabs{overflow-x:auto;flex-wrap:nowrap}.v1550-tabs button{flex:0 0 auto}
  .v1550-kpi strong{font-size:16px}
  .mobile-nav{display:flex!important;overflow-x:auto;scrollbar-width:none}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav button{min-width:68px;flex:0 0 68px}
}
/* Readability: this module is designed for daily staff use, not dense ERP screens. */
#cnAccountingRoot table th,#cnAccountingRoot table td,#staffdocs table th,#staffdocs table td{font-size:13px;line-height:1.45}
#cnAccountingRoot .btn,#staffdocs .btn,.v1550-modal-wide .btn,.v1550-modal-mid .btn{font-size:13px}
.v1550-mobile-kv label{font-size:12px}
@media(max-width:640px){
  .v1550-kpis,.v1550-staff-kpis,.v1550-summary-grid,.v1550-cost-grid{grid-template-columns:1fr}
  .v1550-mobile-sub{font-size:12px}
}
.v1550-cost-card small{display:block;margin-top:7px;color:#667085;font-size:12px;line-height:1.45;font-weight:700}
.v1550-cost-card small em{font-style:normal;color:#475467}
.v1550-cost-card small em.up{color:#b42318}
.v1550-cost-card small em.down{color:#027a48}


/* Draft-save and General Affairs access */
.v1550-status.DRAFT{background:#F4F0FF;color:#6941C6;border:1px solid #D9D6FE}
.v1551-draft-note{margin-bottom:12px;padding:10px 12px;border:1px solid #F4B740;border-radius:10px;background:#FFF8E8;color:#7A4E00;font-size:14px;line-height:1.55;font-weight:700}
.v1550-form-grid .field label{display:block;min-height:20px}
.v1550-form-grid .field label[data-v1551-required="true"]{color:#344054}
.v1550-form-grid .field label[data-v1551-required="true"]::after{content:" ＊";color:#B42318;font-weight:900}
@media(max-width:720px){.v1551-draft-note{font-size:13px;margin-bottom:10px}}


/* Draft inbox and non-blocking important fields */
.v1551-draft-inbox{border:1px solid #E8D8FF;background:linear-gradient(180deg,#FCFAFF 0%,#FFFFFF 100%);margin-bottom:14px}
.v1551-draft-count{display:inline-flex;min-width:34px;height:28px;align-items:center;justify-content:center;border-radius:999px;background:#6941C6;color:#fff;font-weight:800;padding:0 10px}
.v1551-missing-text{color:#7A4E00;font-weight:700;line-height:1.45}
.v1551-draft-inbox tbody tr:hover{background:#F7F2FF}
.v1551-draft-inbox .v1550-mobile-card{border-color:#E8D8FF;background:#FCFAFF}
@media(max-width:720px){.v1551-draft-inbox{margin-bottom:10px}.v1551-draft-count{height:25px;min-width:30px;font-size:12px}}

/* V1.5.7.15 invoice duplicate reminder */
.v1571-invoice-duplicate{margin-top:6px;padding:8px 10px;border-radius:9px;font-size:12px;font-weight:700;line-height:1.45;background:#fff8e1;color:#7a5200;border:1px solid #f1d38a}
.v1571-invoice-duplicate.danger{background:#fff0f0;color:#a22118;border-color:#efb0aa}
