:root{--pro-border:#315b69;--pro-surface:#0d3443;--pro-surface-hover:#123f4e;--pro-text:#edf8fa;--pro-muted:#a8c5cc;--pro-accent:#16b9a6;--pro-focus:#62dfcf}
main,.panel,.card,fieldset{min-width:0}input,select,textarea,button,.button{font:inherit}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--pro-focus) 72%,transparent);outline-offset:2px}table{font-variant-numeric:tabular-nums}
.vessel-table-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:0 0 10px;padding:14px 16px;border:1px solid var(--pro-border);border-radius:14px;background:var(--pro-surface);color:var(--pro-text)}
.vessel-table-search{display:grid;flex:1;gap:6px;max-width:580px;color:var(--pro-muted);font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.vessel-table-search input{width:100%;min-height:42px;border:1px solid #527582;border-radius:9px;background:#082b3a;color:#fff;padding:9px 12px;text-transform:none}
.vessel-table-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px}.vessel-table-visible{color:var(--pro-muted);font-size:11px;white-space:nowrap}.vessel-column-picker{position:relative}.vessel-column-picker summary{min-height:38px;padding:9px 12px;border:1px solid #66838d;border-radius:9px;cursor:pointer;font-weight:800;list-style:none}.vessel-column-picker[open] summary{border-color:var(--pro-accent)}.vessel-column-picker>div{position:absolute;right:0;z-index:12;display:grid;gap:8px;width:260px;margin-top:7px;padding:13px;border:1px solid #527582;border-radius:10px;background:#092c3a;box-shadow:0 18px 44px rgba(0,0,0,.28)}.vessel-column-picker label{display:flex;align-items:center;gap:8px;color:#eaf7f8;font-size:12px}.vessel-column-picker input{accent-color:var(--pro-accent)}.vessel-export{min-height:38px!important;white-space:nowrap}
.vessel-table-wrap{max-width:100%;border-color:#456b77!important;background:#0b3040!important}.vessel-operational-table{min-width:1120px!important;background:#0b3040;color:var(--pro-text)!important}.vessel-operational-table thead{position:sticky;top:0;z-index:4}.vessel-operational-table th{background:#123d4c!important;color:#cce1e5!important;border-color:#527481!important}.vessel-operational-table th>button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;font-size:inherit;font-weight:900;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.vessel-operational-table th>button span{color:#68cfc2;font-size:13px}.vessel-operational-table td{border-color:#315967!important;color:#eaf6f8!important;line-height:1.35}.vessel-operational-table tbody tr:nth-child(even){background:#0d3544}.vessel-operational-table tbody tr:hover{background:var(--pro-surface-hover)!important}.vessel-operational-table td>small{color:#a9c2c9!important}.vessel-operational-table td>span{margin-bottom:6px}.vessel-operational-table td b{display:block;margin-bottom:2px;color:#84aab3!important;font-size:9px;letter-spacing:.04em;text-transform:uppercase}.vessel-operational-table [hidden]{display:none!important}.vessel-table-actions button,.vessel-table-actions>a{min-height:38px!important;border-radius:8px!important;overflow-wrap:normal!important;word-break:normal!important}
.app-shell main form:not(.inline-form) label{line-height:1.35}.app-shell main .panel-heading{align-items:flex-start;gap:14px}.app-shell main .empty-state{min-height:120px;padding:24px}.app-shell main .data-table-wrap{max-width:100%;overflow:auto}
@media(max-width:900px){.vessel-table-toolbar{align-items:stretch;flex-direction:column}.vessel-table-search{max-width:none}.vessel-table-tools{justify-content:space-between;flex-wrap:wrap}.vessel-column-picker>div{right:auto;left:0}.vessel-operational-table{min-width:1040px!important}}
@media(max-width:760px){.app-shell main h1{font-size:clamp(26px,8vw,38px)}.app-shell main .panel{padding:16px}.app-shell main .form-grid{grid-template-columns:1fr}.app-shell main .span-2{grid-column:auto}}
@media(max-width:520px){.vessel-table-tools{align-items:stretch;flex-direction:column}.vessel-table-visible{order:-1}.vessel-column-picker summary,.vessel-export{width:100%;text-align:center}.vessel-column-picker>div{width:min(260px,calc(100vw - 54px))}}
/* A tabela deve caber na área útil em zoom 100%; textos podem quebrar, colunas não somem. */
.vessel-table-wrap{overflow-x:auto!important}.vessel-operational-table{width:100%!important;min-width:0!important;table-layout:fixed!important}.vessel-operational-table th{white-space:normal!important;overflow-wrap:normal;word-break:normal}.vessel-operational-table th:nth-child(1){width:17%!important}.vessel-operational-table th:nth-child(2){width:15%!important}.vessel-operational-table th:nth-child(3){width:15%!important}.vessel-operational-table th:nth-child(4){width:18%!important}.vessel-operational-table th:nth-child(5){width:19%!important}.vessel-operational-table th:nth-child(6){width:16%!important}.vessel-operational-table td{overflow-wrap:anywhere}.vessel-table-actions{min-width:0!important}.vessel-table-actions button,.vessel-table-actions>a{width:100%;white-space:normal!important}
@media(max-width:1050px){.vessel-operational-table{font-size:11px}.vessel-operational-table th,.vessel-operational-table td{padding:9px 7px!important}.vessel-operational-table td b{font-size:8px}.vessel-table-actions button,.vessel-table-actions>a{padding:7px 5px!important;font-size:9px!important}}
@media(max-width:760px){.vessel-operational-table{min-width:900px!important}}
.vessel-reconciliation{display:inline-flex!important;align-items:center;width:max-content;max-width:100%;padding:4px 7px;border:1px solid #66838d;border-radius:999px;background:#173f4c;color:#eaf7f8;font-size:9px;font-weight:900;line-height:1.25}.vessel-reconciliation:before{content:"";width:7px;height:7px;margin-right:5px;border-radius:50%;background:#94aab0}.vessel-reconciliation.is-corroborated{border-color:#2bd3a8;background:#0d4a40}.vessel-reconciliation.is-corroborated:before,.vessel-reconciliation.is-official-confirmed:before{background:#28d39d}.vessel-reconciliation.is-ais-position-confirmed:before{background:#39aaf0}.vessel-reconciliation.is-stale-or-partial:before{background:#f0b934}.vessel-reconciliation.is-unverified:before,.vessel-reconciliation.is-review-required:before{background:#ef6e6e}
