:root{--navy:#06265d;--blue:#074da5;--blue2:#0b84e8;--red:#e51d2d;--ink:#08275d;--muted:#687c9b;--pale:#f3f8ff;--line:#d9e7f8;--green:#16b95c;--shadow:0 12px 34px rgba(7,48,107,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f8ff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.topbar{min-height:40px;padding:8px 3.1%;background:linear-gradient(90deg,#05235a,#093c83);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:13px}.top-left,.top-right{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.top-left i{height:16px;width:1px;background:#ffffff55}.top-right{font-weight:650}.main-header{height:88px;padding:10px 3.1%;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 4px 18px #0b367b10;position:relative;z-index:5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:300px}.logo-slot{width:66px;height:58px;border:2px dashed #9bb5d7;border-radius:12px;display:grid;place-items:center;color:#6f8caf;background:#f8fbff;font-size:10px;text-align:center;letter-spacing:1px;font-weight:800}.brand-copy strong{font-size:clamp(19px,2vw,26px);font-weight:900;font-style:italic;letter-spacing:-.8px;white-space:nowrap;color:var(--navy)}.brand-copy em,.footer-brand em{font-style:italic;color:var(--red)}.brand-copy small{display:block;text-align:center;color:var(--red);font-weight:750;font-style:italic;font-size:12px;margin-top:2px}.navigation{display:flex;align-items:center;gap:clamp(10px,2vw,30px)}.navigation a{text-decoration:none;color:#153b76;font-size:14px;font-weight:750;padding:12px 3px;border-bottom:3px solid transparent}.navigation a:hover,.navigation a.active{color:var(--red);border-color:var(--red)}.nav-login{border:0;border-radius:30px;color:white;background:var(--navy);padding:13px 20px;font-weight:800;white-space:nowrap;box-shadow:0 5px 12px #082d6e22}
.hero{min-height:172px;padding:27px 4.2%;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative;background:linear-gradient(105deg,#cce9ff 0%,#f7fbff 40%,#99d0ff 100%);border-bottom:1px solid #acd5f5}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 72% 15%,#fff 0,transparent 30%),linear-gradient(180deg,transparent 65%,#fff8);pointer-events:none}.hero-copy{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:2px;color:#2670b7;font-weight:900;margin-bottom:7px}.hero h1{font-size:clamp(31px,4vw,48px);line-height:1.05;margin:0;color:var(--navy);letter-spacing:-1.2px}.hero p{font-size:18px;font-weight:650;margin:8px 0 13px;color:#16477f}.hero-pills{display:flex;flex-wrap:wrap;gap:8px}.hero-pills span{padding:7px 12px;border-radius:20px;background:#ffffffbd;border:1px solid #b8d6f5;color:#174c91;font-size:12px;font-weight:750}.hero-plane{position:absolute;right:27%;top:19px;font-size:105px;color:#1872be;opacity:.52;transform:rotate(-10deg);text-shadow:0 12px 25px #286ba755}.hero-plane span{display:block;position:absolute;top:50px;left:-15px;font-size:9px;letter-spacing:1px;color:#fff;font-weight:900;transform:rotate(10deg);white-space:nowrap}.hero-slogan{position:relative;z-index:1;text-align:right;color:#0b3975;font-weight:900;font-style:italic;display:grid;gap:5px}.hero-slogan b{font-size:19px}.hero-slogan small{font-size:14px}
.search-wrap{max-width:1420px;margin:-1px auto 0;position:relative;z-index:2;padding:14px 20px 9px;background:#fff;border:1px solid #d4e4f8;border-radius:0 0 17px 17px;box-shadow:0 10px 26px #0d4e9920;display:grid;grid-template-columns:205px minmax(220px,1fr) 210px 175px;gap:12px;align-items:center}.search-label{height:52px;display:flex;justify-content:center;align-items:center;gap:12px;border-radius:12px;color:white;background:linear-gradient(110deg,#062c70,#0757b4);font-size:15px}.search-icon{font-size:28px;line-height:1}.search-wrap input,.search-wrap select{height:52px;width:100%;border:1px solid #b6cbe8;border-radius:11px;padding:0 15px;color:#173f78;background:#fff;outline:none;box-shadow:inset 0 1px 3px #163c7010}.search-wrap input:focus,.search-wrap select:focus,.settings-grid input:focus,.settings-grid select:focus{border-color:#1685f3;box-shadow:0 0 0 3px #1685f322}.track-button{height:52px;border:0;border-radius:12px;background:linear-gradient(100deg,#e20c23,#f12737);color:#fff;font-weight:850;padding:0 18px;box-shadow:0 6px 16px #e51d2d2c}.track-button span{font-size:21px;margin-left:8px}.search-links{grid-column:2/5;display:flex;gap:10px;align-items:center;font-size:11px;color:#466994;padding:0 3px 1px}.search-help{margin-left:auto;color:#0a4c9c;font-weight:800}
main{max-width:1600px;margin:18px auto 0;padding:0 2.5% 26px}.dashboard-grid{display:grid;grid-template-columns:355px minmax(0,1fr);gap:14px}.shipment-card,.map-card{background:#061d45;position:relative;border:1px solid #d3e4fb;border-radius:17px;overflow:hidden;box-shadow:var(--shadow);min-width:0}
.map-topbar{height:58px;background:linear-gradient(90deg,#072c66,#064d98);display:flex;justify-content:space-between;align-items:center;padding:0 17px;gap:10px}
.globe-heading b{display:block;color:#fff;font-size:13px;letter-spacing:.7px}.globe-heading small{display:block;color:#b9dcff;font-size:10px;margin-top:3px}
.map-status{font-size:10px;color:#d7f2ff;font-weight:900;letter-spacing:.5px;display:flex;align-items:center;gap:7px;white-space:nowrap}.map-status i{width:9px;height:9px;border-radius:50%;background:#19d66c;box-shadow:0 0 9px #19d66c}
.globe-stage{height:490px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 52% 48%,#1477b6 0,#0b437e 43%,#031b43 85%)}.globe-viz{position:absolute;inset:0;z-index:1}.globe-viz canvas{display:block}
.globe-fallback{position:absolute;inset:0;display:grid;place-items:center;z-index:0}.fallback-earth{width:min(64%,445px);aspect-ratio:1;border-radius:50%;position:relative;background:radial-gradient(ellipse at 32% 30%,#9bcfdd 0,#317da0 29%,#0c477d 57%,#031a3d 75%);box-shadow:inset -35px -22px 55px #00112e,inset 11px 9px 22px #c4eeff8c,0 0 50px #2cb8ff77;border:2px solid #8bd8ff88}.fallback-earth:before{content:"";position:absolute;inset:12%;border-radius:50%;background:repeating-linear-gradient(0deg,transparent 0 31px,#c3eaff28 32px 33px),repeating-linear-gradient(90deg,transparent 0 43px,#c3eaff24 44px 45px);clip-path:ellipse(50% 50%)}
.fallback-continent{position:absolute;background:linear-gradient(130deg,#94c875,#418c68 55%,#bdc47c);filter:drop-shadow(2px 4px 4px #001);opacity:.85}.fallback-continent.one{width:31%;height:19%;left:28%;top:34%;border-radius:55% 35% 65% 30%;transform:rotate(-20deg)}.fallback-continent.two{width:18%;height:30%;left:52%;top:47%;border-radius:40% 55% 48% 55%;transform:rotate(12deg)}
.fallback-route{position:absolute;top:45%;left:19%;width:60%;height:21%;border-top:4px dashed #76edff;border-radius:50%;transform:rotate(-20deg);filter:drop-shadow(0 0 7px #00c8ff)}.fallback-pin{position:absolute;width:18px;height:18px;border-radius:50%;border:3px solid white;box-shadow:0 0 15px currentColor}.fallback-pin.start{background:#0798ff;color:#0798ff;left:23%;top:55%}.fallback-pin.end{background:#ee273d;color:#ee273d;right:21%;top:39%}
.current-scan-card{position:absolute;z-index:3;top:16px;left:17px;min-width:195px;max-width:250px;padding:11px 14px;background:#031d49d9;border:1px solid #54bfff88;border-radius:12px;color:#fff;box-shadow:0 7px 22px #00163455;backdrop-filter:blur(9px)}.current-scan-card small{display:block;color:#a9dfff;font-size:9px;letter-spacing:1px;font-weight:900}.current-scan-card b{display:block;font-size:16px;margin-top:4px}.current-scan-card span{display:block;color:#d6eaff;font-size:11px;margin-top:2px}
.map-hint{position:absolute;z-index:3;bottom:13px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:1px;font-weight:850;color:#cceaff;background:#001d48b8;padding:7px 11px;border-radius:20px;white-space:nowrap}
.map-zoom{position:absolute;right:13px;bottom:14px;z-index:4;display:grid;gap:5px}.map-zoom button{height:34px;width:34px;border:1px solid #9dd8ff66;background:#052958e8;color:#fff;border-radius:9px;font-size:20px;font-weight:800;box-shadow:0 3px 12px #00142f55}.map-zoom button:hover,.map-zoom button.paused{background:#087ddd}
.map-legend{min-height:40px;background:#031a3e;color:#d2e9ff;display:flex;align-items:center;gap:17px;flex-wrap:wrap;padding:8px 14px;font-size:10px}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{height:8px;width:8px;border-radius:50%;display:inline-block}.legend-blue{background:#078fff}.legend-red{background:#f22941}.legend-cyan{background:#68eaff}.map-legend #mapFootnote{margin-left:auto;color:#9fb8d7;max-width:49%;text-align:right}
.route-caption{background:#05234f;color:#b9d8f7;padding:10px 15px;font-size:10px;line-height:1.5;border-top:1px solid #22518a}.route-caption b{color:#fff}
.globe-tooltip{font:12px Arial,sans-serif;color:#fff;background:#06285f;padding:7px 9px;border-radius:7px;border:1px solid #53caff}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:17px}.feature{min-height:75px;padding:13px 15px;background:#fff;border:1px solid #d8e7f9;box-shadow:0 5px 16px #1147850b;border-radius:14px;display:flex;align-items:center;gap:14px}.feature b{display:block;font-size:13px}.feature small{display:block;color:#697f9c;font-size:11px;margin-top:5px}.feature-symbol{font-size:32px;font-weight:900}.blue-symbol{color:#0982e4}.green-symbol{color:#22b968}.amber-symbol{color:#f2b52a}footer{min-height:76px;background:linear-gradient(90deg,#041c48,#092f71);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 3.3%;color:#fff}.footer-brand{display:flex;align-items:center;gap:10px;font-style:italic;font-size:18px;font-weight:900}.footer-logo{width:45px;height:34px;border:1px dashed #7894b8;border-radius:6px;font-size:9px;display:grid;place-items:center;color:#aac3e2}.footer-slogan{font-style:italic;font-size:13px;color:#d5e6ff}.footer-url{font-weight:750;font-size:13px}
.admin-dialog{border:0;border-radius:18px;padding:0;width:min(760px,calc(100vw - 24px));max-height:90vh;overflow:auto;color:var(--ink);box-shadow:0 25px 90px #00133370}.admin-dialog::backdrop{background:#031431aa;backdrop-filter:blur(4px)}.dialog-head{position:sticky;top:0;z-index:3;background:#062a66;color:white;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.dialog-head b{display:block;letter-spacing:.5px}.dialog-head small{display:block;color:#c6dafa;font-size:11px;margin-top:3px}.close-button{border:0;background:#ffffff20;color:#fff;border-radius:9px;width:34px;height:34px;font-size:23px}.dialog-content{padding:22px}.dialog-content h2{margin:0 0 5px;font-size:21px}.dialog-content p{margin:0 0 18px;color:#6a7e9c;font-size:13px}.dialog-content>label,.settings-grid label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#274a78}.dialog-content input,.settings-grid input,.settings-grid select{width:100%;border:1px solid #cbdaf0;border-radius:9px;padding:11px 12px;color:#0b326b;background:#fff;min-width:0;outline:none}.dialog-content>label input{margin:7px 0 13px}.full{width:100%}.form-message{font-size:12px;margin-top:8px;color:#b21d30;min-height:16px}.settings-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.settings-title p{margin-bottom:14px}.soft-button{border:1px solid #bdd3ed;background:#eaf3ff;color:#0a438c;border-radius:9px;padding:10px 14px;font-weight:850}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.settings-grid .wide{grid-column:1/-1}.check-label{display:flex!important;align-items:center;grid-template-columns:auto 1fr!important;align-self:end;padding:11px 0}.check-label input{width:17px!important;height:17px}.mapping-box{padding:13px;border:1px solid #d9e7f7;background:#f6faff;border-radius:11px}.mapping-box>b,.mapping-box>small{display:block}.mapping-box>small{font-size:11px;color:#6d809a;margin:5px 0 12px}.mapping-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mapping-grid label{font-size:11px}.mapping-grid input{font-size:11px;padding:9px}.key-state,.help-note{padding:10px 12px;border-radius:9px;background:#f0f6ff;color:#4a668d;font-size:11px}.expiry-warnings{display:grid;gap:6px;margin-bottom:14px}.expiry-warning{padding:9px 11px;border-radius:8px;background:#fff3dc;border:1px solid #f1d49c;color:#80540b;font-size:12px}.expiry-ok{background:#eaf9f0;border-color:#bce8cb;color:#136a36}.section-separator{height:1px;background:#e2ebf7}.settings-grid h3{margin:0;font-size:15px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:20;background:#072d69;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 7px 25px #001c4a55;font-size:13px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1050px){.main-header{height:auto;flex-wrap:wrap}.navigation{order:3;width:100%;justify-content:center}.dashboard-grid{grid-template-columns:320px minmax(0,1fr)}.hero-plane{right:20%}.search-wrap{grid-template-columns:170px 1fr 190px 150px}.map-legend #mapFootnote{margin-left:0}}
@media(max-width:780px){.topbar{align-items:flex-start}.top-left{gap:8px}.top-left i{display:none}.top-right{display:none}.main-header{padding:12px 4%}.brand{min-width:0}.navigation{gap:17px;overflow:auto;justify-content:flex-start}.navigation a{white-space:nowrap}.nav-login{padding:10px 13px;font-size:12px}.hero{min-height:190px;padding:22px 5%}.hero-plane{right:13%;top:52px;font-size:74px;opacity:.25}.hero-slogan{display:none}.search-wrap{margin:0 12px;border-radius:0 0 15px 15px;grid-template-columns:1fr 1fr;padding:12px}.search-label{grid-column:1/-1}.search-wrap input{grid-column:1/-1}.search-wrap select,.search-wrap .track-button{grid-column:auto}.search-links{grid-column:1/-1;flex-wrap:wrap}.dashboard-grid{grid-template-columns:1fr}.globe-stage{height:390px}.feature-grid{grid-template-columns:1fr 1fr}.footer-slogan{display:none}}
@media(max-width:480px){.topbar{font-size:11px}.brand-copy strong{font-size:17px}.logo-slot{width:47px;height:44px}.nav-login{padding:9px}.hero h1{font-size:32px}.hero p{font-size:15px}.search-wrap{grid-template-columns:1fr}.search-wrap select,.search-wrap .track-button{grid-column:1/-1}.search-label{height:46px}.dashboard-grid{gap:11px}.globe-stage{height:330px}.map-status{font-size:8px}.map-legend{gap:9px}.map-legend #mapFootnote{width:100%}.feature-grid{gap:8px}.feature{padding:10px;gap:8px}.feature b{font-size:11px}.feature small{font-size:10px}.admin-dialog{max-height:95vh}.dialog-content{padding:16px}.settings-grid,.mapping-grid{grid-template-columns:1fr}.settings-grid .wide{grid-column:1}.check-label{align-self:auto!important}footer{padding:14px 5%;flex-wrap:wrap}.footer-brand{font-size:15px}.footer-url{font-size:11px}}

.history-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 5px;padding-top:8px;border-top:1px solid #d8e7f8}.history-heading b{font-size:12px;color:#0a3475}.history-heading small{font-size:10px;color:#6b82a0}
.tracking-events{margin-top:6px;border-top:0;padding-top:2px;max-height:360px;overflow:auto}.event{position:relative;display:flex;gap:10px;padding:8px 0 10px;border-bottom:1px solid #eef3f9}.event-number{position:relative;z-index:1;width:23px;height:23px;flex:0 0 23px;border-radius:50%;display:grid;place-items:center;background:#0b83dc;color:#fff;font-size:10px;font-weight:900;box-shadow:0 0 0 3px #e6f4ff}.event:not(:last-child):after{content:"";position:absolute;left:11px;top:29px;bottom:-3px;width:2px;background:#93d6ff}.event:last-child .event-number{background:#ed233b;box-shadow:0 0 0 3px #ffe6e9}.event-copy{min-width:0}.event-copy b{display:block;font-size:11px;color:#082f70;line-height:1.35}.event-copy small{display:block;color:#7587a0;font-size:10px;line-height:1.45;margin-top:3px;overflow-wrap:anywhere}.empty-events{padding:12px 0;color:#7488a4;font-size:11px;line-height:1.5}
@media(max-width:780px){.globe-stage{height:400px}.map-legend #mapFootnote{max-width:100%;width:100%;text-align:left;margin-left:0}.current-scan-card{max-width:205px}}
@media(max-width:480px){.globe-stage{height:345px}.map-status{font-size:8px}.current-scan-card{top:10px;left:10px;min-width:160px;padding:8px 10px}.current-scan-card b{font-size:13px}.map-hint{font-size:7px;letter-spacing:.5px;bottom:9px}.map-zoom{right:8px;bottom:9px}.map-zoom button{width:29px;height:29px}.map-legend{gap:9px}.map-legend #mapFootnote{font-size:9px}}
