@font-face {font-family:WorldCargoAccessSans; font-style:normal;font-weight:400;font-display:swap;src:url(/public/assets/worldcargo/access/nunito-400.ttf) format("truetype");}
@font-face {font-family:WorldCargoAccessSans; font-style:normal;font-weight:700;font-display:swap;src:url(/public/assets/worldcargo/access/nunito-700.ttf) format("truetype");}
@font-face {font-family:WorldCargoAccessSans; font-style:normal;font-weight:800;font-display:swap;src:url(/public/assets/worldcargo/access/nunito-800.ttf) format("truetype");}
/* Scoped public access styling; operational views retain styles.css unchanged. */
#app.access-route { max-width:none; margin:0; padding:0; min-height:100vh; min-height:100dvh; background:#fff; color:#6e7491; font-family:WorldCargoAccessSans,Arial,sans-serif; }
#app.access-route .wc-access { position:relative; min-height:900px; min-height:max(900px,100dvh); overflow:hidden; background:#fff; }
#app.access-route button, #app.access-route input, #app.access-route summary { font-family:WorldCargoAccessSans,'Nunito Sans',Arial,sans-serif; }
#app.access-route .wc-access-toolbar { position:absolute; top:8px; left:8px; right:10px; height:71px; border-radius:12px; background:#fff; box-shadow:0 2px 4px #1c054d1a,0 12px 32px #0000000d; display:flex; align-items:center; justify-content:space-between; padding:0 15px; z-index:2; }
#app.access-route .wc-access-trigger { display:grid; place-items:center; min-width:70px; width:auto; height:44px; padding:0; border:0; background:transparent; cursor:pointer; }
#app.access-route .wc-access-trigger span { display:grid; place-items:center; min-width:56px; padding:0 6px; height:28px; background:#605dec; color:#fafafa; border-radius:4px; font-size:14px; font-weight:400; }
#app.access-route .wc-access-language { position:relative; align-self:flex-start; margin-top:12px; color:#605dec; }
#app.access-route .wc-access-language summary { display:flex; gap:8px; align-items:center; min-height:44px; cursor:pointer; list-style:none; font-size:15px; font-weight:800; }
#app.access-route .wc-access-language summary::-webkit-details-marker { display:none; }
#app.access-route .wc-access-languages { position:absolute; right:0; top:42px; min-width:112px; width:max-content; padding:4px 0; border-radius:4px; background:#605dec; display:flex; flex-direction:column; }
#app.access-route .wc-access-languages button { min-height:44px; padding:4px; border:0; background:none; color:#fff; font-size:11px; text-align:center; cursor:pointer; }
#app.access-route .wc-access-languages button[aria-disabled="true"] { cursor:not-allowed; color:#fff; opacity:1; }
#app.access-route .wc-access-unavailable { display:block; font-size:10px; line-height:14px; }
#app.access-route .wc-access-languages button[aria-pressed="true"] { font-weight:800; background:#403cb4; }
#app.access-route .wc-access-hero { position:relative; margin:152px 0 48px; height:700px; display:grid; place-items:center; }
#app.access-route .wc-access-map { position:absolute; inset:0; width:100%; height:700px; object-fit:cover; pointer-events:none; }
#app.access-route .wc-access-logo { position:relative; width:533px; height:342px; object-fit:cover; }
#app.access-route .wc-access--behind .wc-access-logo { transform:translateY(-79px); }
#app.access-route .wc-access-notice { position:absolute; top:90px; left:16px; right:16px; text-align:center; color:#525a78; }
#app.access-route .wc-access-overlay { position:fixed; inset:0; z-index:10; display:flex; align-items:center; justify-content:center; padding:24px 16px; overflow:auto; background:rgba(82,82,122,.2); }
#app.access-route .wc-access-dialog { position:relative; flex:0 0 auto; width:644px; max-width:100%; margin:auto; padding:39px; border:1px solid #cbd4e6; border-radius:12px; background:#fff; box-shadow:0 2px 4px #0704921a,0 24px 60px #062f7d0d,0 12px 24px #1b3b770d; transform:translateX(38px); }
#app.access-route .wc-access-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; height:33px; margin:0 0 12px; }
#app.access-route .wc-access-heading h1 { margin:0; font-size:24px; line-height:33px; font-weight:700; color:#6e7491; }
#app.access-route .wc-access-close { width:44px; height:44px; flex:0 0 44px; margin-right:-6px; display:grid; place-items:center; padding:0; border:0; background:transparent; cursor:pointer; }
#app.access-route #wc-access-description { margin:0 0 20px; font-size:18px; line-height:25px; font-weight:400; text-align:center; color:#63749a; }
#app.access-route .wc-access-form { display:flex; flex-direction:column; gap:12px; margin:0; }
#app.access-route .wc-access-form label { display:block; margin:0; font-size:18px; }
#app.access-route .wc-access-form input { display:block; width:100%; height:48px; min-height:48px; padding:8px 12px; border:1px solid #7a88a2; border-radius:4px; background:#fff; font-size:18px; line-height:30px; color:#525a78; }
#app.access-route .wc-access-form input::placeholder { color:#63749a; opacity:1; }
#app.access-route .wc-access-submit { width:100%; height:48px; padding:8px 20px; border:0; border-radius:4px; background:#605dec; color:#fafafa; font-size:18px; cursor:pointer; }
#app.access-route .wc-access-submit:disabled { cursor:wait; opacity:.75; }
#app.access-route .wc-access-progress { margin:0; color:#525a78; font-size:14px; line-height:20px; }
#app.access-route .wc-access-status { margin:0; color:#9a2637; font-size:14px; line-height:20px; }
#app.access-route .wc-access-progress:empty, #app.access-route .wc-access-status:empty { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#app.access-route .wc-access-close:disabled { cursor:wait; opacity:.4; }
#app.access-route .wc-access-form input[aria-invalid="true"] { border-color:#9a2637; }
#app.access-route :focus-visible { outline:3px solid #3029aa; outline-offset:3px; }
#app.access-route .wc-access-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:1100px){ #app.access-route .wc-access-dialog { transform:none; } }
@media(max-width:700px){
 #app.access-route .wc-access { min-height:100vh; min-height:100dvh; }
 #app.access-route .wc-access-toolbar { right:8px; padding:0 8px; }
 #app.access-route .wc-access-hero { margin:120px 0 0; height:calc(100svh - 120px); min-height:360px; }
 #app.access-route .wc-access-map { height:100%; }
 #app.access-route .wc-access-logo { width:min(533px,92vw); height:auto; aspect-ratio:533/342; object-fit:cover; }
 #app.access-route .wc-access--behind .wc-access-logo { transform:none; }
 #app.access-route .wc-access-dialog { padding:24px; }
 #app.access-route .wc-access-heading { height:auto; min-height:33px; }
 #app.access-route .wc-access-heading h1 { font-size:22px; line-height:28px; }
 #app.access-route #wc-access-description { font-size:16px; line-height:23px; }
 #app.access-route .wc-access-desktop-break { display:none; }
}
@media(max-width:360px){ #app.access-route .wc-access-dialog { padding:20px; } }


#app.access-route .wc-access-languages button:focus-visible { outline:3px solid #fff; outline-offset:-4px; }
