/* Scoped to the existing AIS explorer; shared maps keep their original layout. */
.ais-desktop-explorer{--ink:#132b43;--teal:#153c49;max-width:none;padding:12px 14px;color:var(--ink)}
.ais-desktop-explorer .ais-heading{background:#143845;color:white;border-radius:7px;padding:12px 18px;margin-bottom:10px}
.ais-desktop-explorer .ais-heading h1{font-size:20px;letter-spacing:0;margin:0}
.ais-desktop-explorer .ais-heading p,.ais-desktop-explorer .ais-eyebrow{color:#c3dce3;font-size:11px}
.ais-desktop-explorer .ais-heading .ais-private{color:#153c49}
.ais-desktop-explorer .ais-toolbar{border-radius:7px;align-items:center;box-shadow:none;padding:10px 12px;margin-bottom:10px}
.ais-desktop-explorer .ais-search{display:flex;align-items:center;gap:14px}
.ais-desktop-explorer .ais-search span{font-size:12px;white-space:nowrap;margin:0;color:var(--ink)}
.ais-desktop-explorer .ais-search input{border:1px solid #d4dfe5;border-radius:12px;padding:10px 14px;font-size:14px}
.ais-desktop-explorer .ais-views{border:1px solid #dbe3e7;border-radius:7px}
.ais-desktop-explorer .ais-button,.ais-desktop-explorer .ais-views button{border-radius:6px;font-size:12px}
.ais-desktop-explorer .ais-layer-filters{border:0;padding:0;margin:0 0 14px}
.ais-desktop-explorer .ais-layer-filters legend,.ais-desktop-explorer summary{font-size:13px;font-weight:750;margin-bottom:10px}
.ais-desktop-explorer .ais-layer-filters label,.ais-desktop-explorer .ais-company-filters label{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:400;margin:9px 0;line-height:1.4}
.ais-desktop-explorer input[type=checkbox]{width:16px;height:16px;min-height:16px;accent-color:#1476df;padding:0;flex-shrink:0}
.ais-desktop-explorer details{border-top:1px solid #e1e7ec;padding:14px 0 0;margin-top:14px}
.ais-desktop-explorer summary{cursor:pointer;min-height:28px}
.ais-desktop-explorer .ais-company-title{display:block;font-weight:750;color:var(--ink);text-decoration:none;font-size:14px}
.ais-desktop-explorer .ais-company-icon{font-size:28px;color:#da9b28;padding:18px 5px 0 14px}
.ais-desktop-explorer .ais-company-card{display:flex}
.ais-desktop-explorer .ais-list-panel{min-width:0}
.ais-desktop-explorer .ais-results{display:flex;flex-direction:column;gap:0}
.ais-desktop-explorer .ais-load-more{order:2147483647}
@media(min-width:1000px){
 body.ais-explorer-page>header .navbar{background:#143845!important}
 .ais-desktop-explorer .ais-workspace{display:grid;grid-template-columns:252px minmax(330px,400px) minmax(0,1fr);gap:10px;align-items:stretch;height:calc(100dvh - 235px);min-height:480px}
 .ais-desktop-explorer .ais-workspace:has(>.ais-filters[hidden]){grid-template-columns:minmax(330px,400px) minmax(0,1fr)}
 .ais-desktop-explorer .ais-filters{position:static;width:auto;max-height:none;margin:0;padding:16px;overflow:auto;border-radius:6px;box-shadow:none;min-width:0;height:100%}
 .ais-desktop-explorer .ais-filter-heading{font-size:13px;margin-bottom:16px}
 .ais-desktop-explorer .ais-filter-heading button{width:27px;height:27px}
 .ais-desktop-explorer .ais-filter-grid{display:flex;flex-direction:column;gap:12px}
 .ais-desktop-explorer .ais-filter-keyword{display:none}
 .ais-desktop-explorer .ais-filter-grid select,.ais-desktop-explorer .ais-filter-grid input{font-size:12px;min-height:35px}
 .ais-desktop-explorer .ais-filter-actions{position:sticky;bottom:-16px;background:#fff;gap:6px;padding:12px 0}
 .ais-desktop-explorer .ais-filter-actions button{padding:8px;font-size:11px}
 .ais-desktop-explorer .ais-mmsi-toggles{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;font-size:12px}
 .ais-desktop-explorer .ais-mmsi-toggles label{display:flex;gap:7px;align-items:center}
 .ais-desktop-explorer .ais-mmsi-toggles select{font-size:12px;width:100%}
 .ais-desktop-explorer .ais-list-panel{display:flex;flex-direction:column;border:1px solid #dce4e9;border-radius:6px;background:white;overflow:hidden;min-height:0}
 .ais-desktop-explorer .ais-results-bar{display:flex;flex-wrap:wrap;padding:12px 14px;margin:0;border-bottom:1px solid #e1e8ed;gap:8px}
 .ais-desktop-explorer .ais-results-bar strong{font-size:14px}
 .ais-desktop-explorer .ais-results-bar label,.ais-desktop-explorer .ais-results-bar select{font-size:11px}
 .ais-desktop-explorer .ais-results-bar p{font-size:10px}
 .ais-desktop-explorer .ais-results{overflow:auto;overscroll-behavior:contain;flex:1;min-height:0;padding:0 12px}
 .ais-desktop-explorer .ais-card{display:flex;flex-direction:row-reverse;flex-shrink:0;border:0;border-bottom:1px solid #e3e9ee;border-radius:0;padding:12px 0;align-items:flex-start;min-height:100px}
 .ais-desktop-explorer .ais-card-body{padding:0 6px 0 0;flex:1;min-width:0}
 .ais-desktop-explorer .ais-card>.ais-photo{height:65px;width:76px;flex:0 0 76px;border-radius:5px;margin-top:4px}
 .ais-desktop-explorer .ais-card>.ais-photo .ais-photo-overlay,.ais-desktop-explorer .ais-card>.ais-photo .ais-credit,.ais-desktop-explorer .ais-card>.ais-photo .ais-watermark{display:none}
 .ais-desktop-explorer .ais-card>.ais-photo .ais-photo-next{right:2px;width:24px;height:24px;min-width:24px;min-height:24px}
 .ais-desktop-explorer .ais-card .ais-ship-title{font-size:14px;margin:4px 0}
 .ais-desktop-explorer .ais-specs,.ais-desktop-explorer .ais-identifiers,.ais-desktop-explorer .ais-position{font-size:11px;line-height:1.45;margin:3px 0}
 .ais-desktop-explorer .ais-card-top{gap:4px;min-height:0}
 .ais-desktop-explorer .ais-card-controls{gap:4px}
 .ais-desktop-explorer .ais-card-controls .ais-favorite-heart{width:26px;height:26px}
 .ais-desktop-explorer .ais-card-controls .ais-shipconnect-link{font-size:9px;padding:4px;min-height:26px}
 .ais-desktop-explorer .ais-card .ais-card-actions{gap:4px;margin-top:7px}
 .ais-desktop-explorer .ais-card .ais-action-button{font-size:9px;min-height:26px;padding:5px}
 .ais-desktop-explorer .ais-company-card{flex-direction:row}
 .ais-desktop-explorer .ais-company-icon{padding:2px 10px 0 0}
 .ais-desktop-explorer .ais-map-panel{position:relative!important;top:auto!important;height:100%;min-height:0;display:flex;flex-direction:column;border-radius:6px;overflow:hidden}
 .ais-desktop-explorer #ais-map{height:auto!important;min-height:0!important;flex:1}
 .ais-desktop-explorer .ais-map-heading{padding:8px;gap:6px;font-size:11px;flex-wrap:wrap}
 .ais-desktop-explorer .ais-map-note{font-size:10px;margin:0;padding:7px 10px;background:white}
 .ais-desktop-explorer .ais-workspace[data-view=list],.ais-desktop-explorer .ais-workspace[data-view=map]{grid-template-columns:252px minmax(0,1fr)}
 .ais-desktop-explorer .ais-workspace[data-view=list]:has(>.ais-filters[hidden]),.ais-desktop-explorer .ais-workspace[data-view=map]:has(>.ais-filters[hidden]){grid-template-columns:minmax(0,1fr)}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-map-panel,.ais-desktop-explorer .ais-workspace[data-view=map] .ais-list-panel{display:none!important}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-content:start;gap:12px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card{padding:14px}
}
@media(max-width:999px){
 .ais-desktop-explorer .ais-workspace{display:flex;flex-direction:column}
 .ais-desktop-explorer .ais-list-panel,.ais-desktop-explorer .ais-map-panel,.ais-desktop-explorer .ais-filters{width:100%}
 .ais-desktop-explorer .ais-workspace[data-view=map] .ais-list-panel,.ais-desktop-explorer .ais-workspace[data-view=list] .ais-map-panel{display:none}
 .ais-desktop-explorer .ais-search{display:block}
 .ais-desktop-explorer .ais-heading{flex-wrap:wrap}
 .ais-desktop-explorer .ais-results{gap:12px}
}
.ais-layer-badge{background:#fff;border:1px solid #adc6d2;border-radius:5px;color:#143845;font-size:10px;font-weight:700;padding:4px 7px;box-shadow:0 2px 8px #16384822}
.ais-sale-label,.ais-work-label{display:inline-block;padding:3px 6px;border-radius:4px;font-size:10px;font-weight:700;margin:4px 4px 4px 0;background:#f7ebc8;color:#66501b}
.ais-work-label{background:#e4effa;color:#215789}
.ais-popup-actions .ais-popup-work{background:#e4effa;color:#215789}
.ais-desktop-explorer .ais-work-card{padding:14px}
@media(min-width:1000px){body.ais-explorer-page>header .navbar :is(.nav-link,.navbar-brand){color:#e6f0f5!important}}
@media(min-width:1000px){
 body.ais-explorer-page .navbar{background:#143845!important;background-image:none!important}
 body.ais-explorer-page .navbar .nav-link{color:#edf5fa!important}
 .ais-desktop-explorer>.ais-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;padding:0;margin:0}
 .ais-desktop-explorer .ais-heading-actions{justify-content:flex-start;margin-top:12px}
 .ais-desktop-explorer .ais-heading-actions .ais-private{font-size:10px}
 .ais-desktop-explorer .ais-heading-actions a{font-size:10px;white-space:normal}
 .ais-desktop-explorer .ais-card-tools{padding:6px 0 0;margin-top:6px}
 .ais-desktop-explorer .ais-card-tools summary{font-size:10px;margin:0;min-height:22px}
 .ais-desktop-explorer .ais-workspace{height:calc(100dvh - 200px)}
}
@media(min-width:1000px) and (max-width:1400px){
 .ais-desktop-explorer .ais-workspace{grid-template-columns:220px 330px minmax(0,1fr)}
 .ais-desktop-explorer .ais-workspace:has(>.ais-filters[hidden]){grid-template-columns:330px minmax(0,1fr)}
 .ais-desktop-explorer .ais-workspace[data-view=list],.ais-desktop-explorer .ais-workspace[data-view=map]{grid-template-columns:220px minmax(0,1fr)}
 .ais-desktop-explorer .ais-search span{display:none}
}
@media(min-width:1000px){
 body.s2b-base.ais-explorer-page header nav.navbar.navbar-dark.bg-dark,body.s2b-base.ais-explorer-page header nav.contextual-region{background-color:#143845!important;background-image:none!important}
 body.s2b-base.ais-explorer-page .navbar-brand img{max-height:60px!important;width:auto!important}
 .ais-desktop-explorer .ais-card{padding:10px 0;min-height:100px}
 .ais-desktop-explorer .ais-card-tools{margin:4px 0 0;padding:0;border:0;border-radius:0}
 .ais-desktop-explorer .ais-card-tools summary{padding:0;font-size:10px;min-height:18px;line-height:18px}
 .ais-desktop-explorer .ais-card-tools[open]{padding-top:5px}
 .ais-desktop-explorer .ais-card-tools .ais-card-actions{padding-top:4px;margin-top:4px}
 .ais-desktop-explorer .ais-card-tools .ais-card-top{margin-bottom:2px}
 .ais-desktop-explorer .ais-company-filters{border-left:0;border-right:0;border-bottom:0;border-radius:0}
}
@media(min-width:1000px){body.s2b-base.ais-explorer-page .navbar #block-b5subtheme-account-menu{background:transparent!important}}
@media(max-width:760px){.ais-desktop-explorer .ais-workspace>.ais-filters{width:auto;max-width:calc(100vw - 16px)}.ais-desktop-explorer .ais-layer-filters label{min-height:32px}.ais-desktop-explorer .ais-company-filters label{min-height:28px}}
.ais-desktop-explorer .ais-filter-reopen{display:none}
.ais-desktop-explorer .ais-filter-reopen[hidden]{display:none!important}
@media(min-width:1000px){
 .ais-desktop-explorer .ais-workspace{position:relative}
 .ais-desktop-explorer .ais-filter-reopen:not([hidden]){display:block;position:absolute;top:66px;left:0;z-index:600;writing-mode:vertical-rl;min-height:104px;min-width:34px;padding:12px 7px;border:1px solid #bdccd5;border-left:0;border-radius:0 8px 8px 0;background:#153c49;color:white;font-size:12px;font-weight:700;box-shadow:2px 2px 8px #14384524;cursor:pointer}
 .ais-desktop-explorer .ais-filter-reopen:focus-visible{outline:3px solid #1476df;outline-offset:3px}
 .ais-desktop-explorer .ais-workspace:has(>.ais-filters[hidden])>.ais-list-panel{margin-left:35px}
 .ais-desktop-explorer .ais-workspace[data-view=map]:has(>.ais-filters[hidden])>.ais-map-panel{margin-left:35px}
}
@media(prefers-reduced-motion:no-preference) and (min-width:1000px){.ais-desktop-explorer .ais-filters:not([hidden]){animation:ais-filter-slide-in .18s ease-out}@keyframes ais-filter-slide-in{from{opacity:.4;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}}
@media(max-width:999px){.ais-desktop-explorer .ais-filter-reopen:not([hidden]){display:block;align-self:flex-start;border:1px solid #bdccd5;border-radius:6px;background:#153c49;color:#fff;padding:10px 14px;font-weight:700;cursor:pointer}}
/* Shared symbols and floating layer control. */
.ais-symbol{display:inline-grid;place-items:center;width:24px;height:26px;flex:0 0 24px;color:var(--symbol-color,#147fc0);vertical-align:middle}
.ais-symbol svg{display:block;width:22px;height:24px}
.ais-layer-filters .ais-symbol,.ais-company-filters .ais-symbol,.ais-floating-layers .ais-symbol{width:20px;height:22px;flex-basis:20px}
.ais-layer-filters .ais-symbol svg,.ais-company-filters .ais-symbol svg,.ais-floating-layers .ais-symbol svg{width:18px;height:20px}
.ais-layer-help{font-size:11px;line-height:1.5;color:#687c89;margin:10px 0 0}
.ais-add-company{display:block!important;margin:10px 0 14px;text-align:center;background:#e9f1f6!important;color:#16394a!important;border-color:#cbdde7!important}
.ais-floating-layers{position:absolute;right:12px;top:64px;z-index:700;background:#fffffff5;border:1px solid #dbe4e8;border-radius:8px;box-shadow:0 4px 16px #183b4b22;padding:10px 12px;max-width:min(270px,calc(100% - 66px));font-size:12px;color:#17334a;margin:0}
.ais-floating-layers summary{font-size:12px;min-height:24px;line-height:24px;margin:0;cursor:pointer;font-weight:750}
.ais-floating-layers label{display:flex;align-items:center;gap:8px;margin:9px 0;cursor:pointer;line-height:1.4}
.ais-floating-layers input{width:16px;height:16px;accent-color:#1476df}
.ais-company-pin{background:transparent;border:0}
.ais-company-pin>span{display:grid;place-items:center;width:30px;height:34px;border-radius:16px 16px 16px 3px;transform:rotate(-45deg);background:var(--symbol-color);color:#fff;border:2px solid #fff;box-shadow:0 2px 6px #193b4d4d}
.ais-company-pin svg{width:21px;height:23px;transform:rotate(45deg)}
.ais-company-popup{font-size:12px;line-height:1.5;color:#17334a;min-width:210px}
.ais-company-popup h3{font-size:17px;margin:10px 0 7px}
.ais-company-popup-logo{display:block;max-width:130px;max-height:70px;object-fit:contain}
.ais-company-logo{width:58px;height:54px;object-fit:contain;margin:0 4px}
.ais-company-claim{display:block;margin-top:12px;font-size:11px;color:#245b85}
.ais-partner-badge{display:inline-block;font-size:11px;font-weight:700;background:#e7effb;color:#355285;padding:5px 8px;border-radius:5px;margin:5px 0}
@media(min-width:1000px){
 .ais-desktop-explorer .ais-card{display:grid;grid-template-columns:26px minmax(0,1fr) 70px;gap:8px;align-items:start}
 .ais-desktop-explorer .ais-card>.ais-symbol{grid-column:1;grid-row:1;margin-top:2px}
 .ais-desktop-explorer .ais-card>.ais-card-body{grid-column:2;grid-row:1;max-width:100%}
 .ais-desktop-explorer .ais-card>.ais-photo,.ais-desktop-explorer .ais-card>.ais-company-logo{grid-column:3;grid-row:1;width:70px;max-width:70px;min-width:0}
 .ais-desktop-explorer .ais-company-card .ais-card-body,.ais-desktop-explorer .ais-work-card .ais-card-body{grid-column:2/4}
 .ais-desktop-explorer .ais-company-card:has(>.ais-company-logo) .ais-card-body{grid-column:2}
 .ais-desktop-explorer .ais-workspace{height:calc(100dvh - 180px)}
}
@media(max-width:760px){
 .ais-floating-layers{top:70px;right:10px;max-width:245px;padding:7px 10px}
 .ais-floating-layers label{min-height:34px}
 .ais-floating-layers:not([open]){max-width:120px}
 .ais-desktop-explorer .ais-work-card>.ais-symbol,.ais-desktop-explorer .ais-card>.ais-symbol{margin:12px}
}
.ais-company-admin-link{display:block;margin:4px 0 12px;font-size:11px;color:#396882;line-height:1.5}
@media(max-width:760px){
 .ais-mobile-map-open .ais-map-heading{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"back back back" "mode fit filters";height:auto!important;min-height:102px;padding:8px 10px;gap:7px}
 .ais-mobile-map-open .ais-map-heading .ais-mobile-map-back{grid-area:back;justify-self:start;background:#153c49;color:#fff;border:0;border-radius:7px;padding:8px 14px;font-size:13px;font-weight:750;min-height:38px}
 .ais-mobile-map-open .ais-map-heading .ais-data-toggle{grid-area:mode;justify-self:start}
 .ais-mobile-map-open .ais-map-heading #ais-fit{grid-area:fit}
 .ais-mobile-map-open .ais-map-heading .ais-mobile-map-filters{grid-area:filters}
 .ais-mobile-map-open .ais-floating-layers{top:114px}
 .ais-mobile-map-open .ais-mobile-map-count{top:114px;max-width:calc(100% - 195px);font-size:10px;line-height:1.4}
}
.ais-desktop-explorer .ais-basic-ship-filters{border:0;border-top:1px solid #e2e8ed;padding:12px 0 0;margin:12px 0}
.ais-desktop-explorer .ais-basic-ship-filters>legend{float:none;width:auto;font-size:12px;font-weight:700;color:#5f7483;padding:0 5px 0 0;margin:0 0 9px}
.ais-desktop-explorer .ais-basic-ship-filters .ais-mmsi-toggles{display:flex;flex-direction:column;gap:9px;margin:0}
.ais-desktop-explorer .ais-basic-ship-filters label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:400;line-height:1.5}
.ais-desktop-explorer .ais-basic-ship-filters label.is-disabled{color:#8b98a1;opacity:.65;cursor:not-allowed}
.ais-desktop-explorer .ais-basic-ship-filters input:disabled{cursor:not-allowed}
.ais-desktop-explorer .ais-basic-ship-filters select{font-size:12px;min-height:36px;flex:1;min-width:0}
@media(max-width:760px){.ais-desktop-explorer .ais-basic-ship-filters label{min-height:32px}}
.ais-desktop-explorer #ais-result-count,.ais-desktop-explorer .ais-map-result-count{display:block;font-size:14px;line-height:1.55}
.ais-desktop-explorer .ais-position-counts{font-size:10px;line-height:1.5;margin:4px 0;color:#627787}
.ais-desktop-explorer .ais-work-result-link{display:block;margin:5px 0;font-size:11px;line-height:1.5}
.ais-map-totals{display:none;font-size:11px;font-weight:700;line-height:1.5;color:#23465a}
.ais-workspace[data-view=map] .ais-map-totals{display:block;flex-basis:100%;padding:4px 2px}
.ais-workspace[data-view=map] .ais-floating-layers{top:88px}
@media(max-width:760px){
 .ais-mobile-map-open .ais-map-heading{grid-template-areas:"back back back" "mode fit filters" "totals totals totals";min-height:126px}
 .ais-mobile-map-open .ais-map-totals{grid-area:totals;text-align:left;max-width:100%;font-size:10px}
 .ais-mobile-map-open .ais-workspace[data-view=map] .ais-floating-layers{top:140px}
 .ais-mobile-map-open .ais-mobile-map-count{display:none}
}
/* Shared result cards: compact in Both, larger media in List. */
.ais-desktop-explorer .ais-results{gap:10px;padding:10px;background:#f3f6f8}
.ais-desktop-explorer .ais-card{--card-accent:var(--ink,#132b43);position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;align-items:start;flex-shrink:0;min-height:0;padding:14px!important;border:1px solid #e0e7ed;border-left:3px solid var(--card-accent);border-radius:12px;background:#fff;box-shadow:0 2px 7px #132b4307;transition:box-shadow .15s ease;overflow-wrap:anywhere;cursor:pointer}
.ais-desktop-explorer .ais-card:hover{box-shadow:0 4px 14px #132b4312;border-color:#c8d6df;border-left-color:var(--card-accent)}
.ais-desktop-explorer .ais-card.is-selected{outline:2px solid var(--card-accent);outline-offset:-1px;background:#f8fbfd}
.ais-desktop-explorer .ais-card:focus-visible,.ais-desktop-explorer .ais-card a:focus-visible,.ais-desktop-explorer .ais-card button:focus-visible,.ais-desktop-explorer .ais-card summary:focus-visible{outline:3px solid #2780b5;outline-offset:3px;border-radius:4px}
.ais-desktop-explorer .ais-card>.ais-card-body{grid-column:2;grid-row:1;padding:0;min-width:0;max-width:100%}
.ais-desktop-explorer .ais-card>.ais-symbol{grid-column:1;grid-row:1;margin:0;display:grid;place-items:center;width:76px;height:76px;border-radius:10px;background:#eef3f8;color:var(--card-accent)}
.ais-desktop-explorer .ais-ship-card>.ais-symbol{display:none}
.ais-desktop-explorer .ais-card>.ais-photo,.ais-desktop-explorer .ais-card>.ais-company-logo{grid-column:1;grid-row:1;width:76px;height:76px;max-width:76px;margin:0;border-radius:10px;overflow:hidden;min-width:0;background:#edf3f7;object-fit:contain}
.ais-desktop-explorer .ais-card .ais-main-photo{height:100%;width:100%;object-fit:cover}
.ais-desktop-explorer .ais-card .ais-photo-empty{display:grid;place-items:center;height:100%;width:100%;padding:0;background:linear-gradient(145deg,#edf3f8,#dae6ee)}
.ais-desktop-explorer .ais-card .ais-photo-empty .ais-symbol{display:grid;place-items:center;margin:0;width:38px;height:38px;background:none;color:#3a5c74}
.ais-desktop-explorer .ais-card .ais-photo-overlay,.ais-desktop-explorer .ais-card .ais-credit,.ais-desktop-explorer .ais-card .ais-watermark,.ais-desktop-explorer .ais-card>.ais-photo>.ais-upload-link{display:none}
.ais-desktop-explorer .ais-card .ais-photo-next{right:2px;bottom:2px;width:24px;height:24px;min-width:24px;min-height:24px}
.ais-desktop-explorer .ais-category-label{display:block;font-size:9px;letter-spacing:.45px;font-weight:750;text-transform:uppercase;color:var(--card-accent);line-height:1.45;margin:0 0 4px}
.ais-desktop-explorer .ais-card .ais-ship-title,.ais-desktop-explorer .ais-card .ais-company-title{display:block;margin:0 0 6px;padding:0;border:0;background:none;color:var(--ink);font-size:16px;font-weight:750;line-height:1.25;text-align:left;max-width:100%;white-space:normal;text-decoration:none}
.ais-desktop-explorer .ais-card .ais-specs{font-size:11px;line-height:1.5;margin:0 0 4px;color:#496171}
.ais-desktop-explorer .ais-card .ais-identifiers{font-size:10px;line-height:1.45;margin:0 0 4px;color:#6c7d88}
.ais-desktop-explorer .ais-card .ais-position{font-size:10px;line-height:1.45;margin:5px 0 8px;color:#75838e}
.ais-desktop-explorer .ais-card .ais-position.has-position{color:#177477}
.ais-desktop-explorer .ais-card-primary{display:inline-flex;align-items:center;min-height:30px;padding:5px 0;font-size:11px;font-weight:750;line-height:1.4;color:var(--card-accent);text-decoration:none}
.ais-desktop-explorer .ais-card-primary:hover{text-decoration:underline}
.ais-desktop-explorer .ais-card .ais-sale-label,.ais-desktop-explorer .ais-card .ais-work-label,.ais-desktop-explorer .ais-card .ais-partner-badge{display:inline-block;padding:3px 6px;margin:0 3px 5px 0;border-radius:5px;font-size:9px;font-weight:700;line-height:1.4}
.ais-desktop-explorer .ais-card .ais-sale-label{background:#fcf2dc;color:#886019}
.ais-desktop-explorer .ais-card .ais-work-label{background:#f1eafa;color:#7043a1}
.ais-desktop-explorer .ais-work-card{--card-accent:#7646a4}
.ais-desktop-explorer .ais-work-card>.ais-symbol{background:#f2ebfa}
.ais-desktop-explorer .ais-work-card .ais-category-label{background:none;padding:0;margin-bottom:5px}
.ais-desktop-explorer .ais-company-card{--card-accent:#176c70}
.ais-desktop-explorer .ais-company-card>.ais-symbol{background:#eaf5f2}
.ais-desktop-explorer .ais-sale-card{--card-accent:#a57620}
.ais-desktop-explorer .ais-card .ais-card-tools{padding:6px 0 0;margin:3px 0 0;border:0;border-top:1px solid #edf0f3;border-radius:0}
.ais-desktop-explorer .ais-card .ais-card-tools summary{margin:0;padding:0;min-height:24px;font-size:10px;color:#647b8b;line-height:24px;font-weight:600}
.ais-desktop-explorer .ais-card .ais-card-tools .ais-card-top{display:flex;flex-wrap:wrap;margin-top:8px}
.ais-desktop-explorer .ais-card .ais-card-tools .ais-card-actions{display:flex;flex-wrap:wrap;gap:6px}
.ais-desktop-explorer .ais-card .ais-card-tools a{font-size:11px}
.ais-desktop-explorer .ais-popup-rich,.ais-desktop-explorer .ais-company-popup{color:var(--ink)}
.ais-rich-popup .leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 8px 30px #132b4326}
@media(min-width:761px){
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));align-content:start;align-items:start;gap:14px;padding:16px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card{grid-template-columns:112px minmax(0,1fr);padding:18px!important;gap:16px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card>.ais-photo,.ais-desktop-explorer .ais-workspace[data-view=list] .ais-card>.ais-symbol,.ais-desktop-explorer .ais-workspace[data-view=list] .ais-card>.ais-company-logo{width:112px;max-width:112px;height:112px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card .ais-ship-title,.ais-desktop-explorer .ais-workspace[data-view=list] .ais-card .ais-company-title{font-size:18px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card .ais-specs{font-size:12px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-load-more{grid-column:1/-1}
}
@media(max-width:760px){
 .ais-desktop-explorer .ais-results{padding:8px;gap:9px}
 .ais-desktop-explorer .ais-card{grid-template-columns:64px minmax(0,1fr);gap:11px;padding:12px!important}
 .ais-desktop-explorer .ais-card>.ais-photo,.ais-desktop-explorer .ais-card>.ais-symbol,.ais-desktop-explorer .ais-card>.ais-company-logo{width:64px;height:64px;max-width:64px}
 .ais-desktop-explorer .ais-card .ais-ship-title,.ais-desktop-explorer .ais-card .ais-company-title{font-size:16px}
 .ais-desktop-explorer .ais-card-primary,.ais-desktop-explorer .ais-card .ais-card-tools summary{min-height:36px;display:inline-flex;align-items:center}
}
@media(prefers-reduced-motion:reduce){.ais-desktop-explorer .ais-card{transition:none}}

.ais-desktop-explorer .ais-work-linked-card{--card-accent:#7646a4}

.ais-desktop-explorer .ais-background-control{background:white;border:1px solid #d3dfe5;border-radius:7px;box-shadow:0 2px 9px #132b431a;clear:both;max-width:240px}
.ais-desktop-explorer .ais-background-control .leaflet-control-layers-toggle{width:auto;height:auto;min-height:36px;padding:9px 12px;background:none;color:var(--ink);font:700 12px sans-serif;text-decoration:none}
.ais-desktop-explorer .ais-background-control.leaflet-control-layers-expanded{padding:10px 12px}
.ais-desktop-explorer .ais-background-control label{font-size:12px;line-height:1.5;margin:5px 0;color:var(--ink)}
.ais-desktop-explorer .ais-background-control label small{display:block;font-size:10px;font-weight:400;color:#657a88;margin-left:21px}
.ais-desktop-explorer .ais-background-control input[type=radio]{width:14px;height:14px;min-height:0;min-width:0;vertical-align:middle;margin:0 4px 0 0}
.ais-desktop-explorer .ais-background-note{font:10px/1.45 sans-serif;color:#607584;max-width:210px;margin:6px 0 0;white-space:normal}
.ais-desktop-explorer .ais-background-note:empty{display:none}

.ais-desktop-explorer .ais-company-add{background:#c8a24d;color:#132b43;border-color:#b59141}

/* Mobile explorer toolbar and prominent existing card actions. */
.ais-desktop-explorer .ais-card-top-prominent{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;margin:0 0 8px;min-width:0}
.ais-desktop-explorer .ais-card-top-prominent .ais-card-controls{margin-left:auto;min-width:0;gap:8px}
.ais-desktop-explorer .ais-card-top-prominent .ais-shipconnect-link{min-height:40px;box-sizing:border-box;padding:8px 10px;font-size:11px}
.ais-desktop-explorer .ais-card-top-prominent .ais-favorite-heart{box-sizing:border-box;flex:0 0 40px;width:40px;height:40px;min-height:40px;margin:0}
@media(max-width:760px){
 .ais-desktop-explorer .ais-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px}
 .ais-desktop-explorer .ais-search{min-width:0;margin:0;display:block}
 .ais-desktop-explorer .ais-search>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .ais-desktop-explorer .ais-search input{box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:10px 12px;font-size:16px;line-height:22px}
 .ais-desktop-explorer #ais-filter-toggle{box-sizing:border-box;height:44px;min-height:44px;margin:0;padding:10px 12px;white-space:nowrap}
 .ais-desktop-explorer .ais-views{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;min-width:0}
 .ais-desktop-explorer .ais-views button{height:40px;min-height:40px;margin:0;padding:8px 12px}
 .ais-desktop-explorer .ais-filter-reopen{display:none!important}
 .ais-desktop-explorer .ais-results-bar>label{max-width:100%;flex-wrap:wrap;gap:8px}
 .ais-desktop-explorer .ais-results-bar select{max-width:100%;min-width:0}
 .ais-desktop-explorer .ais-card-controls-prominent{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;margin:8px 0}
 .ais-desktop-explorer .ais-card-controls-prominent .ais-shipconnect-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;max-width:calc(100% - 52px);padding:8px 12px;font-size:12px;white-space:nowrap}
 .ais-desktop-explorer .ais-card-controls-prominent .ais-favorite-heart{box-sizing:border-box;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin:0}
}
/* Content-sized list tracks must not shrink to the scroll pane's viewport height. */
@media(min-width:761px){
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-results{grid-auto-rows:max-content;grid-template-rows:none;align-content:start}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-card{height:auto;align-self:start}
}

/* Photo-led mobile ship cards; company/work cards keep their existing layout. */
.ais-desktop-explorer .ais-ship-card .ais-category-label{text-transform:none;letter-spacing:.15px}
.ais-desktop-explorer .ais-ship-card .ais-position.stale-position{color:#75838e}
@media(max-width:760px){
 .ais-desktop-explorer .ais-ship-card{grid-template-columns:minmax(0,1fr);gap:12px}
 .ais-desktop-explorer .ais-ship-card>.ais-photo{grid-column:1;grid-row:1;width:100%;max-width:none;height:auto;aspect-ratio:16/9;min-height:0;border-radius:8px}
 .ais-desktop-explorer .ais-ship-card>.ais-card-body{grid-column:1;grid-row:2;padding:0}
 .ais-desktop-explorer .ais-ship-card>.ais-photo .ais-main-photo{width:100%;height:100%;object-fit:cover;object-position:center}
 .ais-desktop-explorer .ais-ship-card>.ais-photo .ais-photo-empty{position:absolute;inset:0;aspect-ratio:16/9}
 .ais-desktop-explorer .ais-ship-card>.ais-photo .ais-photo-overlay{display:flex}
 .ais-desktop-explorer .ais-ship-card>.ais-photo .ais-credit,.ais-desktop-explorer .ais-ship-card>.ais-photo .ais-watermark{display:block}
 .ais-desktop-explorer .ais-ship-card>.ais-photo .ais-photo-next{width:44px;height:44px;min-width:44px;min-height:44px;right:8px;bottom:auto;top:50%}
}
@media(min-width:761px){
 .ais-desktop-explorer .ais-ship-card{grid-template-columns:96px minmax(0,1fr)}
 .ais-desktop-explorer .ais-ship-card>.ais-photo{width:96px;max-width:96px;height:80px}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-ship-card{grid-template-columns:120px minmax(0,1fr)}
 .ais-desktop-explorer .ais-workspace[data-view=list] .ais-ship-card>.ais-photo{width:120px;max-width:120px;height:90px}
}

/* Compact vessel cards reuse the existing Ship2Base primary/gold/favorite components. */
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card{grid-template-columns:clamp(112px,40%,160px) minmax(0,1fr);gap:8px 12px;padding:12px!important;align-items:start}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-photo{grid-column:1;grid-row:1;width:100%;max-width:160px;height:auto;aspect-ratio:4/3;min-height:0;margin:0;border-radius:8px}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-card-body{grid-column:2;grid-row:1;padding:0;min-width:0}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card .ais-main-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card .ais-photo-empty{position:absolute;inset:0;aspect-ratio:4/3}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-photo .ais-photo-overlay{display:none}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card .ais-ship-title{font-size:17px;font-weight:800;line-height:1.2;margin:0 0 5px;overflow-wrap:anywhere}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card .ais-specs{font-size:12px;line-height:1.4;margin:0 0 4px}
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card .ais-identifiers{font-size:11px;line-height:1.4;margin:0 0 4px}
.ais-desktop-explorer .ais-ship-card .ais-status-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;min-width:0;line-height:1.4;margin:2px 0 0}
.ais-desktop-explorer .ais-ship-card .ais-status-line .ais-category-label,.ais-desktop-explorer .ais-ship-card .ais-status-line .ais-position{display:inline;margin:0;font-size:11px;letter-spacing:0;line-height:1.4}
.ais-desktop-explorer .ais-ship-card>.ais-card-controls-prominent{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:0;min-width:0}
.ais-desktop-explorer .ais-ship-card>.ais-card-controls-prominent .ais-shipconnect-link{font-size:13px;font-weight:750;min-height:46px;padding:10px 16px;max-width:calc(100% - 58px);white-space:normal;text-align:center;border-radius:8px}
.ais-desktop-explorer .ais-ship-card>.ais-card-controls-prominent .ais-favorite-heart{width:48px;height:48px;min-height:48px;flex:0 0 48px;margin:0}
.ais-desktop-explorer .ais-ship-card>.ais-card-controls-prominent .ais-favorite-heart svg{width:25px;height:25px;stroke-width:1.8}
.ais-desktop-explorer .ais-ship-card>.ais-card-controls-prominent .ais-favorite-heart:not(.is-favorite) svg{fill:none}
.ais-desktop-explorer .ais-ship-card>.ais-card-primary.ais-primary{grid-column:1/-1;grid-row:3;display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;margin:0;padding:10px 12px;box-sizing:border-box;font-size:13px;line-height:1.35;border-radius:8px;background:var(--teal);border-color:var(--teal);color:var(--bs-white);text-decoration:none;text-align:center;white-space:normal}
.ais-desktop-explorer .ais-ship-card>.ais-card-primary.ais-primary:hover{filter:brightness(.94)}
.ais-desktop-explorer .ais-ship-card>.ais-card-tools{grid-column:1/-1;grid-row:4;margin:0;padding:4px 0 0;min-width:0}
.ais-desktop-explorer .ais-ship-card>.ais-card-tools>summary{display:flex;align-items:center;min-height:36px;font-size:11px}
@media(max-width:760px){.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-photo .ais-credit{font-size:6px;line-height:1.2}.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-photo .ais-watermark{max-width:24px}.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card>.ais-photo .ais-photo-next{width:36px;height:36px;min-width:36px;min-height:36px;right:2px;top:auto;bottom:2px}}

.ais-desktop-explorer .ais-ship-card>.ais-card-tools>summary::after{content:"⌄";margin-left:auto;font-size:16px}.ais-desktop-explorer .ais-ship-card>.ais-card-tools[open]>summary::after{content:"⌃"}

/* Vessel cards V3: the existing compact list, links and controls are retained. */
.ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card-v3{position:relative;grid-template-columns:clamp(96px,38%,160px) minmax(0,1fr)}
.ais-desktop-explorer .ais-ship-card-v3 .ais-ship-title{padding-right:36px;min-height:36px;text-align:left}
.ais-desktop-explorer .ais-ship-card-v3 .ais-vessel-type{font-size:12px;line-height:1.4;margin:0 0 4px;overflow-wrap:anywhere}
.ais-desktop-explorer .ais-ship-card-v3 .ais-identifiers{display:flex;flex-wrap:wrap;gap:0 8px;overflow-wrap:anywhere}
.ais-desktop-explorer .ais-ship-card-v3 .ais-upload-photo{position:absolute;right:8px;top:8px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;padding:7px;border-radius:8px;z-index:1}
.ais-desktop-explorer .ais-ship-card-v3 .ais-upload-photo svg{width:22px;height:22px}
.ais-desktop-explorer .ais-ship-card-v3>.ais-profile-actions{grid-column:1/-1;grid-row:3;display:flex;gap:8px;min-width:0}
.ais-desktop-explorer .ais-ship-card-v3 .ais-profile-actions>.ais-card-primary{display:flex;align-items:center;justify-content:center;flex:1 1 0;width:auto;min-width:0;min-height:46px;padding:9px 8px;margin:0;border-radius:8px;font-size:12px;line-height:1.35;font-weight:750;text-align:center;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.ais-desktop-explorer .ais-ship-card-v3 .ais-profile-actions>.ais-primary{background:var(--teal);border-color:var(--teal);color:var(--bs-white)}
.ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section{grid-column:1/-1;grid-row:4;min-width:0;margin:0;border-top:1px solid var(--bs-border-color)}
.ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section>summary{min-height:40px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;cursor:pointer}
.ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section>summary::after{content:"⌄";margin-left:auto}
.ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section[open]>summary::after{content:"⌃"}
.ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section .ais-mmsi-form{margin:0;min-width:0}
.ais-desktop-explorer .ais-ship-card-v3>.ais-card-tools{grid-row:5}
@media(max-width:360px){.ais-desktop-explorer .ais-ship-card-v3>.ais-profile-actions{flex-direction:column}}

/* Private fleet multiselect follows the existing Ship2Base filter palette. */
.ais-desktop-explorer .ais-fleet-filter[hidden]{display:none!important}
.ais-desktop-explorer .ais-fleet-filter{min-width:0;border:1px solid #ccded8;border-radius:10px;padding:12px;background:#f1f8f5}
.ais-desktop-explorer .ais-fleet-filter>legend{font-size:14px;font-weight:750;color:#185d59}
.ais-desktop-explorer .ais-fleet-help,.ais-desktop-explorer .ais-fleet-status{font-size:12px;line-height:1.45;color:#56716f;margin:5px 0 10px}
.ais-desktop-explorer .ais-fleet-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.ais-desktop-explorer .ais-fleet-actions button{background:white;color:#185d59;border:1px solid #a9c9bc;border-radius:7px;padding:8px;min-height:40px;font-size:12px;cursor:pointer}
.ais-desktop-explorer .ais-fleet-options{display:block;max-height:280px;overflow:auto;overscroll-behavior:contain}
.ais-desktop-explorer .ais-fleet-group{min-width:0;padding:0;margin:10px 0;border:0}
.ais-desktop-explorer .ais-fleet-group legend{font-size:12px;font-weight:750;margin:0 0 5px}
.ais-desktop-explorer .ais-fleet-choice{display:flex;flex-direction:row;align-items:center;gap:8px;min-height:44px;overflow-wrap:anywhere;font-size:13px}
.ais-desktop-explorer .ais-fleet-choice input{width:18px;min-height:18px;flex:0 0 18px;accent-color:#185d59}
.ais-desktop-explorer .ais-fleet-filter :focus-visible{outline:3px solid #185d59;outline-offset:2px}
@media(max-width:760px){.ais-desktop-explorer .ais-fleet-filter,.ais-desktop-explorer .ais-filter-connections{grid-column:1/-1}}

/* Desktop only. Append to the current live desktop.css after checking its hash.
 * Keep the existing links, favorite handler and mobile portrait interface.
 */
@media (min-width:1025px), (min-width:768px) and (orientation:landscape) {
  .ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card-v3 {
    container-type:inline-size;
  }
  .ais-desktop-explorer .ais-workspace .ais-results .ais-ship-card-v3>.ais-card-body {
    grid-row:1;
    min-height:calc(clamp(96px,38cqw,160px) * .75 + 44px);
  }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-card-controls-prominent {
    display:contents;
  }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-card-controls-prominent .ais-shipconnect-link {
    box-sizing:border-box;
    position:absolute;
    left:12px;
    top:calc(clamp(96px,38cqw,160px) * .75 + 20px);
    width:clamp(96px,38cqw,160px);
    max-width:160px;
    padding:8px 6px;
    min-height:36px;
    font-size:12px;
  }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-card-controls-prominent .ais-favorite-heart {
    position:absolute;
    top:8px;
    right:52px;
    width:36px;
    height:36px;
    min-height:36px;
    flex-basis:36px;
    padding:7px;
    z-index:1;
    border-radius:8px;
  }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-card-controls-prominent .ais-favorite-heart svg {
    width:22px;
    height:22px;
  }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-profile-actions { grid-row:2; }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-mmsi-section { grid-row:3; }
  .ais-desktop-explorer .ais-ship-card-v3>.ais-card-tools { grid-row:4; }
  .ais-desktop-explorer .ais-ship-card-v3 .ais-ship-title {
    padding-right:80px;
  }
}
