.wims-river-dashboard{--navy:#061a36;--blue:#0759c7;--green:#19a63a;--orange:#ed7b00;--red:#e13535;--ink:#071c3b;--muted:#62708a;--line:#e2e7ee;--panel:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#f5f7fa;color:var(--ink);min-height:100vh;padding-top:66px}.wims-river-dashboard *{box-sizing:border-box}.wims-river-hero{height:278px;overflow:hidden;background:#dbe7ef}.wims-river-hero img{width:100%;height:100%;object-fit:cover;display:block}.wims-river-content{padding:16px 28px 18px}.wims-river-titlebar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:14px}.wims-river-titlebar h1{margin:0;font-size:31px;letter-spacing:-.02em}.wims-river-titlebar h1 span{margin-right:12px}.wims-river-titlebar p{margin:3px 0 0;color:var(--muted);font-size:14px}.wims-river-search{position:relative;width:240px}.wims-river-search input{width:100%;height:44px;padding:0 42px 0 15px;border:1px solid #d8e0e8;border-radius:10px;background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(15,36,62,.04)}.wims-river-search b{position:absolute;right:14px;top:10px;font-size:22px;color:#1b416f}.wims-river-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.wims-river-kpis article{display:flex;align-items:center;gap:14px;min-height:96px;padding:14px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(15,36,62,.06)}.wims-river-kpis i{font-style:normal;font-size:37px;color:var(--navy)}.wims-river-kpis i.green{color:var(--green)}.wims-river-kpis i.blue{color:#0b55bc}.wims-river-kpis i.orange{color:var(--orange)}.wims-river-kpis small,.wims-river-kpis strong,.wims-river-kpis span{display:block}.wims-river-kpis small{font-size:13px}.wims-river-kpis strong{font-size:26px;margin:2px 0}.wims-river-kpis span{color:var(--muted);font-size:11px}.wims-river-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.8fr) minmax(300px,.8fr);gap:14px}.wims-river-right-column{display:grid;gap:14px}.wims-river-panel{border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(15,36,62,.055);overflow:hidden}.wims-river-panel>header{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;border-bottom:1px solid var(--line)}.wims-river-panel h2{margin:0;font-size:15px}.wims-river-panel header span{color:#0759c7;font-size:11px}.wims-river-table-wrap{overflow:auto;max-height:390px}.wims-river-panel table{width:100%;border-collapse:collapse;min-width:1180px}.wims-river-panel th,.wims-river-panel td{padding:11px 13px;border-bottom:1px solid #edf0f4;text-align:left;font-size:12px}.wims-river-panel th{color:#44516b;font-size:10px;font-weight:700}.wims-river-panel td small{display:block;color:var(--muted);margin-top:2px}.rd-status{display:inline-flex;align-items:center;gap:6px}.rd-status i,.rd-health{display:inline-block;width:8px;height:8px;border-radius:50%}.rd-status.underway i,.rd-health.underway,.rd-status.docked i,.rd-health.docked{background:#1fa93b}.rd-status.delayed i,.rd-health.delayed{background:#f39a0b}.rd-status.offline i,.rd-health.offline{background:#df3434}.rd-health{float:right;margin-top:4px}.wims-river-timeline{padding:8px 15px 13px;max-height:390px;overflow:auto}.wims-river-timeline article{position:relative;display:grid;grid-template-columns:54px 30px 1fr;gap:10px;align-items:center;padding:11px 0}.wims-river-timeline article:not(:last-child):after{content:"";position:absolute;left:68px;top:39px;bottom:-11px;border-left:1px dashed #8fd49e}.wims-river-timeline time{font-weight:800}.rd-event-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #63be75;border-radius:50%;background:#fff;color:#20a73b;z-index:1}.rd-event-icon.departure{color:#0759c7;border-color:#5f91d5}.wims-river-timeline strong,.wims-river-timeline small{display:block}.wims-river-timeline small{margin-top:2px;color:#30415c}.wims-river-watch{padding:8px 15px 12px}.wims-river-watch article{display:grid;grid-template-columns:24px 1fr auto 9px;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f4;font-size:12px}.wims-river-watch article span{font-size:18px}.wims-river-watch b{font-weight:600}.wims-river-watch b.normal{color:var(--green)}.wims-river-watch b.monitor,.wims-river-watch b.warning{color:var(--orange)}.wims-river-watch b.critical{color:var(--red)}.wims-river-watch i{width:8px;height:8px;border-radius:50%;background:#1fa93b}.wims-river-watch i.monitor,.wims-river-watch i.warning{background:#f39a0b}.wims-river-watch i.critical{background:#df3434}.wims-river-alerts{padding:7px 14px 12px}.wims-river-alerts article{display:grid;grid-template-columns:25px 1fr;gap:9px;padding:10px 0;border-bottom:1px solid #edf0f4}.wims-river-alerts article>i{font-style:normal;color:var(--orange);font-size:20px}.wims-river-alerts article.critical>i{color:var(--red)}.wims-river-alerts strong,.wims-river-alerts span{display:block;font-size:12px}.wims-river-alerts span{margin-top:2px;color:#47556e}.rd-empty{padding:24px!important;color:var(--muted);text-align:center}.wims-river-footer{display:flex;align-items:center;gap:30px;padding:14px 25px;background:#061a36;color:#fff;font-size:12px}.wims-river-footer strong{margin-right:auto}.wims-river-footer span{white-space:nowrap}.wims-river-footer span i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;background:#17b84a}.wims-river-footer em{margin-left:auto;color:#e7b968;font-family:Georgia,serif;font-size:18px}.wims-river-dashboard .wims-app-navigation{top:13px}.wims-river-dashboard+.wims-app-navigation{top:13px}@media(max-width:1200px){.wims-river-kpis{grid-template-columns:repeat(3,1fr)}.wims-river-layout{grid-template-columns:1fr 1fr}.wims-river-right-column{grid-column:1/-1;grid-template-columns:1fr 1fr}}@media(max-width:760px){.wims-river-dashboard{padding-top:58px}.wims-river-hero{height:190px}.wims-river-content{padding:14px}.wims-river-titlebar{align-items:flex-start;flex-direction:column}.wims-river-titlebar h1{font-size:24px}.wims-river-search{width:100%}.wims-river-kpis{grid-template-columns:repeat(2,1fr)}.wims-river-layout{grid-template-columns:1fr}.wims-river-right-column{grid-column:auto;grid-template-columns:1fr}.wims-river-footer{flex-wrap:wrap;gap:10px}.wims-river-footer strong,.wims-river-footer em{width:100%;margin:0}.wims-river-footer em{text-align:right}}
html:has(.wims-river-dashboard),
body.fleet-tracker-fullscreen-page{
margin:0!important;
padding:0!important;
width:100%!important;
min-height:100%!important;
background:#f5f7fa!important;
overflow-x:hidden
}
body.fleet-tracker-fullscreen-page #wpadminbar{
display:none!important
}
body.fleet-tracker-fullscreen-page .wims-fullscreen-app{
width:100%;
min-height:100vh;
margin:0;
padding:0
}
body.fleet-tracker-fullscreen-page .wims-river-dashboard{
width:100%;
max-width:none;
margin:0;
border:0;
border-radius:0;
box-shadow:none
}
body.fleet-tracker-fullscreen-page .wims-river-hero{
width:100vw;
margin-left:calc(50% - 50vw)
}
body.fleet-tracker-fullscreen-page .wims-river-content{
width:100%;
max-width:1920px;
margin:0 auto
}
@media(max-width:680px){
body.fleet-tracker-fullscreen-page .wims-river-content{
padding-left:12px;
padding-right:12px
}
}

