
/* Swiss Express Executive Fleet Registry — screenshot-matched, scoped to Fleet only */
body.cfi-registry-gallery-mode{background:#f8f9f6}
.cfi-registry-gallery-mode .topbar{height:71px;min-height:71px;padding:8px 23px;gap:14px;background:#fffefb;border-bottom:1px solid #e8ebe7}
.cfi-registry-gallery-mode .cfi-command-brand{width:145px;min-width:145px;padding-right:15px;border-right:1px solid #e3e8e5}
.cfi-registry-gallery-mode .cfi-command-brand #cfi-command-logo{max-height:55px;max-width:118px;width:118px;object-fit:contain}
.cfi-registry-gallery-mode .cfi-command-heading{display:flex;align-items:center;gap:16px;min-width:0}
.cfi-registry-gallery-mode .cfi-official-lockup{width:94px;height:52px;max-height:52px;object-fit:contain}
.cfi-registry-gallery-mode .cfi-brand-context h1{font-size:26px!important;letter-spacing:-.75px!important;white-space:nowrap;line-height:1.15}
.cfi-registry-gallery-mode .cfi-brand-context p{display:none!important}
.cfi-registry-gallery-mode .top-actions{margin-left:auto}
.cfi-registry-gallery-mode .main-view{padding:14px 20px 28px!important;background:linear-gradient(145deg,#fbfbf8,#f6f7f5)}
.fgr{--fgr-ink:#082e3d;--fgr-muted:#738692;--fgr-line:#e2e8e5;--fgr-teal:#073f48;--fgr-mint:#e2f7ed;--fgr-orange:#bc5d0d;--fgr-paper:#fffefa;color:var(--fgr-ink);font-family:Manrope,'DM Sans',sans-serif;font-size:12px}
.fgr *{box-sizing:border-box}
.fgr button,.fgr input{font:inherit}
.fgr button{cursor:pointer}
.fgr button:focus-visible,.fgr input:focus-visible,.fgr summary:focus-visible{outline:2px solid #288ed2;outline-offset:3px}
.fgr svg{flex:none}
.fgr .fgr-svg{width:17px;height:17px;display:inline-block;vertical-align:middle}
.fgr-toolbar{display:flex;align-items:center;gap:9px;margin-bottom:14px;min-height:39px}
.fgr-filter-list{display:flex;align-items:center;gap:8px;flex:none}
.fgr-filter{border:1px solid #e2e8e5;background:#fffefa;border-radius:11px;min-height:39px;padding:0 17px;display:inline-flex;align-items:center;gap:7px;color:#174253;font-weight:750;font-size:11px;white-space:nowrap;box-shadow:0 2px 9px #13404506}
.fgr-filter strong{font-weight:850;font-size:11px;color:#718490}
.fgr-filter.is-active{background:linear-gradient(160deg,#08444b,#002e37);border-color:#08444b;color:#fff;box-shadow:0 4px 12px #063d4824}
.fgr-filter.is-active strong{color:#fff}
.fgr-search{display:flex;align-items:center;gap:9px;min-width:120px;width:clamp(175px,19vw,300px);height:43px;border:1px solid #e0e7e3;border-radius:12px;background:#fffefa;padding:0 13px;margin-left:auto;color:#7e91a1;box-shadow:0 2px 10px #113a4406}
.fgr-search input{border:0;background:transparent;color:#103c4d;outline:0;min-width:0;width:100%;font-size:11px;font-weight:500}
.fgr-search input::placeholder{color:#91a0a7}
.fgr-alert{display:flex;gap:9px;align-items:center;justify-content:space-between;border:1px solid #f1d7b9;border-radius:11px;min-height:43px;background:#fff9f0;padding:0 12px;color:#b75b0b;white-space:nowrap;box-shadow:0 3px 12px #9c611509}
.fgr-alert>.fgr-svg{height:19px;width:19px;fill:#c97417;stroke:#fff}
.fgr-alert strong{font-size:11px;font-weight:850;color:#ad4d04}
.fgr-alert span{display:flex;align-items:center;gap:7px;border-left:1px solid #f1e2ce;padding-left:12px;font-size:11px;font-weight:800}
.fgr-alert span svg{width:14px}
.fgr-secondary,.fgr-add{border:1px solid #dfe6e3;border-radius:12px;min-height:41px;padding:0 13px;display:flex;align-items:center;justify-content:center;gap:7px;background:#fffefa;white-space:nowrap;color:#163c4a;font-size:11px;font-weight:850;box-shadow:0 2px 10px #14404208}
.fgr-secondary svg{width:17px}
.fgr-add{background:linear-gradient(135deg,#07515a,#002f38);border-color:#0a4952;color:#fff;padding:0 16px}
.fgr-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.fgr-card{position:relative;min-width:0;background:#fffefa;border:1px solid #e1e8e5;border-radius:17px;box-shadow:0 5px 21px #233c4511;overflow:visible;align-self:stretch;display:flex;flex-direction:column}
.fgr-card:has(.fgr-menu[open]){z-index:22}
.fgr-photo{position:relative;aspect-ratio:4/3;height:auto;overflow:hidden;background:#dce4ea;border-radius:16px 16px 0 0;isolation:isolate}
.fgr-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.fgr-photo-number{position:absolute;top:17px;left:18px;display:inline-flex;align-items:center;justify-content:center;min-height:35px;padding:0 13px;border:1px solid #e9e3d9;border-radius:10px;background:#fffcf4;color:#092f40;font-size:11px;font-weight:850;letter-spacing:.1px;box-shadow:0 2px 10px #122e3d13;pointer-events:none}
.fgr-photo-credit{position:absolute;right:17px;bottom:15px;display:inline-flex;align-items:center;min-height:22px;padding:0 11px;border-radius:999px;background:#fffefa;color:#557381;font-size:8px;font-weight:850;letter-spacing:1px;box-shadow:0 2px 8px #28455212;white-space:nowrap;pointer-events:none}
.fgr-card-body{display:flex;flex:1;flex-direction:column;gap:9px;padding:11px 14px 12px;min-width:0}
.fgr-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;min-height:57px}
.fgr-card-title{display:flex;flex:1 1 0;flex-direction:column;align-items:flex-start;min-width:0;gap:2px}
.fgr-card-title h2{font-size:20px;line-height:1.13;letter-spacing:-.55px;margin:0;font-weight:850;color:#082b39}
.fgr-card-title strong{font-size:12px;font-weight:800;color:#102f3e;line-height:1.22;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.fgr-card-title small{font-size:10px;color:#82929c;line-height:1.3}
.fgr-card-head-actions{display:flex;align-items:flex-start;gap:8px;min-width:0;flex-shrink:0;padding-top:1px}
.fgr-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:999px;background:#e4f7ed;color:#155d4d;font-size:10px;font-weight:750;white-space:nowrap;line-height:1}
.fgr-badge i{height:7px;width:7px;background:#08744f;border-radius:50%}
.fgr-badge-workshop{background:#ffe6e5;color:#9e2a23}
.fgr-badge-workshop i{background:#a42722}
.fgr-badge-stopped{background:#fff1dc;color:#87500d}.fgr-badge-stopped i{background:#bd7616}
.fgr-badge-offline,.fgr-badge-archived{background:#edf0f1;color:#687a83}.fgr-badge-offline i,.fgr-badge-archived i{background:#87949a}
.fgr-menu{position:relative;flex:none}
.fgr-menu summary{list-style:none;display:grid;place-items:center;width:36px;height:36px;border:1px solid #e0e8e5;background:#fffefa;border-radius:11px;box-shadow:0 2px 9px #193f4709;cursor:pointer;color:#163a47}
.fgr-menu summary::-webkit-details-marker{display:none}.fgr-menu summary .fgr-svg{width:18px}
.fgr-menu[open] summary{background:#eaf7f2;border-color:#a7d8c9}
.fgr-menu-panel{position:absolute;right:0;top:40px;z-index:30;min-width:170px;border:1px solid #dce6e3;background:#fffefa;box-shadow:0 14px 30px #172d3438;border-radius:11px;padding:5px;display:flex;flex-direction:column;gap:1px}
.fgr-menu-panel button{border:0;background:transparent;padding:9px 12px;text-align:left;color:#173f4c;font-size:11px;white-space:nowrap;border-radius:7px}
.fgr-menu-panel button:hover{background:#eaf7f2}.fgr-menu-panel button.fgr-menu-danger{color:#bd503f}.fgr-menu-panel button.fgr-menu-danger:hover{background:#fff0eb}
.fgr-route{display:flex;align-items:center;gap:7px;min-height:27px;padding:4px 0;border-top:1px solid #eff1ee;border-bottom:1px solid #e9edeb;color:#123b4a;font-size:11px;min-width:0}
.fgr-route>.fgr-svg{width:17px;height:17px;flex:none}
.fgr-route .fgr-from,.fgr-route .fgr-to{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:35%}
.fgr-journey-arrow{color:#cb7628;font-size:17px;padding:0 2px;flex:none}
.fgr-trip-id{margin-left:auto;color:#8294a0;font-size:10px;white-space:nowrap}
.fgr-route-empty{display:flex;align-items:center;gap:8px;color:#84949a;min-width:0}
.fgr-route-empty svg{width:17px;color:#83969b}
.fgr-stats{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e9edeb;min-height:27px;align-items:center}
.fgr-stats>div{display:flex;align-items:center;gap:8px;padding:1px 5px;min-width:0;color:#677d88;font-size:11px}
.fgr-stats>div:first-child{border-right:1px solid #e7ecea;padding-left:1px}
.fgr-stats>div:nth-child(2){padding-left:14px}
.fgr-stats .fgr-svg{color:#123f4c;width:17px;height:17px}
.fgr-stats b{color:#19445a;font-weight:850}
.fgr-stats span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fgr-permit{display:flex;align-items:center;gap:8px;border-radius:9px;border:1px solid #dcefe5;background:#f1faf6;color:#205648;min-height:42px;padding:6px 10px;font-size:10px}
.fgr-permit .fgr-svg{width:16px;min-width:16px}
.fgr-permit strong{font-size:10px;min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fgr-permit span{font-size:10px;font-weight:850;padding:5px 9px;white-space:nowrap;border-radius:999px;background:#d7f4e6;color:#176247}
.fgr-permit-soon{background:#fff7ee;border-color:#f8debf;color:#a94d10}
.fgr-permit-soon span{background:#ffdfb0;color:#8f420a}
.fgr-permit-overdue{background:#fff0eb;border-color:#edc3b3;color:#a22d18}
.fgr-permit-overdue span{background:#f9c9bc;color:#a22d18}
.fgr-permit-unknown{background:#f5f6f5;border-color:#e1e6e3;color:#617983}
.fgr-permit-unknown span{background:#e6e9e7;color:#66777f}
.fgr-workshop-note,.fgr-muted-row{display:flex;align-items:center;gap:7px;color:#a15a45;background:#fff4f0;border:1px solid #f0ddd7;border-radius:9px;padding:7px 9px;font-size:10px}
.fgr-muted-row{color:#78838a;background:#f3f6f4;border-color:#e6e9e7}
.fgr-card-actions{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) auto;gap:8px;margin-top:auto;align-items:center}
.fgr-card-actions button{min-height:39px;border:1px solid #dee6e2;border-radius:9px;background:#fffefa;padding:0 9px;color:#123e4d;font-weight:850;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}
.fgr-card-actions .fgr-open-vehicle{background:linear-gradient(135deg,#00525a,#00323b);color:#fff;border-color:#004b54}
.fgr-card-actions .fgr-open-vehicle:disabled{background:#cad7d5;border-color:#d4dedd;cursor:not-allowed;color:#f7fbfa}
.fgr-card-actions .fgr-svg{width:17px;height:17px}
.fgr-card-actions>.fgr-menu summary{height:39px;width:39px;border-radius:9px}
.fgr-card-actions>.fgr-menu summary .fgr-svg{width:18px}
.fgr-card-actions>.fgr-menu{align-self:stretch}
.fgr-routes{margin-bottom:15px;background:#fffefa;padding:14px;border:1px solid #e2e8e6;border-radius:12px}
.fgr-routes[hidden]{display:none!important}
.fgr-routes>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px}
.fgr-routes>header strong{font-size:14px;color:#09414b}
.fgr-routes>header small{display:block;font-size:11px;margin-top:2px;color:#778d96}
.fgr-routes>header button{display:flex;align-items:center;gap:7px;background:none;border:0;color:#17657a;font-weight:750}
.fgr-routes #cfi-route-planner-panel:not([hidden]){display:block}
.fgr-empty{display:grid;place-items:center;gap:7px;padding:40px;background:#fffefa;border:1px solid #e2e8e6;border-radius:12px}
.fgr-empty strong{font-size:16px}.fgr-empty p{color:#718592;margin:0}.fgr-empty button{background:#00454d;color:#fff;border:0;border-radius:9px;padding:10px}
.fgr-footnote{font-size:9px;color:#8f9fa8;margin:13px 3px 0}
@media(max-width:1500px){
.fgr-filter{padding:0 11px}
.fgr-toolbar{gap:7px}.fgr-filter-list{gap:6px}
.fgr-search{width:clamp(154px,17vw,245px)}
.fgr-alert{padding:0 9px;gap:6px}
.fgr-secondary{padding:0 10px}
.fgr-card-head-actions{gap:5px}.fgr-card-body{padding:10px 12px 11px}
}
@media(max-width:1320px){
.fgr-toolbar{flex-wrap:wrap}.fgr-search{margin-left:auto;flex:1;max-width:none}
.fgr-alert{flex:none}
.fgr-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
.fgr-photo{aspect-ratio:4/3;height:auto}
}
@media(max-width:900px){
.cfi-registry-gallery-mode .cfi-command-heading{gap:8px}
.cfi-registry-gallery-mode .cfi-command-brand{width:122px;min-width:122px}
.cfi-registry-gallery-mode .cfi-official-lockup{width:75px}
.cfi-registry-gallery-mode .cfi-brand-context h1{font-size:20px!important}
.fgr-filter-list{flex-wrap:wrap}
.fgr-filter{min-height:37px}
.fgr-toolbar>.fgr-search{order:1;flex:1;min-width:100%}
.fgr-toolbar>.fgr-alert{order:2;flex:1}
.fgr-toolbar>.fgr-secondary{order:3}
.fgr-toolbar>.fgr-add{order:3}
}
@media(max-width:700px){
.cfi-registry-gallery-mode .topbar{height:72px;min-height:72px;padding:8px 12px}
.cfi-registry-gallery-mode .cfi-command-brand{width:100px;min-width:100px;padding-right:8px}
.cfi-registry-gallery-mode .cfi-command-brand #cfi-command-logo{max-width:87px}
.cfi-registry-gallery-mode .cfi-official-lockup{display:none}
.cfi-registry-gallery-mode .cfi-brand-context h1{font-size:19px!important}
.cfi-registry-gallery-mode .main-view{padding:11px 11px 24px!important}
.fgr-gallery{grid-template-columns:minmax(0,1fr);gap:14px}
.fgr-toolbar{gap:8px}
.fgr-filter-list{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.fgr-filter{justify-content:center}
.fgr-alert{min-width:100%;justify-content:space-between}
.fgr-secondary,.fgr-add{flex:1;min-width:calc(50% - 6px)}
.fgr-photo{aspect-ratio:4/3;height:auto}
.fgr-card-body{gap:9px}
.fgr-card-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px}
.fgr-route .fgr-from,.fgr-route .fgr-to{max-width:32%}
.fgr-routes{padding:10px}
}
@media(max-width:400px){.fgr-photo{aspect-ratio:4/3;height:auto}.fgr-photo-number{top:12px;left:12px;min-height:30px;padding:0 9px}.fgr-photo-credit{right:11px;bottom:10px;font-size:7px;letter-spacing:.7px}.fgr-card-head-actions{gap:4px}.fgr-badge{padding:7px 8px}.fgr-stats>div:nth-child(2){padding-left:7px}.fgr-card-actions button{font-size:10px;padding:0 5px}}

/* Audit W1: four hero cards retained, full status population reconciled below. */
.dx-kpi-reconciliation{margin:5px 2px 12px;font-size:11px;line-height:1.45;color:#54727b}
.dx-status-assigned .dx-status-mark{background:#e9f0f5;color:#426c83}
.dx-status-assigned strong{color:#426c83}
.fgr-stats .fgr-next-trip{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;min-width:0}
.fgr-next-trip>span{font-size:10px;color:#647d87}
.fgr-next-trip>strong{font-size:12px;white-space:normal;overflow-wrap:anywhere;color:#123c4b}
.fgr-next-trip>small{font-size:10px;line-height:1.35;color:#647d87}
.fgr-next-trip>button{background:transparent;border:0;padding:4px 0;font-family:inherit;font-size:11px;font-weight:700;line-height:1.4;color:#006d60;text-align:left;cursor:pointer}
.fgr-next-trip>button:focus-visible{outline:2px solid #167f6d;outline-offset:3px}
