/*! cloudflare-pages-asset-salt:cloudflare-pages-asset-salt-v8 */
.vessel-traffic-state-panel__suspense-fallback{display:flex;align-items:flex-start;min-height:120px;padding:8px 0}.vessel-traffic-state-panel__suspense-spinner{width:24px;height:24px;border:2px solid var(--neutral-200);border-top-color:var(--brand-700);border-radius:50%;animation:vessel-traffic-state-panel-spinner .8s linear infinite}@keyframes vessel-traffic-state-panel-spinner{to{transform:rotate(360deg)}}
.vt-panel--header-border .vt-panel__header{border-bottom:1px solid var(--neutral-2)}.vt-port-detail{--vt-cargo-container: var(--blue-7);--vt-cargo-container-tint: var(--blue-1);--vt-cargo-reefer: #009d9a;--vt-cargo-reefer-tint: #e3ffff;--vt-cargo-dry-bulk: var(--neutral-7);--vt-cargo-dry-bulk-tint: var(--neutral-1);--vt-cargo-liquid-bulk: var(--warning-8);--vt-cargo-liquid-bulk-tint: var(--warning-1);--vt-vtype-container: var(--blue-7);--vt-vtype-container-tint: var(--blue-1);--vt-vtype-tanker: var(--warning-8);--vt-vtype-tanker-tint: var(--warning-1);--vt-vtype-bulk: var(--neutral-6);--vt-vtype-bulk-tint: var(--neutral-1);--vt-vtype-roro: var(--brand-8);--vt-vtype-roro-tint: var(--brand-1);--vt-vtype-lng: var(--positive-7);--vt-vtype-lng-tint: var(--positive-1);--vt-vtype-fishing: var(--positive-8);--vt-vtype-fishing-tint: var(--positive-1);--vt-vtype-default: var(--neutral-6);--vt-vtype-default-tint: var(--neutral-1);--vt-dir-inbound-fg: var(--positive-7);--vt-dir-inbound-bg: var(--positive-1);--vt-dir-atberth-fg: var(--neutral-6);--vt-dir-atberth-bg: var(--neutral-1);--vt-dir-atanchor-fg: var(--warning-7);--vt-dir-atanchor-bg: var(--warning-1);--vt-dir-outbound-fg: var(--blue-7);--vt-dir-outbound-bg: var(--blue-1);--vt-berth-available-fg: var(--positive-8);--vt-berth-available-bg: var(--positive-1);--vt-berth-available-bd: var(--positive-3);--vt-berth-occupied-fg: var(--neutral-6);--vt-berth-occupied-bg: var(--neutral-1);--vt-berth-occupied-bd: var(--neutral-3);--vt-text-primary: var(--neutral-9);--vt-text-body: var(--neutral-7);--vt-text-secondary: var(--neutral-6);--vt-surface-muted: var(--neutral-1);--vt-surface-subtle: var(--neutral-05);--vt-border-subtle: var(--neutral-2);--vt-link-color: var(--digital-twin-8);--vt-success: var(--positive-6);--vt-dir-operator-fg: var(--digital-twin-8);--vt-dir-operator-bg: var(--digital-twin-1);--vt-radius-xs: 4px;--vt-radius-sm: 8px;--vt-radius-md: 12px;--vt-radius-lg: 16px;--vt-radius-full: 9999px;display:flex;flex-direction:column;gap:20px;padding-top:16px}.vt-port-detail__section-label{color:var(--vt-text-secondary);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.vt-port-detail__section-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.vt-port-detail__count-badge{color:var(--vt-text-secondary);font-size:11px;font-weight:600;background:var(--vt-surface-muted);border-radius:var(--vt-radius-full);padding:1px 8px}.vt-port-detail__info{flex:0 0 auto;border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-lg);background:var(--neutral-0);overflow:hidden}.vt-port-detail__info-toggle{width:100%;border:none;background:rgba(0,0,0,0);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 16px;font-family:inherit}.vt-port-detail__info-toggle:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:-2px}.vt-port-detail__info-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--vt-text-primary)}.vt-port-detail__info-icon{color:var(--vt-text-secondary)}.vt-port-detail__info-chevron{color:var(--vt-text-secondary);flex:0 0 auto}.vt-port-detail__info-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--vt-border-subtle)}.vt-port-detail__field{display:flex;flex-direction:column}.vt-port-detail__field-label{color:var(--vt-text-secondary);font-size:11px;font-weight:600}.vt-port-detail__field-value{color:var(--vt-text-primary);font-size:14px;font-weight:500;margin-top:3px}.vt-port-detail__cargo-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.vt-port-detail__cargo-chip{font-size:12px;font-weight:500;color:var(--vt-text-body);background:var(--vt-surface-muted);border-radius:var(--vt-radius-xs);padding:3px 9px}.vt-port-detail__info-counts{display:flex;flex-wrap:wrap;gap:24px 32px}.vt-port-detail__info-counts--env{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px 16px}.vt-port-detail__info-counts--env .vt-port-detail__field-value{font-size:12px;word-break:break-word}.vt-port-detail__section-note{margin:0 0 10px;font-size:11px;color:var(--vt-text-secondary);text-wrap:pretty}.vt-port-detail__count-badge--live{color:var(--vt-dir-atanchor-fg);background:var(--vt-dir-atanchor-bg)}.vt-port-detail__berths,.vt-port-detail__anchorages,.vt-port-detail__vessels,.vt-port-detail__analysis,.vt-port-detail__queue,.vt-port-detail__craft{border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-lg);background:var(--neutral-0);padding:16px 16px 18px}.vt-port-detail__anchorages{padding:16px}.vt-port-detail__berths-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.vt-port-detail__berths-summary{color:var(--vt-text-secondary);font-size:12px}.vt-port-detail__berths-available{color:var(--positive-7)}.vt-port-detail__berths-occupied{color:var(--neutral-9)}.vt-port-detail__util-strip{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0 0 10px;font-size:12px;color:var(--vt-text-secondary)}.vt-port-detail__util-strip b{color:var(--vt-text-primary);font-weight:600}.vt-port-detail__util-sep{color:var(--neutral-5)}.vt-port-detail__craft{padding:16px}.vt-port-detail__craft-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.vt-port-detail__craft-badge{font-size:11px;color:var(--vt-text-secondary)}.vt-port-detail__craft-stats{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:8px;margin:0 0 12px}.vt-port-detail__craft-stats dt{margin:0;font-size:11px;color:var(--vt-text-secondary)}.vt-port-detail__craft-stats dd{margin:2px 0 0;font-size:13px;font-weight:600}.vt-port-detail__craft-table-wrap{overflow-x:auto;margin-bottom:10px}.vt-port-detail__craft-table{width:100%;border-collapse:collapse;font-size:12px}.vt-port-detail__craft-table th,.vt-port-detail__craft-table td{padding:6px 8px;text-align:left;border-bottom:1px solid var(--neutral-3)}.vt-port-detail__craft-table th{color:var(--vt-text-secondary);font-weight:600}.vt-port-detail__craft-empty,.vt-port-detail__craft-suggest{margin:0 0 10px;font-size:12px;color:var(--vt-text-secondary)}.vt-port-detail__craft-actions{display:flex;flex-wrap:wrap;gap:8px}.vt-port-detail__craft-btn{display:inline-flex;align-items:center;padding:6px 10px;border-radius:6px;border:1px solid var(--neutral-4);background:var(--neutral-0);color:var(--vt-text-primary);font-size:12px;font-weight:600;text-decoration:none;cursor:pointer}.vt-port-detail__craft-btn--ghost{background:rgba(0,0,0,0)}.vt-port-detail__occupancy-bar{display:flex;height:8px;border-radius:var(--vt-radius-full);overflow:hidden;background:var(--neutral-2);margin-bottom:18px}.vt-port-detail__occupancy-fill{background:var(--vt-success);transition:width .3s ease}.vt-port-detail__berth-groups{display:flex;flex-direction:column;gap:14px}.vt-port-detail__berth-group-head{display:flex;align-items:center;gap:7px;margin-bottom:7px}.vt-port-detail__berth-group-icon{color:var(--vt-cargo-color, var(--vt-vtype-default))}.vt-port-detail__berth-group-type{color:var(--vt-text-primary);font-size:12px;font-weight:600}.vt-port-detail__berth-group-count{color:var(--vt-text-secondary);font-size:11px}.vt-port-detail__berth-chips{display:flex;flex-wrap:wrap;gap:5px}.vt-port-detail__berth-chip{min-width:30px;text-align:center;border:1px solid var(--vt-berth-chip-bd, var(--vt-border-subtle));border-radius:var(--vt-radius-sm);background:var(--vt-berth-chip-bg, var(--vt-surface-muted));color:var(--vt-berth-chip-fg, var(--vt-text-secondary));font-size:12px;font-weight:600;padding:3px 7px;cursor:pointer;transition:filter .15s ease}.vt-port-detail__berth-chip:hover{filter:brightness(0.95)}.vt-port-detail__berth-chip:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:1px}.vt-port-detail__berth-chip--occupied{font-weight:700}.vt-port-detail__anchorage-pills{display:flex;flex-wrap:wrap;gap:6px}.vt-port-detail__anchorage-pill{display:inline-flex;align-items:center;gap:7px;background:var(--neutral-0);border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-full);padding:5px 12px;font-size:12px;cursor:pointer;transition:border-color .15s ease}.vt-port-detail__anchorage-pill--occupied{border-color:var(--vt-dir-atanchor-fg);background:var(--vt-dir-atanchor-bg)}.vt-port-detail__anchorage-pill:hover{border-color:#28b1ae}.vt-port-detail__anchorage-pill:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:1px}.vt-port-detail__anchorage-icon{color:var(--vt-text-secondary)}.vt-port-detail__anchorage-name{color:var(--vt-text-primary);font-weight:600}.vt-port-detail__anchorage-sep,.vt-port-detail__anchorage-count{color:var(--vt-text-secondary)}.vt-port-detail__vessels .vt-port-detail__section-head{margin-bottom:12px}.vt-port-detail__type-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.vt-port-detail__type-chip{border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-full);background:var(--neutral-0);color:var(--vt-text-secondary);font-size:11px;font-weight:600;padding:4px 10px;cursor:pointer}.vt-port-detail__type-chip--active{border-color:var(--vt-link-color);background:var(--digital-twin-1);color:var(--vt-link-color)}.vt-port-detail__type-chip:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:1px}.vt-port-detail__vessel-accordion{display:flex;flex-direction:column;gap:4px}.vt-port-detail__vessel-accordion-trigger{padding:8px 4px !important;font-size:12px !important}.vt-port-detail__vessel-accordion-icon{color:var(--vt-text-secondary)}.vt-port-detail__vessel-accordion-content{padding:0 0 8px !important}.vt-port-detail__vessel-group-trigger{display:inline-flex;align-items:center;gap:7px;color:var(--vt-dir-count-fg, var(--vt-text-primary))}.vt-port-detail__vessel-group-icon{color:inherit}.vt-port-detail__vessel-group-dir{color:var(--vt-text-primary);font-size:12px;font-weight:600}.vt-port-detail__vessel-group-count{color:var(--vt-dir-count-fg, var(--vt-text-secondary));background:var(--vt-dir-count-bg, var(--vt-surface-muted));border-radius:var(--vt-radius-full);padding:1px 7px;font-size:11px;font-weight:600}.vt-port-detail__vessel-rows{display:flex;flex-direction:column;gap:2px}.vt-port-detail__vessel-row{display:flex;align-items:center;gap:9px;padding:6px 8px;border:none;background:rgba(0,0,0,0);border-radius:var(--vt-radius-md);cursor:pointer;transition:background .15s ease;text-align:left}.vt-port-detail__vessel-row:hover{background:var(--vt-surface-subtle)}.vt-port-detail__vessel-row:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:-2px}.vt-port-detail__avatar{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--vt-radius-sm);border:2px solid var(--vt-avatar-ring, var(--vt-border-subtle));overflow:hidden;background:var(--vt-vtype-tint, var(--vt-surface-muted));color:var(--vt-vtype-color, var(--vt-text-secondary))}.vt-port-detail__avatar--md{width:34px;height:34px}.vt-port-detail__avatar--sm{width:28px;height:28px}.vt-port-detail__avatar-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.vt-port-detail__vessel-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.vt-port-detail__vessel-name{font-size:13px;font-weight:500;color:var(--vt-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-port-detail__vessel-meta{font-size:11px;color:var(--vt-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-port-detail__vessel-type{color:var(--vt-text-secondary);font-size:11px;flex:0 0 auto}.vt-port-detail__queue-accordion{display:flex;flex-direction:column;gap:4px}.vt-port-detail__queue-more{margin-top:8px;border:none;background:rgba(0,0,0,0);color:var(--vt-link-color);font-size:12px;font-weight:600;cursor:pointer;padding:0}.vt-port-detail__queue-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.vt-port-detail__queue-row{display:flex;align-items:center;gap:8px}.vt-port-detail__queue-main{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-md);background:var(--neutral-0);padding:7px 8px;cursor:pointer;text-align:left}.vt-port-detail__queue-main:hover{background:var(--vt-surface-subtle)}.vt-port-detail__queue-main:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:1px}.vt-port-detail__queue-main:disabled{cursor:default}.vt-port-detail__queue-pos{flex:0 0 auto;width:18px;text-align:center;font-size:11px;font-weight:700;color:var(--vt-text-secondary)}.vt-port-detail__queue-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.vt-port-detail__queue-name{font-size:12px;font-weight:600;color:var(--vt-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-port-detail__queue-meta{font-size:11px;color:var(--vt-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-port-detail__queue-status{flex:0 0 auto;border-radius:var(--vt-radius-full);padding:2px 8px;font-size:10px;font-weight:600}.vt-port-detail__queue-berth{flex:0 0 auto;min-width:44px;border:1px solid var(--vt-border-subtle);border-radius:var(--vt-radius-sm);background:var(--vt-surface-muted);color:var(--vt-text-primary);font-size:11px;font-weight:700;padding:6px 8px;cursor:pointer}.vt-port-detail__queue-berth--empty{border:none;background:rgba(0,0,0,0);color:var(--vt-text-secondary);cursor:default;text-align:center}.vt-port-detail__queue-berth:not(.vt-port-detail__queue-berth--empty):hover{border-color:var(--vt-link-color)}.vt-port-detail__queue-empty{display:flex;flex-direction:column;align-items:center;gap:4px;padding:18px 8px;text-align:center}.vt-port-detail__queue-empty-icon{color:var(--vt-text-secondary)}.vt-port-detail__queue-empty-title{margin:0;font-size:13px;font-weight:600;color:var(--vt-text-primary)}.vt-port-detail__queue-empty-hint{margin:0;font-size:11px;color:var(--vt-text-secondary)}.vt-port-detail__analysis{padding:0;overflow:hidden}.vt-port-detail__analysis .vt-port-detail__section-head{padding:16px 16px 0}.vt-port-detail__analysis-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 16px;border:none;background:rgba(0,0,0,0);cursor:pointer;text-align:left;transition:background .2s ease}.vt-port-detail__analysis-row:hover{background:var(--vt-surface-subtle)}.vt-port-detail__analysis-row:focus-visible{outline:2px solid var(--vt-link-color);outline-offset:-2px}.vt-port-detail__analysis-icon{flex:0 0 auto;color:var(--vt-link-color)}.vt-port-detail__analysis-text{flex:1;min-width:0;display:flex;flex-direction:column}.vt-port-detail__analysis-title{font-size:13px;font-weight:600;color:var(--vt-text-primary)}.vt-port-detail__analysis-subtitle{font-size:12px;color:var(--vt-text-secondary)}.vt-port-detail__analysis-chevron{flex:0 0 auto;color:var(--vt-text-secondary)}
.vt-port-events{display:flex;flex-direction:column;gap:10px;padding-top:16px}.vt-port-events__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--neutral-6)}.vt-port-events__meta-sort{font-size:11px}.vt-port-events__filters{display:flex;flex-wrap:wrap;gap:6px}.vt-port-events__filter{border:1px solid var(--neutral-3);border-radius:9999px;background:var(--neutral-0);color:var(--neutral-7);font-size:11px;font-weight:600;padding:4px 10px;cursor:pointer}.vt-port-events__filter--active{border-color:var(--digital-twin-8);color:var(--digital-twin-8);background:var(--digital-twin-1)}.vt-port-events__filter:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:1px}.vt-port-events__list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.vt-port-events__event{background:var(--neutral-0);border:1px solid var(--neutral-2);border-radius:var(--radius-lg);padding:14px 16px}.vt-port-events__event-head{display:flex;align-items:center;gap:8px}.vt-port-events__event-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:50%;background:var(--neutral-1);color:var(--neutral-7)}.vt-port-events__event-icon-svg{display:block}.vt-port-events__event-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500}.vt-port-events__event-title--link{border:none;background:none;padding:0;font:inherit;text-align:left;cursor:pointer;color:var(--digital-twin-8)}.vt-port-events__event-title--link:hover{text-decoration:underline}.vt-port-events__event-title--link:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px;border-radius:2px}.vt-port-events__event-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font-size:12px;color:var(--neutral-6)}.vt-port-events__event-time{color:var(--neutral-7);font-variant-numeric:tabular-nums}.vt-port-events__event-mmsi{color:var(--neutral-6)}.vt-port-events__event-mmsi-value{font-variant-numeric:tabular-nums;color:var(--neutral-9)}.vt-port-events__error{margin:0;padding:12px 14px;font-size:13px;line-height:1.5;color:var(--error-900);background:var(--error-50);border:1px solid var(--error-200);border-radius:4px}
.vt-hist{--vt-hist-surface: var(--neutral-0);--vt-hist-surface-muted: var(--neutral-1);--vt-hist-hover: var(--neutral-05);--vt-hist-track: var(--neutral-2);--vt-hist-hairline: var(--neutral-2);--vt-hist-border: var(--neutral-3);--vt-hist-text-primary: var(--neutral-9);--vt-hist-text-body: var(--neutral-7);--vt-hist-text-secondary: var(--neutral-6);--vt-hist-accent: var(--digital-twin-8);--vt-hist-accent-tint: var(--digital-twin-1);--vt-hist-accent-border: var(--digital-twin-3);--vt-hist-played: var(--digital-twin-4);--vt-hist-link: var(--digital-twin-8);--vt-hist-alert: var(--alert-7);--vt-hist-radius-xs: 4px;--vt-hist-radius-sm: 8px;--vt-hist-radius-md: 12px;--vt-hist-radius-lg: 16px;--vt-hist-radius-full: 999px;min-width:0;padding-top:16px;display:flex;flex-direction:column;gap:20px}.vt-hist__status{font-size:13px;color:var(--vt-hist-text-body)}.vt-hist__status--error{color:var(--vt-hist-alert)}.vt-hist__section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.vt-hist__section-label{min-width:0;font-size:12px;font-weight:700;color:var(--vt-hist-text-secondary)}.vt-hist__section-aside{font-size:12px;color:var(--vt-hist-text-secondary)}.vt-hist__section-aside--source{margin:0 0 12px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--neutral-1);line-height:1.35}.vt-hist__empty{display:flex;flex-direction:column;gap:6px;padding:4px 0 8px}.vt-hist__empty-title{margin:0;font-size:14px;font-weight:600;color:var(--vt-hist-text-primary)}.vt-hist__empty-body{margin:0;font-size:12px;line-height:1.4;color:var(--vt-hist-text-secondary)}.vt-hist__snapshot{display:flex;flex-direction:column;gap:12px}.vt-hist__stat-tiles{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px}.vt-hist__tile{background:var(--vt-hist-surface);border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-md);padding:12px 13px}.vt-hist__tile-label{font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--vt-hist-text-secondary)}.vt-hist__tile-value{margin-top:5px;font-size:19px;font-weight:500;line-height:1.15;color:var(--vt-hist-text-primary);font-variant-numeric:tabular-nums}.vt-hist__card{background:var(--vt-hist-surface);border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-lg);padding:4px 14px}.vt-hist__card-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 0}.vt-hist__card-row+.vt-hist__card-row{border-top:1px solid var(--vt-hist-hairline)}.vt-hist__card-row--stack{flex-direction:column;align-items:stretch;gap:8px}.vt-hist__card-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.vt-hist__card-row-label{flex:0 0 auto;font-size:12px;color:var(--vt-hist-text-secondary)}.vt-hist__card-row-value{min-width:0;text-align:right;font-size:12px;font-weight:500;color:var(--vt-hist-text-primary);line-height:1.35}.vt-hist__mix-bar{height:4px;border-radius:var(--vt-hist-radius-full);background:var(--vt-hist-track);overflow:hidden}.vt-hist__mix-fill{display:block;height:100%}.vt-hist__mix-fill--cargo{background:var(--vt-hist-accent)}.vt-hist__controls{display:flex;flex-direction:column;gap:16px;padding:14px 14px 16px;background:var(--vt-hist-surface);border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-lg)}.vt-hist__filters-card{padding:14px 14px 16px;background:var(--vt-hist-surface);border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-lg)}.vt-hist__filter-hint{margin:10px 0 0;font-size:11px;line-height:1.4;color:var(--vt-hist-text-secondary)}.vt-hist__view-modes{display:flex;flex-direction:column}.vt-hist__view-label{font-size:12px;font-weight:700;color:var(--vt-hist-text-secondary);margin-bottom:10px}.vt-hist__view-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px}.vt-hist__view-card{display:flex;flex-direction:column;align-items:flex-start;padding:10px 12px 12px;border-radius:var(--vt-hist-radius-md);border:1px solid var(--vt-hist-hairline);background:var(--vt-hist-surface);cursor:pointer;text-align:left;font-family:inherit;transition:border-color .2s ease,background .2s ease}.vt-hist__view-card:hover{background:var(--vt-hist-hover)}.vt-hist__view-card:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:-2px}.vt-hist__view-card--selected{border-color:var(--vt-hist-accent);background:var(--vt-hist-accent-tint)}.vt-hist__view-card-icon{font-size:20px;width:20px;height:20px;color:var(--vt-hist-text-secondary)}.vt-hist__view-card--selected .vt-hist__view-card-icon{color:var(--vt-hist-accent)}.vt-hist__view-card-title{font-size:13px;font-weight:600;color:var(--vt-hist-text-primary);margin-top:6px}.vt-hist__view-card-description{font-size:11px;line-height:16px;color:var(--vt-hist-text-secondary);margin-top:2px}.vt-hist__view-guidance{margin:10px 0 0;font-size:12px;line-height:1.4;color:var(--vt-hist-text-body)}.vt-hist__peak-jump{min-width:0;padding:0;border:0;background:rgba(0,0,0,0);text-align:right;font-family:inherit;font-size:12px;font-weight:500;line-height:1.35;color:var(--vt-hist-link);cursor:pointer}.vt-hist__peak-jump:hover{text-decoration:underline}.vt-hist__peak-jump:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:2px}.vt-hist__period-chips{display:flex;flex-wrap:wrap;gap:6px}.vt-hist__period-chip{height:32px;padding:0 14px;font-size:13px;font-weight:500;font-family:inherit;border-radius:var(--vt-hist-radius-xs);border:1px solid var(--vt-hist-border);background:var(--vt-hist-surface);color:var(--vt-hist-text-body);cursor:pointer}.vt-hist__period-chip:hover{background:var(--vt-hist-hover)}.vt-hist__period-chip:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:-2px}.vt-hist__period-chip--selected{border-color:var(--vt-hist-accent);background:var(--vt-hist-accent);color:var(--neutral-0)}.vt-hist__period-chip--selected:hover{background:var(--vt-hist-accent)}.vt-hist__custom-range{display:flex;align-items:flex-end;gap:10px;margin-top:12px;flex-wrap:wrap}.vt-hist__custom-range-field{flex:1;min-width:0}.vt-hist__custom-range-label{display:block;font-size:11px;font-weight:600;color:var(--vt-hist-text-secondary);margin-bottom:4px}.vt-hist__custom-range-control{height:36px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--vt-hist-border);border-radius:var(--vt-hist-radius-xs);background:var(--vt-hist-surface);font-size:13px;color:var(--vt-hist-text-body)}.vt-hist__custom-range-control--open{border-color:var(--vt-hist-accent)}.vt-hist__custom-range-trigger{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer}.vt-hist__custom-range-trigger:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:2px;border-radius:2px}.vt-hist__custom-range-icon{flex:0 0 auto;font-size:16px;width:16px;height:16px;color:var(--vt-hist-text-secondary)}.vt-hist__custom-range-input{flex:1;min-width:0;border:none;background:rgba(0,0,0,0);font-size:13px;font-family:inherit;color:var(--vt-hist-text-body);padding:0}.vt-hist__custom-range-input:focus{outline:none}.vt-hist__custom-range-control:focus-within{outline:2px solid var(--vt-hist-accent);outline-offset:-2px}.vt-hist__custom-range-error{flex:0 0 100%;font-size:12px;color:var(--vt-hist-alert)}.vt-hist__date-popover{position:fixed;z-index:20;width:280px;padding:12px;border:1px solid var(--vt-hist-border);border-radius:var(--vt-hist-radius-sm);background:var(--vt-hist-surface);box-shadow:0 2px 8px rgba(0,0,0,.22)}.vt-hist__calendar-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.vt-hist__calendar-title{flex:1;text-align:center;font-size:13px;font-weight:600;color:var(--vt-hist-text-body)}.vt-hist__calendar-nav{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--vt-hist-border);border-radius:var(--vt-hist-radius-xs);background:var(--vt-hist-surface);color:var(--vt-hist-text-body);font-size:18px;line-height:1;cursor:pointer}.vt-hist__calendar-nav:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:2px}.vt-hist__calendar-weekdays,.vt-hist__calendar-grid{display:grid;grid-template-columns:repeat(7, 1fr);gap:4px}.vt-hist__calendar-weekdays{margin-bottom:6px}.vt-hist__calendar-weekday{text-align:center;font-size:11px;font-weight:600;color:var(--vt-hist-text-secondary)}.vt-hist__calendar-day{height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(0,0,0,0);border-radius:var(--vt-hist-radius-xs);background:rgba(0,0,0,0);font-size:12px;color:var(--vt-hist-text-body);cursor:pointer}.vt-hist__calendar-day--blank{cursor:default}.vt-hist__calendar-day--selected{border-color:var(--vt-hist-accent);background:var(--vt-hist-accent-tint);color:var(--vt-hist-text-body)}.vt-hist__calendar-day:disabled{color:var(--vt-hist-text-secondary);opacity:.45;cursor:not-allowed}.vt-hist__calendar-day:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:1px}.vt-hist__categories-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}.vt-hist__categories-action{border:none;background:rgba(0,0,0,0);color:var(--vt-hist-link);font-size:12px;font-weight:600;cursor:pointer;padding:0;font-family:inherit}.vt-hist__categories-action:hover{text-decoration:underline}.vt-hist__categories-action:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:2px}.vt-hist__categories-grid{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 196px);gap:12px;align-items:start}.vt-hist__category-card{min-width:0;border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-lg);background:var(--vt-hist-surface);padding:4px}.vt-hist__categories-aside{min-width:0;display:flex;flex-direction:column;gap:12px}.vt-hist__category-row{display:flex;align-items:center;gap:9px;width:100%;min-width:0;padding:7px 10px;border:none;border-radius:var(--vt-hist-radius-sm);background:rgba(0,0,0,0);cursor:pointer;font-family:inherit;text-align:left}.vt-hist__category-row:hover{background:var(--vt-hist-hover)}.vt-hist__category-row:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:-2px}.vt-hist__category-checkbox{box-sizing:border-box;width:16px;height:16px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:var(--vt-hist-radius-sm);border:1px solid var(--vt-hist-border);background:var(--vt-hist-surface);color:var(--neutral-0);font-size:12px}.vt-hist__category-checkbox--checked{border-color:var(--vt-hist-accent);background:var(--vt-hist-accent)}.vt-hist__category-check-icon{width:12px;height:12px;flex-shrink:0;display:block}.vt-hist__category-swatch{width:14px;height:3px;border-radius:2px;flex:0 0 auto}.vt-hist__category-label{flex:1;font-size:13px;color:var(--vt-hist-text-body);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-hist__category-share{width:60px;height:4px;border-radius:2px;background:var(--vt-hist-track);overflow:hidden;flex:0 0 auto}.vt-hist__category-share-fill{display:block;height:4px;border-radius:2px}.vt-hist__category-count{width:44px;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;color:var(--vt-hist-text-secondary);flex:0 0 auto}.vt-hist__length-bands-label{font-size:11px;font-weight:700;color:var(--vt-hist-text-secondary);margin-bottom:7px}.vt-hist__length-bands-list{display:flex;flex-direction:column;gap:5px}.vt-hist__length-band{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border-radius:var(--vt-hist-radius-sm);border:1px solid var(--vt-hist-border);background:var(--vt-hist-surface);color:var(--vt-hist-text-secondary);cursor:pointer;font-family:inherit;text-align:left}.vt-hist__length-band:hover{background:var(--vt-hist-hover)}.vt-hist__length-band:focus-visible{outline:2px solid var(--vt-hist-accent);outline-offset:-2px}.vt-hist__length-band--on{border-color:var(--vt-hist-accent);background:var(--vt-hist-accent-tint);color:var(--vt-hist-text-primary)}.vt-hist__length-band-label{font-size:12px;font-weight:600}.vt-hist__length-band-count{font-size:11px;font-variant-numeric:tabular-nums;opacity:.75}.vt-hist__stats{border:1px solid var(--vt-hist-hairline);border-radius:var(--vt-hist-radius-lg);background:var(--vt-hist-surface);padding:12px 14px}.vt-hist__stats-value{font-size:22px;font-weight:500;color:var(--vt-hist-text-primary);font-variant-numeric:tabular-nums;line-height:1.1}.vt-hist__stats-caption{font-size:12px;color:var(--vt-hist-text-secondary)}.vt-hist__stats-divider{height:1px;background:var(--vt-hist-hairline);margin:10px 0}.vt-hist__stats-row{display:flex;justify-content:space-between;font-size:12px;color:var(--vt-hist-text-secondary)}.vt-hist__stats-row--spaced{margin-top:4px}.vt-hist__stats-metric{color:var(--vt-hist-text-body);font-variant-numeric:tabular-nums}.vt-hist__stats-metric--alert{color:var(--vt-hist-alert)}
.vt-vessel-calls{display:flex;flex-direction:column;gap:10px;padding-top:16px}.vt-vessel-calls__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:var(--neutral-6)}.vt-vessel-calls__meta-sort{font-size:11px}.vt-vessel-calls__list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}.vt-vessel-calls__call{background:var(--neutral-0);border:1px solid var(--neutral-2);border-radius:var(--radius-lg);padding:14px 16px}.vt-vessel-calls__call-head{display:flex;align-items:center;gap:8px}.vt-vessel-calls__call-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500}.vt-vessel-calls__call-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:10px 12px;margin-top:12px}.vt-vessel-calls__call-grid--durations{grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:10px;padding-top:10px;border-top:1px solid var(--neutral-2)}.vt-vessel-calls__call-ops{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-top:10px}.vt-vessel-calls__call-ops-main{font-size:12px;font-weight:600;color:var(--neutral-8)}.vt-vessel-calls__call-ops-crane{font-size:11px;color:var(--neutral-6)}.vt-vessel-calls__banner,.vt-vessel-calls__empty{margin:0;text-wrap:pretty}.vt-vessel-calls__banner,.vt-vessel-calls__empty{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--neutral-2);background:var(--neutral-05);font-size:12px;line-height:1.45;color:var(--neutral-7)}.vt-vessel-calls__call-place{margin:4px 0 0;font-size:12px;color:var(--neutral-6)}.vt-vessel-calls__call-label{font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--neutral-6)}.vt-vessel-calls__call-value{margin-top:3px;font-size:12px}.vt-vessel-calls__call-value--muted{color:var(--neutral-6)}.vt-vessel-calls__load-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border:1px solid var(--neutral-2);border-radius:var(--radius-sm);background:var(--neutral-0);color:var(--neutral-9);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .2s ease,color .2s ease}.vt-vessel-calls__load-btn:hover{border-color:var(--digital-twin-8);color:var(--digital-twin-8)}.vt-vessel-calls__load-btn:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px}
.vt-vessel-detail{--vt-vessel-progress-fg: var(--digital-twin-8);--vt-vessel-progress-bg: var(--digital-twin-1);--vt-vessel-waiting-fg: var(--warning-8);--vt-vessel-waiting-bg: var(--warning-1);--vt-vessel-expected-fg: var(--blue-7);--vt-vessel-expected-bg: var(--blue-1);display:flex;flex-direction:column;gap:12px;padding-top:16px}.vt-vessel-detail__actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.vt-vessel-detail__fly-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--neutral-3);background:var(--neutral-0);border-radius:var(--radius-sm);color:var(--neutral-6);cursor:pointer;transition:border-color .2s ease,color .2s ease}.vt-vessel-detail__fly-btn:hover{border-color:var(--teal-400, var(--digital-twin-6));color:var(--teal-700, var(--digital-twin-8))}.vt-vessel-detail__fly-btn:focus-visible{outline:2px solid var(--vt-accent);outline-offset:2px}.vt-vessel-detail__overview-card{background:var(--neutral-0);border:1px solid var(--neutral-2);border-radius:var(--radius-lg);overflow:hidden}.vt-vessel-detail__photo{height:168px;background:var(--neutral-2)}.vt-vessel-detail__marine-kpis{display:block;width:100%}.vt-vessel-detail__photo .vt-vessel-card__thumb{width:100%;height:100%;border-radius:0}.vt-vessel-detail__photo .vt-vessel-card__thumb-icon{width:56px;height:56px}.vt-vessel-detail__voyage{padding:14px 16px 16px}.vt-vessel-detail__route{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.vt-vessel-detail__route-end{min-width:0}.vt-vessel-detail__route-end--dest{text-align:right}.vt-vessel-detail__route-port{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vt-vessel-detail__route-label{font-size:10px;font-weight:700;letter-spacing:.05em;color:var(--neutral-6);margin-top:3px}.vt-vessel-detail__route-time{font-size:12px;color:var(--neutral-7)}.vt-vessel-detail__progress{position:relative;margin:12px 0 0;padding:4px 11px 2px}.vt-vessel-detail__progress-track{position:relative;height:3px;background:var(--neutral-2);border-radius:9999px;overflow:visible}.vt-vessel-detail__progress-fill{position:absolute;top:0;left:0;height:100%;background:var(--vt-vessel-progress-fg);border-radius:9999px;transition:width .4s ease}.vt-vessel-detail__progress-arrow{position:absolute;top:50%;width:22px;height:24px;transform:translate(-50%, -50%);overflow:visible;transition:left .4s ease;pointer-events:none}.vt-vessel-detail__voyage-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid var(--neutral-2)}.vt-vessel-detail__track-controls{display:flex;align-items:center;gap:8px;flex:0 0 auto}.vt-vessel-detail__track-legend{display:inline-flex;align-items:center;gap:8px}.vt-vessel-detail__track-key{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__track-swatch{display:inline-block;width:14px;height:3px;border-radius:2px}.vt-vessel-detail__track-swatch--sailed{background:#00857c}.vt-vessel-detail__track-swatch--ahead{background:#b4b9c3}.vt-vessel-detail__track-unavailable{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__voyage-note{font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__ghost-btn{display:flex;align-items:center;gap:5px;flex:0 0 auto;border:1px solid var(--neutral-3);background:var(--neutral-0);border-radius:var(--radius-sm);padding:4px 10px;font-size:12px;font-weight:500;font-family:inherit;color:var(--neutral-7);cursor:pointer}.vt-vessel-detail__ghost-btn:hover{border-color:var(--digital-twin-8)}.vt-vessel-detail__ghost-btn:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px}.vt-vessel-detail__card,.vt-vessel-detail__assignment{background:var(--neutral-0);border:1px solid var(--neutral-2);border-radius:var(--radius-lg);padding:16px}.vt-vessel-detail__card--list{padding:14px 16px 4px}.vt-vessel-detail__card--performance{padding:14px 16px 16px}.vt-vessel-detail__card-label{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--neutral-6)}.vt-vessel-detail__card-label--spaced{margin-bottom:12px}.vt-vessel-detail__card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.vt-vessel-detail__assignment--none .vt-vessel-detail__card-label{margin-bottom:12px}.vt-vessel-detail__place{display:flex;align-items:center;gap:11px}.vt-vessel-detail__place--link{width:100%;border:none;background:none;padding:0;font:inherit;text-align:left;cursor:pointer;border-radius:var(--radius-sm)}.vt-vessel-detail__place--link:hover .vt-vessel-detail__place-name{color:var(--digital-twin-8);text-decoration:underline}.vt-vessel-detail__place--link:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px}.vt-vessel-detail__place-icon{width:34px;height:34px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--blue-1);color:var(--blue-7)}.vt-vessel-detail__place-icon--waiting{background:var(--vt-vessel-waiting-bg);color:var(--vt-vessel-waiting-fg)}.vt-vessel-detail__place-icon--none{background:var(--neutral-1);color:var(--neutral-6)}.vt-vessel-detail__place-text{min-width:0}.vt-vessel-detail__place-name{font-size:15px;font-weight:500}.vt-vessel-detail__place-sub{font-size:11px;color:var(--neutral-6);margin-top:2px}.vt-vessel-detail__fields{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;margin-top:14px;padding-top:14px;border-top:1px solid var(--neutral-2)}.vt-vessel-detail__field-label{font-size:11px;font-weight:600;color:var(--neutral-6)}.vt-vessel-detail__field-value{font-size:13px;font-weight:500;margin-top:3px}.vt-vessel-detail__field-value--link{border:none;background:none;padding:0;font:inherit;text-align:left;cursor:pointer;color:var(--digital-twin-8)}.vt-vessel-detail__field-value--link:hover{text-decoration:underline}.vt-vessel-detail__field-value--link:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px;border-radius:var(--radius-xs)}.vt-vessel-detail__field-value--muted{color:var(--neutral-6)}.vt-vessel-detail__pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:11px;font-weight:600;border-radius:9999px;padding:2px 10px}.vt-vessel-detail__pill-dot{width:6px;height:6px;border-radius:50%;flex:0 0 auto}.vt-vessel-detail__pill--alongside{color:var(--digital-twin-8);background:var(--digital-twin-1)}.vt-vessel-detail__pill--alongside .vt-vessel-detail__pill-dot{background:var(--digital-twin-8)}.vt-vessel-detail__pill--waiting{color:var(--vt-vessel-waiting-fg);background:var(--vt-vessel-waiting-bg)}.vt-vessel-detail__pill--waiting .vt-vessel-detail__pill-dot{background:var(--warning-6)}.vt-vessel-detail__pill--expected{color:var(--vt-vessel-expected-fg);background:var(--vt-vessel-expected-bg)}.vt-vessel-detail__pill--expected .vt-vessel-detail__pill-dot{background:var(--blue-5)}.vt-vessel-detail__row{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--neutral-2)}.vt-vessel-detail__row:last-child{border-bottom:none}.vt-vessel-detail__row-label{font-size:12px;color:var(--neutral-6)}.vt-vessel-detail__row-value{font-size:13px;text-align:right}.vt-vessel-detail__row-value small{font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__row-value-hint{display:block;color:var(--warning-7)}.vt-vessel-detail__kpis{display:grid;grid-template-columns:repeat(3, 1fr);gap:12px}.vt-vessel-detail__kpi-label{font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__kpi-value{font-size:18px;font-weight:500;margin-top:2px}.vt-vessel-detail__kpi-track{height:4px;border-radius:9999px;background:var(--neutral-2);overflow:hidden;margin-top:6px}.vt-vessel-detail__kpi-fill{height:100%;background:var(--positive-6)}.vt-vessel-detail__kpi-fill--teal{background:var(--digital-twin-8)}.vt-vessel-detail__note{display:flex;align-items:center;gap:7px;margin-top:12px;background:var(--neutral-05);border:1px solid var(--neutral-2);border-radius:var(--radius-md);padding:8px 10px;font-size:11px;color:var(--neutral-6);text-wrap:pretty}.vt-vessel-detail__assignment--none .vt-vessel-detail__note{margin-top:14px}.vt-vessel-detail__row-value--type{display:inline-flex;align-items:center;gap:8px}.vt-vessel-detail__type-swatch{width:10px;height:10px;flex:0 0 auto;border-radius:2px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--neutral-900) 12%, transparent)}.vt-vessel-detail__note--muted{color:var(--neutral-6);opacity:.92}.vt-vessel-detail__action-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;background:var(--neutral-0);border:1px solid var(--neutral-3);border-radius:var(--radius-sm);padding:10px;font-size:13px;font-weight:500;font-family:inherit;color:var(--neutral-9);cursor:pointer}.vt-vessel-detail__action-btn:hover{border-color:var(--digital-twin-8);color:var(--digital-twin-8)}.vt-vessel-detail__action-btn:focus-visible{outline:2px solid var(--digital-twin-8);outline-offset:2px}.vt-vessel-detail__action-btn--inline{margin-top:10px}.vt-vessel-detail__event-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.vt-vessel-detail__event-row{display:flex;align-items:center;gap:8px;font-size:12px}.vt-vessel-detail__event-chip{flex:0 0 auto;border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:600}.vt-vessel-detail__event-time{flex:1;min-width:0;color:var(--neutral-8);font-variant-numeric:tabular-nums}.vt-vessel-detail__event-port{flex:0 0 auto;color:var(--neutral-6);font-size:11px}.vt-vessel-detail__event-empty{margin:0;font-size:12px;color:var(--neutral-6)}.vt-vessel-detail__ais-foot{text-align:center;font-size:11px;color:var(--neutral-6)}.vt-vessel-detail__overview-card .vtl-ai-insights{margin:0;border:0;border-top:1px solid var(--neutral-2);border-bottom:1px solid var(--neutral-2);border-radius:0;background:var(--neutral-1, #f1f5f9);min-height:120px}.vtl-ai-insights{display:block;margin:0 0 12px;padding:12px 16px;border:1px solid var(--neutral-3, #d7e0ee);border-radius:8px;background:#f8fafc;visibility:visible;opacity:1}.vtl-ai-insights__section+.vtl-ai-insights__section{margin-top:12px;padding-top:10px;border-top:1px solid var(--neutral-3, #d7e0ee)}.vtl-ai-insights__error{margin:0 0 10px;font-size:12px;color:#8a5a00}.vtl-ai-insights__eyebrow{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--neutral-6, #64748b)}.vtl-ai-insights__grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:10px 12px;margin:0}.vtl-ai-insights__metric dt{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;color:var(--neutral-6, #64748b)}.vtl-ai-insights__metric dd{margin:2px 0 0;font-size:13px;font-weight:600;color:var(--neutral-9, #0f172a);word-break:break-word}.vtl-ai-insights__hint{margin:2px 0 0;font-size:11px;font-weight:400;color:var(--neutral-6, #64748b);line-height:1.35}.vtl-ai-insights__chip{display:inline-flex;align-items:center;padding:1px 6px;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.02em;text-transform:none;background:var(--neutral-2, #e2e8f0);color:var(--neutral-7, #334155)}.vtl-ai-insights__chip--actual,.vtl-ai-insights__chip--within_limits,.vtl-ai-insights__chip--on_time,.vtl-ai-insights__chip--alongside{background:var(--success-1, #ecfdf3);color:var(--success-8, #166534)}.vtl-ai-insights__chip--predicted,.vtl-ai-insights__chip--calculated,.vtl-ai-insights__chip--scheduled,.vtl-ai-insights__chip--assigned,.vtl-ai-insights__chip--suggested,.vtl-ai-insights__chip--roster{background:var(--blue-1, #eff6ff);color:var(--blue-7, #1d4ed8)}.vtl-ai-insights__chip--waiting,.vtl-ai-insights__chip--running,.vtl-ai-insights__chip--pending,.vtl-ai-insights__chip--loading{background:var(--warning-1, #fff7ed);color:var(--warning-8, #9a3412)}.vtl-ai-insights__chip--risk,.vtl-ai-insights__chip--delayed,.vtl-ai-insights__chip--deferred{background:var(--error-1, #fef2f2);color:var(--error-8, #991b1b)}.vtl-ai-insights__chip--unavailable,.vtl-ai-insights__chip--not_applicable{background:var(--neutral-2, #e2e8f0);color:var(--neutral-6, #64748b)}