.rd-current-location strong,
.rd-current-location small{
display:block
}
.rd-current-location small{
color:var(--muted);
margin-top:2px
}
.rd-location-loading{
color:#55708f;
font-weight:650
}
.rd-muted{
color:var(--muted)
}

.rd-itinerary-time strong,.rd-itinerary-time small{display:inline-block;margin-right:5px}
.rd-itinerary-time small{font-size:9px;text-transform:uppercase;color:var(--muted)}
.wims-river-panel td:nth-child(7){min-width:190px}
.wims-river-panel td:nth-child(8){min-width:150px}


/* River Dashboard Presentation 1.3.0 — cache-proof asset */
.wims-river-fleet-panel table{min-width:900px!important}
.wims-river-fleet-panel thead th{
background:#f8fafc!important;
color:#425466!important;
font-size:10px!important;
font-weight:800!important;
letter-spacing:.035em;
text-transform:uppercase
}
.wims-river-fleet-panel tbody td{
padding-top:12px!important;
padding-bottom:12px!important;
vertical-align:middle!important
}
.wims-river-fleet-panel tbody tr:nth-child(even){background:#fbfdfe}
.wims-river-fleet-panel tbody tr:hover{background:#f0f7fb}

.rd-ops-vessel strong{
display:block;color:#102a43;font-size:13px;font-weight:800;line-height:1.18
}
.rd-ops-vessel small{
display:block;margin-top:4px;color:#8493a1!important;font-size:9px!important;font-weight:600
}
.rd-ops-status{
display:inline-flex;align-items:center;justify-content:center;gap:6px;
min-width:80px;padding:5px 10px;border-radius:999px;
font-size:9px!important;font-weight:800;letter-spacing:.035em;
text-transform:uppercase;white-space:nowrap
}
.rd-ops-status:before{
content:"";width:7px;height:7px;border-radius:50%;background:currentColor
}
.rd-ops-status-underway{background:#e7f7ee;color:#198754}
.rd-ops-status-docked{background:#eef2f5;color:#566675}
.rd-ops-status-attention{background:#fff1dc;color:#a95d00}
.rd-ops-status-lock{background:#e7f1ff;color:#0d6efd}
.rd-ops-status-neutral{background:#eef4f7;color:#597485}
.rd-ops-primary{
display:block;color:#1c2f40;font-size:11px;font-weight:800;line-height:1.2
}
.rd-ops-secondary{
display:block;margin-top:3px;color:#8493a1!important;font-size:9px!important;line-height:1.25
}
.rd-current-location strong{
display:block;color:#1c2f40;font-size:11px;font-weight:800
}
.rd-current-location small{
display:block;margin-top:3px;color:#8493a1!important;font-size:9px!important
}
.rd-ops-times{display:grid;gap:3px}
.rd-ops-times span{display:flex;align-items:baseline;gap:5px}
.rd-ops-times small{
min-width:24px;margin:0!important;color:#97a4b0!important;
font-size:8px!important;font-weight:800;letter-spacing:.05em
}
.rd-ops-times strong{color:#1b3042;font-size:10px;font-weight:800}
.rd-ops-muted{color:#9aa6b2;font-size:10px}


/* v1.7.14 runtime presentation reinforcement */
[data-river-presentation-runtime="1.7.14"] .wims-river-fleet-panel table{
min-width:880px!important
}
[data-river-presentation-runtime="1.7.14"] .wims-river-titlebar h1{
letter-spacing:-.02em
}


/* v1.7.15 final River Fleet Status polish */
.rd-ops-vessel strong{
font-size:14px!important;
letter-spacing:.005em
}
.rd-ops-vessel small{
font-size:9px!important;
opacity:.82
}

.rd-ops-status{
min-width:82px;
padding:5px 11px;
font-size:9px!important;
box-shadow:inset 0 0 0 1px rgba(0,0,0,.025)
}
.rd-ops-status-underway{
background:#dff6e9!important;
color:#0f8a48!important
}
.rd-ops-status-docked{
background:#e9eef2!important;
color:#425768!important
}
.rd-ops-status-attention{
background:#fff0d8!important;
color:#b26400!important
}
.rd-ops-status-lock{
background:#e5f0ff!important;
color:#0d67c8!important
}

.rd-ops-primary,
.rd-current-location strong{
font-size:11.5px!important
}
.rd-ops-secondary,
.rd-current-location small{
color:#8796a4!important
}

.wims-river-fleet-panel tbody td{
padding-top:10px!important;
padding-bottom:10px!important
}
