
:root{
 --ink:#18384b;--muted:#6d8390;--line:#dde8ed;--panel:#fbfdfd;
 --red:#db4949;--yellow:#dda12c;--blue:#257fa8;--green:#3d8c73;
}
*{box-sizing:border-box} html,body,#app{margin:0;width:100%;height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#eef4f6}
button,input{font:inherit}
#app{display:grid;grid-template-columns:260px 1fr;grid-template-rows:62px 1fr}
.appbar{grid-column:1/3;display:grid;grid-template-columns:260px 1fr 260px;align-items:center;background:#fff;border-bottom:1px solid var(--line);z-index:20}
.brand{display:flex;align-items:center;gap:9px;padding-left:15px}.brand-mark{width:36px;height:30px;object-fit:contain}.brand-name{font-weight:800;font-size:16px}.brand-sub{font-size:9px;color:var(--muted)}
.app-title{text-align:center;font-size:12px;font-weight:700;color:#55707e}.app-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-right:13px}
.quiet-btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 10px;color:#496675;cursor:pointer}.avatar{width:32px;height:32px;border-radius:50%;border:0;background:#e9f2f6;color:#285d76;font-weight:800}
.fleet-panel{grid-column:1;grid-row:2;padding:14px 10px 10px;background:rgba(252,254,254,.99);border-right:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}
.fleet-head{padding:0 6px 9px}.eyebrow{font-size:8px;letter-spacing:.14em;color:#8aa0aa;font-weight:800}.fleet-title{font-size:19px;font-weight:800;margin-top:2px}.fleet-count{font-size:9px;color:var(--muted);margin-top:2px}
.ownership-tabs,.status-filters{display:flex;gap:3px;padding:0 2px 8px}.owner-tab,.status-filter{border:0;background:transparent;border-radius:999px;padding:6px 8px;font-size:9px;color:#6b8390;cursor:pointer}.owner-tab.active,.status-filter.active{background:#e9f3f7;color:#225f7b;font-weight:800}.owner-tab span{opacity:.7}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px}.dot.red{background:var(--red)}.dot.yellow{background:var(--yellow)}.tri{color:#c58c1f;margin-right:3px}
.search{height:33px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 9px;margin:0 2px 8px;color:var(--ink);outline:none}
.unit-list{overflow:auto;display:flex;flex-direction:column;gap:4px;padding-right:2px}
.unit-card{padding:8px 8px;border:1px solid transparent;border-radius:9px;cursor:pointer}.unit-card:hover{background:#f4f9fb}.unit-card.selected{background:#eaf5f9;border-color:#a9cad9;box-shadow:inset 3px 0 0 var(--blue)}
.unit-top{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.unit-name{font-size:11px;font-weight:800}.unit-sub{font-size:8.4px;color:#82949e;margin-top:1px}.unit-meta{display:flex;align-items:center;justify-content:space-between;margin-top:5px;color:#70838e;font-size:8.5px}
.badge{font-size:7.5px;font-weight:900;border-radius:999px;padding:3px 5px}.badge.red{background:#fde9e9;color:#b63d3d}.badge.yellow{background:#fff3d6;color:#a66f00}.badge.attention{background:#fff5df;color:#a06d11}.monitor-chip{font-size:7px;border:1px solid #d4e1e7;border-radius:999px;padding:2px 5px;color:#728994}
.map-shell{grid-column:2;grid-row:2;position:relative;overflow:hidden}.map-shell #map{position:absolute;inset:0}
.map-top{position:absolute;top:12px;left:12px;display:flex;gap:7px;z-index:10}.map-menu,.track-quick{background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border:1px solid rgba(210,225,232,.95);border-radius:10px;box-shadow:0 7px 20px rgba(20,50,67,.08)}
.map-menu{padding:7px 10px;color:#496879;cursor:pointer}.track-quick{display:flex;align-items:center;padding:4px}.track-quick span{font-size:8px;color:#8599a3;padding:0 7px}.track-quick button{border:0;background:transparent;border-radius:7px;padding:5px 7px;font-size:8px;color:#607986;cursor:pointer}.track-quick button.active{background:#e6f1f6;color:#245f7b;font-weight:800}
.map-menu-pop{position:absolute;z-index:20;top:54px;left:12px;width:155px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 14px 35px rgba(20,50,67,.16)}.map-menu-pop.hidden{display:none}.map-menu-pop button{width:100%;border:0;background:#fff;text-align:left;padding:8px;border-radius:7px;font-size:9px;color:#496978;cursor:pointer}.map-menu-pop button:hover,.map-menu-pop button.active{background:#eef6f9;color:#225f78}.map-menu-pop hr{border:0;border-top:1px solid #e5eef2;margin:5px}
.vessel-lens{position:absolute;right:16px;bottom:16px;width:min(390px,37vw);z-index:11;background:rgba(255,255,255,.965);backdrop-filter:blur(12px);border:1px solid rgba(205,222,230,.95);border-radius:15px;box-shadow:0 18px 48px rgba(18,52,72,.16);overflow:hidden}
.lens-head{display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center;padding:12px}.vessel-photo{width:58px;height:46px;border-radius:9px;object-fit:cover;background:linear-gradient(135deg,#d8e9ef,#f7fbfc);display:flex;align-items:center;justify-content:center;color:#6e8c9b;font-size:19px}.lens-name{font-size:17px;font-weight:850}.lens-sub{font-size:8.5px;color:#78909b;margin-top:2px}.state{font-size:8px;font-weight:900;border-radius:999px;padding:5px 7px}.state.red{background:#fde9e9;color:#b83b3b}.state.yellow{background:#fff2d3;color:#a66f00}.state.attention{background:#fff3dc;color:#9d6a0c}.state.normal{background:#e8f5ef;color:#37765f}
.lens-core{border-top:1px solid #e6eef2;padding:11px 12px}.location-line{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:9px;color:#6f8590}.location-line strong{font-size:10px;color:#31596d}.normal-message{font-size:20px;font-weight:850;margin:7px 0 2px;color:#2b6e59}.normal-sub{font-size:9px;color:#718792}
.alert-message{margin-top:8px;border-radius:10px;padding:10px}.alert-message.red{background:#fff0f0;border:1px solid #f0c4c4}.alert-message.yellow{background:#fff8e8;border:1px solid #eed9a5}.alert-kicker{font-size:7px;font-weight:900;letter-spacing:.1em}.alert-title{font-size:17px;font-weight:850;margin-top:2px}.alert-detail{font-size:9px;color:#6b7f88;margin-top:2px}
.lens-actions{display:flex;gap:6px;margin-top:9px}.lens-actions button{border:1px solid #d5e3e9;background:#fff;border-radius:8px;padding:7px 9px;font-size:9px;color:#436574;cursor:pointer}.lens-actions button.primary{background:#2a789c;color:#fff;border-color:#2a789c}
.map-notice{position:absolute;left:50%;top:75px;transform:translateX(-50%) translateY(-8px);opacity:0;transition:.2s;background:#18394b;color:#fff;padding:7px 10px;border-radius:999px;font-size:9px;z-index:30}.map-notice.show{opacity:1;transform:translateX(-50%)}
.vessel-marker{width:28px;height:28px;position:relative;cursor:pointer}.marker-core{position:absolute;inset:4px;background:#fff;border:2px solid #4e7d92;border-radius:50%;box-shadow:0 3px 12px rgba(17,55,75,.24)}.boat{position:absolute;width:8px;height:15px;left:50%;top:50%;margin-left:-4px;margin-top:-7.5px;background:#315d72;clip-path:polygon(50% 0,100% 82%,50% 100%,0 82%);transform-origin:50% 50%}.vessel-marker.red .marker-core{border-color:var(--red)}.vessel-marker.yellow .marker-core{border-color:var(--yellow)}.pulse{display:none;position:absolute;inset:0;border-radius:50%;border:2px solid var(--red);animation:pulse 1.7s infinite}.vessel-marker.red .pulse{display:block}.marker-label{display:none;position:absolute;white-space:nowrap;left:32px;top:4px;background:rgba(255,255,255,.95);padding:4px 6px;border-radius:6px;font-size:8px;box-shadow:0 4px 12px rgba(20,50,70,.12)}.vessel-marker:hover .marker-label,.vessel-marker.selected .marker-label{display:block}.vessel-marker.selected{z-index:50}
@keyframes pulse{0%{transform:scale(.7);opacity:.9}70%{transform:scale(1.6);opacity:0}100%{opacity:0}}
.modal{position:fixed;inset:0;background:rgba(12,34,47,.38);display:flex;align-items:center;justify-content:center;z-index:100}.modal.hidden{display:none}.modal-card{width:min(620px,88vw);max-height:82vh;overflow:auto;background:#fff;border-radius:16px;padding:20px;box-shadow:0 24px 70px rgba(10,35,50,.3);position:relative}.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:24px;color:#69818d;cursor:pointer}.modal h2{margin:4px 0 10px}.modal p{font-size:11px;line-height:1.6;color:#5f7682}
.gf-demo{margin-top:12px;padding:12px;border:1px dashed #98b5c3;border-radius:12px;background:#f7fbfc}.gf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gf-option{border:1px solid #d9e6eb;border-radius:9px;padding:10px}.gf-option strong{display:block;font-size:10px}.gf-option span{font-size:8px;color:#7c919b}
@media(max-width:1000px){#app{grid-template-columns:225px 1fr}.appbar{grid-template-columns:225px 1fr 200px}.vessel-lens{width:350px}}

/* V5 refinement */
.map-shell{background:#07131d}
.app-title{display:flex;flex-direction:column;align-items:center}.app-title strong{font-size:16px;color:#274f64}.app-title span{font-size:8px;color:#8297a1;margin-top:3px}
.map-top{left:auto;right:12px}
.vessel-lens{right:auto;bottom:auto;left:14px;top:62px;width:min(370px,36vw)}
.vessel-lens.hidden-lens{display:none}
.home-view{background:rgba(255,255,255,.94);border:1px solid #d2e1e8;border-radius:10px;padding:7px 9px;color:#496879;cursor:pointer}

/* ===== V6 map experience ===== */
.map-shell{
 background:
 radial-gradient(circle at 12% 17%,rgba(255,255,255,.95) 0 1px,transparent 1.3px),
 radial-gradient(circle at 68% 12%,rgba(255,255,255,.7) 0 1px,transparent 1.2px),
 radial-gradient(circle at 31% 66%,rgba(255,255,255,.8) 0 1px,transparent 1.3px),
 radial-gradient(circle at 86% 74%,rgba(255,255,255,.65) 0 1px,transparent 1.1px),
 radial-gradient(circle at 54% 43%,rgba(255,255,255,.55) 0 1px,transparent 1.1px),
 #050c13;
 background-size:211px 179px,277px 241px,337px 293px,401px 347px,463px 419px,auto
}
.saved-view-pop{position:absolute;z-index:22;top:54px;right:74px;width:205px;background:#fff;border:1px solid #dce7ec;border-radius:11px;padding:7px;box-shadow:0 14px 35px rgba(20,50,67,.17)}
.saved-view-pop.hidden{display:none}.saved-view-pop .saved-head{font-size:7px;letter-spacing:.14em;color:#8ba0aa;font-weight:900;padding:6px 8px}
.saved-view-pop button{width:100%;border:0;background:#fff;text-align:left;border-radius:8px;padding:8px;cursor:pointer;color:#365d70}
.saved-view-pop button:hover{background:#eef6f9}.saved-view-pop strong{display:block;font-size:9px}.saved-view-pop span{display:block;font-size:7.5px;color:#8497a0;margin-top:2px}
.saved-view-pop hr{border:0;border-top:1px solid #e6eef2;margin:5px}

/* V9 */
.fleet-title.compact{font-size:16px;display:flex;gap:6px;align-items:baseline}
.fleet-title.compact span{font-size:9px;color:#8498a2}
.vessel-lens{width:300px;max-width:31vw;left:14px;top:14px}
.map-menu-pop{left:auto!important;right:12px!important;top:54px!important}
.maplibregl-ctrl-attrib{font-size:8px!important;background:rgba(255,255,255,.65)!important}
.v9-zoom{position:absolute;right:12px;bottom:31px;z-index:12;display:flex;flex-direction:column;background:rgba(255,255,255,.86);border:1px solid #d5e2e8;border-radius:8px;overflow:hidden}
.v9-zoom button{width:29px;height:27px;border:0;background:transparent;color:#4d6977;font-size:16px;cursor:pointer}
.v9-zoom button+button{border-top:1px solid #dbe6eb}
.north-reset{position:absolute;right:12px;bottom:120px;z-index:12;width:38px;height:45px;border:1px solid #c8d8e1;border-radius:10px;background:rgba(255,255,255,.94);box-shadow:0 4px 14px rgba(18,48,65,.18);color:#284c62;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;cursor:pointer;transition:opacity .2s,transform .2s,background .2s}
.north-reset:hover{background:#fff;transform:translateY(-1px)}
.north-reset.hidden{opacity:0;pointer-events:none;transform:translateY(5px)}
.north-letter{font-size:11px;font-weight:900;line-height:1}
.north-arrow{font-size:15px;line-height:1;transform:rotate(var(--north-rotation,0deg));transform-origin:center;transition:transform .18s ease}
.map-transition-veil{position:absolute;inset:0;z-index:9;pointer-events:none;background:#050c13;opacity:0;transition:opacity .34s ease}
.map-transition-veil.active{opacity:1}
.demo-live-control{position:absolute;right:265px;top:14px;z-index:12;display:flex;align-items:center;gap:7px;padding:6px 7px 6px 9px;border:1px solid rgba(194,213,223,.92);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 5px 18px rgba(12,38,52,.16);color:#28495d;font-size:10px;letter-spacing:.06em}
.demo-live-dot{width:8px;height:8px;border-radius:50%;background:#1faa65;box-shadow:0 0 0 4px rgba(31,170,101,.14);animation:demoLivePulse 2s ease-out infinite}
.demo-live-control.paused .demo-live-dot{background:#899ba5;box-shadow:none;animation:none}
.demo-live-control button{border:1px solid #c9d9e2;border-radius:999px;background:#f7fafb;color:#31566b;padding:4px 8px;font:800 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;cursor:pointer;letter-spacing:0}
.demo-live-control button:hover{background:#eaf2f6}
@media(max-width:1050px){.demo-live-control{right:240px}}
@keyframes demoLivePulse{0%{box-shadow:0 0 0 0 rgba(31,170,101,.34)}70%,100%{box-shadow:0 0 0 7px rgba(31,170,101,0)}}
.demo-motion-panel{position:absolute;left:50%;top:59px;transform:translateX(-50%);z-index:13;width:310px;padding:10px 12px;border:1px solid #efb4ae;border-left:5px solid #d9483f;border-radius:11px;background:rgba(255,252,251,.97);box-shadow:0 10px 30px rgba(76,25,20,.2);color:#263f4d}
.demo-motion-panel.hidden{display:none}.demo-motion-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.demo-motion-panel>div:first-child span{font-size:8px;font-weight:900;letter-spacing:.09em;color:#a63831}.demo-motion-panel>div:first-child strong{font-size:9px;color:#c23830}
.demo-motion-reading{display:grid;grid-template-columns:38px 45px 1fr;gap:7px;align-items:center;margin-top:5px}.demo-motion-reading span{font-size:10px;font-weight:800}.demo-motion-reading strong{font-size:12px;text-align:right}.demo-motion-reading i{height:7px;border-radius:99px;background:#e5ecef;overflow:hidden}.demo-motion-reading b{display:block;width:0;height:100%;border-radius:inherit;background:#d9483f;transition:width .2s linear}

/* ===== V9.4 - stable branch from V9 ===== */
.map-btn-right{order:99;margin-left:auto}
.map-menu-pop{left:auto!important;right:10px!important;top:52px!important;min-width:170px!important;width:auto!important;max-width:230px!important}
.vessel-lens{width:268px!important;max-width:29vw!important}
.v9-zoom{right:12px!important;bottom:54px!important}
.regional-marker-overlay.regional-reveal-quick,.track-overlay.regional-reveal-quick{transition:opacity .7s ease!important}
.dom-vessel-marker.locating::after{content:"";position:absolute;inset:-7px;border:2px solid rgba(70,127,169,.7);border-radius:50%;animation:v1141Locate 1.25s ease-out infinite;pointer-events:none}
@keyframes v1141Locate{0%{transform:scale(.7);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.maplibregl-ctrl-attrib{max-width:205px}

/* ===== V10 realistic fleet + persona switching ===== */
.account-wrap{position:relative}
.account-menu{position:absolute;right:0;top:42px;width:260px;background:#fff;border:1px solid #d9e6eb;border-radius:12px;padding:7px;box-shadow:0 16px 42px rgba(20,50,67,.18);z-index:80}
.account-menu.hidden{display:none}
.account-head{padding:8px 9px 10px;border-bottom:1px solid #e8eff2;margin-bottom:5px}
.account-head strong{display:block;font-size:11px;color:#294f62}.account-head span{display:block;font-size:8px;color:#80949e;margin-top:2px}
.account-menu button{width:100%;border:0;background:#fff;text-align:left;border-radius:8px;padding:9px;cursor:pointer;color:#365d70}
.account-menu button:hover{background:#eef6f9}.account-menu button strong{display:block;font-size:9px}
.account-menu button span{display:block;font-size:7.6px;color:#8497a0;margin-top:2px;line-height:1.35}
.account-menu hr{border:0;border-top:1px solid #e6eef2;margin:5px}.account-menu .muted-account{opacity:.72}

/* ===== V10.5 surgical additions on V10.2 baseline ===== */
.relationship-block{margin:0}
.relationship-header{position:sticky;top:0;z-index:5;padding:6px 8px;font-size:8.5px;font-weight:750;color:#365d70;border-top:1px solid #e3ecef;border-bottom:1px solid #e3ecef;background:#f7fafb}
.relationship-header span{font-weight:600;color:#82949e;margin-left:3px}
.monitored-block{background:#f3f6f7}
.monitored-block .relationship-header{background:#eaf0f2}
.monitored-block .unit-card{border-radius:0}

.vessel-marker.selected .marker-core{background:#1684c7;border-color:#075d92}
.vessel-marker.selected .boat{background:#fff}
.selection-locate{display:none;position:absolute;inset:1px;border-radius:50%;border:2px solid #1684c7;pointer-events:none;z-index:0}
.vessel-marker.locating .selection-locate{display:block;animation:locateSelected 1s ease-out 3}
@keyframes locateSelected{0%{transform:scale(.8);opacity:1}100%{transform:scale(2.7);opacity:0}}
.vessel-marker.show-name .marker-label{display:block}
.vessel-marker.selected .marker-label{border:1px solid #1684c7;color:#075d92;font-weight:700}
.map-name-option{display:flex;align-items:center;gap:7px;padding:7px 10px;font-size:8.5px;color:#456575;white-space:nowrap;cursor:pointer}
.map-name-option input{margin:0}

/* ===== V10.9 globe beacons are rendered as MapLibre geographic layers ===== */
/* No HTML/DOM beacon positioning is used at globe scale. */

/* ===== V10.10 regional Red Alert beacon rings ===== */
.regional-red-ring{
  display:none;
  position:absolute;
  left:7px;
  top:7px;
  width:14px;
  height:14px;
  border:1.6px solid rgba(255,75,67,.88);
  border-radius:50%;
  opacity:0;
  pointer-events:none;
  z-index:0;
  transform-origin:center center;
}
.vessel-marker.red .regional-red-ring{display:block}
.vessel-marker.red .rr1{animation:regionalRedBurst 3.0s ease-out infinite}
.vessel-marker.red .rr2{animation:regionalRedBurst 3.0s ease-out .60s infinite}
.vessel-marker.red .rr3{animation:regionalRedBurst 3.0s ease-out 1.20s infinite}
@keyframes regionalRedBurst{
  0%{transform:scale(.55);opacity:0}
  10%{opacity:.92}
  72%{opacity:.30}
  100%{transform:scale(3.9);opacity:0}
}
/* Keep the existing selected-vessel blue core fully independent of Red severity. */
.vessel-marker.red.selected .marker-core{
  background:#1684c7;
  border-color:#075d92;
}
.vessel-marker.red.selected .boat{background:#fff}

/* ===== V10.11 Alert detail / transition refinement ===== */
.modal-card{max-width:720px}
.alert-focus{display:flex;gap:18px;align-items:stretch;margin-bottom:14px}
.alert-now{min-width:150px;padding:14px 16px;border:1px solid #ead0cc;border-radius:14px;background:#fff7f5;display:flex;flex-direction:column}
.alert-now span,.detail-label{font-size:10px;font-weight:800;letter-spacing:.08em;color:#6c7d8d}
.alert-now strong{font-size:32px;line-height:1.05;margin:4px 0;color:#9d302a}
.alert-now small{font-size:10px;color:#718292}
.alert-summary{flex:1;padding:14px 16px;border-radius:14px;background:#f5f8fa;display:flex;flex-direction:column;justify-content:center;gap:4px}
.alert-summary strong{font-size:16px;color:#1e3448}.alert-summary span{font-size:12px;color:#64788a;line-height:1.45}
.list-visual{padding:8px 4px 12px}
.horizon{height:42px;border-bottom:2px solid #9cb0bf;position:relative;margin:0 70px}
.boat-heel{position:absolute;left:50%;bottom:-5px;font-size:27px;color:#287eaf;transform:translateX(-50%) rotate(5.2deg);transform-origin:50% 80%}
.heel-caption{text-align:center;font-size:11px;color:#65798a;margin-top:8px}
.trend-card{border:1px solid #dbe4e9;border-radius:14px;padding:12px 14px 8px;background:white}
.trend-svg{width:100%;height:150px;overflow:visible}
.trend-svg .axis{stroke:#b8c5ce;stroke-width:1}.trend-svg .th{stroke:#d5bd61;stroke-width:1;stroke-dasharray:5 5}.trend-svg .th.r{stroke:#d7756d}
.trend-svg text{font-size:10px;fill:#738594;text-anchor:end}.trend-line{fill:none;stroke:#397fa7;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.trend-svg .dot{stroke:white;stroke-width:2}.trend-svg .dot.yellow{fill:#d3a824}.trend-svg .dot.red{fill:#c94c43}
.trend-times{display:flex;justify-content:space-between;font-size:10px;color:#778896;margin:0 10px 2px}
.event-strip{margin:12px 0;border-top:1px solid #e2e8ec}
.event-strip div{display:grid;grid-template-columns:78px 1fr;gap:8px;padding:8px 2px;border-bottom:1px solid #edf1f3;font-size:11px}
.event-strip b{color:#324a5e}.event-strip span{color:#65798a}
.alert-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;color:#667b8d;padding-top:4px}

/* ===== V10.15 selected vessel / Alert operations ===== */
.lens-context{display:flex;justify-content:space-between;margin:-2px 0 8px;font-size:8px;color:#80919c}
.lens-actions .responding-on{background:#eef6fb;border-color:#8fbdd6;color:#236889}
.alert-ops{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.ops-card{border:1px solid #dfe7eb;border-radius:13px;padding:12px 14px;background:#fff;display:flex;flex-direction:column;gap:5px}
.ops-card strong{font-size:13px;color:#253c4f}.ops-card span{font-size:10.5px;color:#6a7e8e;line-height:1.45}
.ops-card.response-card.active{border-color:#9bc6db;background:#f3f9fc}
.text-action{align-self:flex-start;border:0;background:none!important;padding:2px 0!important;margin-top:2px;color:#347ba1!important;font-size:10px!important;box-shadow:none!important}
.secondary{background:#fff;border:1px solid #bccbd3;color:#466474;border-radius:8px;padding:7px 10px}
.alert-history-note{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 2px 0;font-size:10.5px;color:#6b7f8f}

/* ===== V10.16 compact Alert detail + in-context settings ===== */
.modal-card{max-height:88vh}
.event-details{margin:10px 0 8px;border:1px solid #e2e8ec;border-radius:11px;background:#fbfcfd}
.event-details summary{cursor:pointer;list-style:none;padding:9px 12px;font-size:10.5px;font-weight:700;color:#40586a;display:flex;justify-content:space-between;align-items:center}
.event-details summary::-webkit-details-marker{display:none}.event-details summary span{font-weight:500;color:#3b7fa4}
.event-details[open] summary span{font-size:0}.event-details[open] summary span:after{content:'Hide details';font-size:10.5px}
.event-details .event-strip{margin:0;border-top:1px solid #e7ecef;padding:0 10px}
.alert-history-note{padding:6px 2px 0}.alert-history-note>span{max-width:72%;line-height:1.4}
.compact-setting{white-space:nowrap;padding:6px 9px!important;font-size:10px!important}
.settings-intro{display:flex;flex-direction:column;gap:4px;background:#f5f8fa;border-radius:12px;padding:13px 14px;margin-bottom:12px}.settings-intro strong{font-size:14px;color:#263e50}.settings-intro span{font-size:10.5px;color:#6b7e8e}
.setting-toggle{display:flex;justify-content:space-between;align-items:center;border:1px solid #dfe7eb;border-radius:12px;padding:12px 14px;margin-bottom:12px}.setting-toggle>div{display:flex;flex-direction:column;gap:3px}.setting-toggle strong{font-size:12px}.setting-toggle span{font-size:10px;color:#708290}.setting-toggle input{width:18px;height:18px}
.settings-section{border:1px solid #dfe7eb;border-radius:12px;padding:12px 14px;margin:10px 0}.threshold-row{display:grid;grid-template-columns:70px 1fr 110px;gap:8px;align-items:center;margin-top:8px}.threshold-row input,.threshold-row select,.setting-line select{border:1px solid #cfdbe2;border-radius:8px;padding:7px 8px;background:#fff;color:#314c5e}.threshold-row span{font-size:10.5px;color:#718493}.setting-line{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;color:#40586a}.settings-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
@media (min-height:760px){.trend-svg{height:135px}.list-visual{padding-bottom:8px}.alert-ops{margin:10px 0}.ops-card{padding:10px 12px}}


/* V10.17 — directional vessel-attitude alert graphic */
.attitude-visual{
  display:grid;
  grid-template-columns:1.05fr 180px .9fr;
  align-items:center;
  gap:22px;
  padding:16px 18px;
  margin:14px 0;
  border:1px solid #dbe3ea;
  border-radius:16px;
  background:#fff;
}
.attitude-copy{display:flex;flex-direction:column;gap:4px}
.attitude-copy strong{font-size:18px;color:#20364b}
.attitude-copy span{font-size:12px;color:#6c7d8e}
.attitude-dial{
  width:150px;height:150px;border-radius:50%;position:relative;margin:auto;
  border:1px solid #cdd9e4;
  background:
    linear-gradient(45deg,transparent 49.5%,#e2e9ef 50%,transparent 50.5%),
    linear-gradient(-45deg,transparent 49.5%,#e2e9ef 50%,transparent 50.5%),
    linear-gradient(90deg,transparent 49.5%,#e2e9ef 50%,transparent 50.5%),
    linear-gradient(0deg,transparent 49.5%,#e2e9ef 50%,transparent 50.5%),
    radial-gradient(circle,#f8fbfd 0 55%,#eef4f7 56% 100%);
  overflow:visible;
}
.attitude-dir{position:absolute;font-size:8px;font-weight:700;color:#8494a4;letter-spacing:.05em}
.attitude-dir.bow{top:-14px;left:50%;transform:translateX(-50%)}
.attitude-dir.stern{bottom:-14px;left:50%;transform:translateX(-50%)}
.attitude-dir.port{left:-26px;top:50%;transform:translateY(-50%)}
.attitude-dir.starboard{right:-28px;top:50%;transform:translateY(-50%)}
.sector-pa{
  position:absolute;inset:7px;border-radius:50%;
  background:conic-gradient(from 180deg,rgba(181,72,52,.22) 0deg 45deg,transparent 45deg 360deg);
}
.boat-top{position:absolute;left:50%;top:50%;width:34px;height:76px;transform:translate(-50%,-50%);filter:drop-shadow(0 2px 2px rgba(20,45,65,.18))}
.boat-bow{
  position:absolute;top:0;left:4px;width:26px;height:24px;background:#477aa9;
  clip-path:polygon(50% 0,100% 100%,0 100%);
}
.boat-body{position:absolute;top:20px;left:4px;width:26px;height:43px;background:#477aa9;border-radius:4px 4px 7px 7px}
.boat-stern{position:absolute;bottom:0;left:7px;width:20px;height:14px;background:#477aa9;border-radius:0 0 6px 6px}
.low-vector{
  position:absolute;left:50%;top:50%;width:50px;height:3px;background:#b54834;
  transform-origin:0 50%;transform:rotate(135deg);
  border-radius:3px;
}
.low-vector:after{
  content:"";position:absolute;right:-2px;top:-4px;border-left:8px solid #b54834;
  border-top:5px solid transparent;border-bottom:5px solid transparent;
}
.low-dot{
  position:absolute;left:24px;bottom:24px;width:12px;height:12px;border-radius:50%;
  background:#b54834;box-shadow:0 0 0 5px rgba(181,72,52,.13);
  animation:attitudePulse 1.8s ease-out infinite;
}
@keyframes attitudePulse{
  0%{box-shadow:0 0 0 0 rgba(181,72,52,.30)}
  70%{box-shadow:0 0 0 12px rgba(181,72,52,0)}
  100%{box-shadow:0 0 0 0 rgba(181,72,52,0)}
}





@media(max-width:850px){
  .attitude-visual{grid-template-columns:1fr 150px;gap:14px}
  
}





/* ===== V10.20 orientation-aware vessel attitude graphic ===== */
.heel-gauge{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:188px;padding:2px 4px}
.gauge-title{font-size:9px;font-weight:800;letter-spacing:.08em;color:#6f8290}
.attitude-profile{position:relative;width:180px;height:96px}
.attitude-svg{display:block;width:180px;height:96px;overflow:visible}
.water-svg{stroke:#4e9bc5;stroke-width:2.15;stroke-linecap:round}
.boat-hull-svg{fill:#dfe8ee;stroke:#294f69;stroke-width:2.2;stroke-linejoin:round}
.boat-deck-svg{fill:none;stroke:#294f69;stroke-width:3.2;stroke-linecap:round}
.boat-cabin-svg{fill:#d4e1e8;stroke:#294f69;stroke-width:2}
.wedge-fill{fill:rgba(181,74,47,.18);pointer-events:none}
.wedge-angle{stroke:#b54a2f;stroke-width:2.4;stroke-linecap:round;pointer-events:none}
.profile-mode{font-size:9px;color:#647988;margin-top:-4px}
.attitude-caption{font-size:9px;color:#768895}

/* V10.24: keep the list triangle visible over the vessel, like the direction indicator */
.boat-svg{opacity:.98}

/* ===== V10.25 alert hierarchy refinements ===== */
.latest-reading{display:block;font-size:34px;line-height:1;color:#9d452c;margin:3px 0 8px}
.wedge-value{font:700 12px system-ui,-apple-system,"Segoe UI",sans-serif;fill:#a63f2a}

/* ===== V10.26 explicit severity triangle ===== */
.attitude-svg.v1026{width:180px;height:100px;overflow:visible}
.attitude-svg.v1026 .severity-triangle{
  fill:rgba(181,74,47,.20);
  stroke:none;
}
.attitude-svg.v1026 .severity-angle{
  stroke:#b54a2f;
  stroke-width:2.5;
  stroke-linecap:round;
}
.attitude-svg.v1026 .severity-value{
  fill:#a33f2b;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:12px;
  font-weight:800;
}

/* ===== V10.27 fixed-length mirrored severity wedge ===== */
.attitude-svg.v1027{width:180px;height:100px;overflow:visible}
.attitude-svg.v1027 .severity-triangle{
 fill:rgba(181,74,47,.18);
 stroke:none;
}
.attitude-svg.v1027 .severity-angle{
 stroke:#b54a2f;
 stroke-width:2.4;
 stroke-linecap:round;
}
.attitude-svg.v1027 .severity-value{
 fill:#a33f2b;
 font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
 font-size:12px;
 font-weight:800;
}

/* ===== V10.29 style-independent track overlay ===== */
.map-shell{position:relative}
.track-overlay{
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
 pointer-events:none;
 overflow:hidden;
 z-index:4;
}
.dom-track{
 fill:none;
 vector-effect:non-scaling-stroke;
 stroke-linecap:round;
 stroke-linejoin:round;
}
.dom-track.context{
 stroke:#7a6078;
 stroke-width:2.2;
 stroke-opacity:.50;
 filter:drop-shadow(0 0 1px rgba(255,255,255,.72));
}
.dom-track.selected{
 stroke:#6f2f68;
 stroke-width:5;
 stroke-opacity:.98;
 filter:drop-shadow(0 1px 1px rgba(255,255,255,.75));
}

/* ===== V10.30 style-independent regional vessel overlay ===== */
.regional-marker-overlay{
 position:absolute;
 inset:0;
 z-index:6;
 pointer-events:none;
 overflow:hidden;
}
.dom-vessel-marker{
 position:absolute;
 width:30px;
 height:30px;
 margin:-15px 0 0 -15px;
 padding:0;
 border:0;
 background:transparent;
 pointer-events:auto;
 cursor:pointer;
 overflow:visible;
}
.dom-vessel-core{
 position:absolute;
 inset:4px;
 border:2px solid #4e7d92;
 border-radius:50%;
 background:#fff;
 box-shadow:0 3px 12px rgba(17,55,75,.24);
}
.dom-vessel-marker.red .dom-vessel-core{border-color:#b94b3b}
.dom-vessel-marker.yellow .dom-vessel-core{border-color:#c49b21}
.dom-vessel-marker.selected .dom-vessel-core{
 background:#1684c7;
 border-color:#075d92;
}
.dom-vessel-boat{
 position:absolute;
 width:8px;
 height:15px;
 left:50%;
 top:50%;
 margin-left:-4px;
 margin-top:-7.5px;
 background:#315d72;
 clip-path:polygon(50% 0,100% 82%,50% 100%,0 82%);
 transform-origin:50% 50%;
}
.dom-vessel-marker.selected .dom-vessel-boat{background:#fff}
.dom-vessel-label{
 position:absolute;
 left:32px;
 top:4px;
 white-space:nowrap;
 background:rgba(255,255,255,.96);
 color:#315b70;
 border-radius:6px;
 padding:4px 7px;
 font-size:8px;
 box-shadow:0 4px 12px rgba(20,50,70,.14);
}
.dom-vessel-marker.selected .dom-vessel-label{
 border:1px solid #1684c7;
 color:#075d92;
 font-weight:700;
}
.dom-vessel-pulse{
 display:none;
 position:absolute;
 inset:0;
 border:2px solid #b94b3b;
 border-radius:50%;
 animation:pulse 1.7s infinite;
}
.dom-vessel-marker.red .dom-vessel-pulse{display:block}

/* ===== V10.31 geofence map workspace ===== */
.geofence-overlay{
 position:absolute;inset:0;width:100%;height:100%;
 z-index:5;pointer-events:none;overflow:hidden;
}
.geofence-overlay .gf-existing{
 fill:rgba(57,126,154,.06);
 stroke:#4f8ca5;stroke-width:2;stroke-dasharray:6 5;
 vector-effect:non-scaling-stroke;
}
.geofence-overlay .gf-existing.anchor{
 fill:rgba(191,151,38,.08);
 stroke:#b58a1e;
}
.geofence-overlay .gf-draft{
 vector-effect:non-scaling-stroke;
 stroke-width:2.5;
}
.geofence-overlay .gf-draft.yellow{
 fill:rgba(197,156,31,.13);
 stroke:#c29a20;
}
.geofence-overlay .gf-draft.red{
 fill:rgba(181,74,47,.12);
 stroke:#b54a2f;
}
.geofence-overlay .gf-handle{
 fill:#fff;stroke:#315d72;stroke-width:2;
 vector-effect:non-scaling-stroke;
}
.geofence-panel{
 position:absolute;left:14px;top:62px;width:300px;z-index:18;
 background:rgba(255,255,255,.97);border:1px solid #d5e2e8;border-radius:14px;
 box-shadow:0 16px 40px rgba(20,50,67,.18);padding:14px;
 color:#27485a;
}
.geofence-panel.hidden{display:none}
.geofence-panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.geofence-panel-head strong{font-size:18px;color:#203f51}
.panel-kicker,.gf-section-label{font-size:8px;letter-spacing:.13em;font-weight:900;color:#8197a2}
.panel-close{border:0;background:transparent;font-size:22px;color:#738993;cursor:pointer;line-height:1}
.panel-help{font-size:10px;line-height:1.45;color:#667d88;margin:7px 0 12px}
.primary-action,.secondary-action,.text-action,.gf-choice,.gf-row{font-family:inherit}
.primary-action{
 border:0;background:#2f789a;color:white;border-radius:9px;padding:9px 11px;
 font-size:10px;font-weight:700;cursor:pointer;
}
.secondary-action{border:1px solid #d3e0e6;background:#fff;color:#456575;border-radius:9px;padding:9px 11px;cursor:pointer}
.text-action{border:0;background:transparent;color:#377594;padding:2px 0 8px;cursor:pointer;font-size:9px}
.gf-section-label{margin:14px 0 6px}
.gf-row{
 width:100%;display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;
 border:0;background:#fff;border-radius:9px;padding:9px 7px;text-align:left;cursor:pointer;
}
.gf-row:hover{background:#f3f8fa}
.gf-row strong{display:block;font-size:10px;color:#294c5e}
.gf-row small{display:block;font-size:8px;color:#7d919b;margin-top:2px}
.gf-swatch{width:9px;height:9px;border-radius:50%;background:#4f8ca5}
.gf-swatch.anchor{background:#b58a1e}
.gf-status{font-size:8px;color:#557a67;background:#eaf3ed;padding:3px 5px;border-radius:6px}
.gf-edit-title{font-size:15px;font-weight:800;color:#27485a;margin-top:4px}
.gf-field{display:flex;flex-direction:column;gap:5px;font-size:9px;font-weight:800;color:#607986;margin:10px 0}
.gf-field input{border:1px solid #ccdce4;border-radius:8px;padding:8px;font:inherit;color:#27485a}
.gf-radius-row{display:flex;justify-content:space-between;align-items:center;font-size:9px;margin-top:10px}
.gf-radius-row strong{font-size:11px;color:#2f6f8e}
#gfRadius{width:100%;margin:7px 0 3px}
.gf-choice-row{display:flex;gap:6px}
.gf-choice{
 flex:1;border:1px solid #d3e1e7;background:#fff;color:#56717e;border-radius:8px;padding:8px 7px;
 font-size:9px;cursor:pointer;
}
.gf-choice.active{border-color:#3d7f9d;background:#eaf4f8;color:#285e78;font-weight:800}
.gf-choice.yellow-choice.active{border-color:#c59e27;background:#fff8dd;color:#8b6c08}
.gf-choice.red-choice.active{border-color:#b85a49;background:#fff0ec;color:#9b3f31}
.gf-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:16px}

/* ===== V10.32 geofence usability refinements ===== */
.geofence-panel{
 top:14px;
 left:14px;
 max-height:calc(100% - 28px);
 overflow-y:auto;
 scrollbar-width:thin;
}
.gf-active-list{
 max-height:176px; /* approximately four compact rows before scrolling */
 overflow-y:auto;
 padding-right:2px;
 scrollbar-width:thin;
}
.geofence-overlay .gf-draft.yellow{
 fill:rgba(245,196,0,.18);
 stroke:#e0ad00;
 stroke-width:3;
}
.geofence-overlay .gf-draft.red{
 fill:rgba(220,48,39,.16);
 stroke:#d43127;
 stroke-width:3;
}
.geofence-overlay .gf-handle{
 pointer-events:auto;
 cursor:ew-resize;
 fill:#fff;
 stroke:#315d72;
 stroke-width:2.5;
}
.geofence-overlay .gf-direction-arrow{
 stroke-width:2.5;
 vector-effect:non-scaling-stroke;
}
.geofence-overlay .gf-direction-arrow.yellow{stroke:#d6a300}
.geofence-overlay .gf-direction-arrow.red{stroke:#cf3026}
.gf-arrowhead{fill:#405c6b}
.gf-arrow{font-size:13px;font-weight:900;vertical-align:-1px;margin-right:3px}
.gf-rule-note{
 margin-top:6px;
 font-size:8px;
 color:#728892;
 text-align:center;
}
body.gf-dragging{cursor:ew-resize}

/* ===== V10.33 geofence distance input ===== */
.gf-distance-entry{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:9px;color:#607986;font-weight:800}
.gf-distance-entry input{width:145px;border:1px solid #ccdce4;border-radius:8px;padding:7px 8px;font:inherit;color:#27485a;background:#fff}
.gf-distance-entry input.invalid{border-color:#c94a3d;background:#fff2ef}
.gf-distance-help{font-size:7.8px;color:#8a9aa2;text-align:right;margin-top:3px}

/* ===== V10.34 geofence range + direction refinement ===== */
.geofence-overlay .gf-direction-arrow{stroke-linecap:round}
.gf-distance-help{font-style:italic}

/* ===== V10.38 anchor-scale radius control ===== */
.gf-slider-scale{
 display:flex;
 justify-content:space-between;
 margin-top:-1px;
 font-size:7.5px;
 color:#8a9aa2;
}

/* V10.41 geofence manager architecture */
.gf-create-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 18px}
.gf-create-card{border:1px solid #d8e2ea;background:#fff;border-radius:10px;padding:10px 11px;text-align:left;cursor:pointer;color:#19344f;min-height:62px}
.gf-create-card:hover{border-color:#7da7c8;background:#f5f9fc}
.gf-create-card strong{display:block;font-size:13px;margin-bottom:3px}
.gf-create-card small{display:block;font-size:10px;line-height:1.3;color:#6b7d8d;font-weight:500}
.gf-create-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:7px 0 8px}
.gf-create-card{min-height:72px;padding:8px 4px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.gf-create-card strong{font-size:11px;margin:0}
.gf-type-icon{width:29px;height:29px;border-radius:9px;background:#edf5fb;color:#396f9a;display:grid;place-items:center}
.gf-type-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

/* ===== V11.39 single-owner destinations ===== */
.single-managed-persona .unit-card::after{content:"›"!important;display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;margin-left:auto;border-radius:50%;background:var(--ui-action);color:#fff;font-size:23px;font-weight:700;line-height:1;box-shadow:0 2px 5px rgba(17,91,126,.18)}
.single-owner-destinations{display:flex;flex-direction:column;gap:8px}
.single-owner-destinations .unit-card{margin:0 5px!important}
.single-monitor-destination{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;margin:0 5px;padding:13px;border:1px solid #b3a9bd;border-left:5px solid #72587c;border-radius:10px;background:#f5f1f7;color:var(--ui-ink);text-align:left;box-shadow:0 3px 9px rgba(58,35,67,.08);cursor:pointer}
.single-monitor-destination:hover{border-color:#80668b;background:#eee7f1}
.single-monitor-destination span{display:flex;flex-direction:column;gap:3px}
.single-monitor-destination strong{font-size:15px}
.single-monitor-destination small{font-size:10px;font-weight:750;color:#674e70}
.single-monitor-destination b{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:#72587c;color:#fff;font-size:23px;line-height:1}

/* ===== V11.40 compact single-owner landing ===== */
.account-chip{position:relative!important;min-width:76px!important;justify-content:center!important;padding:3px 24px 3px 10px!important}
.account-chip>span{width:100%;text-align:center}
.account-chip>b{position:absolute;right:9px;margin:0!important}
.single-managed-persona.single-owner-landing .fleet-head{display:none!important}
.single-managed-persona.single-owner-landing .unit-list{padding:5px 9px 9px!important}
.single-managed-persona .unit-card::after{content:none!important;display:none!important}
.single-owner-destinations{gap:2px;border:1px solid #afc2cc;border-radius:9px;background:#fff;overflow:hidden}
.single-managed-persona .single-owner-destinations .unit-card,.single-monitor-destination{min-height:42px!important;margin:0!important;padding:10px 12px!important;border:0!important;border-left:4px solid var(--ui-action)!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.single-owner-destinations .unit-card:hover{background:var(--ui-action-soft)!important}
.single-monitor-destination{width:100%;border-top:1px solid #d0dde3!important;border-left-color:#72587c!important;color:var(--ui-ink)!important}
.single-monitor-destination:hover{background:#f1ebf4!important}
.single-monitor-destination strong{font-size:14px!important}
.gf-manager-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.gf-manager-head .text-action{font-size:10px;padding:0}
.gf-manager-list{max-height:190px;overflow:auto;padding-right:2px}
.gf-manager-note{font-size:10px;line-height:1.45;color:#788897;margin-top:9px;padding:9px 10px;background:#f6f8fa;border-radius:8px}

/* ===== V10.43 geofence manager + globe interaction cleanup ===== */
.gf-create-card.disabled,
.gf-create-card:disabled{
 opacity:.50;
 cursor:not-allowed;
 background:#f6f8f9;
}
#geofenceListView.hidden,
#geofenceCreateView.hidden{display:none!important}

/* ===== V10.44 state clarity + cache-safe deployment ===== */
.lens-head{position:relative}
.lens-clear{
 position:absolute;
 right:8px;
 top:8px;
 width:24px;height:24px;
 border:0;
 border-radius:50%;
 background:rgba(255,255,255,.88);
 color:#6f838e;
 font-size:18px;
 line-height:22px;
 cursor:pointer;
}
.lens-clear:hover{background:#eef4f6;color:#355f72}
#geofenceListView{display:block}
#geofenceCreateView{display:none}
#geofenceListView.hidden{display:none!important}
#geofenceCreateView:not(.hidden){display:block!important}

/* ===== V10.45 simplified Geofences launcher ===== */
.gf-launch-card{width:100%;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;border:1px solid #d7e2e8;background:#fff;border-radius:12px;padding:12px;text-align:left;cursor:pointer;margin:8px 0}
.gf-launch-card:hover{background:#f5f9fb;border-color:#b9d0db}
.gf-launch-card.primary-launch{border-color:#a9c8d8}
.gf-launch-icon{width:30px;height:30px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:#edf5f8;color:#2f789a;font-size:18px;font-weight:800}
.gf-launch-card strong{display:block;font-size:12px;color:#25495c}
.gf-launch-card small{display:block;font-size:8.5px;color:#788d98;margin-top:3px;line-height:1.35}
.gf-map-visibility{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:10px;border-radius:10px;background:#f6f9fa}
.gf-map-visibility strong{display:block;font-size:9px;color:#355a6b}
.gf-map-visibility small{display:block;font-size:7.8px;color:#81939c;margin-top:2px;line-height:1.35}
.gf-toggle{width:38px;height:22px;border:0;border-radius:12px;background:#cbd8de;padding:2px;cursor:pointer;flex:0 0 auto}
.gf-toggle span{display:block;width:18px;height:18px;border-radius:50%;background:#fff;transition:.18s}
.gf-toggle.on{background:#3b809f}
.gf-toggle.on span{transform:translateX(16px)}

/* ===== V10.46 Geofences state separation ===== */
#gfCreateChoices,
#gfManageView{display:none}
#gfCreateChoices.hidden,
#gfManageView.hidden{display:none!important}
.gf-launch-card.hidden,
.gf-map-visibility.hidden{display:none!important}
.gf-subtitle{
 font-size:15px;
 font-weight:800;
 color:#27485a;
 margin:2px 0 10px;
}
.gf-subback{
 margin-bottom:2px;
 color:#3b7794;
 font-size:9px;
}

/* ===== V10.47 navigation hierarchy / responsive workspace ===== */
.workspace-suppressed{display:none!important}

.geofence-map-tool{
  white-space:nowrap;
}
#geofenceToolbarBtn{
  border:1px solid rgba(202,216,224,.95);
  background:rgba(255,255,255,.94);
  color:#405c6d;
  border-radius:11px;
  padding:10px 14px;
  font:inherit;
  cursor:pointer;
  box-shadow:0 1px 4px rgba(28,54,68,.06);
}
#geofenceToolbarBtn:hover{background:#f5f9fb}

/* Keep map functions together as the viewport tightens. */
@media (max-width:1180px){
  #geofenceToolbarBtn{padding:9px 10px}
}
@media (max-width:900px){
  #geofenceToolbarBtn{font-size:12px}
}
/* Phone direction: preserve the same hierarchy rather than shrinking everything.
   Full mobile redesign remains later; this prevents the desktop prototype from
   teaching a contradictory navigation model. */
@media (max-width:700px){
  #geofenceToolbarBtn{padding:8px 9px}
}

/* ===== V10.48 map control simplification ===== */
.track-context{position:relative}
.track-context.hidden{display:none}
#trackContextBtn{background:rgba(255,255,255,.94);border:1px solid rgba(202,216,224,.95);border-radius:11px;padding:10px 12px;color:#405c6d;font:inherit;cursor:pointer;box-shadow:0 1px 4px rgba(28,54,68,.06);white-space:nowrap}
.track-context-pop{position:absolute;top:calc(100% + 6px);right:0;min-width:130px;background:rgba(255,255,255,.98);border:1px solid #d4e0e6;border-radius:10px;padding:5px;box-shadow:0 10px 26px rgba(19,42,55,.16);z-index:30}
.track-context-pop.hidden{display:none}
.track-context-pop button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:7px;color:#405c6d;cursor:pointer}
.track-context-pop button:hover,.track-context-pop button.active{background:#eaf3f7;color:#245f7b;font-weight:700}
@media(max-width:900px){#trackContextBtn{padding:9px 10px;font-size:12px}}

/* ===== V10.49 general circle placement + assignment ===== */
.gf-placement-hint{padding:12px;border-radius:10px;background:#eef6f9;color:#3a687d;font-size:9px;font-weight:700}
.gf-assign-summary{font-size:10px;color:#3f6577;margin:4px 0 7px}
.gf-assign-btn{width:100%}
.gf-assignment-view{margin-top:8px;border:1px solid #d6e2e8;border-radius:10px;padding:9px;background:#f9fbfc}
.gf-assignment-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin-bottom:6px}
.gf-assign-all{display:block;font-size:9px;font-weight:800;color:#47697a;padding:6px 2px;border-bottom:1px solid #e1eaee}
.gf-vessel-choices{max-height:150px;overflow-y:auto;margin-top:4px}
.gf-vessel-choices label{display:flex;gap:7px;align-items:flex-start;padding:6px 2px;font-size:9px}
.gf-vessel-choices strong{display:block;color:#315567}
.gf-vessel-choices small{display:block;color:#83959e;font-size:7.5px;margin-top:1px}

/* ===== V10.52 geofence overlay redraw hardening ===== */
.geofence-overlay{
  z-index:9!important;
  display:block;
  visibility:visible;
}

.proto-build{font-weight:700;letter-spacing:0;color:#9aabb3;margin-left:5px}

/* ===== V10.55 authoritative DOM geofence circle ===== */
.geofence-dom-overlay{
 position:absolute;
 inset:0;
 z-index:8;
 pointer-events:none;
 overflow:hidden;
}
.gf-dom-circle{
 position:absolute;
 box-sizing:border-box;
 border-radius:50%;
 pointer-events:none;
}
.gf-dom-circle.yellow{
 border:3px solid #e0ad00;
 background:rgba(245,196,0,.18);
}
.gf-dom-circle.red{
 border:3px solid #d43127;
 background:rgba(220,48,39,.16);
}
.gf-dom-handle{
 position:absolute;
 transform:translate(-50%,-50%);
 width:17px;
 height:17px;
 border-radius:50%;
 border:3px solid #315d72;
 background:#fff;
 padding:0;
 pointer-events:auto;
 cursor:ew-resize;
 box-shadow:0 1px 3px rgba(0,0,0,.16);
}

/* ===== V10.57 saved circle overlay; V10.55 draft path retained ===== */
.saved-geofence-overlay{
 position:absolute;
 inset:0;
 z-index:7;
 pointer-events:none;
 overflow:hidden;
}
.saved-gf-circle{
 position:absolute;
 box-sizing:border-box;
 border-radius:50%;
}
.saved-gf-circle.yellow{
 border:2.5px solid #d9a900;
 background:rgba(245,196,0,.10);
}
.saved-gf-circle.red{
 border:2.5px solid #d43127;
 background:rgba(220,48,39,.10);
}

/* ===== V10.58 draft circle hardening ===== */
.geofence-dom-overlay{
 z-index:12!important;
 display:block!important;
 visibility:visible!important;
}
.gf-dom-center{
 position:absolute;
 left:50%;
 top:50%;
 width:6px;
 height:6px;
 margin:-3px 0 0 -3px;
 border-radius:50%;
 background:rgba(49,93,114,.70);
 pointer-events:none;
}

/* ===== V10.61 Manage Geofences ===== */
.gf-manage-tools{margin:8px 0 10px}
.gf-manage-tools input{
 width:100%;box-sizing:border-box;border:1px solid #d7e2e8;border-radius:9px;
 padding:9px 10px;font:inherit;color:#355a6b;background:#fff;
}
.gf-manage-row.selected{background:#edf6fa;border-color:#93bfd2}
.gf-manage-row small{display:block}
.gf-empty{padding:14px 10px;color:#84969f;font-size:9px;text-align:center}
.saved-geofence-overlay{pointer-events:none}
.saved-gf-circle{pointer-events:auto!important;cursor:pointer;border-width:2.5px;padding:0}
.saved-gf-circle.focused{
 border-width:4px!important;
 box-shadow:0 0 0 7px rgba(54,126,159,.12);
}
.danger-action{
 border:1px solid #dba9a5;background:#fff;color:#a83d35;border-radius:9px;
 padding:9px 12px;cursor:pointer;
}
.gf-action-spacer{flex:1}
.gf-actions{display:flex;align-items:center;gap:8px}

/* ===== V10.62 Circle interaction + map contrast ===== */
.gf-dom-circle{pointer-events:auto!important;cursor:move;touch-action:none}
.gf-dom-circle.yellow,.saved-gf-circle.yellow{
 border-color:#ffd400!important;
 background:rgba(255,212,0,.15)!important;
 box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 7px rgba(0,0,0,.18);
}
.gf-dom-circle.red,.saved-gf-circle.red{
 border-color:#f04438!important;
 background:rgba(240,68,56,.12)!important;
 box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 7px rgba(0,0,0,.18);
}
.gf-dom-handle{cursor:ew-resize!important;touch-action:none}
.gf-vessel-search{
 width:100%;box-sizing:border-box;margin:7px 0 6px;padding:8px 9px;
 border:1px solid #d7e2e8;border-radius:8px;font:inherit;color:#355a6b;background:#fff;
}
.gf-vessel-section{font-size:8px;font-weight:800;letter-spacing:.08em;color:#7d929c;padding:8px 2px 4px}
body.gf-moving{cursor:move}

/* ===== V10.64 Geofence editor clarity ===== */
.gf-vessel-search-wrap{display:block;margin:9px 0 5px}
.gf-vessel-search-wrap>span{
 display:block;font-size:8px;font-weight:800;letter-spacing:.08em;
 color:#6f8793;margin:0 0 4px 2px;text-transform:uppercase;
}
.gf-vessel-search{
 display:block;width:100%;box-sizing:border-box;margin:0!important;
 padding:8px 10px!important;border:1px solid #cbdbe3!important;
 border-radius:7px!important;background:#fff!important;
 box-shadow:inset 0 1px 2px rgba(20,50,67,.04)!important;
 cursor:text!important;
}
.gf-vessel-search:focus{outline:2px solid rgba(50,128,164,.18);border-color:#6fa7bf!important}
.gf-assign-done{padding:6px 10px!important}
.gf-assignment-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
#gfDelete.hidden{display:none!important}

/* ===== V10.65 Line geofence prototype ===== */
#geofenceLineEditView:not(.hidden){display:block}
.gf-dom-line{position:absolute;height:0;border-top:4px solid;transform-origin:0 50%;pointer-events:none;z-index:4}
.gf-dom-line.yellow{border-color:#ffd400;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.gf-dom-line.red{border-color:#f04438;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.gf-line-handle{
 position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;
 border:2px solid #fff;background:#fff;box-shadow:0 0 0 2px rgba(41,83,103,.55),0 2px 5px rgba(0,0,0,.2);
 cursor:grab;z-index:6;padding:0;
}
.gf-line-handle:active{cursor:grabbing}

/* ===== V10.67 Line / polyline drawing feedback ===== */
#lineGeofenceDomOverlay{position:absolute;inset:0;pointer-events:none;z-index:8}
#lineGeofenceDomOverlay .gf-line-handle{pointer-events:auto}
.gf-dom-line.preview{
  opacity:.72;
  border-top-style:dashed;
}
.gf-line-handle.preview{
  width:10px;height:10px;margin:-5px 0 0 -5px;
  opacity:.72;pointer-events:none!important;
}
.gf-line-draw-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}
.gf-line-draw-actions button:disabled{opacity:.42;cursor:default}

/* ===== V10.68 Saved polyline geofences ===== */
#savedLineGeofenceOverlay{position:absolute;inset:0;pointer-events:none;z-index:7}
.saved-gf-line{
 position:absolute;height:0;border:0;border-top:5px solid;transform-origin:0 50%;
 background:transparent;padding:0;pointer-events:auto;cursor:pointer;z-index:5;
}
.saved-gf-line.yellow{border-color:#ffd400;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.saved-gf-line.red{border-color:#f04438;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 1px rgba(0,0,0,.35))}
.saved-gf-line.focused{border-top-width:7px;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 2px 2px rgba(0,0,0,.4))}

/* ===== V10.69 Geofence usability cleanup ===== */

/* Assignment list is closed unless the user explicitly opens Choose vessels. */
#gfLineAssignView.hidden{display:none!important}

/* Informational line-crossing rule: not styled as a clickable control. */
.gf-rule-static{
 display:flex;align-items:center;justify-content:space-between;gap:8px;
 padding:8px 10px;border:1px solid #d9e4e9;border-radius:9px;background:#f7fafb;
 color:#355a6b;font-size:10px;
}
.gf-rule-static span{font-size:9px;color:#7a909b}

/* Manage rows now distinguish "view/focus" from the explicit Edit action. */
.gf-manage-row{
 display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;
 padding:0!important;overflow:hidden;
}
.gf-manage-focus{
 display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;
 width:100%;border:0;background:transparent;text-align:left;padding:9px 8px 9px 10px;
 color:inherit;font:inherit;cursor:pointer;min-width:0;
}
.gf-manage-copy{min-width:0}
.gf-manage-edit{
 align-self:stretch;border:0;border-left:1px solid #dbe6eb;background:#f7fafb;
 color:#2e718e;font:700 9px/1 inherit;padding:0 11px;cursor:pointer;
}
.gf-manage-edit:hover{background:#eaf4f8}

/* Smooth saved polylines: rounded joins/caps avoid the blocky segmented look when zoomed out. */
.saved-line-geofence-overlay{
 position:absolute;inset:0;z-index:7;pointer-events:none;overflow:visible;
}
.saved-gf-polyline{
 fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;
 vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:pointer;
 paint-order:stroke;filter:drop-shadow(0 0 1px rgba(255,255,255,.95)) drop-shadow(0 1px 1px rgba(0,0,0,.28));
}
.saved-gf-polyline.yellow{stroke:#ffd400}
.saved-gf-polyline.red{stroke:#f04438}
.saved-gf-polyline.focused{stroke-width:5}

/* ===== V11.8 Polygon geofence ===== */
.polygon-geofence-overlay{position:absolute;inset:0;z-index:9;pointer-events:none;overflow:visible}
.gf-polygon-shape{stroke-width:2.5;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:all;cursor:move;paint-order:stroke;filter:drop-shadow(0 0 1px rgba(255,255,255,.95))}
.gf-polygon-shape.yellow{stroke:#ffd400;fill:rgba(255,212,0,.18)}
.gf-polygon-shape.red{stroke:#f04438;fill:rgba(240,68,56,.16)}
.gf-polygon-shape.preview{fill:rgba(255,212,0,.08);stroke-width:3;stroke-dasharray:8 6;pointer-events:none;cursor:default}
.gf-polygon-shape[data-draft-polygon]{stroke-width:3.5}
.gf-polygon-shape.focused{stroke-width:3.5}
.gf-polygon-shape.overview{stroke-width:1.15;fill-opacity:.22;filter:none}
.gf-polygon-rule-cue{fill:none;stroke-width:2.2;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 0 1px #fff)}
.gf-polygon-rule-cue.yellow{stroke:#c99700}.gf-polygon-rule-cue.red{stroke:#cf3026}.gf-polygon-arrowhead{fill:context-stroke}
.gf-polygon-handle{pointer-events:auto;cursor:grab;stroke:#527184;stroke-width:2;fill:#fff;filter:drop-shadow(0 2px 3px rgba(0,0,0,.24))}
.gf-polygon-handle:active{cursor:grabbing}
.gf-polygon-handle.close-target{fill:#247ea6;stroke:#fff;stroke-width:3;cursor:pointer;filter:drop-shadow(0 0 0.16rem rgba(36,126,166,.9))}
#geofencePolygonEditView:not(.hidden){display:block}
#gfPolygonAssignView.hidden,#gfPolygonDelete.hidden{display:none!important}
.compact-search>span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.compact-search{margin:8px 0!important}
.compact-search .gf-vessel-search{height:36px!important;margin:0!important;padding:0 11px!important;border-radius:10px!important;font-size:10px!important}

/* ===== V11 contextual workspace architecture ===== */
#app{grid-template-columns:292px 1fr;grid-template-rows:1fr}
.appbar{display:none!important}
.fleet-panel{grid-column:1;grid-row:1;align-self:start;max-height:calc(100vh - 20px);margin:10px 0 10px 10px;padding:0;background:rgba(255,255,255,.965);border:1px solid rgba(205,222,230,.95);border-radius:16px;box-shadow:0 18px 48px rgba(18,52,72,.14);overflow:hidden;z-index:25;display:flex;flex-direction:column}
.map-shell{grid-column:2;grid-row:1}
.side-brand{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-bottom:1px solid #e5edf1;background:#f7fafb}
.side-brand-id{display:flex;align-items:center;gap:8px}.side-brand .brand-mark{width:31px;height:26px}.side-brand .brand-name{font-size:14px}.side-brand .brand-sub{font-size:8px}.side-account{position:relative}
#vesselsWorkspace{display:flex;flex-direction:column;min-height:0;padding:12px 10px 10px}
.fleet-head{padding:0 4px 8px}.fleet-title{font-size:18px}.fleet-title span{font-size:10px;color:#82949e;font-weight:700;margin-left:3px}
.ownership-tabs{padding:0 0 8px;gap:4px}.owner-tab{font-size:9px;padding:6px 9px;background:#f5f8fa}.owner-tab.active{background:#e4f0f5}
.status-filters{display:none}
.search{height:36px;margin:0 0 8px;padding:0 11px;font-size:10px;border-radius:10px}.search::placeholder{color:#9aacb5}
.unit-list{max-height:calc(100vh - 185px);padding-right:0;gap:3px}
.relationship-header{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:#93a4ad;font-weight:800;padding:9px 7px 4px}
.unit-card{position:relative;padding:9px 9px 9px 12px;border-radius:10px;overflow:hidden}
.unit-card{flex:0 0 auto}
.relationship-block{flex:0 0 auto}
.unit-card::before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;border-radius:4px;background:transparent}
.unit-card.severity-red{background:#fff8f8}.unit-card.severity-red::before{background:var(--red)}
.unit-card.severity-yellow{background:#fffcf4}.unit-card.severity-yellow::before{background:var(--yellow)}
.unit-card.severity-attention::before{background:#d59a20}
.unit-name{font-size:12px}.unit-sub,.unit-meta{display:none}.badge{font-size:7px;padding:3px 6px}.badge.attention{background:#fff6df}
.selected-vessel-workspace{padding:0 10px 12px;overflow:auto;max-height:calc(100vh - 69px)}
.selected-vessel-workspace.hidden{display:none}
.vessel-work-back{width:100%;border:0;background:transparent;text-align:left;color:#557582;font-size:9px;padding:11px 2px 7px;cursor:pointer}
.vessel-work-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:2px 2px 10px}.vessel-work-title h2{font-size:20px;margin:0}.vessel-work-title .lens-sub{margin-top:3px}
.vessel-assurance{border-top:1px solid #e6eef2;padding:12px 2px}.vessel-assurance .normal-message{font-size:19px;margin-top:0}.vessel-assurance .alert-message{margin-top:0}
.health-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0 9px}.health-item{min-width:0;border:1px solid #dbe7ec;border-radius:10px;padding:8px 4px 7px;text-align:center;background:#fff;color:#477365;cursor:pointer}.health-item:hover{background:#f5faf8;border-color:#c6dcd3}.health-item.active{background:#edf7f2;border-color:#93c5af;box-shadow:0 0 0 1px rgba(76,155,123,.12)}.health-item.warn{color:#a27710;background:#fffaf0;border-color:#ead9aa}.health-icon{display:block;width:18px;height:18px;margin:0 auto 4px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.health-label{display:block;font-size:8px;color:#6f838d;line-height:1.2}.health-item strong{display:block;margin-top:2px;font-size:8px;color:#2f5262;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-detail{border:1px solid #d8e6eb;border-radius:11px;background:#f8fbfc;padding:10px;margin:0 0 12px}.health-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:9px}.health-detail-title{display:flex;align-items:center;gap:8px;color:#35745c}.health-detail-title .health-icon{width:21px;height:21px;margin:0}.health-detail-title span{display:block;font-size:8px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#738a95}.health-detail-title strong{display:block;font-size:12px;color:#24495b;margin-top:1px}.health-detail-head>button{border:0;background:transparent;color:#718994;font-size:18px;line-height:1;cursor:pointer}.health-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;border-top:1px solid #e2ebef;padding-top:9px}.health-detail-grid>div{min-width:0}.health-detail-grid span{display:block;font-size:8px;color:#82949d;margin-bottom:2px}.health-detail-grid strong{display:block;font-size:10px;color:#2c4d5e;overflow-wrap:anywhere}.health-detail p{font-size:9px;line-height:1.45;color:#617985;margin:9px 0 0}.technical-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.technical-actions button{border:1px solid #ccdfe6;border-radius:8px;background:#fff;color:#315f72;padding:8px 6px;font-size:9px;font-weight:700;cursor:pointer}.technical-actions button:hover{background:#eaf4f7}.technical-actions button:last-child{grid-column:1/-1}.technical-note{color:#78909a!important}.vessel-section.active{background:#f1f7f9}.vessel-section.active strong{color:#245f7b}
.vessel-sections{border-top:1px solid #e6eef2}.vessel-section{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #edf2f4;background:#fff;padding:12px 2px;color:#315b6e;cursor:pointer;text-align:left}.vessel-section strong{font-size:10px}.vessel-section span{font-size:8px;color:#8499a3}.vessel-section:hover{background:#f8fbfc}
.vessel-lens{display:none!important}
.map-top{top:12px;left:12px;right:auto}.map-menu-pop{left:12px;right:auto}.saved-view-pop{left:12px;right:auto}
.geofence-panel.side-workspace{position:static!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:auto!important;padding-bottom:10px}
.geofence-panel.side-workspace .geofence-panel-head{padding:11px 12px 9px}
.geofence-panel.side-workspace .panel-close{display:none}
.geofence-panel.side-workspace .gf-manager-home,.geofence-panel.side-workspace #geofenceCreateView,.geofence-panel.side-workspace #geofenceLineEditView,.geofence-panel.side-workspace .gf-subview{padding-left:10px;padding-right:10px}
@media(max-width:1000px){#app{grid-template-columns:260px 1fr}.fleet-panel{width:auto}.map-shell{grid-column:2}.appbar{display:none!important}}
.geofence-panel.side-workspace .panel-close{display:inline-flex!important}


/* ===== V11.1 floating workspace + track hierarchy ===== */
html,body,#app{background:#050c13}
#app{display:block!important;position:relative!important;width:100%;height:100%;overflow:hidden}
.map-shell{position:absolute!important;inset:0!important;grid-column:auto!important;grid-row:auto!important;width:100%;height:100%;z-index:1}
.fleet-panel{position:absolute!important;left:10px;top:10px;width:292px!important;grid-column:auto!important;grid-row:auto!important;margin:0!important;max-height:calc(100vh - 20px)!important;z-index:25}
#vesselsWorkspace{flex:0 1 auto}
.unit-list{max-height:calc(100vh - 190px)}
.map-top{top:12px!important;right:12px!important;left:auto!important}
.map-menu-pop{top:54px!important;right:12px!important;left:auto!important}
.saved-view-pop{top:54px!important;right:12px!important;left:auto!important}
#vesselsWorkspace.monitor-only{background:#f1f5f6}
#vesselsWorkspace.monitor-only .search{background:#fbfdfd}
#vesselsWorkspace.monitor-only .owner-tab{background:#e8edef}
#vesselsWorkspace.monitor-only .owner-tab.active{background:#dce8ec}
.geofence-panel.side-workspace{max-height:calc(100vh - 69px)!important}
.track-context{display:none!important}
#trackSettingsBtn{display:flex;align-items:center;justify-content:space-between;gap:8px}
#trackSettingsBtn span{font-size:7.5px;color:#8ba0aa;font-weight:500}
.track-settings-pop{position:absolute;z-index:23;top:54px;right:12px;width:238px;background:rgba(255,255,255,.98);border:1px solid #dce7ec;border-radius:12px;padding:10px;box-shadow:0 16px 38px rgba(20,50,67,.18)}
.track-settings-pop.hidden{display:none}
.track-settings-head{display:flex;justify-content:space-between;align-items:center;padding:2px 2px 9px}.track-settings-head strong{font-size:11px;color:#294f62}.track-settings-head button{border:0;background:transparent;font-size:18px;color:#718894;cursor:pointer}
.track-setting-row{display:flex;flex-direction:column;gap:5px;padding:8px 2px;border-top:1px solid #e7eef1}.track-setting-row span{font-size:8px;color:#718792;font-weight:700}.track-setting-row select{border:1px solid #d8e5ea;border-radius:8px;padding:7px;background:#fff;color:#315b6e;font-size:9px}
.track-override-summary{font-size:8px;color:#6d8390;padding:8px 2px}.track-override-count{font-weight:700;margin-bottom:5px}.track-override-item{display:flex;width:100%;align-items:center;justify-content:space-between;gap:9px;border:0;background:#f3f7f9;border-radius:7px;padding:7px 8px;margin-top:4px;color:#355f72;cursor:pointer;text-align:left}.track-override-item:hover{background:#e7f1f5}.track-override-item strong{font-size:9px}.track-override-item span{font-size:8px;color:#6b828e;white-space:nowrap}
.track-reset{width:100%;border:1px solid #d8e5ea;background:#fff;border-radius:8px;padding:8px;color:#426777;font-size:9px;cursor:pointer}.track-reset:hover{background:#f4f8fa}.track-settings-pop small{display:block;font-size:7px;line-height:1.4;color:#91a2aa;margin-top:7px}
.vessel-track-editor{border-bottom:1px solid #edf2f4;background:#f8fbfc;padding:10px 8px 11px}.vessel-track-editor.hidden{display:none}.track-choice-row{display:flex;gap:5px;margin-bottom:8px}.track-choice{flex:1;border:1px solid #d9e5ea;background:#fff;border-radius:8px;padding:7px 4px;font-size:8px;color:#607985;cursor:pointer}.track-choice.active{background:#e5f1f6;color:#245f7b;border-color:#b9d5e1;font-weight:800}.track-custom-row{display:flex;align-items:center;gap:6px}.track-custom-row.hidden{display:none}.track-custom-row label{font-size:8px;color:#728792}.track-custom-row select{flex:1;border:1px solid #d8e5ea;border-radius:8px;padding:6px;background:#fff;font-size:8px;color:#315b6e}.track-vessel-note{font-size:7.5px;color:#81959f;margin-top:7px;line-height:1.45}
.dom-track.custom{stroke:#8b4f82;stroke-width:4;stroke-opacity:.85;filter:drop-shadow(0 1px 1px rgba(255,255,255,.65))}
.dom-track-point{fill:#fff;stroke:#6f2f68;stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:all;cursor:pointer}
.dom-track-point:hover{r:5px}
@media(max-width:1000px){#app{display:block!important}.fleet-panel{width:260px!important}.map-shell{position:absolute!important;inset:0!important}}

.scoped-anchor-quick{margin-bottom:8px}.scoped-anchor-quick.hidden{display:none!important}

/* ===== V11.3 structural stabilization ===== */
/* The floating workspace owns its own height; the map continues underneath it. */
.fleet-panel{max-height:calc(100vh - 20px)!important}
#vesselsWorkspace{max-height:calc(100vh - 71px);overflow:hidden;min-height:0}
.unit-list{flex:1 1 auto;min-height:0;max-height:calc(100vh - 191px)!important;overflow:auto}
.selected-vessel-workspace{max-height:calc(100vh - 82px)!important;overflow-y:auto!important;overflow-x:hidden;padding-bottom:12px!important;scrollbar-gutter:stable}
/* Preserve rounded card corners even when an internal scrollbar is visible. */
.fleet-panel,.selected-vessel-workspace,#vesselsWorkspace{border-radius:inherit}

/* Make the return path unmistakable. */
.vessel-work-back{display:flex;align-items:center;gap:6px;width:calc(100% - 4px);margin:8px 2px 7px;padding:8px 9px!important;border:1px solid #dce8ed!important;border-radius:9px!important;background:#f6fafb!important;color:#315f72!important;font-size:10px!important;font-weight:800!important}
.vessel-work-back:hover{background:#eaf4f7!important;border-color:#c7dce5!important}

/* Track controls are operational controls, not footnotes: readable at normal browser zoom. */
.track-settings-pop{width:260px!important;padding:12px!important}
.track-settings-head strong{font-size:13px!important}
.track-setting-row span{font-size:10px!important;color:#526f7c!important}
.track-setting-row select{font-size:10px!important;padding:8px!important}
.track-override-summary{font-size:10px!important;color:#526f7c!important}
.track-override-item strong{font-size:10px!important}.track-override-item span{font-size:9px!important}
.track-reset{font-size:10px!important;padding:9px!important}
.track-settings-pop small{font-size:9px!important;color:#6f858f!important;line-height:1.45!important}
.track-choice{font-size:9.5px!important;padding:8px 4px!important}
.track-custom-row label{font-size:9.5px!important;color:#536f7c!important}
.track-custom-row select{font-size:9.5px!important;padding:7px!important}
.track-vessel-note{font-size:9px!important;color:#647d88!important;line-height:1.5!important}
.vessel-section strong{font-size:10.5px!important}.vessel-section span{font-size:9px!important}
.anchor-watch-control{margin:8px 0 5px!important;padding:10px 9px!important;border:1px solid #cfe0e7!important;border-radius:10px!important;background:#f4f9fb!important}
.anchor-watch-control strong{color:#245f7b}.anchor-watch-control span{color:#587985!important;font-weight:700}
.anchor-watch-control.active{border-color:#acd4c2!important;background:#edf8f2!important}.anchor-watch-control.active strong{color:#287255}.anchor-watch-control.active span{color:#287255!important}

/* ===== V11.18 current readings + Alert silence ===== */
.battery-quick{position:relative;display:block;width:27px;height:13px;margin:2px auto 7px;border:2px solid #496170;border-radius:3px;padding:2px;background:#fff}.battery-quick:after{content:"";position:absolute;right:-5px;top:3px;width:3px;height:7px;border-radius:0 2px 2px 0;background:#496170}.battery-quick i{display:block;height:100%;border-radius:1px}.battery-quick.good i{background:#69c525}.battery-quick.watch i{background:#e0b51f}.battery-quick.low i{background:#d85348}
.connection-quick{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:22px;margin:0 auto 5px}.connection-quick .health-icon{width:17px;height:17px;margin:0}.signal-bars{display:flex;align-items:flex-end;gap:1px;height:14px}.signal-bars i{display:block;width:3px;background:#d7e1e5;border-radius:1px 1px 0 0}.signal-bars i:nth-child(1){height:4px}.signal-bars i:nth-child(2){height:7px}.signal-bars i:nth-child(3){height:10px}.signal-bars i:nth-child(4){height:13px}.signal-bars i.on{background:#4c9b7b}
.health-item .health-label{font-size:8.5px}.health-item>strong{font-size:9px}
.battery-history{margin-top:11px;padding:9px 9px 6px;border:1px solid #dce7eb;border-radius:9px;background:#fff}.battery-history-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.battery-history-title strong{font-size:10px;color:#315466}.battery-history-title span{font-size:8px;color:#82949d}.battery-history svg{width:100%;height:96px;margin-top:3px;overflow:visible}.battery-history svg line{stroke:#cbd9df;stroke-width:1}.battery-history svg polyline{fill:none;stroke:#60a94a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.battery-history svg circle{fill:#60a94a;stroke:#fff;stroke-width:2}.battery-days{display:flex;justify-content:space-between;font-size:8px;color:#82949d}
.badge.silenced,.state.silenced{background:#eef1f3;color:#596c76}.badge.silenced{font-weight:800}.unit-card.severity-silenced{background:#fafbfc}.unit-card.severity-silenced::before{background:#8798a1}.alert-message.silenced{background:#f3f5f6;border-color:#d9e0e3}.alert-message.silenced .alert-kicker,.alert-message.silenced .alert-title{color:#51656f}
.silence-action{border:1px solid #c6d2d8!important;background:#fff!important;color:#455f6d!important}.silence-confirm{display:flex;flex-direction:column;gap:12px}.silence-warning{display:flex;flex-direction:column;gap:5px;padding:12px 14px;border:1px solid #e5d8c7;border-radius:12px;background:#fffaf3}.silence-warning strong{font-size:14px;color:#3d4f59}.silence-warning span,.silence-confirm p{font-size:10.5px;line-height:1.5;color:#687c87}.silence-confirm label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:700;color:#405a69}.silence-confirm select,.silence-confirm input{min-width:145px;border:1px solid #cfdce2;border-radius:8px;padding:8px;background:#fff;color:#314e5e}.silence-custom.hidden{display:none}
.silence-status{display:flex;flex-direction:column;gap:3px;margin:-3px 0 12px;padding:9px 12px;border-radius:9px;background:#eef1f3;color:#536871}.silence-status strong{font-size:11px}.silence-status span{font-size:9px}
.reading-history{margin-top:11px;padding:9px 9px 6px;border:1px solid #dce7eb;border-radius:9px;background:#fff}.reading-history svg{width:100%;height:96px;margin-top:3px;overflow:visible}.reading-history svg line{stroke:#cbd9df;stroke-width:1}.reading-history svg polyline{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.reading-history svg circle{stroke:#fff;stroke-width:2}.reading-history.temperature svg polyline{stroke:#df7b3c}.reading-history.temperature svg circle{fill:#df7b3c}.reading-history.speed svg polyline{stroke:#326f94}.reading-history.speed svg circle{fill:#326f94}.reading-axis{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:8px;color:#82949d}.reading-axis strong{font-size:8px;color:#536d79}.single-alert-ops{grid-template-columns:1fr}

/* Keep toolbar on the opposite side of the contextual workspace. */
.map-top{top:12px!important;right:12px!important;left:auto!important}
.map-menu-pop,.saved-view-pop{right:12px!important;left:auto!important}

/* Report-point data should scan as labeled rows rather than concatenated text. */
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:10px 0 14px}
.detail-grid>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.detail-label{font-size:8px;letter-spacing:.08em;color:#7f949e;font-weight:800}
.detail-grid strong{font-size:13px;color:#233f50;overflow-wrap:anywhere}

/* ===== V11.20 map-first collapsible workspace ===== */
.side-brand{gap:8px}
.side-brand-id{flex:1 1 auto;min-width:0}
.panel-toggle{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #cfdee5;border-radius:50%;background:#fff;color:#315f72;cursor:pointer;box-shadow:0 2px 7px rgba(25,61,80,.08)}
.panel-toggle:hover{background:#eaf4f7;border-color:#b9d2dd}
.panel-toggle span{display:block;font-size:23px;line-height:18px;transform:translateY(-3px)}
.account-chip{width:auto!important;min-width:0;height:30px!important;border-radius:16px!important;display:flex;align-items:center;gap:6px;padding:3px 4px 3px 8px!important;cursor:pointer;white-space:nowrap}
.account-chip>span{font-size:8.5px;color:#426776;font-weight:800}
.account-chip>b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#dcebf1;color:#285d76;font-size:9px}
.fleet-panel:not(.panel-collapsed) .panel-toggle span{transform:rotate(180deg) translateY(3px)}
.fleet-panel.panel-collapsed{max-height:58px!important;overflow:visible!important}
.fleet-panel.panel-collapsed>.side-brand{border-bottom:0;border-radius:15px}
.fleet-panel.panel-collapsed>:not(.side-brand){display:none!important}
.fleet-panel.panel-collapsed .account-menu{top:40px}


/* ===== V11.4 viewport polish ===== */
/* Float the workspace fully inside the map viewport and preserve the card silhouette. */
.fleet-panel{top:14px!important;left:14px!important;max-height:calc(100dvh - 28px)!important;border-radius:16px!important;overflow:hidden!important}
#vesselsWorkspace{max-height:calc(100dvh - 89px)!important;border-radius:0 0 16px 16px!important}
.unit-list{max-height:calc(100dvh - 213px)!important}
.selected-vessel-workspace{max-height:calc(100dvh - 96px)!important;border-radius:0 0 16px 16px!important;padding-bottom:14px!important}
.geofence-panel.side-workspace{max-height:calc(100dvh - 96px)!important}

/* ===== V11.23 Sustained List Alert framework ===== */
.alert-manager-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 0 12px}.alert-manager-intro>div{display:flex;flex-direction:column;gap:3px}.alert-manager-intro>div>strong{font-size:13px;color:#2b4b5b}.alert-manager-intro>div>span{font-size:9.5px;color:#71858f}
.alert-state-pill{flex:0 0 auto;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:900;background:#e9f5ef;color:#36755c}.alert-state-pill.red{background:#fde9e7;color:#b5352d}.alert-state-pill.yellow{background:#fff3ce;color:#946b00}.alert-state-pill.silenced{background:#edf1f3;color:#586d77}.alert-state-pill.off{background:#eef1f3;color:#687a83}
.configured-alert-card{border:1px solid #d8e5ea;border-radius:13px;background:#fbfdfe;padding:13px}.configured-alert-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.configured-alert-head>div{display:flex;flex-direction:column;gap:3px}.configured-alert-head strong{font-size:16px;color:#263f50}.config-on{padding:4px 7px;border-radius:999px;background:#e9f5ef;color:#39755d;font-size:8px;font-weight:900}.config-on.off{background:#edf0f2;color:#6d7e86}.configured-alert-card>p{margin:7px 0 11px!important}
.current-other-alert{margin-bottom:10px;border-color:#ead8a5;background:#fffdf7}
.alert-config-summary{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #e4ecef}.alert-config-summary>div{padding:9px 8px 7px 0;min-width:0}.alert-config-summary span{display:block;font-size:8px;color:#84969f;margin-bottom:2px}.alert-config-summary strong{display:block;font-size:9.5px;line-height:1.4;color:#355465;overflow-wrap:anywhere}.configured-alert-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:7px}.alert-manager-history{margin-top:12px}.alert-rule-note{display:flex;flex-direction:column;gap:4px;margin-top:11px;padding:11px 12px;border-radius:10px;background:#f1f6f8}.alert-rule-note strong{font-size:10.5px;color:#315467}.alert-rule-note span{font-size:9px;line-height:1.5;color:#657d88}
.settings-help{display:block;margin-top:9px;font-size:8.5px;line-height:1.45;color:#728791}.recipient-matrix{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.recipient-matrix>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:9px;border:1px solid #e0e9ed;border-radius:9px}.recipient-matrix strong{font-size:10px;color:#385767}.recipient-matrix label{font-size:9px;color:#5e7580;white-space:nowrap}.recipient-matrix input{vertical-align:middle}.recipient-error{margin-top:8px;padding:8px;border-radius:7px;background:#fff0ee;color:#ad3e35;font-size:9px;font-weight:700}.recipient-error.hidden{display:none}
.alert-policy{margin:10px 0;border:1px solid #dfe7eb;border-radius:11px;background:#f8fbfc}.alert-policy summary{cursor:pointer;padding:10px 12px;color:#486777;font-size:10px;font-weight:800}.alert-policy>div{display:grid;grid-template-columns:1fr auto;gap:7px 12px;border-top:1px solid #e3ebee;padding:11px 12px}.alert-policy span{font-size:9px;color:#71858f}.alert-policy strong{font-size:9px;color:#385767}.alert-policy p{grid-column:1/-1;margin:3px 0 0!important;font-size:8.5px!important}

/* ===== V11.24 compact lens + Alert catalog ===== */
.account-chip{padding-left:10px!important}.account-chip>b{display:block!important;width:auto!important;height:auto!important;background:transparent!important;font-size:13px!important}
.compact-vessel-title{align-items:center!important;padding:11px 2px 8px!important}.compact-vessel-title h2{flex:1;font-size:19px!important}.vessel-back-compact{flex:0 0 28px;width:28px;height:28px;border:1px solid #d5e3e9;border-radius:50%;background:#f7fafb;color:#396578;font-size:20px;line-height:1;cursor:pointer}.last-report-once{display:flex;align-items:center;justify-content:space-between;margin:0 2px 8px;padding:6px 8px;border-radius:8px;background:#f4f8fa}.last-report-once span{font-size:8.5px;color:#78909b}.last-report-once strong{font-size:9.5px;color:#355769}.comm-method{margin:0!important}
.compact-tool-section{border-top:1px solid #e4ecef;padding-top:10px}.vessel-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.vessel-tool{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:67px;padding:7px 3px;border:1px solid #dbe6eb;border-radius:10px;background:#fff;color:#607b87;cursor:pointer}.vessel-tool:hover{background:#f5f9fa}.vessel-tool.healthy{border-color:#bcd9cb;background:#f1f9f5;color:#36775b}.vessel-tool.problem{border-color:#e3b5b0;background:#fff3f2;color:#af4137}.vessel-tool.active{border-color:#a9cddd;background:#eaf5f9;color:#2f708b}.tool-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.vessel-tool strong{font-size:9px!important;color:inherit!important}.vessel-tool span{font-size:7.5px!important;color:#81939c!important}.compact-tool-section .vessel-track-editor{margin-top:8px;border:1px solid #dae6eb;border-radius:9px}
.send-alerts-master{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid #bcd8c9;border-radius:12px;background:#eff8f3}.send-alerts-master.off{border-color:#e2b9b3;background:#fff3f2}.send-alerts-master>div{display:flex;flex-direction:column;gap:3px}.send-alerts-master strong{font-size:13px;color:#2f654f}.send-alerts-master.off strong{color:#a34339}.send-alerts-master span{font-size:9px;color:#687f89}.send-alerts-master input{width:21px;height:21px;accent-color:#4b9a78}
.alert-explanation{display:flex;flex-direction:column;gap:3px;margin:9px 0;padding:9px 11px;border-radius:9px;background:#f1f6f8;min-height:37px}.alert-explanation strong{font-size:10px;color:#315669}.alert-explanation span{font-size:8.5px;line-height:1.4;color:#687f8a}
.alert-category{margin:8px 0;border:1px solid #dce7eb;border-radius:11px;background:#fff;overflow:hidden}.alert-category>summary,.alert-subcategory>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;list-style:none}.alert-category summary::-webkit-details-marker,.alert-subcategory summary::-webkit-details-marker{display:none}.alert-category summary>span,.alert-subcategory summary>span{display:flex;flex-direction:column;gap:2px}.alert-category summary strong{font-size:11px;color:#315466}.alert-category summary small{font-size:8px;color:#82959e}.alert-category summary>b{font-size:8px;color:#4f806a}.alert-category[open]>summary{background:#f5f9fa;border-bottom:1px solid #e3ebee}.alert-category-body{padding:9px}.alert-subcategory{border:1px solid #e2eaee;border-radius:9px;overflow:hidden}.alert-subcategory[open]>summary{background:#f8fbfc;border-bottom:1px solid #e6edef}.alert-subcategory summary strong{font-size:10px}.alert-subcategory summary b{font-size:8px;color:#718791}.alert-rules{padding:5px}
.alert-rule-row{display:grid;grid-template-columns:22px minmax(95px,1.2fr) 66px 75px minmax(100px,1.2fr) 50px;gap:6px;align-items:end;padding:8px 4px;border-bottom:1px solid #edf2f4}.alert-rule-row:last-child{border-bottom:0}.alert-info{align-self:center;width:19px;height:19px;border:1px solid #c9d9e0;border-radius:50%;background:#fff;color:#527281;font-size:10px;font-weight:900;cursor:pointer}.alert-rule-name{align-self:center;display:flex;flex-direction:column;gap:1px}.alert-rule-name strong{font-size:9.5px;color:#304f60}.alert-rule-name span{font-size:7.5px;color:#84969f}.alert-rule-row label:not(.mini-switch){display:flex;flex-direction:column;gap:2px}.alert-rule-row label>span{font-size:7px;color:#82949e}.alert-rule-row input:not([type=checkbox]),.alert-rule-row select{width:100%;min-width:0;border:1px solid #d4e0e5;border-radius:6px;background:#fff;padding:5px 4px;color:#385766;font-size:8px}.mini-switch{align-self:center;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}.mini-switch input{position:absolute;opacity:0}.mini-switch i{position:relative;display:block;width:27px;height:15px;border-radius:10px;background:#cbd6db}.mini-switch i:after{content:"";position:absolute;left:2px;top:2px;width:11px;height:11px;border-radius:50%;background:#fff;transition:.15s}.mini-switch input:checked+i{background:#55a27f}.mini-switch input:checked+i:after{transform:translateX(12px)}.mini-switch span{font-size:7px;color:#728690}
.simple-alert-list{display:grid;gap:4px;margin-top:7px}.simple-alert-list>label{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:7px;padding:8px;border:1px solid #e5ecef;border-radius:8px}.simple-alert-list>label>span{display:flex;flex-direction:column;gap:2px}.simple-alert-list strong{font-size:9px;color:#365666}.simple-alert-list small{font-size:7.5px;color:#82949d}.simple-alert-list input{width:16px;height:16px;accent-color:#4c9b7b}
.alert-category.unavailable{background:#f4f6f7;opacity:.7}.alert-category.unavailable summary>b{color:#7d8c93}.unavailable-preview p{margin:0 0 8px!important;font-size:9px!important}.unavailable-preview>div{display:flex;flex-wrap:wrap;gap:5px}.unavailable-preview>div span{padding:4px 6px;border-radius:6px;background:#e5e9eb;color:#687b84;font-size:8px}
.recipient-setup{margin-top:10px;padding-top:11px;border-top:1px solid #dde7eb}.recipient-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.recipient-heading>div{display:flex;flex-direction:column;gap:2px}.recipient-heading strong{font-size:11px;color:#315466}.recipient-heading span{font-size:8px;color:#82949e}.recipient-cards{display:grid;gap:5px;margin-top:8px}.recipient-cards button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border:1px solid #dfe8ec;border-radius:9px;background:#fff;text-align:left;cursor:pointer}.recipient-cards button>span{display:flex;flex-direction:column;gap:2px}.recipient-cards strong{font-size:9.5px;color:#355666}.recipient-cards small{font-size:7.5px;color:#82949e}.recipient-cards b{font-size:8px;color:#477865}
.recipient-channel-master{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:12px;border:1px solid #d9e6eb;border-radius:11px;background:#f7fafb}.recipient-channel-master>div{display:flex;flex-direction:column;gap:3px}.recipient-channel-master strong{font-size:11px;color:#315466}.recipient-channel-master span{font-size:8.5px;color:#758a94}.recipient-channel-master label{font-size:9px;color:#476675;white-space:nowrap}.recipient-assignment-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px}.recipient-assignment-list label{display:flex;align-items:center;gap:7px;padding:7px;border:1px solid #e3ebee;border-radius:7px;font-size:8.5px;color:#456575}.invite-recipient{display:grid;gap:9px}.invite-recipient>label:not(.copy-assignments){display:flex;flex-direction:column;gap:4px}.invite-recipient label span{font-size:9px;color:#607984;font-weight:700}.invite-recipient input:not([type=checkbox]){border:1px solid #d3dfe4;border-radius:8px;padding:8px;color:#365666}.copy-assignments{display:flex;align-items:center;gap:7px;padding:9px;border-radius:8px;background:#f2f7f9}.standalone-history{margin-top:4px}
@media(max-width:720px){.alert-rule-row{grid-template-columns:20px 1fr 58px 46px}.alert-rule-row .frequency-field{grid-column:2/4}.alert-rule-row .mini-switch{grid-column:4}.recipient-assignment-list{grid-template-columns:1fr}}

/* ===== V11.25 legibility + Alert hierarchy correction pass ===== */
:root{--ink:#163246;--muted:#526e7c;--blue:#2379a5;--blue-soft:#eaf5fb;--red:#d52f28;--yellow:#f3c400}
.side-brand{padding-left:12px!important;padding-right:12px!important}.side-brand-id{margin-right:auto}.panel-toggle{order:2;margin-left:8px;margin-right:5px;border:2px solid #9ebdcb!important;color:#174d68!important;background:#f8fcfe!important}#sideAccountMount{order:3}.account-chip{min-width:60px!important;height:32px!important;padding:3px 8px!important;border:1px solid #cadce4!important;background:#edf5f8!important}.account-chip>span{font-size:11px!important;color:#183f53!important}.account-chip>b{margin-left:3px!important;font-size:11px!important;color:#174d68!important}.panel-toggle span{font-size:21px!important;font-weight:800}
.selected-vessel-workspace{scrollbar-gutter:auto!important;padding-left:12px!important;padding-right:12px!important}.compact-vessel-title{padding-left:0!important;padding-right:0!important}.vessel-back-compact{width:32px!important;height:32px!important;flex-basis:32px!important;border:2px solid #a9c4d0!important;background:#fff!important;color:#174f6b!important;font-size:24px!important;font-weight:800!important}.compact-vessel-title h2{font-size:20px!important;color:#162f42!important}.last-report-once{margin-left:0!important;margin-right:0!important;background:#eef4f7!important}.last-report-once span{font-size:10px!important;color:#526d7a!important}.last-report-once strong{font-size:11px!important;color:#203e50!important}
.alert-message.red{background:#fff1ef!important;border-color:#e89992!important;border-left:5px solid var(--red)!important}.alert-message.yellow{background:#fff9d9!important;border-color:#e3c94e!important;border-left:5px solid var(--yellow)!important}.alert-kicker{font-size:9px!important;letter-spacing:.08em!important}.alert-message.red .alert-kicker{color:#b8211b!important}.alert-message.yellow .alert-kicker{color:#735d00!important}.alert-title{font-size:18px!important;color:#1c3445!important}.lens-actions button{font-size:9.5px!important;font-weight:750!important}
.health-strip{border:1px solid #d4e2e8;border-radius:11px;background:#f7fafb;padding:7px 5px;gap:0!important}.health-item{border:0!important;border-right:1px solid #d9e5ea!important;border-radius:0!important;background:transparent!important;padding:5px 3px!important;color:#315d70!important}.health-item:last-child{border-right:0!important}.health-item.active{background:#e4f2f8!important;box-shadow:none!important}.health-icon{width:22px!important;height:22px!important;stroke-width:2.2!important}.health-item .health-label{font-size:9px!important;color:#506d7b!important}.health-item>strong{font-size:10px!important;color:#1f4052!important}.battery-quick{width:30px!important;height:14px!important;border-color:#284f61!important}.connection-quick{gap:0!important}.connection-quick .signal-bars{display:none!important}.comm-method{width:25px!important;height:25px!important}.comm-method path{stroke-width:2.4!important}
.vessel-tool-grid{grid-template-columns:repeat(5,1fr)!important;gap:5px!important}.vessel-tool{min-height:65px!important;padding:6px 2px!important;color:#315f74!important}.tool-icon{width:24px!important;height:24px!important;stroke-width:2.2!important}.vessel-tool strong{font-size:9.5px!important}.vessel-tool span{font-size:8px!important;color:#516e7b!important}.vessel-tool.healthy{background:#fff!important;border-color:#b9d4df!important;color:#226b8e!important}.vessel-tool.problem{border-color:#e38d87!important;color:#b4251f!important;background:#fff4f2!important}.device-technical-action{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:7px;padding:10px 11px;border:1px solid #c9dce4;border-radius:9px;background:#f7fafc;color:#244c60;font-size:10px;font-weight:800;cursor:pointer}.device-technical-action span{font-size:8.5px;font-weight:600;color:#5b7582}.device-technical-action.active{background:var(--blue-soft);border-color:#9fc9dc;color:#166187}
.modal-card{width:min(570px,92vw)!important;padding:18px!important;color:var(--ink)}.modal h2{font-size:21px!important;color:#172f42!important}.panel-kicker,.detail-label{font-size:9px!important;color:#546f7c!important}.send-alerts-master{border-color:#aed0df!important;background:var(--blue-soft)!important}.send-alerts-master.off{border-color:#e29690!important;background:#fff1ef!important}.send-alerts-master strong{font-size:14px!important;color:#175f82!important}.send-alerts-master.off strong{color:#a5241f!important}.send-alerts-master span{font-size:10px!important;color:#456776!important}.send-alerts-master input{width:36px!important;height:20px!important;accent-color:var(--blue)!important}.delivery-word{margin-left:auto;font-weight:850;color:#17678d!important}.send-alerts-master.off .delivery-word{color:#a5241f!important}
.alert-category{margin:9px 0!important;border-color:#ccdce3!important}.alert-category>summary,.alert-subcategory>summary{padding:12px!important}.alert-category summary strong{font-size:12px!important;color:#203f50!important}.alert-category summary small{font-size:9px!important;color:#5b7480!important}.alert-category summary>b{font-size:9px!important;color:#176d91!important}.alert-category[open]>summary{background:#eef5f8!important}.alert-subcategory summary strong{font-size:11px!important}.alert-rule-row{grid-template-columns:23px minmax(91px,1fr) 62px 108px minmax(118px,1.15fr) 45px!important;gap:7px!important;padding:10px 3px!important}.alert-info{width:22px!important;height:22px!important;border:2px solid #9dbbc8!important;color:#185f7e!important;font-size:11px!important}.alert-rule-name strong{font-size:10px!important;color:#203f50!important}.alert-rule-name span,.alert-rule-row label>span{font-size:8px!important;color:#526f7d!important}.alert-rule-row input:not([type=checkbox]),.alert-rule-row select{font-size:9px!important;padding:7px 5px!important;color:#203f50!important}.mini-switch input:checked+i{background:var(--blue)!important}.mini-switch span{font-size:8px!important;color:#425f6d!important}.simple-alert-list strong{font-size:10px!important}.simple-alert-list small{font-size:8.5px!important;color:#5e7782!important}.simple-alert-list input{accent-color:var(--blue)!important}
.severity-choice{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin:0;padding:0;border:0}.severity-choice legend{grid-column:1/-1;font-size:8px;color:#526f7d}.severity-choice button{border:1px solid #cbd9df;border-radius:6px;background:#fff;padding:6px 2px;font-size:8px;font-weight:850;color:#5a707a;cursor:pointer}.severity-choice .yellow.active{background:#ffe13e;border-color:#d9b400;color:#3d3500}.severity-choice .red.active{background:#df3c34;border-color:#b6221c;color:#fff}
.alert-info-popover{position:relative;display:flex;flex-direction:column;gap:3px;margin:9px 0;padding:11px 34px 11px 12px;border:1px solid #b8d2de;border-radius:9px;background:#edf7fb}.alert-info-popover.hidden{display:none}.alert-info-popover strong{font-size:11px;color:#174f69}.alert-info-popover span{font-size:9.5px;line-height:1.45;color:#3f6474}.alert-info-popover button{position:absolute;right:8px;top:7px;border:0;background:transparent;color:#315f72;font-size:18px;cursor:pointer}
.alert-major-nav{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:12px;border:1px solid #b9d1dc;border-radius:10px;background:#f6fafc;text-align:left;cursor:pointer}.alert-major-nav>span{display:flex;flex-direction:column;gap:3px}.alert-major-nav strong{font-size:12px;color:#1e465a}.alert-major-nav small{font-size:9px;color:#526f7c}.alert-major-nav>b{font-size:22px;color:#1f6e91}.recipient-directory-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.recipient-directory-head p{margin:0!important}.recipient-directory{margin-top:12px}.recipient-cards strong{font-size:11px!important}.recipient-cards small,.recipient-cards b{font-size:9px!important}.recipient-channel-master strong{font-size:12px!important}.recipient-channel-master span,.recipient-channel-master label,.recipient-assignment-list label{font-size:9.5px!important}
.badge{font-size:8.5px!important;padding:4px 7px!important;letter-spacing:.02em}.badge.red{background:#e23831!important;color:#fff!important}.badge.yellow{background:#f4ca18!important;color:#3e3500!important}.unit-card.severity-red{background:#fff0ee!important}.unit-card.severity-yellow{background:#fff9d7!important}
@media(max-width:720px){.vessel-tool-grid{grid-template-columns:repeat(3,1fr)!important}.alert-rule-row{grid-template-columns:22px 1fr 60px 105px!important}.alert-rule-row .frequency-field{grid-column:2/5!important}.alert-rule-row .mini-switch{grid-column:4!important}}

/* ===== V11.26 presentation pass ===== */
.panel-toggle,.vessel-back-compact{background:#267ca4!important;border-color:#1d6789!important;color:#fff!important;box-shadow:0 2px 7px rgba(20,72,98,.22)!important}.panel-toggle:hover,.vessel-back-compact:hover{background:#195f80!important}.panel-toggle span{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;line-height:1!important;transform:none!important}.fleet-panel:not(.panel-collapsed) .panel-toggle span{transform:rotate(180deg)!important}.vessel-back-compact{display:grid!important;place-items:center!important;line-height:1!important;padding:0 0 3px!important}
.vessel-detail-flyout{position:absolute;left:318px;top:76px;width:min(390px,calc(100vw - 345px));max-height:calc(100dvh - 100px);overflow:auto;z-index:24;background:rgba(255,255,255,.985);border:1px solid #bcd1da;border-radius:15px;padding:14px;box-shadow:0 18px 48px rgba(15,48,67,.22)}.vessel-detail-flyout.hidden{display:none}.vessel-detail-flyout .health-detail{margin:0;border:0;background:transparent;padding:0}.vessel-detail-flyout .health-detail-head{padding-bottom:11px;border-bottom:1px solid #dbe7ec}.vessel-detail-flyout .health-detail-title .health-icon{width:28px!important;height:28px!important;color:#1e7298}.vessel-detail-flyout .health-detail-title span{font-size:10px!important;color:#4e6c79!important}.vessel-detail-flyout .health-detail-title strong{font-size:17px!important;color:#18394b!important}.vessel-detail-flyout .health-detail-head>button{display:grid;place-items:center;width:31px;height:31px;border:1px solid #aec8d3;border-radius:50%;background:#edf6fa;color:#195e7d;font-size:21px;font-weight:800}.vessel-detail-flyout .health-detail-grid{gap:12px 22px;padding-top:13px}.vessel-detail-flyout .health-detail-grid span{font-size:9.5px!important;color:#5b7480!important}.vessel-detail-flyout .health-detail-grid strong{font-size:13px!important;color:#1c3b4c!important}.vessel-detail-flyout .battery-history,.vessel-detail-flyout .reading-history{padding:12px;margin-top:14px;background:#f7fafb}.vessel-detail-flyout p{font-size:10px!important;color:#456574!important}.vessel-detail-flyout .technical-actions button{font-size:10px!important;padding:10px!important}
.alert-category:nth-of-type(1){border-left:5px solid #287ca3!important;background:#fbfdfe!important}.alert-category:nth-of-type(2){border-left:5px solid #7c8fa0!important;background:#f5f7f8!important}.alert-category:nth-of-type(3){border-left:5px solid #9c86a4!important;background:#f8f6f9!important}.alert-category>summary{min-height:48px}.alert-category summary strong{font-weight:850!important}.alert-category summary small{line-height:1.35}.alert-subcategory{background:#fff!important}.simple-alert-list>label{background:#fbfdfe!important;border-color:#cfdfe6!important}.simple-alert-list>label:hover{background:#eef6f9!important}
.alert-major-nav#alertRecipients{background:#e9f5fa!important;border-color:#9fc8da!important;border-left:5px solid #287ca3!important}.alert-major-nav#alertSetupHistory{background:#f3eef5!important;border-color:#c7b4ce!important;border-left:5px solid #8d6d98!important}.alert-major-nav strong{font-size:13px!important;font-weight:850!important}.alert-major-nav small{font-size:9.5px!important}
.ridewatch-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;margin-top:9px;padding:11px;border:1px solid #9fc7d8;border-radius:10px;background:linear-gradient(135deg,#e9f6fb,#f7fbfd);text-align:left;cursor:pointer}.ridewatch-card>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.ridewatch-card strong{font-size:11px;color:#174c65}.ridewatch-card small{font-size:8.5px;color:#55717e}.ridewatch-card>b{font-size:9px;color:#1f6f92}.ridewatch-mark{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;background:#267ca4;color:#fff;font-size:10px;font-weight:900;letter-spacing:.04em}.ridewatch-mark.large{width:48px;height:48px;font-size:13px}.ridewatch-hero{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid #acd0df;border-radius:12px;background:#edf8fc}.ridewatch-hero>div{flex:1}.ridewatch-hero strong{font-size:14px;color:#173c50}.ridewatch-hero p{margin:4px 0 0!important;font-size:10px!important}.ridewatch-steps{display:grid;gap:8px;margin:12px 0}.ridewatch-steps>div{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #d5e3e9;border-radius:9px;background:#fbfdfe}.ridewatch-steps>div>b{display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#267ca4;color:#fff}.ridewatch-steps span{display:flex;flex-direction:column;gap:2px}.ridewatch-steps strong{font-size:10.5px;color:#1b4053}.ridewatch-steps small{font-size:9px;color:#56717e}.ridewatch-preview-actions{display:flex;justify-content:flex-end;gap:8px}.concept-note{display:block;margin-top:10px;font-size:8.5px;color:#718690}
@media(max-width:820px){.vessel-detail-flyout{left:280px;top:72px;width:calc(100vw - 292px)}}

/* ===== V11.28 synchronized regional reveal ===== */
.regional-marker-overlay,.track-overlay{transition:opacity .18s linear}
.regional-marker-overlay.regional-reveal-active,.track-overlay.regional-reveal-active{transition:opacity 3s ease}

/* ===== V11.29 Alert lifecycle ===== */
.alert-lifecycle-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:0 0 14px}.alert-lifecycle-strip span{position:relative;padding:9px 5px;border:1px solid #cbd8df;border-radius:8px;background:#f4f7f9;color:#637681;font-size:9.5px;font-weight:800;text-align:center}.alert-lifecycle-strip span.complete{background:#e4f1f8;border-color:#8eb8d0;color:#244e68}.alert-lifecycle-strip.resolved span.complete{background:#e5f3ec;border-color:#91bea7;color:#285c43}.alert-ops .response-card{grid-column:1/-1}.prototype-condition-control{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding:10px 12px;border:1px dashed #9eb1bc;border-radius:9px;background:#f4f7f8}.prototype-condition-control span{display:flex;flex-direction:column;gap:2px}.prototype-condition-control strong{font-size:10.5px}.prototype-condition-control small{font-size:9px;color:#60737e}.prototype-condition-control button{flex:0 0 auto}.alert-message.resolved{background:#eef7f2;border:1px solid #add0bd;border-left:5px solid #4b956d}.alert-message.resolved .alert-kicker{color:#347151}.resolved-alert-card{display:flex;flex-direction:column;gap:5px;padding:16px;border:1px solid #abd0bd;border-radius:11px;background:#eef7f2}.resolved-alert-card>strong{font-size:18px;color:#244b38}.resolved-alert-card>span{font-size:11px;font-weight:800;color:#3a7356}.resolved-alert-card p{margin:5px 0 0;color:#526d60;line-height:1.45}.history-state-card{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:12px 14px;border-radius:10px;background:#e9f2f7;border:1px solid #b5cfdd}.history-state-card>span{font-size:8.5px;font-weight:900;letter-spacing:.09em;color:#547183}.history-state-card>strong{font-size:17px;color:#1f455d}.history-state-card>small{font-size:9.5px;color:#5c7280}
.alert-category>summary{padding:14px 13px!important;min-height:54px!important}.alert-category summary strong{font-size:15px!important;line-height:1.15!important}.alert-category summary small{font-size:10.5px!important;line-height:1.4!important}.alert-category summary>b{font-size:10px!important}.alert-subcategory>summary{padding:13px!important}.alert-subcategory summary strong{font-size:13px!important}.alert-major-nav{padding:14px 13px!important}.alert-major-nav strong{font-size:15px!important}.alert-major-nav small{font-size:10.5px!important;line-height:1.35!important}.settings-actions .primary,#saveAlertSetup{font-size:11px!important;font-weight:850!important;padding:10px 13px!important}

/* ===== V11.30 unified LadAlert interface language ===== */
:root{--ui-ink:#172f42;--ui-text:#304f60;--ui-muted:#58717d;--ui-border:#b9ccd5;--ui-surface:#f3f7f9;--ui-card:#fff;--ui-action:#176f99;--ui-action-dark:#125875;--ui-action-soft:#e5f2f8;--ui-shadow:0 20px 58px rgba(10,36,52,.25)}
.modal{background:rgba(10,28,40,.48)!important}.modal-card{width:min(620px,92vw)!important;max-height:86vh!important;padding:20px 22px 22px!important;border:1px solid #adc3ce!important;border-radius:15px!important;background:var(--ui-surface)!important;box-shadow:var(--ui-shadow)!important;color:var(--ui-text)!important;scrollbar-color:#91a9b5 transparent;scrollbar-width:thin}.modal-card>.eyebrow{padding-right:110px;font-size:9px!important;font-weight:900!important;letter-spacing:.12em!important;color:#54717f!important}.modal-card>h2{margin:5px 0 15px!important;padding:0 115px 12px 0;border-bottom:2px solid #c8d8df;font-size:23px!important;line-height:1.15!important;color:var(--ui-ink)!important}.modal-close,.panel-close{display:grid!important;place-items:center!important;width:31px!important;height:31px!important;padding:0!important;border:1px solid #9db7c3!important;border-radius:50%!important;background:#fff!important;color:#225d78!important;font-size:21px!important;font-weight:800!important;line-height:1!important;box-shadow:0 2px 6px rgba(16,54,74,.12);cursor:pointer}.modal-close{right:16px!important;top:15px!important}.modal-close:hover,.panel-close:hover{background:var(--ui-action)!important;border-color:var(--ui-action-dark)!important;color:#fff!important}
.modal p{font-size:11px!important;color:var(--ui-muted)!important}.modal input:not([type=checkbox]):not([type=range]),.modal select,.geofence-panel input:not([type=checkbox]):not([type=range]),.geofence-panel select{min-height:34px;border:1px solid #aec2cc!important;border-radius:7px!important;background:#fff!important;color:var(--ui-ink)!important;font-weight:650}.primary,.primary-action,.settings-actions .primary{border:1px solid var(--ui-action-dark)!important;border-radius:8px!important;background:var(--ui-action)!important;color:#fff!important;font-weight:800!important;box-shadow:0 2px 5px rgba(17,91,126,.18)}.primary:hover,.primary-action:hover,.settings-actions .primary:hover{background:var(--ui-action-dark)!important}.secondary,.secondary-action,.settings-actions .secondary{border:1px solid #9fb8c4!important;border-radius:8px!important;background:#fff!important;color:#214f65!important;font-weight:750!important}.secondary:hover,.secondary-action:hover,.settings-actions .secondary:hover{background:var(--ui-action-soft)!important;border-color:#6e9fb5!important}.settings-actions{padding-top:12px!important;border-top:1px solid #cbd9df!important}
.compact-delivery{position:absolute!important;z-index:2;right:58px!important;top:45px!important;display:flex!important;width:auto!important;min-height:31px!important;gap:8px!important;margin:0!important;padding:5px 8px 5px 10px!important;border-radius:999px!important;background:var(--ui-action-soft)!important}.compact-delivery .delivery-word{margin:0!important;font-size:10px!important;white-space:nowrap}.compact-delivery input{width:30px!important;height:17px!important}.compact-delivery.off{background:#fff0ee!important}
.alert-category{border:1px solid var(--ui-border)!important;border-left:5px solid var(--ui-action)!important;border-radius:10px!important;background:var(--ui-card)!important;box-shadow:0 2px 6px rgba(19,56,74,.06)}.alert-category>summary{min-height:58px!important}.alert-category summary strong{color:var(--ui-ink)!important}.alert-category summary small{color:var(--ui-muted)!important}.category-chevron{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ui-action)!important;color:#fff!important;font-size:19px!important;line-height:1;transition:transform .15s}.alert-category[open]>.alert-category-body{min-height:250px}.alert-category[open]>summary .category-chevron,.alert-subcategory[open]>summary .category-chevron{transform:rotate(180deg)}.optional-alert-category{width:72%;margin-left:auto!important;border-left-width:3px!important;background:#f8fafb!important}.optional-alert-category.unavailable{opacity:1!important}.optional-alert-category.unavailable summary small{color:#687d87!important}.alert-category-focus>.alert-category:not([open]),.alert-category-focus>.alert-major-nav{display:none!important}.alert-category-focus>.alert-category[open]{width:100%!important;margin-left:0!important}.alert-category-focus>.autosave-note{margin-top:10px}.alert-subcategory{border-color:#bfcfd7!important}.alert-subcategory>summary{background:#edf4f7!important}.alert-subcategory summary>b.category-chevron{width:25px;height:25px;font-size:17px!important}
.alert-info{background:var(--ui-action)!important;border-color:var(--ui-action-dark)!important;color:#fff!important;box-shadow:0 2px 4px rgba(17,73,99,.15)}.alert-info-popover{cursor:pointer;border:1px solid #83afc2!important;border-left:5px solid var(--ui-action)!important;background:#e5f3f9!important;padding:13px 15px!important}.alert-info-popover strong{font-size:13px!important;color:#133e54!important}.alert-info-popover span{font-size:10.5px!important;color:#2c5669!important}.alert-info-popover small{margin-top:3px;font-size:8.5px;color:#617b87}.autosave-note{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding:8px 2px 0;color:#486875;font-size:9.5px;font-weight:700}.saved-check{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#dceee6;color:#2d7252;font-weight:900}
.recipient-directory-head{padding:10px 12px;border:1px solid #afc3cd;border-radius:10px;background:#e9f0f4}.recipient-directory-head p{font-size:10.5px!important;color:#324f5e!important}.recipient-cards{gap:9px!important}.recipient-cards button{padding:13px 14px!important;border:1px solid #9fb8c4!important;border-left:5px solid var(--ui-action)!important;border-radius:9px!important;background:#fff!important;box-shadow:0 2px 6px rgba(16,53,72,.07)}.recipient-cards button:hover{background:#eaf4f8!important;border-color:#6e9fb5!important}.recipient-cards strong{font-size:14px!important;color:#172f42!important}.recipient-cards small{font-size:10px!important;color:#526d79!important}.recipient-cards b{padding:5px 7px;border-radius:6px;background:#dfeef5;color:#1b617f!important;font-size:10px!important}.alert-major-nav{background:#fff!important;border:1px solid #9fb8c4!important;border-left:5px solid var(--ui-action)!important;box-shadow:0 2px 6px rgba(16,53,72,.06)}.alert-major-nav#alertSetupHistory{background:#fff!important;border-color:#9fb8c4!important;border-left-color:#6d8290!important}
.geofence-panel,.vessel-detail-flyout,.track-settings-pop,.map-menu-pop{border-color:#a9c0cb!important;background:rgba(248,251,252,.985)!important;box-shadow:var(--ui-shadow)!important}.geofence-panel-head{padding-bottom:10px!important;border-bottom:2px solid #c8d8df!important}.geofence-panel-head strong{font-size:20px!important;color:var(--ui-ink)!important}.gf-launch-card,.gf-row,.health-detail,.technical-actions button{border-color:#afc4ce!important;background:#fff!important;color:var(--ui-text)!important}.gf-launch-card:hover,.gf-row:hover,.technical-actions button:hover{background:var(--ui-action-soft)!important}.gf-row strong,.health-detail-grid strong{color:var(--ui-ink)!important}.gf-row small,.health-detail-grid span,.panel-help{color:var(--ui-muted)!important}.vessel-detail-flyout .health-detail-head>button,.vessel-back-compact,.panel-toggle{display:grid!important;place-items:center!important;background:var(--ui-action)!important;border:1px solid var(--ui-action-dark)!important;color:#fff!important}.vessel-detail-flyout .health-detail-head>button:hover,.vessel-back-compact:hover,.panel-toggle:hover{background:var(--ui-action-dark)!important}
.selected-vessel-workspace,.fleet-panel{color:var(--ui-text)}.last-report-once,.health-strip,.device-technical-action{border-color:#b8cbd4!important;background:#edf3f6!important}.vessel-tool{border-color:#b4c8d1!important;background:#fff!important}.vessel-tool:hover{background:var(--ui-action-soft)!important}.vessel-tool strong,.health-item>strong{color:var(--ui-ink)!important}.vessel-tool span,.health-label{color:#526d79!important}
@media(max-width:720px){.modal-card{padding:17px!important}.compact-delivery{position:static!important;margin:-8px 0 12px auto!important}.modal-card>h2{padding-right:38px}.optional-alert-category{width:100%}}

/* ===== V11.31 recipient, modal and geofence corrections ===== */
.modal{align-items:flex-start!important;padding:26px 12px!important}.modal-card{max-height:calc(100vh - 52px)!important}.modal-close,.panel-close{font-size:0!important;line-height:0!important}.modal-close::before,.panel-close::before{content:"×";display:block;font-size:22px;line-height:1;transform:translateY(-1px)}.panel-toggle span{line-height:0!important;transform:translateY(-1px)!important}.fleet-panel:not(.panel-collapsed) .panel-toggle span{transform:translateY(-1px) rotate(180deg)!important}
.category-chevron{font-size:0!important}.category-chevron::before{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #fff;transform:translateY(1px)}.alert-category[open]>summary .category-chevron::before,.alert-subcategory[open]>summary .category-chevron::before{transform:translateY(-1px)}
.recipient-assignment-list{gap:9px!important}.recipient-assignment-list label{min-height:46px;padding:10px 12px!important;border-color:#a9bec8!important;background:#fff!important;color:#203f50!important;font-size:12px!important;font-weight:700!important;line-height:1.3}.recipient-assignment-list input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--ui-action)}.recipient-channel-master{padding:15px!important;border-color:#abc1cb!important;background:#eaf1f4!important}.recipient-channel-master strong{font-size:14px!important;color:#172f42!important}.recipient-channel-master span,.recipient-channel-master label{font-size:11px!important;color:#3d5968!important}
.invite-verify-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.phone-entry{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid #aec2cc;border-radius:7px;background:#fff;overflow:hidden}.phone-entry b{align-self:stretch;display:grid;place-items:center;padding:0 9px;background:#e7eff3;border-right:1px solid #b5c8d1;color:#234e63;font-size:11px}.phone-entry input{border:0!important;border-radius:0!important}.invite-recipient>label,.invite-verify-grid>label{display:flex;flex-direction:column;gap:5px}.invite-recipient label span{font-size:10.5px!important;color:#354f5d!important}
.anchor-watch-editor #gfAppliesToLabel,.anchor-watch-editor #gfAssignSummary,.anchor-watch-editor #gfAssignBtn,.anchor-watch-editor #gfAssignView{display:none!important}.anchor-watch-editor [data-gf-rule="enter"]{display:none!important}.anchor-watch-editor [data-gf-rule="exit"]{flex:0 0 100%;border-color:#8aaebf!important;background:#e8f3f8!important;color:#1f5b76!important;font-weight:850!important}.anchor-watch-editor [data-gf-severity="red"].active{background:#df3c34!important;border-color:#ad231d!important;color:#fff!important}.anchor-watch-editor [data-gf-severity="yellow"].active{background:#ffe13e!important;border-color:#caa800!important;color:#3d3500!important}
.saved-gf-circle{pointer-events:auto!important}.gf-polygon-shape,.saved-gf-polyline{pointer-events:stroke!important}.gf-polygon-shape{pointer-events:all!important}
@media(max-width:720px){.modal{align-items:center!important;padding:10px!important}.modal-card{max-height:calc(100vh - 20px)!important}.invite-verify-grid{grid-template-columns:1fr}.recipient-assignment-list{grid-template-columns:1fr!important}}

/* ===== V11.44 focused demo polish ===== */
.account-chip{min-width:72px!important;padding:3px 12px!important;border:2px solid #82a9bb!important;background:linear-gradient(#fff,#e6f1f6)!important;box-shadow:0 2px 5px rgba(17,73,99,.16)!important;transition:background .15s,border-color .15s,transform .15s}
.account-chip>span{width:100%!important;text-align:center!important;font-size:11px!important;color:#173f54!important}
.account-chip:hover{border-color:var(--ui-action)!important;background:#e4f2f8!important;transform:translateY(-1px)}
.account-chip:focus-visible{outline:3px solid rgba(23,111,153,.25);outline-offset:2px}

/* ===== V11.33 one-vessel and geofence focus ===== */
.vessel-tool.healthy[data-vessel-action="anchor-watch"]{border:2px solid #329664!important;background:#e6f6ed!important;color:#1f7049!important;box-shadow:0 0 0 2px rgba(50,150,100,.10)!important}.vessel-tool.healthy[data-vessel-action="anchor-watch"] span{color:#286e4d!important;font-weight:850!important}
.single-managed-persona .fleet-head{padding-bottom:4px!important}.single-managed-persona .fleet-title{font-size:10px!important;color:#5f7884!important}.single-managed-persona .ownership-tabs,.single-managed-persona .status-filters,.single-managed-persona>.search{display:none!important}.single-managed-persona .unit-list{padding-top:4px!important}.single-managed-persona .unit-card{min-height:58px!important;margin:0 5px!important;padding:15px 13px!important;border:1px solid #9fbac7!important;border-left:5px solid var(--ui-action)!important;border-radius:10px!important;background:#fff!important;box-shadow:0 3px 9px rgba(17,62,82,.09)!important}.single-managed-persona .unit-name{font-size:15px!important;color:var(--ui-ink)!important}.single-managed-persona .unit-card::after{content:"Open vessel";margin-left:auto;color:#176f99;font-size:9px;font-weight:850}.single-managed-persona .unit-top{width:100%!important}
.gf-direction-arrow,.gf-polygon-rule-cue{stroke-width:3!important}

/* ===== V11.32 focused hierarchy and Anchor Watch ===== */
.side-brand{background:#e6f0f5!important;border-bottom:2px solid #b3cad5!important}.ownership-tabs{gap:5px!important}.owner-tab{border:1px solid #aac1cb!important;background:#fff!important;color:#355666!important}.owner-tab.active{background:var(--ui-action)!important;border-color:var(--ui-action-dark)!important;color:#fff!important}.relationship-header{padding:7px 9px!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important}.managed-block .relationship-header{background:#dcecf4!important;color:#1c5c79!important}.monitored-block .relationship-header{background:#eee8f1!important;color:#674e70!important}.unit-name-line{display:flex;align-items:center;gap:6px;min-width:0}.unit-name-line .badge{flex:0 0 auto}.last-report-once{background:transparent!important;border-bottom:1px solid #c2d2da!important;border-radius:0!important}.fleet-title.compact span{display:none!important}
.recipient-assignment-list label{min-height:50px!important;font-size:13px!important}.gf-empty{margin-top:8px;padding:28px 13px;border:1px solid #b8cbd4;border-radius:10px;background:#edf3f6;color:#294a5b;font-size:12px;font-weight:700;line-height:1.5;text-align:center}
.anchor-watch-status{display:none}.anchor-watch-editor .anchor-watch-status{display:block;margin:8px 0 14px;padding:11px 12px;border:1px solid #e2b1ad;border-left:5px solid #d43a31;border-radius:9px;background:#fff2f0;color:#7d2823;font-size:11px;font-weight:800;line-height:1.4}.anchor-watch-editor #gfCancel{display:none!important}.anchor-watch-editor .gf-actions{justify-content:flex-end!important}.anchor-watch-editor #gfSave{min-height:39px!important;padding:9px 13px!important}.modal-close::before,.panel-close::before{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;transform:translateY(-1px)!important}

/* ===== V11.34 geofence placement and manager ===== */
.account-geofence-workspace{left:auto!important;right:14px!important;top:72px!important;width:320px!important;max-height:calc(100dvh - 88px)!important}.geofence-head-actions{display:flex;flex-direction:column-reverse;align-items:center;gap:5px}.gf-search-toggle{border:1px solid #9fb8c4;border-radius:7px;background:#fff;color:#1f607d;padding:4px 7px;font-size:9px;font-weight:850;cursor:pointer}.gf-search-toggle:hover,.gf-search-toggle[aria-expanded="true"]{background:var(--ui-action)!important;border-color:var(--ui-action-dark)!important;color:#fff!important}.gf-search-toggle.hidden{display:none!important}.manage-mode .panel-kicker{display:none!important}.manage-mode #gfManageView>.gf-subback,.manage-mode #gfManageView>.gf-subtitle,.manage-mode #gfManageView>.panel-help{display:none!important}.manage-mode .geofence-panel-head{margin-bottom:10px!important}.manage-mode .gf-manage-tools{margin:0 0 9px!important;max-height:42px;opacity:1;overflow:hidden;transition:max-height .16s ease,opacity .16s ease}.manage-mode .gf-manage-tools.search-collapsed{display:block!important;max-height:0!important;margin:0!important;opacity:0!important}.manage-mode .gf-manage-tools input{min-height:32px!important;font-size:10px!important}.gf-manage-row.anchor-active{border:2px solid #329664!important;background:#e6f6ed!important}.gf-manage-row.anchor-active:hover{background:#dff2e8!important}.gf-manage-row.anchor-active .gf-swatch{background:#329664!important}.gf-manage-row.anchor-active .gf-status{background:#329664!important;color:#fff!important;font-weight:900!important}.gf-manage-row.anchor-active strong{color:#1f7049!important}

/* ===== V11.50 evidence-first Alert detail ===== */
.vessel-assurance .alert-message{display:flex;flex-direction:column;min-height:148px;box-sizing:border-box}.vessel-assurance .alert-title{min-height:45px;display:flex;align-items:flex-start}.vessel-assurance .lens-actions{margin-top:auto}
#modal[data-alert-severity] .modal-card{background:var(--ui-surface)!important}
#modal[data-alert-severity="red"] .modal-card{border-top:6px solid #c5463d!important}
#modal[data-alert-severity="yellow"] .modal-card{border-top:6px solid #e0bd16!important}
#modal[data-alert-severity="silenced"] .modal-card{border-top:6px solid #82949d!important}
#modal[data-alert-severity="red"] .modal-card>.eyebrow,#modal[data-alert-severity="red"] .modal-card>h2{background:#fff0ee!important}
#modal[data-alert-severity="yellow"] .modal-card>.eyebrow,#modal[data-alert-severity="yellow"] .modal-card>h2{background:#fff8d6!important}
#modal[data-alert-severity="silenced"] .modal-card>.eyebrow,#modal[data-alert-severity="silenced"] .modal-card>h2{background:#eef2f4!important}
#modal[data-alert-severity] .modal-card>.eyebrow{margin:-20px -22px 0!important;padding:18px 140px 0 22px!important}
#modal[data-alert-severity] .modal-card>h2{margin:0 -22px 15px!important;padding:5px 140px 14px 22px!important}
.alert-evidence-grid{display:flex;flex-direction:column;gap:10px}
.alert-evidence-grid .list-visual,.alert-evidence-grid .trend-card{margin:0;min-width:0;width:100%;box-sizing:border-box}
.alert-evidence-grid .attitude-visual{grid-template-columns:.8fr 1.15fr 1fr;padding:10px 14px!important}
.alert-evidence-grid .trend-card{padding:8px 12px 6px}.alert-evidence-grid .trend-svg{height:105px}.alert-evidence-grid .trend-times{font-size:8.5px}
.compact-alert-response{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:8px 10px;border:1px solid #d5e1e6;border-radius:10px;background:#fff}
.compact-alert-response>div:first-child{display:flex;flex-direction:column;gap:2px}.compact-alert-response strong{font-size:11px;color:#263f50}.compact-response-actions{display:flex;gap:7px}.compact-response-actions button{min-height:30px;padding:5px 10px!important;font-size:9.5px!important}
.event-details{margin:7px 0 6px!important}.alert-history-note{font-size:9.5px!important}.prototype-condition-control{margin-top:8px!important;padding:7px 10px!important}.prototype-condition-control small{display:none}.prototype-condition-control button{min-height:28px;padding:5px 8px;font-size:9px}
@media(max-width:760px){#modal[data-alert-severity] .modal-card>.eyebrow{margin:-17px -17px 0!important;padding-left:17px!important}#modal[data-alert-severity] .modal-card>h2{margin-left:-17px!important;margin-right:-17px!important;padding-left:17px!important}.alert-evidence-grid .attitude-visual{grid-template-columns:.72fr 1fr 1fr}.alert-evidence-grid .trend-svg{height:100px}.compact-alert-response{align-items:flex-start;flex-direction:column}.compact-response-actions{width:100%}.compact-response-actions button{flex:1}}

/* ===== V11.52 state recognition, quick settings, and directional controls ===== */
.alert-message.silenced{background:#eef1fa!important;border:1px solid #aab5d3!important;border-left:6px solid #6676aa!important;box-shadow:inset 0 0 0 1px rgba(102,118,170,.08)}
.alert-message.silenced .alert-kicker{color:#4f5f94!important}.alert-message.silenced .alert-detail{color:#596783!important;font-weight:750}
.alert-message.responding{box-shadow:inset 0 0 0 2px #5e9d78!important}.lens-actions .responding-on{background:#e5f4eb!important;border-color:#5e9d78!important;color:#276443!important;font-weight:900!important}.lens-actions .end-silence{border-color:#6676aa!important;color:#4f5f94!important;font-weight:850!important}
.compact-alert-response.active{background:#e9f6ee!important;border:2px solid #68a681!important}.compact-alert-response.active .detail-label,.compact-alert-response.active strong{color:#276443!important}
.silence-status{background:#eef1fa!important;border:1px solid #aab5d3!important;border-left:6px solid #6676aa!important;color:#4c5c8b!important}
.compact-settings-intro{margin-bottom:10px!important}.compact-settings-intro strong{font-size:15px!important}.compact-settings-intro span{font-size:10px!important}
.quick-settings-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid #d6e1e6}.quick-settings-footer .autosave-note{margin:0!important}.quick-settings-footer button{min-height:34px}
.panel-toggle,.vessel-back-compact{width:32px!important;height:32px!important;min-width:32px!important;padding:0!important;display:grid!important;place-items:center!important;line-height:1!important}
.panel-toggle span,.vessel-back-compact{line-height:1!important;text-align:center!important;text-indent:0!important}.vessel-back-compact{font-size:0!important}.vessel-back-compact::before{content:"";width:8px;height:8px;border-left:3px solid currentColor;border-bottom:3px solid currentColor;transform:translateX(2px) rotate(45deg)}
.panel-toggle span{font-size:0!important}.panel-toggle span::before{content:"";width:8px;height:8px;border-left:3px solid currentColor;border-bottom:3px solid currentColor;transform:translateY(-2px) rotate(-45deg)}.fleet-panel:not(.panel-collapsed) .panel-toggle span{transform:none!important}.fleet-panel:not(.panel-collapsed) .panel-toggle span::before{transform:translateY(2px) rotate(135deg)}

/* ===== V11.53 compact live-severity Quick Settings ===== */
.quick-enabled{margin-top:0!important;padding:10px 12px!important}.quick-enabled div span{font-size:9px!important}.quick-settings-footer{justify-content:flex-start!important;margin-top:8px!important;padding-top:7px!important}.quick-settings-footer .autosave-note{font-size:9.5px!important}

/* ===== V11.54 responder identity and silenced-state actions ===== */
.quick-settings-subtitle{display:block;margin-top:5px;font-size:10px;font-weight:900;letter-spacing:.12em;text-align:center;text-transform:uppercase;color:#657985}
#modal[data-alert-severity="red"] .quick-settings-subtitle{color:#9e3b34}#modal[data-alert-severity="yellow"] .quick-settings-subtitle{color:#806600}
.lens-actions .view-silenced{color:#fff!important;font-weight:900!important}.lens-actions .view-silenced.red{background:#b94238!important;border-color:#9f3028!important}.lens-actions .view-silenced.yellow{background:#e0bd16!important;border-color:#b99a08!important;color:#3c3300!important}
.lens-actions .end-silence{background:#6676aa!important;border-color:#536394!important;color:#fff!important;font-weight:900!important}.lens-actions .end-silence:hover{background:#536394!important}
.responder-names{display:block;margin-top:2px;font-size:8.5px;color:#557060}

/* ===== V11.55 account hierarchy and vessel-profile entry ===== */
.account-menu{width:280px!important;padding:9px!important}.account-head{margin:0 0 7px!important;padding:10px 11px 12px!important;border:0!important;border-radius:9px;background:#edf4f7}.account-head>span{margin:0 0 4px!important;font-size:8px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase;color:#6a808b!important}.account-head strong{font-size:17px!important;color:#173b4e!important}.account-head small{display:block;margin-top:2px;font-size:9px;color:#607985}.account-section-label{padding:7px 9px 4px;font-size:8px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;color:#6c818b}.account-menu button{padding:10px 11px!important}.account-menu button strong{font-size:12px!important;color:#203f50}.account-menu button span{font-size:9px!important}.account-menu button.current-persona{display:none}.account-menu hr{margin:8px 4px!important;border-top:1px solid #cbd9df!important}.account-menu .account-preferences{border:1px solid #9cb8c5!important;background:#f3f8fa!important}.account-menu .account-preferences:hover{background:#e3f0f5!important}.account-menu .account-preferences strong{color:#165d7c!important}
.preference-nav-list{display:grid;gap:10px}.preference-nav-list>button,.vessel-profile-list>button{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:1px solid #b7cbd4;border-radius:11px;background:#fff;color:#264555;text-align:left;cursor:pointer}.preference-nav-list>button:hover,.vessel-profile-list>button:hover{border-color:#4e91b1;background:#edf6fa}.preference-nav-list>button>span:nth-child(2),.vessel-profile-list>button>span:nth-child(2){flex:1}.preference-nav-list strong,.vessel-profile-list strong{display:block;font-size:13px;color:#1c3b4c}.preference-nav-list small,.vessel-profile-list small{display:block;margin-top:3px;font-size:9.5px;line-height:1.35;color:#687e89}.preference-nav-list b,.vessel-profile-list b{font-size:23px;color:#367796}.preference-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#dcecf4;color:#1e6788;font-size:10px;font-weight:900}.preference-icon.asset{background:#e9e5f0;color:#66527d}.preference-demo-note{margin:12px 2px 0!important;font-size:9.5px!important;color:#718690!important}
.vessel-profile-list{display:grid;gap:7px}.asset-thumb-placeholder{display:grid;place-items:center;flex:0 0 48px;width:48px;height:38px;border-radius:8px;background:linear-gradient(135deg,#d7e7ef,#edf4f7);color:#2b6f8f;font-size:18px;font-weight:900}.asset-photo-preview{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;padding:14px;border:1px solid #b8ccd5;border-radius:12px;background:#f7fafb}.asset-photo-placeholder{display:grid;place-items:center;align-content:center;aspect-ratio:4/3;border:2px dashed #9db8c5;border-radius:10px;background:linear-gradient(135deg,#dbeaf1,#f2f7f9);color:#2c718f}.asset-photo-placeholder span{font-size:38px;font-weight:900}.asset-photo-placeholder small{font-size:9px;font-weight:800}.asset-photo-preview>div:last-child>strong{font-size:15px;color:#1d3d4e}.asset-photo-preview p{margin:5px 0 11px!important}.asset-type-preview{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:11px;padding:11px 13px;border:1px solid #c5d5dc;border-radius:10px;background:#fff}.asset-type-preview>span{font-size:11px;font-weight:850;color:#29495a}.asset-type-preview select{min-width:180px}
@media(max-width:640px){.asset-photo-preview{grid-template-columns:1fr}.asset-photo-placeholder{max-width:210px}.asset-type-preview{align-items:flex-start;flex-direction:column}.asset-type-preview select{width:100%}}

/* ===== V11.56 functional browser-local vessel photos ===== */
.asset-thumb{position:relative;display:block;flex:0 0 auto;overflow:hidden;border:1px solid #9eb8c4;border-radius:7px;background:linear-gradient(135deg,#dceaf1,#f3f7f9);color:#2b6d8a}.asset-thumb img{width:100%;height:100%;object-fit:contain;object-position:center;transform:translate(var(--asset-x),var(--asset-y)) scale(var(--asset-zoom));transform-origin:center}.asset-thumb>span{display:grid;place-items:center;width:100%;height:100%;font-size:8px;font-weight:900;letter-spacing:.05em}.list-thumb{width:34px;height:26px}.lens-thumb{width:42px;height:32px;margin-left:3px}.profile-list-thumb{width:54px;height:41px;border-radius:8px}.profile-list-thumb>span{font-size:10px}.unit-name-line{align-items:center}.compact-vessel-title .lens-thumb+h2{margin-left:1px}
.asset-profile-editor{display:grid;gap:11px}.asset-crop-shell{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(180px,.8fr);gap:16px;align-items:center}.asset-crop-frame{aspect-ratio:4/3;overflow:hidden;border:2px solid #367b9b;border-radius:12px;background:#dce9ef;box-shadow:0 5px 18px rgba(20,60,80,.14)}.asset-crop-frame .crop-photo{width:100%;height:100%;border:0;border-radius:0}.asset-crop-controls{display:grid;gap:10px}.asset-crop-controls label{display:grid;gap:4px}.asset-crop-controls label span{font-size:9px;font-weight:850;color:#466370}.asset-crop-controls input{width:100%;accent-color:#28799d}.asset-upload-zone{display:grid;place-items:center;padding:14px;border:2px dashed #96b3c0;border-radius:11px;background:#f5f9fa;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}.asset-upload-zone:hover,.asset-upload-zone.dragging{border-color:#28799d;background:#e5f2f7}.asset-upload-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.asset-upload-zone .upload-mark{display:grid;place-items:center;width:30px;height:30px;margin-bottom:5px;border-radius:50%;background:#28799d;color:#fff;font-size:20px;line-height:1}.asset-upload-zone strong{font-size:12px;color:#1f4659}.asset-upload-zone small{margin-top:3px;font-size:8.5px;color:#6c818b}.asset-photo-actions{display:flex;justify-content:flex-end}.asset-sharing-note{display:flex;gap:12px;align-items:flex-start;margin-top:11px;padding:10px 12px;border:1px solid #d1c8a8;border-radius:10px;background:#fbf8ea}.asset-sharing-note strong{flex:0 0 auto;font-size:10px;color:#665a2d}.asset-sharing-note span{font-size:9px;line-height:1.4;color:#716945}.asset-type-preview>span{display:flex;flex-direction:column;gap:2px}.asset-type-preview>span small{font-size:8.5px;font-weight:500;color:#71858e}
@media(max-width:700px){.asset-crop-shell{grid-template-columns:1fr}.asset-crop-frame{max-width:420px}.asset-sharing-note{flex-direction:column;gap:3px}}

/* ===== V11.57 compact draft-based photo editor ===== */
.asset-crop-frame .asset-thumb img{object-position:center;transform:translate(var(--asset-x),var(--asset-y)) scale(var(--asset-zoom));transform-origin:center}.asset-crop-frame.dragging{border-color:#1f789d;box-shadow:0 0 0 4px rgba(31,120,157,.16)}
.asset-photo-actions{gap:8px;margin-top:0}.compact-photo-button{display:grid;place-items:center;min-height:34px;padding:7px 12px;border:1px solid #4385a2;border-radius:8px;background:#eef7fa;color:#215e79;font-size:10.5px;font-weight:850;cursor:pointer}.compact-photo-button:hover{background:#dceef5}.compact-photo-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.asset-type-preview{margin-top:9px!important;padding:9px 12px!important}.asset-sharing-note{margin-top:8px!important;padding:7px 10px!important}.asset-save-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #cbd9df}.asset-save-row span{margin-right:auto;font-size:9px;color:#6b808a}.asset-save-row .primary{min-height:36px;padding:8px 16px}

/* ===== V11.58 portrait orientation and aspect-ratio preservation ===== */
.asset-thumb img{object-fit:contain!important}

/* ===== V11.59 personal information and notification defaults ===== */
.personal-profile-form{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.personal-profile-form label{display:grid;gap:4px}.personal-profile-form label:first-child{grid-column:1/-1}.personal-profile-form label span{font-size:9px;font-weight:850;color:#476371}.personal-profile-form input{width:100%;box-sizing:border-box;padding:8px 10px}.notification-defaults{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;margin-top:12px;padding:11px 13px;border:1px solid #c5d5dc;border-radius:10px;background:#fff}.notification-defaults>div strong{display:block;font-size:11px;color:#29495a}.notification-defaults>div small{display:block;margin-top:2px;font-size:8.5px;color:#71858e}.notification-defaults>label{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;color:#315465}.notification-defaults input{accent-color:#28799d}.password-entry{display:flex;align-items:center;width:100%;margin-top:10px;padding:10px 12px;border:1px solid #b7cbd4;border-radius:10px;background:#fff;color:#264555;text-align:left;cursor:pointer}.password-entry:hover{border-color:#4e91b1;background:#edf6fa}.password-entry span{flex:1}.password-entry strong,.password-entry small{display:block}.password-entry strong{font-size:11px}.password-entry small{margin-top:2px;font-size:8.5px;color:#71858e}.password-entry b{font-size:22px;color:#367796}.personal-save-row{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:10px;border-top:1px solid #cbd9df}.personal-save-row>span{margin-right:auto;font-size:9px;color:#6b808a}.personal-save-row .primary{min-height:36px;padding:8px 16px}
@media(max-width:600px){.personal-profile-form{grid-template-columns:1fr}.personal-profile-form label:first-child{grid-column:auto}.notification-defaults{grid-template-columns:1fr 1fr}.notification-defaults>div{grid-column:1/-1}}

/* ===== V11.60 compact account, delivery and optional profile sections ===== */
.account-compact-section{margin-bottom:10px;padding:11px 12px;border:1px solid #bfd0d8;border-radius:11px;background:#fff}.account-section-heading{display:flex;align-items:center;margin-bottom:9px}.account-section-heading strong,.account-section-heading small{display:block}.account-section-heading strong{font-size:12px;color:#203f50}.account-section-heading small{margin-top:2px;font-size:8.5px;color:#70858f}.account-wide-field,.delivery-row label,.password-change label,.optional-account-grid label{display:grid;gap:4px}.account-wide-field>span,.delivery-row label>span,.password-change label>span,.optional-account-grid label>span{font-size:8.5px;font-weight:850;color:#4f6875}.account-wide-field input,.delivery-row input,.delivery-row select,.password-change input,.optional-account-grid input{box-sizing:border-box;width:100%;padding:7px 9px}.password-entry{margin-top:8px}.password-entry>b{font-size:10px!important}.password-change{display:grid;gap:7px;margin-top:8px;padding:9px;border-radius:8px;background:#f3f7f9}.password-change.hidden{display:none}.password-strength{height:6px;overflow:hidden;border-radius:5px;background:#dbe3e7}.password-strength i{display:block;width:0;height:100%;background:#ba3f35;transition:width .15s,background .15s}.password-strength i[data-score="1"]{width:25%}.password-strength i[data-score="2"]{width:50%;background:#d8a315}.password-strength i[data-score="3"]{width:75%;background:#74a845}.password-strength i[data-score="4"]{width:100%;background:#2f8d58}.password-change>small{font-size:8px;color:#6d818b}.delivery-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin-top:7px}.delivery-row.phone{grid-template-columns:105px 1fr auto}.verify-state{min-height:34px;padding:6px 9px;border:1px solid #7eaf91;border-radius:7px;background:#edf7f0;color:#34724a;font-size:9px;font-weight:850}.delivery-defaults{display:flex;align-items:center;gap:14px;margin-top:9px;font-size:9px;color:#526d79}.delivery-defaults>span{font-weight:850}.delivery-defaults label{display:flex;align-items:center;gap:5px;font-weight:750}.delivery-defaults input{accent-color:#28799d}.optional-account-section{margin-top:8px;border:1px solid #c6d5dc;border-radius:10px;background:#fff}.optional-account-section summary{display:flex;align-items:center;padding:10px 12px;list-style:none;cursor:pointer}.optional-account-section summary::-webkit-details-marker{display:none}.optional-account-section summary span{flex:1}.optional-account-section summary strong,.optional-account-section summary small{display:block}.optional-account-section summary strong{font-size:11px;color:#29495a}.optional-account-section summary small{margin-top:2px;font-size:8.5px;color:#71858e}.optional-account-section summary b{font-size:20px;color:#367796;transition:transform .15s}.optional-account-section[open] summary b{transform:rotate(90deg)}.optional-account-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:0 12px 11px}.optional-account-grid .full{grid-column:1/-1}.optional-account-grid p{margin:0!important;font-size:8.5px!important;line-height:1.4!important}.personal-save-row{margin-top:10px}
@media(max-width:600px){.delivery-row,.delivery-row.phone,.optional-account-grid{grid-template-columns:1fr}.optional-account-grid .full{grid-column:auto}}

/* ===== V11.61 reliable keyboard/password flow ===== */
.password-change label span em{margin-left:5px;font-size:7.5px;font-style:normal;font-weight:600;color:#7b8e97}.password-match{font-weight:850!important}.password-match.neutral{color:#71858e!important}.password-match.good{color:#2f7f51!important}.password-match.bad{color:#af3d35!important}

/* ===== V11.63 phone validation, visible verification, sticky save ===== */
.delivery-row.phone{grid-template-columns:minmax(150px,1.1fr) minmax(170px,1.4fr) auto}.verify-state.pending{border-color:#c29d3e;background:#fff8df;color:#7b641c}.phone-guidance{display:block;margin-top:5px;font-size:8px;color:#6f838d}.personal-save-row{position:sticky;bottom:-22px;z-index:4;margin-left:-22px;margin-right:-22px;padding:11px 22px 22px;background:linear-gradient(to bottom,rgba(247,250,251,.95),#f7fafb 28%);box-shadow:0 -8px 14px rgba(20,55,73,.07)}

/* ===== V11.64 fixed account header/footer and pre-verification validation ===== */
.modal-card:has(#savePersonalProfile){display:flex!important;flex-direction:column!important;overflow:hidden!important}.modal-card:has(#savePersonalProfile)>#modalBody{min-height:0;overflow-y:auto;padding-right:4px}.modal-card:has(#savePersonalProfile)>.eyebrow,.modal-card:has(#savePersonalProfile)>h2{flex:0 0 auto}.modal-card:has(#savePersonalProfile) .personal-save-row{bottom:0;margin:10px 0 0;padding:11px 0 0;background:#f7fafb;box-shadow:0 -8px 14px rgba(20,55,73,.07)}

/* ===== V11.66 explicit country controls ===== */
.country-combobox{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:0;width:100%}
.country-combobox input{min-width:0;border-radius:7px 0 0 7px!important}
.country-combobox button{border:1px solid #aec2cc;border-left:0;border-radius:0 7px 7px 0;background:#eef5f7;color:#225d78;font-size:18px;font-weight:800;cursor:pointer}
.country-combobox button:hover,.country-combobox button:focus-visible{background:#dcecf2;outline:none}

/* ===== V11.68 Share and RideWatch vessel actions ===== */
.vessel-feature-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:8px 0}
.vessel-feature-actions>button{display:flex;align-items:center;gap:8px;min-width:0;padding:8px 9px;border:1px solid #a9c0cb;border-radius:9px;background:#f7fbfc;color:#294b5c;text-align:left;cursor:pointer}
.vessel-feature-actions>button:hover{border-color:#4b8eaa;background:#edf7fa}
.vessel-feature-actions>button>span:nth-child(2){min-width:0;flex:1}.vessel-feature-actions strong,.vessel-feature-actions small{display:block}.vessel-feature-actions strong{font-size:10px}.vessel-feature-actions small{margin-top:1px;font-size:7.5px;color:#6e838d;white-space:nowrap}.vessel-feature-actions b{font-size:6.5px;letter-spacing:.06em;text-transform:uppercase;color:#9a5a35}
.feature-action-mark{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#397fa2;color:#fff;font-size:15px;font-weight:900}.vessel-feature-actions .ridewatch-mark{flex:0 0 23px;width:23px;height:23px;font-size:7px}
.share-preview-intro{padding:2px 2px 10px}.share-preview-intro strong{font-size:15px;color:#244657}.share-preview-intro p{margin:4px 0 0;font-size:10px;line-height:1.45;color:#647b86}.share-preview-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #bfd0d8;border-radius:10px;background:#fff}.share-preview-card>div{flex:1}.share-preview-card span,.share-preview-card strong,.share-preview-card small{display:block}.share-preview-card span{font-size:7px;font-weight:900;letter-spacing:.1em;color:#6d838d}.share-preview-card strong{margin-top:3px;font-size:14px;color:#244657}.share-preview-card small{margin-top:2px;font-size:9px;color:#6f838d}.share-recipient-field{display:grid;gap:4px;margin-top:10px}.share-recipient-field span{font-size:9px;font-weight:850;color:#496674}.share-recipient-field input{padding:9px 10px}.share-live-option{display:flex;align-items:flex-start;gap:9px;margin-top:10px;padding:11px;border:1px solid #c6d5dc;border-radius:9px;background:#f7fafb}.share-live-option input{margin-top:2px;accent-color:#28799d}.share-live-option strong,.share-live-option small{display:block}.share-live-option strong{font-size:10px;color:#29495a}.share-live-option small{margin-top:2px;font-size:8.5px;color:#71858e}.share-preview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}

/* ===== V11.69 RideWatch entry and richer Share concept ===== */
.vessel-feature-actions b{flex:0 0 auto;font-size:6px!important;letter-spacing:.03em!important}.vessel-feature-actions>button:last-child>span:nth-child(2){max-width:70px}
.ridewatch-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.ridewatch-mode-grid>button{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #abc2cd;border-radius:11px;background:#fff;text-align:left;color:#29495a;cursor:pointer}.ridewatch-mode-grid>button:hover{border-color:#397fa2;background:#eef7fa}.ridewatch-mode-grid b{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#397fa2;color:#fff;font-size:8px}.ridewatch-mode-grid strong,.ridewatch-mode-grid small{display:block}.ridewatch-mode-grid strong{font-size:12px}.ridewatch-mode-grid small{margin-top:3px;font-size:8.5px;line-height:1.35;color:#70858f}.ridewatch-learning-note{padding:11px 13px;border-left:4px solid #397fa2;border-radius:8px;background:#eef5f7}.ridewatch-learning-note strong,.ridewatch-learning-note span{display:block}.ridewatch-learning-note strong{font-size:10px;color:#29495a}.ridewatch-learning-note span{margin-top:3px;font-size:8.5px;color:#6a808b}.ridewatch-live-context,.ridewatch-period-select{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 8px;width:100%;box-sizing:border-box;padding:12px;border:1px solid #b8ccd5;border-radius:9px;background:#f5fafb;text-align:left}.ridewatch-live-context small,.ridewatch-period-select span{grid-column:2;font-size:8.5px;color:#6d818b}.live-dot{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:#55a66c}.ridewatch-entry-form{display:grid;gap:8px;margin-top:12px}.ridewatch-entry-form>span{font-size:9px;font-weight:850;color:#496674}.ride-quality-choices,.ride-motion-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ride-quality-choices button,.ride-motion-choices button,.share-channel-row button{padding:8px;border:1px solid #b7cbd4;border-radius:7px;background:#fff;color:#36596a;cursor:pointer}.ride-quality-choices button.active,.ride-motion-choices button.active,.share-channel-row button.active{border-color:#397fa2;background:#397fa2;color:#fff}.ridewatch-entry-form label,.share-comment-field{display:grid;gap:4px}.ridewatch-entry-form label span,.share-comment-field span{font-size:9px;font-weight:850;color:#496674}.ridewatch-entry-form em,.share-comment-field em{font-weight:500;color:#788d96}.ridewatch-entry-form textarea,.share-comment-field textarea{box-sizing:border-box;width:100%;min-height:66px;padding:9px}.share-channel-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.share-channel-row>span{font-size:9px;font-weight:850;color:#496674}.share-channel-row>div{display:flex;gap:5px}.share-channel-row button{min-width:62px;padding:7px}.share-comment-field{margin-top:10px}.share-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px;padding:10px;border:1px solid #c6d5dc;border-radius:9px;background:#f7fafb}.share-option-grid label{display:flex;align-items:center;gap:6px;font-size:8.5px;color:#526d79}.share-option-grid input{accent-color:#28799d}

/* ===== V11.70 Watch assurance page ===== */
.vessel-tool.monitoring-active[data-vessel-action="alerts"]{border-color:#77b592!important;animation:monitoring-breathe 5.5s ease-in-out infinite}
@keyframes monitoring-breathe{0%,100%{box-shadow:0 0 0 0 rgba(55,151,98,0)}50%{box-shadow:0 0 0 3px rgba(55,151,98,.18)}}
@media(prefers-reduced-motion:reduce){.vessel-tool.monitoring-active[data-vessel-action="alerts"]{animation:none}}
.watch-range{display:flex;justify-content:flex-end;gap:5px;margin:-4px 0 10px}.watch-range button{padding:6px 11px;border:1px solid #b6cbd5;border-radius:999px;background:#fff;color:#496674;font-size:9px;font-weight:850;cursor:pointer}.watch-range button.active{border-color:#397fa2;background:#397fa2;color:#fff}
.watch-hero{display:grid;grid-template-columns:210px 1fr;gap:17px;align-items:stretch}.watch-vessel-photo{position:relative;min-height:130px;overflow:hidden;border:1px solid #afc5cf;border-radius:12px;background:#dce8ed}.watch-vessel-photo img{width:100%;height:100%;object-fit:contain;transform:translate(var(--asset-x),var(--asset-y)) scale(var(--asset-zoom));transform-origin:center}.watch-vessel-photo.fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#397fa2}.watch-vessel-photo.fallback>span{font-size:28px;font-weight:900}.watch-vessel-photo.fallback small{margin-top:5px;color:#6a808b}
.watch-assurance{display:flex;flex-direction:column;justify-content:center;padding:13px 4px}.watch-status{display:flex;align-items:center;gap:7px;font-size:8px;font-weight:900;letter-spacing:.1em;color:#347753}.watch-status i{width:9px;height:9px;border-radius:50%;background:#58a873;box-shadow:0 0 0 4px rgba(88,168,115,.13)}.watch-assurance h3{margin:8px 0 5px;font-size:20px;line-height:1.15;color:#173448}.watch-assurance p{margin:0;font-size:10px;line-height:1.45;color:#526f7c}.watch-assurance small{margin-top:10px;font-size:8.5px;color:#758993}
.watch-assurance.needs-attention .watch-status{color:#a34238}.watch-assurance.needs-attention .watch-status i{background:#c44d42;box-shadow:0 0 0 4px rgba(196,77,66,.13)}
.watch-coverage{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.watch-coverage>div{padding:10px 11px;border:1px solid #c5d5dc;border-radius:9px;background:#f7fafb}.watch-coverage span,.watch-coverage strong,.watch-coverage small{display:block}.watch-coverage span{font-size:7px;font-weight:900;letter-spacing:.08em;color:#69808b}.watch-coverage strong{margin-top:3px;font-size:15px;color:#244657}.watch-coverage small{margin-top:2px;font-size:7.5px;line-height:1.3;color:#728790}
.watch-section-title{display:flex;align-items:end;justify-content:space-between;margin:15px 0 7px}.watch-section-title span,.watch-section-title small{display:block}.watch-section-title span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#526f7c}.watch-section-title small{margin-top:2px;font-size:8px;color:#7a8e97}.watch-section-title button,.watch-footer button{border:0;background:transparent;color:#28799d;font-size:9px;font-weight:850;cursor:pointer}
.watch-trends{display:grid;grid-template-columns:1fr 1fr;gap:8px}.watch-trends article{display:grid;grid-template-columns:1fr 1.15fr;align-items:center;gap:8px;padding:10px;border:1px solid #c4d5dc;border-radius:9px;background:#fff}.watch-trends span,.watch-trends strong,.watch-trends small{display:block}.watch-trends span{font-size:7px;font-weight:900;letter-spacing:.07em;color:#69808b}.watch-trends strong{margin-top:3px;font-size:13px;color:#244657}.watch-trends small{margin-top:2px;font-size:7.5px;color:#728790}.watch-sparkline{width:100%;height:44px}.watch-sparkline line{stroke:#d5e0e5;stroke-width:1}.watch-sparkline polyline{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.watch-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding:9px 11px;border-radius:8px;background:#edf7f1;color:#3d7255;font-size:8.5px}.watch-footer b{display:inline-grid;place-items:center;width:17px;height:17px;margin-right:5px;border-radius:50%;background:#5aa874;color:#fff}
@media(max-width:640px){.watch-hero{grid-template-columns:1fr}.watch-vessel-photo{min-height:160px}.watch-coverage{grid-template-columns:1fr}.watch-trends{grid-template-columns:1fr}}

/* ===== V11.65 final compact account polish ===== */
.modal-card:has(#savePersonalProfile)>h2{margin-bottom:10px!important}.account-compact-section{padding:10px 11px;margin-bottom:8px}.account-section-heading{margin-bottom:7px}.optional-account-section{margin-top:7px}.optional-account-section summary{padding:9px 11px}.optional-account-grid{padding:0 11px 10px}.optional-account-grid select{width:100%}.modal-card:has(#savePersonalProfile) .personal-save-row{margin-top:8px;padding-top:9px}

/* ===== V11.71 compact Watch + inward monitoring pulse ===== */
.vessel-tool.monitoring-active[data-vessel-action="alerts"]{position:relative;overflow:hidden;border:2px solid #69a987!important;animation:monitoring-inward 5s ease-in-out infinite!important}
.vessel-tool.monitoring-active[data-vessel-action="alerts"]::after{content:"";position:absolute;right:6px;top:6px;width:6px;height:6px;border-radius:50%;background:#35945e;animation:monitoring-dot 5s ease-in-out infinite}
@keyframes monitoring-inward{0%,100%{box-shadow:inset 0 0 0 rgba(55,151,98,0)}50%{box-shadow:inset 0 0 15px rgba(55,151,98,.22)}}
@keyframes monitoring-dot{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1.25)}}
@media(prefers-reduced-motion:reduce){.vessel-tool.monitoring-active[data-vessel-action="alerts"],.vessel-tool.monitoring-active[data-vessel-action="alerts"]::after{animation:none!important}}
.modal-card:has(.watch-dashboard){width:min(820px,94vw)!important;max-height:calc(100vh - 52px)!important;overflow:hidden!important}.modal-card:has(.watch-dashboard)>h2{margin-bottom:9px!important}.modal-card:has(.watch-dashboard)>#modalBody{overflow:hidden}.watch-dashboard{min-width:0}.watch-dashboard .watch-range{margin:-2px 0 7px}
.watch-dashboard .watch-hero{grid-template-columns:170px minmax(210px,1fr) 180px;gap:11px}.watch-dashboard .watch-vessel-photo{min-height:112px}.watch-dashboard .watch-assurance{padding:7px 3px}.watch-dashboard .watch-assurance h3{margin:6px 0 4px;font-size:17px}.watch-dashboard .watch-assurance small{margin-top:6px}.watch-map-card{position:relative;min-height:112px;overflow:hidden;border:1px solid #afc5cf;border-radius:11px;background:#dbe7ec}.watch-map-card>div{position:absolute;inset:0}.watch-map-card>span{position:absolute;left:7px;right:7px;bottom:6px;padding:5px 7px;border-radius:6px;background:rgba(255,255,255,.9);box-shadow:0 2px 7px rgba(15,49,66,.14)}.watch-map-card strong,.watch-map-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.watch-map-card strong{font-size:8px;color:#244657}.watch-map-card small{margin-top:1px;font-size:6.8px;color:#6b818b}.watch-map-card .maplibregl-canvas{outline:none}
.watch-dashboard .watch-coverage{margin-top:8px}.watch-dashboard .watch-coverage>div{padding:8px 10px}.watch-dashboard .watch-section-title{margin:10px 0 6px}.watch-dashboard .watch-trends{gap:7px}.watch-dashboard .watch-trends article{padding:8px 9px}.watch-dashboard .watch-sparkline{height:36px}.watch-dashboard .watch-footer{margin-top:7px;padding:7px 10px}
@media(max-width:720px){.modal-card:has(.watch-dashboard){overflow:auto!important}.modal-card:has(.watch-dashboard)>#modalBody{overflow:visible}.watch-dashboard .watch-hero{grid-template-columns:1fr 1fr}.watch-dashboard .watch-assurance{grid-column:1/-1;grid-row:1}.watch-dashboard .watch-vessel-photo,.watch-map-card{min-height:130px}}

/* ===== V11.72 Activity Reports + three-state Alert readiness ===== */
.vessel-tool.alert-system{position:relative;overflow:hidden;border-width:2px!important;animation:alert-state-inward 4.8s ease-in-out infinite!important}.vessel-tool.alert-system.green{--alert-rgb:53,148,94;border-color:#4b9f70!important;color:#2e8555!important}.vessel-tool.alert-system.yellow{--alert-rgb:210,164,20;border-color:#d2a414!important;color:#a77c00!important;background:#fffbed!important}.vessel-tool.alert-system.red{--alert-rgb:190,62,52;border-color:#be3e34!important;color:#b2332b!important;background:#fff3f2!important}.vessel-tool.alert-system .tool-icon{color:inherit!important;fill:rgba(var(--alert-rgb),.10)}.vessel-tool.alert-system span{color:inherit!important;font-weight:850!important}
@keyframes alert-state-inward{0%,100%{box-shadow:inset 0 0 0 rgba(var(--alert-rgb),0)}50%{box-shadow:inset 0 0 16px rgba(var(--alert-rgb),.25)}}
@media(prefers-reduced-motion:reduce){.vessel-tool.alert-system{animation:none!important}}
.alert-system-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-bottom:11px;padding:11px 12px;border:2px solid;border-radius:10px}.alert-system-banner.green{border-color:#4b9f70;background:#eaf7ef;color:#2d7049}.alert-system-banner.yellow{border-color:#d2a414;background:#fff8d8;color:#765d0d}.alert-system-banner.red{border-color:#be3e34;background:#fff0ee;color:#9e3028}.alert-system-banner .alert-system-bell{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.72)}.alert-system-banner .tool-icon{width:20px;height:20px}.alert-system-banner strong,.alert-system-banner small{display:block}.alert-system-banner strong{font-size:12px}.alert-system-banner small{margin-top:2px;font-size:8.5px;line-height:1.35}.alert-system-banner button{padding:7px 10px;border:1px solid currentColor;border-radius:7px;background:#fff;color:inherit;font-size:8.5px;font-weight:900;cursor:pointer}
.watch-footer>div{display:flex;align-items:center;gap:9px}
.modal-card:has(.activity-report){width:min(900px,95vw)!important;max-height:calc(100vh - 34px)!important;overflow:hidden!important}.modal-card:has(.activity-report)>h2{margin-bottom:9px!important}.modal-card:has(.activity-report)>#modalBody{overflow:hidden}.activity-report{display:grid;gap:9px}.activity-report-head{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:11px}.activity-report-head>div:nth-child(2)>span,.activity-report-head>div:nth-child(2)>strong,.activity-report-head>div:nth-child(2)>small{display:block}.activity-report-head>div:nth-child(2)>span{font-size:7.5px;font-weight:900;letter-spacing:.1em;color:#637b87}.activity-report-head>div:nth-child(2)>strong{margin-top:2px;font-size:15px;color:#244657}.activity-report-head>div:nth-child(2)>small{margin-top:2px;font-size:8px;color:#71858e}.activity-photo{display:grid;place-items:center;width:56px;height:42px;overflow:hidden;border:1px solid #a9c0cb;border-radius:8px;background:#dce8ed;color:#397fa2;font-weight:900}.activity-photo img{width:100%;height:100%;object-fit:contain;transform:translate(var(--asset-x),var(--asset-y)) scale(var(--asset-zoom));transform-origin:center}.activity-period{display:flex;gap:4px}.activity-period button{padding:6px 10px;border:1px solid #b6cbd5;background:#fff;color:#486573;font-size:8.5px;font-weight:850;cursor:pointer}.activity-period button:first-child{border-radius:7px 0 0 7px}.activity-period button:last-child{border-radius:0 7px 7px 0}.activity-period button.active{border-color:#397fa2;background:#397fa2;color:#fff}
.activity-map-shell{position:relative;height:300px;overflow:hidden;border:1px solid #abc1cc;border-radius:11px;background:#dce8ed}.activity-map-shell>#activityMainMap{position:absolute;inset:0}.activity-locator{position:absolute;right:10px;top:10px;width:170px;height:108px;overflow:hidden;border:3px solid #fff;border-radius:9px;background:#dce8ed;box-shadow:0 4px 14px rgba(15,49,66,.24)}.activity-locator>#activityLocatorMap{position:absolute;inset:0}.activity-locator>span{position:absolute;left:5px;bottom:5px;padding:3px 6px;border-radius:5px;background:rgba(255,255,255,.9);font-size:7px;font-weight:850;color:#365665}.activity-map-label{position:absolute;left:10px;bottom:10px;padding:7px 9px;border-radius:7px;background:rgba(255,255,255,.92);box-shadow:0 3px 10px rgba(15,49,66,.16)}.activity-map-label strong,.activity-map-label span{display:block}.activity-map-label strong{font-size:9px;color:#244657}.activity-map-label span{margin-top:2px;font-size:8px;color:#637b87}.activity-map-shell .maplibregl-canvas{outline:none}
.activity-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.activity-stats>div{padding:8px;border:1px solid #c2d3da;border-radius:8px;background:#fff}.activity-stats span,.activity-stats strong,.activity-stats small{display:block}.activity-stats span{font-size:6.5px;font-weight:900;letter-spacing:.07em;color:#6a808b}.activity-stats strong{margin-top:3px;font-size:12px;color:#244657}.activity-stats small{margin-top:2px;font-size:7px;color:#71858e}.activity-highlights{display:flex;align-items:center;gap:12px;padding:9px 11px;border-radius:8px;background:#edf4f7}.activity-highlights>div{flex:1}.activity-highlights span,.activity-highlights strong,.activity-highlights small{display:block}.activity-highlights span{font-size:6.8px;font-weight:900;letter-spacing:.08em;color:#637b87}.activity-highlights strong{margin-top:2px;font-size:9.5px;color:#29495a}.activity-highlights small{margin-top:2px;font-size:7.5px;color:#71858e}.activity-highlights button{padding:7px 10px;border:1px solid #8fb0bf;border-radius:7px;background:#fff;color:#2d6781;font-size:8.5px;font-weight:850;cursor:pointer}.activity-actions{display:flex;justify-content:flex-end;gap:7px}.activity-actions button{padding:7px 11px}
@media(max-width:760px){.modal-card:has(.activity-report){overflow:auto!important}.modal-card:has(.activity-report)>#modalBody{overflow:visible}.activity-map-shell{height:240px}.activity-stats{grid-template-columns:repeat(2,1fr)}.activity-locator{width:130px;height:88px}}

/* ===== V11.73 recipient pause workflow ===== */
.recipient-directory.pause-ready{display:grid;gap:7px}.recipient-pause-row{display:grid;grid-template-columns:1fr auto;overflow:hidden;border:1px solid #bfd0d8;border-radius:9px;background:#fff}.recipient-pause-row>button[data-recipient]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:0;background:#fff;color:#29495a;text-align:left;cursor:pointer}.recipient-pause-row>button[data-recipient] span{min-width:0}.recipient-pause-row>button[data-recipient] strong,.recipient-pause-row>button[data-recipient] small,.recipient-pause-row>button[data-recipient] em{display:block}.recipient-pause-row>button[data-recipient] strong{font-size:11px}.recipient-pause-row>button[data-recipient] small{margin-top:2px;font-size:8px;color:#71858e}.recipient-pause-row>button[data-recipient] em{margin-top:3px;font-size:8px;font-style:normal;font-weight:850;color:#3f8259}.recipient-pause-row>button[data-recipient]>b{font-size:8px;color:#526d79}.recipient-pause-row.paused{border-color:#d0aa3d;background:#fff9e5}.recipient-pause-row.paused>button[data-recipient],.recipient-pause-row.scheduled>button[data-recipient]{background:transparent}.recipient-pause-row.paused>button[data-recipient] em{color:#8b6a08}.recipient-pause-row.scheduled{border-color:#9db9c6;background:#f2f8fa}.recipient-pause-row.scheduled>button[data-recipient] em{color:#3f7086}.recipient-pause-action{min-width:82px;border:0;border-left:1px solid #bfd0d8;background:#f5f9fa;color:#35657b;font-size:8.5px;font-weight:900;cursor:pointer}.recipient-pause-action.resume{background:#fff;color:#8a6710}.recipient-pause-action:hover{background:#e5f2f7}
.recipient-directory.pause-ready .recipient-pause-row>button[data-recipient]{width:auto!important;padding:10px 11px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.recipient-directory.pause-ready .recipient-pause-row>.recipient-pause-action{width:auto!important;min-width:82px;padding:8px 10px!important;border:0!important;border-left:1px solid #bfd0d8!important;border-radius:0!important;background:#f5f9fa!important;box-shadow:none!important}.recipient-directory.pause-ready .recipient-pause-row>.recipient-pause-action.resume{background:#fff!important}.recipient-directory.pause-ready .recipient-pause-row>.recipient-pause-action:hover{background:#e5f2f7!important}
.recipient-pause-summary{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding:10px 12px;border:1px solid #9fc6ad;border-radius:9px;background:#eef8f1}.recipient-pause-summary>span{flex:1}.recipient-pause-summary strong,.recipient-pause-summary small{display:block}.recipient-pause-summary strong{font-size:11px;color:#34724d}.recipient-pause-summary small{margin-top:2px;font-size:8px;color:#678078}.recipient-pause-summary button{padding:7px 10px;border:1px solid #4c8a65;border-radius:7px;background:#fff;color:#34724d;font-size:8.5px;font-weight:900;cursor:pointer}.recipient-pause-summary.paused{border-color:#d0aa3d;background:#fff8dd}.recipient-pause-summary.paused strong{color:#7b6011}.recipient-pause-summary.paused button{border-color:#b78d18;color:#7b6011}.recipient-pause-summary.scheduled{border-color:#9db9c6;background:#f2f8fa}.recipient-pause-summary.scheduled strong{color:#3f7086}
.recipient-pause-intro{padding:10px 12px;border-left:4px solid #397fa2;border-radius:8px;background:#eef5f7}.recipient-pause-intro strong,.recipient-pause-intro span{display:block}.recipient-pause-intro strong{font-size:11px;color:#29495a}.recipient-pause-intro span{margin-top:3px;font-size:8.5px;color:#6b818b}.pause-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px}.pause-choice-grid button{padding:10px;border:1px solid #b7cbd4;border-radius:8px;background:#fff;color:#36596a;text-align:left;cursor:pointer}.pause-choice-grid button:last-child{grid-column:1/-1}.pause-choice-grid button strong,.pause-choice-grid button small{display:block}.pause-choice-grid button strong{font-size:10px}.pause-choice-grid button small{margin-top:2px;font-size:7.5px;color:#71858e}.pause-choice-grid button.active{border-color:#397fa2;background:#e8f3f7;color:#1f6685;box-shadow:inset 0 0 0 1px #397fa2}.pause-custom,.pause-schedule{margin-top:9px;padding:10px 11px;border:1px solid #c3d4dc;border-radius:9px;background:#f7fafb}.pause-custom label,.pause-time-grid label{display:grid;gap:4px}.pause-custom label span,.pause-schedule>span,.pause-time-grid label span{font-size:8.5px;font-weight:850;color:#526d79}.pause-custom input,.pause-time-grid input,.pause-time-grid select{box-sizing:border-box;width:100%;padding:7px 8px}.pause-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:7px 0}.pause-days button{padding:6px 2px;border:1px solid #b7cbd4;border-radius:6px;background:#fff;color:#466674;font-size:8px;font-weight:850;cursor:pointer}.pause-days button.active{border-color:#397fa2;background:#397fa2;color:#fff}.pause-time-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:7px}.settings-actions button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:600px){.pause-choice-grid,.pause-time-grid{grid-template-columns:1fr}.pause-choice-grid button:last-child{grid-column:auto}.pause-days{grid-template-columns:repeat(4,1fr)}}

/* ===== V11.74 simpler recipient pauses + stable vessel controls ===== */
.vessel-tool-grid .vessel-tool{height:65px!important;min-height:65px!important}.vessel-tool.alert-system span{white-space:nowrap!important}
.recipient-pause-row{grid-template-columns:minmax(0,1fr) auto}.recipient-quick-pause{display:flex;align-items:stretch;border-left:1px solid #bfd0d8}.recipient-directory.pause-ready .recipient-quick-pause>button{width:auto!important;min-width:48px!important;padding:7px 8px!important;border:0!important;border-right:1px solid #d3dfe4!important;border-radius:0!important;background:#f5f9fa!important;color:#35657b!important;font-size:8px!important;font-weight:900!important;box-shadow:none!important;cursor:pointer}.recipient-directory.pause-ready .recipient-quick-pause>button:last-child{border-right:0!important}.recipient-directory.pause-ready .recipient-quick-pause>button:hover{background:#e5f2f7!important}.recipient-directory.pause-ready .recipient-quick-pause>button.resume{min-width:94px!important;background:#fff9e5!important;color:#84640d!important}.pause-choice-grid.custom-only{grid-template-columns:1fr 1fr}.pause-choice-grid.custom-only button:last-child{grid-column:auto}.modal-card:has(.pause-choice-grid.custom-only){width:min(650px,92vw)!important}
@media(max-width:720px){.recipient-pause-row{grid-template-columns:1fr}.recipient-quick-pause{border-left:0;border-top:1px solid #bfd0d8}.recipient-directory.pause-ready .recipient-quick-pause>button{flex:1}.vessel-tool-grid .vessel-tool{height:65px!important}.pause-choice-grid.custom-only{grid-template-columns:1fr}}

/* ===== V11.75 RideWatch captain input workflow ===== */
.ridewatch-auto-data{margin-top:9px;padding:9px 11px;border:1px solid #c6d7de;border-radius:9px;background:#f6fafb}.ridewatch-auto-data>span,.ridewatch-time-summary>span{display:block;font-size:7px;font-weight:900;letter-spacing:.08em;color:#647c87}.ridewatch-auto-data>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.ridewatch-auto-data b{padding:4px 7px;border-radius:999px;background:#e6f0f4;color:#496775;font-size:7.5px}.ride-quality-choices.five{grid-template-columns:repeat(5,1fr)}.ride-motion-choices.four{grid-template-columns:repeat(4,1fr)}.ridewatch-period-select.selected{border-color:#397fa2;background:#eaf5f8}.ridewatch-track-picker{position:relative;height:260px;overflow:hidden;border:1px solid #abc2cd;border-radius:11px;background:#dce8ed}.ridewatch-track-picker>#rideWatchTrackMap{position:absolute;inset:0}.ridewatch-track-picker .maplibregl-canvas{outline:none}.ridewatch-track-key{position:absolute;left:10px;bottom:10px;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:7px;background:rgba(255,255,255,.93);font-size:8px;font-weight:850;color:#385665;box-shadow:0 2px 8px rgba(20,55,70,.15)}.ridewatch-track-key>span{width:20px;height:4px;border-radius:4px;background:#a54535}.ridewatch-period-buttons{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;padding:9px 10px;border:1px solid #c4d4db;border-radius:9px}.ridewatch-period-buttons>span{font-size:8.5px;font-weight:850;color:#496674}.ridewatch-period-buttons>div{display:flex;gap:5px}.ridewatch-period-buttons button{padding:6px 9px;border:1px solid #afc5cf;border-radius:6px;background:#fff;color:#41616f;font-size:8px;font-weight:850;cursor:pointer}.ridewatch-period-buttons button.active{border-color:#397fa2;background:#397fa2;color:#fff}.ridewatch-time-summary{margin-top:8px;padding:9px 11px;border-left:4px solid #397fa2;border-radius:8px;background:#eef5f7}.ridewatch-time-summary strong,.ridewatch-time-summary small{display:block}.ridewatch-time-summary strong{margin-top:3px;font-size:11px;color:#29495a}.ridewatch-time-summary small{margin-top:3px;font-size:8px;color:#6c818b}.ridewatch-saved{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #91c1a3;border-radius:11px;background:#edf8f1}.ridewatch-saved>.saved-check{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:#438e60;color:#fff;font-size:20px}.ridewatch-saved strong{font-size:14px;color:#2e6f49}.ridewatch-saved p{margin:4px 0 0!important;font-size:9px!important;color:#59756a}
@media(max-width:650px){.ride-quality-choices.five{grid-template-columns:repeat(3,1fr)}.ride-motion-choices.four{grid-template-columns:repeat(2,1fr)}.ridewatch-period-buttons{align-items:flex-start;flex-direction:column}.ridewatch-period-buttons>div{width:100%}.ridewatch-period-buttons button{flex:1}.ridewatch-track-picker{height:220px}}

/* ===== V11.80 visual-system cleanup: vessel workflow reference ===== */
:root{
 --ui-navy:#17384a;
 --ui-ocean:#257ea6;
 --ui-ocean-dark:#185f80;
 --ui-sky:#e6f2f7;
 --ui-mist:#f4f8fa;
 --ui-line:#b7cbd4;
 --ui-magenta:#d018a8;
 --ui-success:#438e60;
 --ui-caution:#d2a414;
 --ui-danger:#be3e34;
}

/* The vessel header now carries identity and glanceable telemetry as one unit. */
.vessel-header-standard{margin:0 -12px 8px;padding:0 12px 7px;border-bottom:1px solid var(--ui-line);background:linear-gradient(180deg,#f7fbfc 0%,#edf4f7 100%)}
.vessel-header-standard .compact-vessel-title{padding:9px 0 5px!important;gap:7px!important}
.vessel-header-standard .compact-vessel-title h2{min-width:0;margin:0!important;font-size:20px!important;line-height:1.08!important}
.vessel-header-standard .compact-vessel-title .state{flex:0 0 auto;white-space:nowrap}
.vessel-glance-row{display:flex;align-items:center;gap:8px;min-height:31px}
.last-report-compact{flex:1;min-width:58px;color:#58717d;font-size:9px;font-weight:800;white-space:nowrap}
.compact-health-strip{display:flex!important;align-items:stretch;justify-content:flex-end;gap:3px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.compact-health-strip .health-item{display:flex!important;align-items:center;justify-content:center;gap:4px;min-width:42px;height:29px;padding:3px 6px!important;border:1px solid transparent!important;border-radius:7px!important;background:rgba(255,255,255,.78)!important;color:#315d70!important}
.compact-health-strip .health-item:hover,.compact-health-strip .health-item.active{border-color:#8fb3c3!important;background:#fff!important;box-shadow:0 1px 4px rgba(20,62,80,.12)!important}
.compact-health-strip .health-item.warn{border-color:#d7b94f!important;background:#fff9df!important;color:#8a6d0b!important}
.compact-health-strip .health-icon{width:17px!important;height:17px!important;margin:0!important;stroke-width:2.15!important}
.compact-health-strip .health-item>strong{margin:0!important;font-size:9px!important;line-height:1!important;color:var(--ui-navy)!important}
.compact-health-strip .battery-quick{width:25px!important;height:12px!important;margin:0!important}
.compact-health-strip .connection-quick{display:flex!important;align-items:flex-end!important;gap:3px!important}
.compact-health-strip .connection-quick .signal-bars{display:flex!important;align-items:flex-end;gap:1.5px;height:13px}
.compact-health-strip .signal-bars i{display:block;width:2px;border-radius:2px;background:#b5c7cf}
.compact-health-strip .signal-bars i:nth-child(1){height:4px}.compact-health-strip .signal-bars i:nth-child(2){height:7px}.compact-health-strip .signal-bars i:nth-child(3){height:10px}.compact-health-strip .signal-bars i:nth-child(4){height:13px}
.compact-health-strip .signal-bars i.on{background:currentColor}
.compact-health-strip .comm-method{width:17px!important;height:17px!important}

/* Magenta is reserved for the selected track; a neutral casing keeps it legible on both basemaps. */
.dom-track.selected-halo{stroke:#fff;stroke-width:9;stroke-opacity:.86;filter:drop-shadow(0 1px 2px rgba(12,31,42,.52))}
.dom-track.selected{stroke:var(--ui-magenta);stroke-width:4.6;stroke-opacity:1;filter:none}
.dom-track-point{stroke:var(--ui-magenta)!important}

/* Shared alert header rhythm. Title size stays fixed; the header grows when it wraps. */
#modal[data-alert-severity] .modal-card{padding:0 20px 18px!important;overflow:auto!important}
#modal[data-alert-severity] .modal-card>.eyebrow{box-sizing:border-box;margin:0 -20px!important;padding:14px 68px 2px 20px!important;min-height:31px}
#modal[data-alert-severity] .modal-card>h2{box-sizing:border-box;margin:0 -20px 12px!important;padding:2px 68px 13px 20px!important;min-height:48px;border-bottom:1px solid rgba(48,79,96,.22)!important;font-size:23px!important;line-height:1.15!important}
#modal[data-alert-severity] .modal-close{top:14px!important;right:15px!important}
.alert-detail-standard,.quick-settings-standard{min-width:0}
.alert-detail-standard .alert-evidence-grid{gap:8px}
.alert-detail-standard .compact-alert-response{margin:8px 0;padding:7px 9px}
.alert-detail-standard .event-details{margin:6px 0!important}
.alert-detail-standard .alert-history-note{display:flex;align-items:center;gap:10px;padding:3px 1px}
.alert-detail-standard .alert-history-note>span{flex:1}

/* Quick Settings uses compact groups instead of full-width rows for small choices. */
.modal-card:has(.quick-settings-standard){width:min(660px,92vw)!important}
.quick-settings-subtitle{margin-top:5px!important;text-align:left!important}
.quick-settings-standard{display:grid;gap:8px}
.quick-settings-standard .quick-enabled{margin:0!important;min-height:48px;padding:8px 11px!important}
.quick-settings-standard .compact-settings-section{margin:0!important;padding:9px 11px!important;border-color:#c2d3da!important;background:#fff}
.quick-threshold-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:6px}
.quick-threshold-grid .threshold-row{display:grid!important;grid-template-columns:20px minmax(42px,1fr) 10px minmax(72px,1fr)!important;align-items:center;gap:4px;margin:0!important;padding:6px;border:1px solid #d0dde3;border-radius:8px;background:var(--ui-mist)}
.quick-threshold-grid .threshold-number{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#dce9ef;color:#315d70!important;font-size:8px!important;font-weight:900}
.quick-threshold-grid input,.quick-threshold-grid select{box-sizing:border-box;min-width:0;width:100%;padding:6px!important;font-size:10px}
.quick-threshold-grid .threshold-row>span:not(.threshold-number){font-size:12px!important;text-align:center}
.quick-settings-standard .settings-help{display:block;margin-top:6px;font-size:8px;line-height:1.35;color:#6b818b}
.quick-notification-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:7px;margin-top:6px}
.quick-notification-grid .setting-line{box-sizing:border-box;display:flex;align-items:center;gap:8px;min-height:38px;margin:0!important;padding:6px 8px;border:1px solid #d0dde3;border-radius:8px;background:var(--ui-mist)}
.quick-notification-grid .setting-line>span{flex:1;font-size:9.5px;font-weight:750}
.quick-notification-grid select{max-width:145px}
.quick-settings-standard .quick-settings-footer{margin-top:0!important;padding-top:6px!important}

@media(max-width:720px){
 .vessel-header-standard{margin-left:-12px;margin-right:-12px}
 #modal[data-alert-severity] .modal-card{padding:0 15px 15px!important}
 #modal[data-alert-severity] .modal-card>.eyebrow{margin:0 -15px!important;padding-left:15px!important}
 #modal[data-alert-severity] .modal-card>h2{margin-left:-15px!important;margin-right:-15px!important;padding-left:15px!important}
 .quick-threshold-grid{grid-template-columns:1fr}
 .quick-notification-grid{grid-template-columns:1fr}
}
@media(max-width:420px){
 .vessel-header-standard .compact-vessel-title{flex-wrap:wrap}
 .vessel-header-standard .compact-vessel-title h2{min-width:120px}
 .vessel-header-standard .compact-vessel-title .state{margin-left:39px}
 .vessel-glance-row{align-items:flex-start;flex-direction:column;gap:4px}
 .compact-health-strip{width:100%;justify-content:space-between!important}
 .compact-health-strip .health-item{flex:1}
}

/* ===== V11.81 reference component pass ===== */
:root{
 --ui-navy:#132f42;
 --ui-slate:#435f70;
 --ui-ocean:#197eae;
 --ui-ocean-dark:#0e6088;
 --ui-sky:#e5f2f8;
 --ui-success:#209653;
 --ui-caution:#d9ad00;
 --ui-danger:#c83d34;
}
.vessel-header-standard{background:linear-gradient(180deg,#f9fcfd 0%,#edf5f8 100%)}
.vessel-glance-row{display:grid!important;grid-template-columns:minmax(104px,1fr) auto;align-items:center;gap:5px;min-height:34px}
.last-report-compact{display:flex;align-items:baseline;gap:4px;min-width:0;color:var(--ui-slate);white-space:nowrap}
.last-report-compact>span{font-size:8.5px;font-weight:600}
.last-report-compact>strong{overflow:hidden;color:var(--ui-navy);font-size:9.5px;font-weight:850;text-overflow:ellipsis}
.compact-health-strip{display:flex!important;align-items:center;justify-content:flex-end;gap:0!important;min-width:0}
.compact-health-strip .health-item{box-sizing:border-box;display:flex!important;align-items:center;justify-content:center;gap:4px;min-width:0!important;height:30px;padding:3px 7px!important;border:0!important;border-left:1px solid #c8d7de!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.compact-health-strip .health-item:hover,.compact-health-strip .health-item.active{background:rgba(25,126,174,.09)!important;box-shadow:none!important}
.compact-health-strip .glance-battery{min-width:58px!important}.compact-health-strip .glance-connection{min-width:34px!important}.compact-health-strip .glance-temperature{min-width:46px!important}.compact-health-strip .glance-speed{min-width:52px!important}
.compact-health-strip .health-item>strong{margin:0!important;color:var(--ui-navy)!important;font-size:10.5px!important;font-variant-numeric:tabular-nums;line-height:1!important}
.compact-health-strip .status-healthy{color:var(--ui-success)!important}.compact-health-strip .status-caution{color:var(--ui-caution)!important}.compact-health-strip .status-danger{color:var(--ui-danger)!important}.compact-health-strip .status-neutral{color:var(--ui-navy)!important}
.battery-compact{position:relative;box-sizing:border-box;display:block;width:20px;height:11px;padding:1px;border:1.5px solid currentColor;border-radius:2px;color:inherit}
.battery-compact::after{content:"";position:absolute;right:-3px;top:3px;width:2px;height:4px;border-radius:0 1px 1px 0;background:currentColor}
.battery-compact>i{display:block;height:100%;border-radius:1px;background:currentColor}
.connection-symbol{display:block;flex:0 0 auto;width:22px;height:20px;color:inherit}
.connection-symbol .on{stroke:currentColor;opacity:1}.connection-symbol .off{stroke:currentColor;opacity:.2}
.wifi-signal,.satellite-signal{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cell-signal{display:flex;align-items:flex-end;justify-content:center;gap:2px;height:17px}
.cell-signal i{display:block;width:3px;border-radius:2px 2px 0 0;background:currentColor}.cell-signal i:nth-child(1){height:5px}.cell-signal i:nth-child(2){height:8px}.cell-signal i:nth-child(3){height:12px}.cell-signal i:nth-child(4){height:16px}.cell-signal i.off{opacity:.2}.cell-signal i.on{opacity:1}
.state.normal{background:#e2f6ea!important;color:#167a40!important}.state.yellow{background:#fff4c8!important;color:#795f00!important}.state.red{background:#fde9e7!important;color:#a72e27!important}
.vessel-tool.alert-system.green{--alert-rgb:32,150,83;border-color:var(--ui-success)!important;color:#137b40!important;background:#f5fcf7!important}.vessel-tool.alert-system.yellow{--alert-rgb:217,173,0;border-color:var(--ui-caution)!important;color:#7a6000!important;background:#fff9d9!important}.vessel-tool.alert-system.red{--alert-rgb:200,61,52;border-color:var(--ui-danger)!important;color:#a42e27!important}
.vessel-tool.healthy[data-vessel-action="anchor-watch"]{border-color:var(--ui-success)!important;background:#e9f8ef!important;color:#137b40!important;box-shadow:0 0 0 2px rgba(32,150,83,.11)!important}
.alert-system-banner.green{border-color:var(--ui-success)!important;background:#e9f8ef!important;color:#146f3c!important}.alert-system-banner.yellow{border-color:var(--ui-caution)!important;background:#fff6cc!important;color:#725900!important}.alert-system-banner.red{border-color:var(--ui-danger)!important;background:#fdebea!important;color:#982d27!important}
.primary,.btn-primary{background:var(--ui-ocean)!important;border-color:var(--ui-ocean-dark)!important}.primary:hover,.btn-primary:hover{background:var(--ui-ocean-dark)!important}
.dom-track.selected{stroke:var(--ui-magenta);stroke-width:3.6;stroke-opacity:.96;filter:none}

/* Readable reference typography for Alert Details and Quick Settings. */
.quick-settings-standard .quick-enabled strong{font-size:14px!important}.quick-settings-standard .quick-enabled div span{font-size:12px!important;line-height:1.35}
.quick-settings-standard .detail-label,.alert-detail-standard .detail-label{font-size:11px!important;letter-spacing:.08em!important}
.quick-threshold-grid .threshold-row{grid-template-columns:22px minmax(48px,1fr) 12px minmax(76px,1fr)!important;padding:7px}
.quick-threshold-grid .threshold-number{width:20px;height:20px;font-size:11px!important}
.quick-threshold-grid input,.quick-threshold-grid select{min-height:40px;padding:8px!important;font-size:15px!important}
.quick-threshold-grid .threshold-row>span:not(.threshold-number){font-size:15px!important}
.quick-settings-standard .settings-help{font-size:12px;line-height:1.4}
.quick-notification-grid .setting-line{min-height:48px;padding:8px 10px}
.quick-notification-grid .setting-line>span{font-size:13px;font-weight:650}
.quick-notification-grid select{min-height:40px;font-size:14px}
.quick-settings-standard .autosave-note{font-size:13px!important}
.alert-detail-standard{font-size:14px}.alert-detail-standard .compact-alert-response strong{font-size:13px}.alert-detail-standard .compact-response-actions button{min-height:40px;padding:8px 12px!important;font-size:13px!important}.alert-detail-standard .alert-history-note{font-size:12px!important;line-height:1.4}

@media(max-width:720px){
 .quick-threshold-grid{grid-template-columns:1fr!important}
 .quick-notification-grid{grid-template-columns:1fr!important}
}
@media(max-width:420px){
 .vessel-glance-row{grid-template-columns:1fr!important;gap:3px}
 .last-report-compact{padding:0 2px}
 .compact-health-strip{box-sizing:border-box;width:100%;justify-content:stretch!important;border-top:1px solid #c8d7de}
 .compact-health-strip .health-item{flex:1;height:38px;border-left:1px solid #c8d7de!important}
 .compact-health-strip .health-item:first-child{border-left:0!important}
 .vessel-tool-grid{grid-template-columns:repeat(3,1fr)!important}
 .vessel-tool-grid .vessel-tool{min-height:68px!important}
}

/* ===== V11.82 vessel-lens reference corrections ===== */
:root{
 --ui-action:#0f7da9;
 --ui-action-dark:#095f83;
 --ui-action-soft:#e2f2f8;
 --ui-ocean:#0f7da9;
 --ui-ocean-dark:#095f83;
 --ui-magenta:#b51b91;
}

/* The age is a compact two-line timer; it never competes with the readings. */
.vessel-glance-row{
 grid-template-columns:72px minmax(0,1fr)!important;
 gap:8px!important;
 min-height:39px!important;
}
.last-report-compact{
 display:grid!important;
 align-content:center;
 align-items:start!important;
 gap:1px!important;
 min-width:0!important;
 padding:0!important;
 white-space:normal!important;
}
.last-report-compact>span{font-size:8.5px!important;line-height:1.1}
.last-report-compact>strong{
 overflow:visible!important;
 font-size:10px!important;
 line-height:1.15!important;
 text-overflow:clip!important;
 white-space:nowrap;
}
.compact-health-strip{
 display:grid!important;
 grid-template-columns:minmax(52px,1.15fr) minmax(34px,.72fr) minmax(44px,.9fr) minmax(48px,1fr);
 width:100%;
}
.compact-health-strip .health-item{
 width:100%!important;
 min-width:0!important;
 padding:3px 5px!important;
}
.compact-health-strip .glance-battery,.compact-health-strip .glance-connection,.compact-health-strip .glance-temperature,.compact-health-strip .glance-speed{min-width:0!important}
.compact-health-strip .health-item:first-child{border-left:1px solid #c8d7de!important}

/* One visible navigation-control vocabulary: same blue, box, and centered chevron. */
.panel-toggle,.vessel-back-compact{
 box-sizing:border-box!important;
 display:grid!important;
 place-items:center!important;
 flex:0 0 36px!important;
 width:36px!important;
 height:36px!important;
 min-width:36px!important;
 padding:0!important;
 border:1px solid var(--ui-action-dark)!important;
 border-radius:10px!important;
 background:var(--ui-action)!important;
 color:#fff!important;
 box-shadow:0 2px 6px rgba(9,74,104,.20)!important;
}
.panel-toggle:hover,.vessel-back-compact:hover{background:var(--ui-action-dark)!important}
.panel-toggle span{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;transform:none!important}
.panel-toggle span::before,.vessel-back-compact::before{
 box-sizing:border-box;
 width:9px!important;
 height:9px!important;
 border-width:0 0 2px 2px!important;
 border-style:solid!important;
 border-color:currentColor!important;
}
.vessel-back-compact::before{transform:translateX(2px) rotate(45deg)!important}
.panel-toggle span::before{transform:translateY(-2px) rotate(-45deg)!important}
.fleet-panel:not(.panel-collapsed) .panel-toggle span{transform:none!important}
.fleet-panel:not(.panel-collapsed) .panel-toggle span::before{transform:translateY(2px) rotate(135deg)!important}

/* Selected track remains distinctive without overpowering its vessel. */
.dom-track.selected{stroke:var(--ui-magenta)!important;stroke-width:3!important;stroke-opacity:.92!important;filter:none!important}
.dom-track-point{stroke:var(--ui-magenta)!important}
.regional-marker-overlay{z-index:8!important}
.dom-vessel-marker.selected{z-index:12!important}
.dom-vessel-marker.selected .dom-vessel-core{box-shadow:0 0 0 3px rgba(255,255,255,.92),0 3px 12px rgba(17,55,75,.35)!important}

@media(max-width:420px){
 .vessel-glance-row{grid-template-columns:64px minmax(0,1fr)!important;gap:5px!important}
 .compact-health-strip{border-top:0!important}
 .compact-health-strip .health-item{height:34px!important}
}

/* ===== V11.83 shared navigation + international-ready Alert Setup ===== */
.side-brand{display:grid!important;grid-template-columns:minmax(128px,1fr) 34px auto;gap:9px!important;align-items:center!important;padding:8px 10px!important}
.brand-panel-control{min-width:0;padding:5px 7px!important;border:1px solid #79a2b6!important;border-radius:9px!important;background:#fff!important;color:var(--ui-ink)!important;box-shadow:0 1px 3px rgba(22,69,91,.10)!important;text-align:left;cursor:pointer}
.brand-panel-control:hover,.brand-panel-control:focus-visible{border-color:#1677a4!important;background:#eaf4f8!important;box-shadow:0 0 0 3px rgba(22,119,164,.13)!important;outline:0}
.brand-panel-control .side-brand-id{margin:0!important;display:flex!important;align-items:center!important;gap:8px!important}
.brand-panel-control .side-brand-id>span{display:block;min-width:0}
.brand-panel-control .brand-name,.brand-panel-control .brand-sub{display:block}
.brand-panel-hint{display:block;margin:2px 0 0 39px;color:#176a91;font-size:10px;font-weight:850;line-height:1.2}
.fleet-alert-indicator{justify-self:center}
.fleet-alert-indicator{position:relative;display:grid;place-items:center;width:30px;height:30px;color:#13814f;pointer-events:none}
.fleet-alert-bell,.fleet-alert-bell svg{display:block;width:22px;height:22px}
.fleet-alert-bell svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.fleet-alert-indicator.yellow{color:#d39300}.fleet-alert-indicator.red{color:#d6433a}
.fleet-alert-count{position:absolute;top:-2px;right:-5px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border:2px solid #e6f0f5;border-radius:999px;background:#13814f;color:#fff;font-size:8px;font-weight:900}
.fleet-alert-indicator.yellow .fleet-alert-count{background:#d39300}.fleet-alert-indicator.red .fleet-alert-count{background:#d6433a}
.fleet-alert-count.hidden{display:none}
.fleet-alert-indicator.attention .fleet-alert-bell{animation:fleetBellAttention 1.35s ease-in-out infinite;transform-origin:50% 16%}
@keyframes fleetBellAttention{0%,100%{transform:rotate(0) scale(1)}20%{transform:rotate(9deg) scale(1.08)}40%{transform:rotate(-9deg) scale(1.08)}60%{transform:rotate(5deg) scale(1.04)}80%{transform:rotate(-5deg) scale(1.04)}}
.fleet-panel.panel-collapsed{width:292px!important;max-height:64px!important}
.fleet-panel.panel-collapsed .brand-panel-hint{display:block}
.fleet-panel:not(.panel-collapsed) .brand-panel-hint{color:#607b88}

.vessel-back-text{display:inline-flex;align-items:center;gap:6px;width:max-content;margin:7px 0 0;padding:4px 2px;border:0;background:transparent;color:#456c7f;font-size:10px;font-weight:750;cursor:pointer}
.vessel-back-text span:first-child{font-size:15px;line-height:1;transform:translateY(-1px)}
.vessel-back-text:hover,.vessel-back-text:focus-visible{color:#0f6e9b;text-decoration:underline;outline:0}
.vessel-header-standard .compact-vessel-title{padding-top:4px!important}
.vessel-header-standard .compact-vessel-title .state{border:0!important;background:transparent!important;padding:3px 0!important;border-radius:0!important;font-size:9px!important}
.last-report-compact>strong{font-variant-numeric:tabular-nums}

.modal-card:has(.alert-setup-v83){display:flex!important;flex-direction:column!important;width:min(680px,94vw)!important;max-height:calc(100dvh - 44px)!important;padding:0!important;overflow:hidden!important}
.modal-card:has(.alert-setup-v83)>.eyebrow{flex:0 0 auto;margin:0!important;padding:18px 70px 3px 22px!important;font-size:10px!important}
.modal-card:has(.alert-setup-v83)>h2{flex:0 0 auto;margin:0!important;padding:0 70px 14px 22px!important;border-bottom:1px solid #b9cbd4!important;font-size:25px!important}
.modal-title-vessel{display:block;margin-top:3px;color:#4d6b79;font-size:15px;font-weight:700;line-height:1.2}
.modal-card:has(.alert-setup-v83)>.modal-close{top:13px!important;right:15px!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;color:#355b6d!important}
.modal-card:has(.alert-setup-v83)>.modal-close:hover{background:#e8f0f4!important;color:#123d52!important}
.modal-card:has(.alert-setup-v83)>#modalBody{min-height:0;overflow-y:auto;padding:0 22px 16px;scrollbar-gutter:stable}
.alert-setup-v83{display:grid;gap:0;color:#18384b;font-size:14px}
.alert-control-strip{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid #aebfc8}
.alert-readiness,.delivery-control{display:flex;align-items:center;gap:9px;min-width:0;min-height:58px;padding:9px 12px}
.alert-readiness{border-right:1px solid #d3dfe4}.alert-readiness .tool-icon{width:24px;height:24px;stroke-width:1.8;color:#13814f}.alert-readiness.yellow .tool-icon{color:#d39300}.alert-readiness.red .tool-icon{color:#d6433a}
.alert-readiness span,.delivery-control>span{display:grid;gap:1px;min-width:0}.alert-readiness small,.delivery-control small{color:#617985;font-size:10px;line-height:1.2}.alert-readiness strong,.delivery-control strong{font-size:14px;line-height:1.2}
.delivery-control{justify-content:flex-end}.delivery-control>span{text-align:right}.delivery-control>.alert-toggle b{display:none}
.alert-toggle{display:inline-flex;align-items:center;gap:8px;min-width:max-content;cursor:pointer}.alert-toggle input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.alert-toggle-track{display:block;position:relative;width:42px;height:24px;border:1px solid #8199a5;border-radius:999px;background:#d8e1e5;transition:.18s}.alert-toggle-track i{position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(15,46,62,.28);transition:.18s}.alert-toggle input:checked+.alert-toggle-track{border-color:#4e8664;background:#74ac89}.alert-toggle input:checked+.alert-toggle-track i{transform:translateX(18px)}.alert-toggle input:focus-visible+.alert-toggle-track{outline:3px solid rgba(22,119,164,.22);outline-offset:2px}.alert-toggle>b{min-width:22px;color:#365565;font-size:12px}
.alert-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:3px;margin-top:9px;padding:4px;border:1px solid #b8c9d1;border-radius:10px;background:#e2eaee}
.alert-tabs button{position:relative;display:grid;place-items:center;align-content:center;gap:2px;min-width:0;min-height:48px;padding:7px 6px;border:1px solid transparent;border-radius:7px;background:transparent;color:#4b6572;font-size:13px;font-weight:750;line-height:1.15;text-align:center;cursor:pointer}
.alert-tabs button+button{border-left-color:transparent}.alert-tabs button:hover{background:#f4f7f8}.alert-tabs button.active{border-color:#a9bdc7;background:#fff;color:#0c5f88;box-shadow:0 1px 3px rgba(19,57,76,.12)}.alert-tabs button.active::after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:3px;border-radius:3px;background:#1677a4}.alert-tabs small{font-size:9px;font-weight:650;color:#708590;white-space:normal}
.alert-tab-content{padding-top:10px}.alert-source-panel{display:none}.alert-source-panel.active{display:block}
.alert-setting-list{border-bottom:1px solid #aebfc8}.alert-disclosure,.alert-simple-row{border-bottom:1px solid #d4dfe4}.alert-disclosure-button,.alert-simple-row{min-height:50px}
.alert-disclosure-button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:8px 4px;border:0;background:#fff;color:#1d3e50;text-align:left;cursor:pointer}.alert-disclosure-button:hover{background:#f5f8f9}.alert-disclosure-button>span{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.alert-disclosure-button strong,.alert-simple-row .alert-name-link{font-size:14px;font-weight:800}.alert-disclosure-button small{color:#6e828c;font-size:10px}.alert-disclosure-button>b{display:grid;place-items:center;width:28px;height:28px;color:#286b89;font-size:22px;font-weight:450;line-height:1}
.alert-disclosure-body{display:none;padding:2px 0 11px}.alert-disclosure.open .alert-disclosure-body{display:block}
.alert-threshold-row{display:grid;grid-template-columns:minmax(72px,.8fr) minmax(74px,.65fr) minmax(132px,1.1fr) minmax(150px,1.3fr) auto;gap:8px;align-items:end;padding:9px 4px;border-top:1px solid #e2e9ec}.alert-threshold-row>strong{align-self:center;font-size:12px}.alert-threshold-row label:not(.alert-toggle),.alert-severity-choice{display:grid;gap:4px;min-width:0}.alert-threshold-row label>span,.alert-severity-choice legend{color:#5b727e;font-size:9px;font-weight:750}.alert-threshold-row input,.alert-threshold-row select{width:100%;min-width:0;height:35px;padding:0 9px;border:1px solid #aebfc8;border-radius:7px;background:#fff;color:#1b394a;font-size:12px}.alert-threshold-row input:focus,.alert-threshold-row select:focus{border-color:#1677a4;outline:3px solid rgba(22,119,164,.13)}
.alert-severity-choice{grid-template-columns:1fr 1fr;margin:0;padding:0;border:0}.alert-severity-choice legend{grid-column:1/-1}.alert-severity-choice button{height:35px;border:1px solid #aebfc8;background:#fff;color:#415d6a;font-size:11px;font-weight:750;cursor:pointer}.alert-severity-choice button:first-of-type{border-radius:7px 0 0 7px}.alert-severity-choice button:nth-of-type(2){margin-left:-1px;border-radius:0 7px 7px 0}.alert-severity-choice button.yellow.active{border-color:#d09b13;background:#fff2c2;color:#715400}.alert-severity-choice button.red.active{border-color:#cf5a53;background:#fbe1df;color:#982e29}
.alert-help-link{margin:4px 4px 0;padding:5px 0;border:0;background:transparent;color:#0f6d99;font-size:11px;font-weight:750;cursor:pointer}.alert-help-link:hover{text-decoration:underline}
.alert-simple-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 4px}.alert-name-link{padding:8px 0;border:0;background:transparent;color:#1d3e50;text-align:left;cursor:pointer}.alert-name-link:hover{color:#0f6d99;text-decoration:underline}
.alert-source-preview{display:grid;justify-items:start;gap:9px;min-height:210px;padding:28px 10px}.alert-source-preview strong{font-size:17px}.alert-source-preview p{max-width:500px;margin:0!important;color:#4f6875!important;font-size:13px!important}.alert-source-preview>span{padding:5px 8px;border-radius:5px;background:#e7edf0;color:#4d6570;font-size:10px;font-weight:750}.alert-source-preview button{min-height:40px;padding:8px 13px;border:1px solid #1677a4;border-radius:8px;background:#1677a4;color:#fff;font-weight:800;cursor:pointer}
.alert-destinations{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 0}.alert-destinations button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:52px;padding:8px 11px;border:1px solid #aebfc8;border-radius:9px;background:#fff;color:#203f50;text-align:left;cursor:pointer}.alert-destinations button:hover{border-color:#4b829b;background:#f4f8fa}.alert-destinations span{display:grid;gap:2px;min-width:0}.alert-destinations strong{font-size:13px}.alert-destinations small{color:#6a808b;font-size:10px}.alert-destinations b{color:#0f6d99;font-size:11px}
.alert-setup-v83 .autosave-note{display:flex!important;justify-content:flex-end!important;gap:7px!important;margin:0!important;padding:9px 0 0!important;border-top:1px solid #d3dfe4!important;background:transparent!important;color:#506a77!important;font-size:10px!important}
.alert-help-window{display:grid;gap:18px;padding:12px 0 2px}.alert-help-window p{margin:0!important;color:#294959!important;font-size:15px!important;line-height:1.6!important}.alert-help-window button{justify-self:start;padding:8px 0;border:0;background:transparent;color:#0f6d99;font-size:13px;font-weight:800;cursor:pointer}.alert-help-window button:hover{text-decoration:underline}

@media(max-width:700px){
 .modal-card:has(.alert-setup-v83){width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
 .modal-card:has(.alert-setup-v83)>#modalBody{padding-left:15px;padding-right:15px}
 .alert-tabs{grid-template-columns:1fr 1fr}.alert-tabs button:nth-child(3){border-left-color:transparent}.alert-tabs button:nth-child(n+3){border-top-color:transparent}
 .alert-threshold-row{grid-template-columns:1fr 1fr}.alert-threshold-row>strong{grid-column:1/-1}.alert-threshold-row>.alert-toggle{justify-self:end}.alert-threshold-row>label:nth-of-type(2){grid-column:1/-1}
}
@media(max-width:460px){
 .side-brand{grid-template-columns:minmax(0,1fr) auto auto!important}.brand-panel-hint{margin-left:0;font-size:8px}.fleet-alert-indicator{width:27px}
 .alert-control-strip{grid-template-columns:1fr}.alert-readiness{border-right:0;border-bottom:1px solid #d3dfe4}.delivery-control{justify-content:space-between}.delivery-control>span{text-align:left}
 .alert-destinations{grid-template-columns:1fr}
}

/* ===== V11.85 phone map framing and portrait control lanes ===== */
@media(max-width:600px) and (orientation:portrait){
 .fleet-panel,.fleet-panel.panel-collapsed{left:10px!important;top:10px!important;width:calc(100vw - 20px)!important;max-width:none!important}
 .map-top{top:82px!important;right:10px!important;left:auto!important;transition:opacity .16s ease}
 .demo-live-control{top:130px!important;right:auto!important;left:10px!important;max-width:calc(100vw - 20px);flex-wrap:wrap;transition:opacity .16s ease}
 .map-menu-pop,.saved-view-pop,.track-settings-pop{top:126px!important;right:10px!important;left:auto!important;max-width:calc(100vw - 20px)!important}
 .demo-motion-panel{top:182px!important;width:calc(100vw - 20px)!important;max-width:360px}
 .map-notice{top:184px!important;max-width:calc(100vw - 24px);text-align:center;white-space:normal}
 #app:has(>.fleet-panel:not(.panel-collapsed)) .map-top,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .demo-live-control,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .map-menu-pop,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .saved-view-pop,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .track-settings-pop{opacity:0!important;pointer-events:none!important}
}

/* ===== V11.86 short-screen responsive workspace ===== */
html,body{overflow:hidden;overscroll-behavior:none}

/* A phone in landscape needs a little more working width than the desktop
   mini-panel. The map remains the larger part of an 870 x 400 viewport. */
@media(max-height:500px) and (min-width:601px){
 .fleet-panel:not(.panel-collapsed){
  width:min(330px,calc(100vw - 180px))!important;
  max-height:calc(100dvh - 20px)!important;
  top:10px!important;
  left:10px!important;
 }
 .fleet-panel.panel-collapsed{width:292px!important;top:10px!important;left:10px!important}
 .selected-vessel-workspace{
  width:100%;
  max-height:calc(100dvh - 80px)!important;
  padding-right:14px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin;
 }
 #vesselsWorkspace{max-height:calc(100dvh - 76px)!important}
 .unit-list{max-height:calc(100dvh - 194px)!important;scrollbar-width:thin}
 .vessel-tool-grid{gap:4px!important}
 .vessel-tool-grid .vessel-tool{min-width:0!important;padding-left:1px!important;padding-right:1px!important}
 .vessel-tool-grid .vessel-tool strong{max-width:100%;font-size:9px!important;line-height:1.05;white-space:nowrap}
 .vessel-feature-actions{gap:7px!important}
 .geofence-panel.side-workspace{max-height:calc(100dvh - 76px)!important;scrollbar-width:thin}
}

/* Portrait controls occupy a lane immediately below the actual panel edge.
   ResizeObserver updates --context-panel-bottom as the vessel lens changes. */
@media(max-width:600px) and (orientation:portrait){
 .map-top{
  top:calc(var(--context-panel-bottom,72px) + 12px)!important;
  gap:8px!important;
 }
 .demo-live-control{top:calc(var(--context-panel-bottom,72px) + 54px)!important}
 .map-menu-pop,.saved-view-pop,.track-settings-pop{top:calc(var(--context-panel-bottom,72px) + 54px)!important}
 .demo-motion-panel{top:calc(var(--context-panel-bottom,72px) + 108px)!important}
 .map-notice{top:calc(var(--context-panel-bottom,72px) + 110px)!important}
 #app:has(>.fleet-panel:not(.panel-collapsed)) .map-top,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .demo-live-control,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .map-menu-pop,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .saved-view-pop,
 #app:has(>.fleet-panel:not(.panel-collapsed)) .track-settings-pop{opacity:1!important;pointer-events:auto!important}
}

/* ===== V11.87 focused phone and Anchor Watch corrections ===== */
.fleet-panel:not(.panel-collapsed) .brand-panel-control{background:#eaf4f8!important}
.fleet-panel.panel-collapsed .brand-panel-control,
.fleet-panel.panel-collapsed .brand-panel-control:hover,
.fleet-panel.panel-collapsed .brand-panel-control:focus-visible{background:#fff!important}
.anchor-watch-editor .gf-edit-title{display:none!important}

/* ===== V11.88 responsive stability + phone vessel sheet ===== */
html,body,#app{height:100%;height:100dvh;min-height:100svh}
.map-shell{height:100%;height:100dvh}
.mobile-vessel-sheet-toggle{display:none}

@media(max-width:600px) and (orientation:portrait){
 .map-top{top:calc(var(--context-panel-bottom,72px) + 14px)!important}
 .demo-live-control{top:calc(var(--context-panel-bottom,72px) + 66px)!important}
 .map-menu-pop,.saved-view-pop,.track-settings-pop{top:calc(var(--context-panel-bottom,72px) + 66px)!important}
 .demo-motion-panel{top:calc(var(--context-panel-bottom,72px) + 118px)!important}
 .map-notice{top:calc(var(--context-panel-bottom,72px) + 120px)!important}
 .fleet-panel{max-height:calc(100dvh - 20px)!important}
 .account-geofence-workspace{
  box-sizing:border-box!important;
  left:max(10px,env(safe-area-inset-left))!important;
  right:max(10px,env(safe-area-inset-right))!important;
  top:max(10px,env(safe-area-inset-top))!important;
  width:auto!important;
  max-width:none!important;
  max-height:calc(100dvh - 20px)!important;
 }
}

/* Phone layouts use an expandable information sheet. The compact state is
   map-first; expanded state exposes the unchanged dashboard controls. */
@media(max-width:600px), (max-height:500px) and (max-width:950px){
 .mobile-vessel-sheet-toggle{
  display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:36px;
  margin:3px 0 0;padding:7px 8px;border:0;border-top:1px solid #c4d4dc;
  background:#f1f7f9;color:#155f82;font-size:11px;font-weight:850;cursor:pointer;
 }
 .mobile-vessel-sheet-toggle b{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
 .selected-vessel-workspace.mobile-sheet-expanded .mobile-vessel-sheet-toggle b{transform:translateY(2px) rotate(225deg)}
 .selected-vessel-workspace:not(.mobile-sheet-expanded){overflow:hidden!important;padding-bottom:0!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .compact-tool-section{display:none!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-header-standard{margin-bottom:0!important;padding-bottom:4px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-back-text{margin-top:3px!important;padding-top:2px!important;padding-bottom:2px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .compact-vessel-title{padding:2px 0 3px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .compact-vessel-title h2{font-size:18px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-glance-row{display:block!important;min-height:0!important;padding:2px 0 3px}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .compact-health-strip{display:none!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .last-report-compact{display:flex!important;align-items:baseline!important;gap:5px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance{padding:5px 0 0!important;border-top:0!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .alert-message{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"kicker action" "title action";
  align-items:center;gap:1px 8px;min-height:0!important;margin:0!important;padding:7px 8px!important;border-radius:8px!important;
 }
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .alert-kicker{grid-area:kicker;font-size:7px!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .alert-title{grid-area:title;display:block!important;min-height:0!important;margin:0!important;font-size:13px!important;line-height:1.2!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .alert-detail{display:none!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .lens-actions{grid-area:action;margin:0!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .lens-actions button{display:none!important}
 .selected-vessel-workspace:not(.mobile-sheet-expanded) .vessel-assurance .lens-actions button:first-child{display:block!important;min-height:34px;padding:6px 9px!important;white-space:nowrap}
 .selected-vessel-workspace.mobile-sheet-expanded{overflow-y:auto!important;overflow-x:hidden!important;max-height:calc(100dvh - 78px)!important;scrollbar-width:thin}
 .geofence-panel.side-workspace{box-sizing:border-box!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}
 .modal{box-sizing:border-box;height:100dvh;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))!important}
 .modal-card{width:100%!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important}
}

/* V12.05: canonical compact circle editor. The map remains the
   working surface; the panel holds only the values and decisions. */
.visually-hidden{
 position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
 overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
#geofenceCreateView>#gfBack,
#geofenceCreateView>.gf-edit-title,
#geofenceCreateView>.panel-help,
#geofenceCreateView>.gf-distance-help{display:none!important}
.gf-core-fields{
 display:grid;grid-template-columns:minmax(0,1.4fr) minmax(104px,.6fr);gap:8px;margin:4px 0 10px;
}
.gf-core-fields .gf-field,.gf-core-fields .gf-distance-entry{display:block!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
#geofenceCreateView .gf-core-fields input{
 box-sizing:border-box;width:100%!important;min-height:38px;padding:8px 10px!important;
 border-color:#9db4bf!important;background:#fff!important;color:#294957!important;
 font-size:12px!important;font-weight:500!important;text-align:left!important;cursor:text;
}
#geofenceCreateView .gf-core-fields input::placeholder{color:#82949d;opacity:1;font-weight:450}
#geofenceCreateView .gf-core-fields input:focus{border-color:#1677a4!important;outline:3px solid rgba(22,119,164,.14);outline-offset:0}
.gf-compact-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:2px 0 10px}
.gf-option-group .gf-section-label{margin:0 0 4px;font-size:7.5px;letter-spacing:.08em}
.gf-option-group .gf-choice-row{gap:4px}
.gf-option-group .gf-choice{min-height:34px;padding:6px 4px;font-size:9px}
.gf-assignment-row{
 display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0;padding:8px 9px;
 border:1px solid #b9cbd4;border-radius:8px;background:#fff;
}
.gf-assignment-row>span{display:flex;min-width:0;flex:1 1 auto;flex-direction:column;gap:1px}
.gf-assignment-row>span small{font-size:8px;color:#617785}
.gf-assignment-row>span strong{font-size:10px;line-height:1.2;white-space:normal}
.gf-assignment-row .gf-assign-btn{display:block!important;flex:0 0 auto;width:auto!important;min-width:54px;min-height:32px;padding:5px 8px;font-size:9px}
#geofenceCreateView .gf-actions{margin-top:10px!important}
#geofenceCreateView.anchor-watch-editor #gfAssignmentRow,
#geofenceCreateView.anchor-watch-editor .gf-compact-options,
#geofenceCreateView.anchor-watch-editor .gf-name-field{display:none!important}
#geofenceCreateView.anchor-watch-editor .gf-core-fields{display:grid!important;grid-template-columns:1fr;margin:7px 0 10px!important}
#geofenceCreateView.anchor-watch-editor .gf-radius-field{display:block!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
#geofenceCreateView.anchor-watch-editor .gf-radius-field input{width:100%!important;min-height:38px!important;text-align:left!important}

@media(max-width:600px), (max-height:500px) and (max-width:950px){
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-core-fields{
  display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(92px,.65fr)!important;gap:6px!important;margin:2px 0 7px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-core-fields input{min-height:32px!important;padding:5px 7px!important;font-size:10px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-compact-options{gap:6px!important;margin:0 0 7px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-option-group .gf-choice{min-height:31px!important;padding:4px!important;font-size:8px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-assignment-row{margin:5px 0!important;padding:5px 7px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView .gf-assignment-row .gf-assign-btn{min-height:29px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView.anchor-watch-editor .gf-core-fields{grid-template-columns:1fr!important}
}

@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 .fleet-panel:not(.panel-collapsed){max-height:calc(100dvh - 16px)!important;top:8px!important;left:8px!important}
 .selected-vessel-workspace.mobile-sheet-expanded{max-height:calc(100dvh - 70px)!important}
 .modal{align-items:stretch!important;padding:6px!important}
 .modal-card{align-self:stretch;max-height:calc(100dvh - 12px)!important;padding-top:12px!important;padding-bottom:12px!important}
 .modal-card>.eyebrow{margin-top:0!important}
 .modal-card>h2{margin-top:2px!important;margin-bottom:8px!important;line-height:1.1!important}
 .modal-card:has(.alert-setup-v83){max-height:calc(100dvh - 12px)!important}
}

/* V11.99: while the landscape phone is choosing Create or Manage, keep the
   independent Geofence workspace high enough to use its full scrolling area.
   The fleet header remains collapsed at the opposite side. */
@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 #app.geofence-workspace-open:not(.geofence-task-mode) .account-geofence-workspace{
  box-sizing:border-box!important;position:absolute!important;
  left:auto!important;right:8px!important;top:8px!important;bottom:8px!important;
  width:min(310px,42vw)!important;max-height:calc(100dvh - 16px)!important;
  overflow-y:auto!important;overscroll-behavior:contain;
 }
}

/* ===== V12.02: direct geofence entry and keyboard-safe editors ===== */
.gf-direct-create{
 margin:8px 0 10px;
 padding:10px;
 border:1px solid #c8d8df;
 border-radius:12px;
 background:#fff;
}
.gf-direct-create-title{
 margin:0 0 8px;
 color:#25495c;
 font-size:12px;
 font-weight:800;
}
.gf-direct-create .gf-create-grid{
 display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));
 gap:7px;
}
.gf-direct-create .gf-create-card{
 min-width:0;
 min-height:62px;
 padding:8px 5px;
 margin:0;
}

/* ===== V11.92 map-first phone task standard ===== */
@media(max-width:600px), (max-height:500px) and (max-width:950px){
 /* Idle map tools form one low, horizontal cluster. They stay recognizable
    without consuming a vertical lane of map. */
 .map-top{
  top:auto!important;right:76px!important;bottom:54px!important;left:auto!important;
  width:auto!important;display:flex!important;flex-direction:row!important;
  align-items:stretch!important;gap:4px!important;
 }
 .map-top .map-menu,#geofenceToolbarBtn{
  width:auto!important;min-width:50px!important;min-height:31px!important;
  padding:5px 7px!important;white-space:nowrap!important;
 }
 .v9-zoom{
  right:10px!important;bottom:54px!important;display:flex!important;
  flex-direction:row!important;width:62px!important;height:31px!important;
 }
 .v9-zoom button{width:31px!important;height:31px!important;min-height:31px!important}
 .v9-zoom button+button{border-top:0!important;border-left:1px solid #c3d3db!important}

 /* Once a map task begins, global navigation and demo controls yield to the
    task. Pinch/drag remain available directly on the map. */
 #app.geofence-task-mode .map-top,
 #app.geofence-task-mode .v9-zoom,
 #app.geofence-task-mode .demo-live-control,
 #app.geofence-task-mode .map-menu-pop,
 #app.geofence-task-mode .saved-view-pop,
 #app.geofence-task-mode .track-settings-pop{
  opacity:0!important;pointer-events:none!important;
 }

 /* Circle, line and polygon placement share this compact reference layout.
    The map—not explanatory chrome—is the working surface. */
 #app.geofence-placement-mode .fleet-panel:not(.panel-collapsed){
  box-sizing:border-box!important;width:min(252px,calc(100vw - 20px))!important;
  height:auto!important;max-height:190px!important;overflow:hidden!important;
 }
 #app.geofence-placement-mode .fleet-panel>.side-brand{display:none!important}
 #app.geofence-placement-mode .geofence-panel.side-workspace{
  box-sizing:border-box!important;width:100%!important;max-height:190px!important;
  padding:7px 9px 9px!important;background:#f8fbfc!important;overflow:auto!important;
 }
 #app.geofence-placement-mode .account-geofence-workspace{
  box-sizing:border-box!important;left:max(10px,env(safe-area-inset-left))!important;
  right:auto!important;top:max(10px,env(safe-area-inset-top))!important;
  width:min(252px,calc(100vw - 20px))!important;max-height:190px!important;
  padding:7px 9px 9px!important;overflow:auto!important;
 }
 #app.geofence-placement-mode .geofence-panel-head{
  min-height:30px!important;margin:0 0 4px!important;padding:0 0 4px!important;
  align-items:center!important;border-bottom:1px solid #c8d8df!important;
 }
 #app.geofence-placement-mode .geofence-panel-head .panel-kicker{display:none!important}
 #app.geofence-placement-mode .geofence-panel-head strong{font-size:14px!important;line-height:1.1!important}
 #app.geofence-placement-mode .geofence-panel-head .panel-close{
  display:grid!important;width:30px!important;height:30px!important;place-items:center!important;
 }
 #app.geofence-placement-mode .gf-subview{padding:0!important}
 #app.geofence-placement-mode .gf-subback{margin:0!important;padding:2px 0 3px!important;font-size:9px!important}
 #app.geofence-placement-mode .gf-subtitle{font-size:14px!important;line-height:1.1!important}
 #app.geofence-placement-mode .panel-help{margin:4px 0 6px!important;font-size:10px!important;line-height:1.25!important}
 #app.geofence-placement-mode .gf-placement-hint{display:none!important}
 #app.geofence-placement-mode .gf-line-draw-actions{margin-top:6px!important;gap:5px!important}
 #app.geofence-placement-mode .gf-line-draw-actions button{min-height:30px!important;padding:5px 7px!important;font-size:9px!important}
}

/* ===== V11.93 phone geofence editor sheet ===== */
@media(max-width:600px) and (orientation:portrait){
 #app.geofence-task-mode:not(.geofence-placement-mode) .fleet-panel:not(.panel-collapsed){
  box-sizing:border-box!important;left:max(8px,env(safe-area-inset-left))!important;
  right:max(8px,env(safe-area-inset-right))!important;top:auto!important;
  bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;
  max-height:min(44dvh,360px)!important;margin:0!important;overflow:hidden!important;
  border-radius:13px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .fleet-panel>.side-brand{display:none!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel.side-workspace,
 #app.geofence-task-mode:not(.geofence-placement-mode) .account-geofence-workspace{
  box-sizing:border-box!important;position:static!important;inset:auto!important;
  width:100%!important;max-width:none!important;max-height:min(44dvh,360px)!important;
  margin:0!important;padding:0 10px 8px!important;overflow-y:auto!important;
  overscroll-behavior:contain;border:0!important;border-radius:13px!important;
  background:rgba(248,251,252,.985)!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .account-geofence-workspace{
  position:absolute!important;left:max(8px,env(safe-area-inset-left))!important;
  right:max(8px,env(safe-area-inset-right))!important;top:auto!important;
  bottom:max(8px,env(safe-area-inset-bottom))!important;width:auto!important;
  border:1px solid #a9c0cb!important;box-shadow:var(--ui-shadow)!important;
 }
}

/* ===== V11.96 compact phone navigation + vessel list ===== */
@media(max-width:600px), (max-height:500px) and (max-width:950px){
 /* A focused map task keeps one 44px touch target. Bell and account controls
    return when the user leaves the task. The logo minimizes/restores the task. */
 #app.geofence-task-mode .fleet-panel>.side-brand{
  display:grid!important;grid-template-columns:minmax(0,132px)!important;
  min-height:44px!important;padding:4px 6px!important;gap:0!important;
  align-items:center!important;background:#e6f0f5!important;
 }
 #app.geofence-task-mode .side-brand .fleet-alert-indicator,
 #app.geofence-task-mode .side-brand #sideAccountMount{display:none!important}
 #app.geofence-task-mode .brand-panel-control{
  box-sizing:border-box!important;width:132px!important;min-height:36px!important;
  padding:3px 6px!important;border-radius:8px!important;
 }
 #app.geofence-task-mode .brand-panel-control .side-brand-id{gap:6px!important}
 #app.geofence-task-mode .brand-panel-control .brand-mark{width:25px!important;height:23px!important}
 #app.geofence-task-mode .brand-panel-control .brand-name{font-size:12px!important}
 #app.geofence-task-mode .brand-panel-hint{display:none!important}
 #app.geofence-task-mode .fleet-panel.panel-collapsed{
  width:146px!important;max-height:46px!important;overflow:visible!important;
 }

 /* The list owns the remaining height. Labels no longer consume a separate
    title row, and the three relationship filters stay on one compact line. */
 #vesselsWorkspace{
  box-sizing:border-box!important;display:flex;flex-direction:column!important;
  flex:1 1 auto!important;min-height:0!important;max-height:none!important;
  padding:5px 7px 7px!important;overflow:hidden!important;
 }
 #vesselsWorkspace .fleet-head{display:none!important}
 #vesselsWorkspace .ownership-tabs{
  display:grid!important;grid-template-columns:.65fr 1fr 1.15fr!important;
  flex:0 0 auto!important;gap:3px!important;margin:0 0 5px!important;padding:0!important;
 }
 #vesselsWorkspace .owner-tab{
  box-sizing:border-box!important;min-width:0!important;min-height:31px!important;
  padding:4px 3px!important;border-radius:7px!important;font-size:8.5px!important;
  line-height:1!important;white-space:nowrap!important;
 }
 #vesselsWorkspace .owner-tab span{font-size:7px!important}
 #vesselsWorkspace>.search{
  box-sizing:border-box!important;flex:0 0 31px!important;min-height:31px!important;
  margin:0 0 5px!important;padding:5px 8px!important;font-size:10px!important;
 }
 #vesselsWorkspace>.unit-list{
  flex:1 1 auto!important;min-height:42px!important;max-height:none!important;
  overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;
 }
}

@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 .fleet-panel:not(.panel-collapsed){height:calc(100dvh - 16px)!important;max-height:calc(100dvh - 16px)!important}
 #vesselsWorkspace{height:auto!important;max-height:none!important}
}

@media(max-width:600px) and (orientation:portrait){
 #app.geofence-placement-mode .fleet-panel:not(.panel-collapsed){max-height:236px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel.side-workspace{
  max-height:calc(min(44dvh,360px) - 44px)!important;
 }
}

@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 #app.geofence-placement-mode .fleet-panel:not(.panel-collapsed){max-height:236px!important;height:auto!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel.side-workspace{
  max-height:calc(100dvh - 60px)!important;
 }
}

@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 #app.geofence-task-mode:not(.geofence-placement-mode) .fleet-panel:not(.panel-collapsed){
  box-sizing:border-box!important;left:8px!important;right:auto!important;top:8px!important;bottom:8px!important;
  width:min(310px,42vw)!important;max-height:calc(100dvh - 16px)!important;margin:0!important;overflow:hidden!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .fleet-panel>.side-brand{display:none!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel.side-workspace,
 #app.geofence-task-mode:not(.geofence-placement-mode) .account-geofence-workspace{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  max-height:calc(100dvh - 16px)!important;padding:0 9px 7px!important;overflow-y:auto!important;
  overscroll-behavior:contain;background:rgba(248,251,252,.985)!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .account-geofence-workspace{
  position:absolute!important;left:8px!important;right:auto!important;top:8px!important;bottom:8px!important;
  width:min(310px,42vw)!important;border:1px solid #a9c0cb!important;box-shadow:var(--ui-shadow)!important;
 }
}

@media(max-width:600px), (max-height:500px) and (max-width:950px){
 /* One compact title row replaces the desktop title stack during a map task. */
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel-head{
  position:sticky;z-index:4;top:0;min-height:34px!important;margin:0 0 4px!important;
  padding:5px 0 4px!important;align-items:center!important;background:#f8fbfc!important;
  border-bottom:1px solid #c8d8df!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel-head .panel-kicker{display:none!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel-head strong{font-size:14px!important;line-height:1.1!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel-head .panel-close{
  display:grid!important;width:30px!important;height:30px!important;place-items:center!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView{padding:0 1px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-edit-title,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.panel-help,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-radius-row,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-distance-help{display:none!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceLineEditView>.gf-edit-title,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceLineEditView>.panel-help,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofencePolygonEditView>.gf-edit-title,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofencePolygonEditView>.panel-help{display:none!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #gfBack{margin:0!important;padding:2px 0 4px!important;font-size:9px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-field{
  display:grid!important;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:7px;
  margin:2px 0 6px!important;font-size:9px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-field input{
  min-height:32px!important;padding:5px 7px!important;font-size:11px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-distance-entry{
  display:grid!important;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:7px;
  margin:0 0 7px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-distance-entry input{
  box-sizing:border-box;width:100%!important;min-height:32px!important;padding:5px 7px!important;font-size:11px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-section-label{margin:7px 0 3px!important;font-size:7px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-choice-row{gap:5px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-choice-row .gf-choice{
  min-height:32px!important;padding:5px 6px!important;font-size:9px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-rule-note{margin:3px 0 0!important;font-size:7px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-assign-summary{margin:2px 0 4px!important;font-size:9px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-assign-btn{min-height:32px!important;padding:5px 7px!important}
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-actions{
  position:sticky;z-index:3;bottom:-8px;margin:8px -1px 0!important;padding:7px 1px 8px!important;
  background:linear-gradient(to bottom,rgba(248,251,252,.9),#f8fbfc 22%);
 }
#app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-actions button{
  min-height:34px!important;padding:6px 9px!important;font-size:10px!important;
 }
}

/* V12.00: short landscape screens have width to spare and very little height.
   Keep all ordinary map controls on one low row; the compact attribution
   button retains the far-right corner. */
@media(max-height:500px) and (min-width:601px) and (max-width:950px){
 #app:not(.geofence-task-mode) .map-top{
  top:auto!important;bottom:9px!important;right:112px!important;left:auto!important;
  flex-direction:row!important;width:auto!important;
 }
 #app:not(.geofence-task-mode) .v9-zoom{
  bottom:9px!important;right:43px!important;
 }
}

/* V12.02 final responsive overrides must remain after the historical blocks. */
@media(max-width:600px), (max-height:500px) and (max-width:950px){
 #app.geofence-task-mode:not(.geofence-placement-mode) .geofence-panel.side-workspace,
 #app.geofence-task-mode:not(.geofence-placement-mode) .account-geofence-workspace{
  max-height:calc(var(--lad-visual-height,100dvh) - 16px)!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceLineEditView>.gf-field,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofencePolygonEditView>.gf-field{
  display:grid!important;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:7px;
  margin:2px 0 6px!important;font-size:9px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceLineEditView>.gf-field input,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofencePolygonEditView>.gf-field input{
  box-sizing:border-box;width:100%!important;min-height:32px!important;padding:5px 7px!important;font-size:11px!important;
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceCreateView>.gf-actions,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofenceLineEditView>.gf-actions,
 #app.geofence-task-mode:not(.geofence-placement-mode) #geofencePolygonEditView>.gf-actions{
  position:sticky;z-index:5;bottom:-8px;margin:8px -1px 0!important;padding:7px 1px 8px!important;
  background:linear-gradient(to bottom,rgba(248,251,252,.9),#f8fbfc 22%);
 }
 #app.geofence-task-mode:not(.geofence-placement-mode) .gf-actions button{
  min-height:34px!important;padding:6px 9px!important;font-size:10px!important;
 }
}

