/* Linguagem comum às abas do portal logístico. */
:root{--portal-surface:#303943;--portal-heading:#414e60;--portal-line:#526176;--portal-light:#edf3fb;--portal-muted:#c3cfdf;--portal-blue:#bfd7f5}
#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel,#exportPanel{color:#24344c}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#exportPanel)>.panel-heading{margin:0 0 18px;padding:0}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#exportPanel)>.panel-heading h2{font-size:25px;line-height:1.3;letter-spacing:-.4px;margin:0 0 6px;color:#24344c}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#exportPanel)>.panel-heading p{font-size:13px;line-height:1.5;margin:0;color:#738299}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel) .card{border:1px solid #d4deea;border-radius:7px;box-shadow:none;overflow:hidden;background:#fff}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel) .cardhead{background:#343f4e!important;border-bottom:1px solid #536277;padding:15px 17px!important;color:#edf3fb}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel) .cardhead h2{font-size:17px;line-height:1.35;color:#fff!important;margin:0 0 5px}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel) .cardhead p{font-size:12px;line-height:1.45;color:#c5d1e0!important;margin:0}
:is(#farolPanel,#arquivoPanel,#conferentePanel) .stats{gap:12px;margin-bottom:18px}
:is(#farolPanel,#conferentePanel) .stats .stat{padding:15px 17px;background:#303943;border:1px solid #61738b;border-radius:7px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:none}
:is(#farolPanel,#conferentePanel) .stats .stat span{font-size:10px;line-height:1.35;letter-spacing:.3px;color:#c3cfdf}
:is(#farolPanel,#conferentePanel) .stats .stat b{font-size:30px;line-height:1.1;color:#edf3fb}
#farolPanel .stats .stat:nth-child(2) b{color:#ffd16a}#conferentePanel .stats .stat:nth-child(2) b{color:#afe3c4}
:is(#farolPanel,#arquivoPanel) .period-controls,:is(#arquivoPanel) .exportControls{border:1px solid #d4deea;border-radius:7px;background:#edf2f7;box-shadow:none;padding:12px 14px;margin-bottom:18px;gap:12px}
:is(#farolPanel,#arquivoPanel) .period-controls strong{font-size:13px;color:#34485f}:is(#farolPanel,#arquivoPanel) .period-controls span{font-size:11px;color:#738299}
:is(#farolPanel,#arquivoPanel) .period-filter input{min-height:36px;padding:7px 9px;border-color:#cbd7e6}
:is(#farolPanel,#arquivoPanel) .poster-table{width:100%;border-collapse:collapse;margin:0}
:is(#farolPanel,#arquivoPanel) .poster-table thead th{padding:12px 13px;background:#414e60;color:#dbe5f3;font-size:10px;line-height:1.35;text-align:left;border:0;border-bottom:1px solid #64758c;letter-spacing:.35px;white-space:nowrap}
:is(#farolPanel,#arquivoPanel) .poster-table tbody td{padding:13px;background:#303943;color:#edf3fb;font-size:12px;line-height:1.45;border:0;border-bottom:1px solid #4b596c;vertical-align:middle}
:is(#farolPanel,#arquivoPanel) .poster-table tbody tr:nth-child(even) td{background:#374353}
:is(#farolPanel,#arquivoPanel) .poster-table tbody tr:hover td{background:#414e60}
:is(#farolPanel,#arquivoPanel) .poster-table td small{color:#c3cfdf}#farolPanel .poster-table .pill{background:#d8e6f8;color:#294a76;border-radius:4px}#farolPanel .poster-table .status-ok{color:#afe3c4}
#farolPanel .demand-legend{color:#d0dced!important;font-size:11px!important;gap:12px!important}
:is(#farolPanel,#arquivoPanel) .poster-table .btn{background:#485c75;color:#edf3fb;border:1px solid #6e839e;min-height:30px;font-size:11px;padding:6px 9px}
#fretesPanel .freight-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:18px;align-items:start}
#fretesPanel .freight-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;background:#f1f4f8;align-items:stretch}
#fretesPanel .freight-item{padding:14px;background:#303943;border:1px solid #64758c;border-top:3px solid #8296b0;border-radius:6px;display:flex;flex-direction:column;gap:14px;align-items:stretch;min-width:0}
#fretesPanel .freight-item h3{font-size:15px;line-height:1.4;color:#fff;margin:0 0 9px;overflow-wrap:anywhere}
#fretesPanel .freight-item p{font-size:12px;line-height:1.5;color:#d3dfed;margin:4px 0;overflow-wrap:anywhere}#fretesPanel .freight-item p b{color:#a8d1ff}
#fretesPanel .freight-actions{display:flex;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid #526176}
#fretesPanel .freight-actions .btn{font-size:11px;min-height:32px;padding:6px 12px;border-radius:4px;background:#485c75;color:#edf3fb;border:1px solid #6e839e}#fretesPanel .freight-actions .warn{background:#633e4a;color:#ffcad4;border-color:#925b6a}
#fretesPanel #freightCount{font-size:13px;color:#c3cfdf}#fretesPanel #freightSearch{min-height:38px;font-size:13px;background:#fff}
#fretesPanel .body{padding:16px}#freightForm .field{margin-bottom:12px}#freightForm label{font-size:11px;line-height:1.35;margin-bottom:5px;color:#526781}#freightForm input{font-size:13px;min-height:38px;padding:8px;border:1px solid #cbd7e6;border-radius:5px}#freightForm .buttons{gap:8px}#freightForm .btn{font-size:12px;min-height:36px}
#conferentePanel>.card>.body{padding:16px}
#conferentePanel .conferente-card.conf-dispatch{background:#303943;border:1px solid #64758c;border-top:3px solid #8296b0;border-radius:6px;margin-bottom:10px;color:#edf3fb;box-shadow:none;overflow:hidden}
#conferentePanel .conf-dispatch summary{background:#414e60;padding:13px 14px;min-height:74px;border:0;color:#edf3fb;gap:13px}
#conferentePanel .conf-dispatch summary .dispatch-label{color:#c3cfdf;font-size:9px}#conferentePanel .conf-vehicle strong{font-size:15px;color:#fff}#conferentePanel .conf-vehicle small{font-size:11px;color:#d5e1ef;line-height:1.4}
#conferentePanel .conf-position b{color:#b5c6dc;font-size:13px}#conferentePanel .conf-position small,#conferentePanel .conf-vehicle-number small{color:#c3cfdf;font-size:8px}#conferentePanel .conf-vehicle-number b{color:#fff;font-size:29px}#conferentePanel .conf-row-fact b{font-size:12px;color:#edf3fb}#conferentePanel .conf-row-numbers{border-color:#61738b}
#conferentePanel .conf-status{padding:6px 8px;background:#c7dfff;color:#203f73;border-radius:4px;font-size:10px;font-weight:750}#conferentePanel .conf-dispatch[data-state=done] .conf-status{background:#afe3c4;color:#174f36}#conferentePanel .conf-dispatch[data-state=record] .conf-status{background:#ffd16a;color:#513609}#conferentePanel .conf-expand{color:#c9daf0}
#conferentePanel .conf-detail-extension{background:#303943;border-color:#526176;padding:16px}#conferentePanel .conf-detail-section h3{color:#edf3fb;font-size:13px;margin-bottom:12px}#conferentePanel .conf-detail-section+.conf-detail-section{border-color:#526176;margin-top:14px;padding-top:14px}#conferentePanel .conf-detail-field{background:#3b4757;border:1px solid #526176;border-radius:5px;padding:10px}#conferentePanel .conf-detail-field .dispatch-label{font-size:9px;color:#c3cfdf}#conferentePanel .conf-detail-field strong{font-size:12px;color:#fff}#conferentePanel .conf-detail-field small{color:#a9d1b9}
#conferentePanel .conf-detail-actions{padding-top:14px;gap:9px}#conferentePanel .conf-detail-actions .btn{min-height:35px;padding:8px 12px;font-size:12px;background:#c4dbf7;color:#233c5b;border:1px solid #c4dbf7}#conferentePanel .conf-readonly{color:#c3cfdf;font-size:11px}
#confDayFilter .conf-date-toolbar{padding:10px 0;gap:8px}#confDayFilter .btn{font-size:11px;min-height:34px}#confDateRail{background:#edf2f7;border:1px solid #d4deea;border-radius:6px;padding:4px;gap:5px;margin-bottom:12px}#confDateRail .dispatch-date{background:#f8fafc;border:1px solid #dce2eb;min-height:55px;border-radius:4px;padding:9px 10px}#confDateRail .dispatch-date.selected{background:#343f4e;border-color:#53657f}#confDateRail .dispatch-date.selected b{color:#fff}#confDateRail .dispatch-date.selected small{color:#cfdaea}#confDayTitle{color:#24344c;font-size:17px}#confDayAccess{font-size:11px;color:#738299}
#exportPanel>.exportControls{margin:0 0 18px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#edf2f7;border:1px solid #d4deea;border-radius:7px;padding:14px}
#exportPanel>.exportControls label{font-size:12px;color:#526781}#exportPanel>.exportControls input{min-height:36px;font-size:12px}#exportPanel>.exportControls .btn{min-height:36px;font-size:12px;padding:8px 12px}#exportPanel>.exportControls .primary{background:#475e88;color:#fff}
#exportPanel .poster-wrap{background:#edf2f7;border:1px solid #d4deea;border-radius:7px;padding:14px}
:is(#farolPanel,#arquivoPanel,#fretesPanel,#conferentePanel,#exportPanel) .empty{background:#edf2f7;border:1px dashed #c5d1e2;border-radius:6px;padding:22px 16px;color:#738299;font-size:12px;line-height:1.5;grid-column:1/-1}
.journey-card .journey-note{box-sizing:border-box;min-height:25px;margin:0 0 8px;border:0;padding:5px 7px;border-radius:4px;line-height:15px;font-size:10px;font-weight:750}
.journey-card .journey-note-rescheduled{background:#c7dfff;color:#203f73;box-shadow:inset 3px 0 #74a9ec}
.journey-card .journey-note-empty{background:transparent;box-shadow:none;color:transparent}
@media(max-width:1100px){#fretesPanel .freight-list{grid-template-columns:minmax(0,1fr)}#fretesPanel .freight-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr)}}
@media(max-width:760px){:is(#farolPanel,#arquivoPanel,#fretesPanel,#exportPanel)>.panel-heading h2{font-size:21px}#fretesPanel .freight-layout{grid-template-columns:minmax(0,1fr)}#fretesPanel .freight-list{grid-template-columns:minmax(0,1fr)}:is(#farolPanel,#conferentePanel) .stats .stat{padding:12px}:is(#farolPanel,#conferentePanel) .stats .stat b{font-size:26px}#conferentePanel .conf-dispatch summary{padding:11px;gap:9px}#conferentePanel .conf-vehicle strong{font-size:13px}#conferentePanel .conf-vehicle small{font-size:10px}}
@media print{#exportPanel .poster-wrap{border:0;padding:0;background:#fff}#poster .dispatch-row{background:#fff!important;border-color:#c5cfdd!important}#poster .dispatch-row *{color:#24344c!important}#poster .dispatch-priority{background:#edf2f7!important;color:#24344c!important}}
#fretesPanel .cardhead label{color:#c3cfdf}
#conferentePanel .conferente-card.conf-dispatch{padding:0}
#farolPanel .period-filter{display:flex;flex-wrap:nowrap;align-items:center;width:auto;gap:8px}#farolPanel .period-filter label{width:auto}#farolPanel .period-filter input{width:145px}#farolPanel .period-filter button{white-space:nowrap;min-height:36px}
#arquivoPanel .poster-table td:nth-child(4){white-space:nowrap;min-width:85px}#arquivoPanel .poster-table .btn{white-space:nowrap}
@media(max-width:760px){#farolPanel .period-filter{flex-wrap:wrap}}
/* Conferência: resumo compacto com navegação de data na mesma linha. */
#conferentePanel>.card>.body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px!important}
#conferentePanel>.card>.cardhead{padding:14px 17px!important}
#conferentePanel>.card>.cardhead .smallhelp{margin-top:5px!important;font-size:11px}
#conferentePanel>.card>.body>.stats{grid-column:1;grid-row:1;width:min(100%,480px);margin:0!important;gap:10px;align-self:center}
#conferentePanel .stats .stat{flex-direction:row;align-items:center;justify-content:space-between;padding:11px 14px;gap:14px;min-height:58px}
#conferentePanel .stats .stat b{font-size:27px}#conferentePanel .stats .stat span{font-size:10px}
#confDayFilter{display:contents}
#confDayFilter .conf-date-toolbar{grid-column:2;grid-row:1;padding:0;margin:0;align-self:center}
#confDayFilter .conf-date-toolbar .btn{min-height:36px;min-width:36px}
#confDayFilter .conf-calendar-control{height:36px;width:36px;flex-basis:36px;border-radius:5px}
#confDateRail,#confDayFilter>.dispatch-day-title,#confOrders{grid-column:1/-1}
#confDateRail{margin:0}#confDayFilter>.dispatch-day-title{margin:0}
@media(max-width:640px){#conferentePanel>.card>.body{grid-template-columns:minmax(0,1fr)}#conferentePanel>.card>.body>.stats{width:100%}#confDayFilter .conf-date-toolbar{grid-column:1;grid-row:2;justify-content:flex-start}#conferentePanel .stats .stat{padding:10px;gap:8px}}
#conferentePanel>.card>.body{grid-template-columns:minmax(0,1fr)}
#confDayFilter{display:block;grid-column:1/-1;margin:0}
#confDayFilter .conf-agenda-strip{display:grid;grid-template-columns:185px minmax(0,1fr);gap:18px;align-items:center;background:#fff;border:1px solid #d4deea;border-radius:6px;padding:12px;margin-bottom:14px}
#confDayFilter .conf-date-toolbar{display:flex;flex-direction:column;align-items:flex-start;gap:7px;border-right:1px solid #e0e6ef;padding:0 16px 0 0;grid-column:auto;grid-row:auto}
#confDayFilter .conf-date-toolbar label{font-size:11px;color:#53677f;margin:0}
#confDayFilter .conf-date-toolbar input{width:145px;min-height:34px;font-size:11px;padding:7px;border:1px solid #d4deea;border-radius:5px;color:#203f73;background:#fff}
#confDayFilter .conf-date-toolbar .btn{min-height:25px;padding:4px 8px;border:0;background:transparent;color:#203f73;font-size:10px}
#confDateRail{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;background:transparent;border:0;padding:0;overflow:visible}
#confDateRail .dispatch-date{display:flex;align-items:center;justify-content:space-between;gap:5px;min-width:0;min-height:61px;padding:10px 9px;background:#f0f3f7;border:1px solid #d4deea;text-align:left}
#confDateRail .dispatch-date span{display:grid;gap:7px}#confDateRail .dispatch-date b{font-size:11px;color:#243f60}#confDateRail .dispatch-date small{font-size:9px;color:#738299}
#confDateRail .dispatch-date strong{padding:5px 7px;border-radius:4px;background:#e1e8f2;color:#294b73;font-size:10px}
#confDateRail .dispatch-date.selected{background:#343f4e;border-color:#566f91;box-shadow:inset 0 -3px #87a4cb}#confDateRail .dispatch-date.selected b{color:#fff}#confDateRail .dispatch-date.selected strong{background:#c7dfff}
@media(max-width:900px){#confDayFilter .conf-agenda-strip{grid-template-columns:145px minmax(0,1fr);gap:10px}#confDateRail{overflow-x:auto;grid-template-columns:repeat(7,minmax(100px,1fr))}#confDayFilter .conf-date-toolbar input{width:125px}}
@media(max-width:600px){#confDayFilter .conf-agenda-strip{grid-template-columns:minmax(0,1fr)}#confDayFilter .conf-date-toolbar{border-right:0;flex-direction:row;flex-wrap:wrap;align-items:center;padding:0}}
#confDayFilter .conf-agenda-strip>#confDateRail{grid-column:auto}
#confOrders{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
#conferentePanel #confOrders .conf-dispatch{margin:0;border-top:3px solid #8296b0}
#conferentePanel #confOrders .conf-dispatch summary{display:block;min-height:0;padding:0;background:transparent;list-style:none}
#conferentePanel .conf-card-face{padding:0 12px;color:#edf3fb;overflow:hidden}
#conferentePanel .conf-card-face .journey-identity{margin:0 -12px;padding:12px;background:#414e60;min-height:69px}
#conferentePanel .conf-card-face .journey-driver{min-width:0}#conferentePanel .conf-card-face .journey-driver>span:not(.journey-label){font-size:9px}
#conferentePanel .conf-card-footer{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:42px;padding:8px 0}
#conferentePanel .conf-open-label{font-size:10px;color:#c7dfff;font-weight:600}
#conferentePanel .conf-card-face .journey-note{box-sizing:border-box;min-height:25px;margin:0 0 8px;padding:5px 7px;border:0;border-radius:4px;font-size:10px;line-height:15px}
#conferentePanel .journey-note-rescheduled{background:#c7dfff;color:#203f73;box-shadow:inset 3px 0 #74a9ec}#conferentePanel .journey-note-empty{visibility:hidden}
#conferentePanel #confOrders .conf-dispatch[open]{grid-column:1/-1}#conferentePanel #confOrders .conf-dispatch[open] .conf-card-face{max-width:420px}
@media(max-width:1179px){#confOrders{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:950px){#confOrders{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){#confOrders{grid-template-columns:minmax(0,1fr)}}
#confDayFilter #confDateRail .dispatch-date{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:61px;padding:10px 9px;text-align:left}#confDayFilter #confDateRail .dispatch-date>span{justify-items:start;gap:7px}#confDayFilter #confDateRail .dispatch-date b{font-size:11px;line-height:1.3}#confDayFilter #confDateRail .dispatch-date small{font-size:9px;line-height:1.3;text-transform:capitalize}
#conferentePanel .conf-card-face .journey-facts{min-height:111px}#conferentePanel .conf-card-face .journey-trip{min-height:66px}#conferentePanel .conf-card-face .load-icon{filter:brightness(0) invert(.85)}
#conferentePanel .conf-card-face .journey-priority.alta{background:#ffd16a;color:#513609}#conferentePanel .conf-card-face .journey-priority.normal{background:#c7dfff;color:#203f73}#conferentePanel .conf-card-face .journey-priority.baixa{background:#afe3c4;color:#174f36}#conferentePanel .conf-card-face .journey-priority.urgente{background:#ffb6c2;color:#68152b}
@media(max-width:900px){#confDayFilter #confDateRail{grid-template-columns:repeat(7,minmax(105px,1fr));overflow-x:auto!important}}
#conferentePanel .conf-card-face .journey-facts{height:118px;grid-template-rows:repeat(2,minmax(0,1fr));align-items:start}#conferentePanel .conf-card-face .journey-identity{height:70px}
/* Freteiros em lista, com todos os veículos agrupados por contato. */
#fretesPanel .freight-list{grid-template-columns:minmax(0,1fr);gap:0;padding:0;background:#fff}
#fretesPanel .freight-item.freight-fleet-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1.6fr);gap:16px;padding:16px;background:#fff;border:0;border-bottom:1px solid #dce3ec;border-radius:0;color:#24344c;align-items:start}
#fretesPanel .freight-fleet-row:last-child{border-bottom:0}#fretesPanel .freight-fleet-row h3{color:#24344c;font-size:13px;margin:0 0 5px}#fretesPanel .freight-fleet-row p{color:#738299;font-size:11px;margin:0 0 8px}
#fretesPanel .freight-owner>.btn{padding:5px 8px;min-height:28px;font-size:10px;background:#edf3fb;color:#294b73;border:1px solid #d3dfef}
#fretesPanel .freight-vehicles{display:grid;gap:7px;min-width:0}#fretesPanel .freight-vehicle{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;background:#f4f7fb;border:1px solid #e0e6ef;border-radius:5px}
#fretesPanel .freight-vehicle>div:first-child{display:grid;gap:4px;min-width:0}#fretesPanel .freight-vehicle b{color:#294b73;font-size:12px}#fretesPanel .freight-vehicle span{color:#64748b;font-size:11px;overflow-wrap:anywhere}
#fretesPanel .freight-vehicle .freight-actions{border:0;padding:0;margin:0;flex-shrink:0;width:auto}#fretesPanel .freight-vehicle .freight-actions .btn{background:#fff;color:#355278;border:1px solid #ccd8e7;min-height:28px;font-size:10px;padding:5px 7px}#fretesPanel .freight-vehicle .freight-actions .warn{color:#a44255;border-color:#edcbd2;background:#fff6f7}
#loadFreightVehicleField[hidden]{display:none!important}
@media(max-width:700px){#fretesPanel .freight-item.freight-fleet-row{grid-template-columns:minmax(0,1fr);gap:10px}}
#poster .export-manifest{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;color:#34465d;background:#fff}#poster .export-manifest th{background:#343f4e;color:#fff;text-align:left;padding:15px 10px;font-size:9px;font-weight:700;line-height:1.4}#poster .export-manifest td{padding:17px 10px;border-bottom:1px solid #dce3ec;vertical-align:middle;overflow-wrap:anywhere;line-height:1.5}#poster .export-manifest tr:nth-child(even) td{background:#edf2f7}#poster .export-manifest small{display:block;color:#738299;margin-top:4px;font-size:11px}#poster .export-manifest .export-vehicle-number{font-size:21px;font-weight:750;color:#355b89}#poster .export-priority{display:inline-block;border-radius:5px;padding:7px 9px;font-size:9px;font-weight:750;background:#dfe9f7;color:#355278;white-space:nowrap}#poster .export-priority.urgente{background:#ffdde3;color:#8b2940}#poster .export-priority.alta{background:#fff0bb;color:#795817}#poster .export-priority.baixa{background:#dff1e7;color:#2e6950}
.journey-card .journey-note-rescheduled,#conferentePanel .conf-card-face .journey-note-rescheduled{background:transparent;color:#b9c9dc;box-shadow:none;border:0;border-top:1px solid #506075;border-radius:0;font-size:10px;font-weight:500;padding:5px 0;text-align:right}
#poster .export-manifest th,#poster .export-manifest td{padding-left:12px;padding-right:12px;vertical-align:middle;text-align:left}
#poster .export-manifest th{font-size:9px;white-space:nowrap}
#poster .export-manifest td{font-size:12px;line-height:1.6;padding-top:18px;padding-bottom:18px}
#poster .export-manifest th:nth-child(1),#poster .export-manifest th:nth-child(2),#poster .export-manifest th:nth-child(3),#poster .export-manifest th:nth-child(8),#poster .export-manifest td:nth-child(1),#poster .export-manifest td:nth-child(2),#poster .export-manifest td:nth-child(3),#poster .export-manifest td:nth-child(8){text-align:center}
#poster .export-manifest td:nth-child(7){text-wrap:pretty}#poster .export-manifest td:nth-child(7) b{font-weight:500}
#poster .export-manifest .export-order{color:#738299;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
#poster .export-manifest td:last-child{font-weight:650;font-variant-numeric:tabular-nums}
