
/* FRONTERA ONE V1.5.7.15 — Active Staff Weekly Sales Upload */
.ocs-track-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}
.ocs-track-btn{border:1px solid #B9C8D9;background:#F4F7FA;color:var(--navy);border-radius:9px;padding:6px 10px;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap}
.ocs-track-btn:hover{background:#EAF0F7}
.ocs-content-text{white-space:pre-wrap;line-height:1.55;color:#344054;max-width:420px}
.ocs-content-help{font-size:8px;color:#667085;line-height:1.55;margin-top:5px}
.sales-toolbar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:14px}
.sales-toolbar .field-lite{display:flex;flex-direction:column;gap:5px;min-width:170px}
.sales-toolbar label{font-size:9px;color:#667085;font-weight:800}
.sales-toolbar select{height:36px;border:1px solid #CDD5DF;border-radius:9px;background:#fff;padding:0 10px;color:#101828;font-weight:700}
.sales-fiscal-range{font-size:9px;color:#667085;padding:0 4px 8px}
.sales-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.sales-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 14px;min-height:82px}
.sales-kpi label{display:block;font-size:8px;color:#667085;font-weight:800;margin-bottom:8px}
.sales-kpi strong{display:block;font-size:18px;color:var(--navy);line-height:1.25;overflow-wrap:anywhere}
.sales-kpi small{display:block;font-size:8px;color:#667085;margin-top:5px}
.sales-overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:14px;margin-bottom:14px}
.sales-comment-box{padding:18px;white-space:pre-wrap;line-height:1.75;font-size:12px;color:#344054;min-height:170px;background:#FBFCFE;border-top:1px solid var(--line)}
.sales-comment-empty{color:#98A2B3}
.sales-pane{display:none}.sales-pane.on{display:block}
.sales-tabbar{display:flex;gap:6px;padding:12px 14px 0;flex-wrap:wrap}
.sales-tabbar button{border:1px solid #D8E0E8;background:#fff;color:#667085;border-radius:999px;padding:7px 13px;font-size:9px;font-weight:800;cursor:pointer}
.sales-tabbar button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.sales-progress{display:flex;align-items:center;gap:8px;min-width:130px}
.sales-progress-track{height:7px;background:#E8EDF3;border-radius:999px;overflow:hidden;flex:1;min-width:70px}
.sales-progress-fill{height:100%;background:var(--navy);border-radius:999px}
.sales-progress-label{font-size:9px;font-weight:800;color:#344054;min-width:42px;text-align:right}
.sales-gap-positive{color:#B54708;font-weight:800}.sales-gap-over{color:#067647;font-weight:800}
.sales-week-row{cursor:pointer}.sales-week-row:hover{background:#F8FAFC}
.sales-week-row.selected{background:#EEF4FA}
.sales-mobile-list{display:none;padding:12px}
.sales-mobile-card{border:1px solid #E1E7EF;border-radius:12px;padding:12px;background:#fff;margin-bottom:9px}
.sales-mobile-card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.sales-mobile-card-title{font-weight:900;color:var(--navy)}
.sales-mobile-card-value{font-weight:900;color:var(--navy);text-align:right}
.sales-mobile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}
.sales-mobile-kv{background:#F8FAFC;border-radius:9px;padding:8px}
.sales-mobile-kv label{display:block;font-size:8px;color:#667085;margin-bottom:3px}.sales-mobile-kv b{font-size:10px;color:#344054}
.sales-comment-preview{font-size:9px;line-height:1.55;color:#667085;margin-top:9px;white-space:pre-wrap}
.sales-modal-table input{width:100%;text-align:right}
.sales-modal-note{background:#F7F9FC;border:1px solid #E1E7EF;border-radius:11px;padding:10px 12px;color:#667085;font-size:9px;line-height:1.6;margin-bottom:12px}
.sales-owner-only{display:none}
body.sales-owner .sales-owner-only{display:inline-flex}
.sales-week-upload-authorized{display:none}
.sales-readonly{display:none;margin-bottom:14px}
body:not(.sales-owner) .sales-readonly{display:block}
@media(max-width:1180px){.sales-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-overview-grid{grid-template-columns:1fr}}
@media(max-width:820px){
  .sales-toolbar{align-items:stretch}.sales-toolbar .field-lite{min-width:0;flex:1 1 145px}.sales-fiscal-range{width:100%;padding:0}
  .sales-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-kpi strong{font-size:15px}
  #sales .sales-desktop-table{display:none}.sales-mobile-list{display:block}
  .sales-overview-grid{grid-template-columns:1fr}.sales-comment-box{min-height:130px}
  .ocs-track-btn{padding:7px 10px}
}

/* V1.5.4.2 — persistent monthly sales entry */
.sales-month-rule-note{margin:12px 14px 0;padding:10px 12px;border:1px solid #D9E2EC;background:#F8FAFC;border-radius:10px;color:#475467;font-size:9px;line-height:1.6}
.sales-source-badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:8px;font-weight:900;white-space:nowrap}
.sales-source-badge.manual{background:#EAF4FF;color:#175CD3;border:1px solid #B2DDFF}
.sales-source-badge.weekly{background:#F2F4F7;color:#475467;border:1px solid #D0D5DD}
.sales-month-row.editable{cursor:pointer}
.sales-month-row.editable:hover{background:#F5F9FD}
.sales-month-source-status{margin-top:12px;padding:10px 12px;border-radius:10px;background:#FBFCFE;border:1px solid #E4E7EC;color:#475467;font-size:9px;line-height:1.6}
#salesMonthModal .sales-modal-table td:nth-child(2){min-width:160px}
#salesMonthModal .sales-modal-table td:nth-child(3){min-width:190px}
@media(max-width:820px){
  .sales-month-rule-note{margin:10px 12px 0}
  #salesMonthModal .mfoot{gap:7px;flex-wrap:wrap}
  #salesMonthModal .mfoot .btn{flex:1 1 auto;justify-content:center}
}


/* V1.5.4.4 — exact column alignment retained from V1.5.4.3 */
#sales .sales-data-table{width:100%;table-layout:fixed;border-collapse:collapse}
#sales .sales-data-table th,#sales .sales-data-table td{box-sizing:border-box;vertical-align:middle;padding-left:14px;padding-right:14px}
#sales .sales-data-table th{white-space:nowrap}
#sales .sales-data-table .sales-left{text-align:left}
#sales .sales-data-table .sales-center{text-align:center}
#sales .sales-data-table .sales-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
#sales .sales-data-table td.sales-num b{font-variant-numeric:tabular-nums lining-nums}
#sales .sales-data-table .sales-progress{justify-content:flex-end;margin-left:auto}
#sales .sales-weekly-table td:last-child,#sales .sales-weekly-table th:last-child{white-space:normal}
#sales .sales-weekly-table .sales-comment-preview{margin:0;max-width:none}
.sales-week-file-actions{display:flex;gap:8px;align-items:flex-end;margin-left:auto;padding-bottom:1px;flex-wrap:wrap}
.sales-week-confirm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}
.sales-week-confirm-grid label{display:flex;align-items:center;gap:8px;border:1px solid #D8E0E8;background:#F8FAFC;border-radius:10px;padding:10px 12px;font-size:10px;font-weight:800;color:#344054;cursor:pointer}
.sales-week-confirm-grid input{width:17px;height:17px;accent-color:var(--navy)}
.sales-week-file-selection{margin-top:8px;border:1px dashed #C9D4E1;border-radius:10px;min-height:44px;padding:8px 10px;background:#FBFCFE}
.sales-week-selected-file{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:7px 3px;border-bottom:1px solid #E8EDF3;font-size:9px}
.sales-week-selected-file:last-child{border-bottom:none}.sales-week-selected-file span{color:#667085;white-space:nowrap}.sales-week-file-empty{color:#98A2B3;font-size:9px}
.sales-week-file-list{display:flex;flex-direction:column;gap:10px}
.sales-week-file-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #E1E7EF;border-radius:12px;padding:12px;background:#fff}
.sales-week-file-icon{width:48px;height:48px;border-radius:10px;background:#EEF3F8;color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900;border:1px solid #D9E2EC}
.sales-week-file-main{min-width:0}.sales-week-file-name{font-weight:900;color:#101828;overflow-wrap:anywhere}.sales-week-file-meta{font-size:8px;color:#667085;margin-top:4px}.sales-week-file-note{font-size:9px;line-height:1.55;color:#475467;margin-top:7px;white-space:pre-wrap}
.sales-week-confirm-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.sales-week-confirm-tags span{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:900}.sales-week-confirm-tags .ok{background:#ECFDF3;color:#067647;border:1px solid #ABEFC6}.sales-week-confirm-tags .off{background:#F2F4F7;color:#667085;border:1px solid #D0D5DD}
.sales-week-file-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:900px){.sales-week-file-actions{width:100%;margin-left:0}.sales-week-file-actions .btn{flex:1 1 180px;justify-content:center}.sales-week-confirm-grid{grid-template-columns:1fr}.sales-week-file-card{grid-template-columns:42px minmax(0,1fr)}.sales-week-file-icon{width:42px;height:42px}.sales-week-file-buttons{grid-column:1/-1;justify-content:stretch}.sales-week-file-buttons .btn{flex:1 1 auto;justify-content:center}}
