/* V46.2: approved MASAR palette and navigation, clearer management hierarchy. */
.professionalPage .pageIntro{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:4px 0 20px}
.professionalPage .pageIntro h2{margin:5px 0 7px;font-size:25px;letter-spacing:-.4px;color:var(--primary)}
.professionalPage .pageIntro p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.professionalPage .eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800;color:var(--muted)}
.professionalPage .sectionHeading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.professionalPage .sectionHeading h3{margin:0}.professionalPage .sectionLabel{font-size:13px;margin:24px 0 8px;color:var(--primary)}
.professionalPage .reportGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px}
.professionalPage .reportMetric{border-radius:14px;padding:16px;box-shadow:none;background:#fff}
.professionalPage .reportMetric small{line-height:1.4;min-height:32px;font-size:12px}
.professionalPage .reportMetric b{font-size:22px;line-height:1.3;letter-spacing:-.35px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.professionalPage .reportPrimary .reportMetric{background:#f3f8f9;border-top:3px solid var(--primary)}
.professionalPage .reportPrimary .reportMetric b{font-size:25px}
.professionalPage .subtle{color:var(--muted);font-size:12px;line-height:1.65;margin:12px 0}
.professionalPage .detailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.professionalPage .row{align-items:flex-start;gap:18px}.professionalPage .row b{max-width:62%;text-align:right;font-variant-numeric:tabular-nums;line-height:1.45}
.professionalPage .btn{min-height:42px}.professionalPage button:focus-visible,.professionalPage summary:focus-visible,.professionalPage a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.reportWorkspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:16px;align-items:stretch}
#deviceReport .reportControl{display:flex;flex-direction:column;align-items:flex-start}
#deviceReport .reportControl h3{margin:0 0 8px}#deviceReport .reportControl p{margin:0 0 12px;font-size:14px}
#deviceReport .reportMonthField{margin:0 0 10px;color:#e6f2f4;min-width:230px}
#deviceReport .reportActions{margin-top:auto;padding-top:8px}
#deviceReport .periodNote{font-size:12px;color:#e6f2f4}
#deviceReport .reportReadiness .statusMessage{font-size:14px;line-height:1.6;margin:0 0 12px;color:var(--primary)}
#deviceReport #excelStatus{font-size:12px;max-width:74%;word-break:break-word}
#deviceReport #excelManualLink{display:inline-block;font-size:12px;margin:12px 0 0;color:var(--primary);overflow-wrap:anywhere}
#deviceReport #excelManualLink[aria-disabled=true]{pointer-events:none;color:var(--muted);text-decoration:none}
#deviceReport .emptyPanel{padding:14px 16px;background:#f3f7fa;border:1px dashed #b9ced7;border-radius:12px;color:var(--muted);font-size:14px;line-height:1.5}
#deviceReport[data-report-state=blocked] .emptyPanel{background:#fff8ef;border-color:#d1ac6c;color:#775013}
#deviceReport[data-report-state=empty] .reportMetric b,#deviceReport[data-report-state=blocked] .reportMetric b{color:#8ba1ac}
.professionalDetails>summary{cursor:pointer;font-size:15px;font-weight:800;color:var(--primary);line-height:1.5}
.professionalDetails>summary>span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin:4px 0 0 18px}
.professionalDetails[open]>summary{margin-bottom:18px}
#device .deviceKpis{margin-top:0}
#device .deviceKpis .reportMetric b{font-size:21px}
#device .deviceAttention{border-left:4px solid var(--gold)}
#deviceAttentionText{line-height:1.7;font-size:14px;margin:0 0 14px}
#device .deviceDetailGrid>.card{height:100%}
#device #operationalHealth{padding:0;margin:0;border:0;box-shadow:none;background:transparent}
#device #operationalHealth>h3{display:none}
#device .deviceDetailGrid .row:last-of-type{border:0}
#device .deviceOverview .reportMetric{background:#f5f9fa}
#costs .auditPresets{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}
#costs .auditPresets .btn{font-size:12px;min-height:34px;padding:7px 12px;background:#f0f5f7}
#costs .auditFilters{padding:16px;background:#f4f8fa;border:1px solid var(--line);border-radius:14px;margin:12px 0}
#costs #auditStatus{font-size:12px;color:var(--muted);line-height:1.6}
#costs .auditQualityPanel{background:#f9fbfc;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:16px 0}
#costs .auditQualityPanel h4{margin:0 0 5px;font-size:13px;color:var(--primary)}
#costs #auditQuality{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}
#costs #auditRankings .reportMetric{background:#f5f9fa}#costs #auditRankings .reportMetric b{font-size:14px;letter-spacing:0}
#costs #auditTotals .reportMetric:nth-child(6){border-top:3px solid var(--primary);background:#edf5f6}
#costs .auditTable{font-variant-numeric:tabular-nums}
#costs .auditTable thead th{background:#edf4f6;color:var(--primary);font-size:11px;line-height:1.5}
#costs .auditTable tbody tr:nth-child(even){background:#f8fbfc}
#costs .auditTable td:first-child,#costs .auditTable th:first-child{position:sticky;left:0;background:#f3f8fa;z-index:1}
#costs .auditTable td:not(:first-child){font-size:12px}
#costs .auditTable tfoot{background:#eaf3f5;font-weight:800}
#costs .auditTable td:last-child{font-size:11px;line-height:1.5}
#costs .auditTable .btn{border:0;box-shadow:none;background:transparent;min-height:36px;padding:4px;font-size:12px;text-decoration:underline;text-underline-offset:3px}
#costs #auditDetails{padding:20px;margin-top:20px;background:#f5f9fa;border:1px solid var(--line);border-radius:14px;line-height:1.65;font-size:13px;overflow-wrap:anywhere}
#costs .costAdminGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
#costs .costInputGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
#costs .fuelPriceBox{display:flex;flex-wrap:wrap;gap:14px}#costs .fuelPriceBox .costField{flex:1 1 160px}
#costs #monthlyLedgerDetails>.card{box-shadow:none;border:0;padding:0;margin:22px 0 0}
#costs .auditNote{font-size:11px;line-height:1.6}
@media(max-width:1100px){.professionalPage .reportMetric b,.professionalPage .reportPrimary .reportMetric b{font-size:20px}.professionalPage .reportMetric{padding:13px}}
@media(max-width:760px){.professionalPage .pageIntro{align-items:flex-start;flex-wrap:wrap;margin-bottom:16px}.professionalPage .pageIntro h2{font-size:22px}.reportWorkspace,.professionalPage .detailGrid,#costs .costAdminGrid{grid-template-columns:minmax(0,1fr)}.professionalPage .reportGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.professionalPage .card{padding:16px}.professionalPage .reportMetric{padding:12px}.professionalPage .reportMetric b,.professionalPage .reportPrimary .reportMetric b{font-size:19px}#device .deviceKpis .reportMetric b{font-size:18px}.professionalPage .reportMetric small{font-size:11px;min-height:30px}#deviceReport .reportMonthField{width:100%;min-width:0}#deviceReport .reportActions{width:100%;gap:8px}#deviceReport .reportActions .btn{flex:1 1 40%}#deviceReport #reportGenerate{flex-basis:100%}#costs .auditFilters{padding:12px}#costs .auditFilters label{min-width:0}#costs #auditTotals .reportMetric b{font-size:17px}#costs .costInputGrid{grid-template-columns:minmax(0,1fr)}.professionalPage .sectionHeading{flex-wrap:wrap}.professionalPage .row b{max-width:60%;font-size:13px}}
@media print{#deviceReport .pageIntro,#deviceReport .reportControl,#deviceReport .reportReadiness .btn,#deviceReport #excelManualLink,#deviceReport .reportActions{display:none!important}#deviceReport .reportWorkspace{display:block}#deviceReport .reportGrid{grid-template-columns:repeat(4,minmax(0,1fr))!important}#deviceReport .reportMetric b{font-size:16px}#deviceReport .card{break-inside:auto;margin-bottom:12px;padding:12px}#deviceReport .reportMetric,#deviceReport .reportAlertBox{break-inside:avoid}#deviceReport .reportEvidence>summary{display:none}#deviceReport .reportAlertGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#deviceReport[data-report-state]:not([data-report-state=ready]) .reportEvidence{display:none!important}}
#deviceReport .verificationDetails{font-size:12px;color:var(--muted);line-height:1.6}
#deviceReport .verificationDetails summary{cursor:pointer;font-weight:700;color:var(--primary)}
#deviceReport .verificationDetails p{overflow-wrap:anywhere}
#deviceReport .reportPrintHeader{display:none}
#costs .auditMethod{margin-top:14px;font-size:12px;color:var(--muted)}
#costs .auditMethod summary{cursor:pointer;color:var(--primary);font-weight:700}
#costs .auditEvidenceGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#costs .auditEvidenceGrid>div{padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px}
#costs .auditEvidenceGrid h4{margin:0 0 8px;color:var(--primary)}
#costs .auditEvidenceTable{display:table!important;min-width:500px;width:100%;font-size:12px}
#costs .auditEvidenceTable th{text-align:left;color:var(--primary)}
#costs .auditEvidenceTable td,#costs .auditEvidenceTable th{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}
#costs .auditSourceRecords{font-size:11px;line-height:1.6;margin-top:16px}
#costs .auditSourceRecords summary{cursor:pointer;font-weight:700}
#costs .auditEvidenceHeading{display:flex;justify-content:space-between;align-items:center;gap:12px}
@media(max-width:600px){#costs .auditEvidenceGrid{grid-template-columns:minmax(0,1fr)}}
@media print{#marineosAuthStatusWrap,#marineosLogoutBtn{display:none!important}#deviceReport .reportPrintHeader{display:block;margin:0 0 16px}#deviceReport .reportPrintHeader h1{font-size:22px;color:var(--primary);margin:0 0 8px}#deviceReport .reportPrintHeader p{font-size:11px;color:var(--muted)}#deviceReport .verificationDetails{font-size:10px}#deviceReport .verificationDetails summary{display:none}}

@media print{#marineosAuthStatus{display:none!important}}
/* V47: retain approved palette and cards; forms fit touch screens. */
#tripAccountability{margin-bottom:16px}#tripAccountability .auditControls,.timecardForm{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;align-items:end;margin:14px 0}
#tripAccountability label,.timecardForm label{display:grid;gap:6px;min-width:0}#tripAccountability input,#tripAccountability select,#tripAccountability textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box;min-height:44px}#tripDetail{border-top:1px solid var(--line,#30434c);margin-top:20px;padding-top:16px}#tripDetail pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto}#tripAccountability td{overflow-wrap:anywhere}#tripAccountability button{min-height:44px}#tripAccountability details{margin:16px 0}#tripAccountability summary{cursor:pointer;min-height:40px}#reportProjectRows:empty{display:none}
@media(max-width:600px){#tripAccountability .auditControls,.timecardForm{grid-template-columns:1fr}.fleetTable{min-width:850px}}
#tripAccountability .costLedgerWrap table{display:table!important;min-width:680px;table-layout:auto}#projectExpenseSummary .costLedgerWrap table,#reportProjectRows .costLedgerWrap table{min-width:450px}#tripAccountability .costLedgerWrap td,#tripAccountability .costLedgerWrap th{word-break:normal;overflow-wrap:normal}#tripAccountability .costLedgerWrap{max-width:100%;overflow-x:auto}
#recordDateControls[hidden],#projectCreate[hidden],.timecardForm[hidden]{display:none!important}
#tripAdvanced>summary,#tripAuditTools>summary,#tripDetail>details>summary{cursor:pointer;padding:12px 0;font-weight:600}
#existingCostLink .auditControls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;margin:12px 0}#existingCostLink label{display:grid;gap:6px}#existingCostLink select{width:100%;min-width:0;min-height:44px}
#projectCreate .auditControls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;margin:12px 0}#projectCreate label{display:grid;gap:6px}#projectCreate input{min-width:0;width:100%;box-sizing:border-box;min-height:44px}
@media(max-width:600px){
 #tripAccountability .tripListWrap table{display:block!important;width:100%!important;min-width:0!important;max-width:100%;table-layout:fixed;box-sizing:border-box}
 #tripAccountability .tripListWrap caption{display:block;text-align:left}
 #tripAccountability .tripListWrap thead{display:none}
 #recordRows{display:block}
 #recordRows,#recordRows tr{width:100%;box-sizing:border-box}
 #recordRows tr{display:grid;grid-template-columns:minmax(0,1fr);padding:12px 0;border-bottom:1px solid #dde5e7;gap:8px}
 #recordRows td{display:block;padding:3px!important;border:0;overflow-wrap:anywhere!important;min-width:0!important;width:auto!important;white-space:normal!important}
 #recordRows td:nth-child(2):before{content:'Started · ';color:var(--muted)}
 #recordRows td:nth-child(3):before{content:'Completed · ';color:var(--muted)}
 #recordRows td:last-child{font-weight:700}
 #recordRows button{width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere}
}
/* V47.2 additions share the approved cards, type and disclosure controls. */
#tripAccountability #recordsAttentionFilter{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;width:fit-content;max-width:100%;margin:8px 0;cursor:pointer}
#tripAccountability #recordsNeedsAttention{flex:0 0 18px;width:18px;height:18px;min-width:18px;min-height:18px;max-width:18px;margin:0;padding:0;accent-color:var(--primary)}
#recordsAttentionFilter[hidden],#recordsAttention[hidden]{display:none!important}
#purchaseForm[hidden],#fuelPurchasePanel[hidden],#reportManagementSummary[hidden]{display:none!important}
#purchaseForm{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-top:16px}
#purchaseForm label{display:flex;flex-direction:column;gap:6px;min-width:0}
#purchaseForm input{width:100%;min-width:0;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card,#fff);color:var(--text,#123f4b);font:inherit}
#reportManagementSummary p,#deviceHistoryText{overflow-wrap:anywhere;line-height:1.5}
#reportManagementSummary details{margin-top:16px}
#reportManagementSummary table{min-width:850px;display:table}
#purchaseRows td{white-space:nowrap}
@media(max-width:600px){
 #purchaseForm{grid-template-columns:minmax(0,1fr)}
 #purchaseRows table{display:block!important;width:100%!important;min-width:0!important;max-width:100%;box-sizing:border-box}
 #purchaseRows thead{display:none}
 #purchaseRows tbody{display:block;min-width:0!important}
 #purchaseRows tr{display:grid;grid-template-columns:minmax(0,1fr);min-width:0!important;border:1px solid var(--line);border-radius:12px;margin:10px 0;padding:8px}
 #purchaseRows td{display:block;min-width:0;white-space:normal;border:0;padding:6px;overflow-wrap:anywhere}
 #purchaseRows td:before{content:attr(data-label) ': ';font-weight:700}
 #purchaseRows button{min-height:44px}
}
