:root{
  --brand:#16357E;
  --brand-bright:#2C5BD6;
  --brand-900:#0D2150;
  --logo-red:#CC1F27;
  --bg:#FFFFFF;
  --surface:#FFFFFF;
  --line:#D9E2F2;
  --ink:#1C2433;
  --muted:#5B6A85;
  --ok:#0F9D63;
  --warn:#DD8A12;
  --danger:#E0463F;
  --shadow:0 18px 50px -20px rgba(13,33,80,.25);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);letter-spacing:0}
a{color:var(--brand);text-decoration:none}
input,button,textarea,select{font:inherit}
.ecs-body{min-height:100vh;display:flex;flex-direction:column;position:relative;overflow-x:hidden}
.map-pattern{position:fixed;inset:0;background:url("../img/world-map.1b6cb649c81e.svg") center 78px/90% auto no-repeat;opacity:.18;pointer-events:none;z-index:-1}
.topbar,.page-head{width:min(1160px,calc(100% - 32px));margin:18px auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand-lockup{display:inline-flex;align-items:center;background:white;border-radius:10px}
.brand-lockup img{width:170px;height:auto;display:block;object-fit:contain}
.lang-switch,.ghost-btn,.text-btn{border:1px solid var(--line);background:rgba(255,255,255,.72);border-radius:10px;padding:10px 14px;color:var(--brand);font-weight:700}
.login-shell{width:min(1120px,calc(100% - 32px));margin:24px auto 64px;position:relative}
.login-shell.compact{width:min(620px,calc(100% - 32px))}
.login-card{background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:44px;position:relative;z-index:1}
.login-card.single{display:grid;grid-template-columns:1fr;padding:36px}
.eyebrow{margin:0 0 10px;color:var(--brand-bright);font-weight:800;text-transform:uppercase;font-size:13px}
h1,h2{letter-spacing:0;margin:0;color:var(--brand-900)}
h1{font-size:clamp(30px,4vw,52px);line-height:1.05}
h2{font-size:22px}
.login-copy p{color:var(--muted);line-height:1.65}
.info-box{border:1px solid var(--line);background:#F5F8FE;border-radius:10px;padding:16px;color:var(--muted);display:grid;gap:6px}
.info-box strong{color:var(--brand)}
.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}
.feature-row span{background:#F5F8FE;border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center;font-weight:700;color:var(--brand)}
.stepper{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:12px}
.stepper i{border-top:2px dashed var(--line)}
.step{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#EEF2F8;color:var(--muted);font-weight:800}
.step.active{background:var(--brand);color:white}
.step-labels{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:700;margin:8px 0 24px}
.form-stack{display:grid;gap:14px}
label{display:grid;gap:8px;color:var(--brand-900);font-weight:700}
input,textarea,select{border:1px solid var(--line);border-radius:10px;padding:13px 14px;background:white;color:var(--ink);min-width:0}
input:focus,textarea:focus,select:focus{outline:3px solid rgba(44,91,214,.16);border-color:var(--brand-bright)}
.otp-input{text-align:center;font-size:26px;font-weight:800;letter-spacing:4px}
.primary-btn{border:0;border-radius:10px;background:var(--brand);color:white;font-weight:800;padding:14px 18px;cursor:pointer}
.primary-btn:hover{background:var(--brand-bright)}
.primary-btn:disabled,input:disabled{background:#D8DEE9;color:#8290A8;cursor:not-allowed}
.divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-weight:700;margin:20px 0}
.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}
.resend-link,.countdown{font-size:14px;color:var(--muted);margin:0}
.truck-visual{display:none}
.flash-stack{width:min(760px,calc(100% - 32px));margin:0 auto 14px;display:grid;gap:8px}
.flash-stack.inline{width:100%;margin:0 0 16px}
.flash{border-radius:10px;padding:12px 14px;border:1px solid var(--line);background:white;box-shadow:var(--shadow)}
.flash-error{border-color:rgba(224,70,63,.35);color:var(--danger)}
.flash-info,.flash-success{border-color:rgba(15,157,99,.24);color:var(--ok)}
.footer-band{margin-top:auto;background:white;color:var(--muted);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px max(24px,calc((100vw - 1160px)/2));font-size:14px;flex-wrap:wrap}
.footer-band img{width:150px;background:white;border-radius:6px}
.footer-band span{max-width:280px}
.footer-band strong{color:var(--ink)}
.page-head h1{font-size:clamp(28px,4vw,44px)}
.shipment-grid{width:min(1160px,calc(100% - 32px));margin:0 auto 80px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.shipment-controls{width:min(1160px,calc(100% - 32px));margin:0 auto 18px;display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr)) auto auto;gap:12px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:16px}
.shipment-controls label{display:grid;gap:7px;color:var(--brand-900);font-weight:800;font-size:13px}
.shipment-controls input,.shipment-controls select{min-height:42px;border-radius:8px}
.shipment-controls .primary-btn,.shipment-controls .text-btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0 14px}
.shipment-card,.detail-main,.history-panel,.empty-state{background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px}
.shipment-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.tracking{font-weight:800;color:var(--brand)}
.status-pill{border-radius:999px;padding:7px 10px;background:#EEF3FF;color:var(--brand);font-weight:800;font-size:12px}
.status-teslim{background:#EAF8F1;color:var(--ok)}
.shipment-card p,.shipment-card dd,.detail-fields span,.timeline span,.timeline p{color:var(--muted)}
dl{display:grid;gap:10px}
dt{font-size:12px;text-transform:uppercase;color:var(--muted);font-weight:800}
dd{margin:2px 0 0}
.detail-layout{width:min(1160px,calc(100% - 32px));margin:0 auto 80px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}
.milestone-track{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}
.milestone-track span{padding:14px 10px;border-radius:10px;text-align:center;background:#EEF3FF;color:var(--brand);font-weight:800}
.current-yukleme span:nth-child(n+2),.current-yolda span:nth-child(n+3),.current-gumruk span:nth-child(n+4){background:#F3F5F9;color:var(--muted)}
.current-teslim span{background:#EAF8F1;color:var(--ok)}
.detail-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.detail-fields div{border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:6px}
.timeline{padding-left:20px;display:grid;gap:16px}
.timeline li::marker{color:var(--brand)}
.staff-login-body{min-height:100vh;background:white;overflow-x:hidden;display:flex;flex-direction:column}
.staff-login-layout{flex:1;display:grid;grid-template-columns:minmax(320px,46vw) minmax(360px,1fr);min-height:0}
.staff-panel{background:white;color:var(--brand-900);border-right:1px solid var(--line);padding:clamp(28px,4vw,56px);display:flex;flex-direction:column;justify-content:center;gap:22px;min-width:0}
.staff-panel h1{color:var(--brand-900);font-size:clamp(34px,4.1vw,64px);max-width:13ch}
.staff-panel ul{line-height:1.9;font-weight:700;margin:0;padding-left:24px}
.system-badge{align-self:flex-start;border:1px solid var(--line);background:#F8FAFF;color:var(--brand);border-radius:999px;padding:8px 12px;font-weight:800}
.staff-form-wrap{display:grid;grid-template-rows:auto auto auto;align-content:center;padding:clamp(20px,3vw,44px);position:relative;min-width:0;gap:18px}
.staff-login-card{width:min(500px,100%);background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:clamp(22px,2.6vw,34px);display:grid;gap:16px;justify-self:center}
.staff-card-logo{width:170px;height:auto;display:block;object-fit:contain}
.form-row{display:flex;justify-content:space-between;gap:10px;font-size:14px}
.checkbox{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--muted)}
.checkbox input{width:auto}
.staff-lang-switch{position:static;max-width:100%;white-space:normal;justify-self:end}
.admin-brand{display:flex;align-items:center;gap:14px;font-weight:800}
.admin-brand img{height:46px;width:auto;background:white;border-radius:4px}
#header{background:white!important;color:var(--brand-900);border-bottom:1px solid var(--line)}
#header a:link,#header a:visited{color:var(--brand)}
.captcha-challenge{display:flex;align-items:baseline;justify-content:center;gap:10px;border:1px solid var(--line);background:#F5F8FE;border-radius:12px;padding:22px;color:var(--brand-900)}
.captcha-challenge span{font-size:36px;font-weight:800}
.captcha-challenge small{font-size:20px;color:var(--muted);font-weight:800}
html{color-scheme:light}
html[data-ecs-theme="dark"]{color-scheme:dark}
body.admin-interface{
  --admin-bg:#F4F8FF;
  --admin-surface:#FFFFFF;
  --admin-card:rgba(255,255,255,.97);
  --admin-text:var(--brand-900);
  --admin-muted:var(--muted);
  --admin-line:var(--line);
  --admin-link:var(--brand);
  --admin-section:linear-gradient(135deg,var(--brand),var(--brand-bright));
  --admin-section-text:#FFFFFF;
  --admin-soft:#F7FAFF;
  --admin-shadow:0 14px 34px -24px rgba(13,33,80,.48);
  background:var(--admin-bg)!important;
  color:var(--admin-text);
}
html[data-ecs-theme="dark"] body.admin-interface{
  --admin-bg:#081225;
  --admin-surface:#111B31;
  --admin-card:rgba(17,27,49,.98);
  --admin-text:#EAF1FF;
  --admin-muted:#AEBBDD;
  --admin-line:#304164;
  --admin-link:#AFC6FF;
  --admin-section:linear-gradient(135deg,#173A86,#255FD8);
  --admin-section-text:#FFFFFF;
  --admin-soft:#17233B;
  --admin-shadow:0 18px 42px -26px rgba(0,0,0,.8);
}
body.admin-interface:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 82% 38%,rgba(22,53,126,.08),transparent 24rem),radial-gradient(circle at 0 72%,rgba(44,91,214,.08),transparent 19rem);pointer-events:none;z-index:-1}
html[data-ecs-theme="dark"] body.admin-interface:before{background:radial-gradient(circle at 80% 35%,rgba(44,91,214,.18),transparent 25rem),radial-gradient(circle at 2% 72%,rgba(175,198,255,.1),transparent 20rem)}
body.admin-interface #container{background:transparent;min-width:0}
body.admin-interface #header{width:min(1880px,calc(100% - 32px));margin:16px auto 20px;background:var(--admin-surface)!important;border:1px solid var(--admin-line);border-radius:10px;box-shadow:var(--admin-shadow);padding:14px 26px;height:auto;display:flex;align-items:center;gap:20px}
body.admin-interface #branding{float:none;display:flex;align-items:center;min-width:0}
body.admin-interface #branding h1{margin:0}
body.admin-interface .admin-brand{color:var(--admin-text)!important;text-decoration:none;gap:22px}
body.admin-interface .admin-brand img{height:56px;width:178px;object-fit:contain;padding-right:22px;border-right:1px solid var(--admin-line);filter:none!important;opacity:1!important;mix-blend-mode:normal;background:transparent}
body.admin-interface .admin-brand span{font-size:23px;white-space:nowrap}
body.admin-interface #user-tools{margin-left:auto;float:none;padding:0;font-size:14px;letter-spacing:0;text-transform:none;color:var(--admin-text)}
.ecs-admin-tools{display:flex;align-items:center;gap:0;flex-wrap:wrap;justify-content:flex-end}
.ecs-admin-tools a,.ecs-admin-tools button,.ecs-admin-welcome{display:inline-flex;align-items:center;gap:8px;border:0;border-left:1px solid var(--admin-line);background:transparent;color:var(--admin-link)!important;padding:8px 14px;font-size:14px;font-weight:700;line-height:1.2;text-transform:none;cursor:pointer}
.ecs-admin-welcome{color:var(--admin-text)!important;border-left:0}
.ecs-admin-tools form{margin:0;padding:0;display:inline}
.ecs-theme-toggle{width:40px;height:40px;border:1px solid var(--admin-line)!important;border-radius:50%;justify-content:center;margin-left:10px;padding:0!important;color:var(--admin-link)!important}
.ecs-theme-toggle .ecs-icon{margin:0}
html[data-ecs-theme="dark"] .ecs-theme-toggle .ecs-sun-icon,
html:not([data-ecs-theme="dark"]) .ecs-theme-toggle .ecs-moon-icon{display:none}
.ecs-icon{width:18px;height:18px;display:inline-block;vertical-align:-3px;fill:currentColor;flex:0 0 auto}
body.admin-interface div.breadcrumbs{width:min(1760px,calc(100% - 72px));margin:0 auto 16px;background:transparent;color:var(--admin-link);padding:0;font-size:14px}
body.admin-interface div.breadcrumbs a{color:var(--admin-link)}
body.admin-interface #content{width:min(1760px,calc(100% - 72px));margin:0 auto 28px;padding:0}
body.admin-interface #content-main{float:none;width:100%}
body.admin-interface #nav-sidebar,.toggle-nav-sidebar{display:none!important}
body.admin-interface .main.shifted > #nav-sidebar + .content{margin-left:0}
.ecs-admin-shell{padding:4px 0 24px}
.ecs-admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:14px 0 22px}
.ecs-admin-hero h1,body.admin-interface #content h1{font-size:clamp(32px,2.25vw,36px);line-height:1.1;margin:0 0 8px;color:var(--admin-text);font-weight:800}
.ecs-dashboard .ecs-admin-hero h1{font-size:clamp(44px,4vw,58px);line-height:1.04;margin-bottom:10px}
.ecs-admin-hero p{margin:0;color:var(--admin-muted);font-size:16px}
.ecs-dashboard .ecs-admin-hero p{font-size:18px}
.ecs-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:28px;align-items:start}
.ecs-module-stack{display:grid;gap:12px}
.ecs-module,.ecs-recent-panel,.ecs-empty-panel,body.admin-interface .module,body.admin-interface #changelist,body.admin-interface .form-row,body.admin-interface fieldset.module{background:var(--admin-card);border:1px solid var(--admin-line);border-radius:10px;box-shadow:var(--admin-shadow);overflow:hidden}
.ecs-module-shipments{order:1}
.ecs-module-accounts{order:2}
.ecs-module-customers{order:3}
.ecs-module-auth{order:4}
.ecs-module-otp{order:5}
.ecs-module-mails{order:6}
.ecs-module header,.ecs-recent-panel header,body.admin-interface .module h2,body.admin-interface .inline-group h2{background:var(--admin-section);color:var(--admin-section-text);padding:12px 16px;display:flex;align-items:center;gap:10px;margin:0;border-radius:0;font-size:16px;font-weight:800}
.ecs-module header h2,.ecs-recent-panel header h2{margin:0;color:white;font-size:18px}
.ecs-module-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:var(--brand);font-weight:800}
.ecs-module-rows{display:grid}
.ecs-module-row{min-height:50px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 18px;border-top:1px solid var(--admin-line)}
.ecs-model-title{display:inline-flex;align-items:center;gap:10px;font-size:16px;font-weight:800;color:var(--admin-text)!important}
.ecs-row-icon{width:30px;height:30px;border:1px solid var(--admin-line);border-radius:8px;display:grid;place-items:center;color:var(--admin-link);background:var(--admin-soft)}
.ecs-row-icon .ecs-icon{width:17px;height:17px}
.ecs-model-actions{display:flex;align-items:center;gap:18px}
.ecs-model-actions a{display:inline-flex;align-items:center;gap:6px;color:var(--admin-link)!important;font-weight:700}
.ecs-action-add .ecs-icon{width:20px;height:20px}
.ecs-recent-panel{padding-bottom:16px}
.ecs-recent-list{list-style:none;margin:0;padding:10px 22px;display:grid}
.ecs-recent-list li{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--admin-line)}
.ecs-recent-list strong{display:block;color:var(--admin-text);font-size:15px}
.ecs-recent-target{display:block;color:var(--admin-muted);font-size:14px;margin-top:2px}
.ecs-recent-target a{color:var(--admin-link)!important}
.ecs-recent-list small{display:block;color:var(--admin-muted);font-weight:700;white-space:nowrap}
.ecs-recent-dot{width:34px;height:34px;border-radius:50%;background:var(--admin-soft);border:1px solid var(--admin-line);display:grid;place-items:center;color:var(--admin-link)}
.ecs-empty-panel{margin:16px 20px;padding:38px 20px;display:grid;place-items:center;text-align:center;color:var(--admin-muted);gap:6px}
.ecs-empty-panel strong{color:var(--admin-text)}
.ecs-recent-empty{min-height:236px}
.ecs-empty-icon{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:var(--admin-soft);color:#7FA8EE;margin-bottom:8px}
.ecs-empty-icon .ecs-icon{width:52px;height:52px}
body.admin-interface #content-related{display:none}
body.admin-interface .object-tools{float:none;margin:0 0 18px;display:flex;justify-content:flex-end}
body.admin-interface .object-tools a:link,body.admin-interface .object-tools a:visited,body.admin-interface input[type=submit],body.admin-interface .submit-row input,body.admin-interface a.button{background:var(--brand-900);border:1px solid var(--brand-900);border-radius:6px;color:white!important;font-weight:800;padding:12px 18px}
html[data-ecs-theme="dark"] body.admin-interface .object-tools a:link,
html[data-ecs-theme="dark"] body.admin-interface .object-tools a:visited,
html[data-ecs-theme="dark"] body.admin-interface input[type=submit],
html[data-ecs-theme="dark"] body.admin-interface .submit-row input,
html[data-ecs-theme="dark"] body.admin-interface a.button{background:var(--brand-bright);border-color:var(--brand-bright)}
body.admin-interface #changelist{padding:0}
body.admin-interface #toolbar{background:var(--admin-surface);border:0;border-bottom:1px solid var(--admin-line);padding:20px}
body.admin-interface #toolbar form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
body.admin-interface #toolbar #searchbar{height:44px;border:1px solid var(--admin-line);border-radius:6px;padding:0 14px;min-width:360px}
body.admin-interface #changelist-filter{position:static;float:none;width:auto;background:var(--admin-surface);border:0;border-bottom:1px solid var(--admin-line);padding:16px 20px}
body.admin-interface #changelist-filter h2{background:transparent;color:var(--admin-text);padding:0;margin:0 0 12px;font-size:18px}
body.admin-interface #changelist-filter h3{color:var(--admin-muted)}
body.admin-interface #changelist-filter ul{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px;padding:0}
body.admin-interface #changelist-filter li{list-style:none;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:#F8FAFF}
body.admin-interface #changelist-filter li.selected{background:#EAF8F1;border-color:#BFEBD5}
body.admin-interface .change-list .filtered .results,body.admin-interface .change-list .filtered .paginator,body.admin-interface .filtered #toolbar,body.admin-interface .filtered div.xfull{margin-right:0}
body.admin-interface table{border-collapse:separate;border-spacing:0;width:100%}
body.admin-interface thead th{background:var(--admin-soft);border-bottom:1px solid var(--admin-line);color:var(--admin-text);font-weight:800;padding:16px}
body.admin-interface tbody th,body.admin-interface tbody td{border-bottom:1px solid var(--admin-line);padding:16px;color:var(--admin-text)}
body.admin-interface tr:nth-child(odd),body.admin-interface tr:nth-child(even){background:var(--admin-surface)}
body.admin-interface .paginator{background:var(--admin-surface);border-top:1px solid var(--admin-line);color:var(--admin-muted);padding:16px 20px}
body.admin-interface form .aligned p,body.admin-interface form .aligned ul{margin-left:0}
body.admin-interface .aligned label{color:var(--admin-text);font-weight:800}
body.admin-interface .submit-row{background:var(--admin-surface);border:1px solid var(--admin-line);border-radius:8px;margin:18px 0 0;box-shadow:var(--admin-shadow)}
body.admin-interface input[type=text],body.admin-interface input[type=password],body.admin-interface input[type=email],body.admin-interface input[type=url],body.admin-interface input[type=number],body.admin-interface input[type=date],body.admin-interface textarea,body.admin-interface select{border:1px solid var(--admin-line);border-radius:8px;background:var(--admin-surface);color:var(--admin-text);padding:10px 12px;min-height:42px;box-shadow:none}
body.admin-interface select,
body.admin-interface select option{color:var(--admin-text)!important;background:var(--admin-surface)!important}
body.admin-interface select:invalid{color:var(--admin-muted)!important}
body.admin-interface .related-widget-wrapper{display:flex;align-items:center;gap:10px;max-width:100%;float:none}
body.admin-interface .related-widget-wrapper select{width:min(460px,100%)!important;min-width:280px}
body.admin-interface .related-widget-wrapper-link{width:34px;height:34px;border-radius:8px;border:1px solid var(--admin-line);background:var(--admin-soft);display:inline-grid!important;place-items:center;margin:0!important;color:var(--admin-link)!important}
body.admin-interface .related-widget-wrapper-link img{max-width:18px;max-height:18px;filter:none}
body.admin-interface .form-row.field-load_type select,
body.admin-interface .form-row.field-nationality select,
body.admin-interface .form-row.field-status select,
body.admin-interface .form-row.field-role select{width:min(260px,100%)!important;min-width:180px}
body.admin-interface .form-row.field-milestone div:has(input[type=radio]){display:flex;gap:12px;flex-wrap:wrap}
body.admin-interface .form-row.field-milestone label:has(input[type=radio]){display:inline-flex;align-items:center;gap:8px;border:1px solid var(--admin-line);border-radius:999px;background:var(--admin-soft);padding:8px 12px;margin:0;color:var(--admin-text)}
body.admin-interface .form-row.field-milestone input[type=radio]{width:auto;min-height:0}
body.admin-interface.change-form #content{max-width:1480px}
body.admin-interface.change-form #content h1{font-size:clamp(30px,2.5vw,42px);margin:18px 0 22px}
body.admin-interface.change-form #content-main form{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
body.admin-interface.change-form fieldset.module{margin:0 0 18px;padding:0;border-radius:12px;background:var(--admin-card)}
body.admin-interface.change-form fieldset.module h2{background:var(--admin-section);color:var(--admin-section-text);padding:13px 18px;font-size:17px}
body.admin-interface.change-form fieldset.module .form-row{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;align-items:start;margin:0;border:0;border-top:1px solid var(--admin-line);padding:18px 20px;background:transparent;box-shadow:none;border-radius:0}
body.admin-interface.change-form fieldset.module .form-row:first-of-type{border-top:0}
body.admin-interface.change-form .form-row > div{display:block;min-width:0}
body.admin-interface.change-form .form-row label{display:block;margin:0;padding-top:10px;color:var(--admin-text);font-size:15px}
body.admin-interface.change-form .readonly{display:inline-flex;align-items:center;min-height:42px;color:var(--admin-muted);font-weight:700}
body.admin-interface.change-form textarea{width:min(820px,100%);min-height:116px;resize:vertical}
body.admin-interface.change-form .field-cargo_content textarea,
body.admin-interface.change-form .field-route_text textarea{min-height:104px}
body.admin-interface.change-form .field-description textarea{min-height:96px}
body.admin-interface.change-form .help,
body.admin-interface.change-form .helptext{color:var(--admin-muted);font-size:13px;margin-top:6px}
body.admin-interface.change-form .submit-row{display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0;z-index:5;padding:16px 20px}
body.admin-interface.change-form .submit-row input{margin:0}
body.admin-interface.change-form .errorlist{background:#FFF5F5;border:1px solid rgba(224,70,63,.32);color:var(--danger);border-radius:8px;padding:10px 12px;margin:0 0 10px;list-style:none}
html[data-ecs-theme="dark"] body.admin-interface.change-form .errorlist{background:#351A24}

/* ECS admin dashboard visual lockup */
body.admin-interface{
  --admin-bg:#eef4fb;
  --admin-surface:#FFFFFF;
  --admin-card:#FFFFFF;
  --admin-text:#071c4d;
  --admin-muted:#586986;
  --admin-line:#d7e2f1;
  --admin-link:#14368f;
  --admin-section:linear-gradient(135deg,#071f5c 0%,#08276b 58%,#0c348f 100%);
  --admin-section-text:#FFFFFF;
  --admin-soft:#f5f8fd;
  --admin-shadow:0 22px 42px -30px rgba(7,31,92,.46);
  background:#eef4fb!important;
  font-family:Inter,Arial,system-ui,sans-serif;
}
body.admin-interface:before{
  background:
    radial-gradient(ellipse 600px 420px at 84% 38%,rgba(19,54,143,.07),transparent 68%),
    radial-gradient(ellipse 560px 480px at -4% 78%,rgba(20,54,143,.08),transparent 62%);
}
body.admin-interface #container{min-height:100vh}
body.admin-interface #header{
  width:min(1888px,calc(100% - 28px));
  min-height:94px;
  margin:14px auto 34px;
  padding:0 34px;
  border:1px solid #d8e2f0;
  border-radius:10px;
  box-shadow:0 22px 34px -28px rgba(7,31,92,.56);
  display:flex;
  align-items:center;
  gap:30px;
}
body.admin-interface #branding{height:100%;align-items:center;flex:0 0 auto}
body.admin-interface .admin-brand{gap:28px;align-items:center}
body.admin-interface .admin-brand img{
  width:174px;
  height:54px;
  padding:0 32px 0 0;
  border-right:1px solid #ccd8eb;
  border-radius:0;
  background:transparent!important;
  object-fit:contain;
}
body.admin-interface .admin-brand span{
  color:#071c4d;
  font-size:26px;
  line-height:1;
  font-weight:800;
}
body.admin-interface #user-tools{
  flex:1 1 auto;
  margin-left:auto;
  display:flex;
  justify-content:flex-end;
}
.ecs-admin-tools{
  width:100%;
  justify-content:flex-end;
  flex-wrap:nowrap;
}
.ecs-admin-tools a,
.ecs-admin-tools button,
.ecs-admin-welcome{
  min-height:48px;
  padding:0 22px;
  border-left:1px solid #d3deef;
  color:#10285f!important;
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
}
.ecs-admin-welcome{border-left:0}
.ecs-admin-welcome strong{font-weight:800}
.ecs-admin-tools .ecs-icon{width:20px;height:20px;color:#14368f}
.ecs-theme-toggle{
  width:50px;
  height:50px;
  margin-left:14px;
  border:1px solid #cfdaea!important;
  border-radius:50%!important;
  box-shadow:0 8px 18px -14px rgba(7,31,92,.45);
}
body.admin-interface div.breadcrumbs{
  width:min(1740px,calc(100% - 96px));
  margin:0 auto 42px;
  color:#14368f;
  font-size:16px;
}
body.admin-interface #content{
  width:min(1740px,calc(100% - 96px));
  margin:0 auto 38px;
}
.ecs-admin-shell{padding:0}
.ecs-admin-hero{margin:0 0 30px}
.ecs-dashboard .ecs-admin-hero h1{
  font-size:56px;
  line-height:1.02;
  margin:0 0 10px;
  color:#071c4d;
  font-weight:800;
}
.ecs-dashboard .ecs-admin-hero p{
  color:#586986;
  font-size:18px;
  line-height:1.4;
}
.ecs-admin-grid{
  grid-template-columns:minmax(0,1fr) 560px;
  gap:34px;
  align-items:start;
}
.ecs-module-stack{gap:12px}
.ecs-module,
.ecs-recent-panel{
  border:1px solid #d8e2f0;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 34px -28px rgba(7,31,92,.48);
}
.ecs-module header,
.ecs-recent-panel header{
  min-height:58px;
  padding:0 18px;
  border-radius:8px 8px 0 0;
  background:linear-gradient(135deg,#071f5c 0%,#08276b 58%,#0c348f 100%);
  gap:14px;
}
.ecs-module header h2,
.ecs-recent-panel header h2{
  font-size:18px;
  font-weight:800;
}
.ecs-module-icon{
  width:34px;
  height:34px;
  color:#14368f;
  background:rgba(255,255,255,.96);
}
.ecs-module-icon .ecs-icon{width:19px;height:19px}
.ecs-module-row{
  min-height:60px;
  padding:0 28px 0 22px;
  border-top:1px solid #d8e2f0;
  background:#fff;
  transition:background-color .16s ease;
}
.ecs-module-row:hover{background:#f7faff}
.ecs-model-title{
  gap:16px;
  color:#071c4d!important;
  font-size:17px;
  font-weight:800;
}
.ecs-row-icon{
  width:34px;
  height:34px;
  border-radius:8px;
  border-color:#d4e1f3;
  color:#7c8eac;
  background:#f8fbff;
}
.ecs-row-icon .ecs-icon{width:18px;height:18px}
.ecs-model-actions{
  gap:34px;
  min-width:210px;
  justify-content:flex-end;
}
.ecs-model-actions a{
  color:#145bd7!important;
  font-size:16px;
  font-weight:700;
}
.ecs-model-actions .ecs-icon{width:18px;height:18px}
.ecs-recent-panel{padding-bottom:16px}
.ecs-recent-controls{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(130px,.85fr) minmax(130px,.85fr);
  gap:10px;
  padding:14px 22px 8px;
  border-bottom:1px solid #d8e2f0;
  background:#fff;
}
.ecs-recent-controls label{
  display:grid;
  gap:5px;
  color:#586986;
  font-size:12px;
  font-weight:800;
}
.ecs-recent-controls input,
.ecs-recent-controls select{
  width:100%;
  min-height:38px;
  border:1px solid #d4e1f3;
  border-radius:8px;
  background:#f8fbff;
  color:#071c4d;
  padding:8px 10px;
  font-size:13px;
}
.ecs-recent-list{
  padding:10px 28px 0;
}
.ecs-recent-list li{
  grid-template-columns:42px minmax(0,1fr) 96px;
  min-height:66px;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid #d8e2f0;
}
.ecs-recent-list li[hidden]{display:none!important}
.ecs-recent-dot{
  width:42px;
  height:42px;
  border-radius:12px;
  background:#f7faff;
}
.ecs-recent-dot .ecs-icon{width:20px;height:20px}
.ecs-recent-add{background:#edf8f0;color:#2aa664;border-color:#d9efdf}
.ecs-recent-user{background:#f3f7ff;color:#326cf6;border-color:#d8e5ff}
.ecs-recent-group{background:#f8f3ff;color:#7e52c6;border-color:#e7d9fb}
.ecs-recent-key{background:#fff7f1;color:#f27021;border-color:#ffe0c7}
.ecs-recent-mail{background:#f4f8ff;color:#2c64d6;border-color:#d9e6ff}
.ecs-recent-list strong{
  color:#071c4d;
  font-size:14px;
  line-height:1.25;
}
.ecs-recent-target{
  color:#586986;
  font-size:14px;
  line-height:1.35;
}
.ecs-recent-meta{
  display:block;
  color:#586986;
  font-size:12px;
  line-height:1.35;
  margin-top:3px;
}
.turnstile-box{
  position:relative;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  height:65px;
  min-height:65px;
  overflow:hidden;
}
.turnstile-box::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:374px;
  max-width:100%;
  height:14px;
  transform:translateX(-50%);
  background:#fff;
  pointer-events:none;
  z-index:2;
}
.turnstile-box .cf-turnstile{
  height:65px;
  overflow:hidden;
}
.turnstile-box iframe{
  display:block;
  max-height:65px;
}
.ecs-recent-list small{
  justify-self:end;
  color:#586986;
  font-size:13px;
  font-weight:600;
}
.ecs-recent-empty{
  min-height:238px;
  margin:16px 28px;
  border:1px solid #dfe8f4;
  border-radius:6px;
  box-shadow:inset 0 0 0 1px rgba(216,226,240,.25);
}
.ecs-recent-empty[hidden]{display:none!important}
.ecs-empty-icon{
  width:96px;
  height:96px;
  color:#8fb3ef;
  background:#f1f5fb;
}
.ecs-empty-panel strong{font-size:16px;color:#273960}
.ecs-empty-panel span{font-size:14px}
@media (max-width:1200px){
  body.admin-interface #header{align-items:flex-start;flex-direction:column}
  body.admin-interface #user-tools{margin-left:0;width:100%}
  .ecs-admin-tools{justify-content:flex-start}
  .ecs-admin-grid{grid-template-columns:1fr}
}
@media (min-width:1400px){
  .login-shell{width:min(1400px,calc(100% - 48px))}
  .login-card{grid-template-columns:1fr 1fr;padding:56px}
  .staff-login-card{width:min(540px,100%)}
}
@media (max-width:1100px){
  .staff-login-layout{grid-template-columns:minmax(320px,44vw) minmax(380px,1fr)}
  .staff-panel h1{font-size:clamp(34px,5vw,56px)}
}
@media (max-width:900px){
  .login-card,.detail-layout,.staff-login-layout{grid-template-columns:1fr}
  .login-card{padding:28px}
  .feature-row,.detail-fields,.milestone-track{grid-template-columns:1fr}
  .staff-login-layout{min-height:auto}
  .staff-panel{border-right:0;border-bottom:1px solid var(--line);align-items:flex-start;padding:28px}
  .staff-panel h1{font-size:clamp(34px,8vw,52px);max-width:16ch}
  .staff-form-wrap{padding:22px;grid-template-rows:auto auto auto}
  .staff-lang-switch{width:100%;text-align:center}
  .footer-band{justify-content:center;text-align:center}
  .shipment-controls{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .topbar,.page-head{flex-direction:column;align-items:flex-start}
  .brand-lockup img{width:150px}
  .login-shell{width:min(100% - 24px,560px);margin:18px auto 42px}
  .login-card{padding:20px;gap:22px}
  h1{font-size:clamp(30px,11vw,42px)}
  .step-labels{font-size:12px}
  .footer-band{font-size:13px}
  .form-row{flex-direction:column;align-items:flex-start}
  .truck-visual{display:none}
  .footer-band{flex-direction:column;text-align:center}
  .shipment-controls{grid-template-columns:1fr}
}

/* Final dashboard fit: wide desktop, stable logo, no navbar overflow. */
body.admin-interface{
  overflow-x:hidden;
  --admin-section:#071f5c;
}
body.admin-interface #container,
body.admin-interface .main,
body.admin-interface .content{
  width:100%;
  max-width:100%;
  overflow-x:visible;
}
body.admin-interface #header{
  width:calc(100% - 28px);
  max-width:1888px;
  min-height:92px;
  margin:14px auto 34px;
  padding:0 28px;
  gap:24px;
  overflow:hidden;
}
body.admin-interface #branding{
  flex:0 1 auto;
  min-width:0;
  max-width:760px;
}
body.admin-interface .admin-brand{
  gap:24px;
  min-width:0;
  max-width:100%;
}
body.admin-interface .admin-brand-logo,
body.admin-interface .admin-brand-logo-img{
  width:190px;
  height:54px;
  padding-right:28px;
  border-right:1px solid #ccd8eb;
  flex:0 0 190px;
  display:block;
}
body.admin-interface .admin-brand-logo{
  background:url("../img/ecs_logo.1eedf76bd726.png") left center/148px auto no-repeat;
}
body.admin-interface .admin-brand-logo-img{
  object-fit:contain;
  object-position:left center;
  background:transparent!important;
}
body.admin-interface .admin-brand-title{
  color:#071c4d;
  font-size:25px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}
body.admin-interface .admin-brand img:not(.admin-brand-logo-img){display:none!important}
body.admin-interface #user-tools{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
}
.ecs-admin-tools{
  min-width:0;
  width:auto;
  max-width:100%;
  flex-wrap:nowrap;
  overflow:hidden;
}
.ecs-admin-tools a,
.ecs-admin-tools button,
.ecs-admin-welcome{
  min-width:0;
  min-height:46px;
  padding:0 16px;
  font-size:14px;
  flex:0 0 auto;
}
.ecs-admin-welcome{
  flex:1 1 360px;
  max-width:470px;
  overflow:hidden;
}
.ecs-admin-welcome strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ecs-admin-tools form{
  flex:0 0 auto;
}
.ecs-theme-toggle{
  display:none!important;
}
body.admin-interface div.breadcrumbs,
body.admin-interface #content{
  width:min(1760px,calc(100% - 140px));
}
.ecs-admin-grid{
  grid-template-columns:minmax(0,1fr) 520px;
  gap:32px;
  overflow:visible;
}
.ecs-recent-panel{width:100%;min-width:0}
.ecs-module-row{
  grid-template-columns:minmax(0,1fr) 230px;
}
.ecs-model-actions{
  min-width:0;
  width:230px;
  gap:30px;
}
@media (max-width:1500px){
  body.admin-interface .admin-brand-title{font-size:22px}
  body.admin-interface .admin-brand-logo,
  body.admin-interface .admin-brand-logo-img{width:170px;flex-basis:170px;padding-right:24px}
  body.admin-interface .admin-brand-logo{background-size:138px auto}
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{padding:0 12px;font-size:13px}
  .ecs-admin-welcome{max-width:390px}
  .ecs-admin-grid{grid-template-columns:minmax(0,1fr) 470px}
}
@media (max-width:1200px){
  body.admin-interface #header{
    min-height:auto;
    padding:18px 22px;
    align-items:flex-start;
    flex-direction:column;
  }
  body.admin-interface #branding,
  body.admin-interface #user-tools{
    width:100%;
    max-width:100%;
  }
  .ecs-admin-tools{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
  .ecs-admin-grid{
    grid-template-columns:1fr;
  }
}

/* Reference color correction: solid dark navy module bars, no blue-to-white fades. */
.ecs-module header,
.ecs-recent-panel header,
body.admin-interface .module h2,
body.admin-interface .inline-group h2,
body.admin-interface.change-form fieldset.module h2{
  background:#071f5c!important;
  background-image:none!important;
}
.ecs-module,
.ecs-recent-panel{
  background:#fff;
}

/* Force the ECS logo into the navbar even when image rendering is cached oddly. */
body.admin-interface .admin-brand::before{
  content:none;
}
body.admin-interface .admin-brand-logo-img{
  display:block!important;
}
@media (max-width:1500px){
  body.admin-interface .admin-brand::before{
    content:none;
  }
}

/* Compact logo-only navbar and responsive dashboard layout. */
body.admin-interface #header{
  min-height:92px;
  padding:0 30px;
  gap:22px;
}
body.admin-interface #branding{
  flex:0 0 250px;
  max-width:250px;
}
body.admin-interface .admin-brand{
  width:250px;
  gap:0;
}
body.admin-interface .admin-brand-logo-img{
  width:220px!important;
  height:58px!important;
  flex:0 0 220px!important;
  padding:0 28px 0 0!important;
  border-right:1px solid #ccd8eb!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
}
body.admin-interface .admin-brand-title{
  display:none!important;
}
body.admin-interface #user-tools{
  flex:1 1 auto;
}
.ecs-admin-tools{
  justify-content:flex-start;
  gap:0;
}
.ecs-admin-welcome{
  flex:1 1 360px;
  max-width:430px;
}
body.admin-interface div.breadcrumbs,
body.admin-interface #content{
  width:min(1760px,calc(100% - 120px));
}
.ecs-admin-grid{
  grid-template-columns:minmax(0,1fr) minmax(430px,520px);
  gap:32px;
}

@media (min-width:1600px){
  body.admin-interface #header{
    width:calc(100% - 28px);
    max-width:1888px;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:min(1760px,calc(100% - 140px));
  }
  .ecs-admin-grid{
    grid-template-columns:minmax(0,1fr) 520px;
  }
}

@media (max-width:1399px){
  body.admin-interface #header{
    min-height:auto;
    padding:18px 24px;
    align-items:flex-start;
    flex-direction:column;
  }
  body.admin-interface #branding{
    flex:0 0 auto;
    max-width:100%;
  }
  body.admin-interface #user-tools{
    width:100%;
  }
  .ecs-admin-tools{
    flex-wrap:wrap;
    justify-content:flex-start;
  }
  .ecs-admin-welcome{
    flex:1 1 100%;
    max-width:100%;
    border-left:0;
    padding-left:0;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 56px);
  }
  .ecs-admin-grid{
    grid-template-columns:minmax(0,1fr) minmax(360px,440px);
    gap:24px;
  }
}

@media (max-width:1024px){
  .ecs-admin-grid{
    grid-template-columns:1fr;
  }
  .ecs-recent-panel{
    order:2;
  }
  .ecs-module-stack{
    order:1;
  }
}

@media (max-width:760px){
  body.admin-interface #header{
    width:calc(100% - 24px);
    margin:12px auto 24px;
    padding:16px;
  }
  body.admin-interface .admin-brand,
  body.admin-interface .admin-brand-logo-img{
    width:180px!important;
    flex-basis:180px!important;
  }
  body.admin-interface .admin-brand-logo-img{
    height:48px!important;
    padding-right:0!important;
    border-right:0!important;
  }
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{
    border-left:0;
    padding:8px 10px 8px 0;
    min-height:36px;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 28px);
  }
  .ecs-dashboard .ecs-admin-hero h1{
    font-size:40px;
  }
  .ecs-dashboard .ecs-admin-hero p{
    font-size:16px;
  }
  .ecs-module-row{
    grid-template-columns:1fr;
    padding:14px 18px;
    gap:12px;
  }
  .ecs-model-actions{
    width:100%;
    justify-content:flex-start;
  }
  .ecs-recent-list li{
    grid-template-columns:42px minmax(0,1fr);
  }
  .ecs-recent-controls{
    grid-template-columns:1fr;
    padding:12px 16px 6px;
  }
  .ecs-recent-list small{
    grid-column:2;
    justify-self:start;
  }
}

.ecs-error-body{
  min-height:100vh;
  margin:0;
  display:grid;
  place-items:center;
  padding:24px;
  background:#eef4fb;
  color:#071c4d;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
}
.ecs-error-shell{
  width:min(760px,100%);
}
.ecs-error-panel{
  min-height:460px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:18px;
  padding:44px;
  border:1px solid #d7e3f3;
  border-radius:8px;
  background:#fff;
  box-shadow:0 18px 52px -34px rgba(13,33,80,.5);
  text-align:center;
}
.ecs-error-logo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:8px;
}
.ecs-error-logo img{
  width:220px;
  height:58px;
  object-fit:contain;
}
.ecs-error-code{
  margin:0;
  color:#c81e2a;
  font-size:14px;
  font-weight:900;
  letter-spacing:0;
}
.ecs-error-panel h1{
  margin:0;
  color:#071c4d;
  font-size:clamp(34px,5vw,46px);
  line-height:1.08;
  font-weight:800;
}
.ecs-error-panel p:not(.ecs-error-code){
  max-width:500px;
  margin:0;
  color:#5b6a85;
  font-size:16px;
  line-height:1.6;
}
.ecs-error-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:8px;
}
.ecs-error-actions a{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
@media (max-width:640px){
  .ecs-error-body{
    padding:14px;
  }
  .ecs-error-panel{
    min-height:calc(100vh - 28px);
    padding:28px 18px;
  }
  .ecs-error-logo img{
    width:190px;
    height:52px;
  }
  .ecs-error-actions{
    width:100%;
  }
  .ecs-error-actions a{
    width:100%;
  }
}

/* Keep the ECS logo visible in the navbar. */
body.admin-interface #branding{
  flex:0 0 250px!important;
  max-width:250px!important;
}
body.admin-interface .admin-brand{
  width:250px!important;
  min-width:250px!important;
  display:flex!important;
  align-items:center!important;
}
body.admin-interface .admin-brand::before{
  content:none!important;
}
body.admin-interface .admin-brand-logo-img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:220px!important;
  height:58px!important;
  flex:0 0 220px!important;
  padding:0 28px 0 0!important;
  border-right:1px solid #ccd8eb!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent url("../img/ecs_logo.1eedf76bd726.png?v=20260611-logo-visible") left center/148px auto no-repeat!important;
}
@media (max-width:760px){
  body.admin-interface #branding,
  body.admin-interface .admin-brand{
    flex-basis:180px!important;
    width:180px!important;
    min-width:180px!important;
  }
  body.admin-interface .admin-brand-logo-img{
    width:180px!important;
    height:48px!important;
    flex-basis:180px!important;
    padding-right:0!important;
    border-right:0!important;
    background-size:150px auto!important;
  }
}

/* Final lock: logo replaces any Django site-header text and dashboard uses full width. */
body.admin-interface #branding{
  flex:0 0 250px!important;
  width:250px!important;
  max-width:250px!important;
  min-height:58px!important;
  display:flex!important;
  align-items:center!important;
  position:relative!important;
  overflow:hidden!important;
}
body.admin-interface #branding::before{
  content:""!important;
  width:220px!important;
  height:58px!important;
  flex:0 0 220px!important;
  display:block!important;
  padding-right:28px!important;
  border-right:1px solid #ccd8eb!important;
  background:url("../img/ecs_logo.1eedf76bd726.png?v=20260611-fullwidth-logo") left center/148px auto no-repeat!important;
}
body.admin-interface #branding > *{
  font-size:0!important;
  color:transparent!important;
}
body.admin-interface #branding .admin-brand,
body.admin-interface #branding .admin-brand-logo-img{
  display:none!important;
}
body.admin-interface #header{
  width:calc(100% - 28px)!important;
  max-width:none!important;
}
body.admin-interface div.breadcrumbs,
body.admin-interface #content{
  width:calc(100% - 120px)!important;
  max-width:none!important;
}
.ecs-admin-grid{
  width:100%!important;
  grid-template-columns:minmax(0,1fr) minmax(520px,38vw)!important;
  gap:40px!important;
}
.ecs-module-stack,
.ecs-recent-panel{
  min-width:0!important;
}
@media (min-width:1700px){
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 160px)!important;
  }
  .ecs-admin-grid{
    grid-template-columns:minmax(0,1fr) minmax(540px,34vw)!important;
  }
}
@media (max-width:1200px){
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 56px)!important;
  }
  .ecs-admin-grid{
    grid-template-columns:1fr!important;
  }
}
@media (max-width:760px){
  body.admin-interface #branding{
    flex-basis:180px!important;
    width:180px!important;
    max-width:180px!important;
  }
  body.admin-interface #branding::before{
    width:180px!important;
    height:48px!important;
    flex-basis:180px!important;
    padding-right:0!important;
    border-right:0!important;
    background-size:150px auto!important;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 28px)!important;
  }
}

/* Admin list and form usability fixes. */
body.admin-interface.change-list #changelist{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,360px)!important;
  gap:22px!important;
  align-items:start!important;
  overflow:visible!important;
  padding:0!important;
}
body.admin-interface.change-list #changelist #toolbar,
body.admin-interface.change-list #changelist .actions,
body.admin-interface.change-list #changelist .xfull,
body.admin-interface.change-list #changelist .results,
body.admin-interface.change-list #changelist .paginator{
  grid-column:1!important;
  min-width:0!important;
  margin:0!important;
}
body.admin-interface.change-list #changelist-filter{
  grid-column:2!important;
  grid-row:1 / span 8!important;
  position:sticky!important;
  top:16px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  border:1px solid var(--admin-line)!important;
  border-radius:8px!important;
  overflow:hidden!important;
  box-shadow:var(--admin-shadow)!important;
}
body.admin-interface.change-list #changelist-filter h2{
  background:#071f5c!important;
  color:#fff!important;
  margin:0!important;
  padding:12px 18px!important;
  font-size:16px!important;
  line-height:1.2!important;
  text-transform:none!important;
}
body.admin-interface.change-list #changelist-filter h3{
  margin:16px 18px 10px!important;
  color:#071c4d!important;
  font-size:14px!important;
  line-height:1.25!important;
  text-transform:none!important;
}
body.admin-interface.change-list #changelist-filter ul{
  padding:0 18px 12px!important;
}
body.admin-interface.change-list #changelist .results{
  overflow-x:auto!important;
  border-top:1px solid var(--admin-line)!important;
}
body.admin-interface.change-list #toolbar #searchbar{
  width:min(620px,100%)!important;
  min-width:min(420px,100%)!important;
}
.ecs-admin-per-page{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-right:16px;
  color:#586986;
  font-weight:800;
}
.ecs-admin-per-page select{
  min-height:34px!important;
  width:auto!important;
  padding:6px 30px 6px 10px!important;
  border-radius:8px!important;
}

body.admin-interface.change-form #content{
  width:min(1500px,calc(100% - 120px))!important;
  max-width:none!important;
}
body.admin-interface.change-form fieldset.module{
  overflow:visible!important;
}
body.admin-interface.change-form fieldset.module .form-row{
  grid-template-columns:minmax(170px,240px) minmax(0,1fr)!important;
  align-items:start!important;
  overflow:visible!important;
  padding:18px 24px!important;
}
body.admin-interface.change-form .form-row > div{
  width:100%!important;
  max-width:980px!important;
}
body.admin-interface.change-form input[type=text],
body.admin-interface.change-form input[type=password],
body.admin-interface.change-form input[type=email],
body.admin-interface.change-form input[type=url],
body.admin-interface.change-form input[type=number],
body.admin-interface.change-form input[type=date],
body.admin-interface.change-form textarea{
  width:min(980px,100%)!important;
  max-width:100%!important;
}
body.admin-interface.change-form select{
  width:min(560px,100%)!important;
  max-width:100%!important;
}
body.admin-interface.change-form textarea{
  min-height:88px!important;
  resize:vertical!important;
}
body.admin-interface.change-form .field-cargo_content textarea,
body.admin-interface.change-form .field-route_text textarea,
body.admin-interface.change-form .field-description textarea,
body.admin-interface.change-form .field-vehicle_text textarea,
body.admin-interface.change-form .field-address textarea,
body.admin-interface.change-form .field-notes textarea{
  min-height:92px!important;
}
body.admin-interface.change-form .related-widget-wrapper{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  width:min(980px,100%)!important;
  max-width:100%!important;
}
body.admin-interface.change-form .related-widget-wrapper select{
  flex:1 1 auto!important;
}

.ecs-recent-controls{
  grid-template-columns:minmax(0,1.25fr) minmax(120px,.8fr) minmax(120px,.8fr) minmax(100px,.65fr)!important;
}
.ecs-recent-pager{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  padding:12px 28px 0;
  color:#586986;
  font-weight:800;
}
.ecs-recent-pager[hidden]{display:none!important}
.ecs-recent-pager button,
.portal-pager a{
  border:1px solid #d4e1f3;
  border-radius:8px;
  background:#fff;
  color:#14368f;
  min-height:34px;
  padding:7px 12px;
  font-weight:800;
}
.ecs-recent-pager button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.shipment-controls{
  grid-template-columns:minmax(220px,1.45fr) repeat(4,minmax(140px,1fr)) auto auto;
}
.portal-pager{
  width:min(1160px,calc(100% - 32px));
  margin:-54px auto 80px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  color:var(--muted);
  font-weight:800;
}
.portal-pager span{
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  padding:8px 12px;
}
@media (max-width:1180px){
  body.admin-interface.change-list #changelist{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #changelist-filter{
    grid-column:1!important;
    grid-row:auto!important;
    position:static!important;
  }
  .shipment-controls{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:760px){
  body.admin-interface.change-form #content{
    width:calc(100% - 28px)!important;
  }
  body.admin-interface.change-form fieldset.module .form-row{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.admin-interface.change-form .form-row label{
    padding-top:0!important;
  }
  .ecs-recent-controls,
  .shipment-controls{
    grid-template-columns:1fr!important;
  }
  .portal-pager{
    margin:0 auto 48px;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}

/* 2026-06 cohesive admin shell, forms and data lists. */
body.admin-interface{
  --admin-shell:1540px;
  --admin-gutter:32px;
  --admin-radius:8px;
  --admin-strong:#071c4d;
  --admin-panel-border:#dbe5f2;
  --admin-chip:#eef4ff;
  overflow-x:hidden!important;
}
body.admin-interface #container,
body.admin-interface .main,
body.admin-interface .content,
body.admin-interface #content-main{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.admin-interface #header,
body.admin-interface div.breadcrumbs,
body.admin-interface #content{
  width:min(var(--admin-shell), calc(100% - (var(--admin-gutter) * 2)))!important;
  max-width:var(--admin-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.admin-interface #header{
  min-height:78px!important;
  margin-top:16px!important;
  margin-bottom:22px!important;
  padding:10px 22px!important;
  border-radius:var(--admin-radius)!important;
  overflow:visible!important;
}
body.admin-interface #branding{
  flex:0 0 224px!important;
  width:224px!important;
  max-width:224px!important;
  min-height:50px!important;
}
body.admin-interface #branding::before{
  width:200px!important;
  height:50px!important;
  flex-basis:200px!important;
  padding-right:22px!important;
  background-size:142px auto!important;
}
.ecs-admin-tools{
  gap:4px!important;
  justify-content:flex-end!important;
}
.ecs-admin-tools a,
.ecs-admin-tools button,
.ecs-admin-welcome{
  min-height:38px!important;
  padding:0 12px!important;
  border-left:1px solid var(--admin-panel-border)!important;
  border-radius:0!important;
  white-space:nowrap!important;
}
.ecs-admin-welcome{
  border-left:0!important;
}
body.admin-interface div.breadcrumbs{
  margin-bottom:14px!important;
}
body.admin-interface #content{
  margin-bottom:34px!important;
}
.ecs-admin-shell{
  width:100%!important;
  padding:0 0 28px!important;
}
.ecs-admin-hero{
  margin:4px 0 18px!important;
}
.ecs-admin-hero h1,
body.admin-interface #content h1,
.ecs-dashboard .ecs-admin-hero h1{
  font-size:clamp(34px,2.45vw,42px)!important;
  line-height:1.12!important;
  font-weight:760!important;
  margin:0 0 8px!important;
}
.ecs-admin-hero p,
.ecs-dashboard .ecs-admin-hero p{
  max-width:760px!important;
  font-size:15px!important;
  line-height:1.55!important;
}
.ecs-admin-grid{
  width:100%!important;
  grid-template-columns:minmax(620px,1fr) minmax(380px,440px)!important;
  gap:22px!important;
  align-items:start!important;
}
.ecs-module-stack{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.ecs-module,
.ecs-recent-panel,
body.admin-interface .module,
body.admin-interface #changelist,
body.admin-interface fieldset.module{
  border-radius:var(--admin-radius)!important;
  border-color:var(--admin-panel-border)!important;
  box-shadow:0 10px 28px -24px rgba(13,33,80,.45)!important;
}
.ecs-module header,
.ecs-recent-panel header,
body.admin-interface .module h2,
body.admin-interface .inline-group h2,
body.admin-interface.change-form fieldset.module h2{
  min-height:48px!important;
  padding:11px 16px!important;
  font-size:15px!important;
  background:#071f5c!important;
}
.ecs-module header h2,
.ecs-recent-panel header h2{
  font-size:16px!important;
  font-weight:760!important;
}
.ecs-module-icon{
  width:30px!important;
  height:30px!important;
  border-radius:8px!important;
}
.ecs-module-row{
  min-height:58px!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  padding:12px 16px!important;
}
.ecs-model-title{
  font-size:15px!important;
  font-weight:760!important;
}
.ecs-model-actions{
  width:auto!important;
  gap:8px!important;
}
.ecs-model-actions a{
  min-height:32px!important;
  padding:0 10px!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#fff!important;
  font-size:13px!important;
}
.ecs-recent-panel{
  align-self:stretch!important;
}
.ecs-recent-controls{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(116px,.52fr)!important;
  gap:12px!important;
  padding:14px 16px!important;
  border-bottom:1px solid var(--admin-panel-border)!important;
}
.ecs-recent-controls label{
  gap:6px!important;
}
.ecs-recent-controls label:first-child{
  grid-column:1 / -1!important;
}
.ecs-recent-controls span{
  font-size:12px!important;
  color:#52627d!important;
}
.ecs-recent-controls input,
.ecs-recent-controls select{
  width:100%!important;
  min-height:38px!important;
  border-radius:6px!important;
  padding:8px 10px!important;
  font-size:13px!important;
}
.ecs-recent-list{
  padding:8px 16px 0!important;
}
.ecs-recent-list li{
  grid-template-columns:34px minmax(0,1fr) 82px!important;
  min-height:60px!important;
  gap:10px!important;
}
.ecs-recent-dot{
  width:34px!important;
  height:34px!important;
  border-radius:8px!important;
}
.ecs-recent-list small{
  font-size:12px!important;
}

body.admin-interface.change-form #content{
  width:min(var(--admin-shell), calc(100% - (var(--admin-gutter) * 2)))!important;
  max-width:var(--admin-shell)!important;
}
body.admin-interface.change-form #content-main form{
  display:grid!important;
  gap:14px!important;
}
body.admin-interface.change-form fieldset.module{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:0!important;
  overflow:hidden!important;
  margin:0!important;
  background:#fff!important;
}
body.admin-interface.change-form fieldset.module + fieldset.module{
  margin-top:14px!important;
}
body.admin-interface.change-form fieldset.module h2{
  grid-column:1 / -1!important;
}
body.admin-interface.change-form fieldset.module .form-row{
  display:grid!important;
  grid-template-columns:1fr!important;
  min-height:auto!important;
  gap:7px!important;
  padding:14px 18px!important;
  border:0!important;
  border-top:1px solid var(--admin-panel-border)!important;
  border-right:1px solid var(--admin-panel-border)!important;
  box-shadow:none!important;
  background:#fff!important;
}
body.admin-interface.change-form fieldset.module .form-row:nth-of-type(2n + 1){
  border-right:0!important;
}
body.admin-interface.change-form .field-tracking_no,
body.admin-interface.change-form .field-customer,
body.admin-interface.change-form .field-cargo_content,
body.admin-interface.change-form .field-route_text,
body.admin-interface.change-form .field-description{
  grid-column:1 / -1!important;
  border-right:0!important;
}
body.admin-interface.change-form .form-row label{
  display:block!important;
  padding:0!important;
  margin:0!important;
  color:var(--admin-strong)!important;
  font-size:13px!important;
  font-weight:760!important;
  line-height:1.3!important;
}
body.admin-interface.change-form .form-row > div,
body.admin-interface.change-form .related-widget-wrapper{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.admin-interface.change-form input[type=text],
body.admin-interface.change-form input[type=password],
body.admin-interface.change-form input[type=email],
body.admin-interface.change-form input[type=url],
body.admin-interface.change-form input[type=number],
body.admin-interface.change-form input[type=date],
body.admin-interface.change-form select,
body.admin-interface.change-form textarea{
  width:100%!important;
  max-width:100%!important;
  min-height:40px!important;
  border-radius:6px!important;
  padding:9px 11px!important;
  font-size:14px!important;
}
body.admin-interface.change-form textarea{
  min-height:84px!important;
}
body.admin-interface.change-form .field-cargo_content textarea,
body.admin-interface.change-form .field-description textarea{
  min-height:96px!important;
}
body.admin-interface.change-form .readonly{
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:8px 10px!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#f8fbff!important;
  color:#52627d!important;
  font-weight:700!important;
}
body.admin-interface.change-form .related-widget-wrapper{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) repeat(4,34px)!important;
  gap:8px!important;
  align-items:center!important;
}
body.admin-interface.change-form .related-widget-wrapper select{
  min-width:0!important;
}
body.admin-interface.change-form .related-widget-wrapper-link{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#fff!important;
}
body.admin-interface.change-form .related-widget-wrapper-link img,
body.admin-interface.change-form .related-widget-wrapper-link svg{
  max-width:18px!important;
  max-height:18px!important;
}
body.admin-interface.change-form .submit-row{
  position:static!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  padding:16px 18px!important;
  border-radius:var(--admin-radius)!important;
  box-shadow:none!important;
  background:#fff!important;
}
body.admin-interface.change-form .submit-row input,
body.admin-interface input[type=submit],
body.admin-interface .submit-row input,
body.admin-interface a.button{
  min-height:38px!important;
  border-radius:6px!important;
  padding:9px 14px!important;
  font-size:13px!important;
  font-weight:760!important;
}
body.admin-interface.change-form .submit-row a.deletelink,
body.admin-interface.change-form .submit-row a.deletelink:link,
body.admin-interface.change-form .submit-row a.deletelink:visited{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:92px!important;
  min-height:38px!important;
  margin:0 0 0 auto!important;
  padding:9px 16px!important;
  border:1px solid #c81e2a!important;
  border-radius:6px!important;
  background:#c81e2a!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body.admin-interface.change-form .submit-row a.deletelink:hover{
  background:#a91520!important;
  border-color:#a91520!important;
}

body.admin-interface.change-list #changelist{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 282px!important;
  gap:18px!important;
  align-items:start!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.admin-interface.change-list #changelist #toolbar,
body.admin-interface.change-list #changelist .actions,
body.admin-interface.change-list #changelist .xfull,
body.admin-interface.change-list #changelist .results,
body.admin-interface.change-list #changelist .paginator{
  grid-column:1!important;
  min-width:0!important;
  margin:0!important;
  border:1px solid var(--admin-panel-border)!important;
  background:#fff!important;
}
body.admin-interface.change-list #toolbar{
  border-radius:var(--admin-radius) var(--admin-radius) 0 0!important;
  padding:16px!important;
}
body.admin-interface.change-list #toolbar form{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
}
body.admin-interface.change-list #toolbar label{
  margin:0!important;
}
body.admin-interface.change-list #toolbar #searchbar{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  border-radius:6px!important;
  padding:0 12px!important;
}
body.admin-interface.change-list #toolbar input[type=submit]{
  min-width:78px!important;
  background:#071f5c!important;
  border-color:#071f5c!important;
  opacity:1!important;
}
body.admin-interface.change-list #changelist .actions{
  border-top:0!important;
  padding:10px 16px!important;
}
body.admin-interface.change-list #changelist .results{
  overflow-x:auto!important;
  max-width:100%!important;
  min-width:0!important;
  contain:inline-size!important;
  border-top:0!important;
  border-radius:0!important;
}
body.admin-interface.change-list #result_list{
  min-width:920px!important;
}
body.admin-interface.change-list thead th{
  padding:13px 14px!important;
  background:#f6f9fe!important;
  color:#31405c!important;
  font-size:12px!important;
  line-height:1.25!important;
  text-transform:none!important;
  white-space:nowrap!important;
}
body.admin-interface.change-list tbody th,
body.admin-interface.change-list tbody td{
  padding:13px 14px!important;
  font-size:13px!important;
  line-height:1.4!important;
  vertical-align:middle!important;
}
body.admin-interface.change-list .action-checkbox-column,
body.admin-interface.change-list .action-checkbox{
  width:40px!important;
  padding-left:14px!important;
  padding-right:8px!important;
}
body.admin-interface.change-list tbody tr:hover{
  background:#f8fbff!important;
}
body.admin-interface.change-list .paginator{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  border-top:0!important;
  border-radius:0 0 var(--admin-radius) var(--admin-radius)!important;
  padding:12px 16px!important;
  font-size:13px!important;
  font-weight:700!important;
}
body.admin-interface.change-list .paginator .this-page,
body.admin-interface.change-list .paginator a{
  min-width:32px!important;
  min-height:32px!important;
  display:inline-grid!important;
  place-items:center!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#fff!important;
}
body.admin-interface.change-list #changelist-filter{
  grid-column:2!important;
  grid-row:1 / span 8!important;
  position:sticky!important;
  top:16px!important;
  width:100%!important;
  min-width:0!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:var(--admin-radius)!important;
  background:#fff!important;
  box-shadow:0 10px 28px -24px rgba(13,33,80,.45)!important;
  overflow:hidden!important;
}
body.admin-interface.change-list #changelist-filter h2{
  margin:0!important;
  padding:13px 16px!important;
  background:#071f5c!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:760!important;
}
body.admin-interface.change-list #changelist-filter h3{
  margin:16px 16px 8px!important;
  color:#31405c!important;
  font-size:13px!important;
  font-weight:760!important;
}
body.admin-interface.change-list #changelist-filter ul{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  padding:0 16px 14px!important;
  margin:0!important;
}
body.admin-interface.change-list #changelist-filter li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.admin-interface.change-list #changelist-filter li a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:30px!important;
  padding:6px 10px!important;
  border:1px solid #d5e2f3!important;
  border-radius:999px!important;
  background:var(--admin-chip)!important;
  color:#173a86!important;
  font-size:12px!important;
  font-weight:760!important;
}
body.admin-interface.change-list #changelist-filter li.selected a{
  background:#eaf8f1!important;
  border-color:#9bd9bb!important;
  color:#0d7047!important;
}
body.admin-interface.change-list .actions .action-counter{
  color:#31405c!important;
  font-weight:760!important;
  opacity:1!important;
}
.ecs-admin-per-page{
  min-height:34px!important;
  padding:0 10px!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#fff!important;
}

@media (min-width:1700px){
  body.admin-interface{
    --admin-shell:1600px;
  }
}
@media (max-width:1280px){
  body.admin-interface{
    --admin-gutter:24px;
  }
  .ecs-admin-grid,
  body.admin-interface.change-list #changelist{
    grid-template-columns:1fr!important;
  }
  .ecs-module-stack{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #changelist-filter{
    grid-column:1!important;
    grid-row:auto!important;
    position:static!important;
  }
}
@media (max-width:760px){
  body.admin-interface{
    --admin-gutter:14px;
  }
  body.admin-interface #header{
    padding:14px!important;
  }
  .ecs-admin-tools{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{
    border-left:0!important;
    padding-left:0!important;
  }
  .ecs-admin-hero h1,
  body.admin-interface #content h1,
  .ecs-dashboard .ecs-admin-hero h1{
    font-size:32px!important;
  }
  body.admin-interface.change-form fieldset.module{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-form fieldset.module .form-row{
    border-right:0!important;
  }
  body.admin-interface.change-form .submit-row{
    justify-content:stretch!important;
    flex-direction:column!important;
  }
  body.admin-interface.change-form .submit-row input{
    width:100%!important;
  }
  body.admin-interface.change-form .submit-row a.deletelink{
    width:100%!important;
    margin:0!important;
  }
  body.admin-interface.change-list #toolbar form,
  .ecs-recent-controls{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #changelist-search > div{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    width:100%!important;
  }
  body.admin-interface.change-list #toolbar input[type=submit]{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  body.admin-interface.change-list #result_list{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    table-layout:fixed!important;
  }
  body.admin-interface.change-list #result_list th,
  body.admin-interface.change-list #result_list td,
  body.admin-interface.change-list #result_list .nowrap{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  body.admin-interface.change-list #changelist .results{
    width:100%!important;
    max-width:100%!important;
  }
}

/* 2026-06 mobile navbar and changelist control hardening. */
body.admin-interface #header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:92px!important;
  height:auto!important;
  overflow:visible!important;
}
body.admin-interface #branding{
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  min-height:58px!important;
  height:58px!important;
  overflow:visible!important;
  position:static!important;
}
body.admin-interface #branding::before{
  content:none!important;
  display:none!important;
}
body.admin-interface #branding > *{
  font-size:inherit!important;
  color:inherit!important;
}
body.admin-interface #branding .admin-brand{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  height:auto!important;
}
body.admin-interface #branding .admin-brand-logo-img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:220px!important;
  height:58px!important;
  flex:0 0 auto!important;
  padding:0!important;
  border:0!important;
  object-fit:contain!important;
  object-position:left center!important;
  background:transparent!important;
}
body.admin-interface #user-tools{
  flex:1 1 auto!important;
  min-width:0!important;
  margin-left:auto!important;
  overflow:visible!important;
}
.ecs-admin-tools{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
}
.ecs-admin-tools a,
.ecs-admin-tools button,
.ecs-admin-welcome{
  min-width:0!important;
  max-width:100%!important;
  min-height:36px!important;
  padding:0 10px!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:6px!important;
  background:#fff!important;
  white-space:normal!important;
}
.ecs-admin-welcome{
  color:var(--admin-strong)!important;
  flex:0 1 auto!important;
}
.ecs-admin-welcome strong{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

body.admin-interface.change-list #toolbar label{
  display:none!important;
}
body.admin-interface.change-list #changelist-search,
body.admin-interface.change-list #changelist-search > div{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
body.admin-interface.change-list #changelist-search > div{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
}
body.admin-interface.change-list #toolbar #searchbar{
  grid-column:auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
}
body.admin-interface.change-list #toolbar input[type=submit]{
  width:auto!important;
  max-width:100%!important;
  min-width:82px!important;
  margin:0!important;
}
body.admin-interface.change-list #changelist .actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
body.admin-interface.change-list #changelist .actions label,
body.admin-interface.change-list #changelist .actions select,
body.admin-interface.change-list #changelist .actions button,
body.admin-interface.change-list #changelist .actions .button{
  max-width:100%!important;
}
body.admin-interface.change-list #changelist .actions select{
  min-width:220px!important;
}
body.admin-interface.change-list #changelist .actions .action-counter{
  margin:0!important;
  white-space:nowrap!important;
}
body.admin-interface.change-list #changelist-filter,
body.admin-interface.change-list #changelist-filter *{
  overflow-wrap:anywhere!important;
}

@media (max-width:760px){
  body.admin-interface #header{
    align-items:stretch!important;
    justify-content:flex-start!important;
    flex-direction:column!important;
    gap:12px!important;
    min-height:92px!important;
    height:auto!important;
    padding:14px!important;
    margin-bottom:18px!important;
  }
  body.admin-interface #branding,
  body.admin-interface #user-tools{
    width:100%!important;
    flex:0 1 auto!important;
    max-width:100%!important;
    margin:0!important;
  }
  body.admin-interface #branding{
    height:58px!important;
    min-height:58px!important;
  }
  body.admin-interface #branding .admin-brand{
    width:100%!important;
    justify-content:center!important;
    flex:0 0 auto!important;
  }
  body.admin-interface #branding .admin-brand-logo-img{
    width:220px!important;
    height:58px!important;
    object-position:center center!important;
  }
  .ecs-admin-tools{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
  }
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{
    width:100%!important;
    justify-content:center!important;
    padding:8px 10px!important;
    text-align:center!important;
  }
  .ecs-admin-welcome strong{
    white-space:normal!important;
  }
  body.admin-interface div.breadcrumbs{
    display:block!important;
    overflow-wrap:anywhere!important;
  }
  body.admin-interface.change-list #toolbar{
    padding:14px!important;
  }
  body.admin-interface.change-list #changelist-search > div,
  body.admin-interface.change-list #toolbar form{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body.admin-interface.change-list #toolbar input[type=submit]{
    width:100%!important;
    min-width:0!important;
  }
  body.admin-interface.change-list #changelist .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  body.admin-interface.change-list #changelist .actions label,
  body.admin-interface.change-list #changelist .actions select,
  body.admin-interface.change-list #changelist .actions button,
  body.admin-interface.change-list #changelist .actions .button,
  body.admin-interface.change-list #changelist .actions .action-counter{
    width:100%!important;
    min-width:0!important;
  }
  body.admin-interface.change-list #changelist-filter ul{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  body.admin-interface.change-list #changelist-filter li a{
    width:100%!important;
    justify-content:center!important;
    text-align:center!important;
  }
}

/* 2026-06-11 portal carousel and admin control fixes. */
.shipment-carousel{
  width:min(1160px,calc(100% - 32px));
  margin:0 auto 80px;
  position:relative;
}
.shipment-carousel-controls{
  min-height:42px;
  display:none;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0 0 12px;
}
.shipment-carousel .shipment-grid{
  width:100%;
  margin:0;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 36px) / 3);
  grid-template-columns:none;
  gap:18px;
  overflow:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:0;
  border-radius:16px;
  clip-path:inset(0 round 16px);
}
.shipment-carousel .shipment-grid::-webkit-scrollbar{
  display:none;
}
.shipment-carousel .shipment-card{
  min-width:0;
  min-height:350px;
  scroll-snap-align:start;
}
.shipment-card h2,
.shipment-card p,
.tracking{
  overflow-wrap:anywhere;
}
.shipment-carousel-btn{
  position:static;
  width:46px;
  height:40px;
  display:none;
  place-items:center;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--brand);
  box-shadow:0 12px 28px -24px rgba(13,33,80,.65);
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.shipment-carousel.is-scrollable .shipment-carousel-controls{
  display:flex;
}
.shipment-carousel.is-scrollable .shipment-carousel-controls .shipment-carousel-btn{
  display:grid;
}
.shipment-carousel-btn:hover:not(:disabled){
  background:var(--brand);
  border-color:var(--brand);
  color:#fff;
  transform:translateY(-1px);
}
.shipment-carousel-btn svg{
  width:22px;
  height:22px;
  stroke:currentColor;
  stroke-width:2.4;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.shipment-carousel-btn:disabled{
  opacity:.36;
  cursor:not-allowed;
}

body.admin-interface.change-form .calendarbox,
body.admin-interface.change-form .clockbox{
  width:320px!important;
  max-width:calc(100vw - 32px)!important;
  overflow:visible!important;
  z-index:10000!important;
  border:1px solid var(--admin-panel-border)!important;
  border-radius:8px!important;
  box-shadow:0 18px 42px -26px rgba(13,33,80,.7)!important;
}
body.admin-interface.change-form .calendarbox.module,
body.admin-interface.change-form .clockbox.module{
  overflow:visible!important;
}
body.admin-interface.change-form .calendarbox h2,
body.admin-interface.change-form .clockbox h2{
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 42px!important;
  border-radius:8px 8px 0 0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  font-size:13px!important;
  line-height:1.2!important;
}
body.admin-interface.change-form .calendarbox table{
  width:100%!important;
  table-layout:fixed!important;
}
body.admin-interface.change-form .calendarbox th,
body.admin-interface.change-form .calendarbox td{
  width:14.285%!important;
  min-width:0!important;
  padding:0!important;
  text-align:center!important;
}
body.admin-interface.change-form .calendarbox .calendarnav-previous,
body.admin-interface.change-form .calendarbox .calendarnav-next{
  top:9px!important;
}

body.admin-interface.change-form .object-tools{
  width:100%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  float:none!important;
  margin:0 0 14px!important;
  padding:0!important;
}
body.admin-interface.change-form .object-tools li{
  list-style:none!important;
  margin:0!important;
}
body.admin-interface.change-form .object-tools a,
body.admin-interface.change-form .object-tools a:link,
body.admin-interface.change-form .object-tools a:visited{
  min-width:112px!important;
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 16px!important;
  border-radius:6px!important;
  white-space:nowrap!important;
}
body.admin-interface.change-form .submit-row{
  flex-wrap:wrap!important;
  align-items:center!important;
}
body.admin-interface.change-form .submit-row a.closelink,
body.admin-interface.change-form .submit-row a.closelink:link,
body.admin-interface.change-form .submit-row a.closelink:visited,
body.admin-interface.change-form .submit-row a.cancel-link,
body.admin-interface.change-form .submit-row a.cancel-link:link,
body.admin-interface.change-form .submit-row a.cancel-link:visited{
  min-width:92px!important;
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:9px 16px!important;
  border:1px solid #6d7788!important;
  border-radius:6px!important;
  background:#6d7788!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
body.admin-interface.change-form .submit-row a.closelink:hover,
body.admin-interface.change-form .submit-row a.cancel-link:hover{
  background:#586273!important;
  border-color:#586273!important;
}
.ecs-password-mask{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  margin-right:10px;
  padding:8px 12px;
  border:1px solid var(--admin-panel-border);
  border-radius:6px;
  background:#f8fbff;
  color:#52627d;
  font-weight:900;
  letter-spacing:2px;
}
body.admin-interface.change-form a.ecs-password-reset,
body.admin-interface.change-form a.ecs-password-reset:link,
body.admin-interface.change-form a.ecs-password-reset:visited{
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 14px!important;
  border-radius:6px!important;
  background:#071f5c!important;
  border-color:#071f5c!important;
  color:#fff!important;
  font-weight:800!important;
  text-decoration:none!important;
}

@media (max-width:980px){
  .shipment-carousel .shipment-grid{
    grid-auto-columns:calc((100% - 18px) / 2);
  }
}
@media (max-width:640px){
  .shipment-carousel{
    width:min(100% - 28px,1160px);
    margin-bottom:48px;
  }
  .shipment-carousel .shipment-grid{
    grid-auto-columns:100%;
  }
  .shipment-carousel-controls{
    justify-content:center;
  }
}

/* 2026-06-12 admin mobile and tablet responsive reset. */
@media (max-width:1024px){
  body.admin-interface{
    --admin-gutter:18px!important;
    overflow-x:hidden!important;
  }
  body.admin-interface #container,
  body.admin-interface .main,
  body.admin-interface .content,
  body.admin-interface #content-main{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.admin-interface #header{
    width:calc(100% - 28px)!important;
    min-height:0!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    align-items:stretch!important;
    margin:14px auto 16px!important;
    padding:14px!important;
    border-radius:10px!important;
    overflow:visible!important;
  }
  body.admin-interface #branding{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-width:100%!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 1 auto!important;
    margin:0!important;
    padding:0 0 12px!important;
    border-bottom:1px solid var(--admin-panel-border)!important;
  }
  body.admin-interface #branding::before{
    content:none!important;
    display:none!important;
  }
  body.admin-interface #branding .admin-brand{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
    padding:0!important;
  }
  body.admin-interface #branding .admin-brand-logo-img{
    width:min(220px,70vw)!important;
    height:58px!important;
    max-width:100%!important;
    display:block!important;
    object-fit:contain!important;
    object-position:center center!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
  }
  body.admin-interface #user-tools{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
    overflow:visible!important;
  }
  .ecs-admin-tools{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    overflow:visible!important;
  }
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    margin:0!important;
    padding:8px 10px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:8px!important;
    background:#fff!important;
    color:var(--admin-link)!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.2!important;
    overflow:hidden!important;
  }
  .ecs-admin-welcome{
    grid-column:1 / -1!important;
    color:var(--admin-strong)!important;
  }
  .ecs-admin-welcome strong,
  .ecs-admin-tools span{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .ecs-admin-tools form{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:0!important;
  }
  body.admin-interface div.breadcrumbs{
    margin-bottom:12px!important;
    font-size:13px!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
  }
  .ecs-admin-shell{
    padding:0 0 24px!important;
  }
  .ecs-admin-hero{
    display:block!important;
    margin:4px 0 18px!important;
  }
  .ecs-admin-hero h1,
  body.admin-interface #content h1,
  .ecs-dashboard .ecs-admin-hero h1{
    margin:0 0 8px!important;
    font-size:clamp(30px,8vw,42px)!important;
    line-height:1.06!important;
  }
  .ecs-admin-hero p,
  .ecs-dashboard .ecs-admin-hero p{
    max-width:62ch!important;
    margin:0!important;
    font-size:16px!important;
    line-height:1.55!important;
  }
  .ecs-admin-grid{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .ecs-module-stack{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .ecs-module,
  .ecs-recent-panel,
  body.admin-interface .module,
  body.admin-interface #changelist,
  body.admin-interface fieldset.module{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  .ecs-module-row{
    min-width:0!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:12px!important;
    padding:14px 16px!important;
  }
  .ecs-model-title{
    min-width:0!important;
    overflow:hidden!important;
  }
  .ecs-model-title span:last-child{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .ecs-model-actions{
    gap:8px!important;
    flex:0 0 auto!important;
  }
  .ecs-model-actions a{
    min-height:40px!important;
    padding:0 10px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:8px!important;
    background:#fff!important;
  }
  .ecs-recent-controls{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    padding:14px!important;
  }
  .ecs-recent-controls label:first-child{
    grid-column:1 / -1!important;
  }
  .ecs-recent-list{
    padding:8px 14px!important;
  }
  .ecs-recent-list li{
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:10px!important;
  }
  .ecs-recent-list small{
    grid-column:2!important;
    justify-self:start!important;
    white-space:normal!important;
  }

  body.admin-interface.change-list #changelist{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    overflow:visible!important;
  }
  body.admin-interface.change-list #changelist #toolbar,
  body.admin-interface.change-list #changelist .actions,
  body.admin-interface.change-list #changelist .xfull,
  body.admin-interface.change-list #changelist .results,
  body.admin-interface.change-list #changelist .paginator,
  body.admin-interface.change-list #changelist-filter{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    position:static!important;
  }
  body.admin-interface.change-list #toolbar form,
  body.admin-interface.change-list #changelist-search > div{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  body.admin-interface.change-list #toolbar #searchbar{
    width:100%!important;
    min-width:0!important;
  }
  body.admin-interface.change-list #changelist .results{
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.admin-interface.change-list #result_list{
    min-width:760px!important;
  }
  body.admin-interface.change-list #changelist-filter ul{
    display:flex!important;
    flex-wrap:wrap!important;
  }

  body.admin-interface.change-form #content{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
  }
  body.admin-interface.change-form #content-main form{
    display:grid!important;
    gap:12px!important;
  }
  body.admin-interface.change-form fieldset.module{
    display:grid!important;
    grid-template-columns:1fr!important;
    overflow:hidden!important;
  }
  body.admin-interface.change-form fieldset.module .form-row{
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:14px!important;
    border-right:0!important;
  }
  body.admin-interface.change-form .form-row > div,
  body.admin-interface.change-form .related-widget-wrapper{
    width:100%!important;
    max-width:100%!important;
  }
  body.admin-interface.change-form input[type=text],
  body.admin-interface.change-form input[type=password],
  body.admin-interface.change-form input[type=email],
  body.admin-interface.change-form input[type=url],
  body.admin-interface.change-form input[type=number],
  body.admin-interface.change-form input[type=date],
  body.admin-interface.change-form select,
  body.admin-interface.change-form textarea{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

@media (max-width:560px){
  body.admin-interface{
    --admin-gutter:12px!important;
  }
  body.admin-interface #header,
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content,
  body.admin-interface.change-form #content{
    width:calc(100% - 20px)!important;
  }
  body.admin-interface #header{
    margin-top:10px!important;
    padding:12px!important;
  }
  body.admin-interface #branding{
    padding-bottom:10px!important;
  }
  body.admin-interface #branding .admin-brand-logo-img{
    width:min(190px,76vw)!important;
    height:50px!important;
  }
  .ecs-admin-tools{
    grid-template-columns:1fr!important;
  }
  .ecs-admin-tools a,
  .ecs-admin-tools button,
  .ecs-admin-welcome{
    min-height:42px!important;
    justify-content:center!important;
    font-size:13px!important;
  }
  .ecs-admin-hero h1,
  body.admin-interface #content h1,
  .ecs-dashboard .ecs-admin-hero h1{
    font-size:34px!important;
  }
  .ecs-admin-hero p,
  .ecs-dashboard .ecs-admin-hero p{
    font-size:15px!important;
  }
  .ecs-module header,
  .ecs-recent-panel header,
  body.admin-interface .module h2,
  body.admin-interface .inline-group h2,
  body.admin-interface.change-form fieldset.module h2{
    padding:12px 14px!important;
  }
  .ecs-module-row{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  .ecs-model-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .ecs-model-actions a{
    justify-content:center!important;
  }
  .ecs-recent-controls{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #toolbar form,
  body.admin-interface.change-list #changelist-search > div,
  body.admin-interface.change-list #changelist .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #toolbar input[type=submit],
  body.admin-interface.change-list #changelist .actions select,
  body.admin-interface.change-list #changelist .actions button,
  body.admin-interface.change-list #changelist .actions .button{
    width:100%!important;
    min-width:0!important;
  }
  body.admin-interface.change-list #result_list{
    min-width:680px!important;
  }
  body.admin-interface.change-form .submit-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.admin-interface.change-form .submit-row input,
  body.admin-interface.change-form .submit-row a.deletelink,
  body.admin-interface.change-form .submit-row a.closelink,
  body.admin-interface.change-form .submit-row a.cancel-link{
    width:100%!important;
    margin:0!important;
  }
}

/* 2026-06-12 final admin mobile header: compact logo + controlled menu. */
.ecs-admin-tool-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.ecs-admin-mobile-menu{
  display:none;
}

@media (max-width:1024px){
  body.admin-interface #header{
    position:relative!important;
    width:calc(100% - 24px)!important;
    min-height:64px!important;
    height:auto!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin:10px auto 14px!important;
    padding:10px 12px!important;
    overflow:visible!important;
  }
  body.admin-interface #branding{
    width:auto!important;
    max-width:52%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    flex:0 1 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    position:static!important;
  }
  body.admin-interface #branding .admin-brand{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
  }
  body.admin-interface #branding .admin-brand-logo-img{
    width:150px!important;
    max-width:100%!important;
    height:42px!important;
    display:block!important;
    object-fit:contain!important;
    object-position:left center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    position:static!important;
    transform:none!important;
  }
  body.admin-interface #user-tools{
    width:auto!important;
    min-width:0!important;
    max-width:48%!important;
    flex:0 0 auto!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    position:static!important;
  }
  .ecs-admin-tools{
    width:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:0!important;
    overflow:visible!important;
  }
  .ecs-admin-desktop-welcome,
  .ecs-admin-tool-links{
    display:none!important;
  }
  .ecs-admin-mobile-menu{
    display:block!important;
    position:relative!important;
    width:auto!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .ecs-admin-mobile-menu summary{
    min-width:92px!important;
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    padding:0 12px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:8px!important;
    background:#fff!important;
    color:var(--admin-link)!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:1!important;
    list-style:none!important;
    cursor:pointer!important;
    white-space:nowrap!important;
  }
  .ecs-admin-mobile-menu summary::-webkit-details-marker{
    display:none!important;
  }
  .ecs-admin-mobile-menu summary .ecs-icon{
    width:18px!important;
    height:18px!important;
    flex:0 0 auto!important;
  }
  .ecs-admin-mobile-panel{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    right:0!important;
    width:min(320px,calc(100vw - 24px))!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:10px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:0 18px 42px -26px rgba(13,33,80,.7)!important;
    z-index:50!important;
  }
  .ecs-admin-mobile-user{
    min-width:0!important;
    display:grid!important;
    gap:2px!important;
    padding:10px 12px!important;
    border:1px solid #edf2fb!important;
    border-radius:8px!important;
    background:#f8fbff!important;
    color:var(--admin-strong)!important;
  }
  .ecs-admin-mobile-user span{
    color:#52627d!important;
    font-size:12px!important;
    font-weight:800!important;
  }
  .ecs-admin-mobile-user strong{
    min-width:0!important;
    display:block!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:14px!important;
  }
  .ecs-admin-mobile-panel a,
  .ecs-admin-mobile-panel button{
    width:100%!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    margin:0!important;
    padding:0 12px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:8px!important;
    background:#fff!important;
    color:var(--admin-link)!important;
    font-size:14px!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:left!important;
    text-decoration:none!important;
    white-space:nowrap!important;
  }
  .ecs-admin-mobile-panel form{
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .ecs-admin-mobile-panel .ecs-icon{
    width:18px!important;
    height:18px!important;
    flex:0 0 auto!important;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content{
    width:calc(100% - 24px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.admin-interface div.breadcrumbs{
    clear:both!important;
    margin-top:0!important;
  }
}

@media (max-width:560px){
  body.admin-interface #header{
    width:calc(100% - 16px)!important;
    min-height:58px!important;
    margin:8px auto 12px!important;
    padding:8px 10px!important;
  }
  body.admin-interface #branding{
    max-width:58%!important;
  }
  body.admin-interface #branding .admin-brand-logo-img{
    width:124px!important;
    height:38px!important;
  }
  body.admin-interface #user-tools{
    max-width:42%!important;
  }
  .ecs-admin-mobile-menu summary{
    min-width:82px!important;
    min-height:38px!important;
    padding:0 10px!important;
    font-size:13px!important;
  }
  .ecs-admin-mobile-panel{
    width:calc(100vw - 16px)!important;
    right:-10px!important;
  }
  body.admin-interface div.breadcrumbs,
  body.admin-interface #content,
  body.admin-interface.change-form #content{
    width:calc(100% - 16px)!important;
  }
}

/* 2026-06-12 admin changelist mobile: keep tables scrollable, not squeezed. */
@media (max-width:1024px){
  body.admin-interface.change-list #content{
    display:block!important;
    overflow:visible!important;
  }
  body.admin-interface.change-list #content h1{
    max-width:100%!important;
    margin:0 0 14px!important;
    font-size:clamp(30px,6.2vw,34px)!important;
    line-height:1.12!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.admin-interface.change-list .object-tools{
    width:100%!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    float:none!important;
    clear:both!important;
    margin:0 0 14px!important;
    padding:0!important;
  }
  body.admin-interface.change-list .object-tools li{
    width:auto!important;
    margin:0!important;
    list-style:none!important;
  }
  body.admin-interface.change-list .object-tools a,
  body.admin-interface.change-list .object-tools a:link,
  body.admin-interface.change-list .object-tools a:visited{
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 18px!important;
    border-radius:8px!important;
    white-space:nowrap!important;
  }
  body.admin-interface.change-list #changelist{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.admin-interface.change-list #changelist #toolbar{
    order:1!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:14px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  body.admin-interface.change-list #toolbar form,
  body.admin-interface.change-list #changelist-search > div{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(96px,auto)!important;
    gap:10px!important;
    align-items:center!important;
  }
  body.admin-interface.change-list #toolbar label{
    display:none!important;
  }
  body.admin-interface.change-list #toolbar #searchbar{
    width:100%!important;
    min-width:0!important;
    height:44px!important;
    margin:0!important;
  }
  body.admin-interface.change-list #toolbar input[type=submit]{
    width:auto!important;
    min-width:96px!important;
    min-height:44px!important;
    margin:0!important;
  }
  body.admin-interface.change-list #changelist .actions{
    order:2!important;
    width:100%!important;
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    margin:0!important;
    padding:14px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
  }
  body.admin-interface.change-list #changelist .xfull{
    order:3!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.admin-interface.change-list #changelist .results{
    order:4!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
  }
  body.admin-interface.change-list #result_list{
    width:100%!important;
    min-width:1080px!important;
    table-layout:auto!important;
    border-collapse:separate!important;
  }
  body.admin-interface.change-list #result_list th,
  body.admin-interface.change-list #result_list td,
  body.admin-interface.change-list #result_list .nowrap{
    white-space:nowrap!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.admin-interface.change-list #result_list th,
  body.admin-interface.change-list #result_list td{
    padding:14px 16px!important;
  }
  body.admin-interface.change-list #result_list .action-checkbox-column,
  body.admin-interface.change-list #result_list .action-checkbox{
    width:52px!important;
    min-width:52px!important;
  }
  body.admin-interface.change-list .paginator{
    order:5!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    margin:0!important;
    padding:12px 14px!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
    white-space:nowrap!important;
  }
  body.admin-interface.change-list .paginator > *{
    flex:0 0 auto!important;
  }
  body.admin-interface.change-list .paginator .this-page,
  body.admin-interface.change-list .paginator a{
    min-width:40px!important;
    min-height:40px!important;
  }
  body.admin-interface.change-list #changelist-filter{
    order:6!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    position:static!important;
    border:1px solid var(--admin-panel-border)!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  body.admin-interface.change-list #changelist-filter h2{
    margin:0!important;
    padding:14px 16px!important;
    background:#071f5c!important;
    color:#fff!important;
    font-size:18px!important;
    line-height:1.2!important;
  }
  body.admin-interface.change-list #changelist-filter h3{
    margin:16px 16px 8px!important;
    font-size:14px!important;
  }
  body.admin-interface.change-list #changelist-filter ul{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    padding:0 16px 14px!important;
    margin:0!important;
  }
}

@media (max-width:560px){
  body.admin-interface.change-list #content h1{
    font-size:31px!important;
    line-height:1.12!important;
  }
  body.admin-interface.change-list .object-tools{
    justify-content:stretch!important;
  }
  body.admin-interface.change-list .object-tools li,
  body.admin-interface.change-list .object-tools a,
  body.admin-interface.change-list .object-tools a:link,
  body.admin-interface.change-list .object-tools a:visited{
    width:100%!important;
  }
  body.admin-interface.change-list #toolbar form,
  body.admin-interface.change-list #changelist-search > div{
    grid-template-columns:1fr!important;
  }
  body.admin-interface.change-list #toolbar input[type=submit]{
    width:100%!important;
  }
  body.admin-interface.change-list #result_list{
    min-width:1040px!important;
  }
  body.admin-interface.change-list #changelist .actions label,
  body.admin-interface.change-list #changelist .actions select,
  body.admin-interface.change-list #changelist .actions button,
  body.admin-interface.change-list #changelist .actions .button{
    width:100%!important;
    min-width:0!important;
  }
}

/* 2026-06-12 admin changelist object tools: keep add actions in the page header, not near filters. */
body.admin-interface.change-list .ecs-changelist-heading{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:16px!important;
  align-items:start!important;
  margin:0 0 18px!important;
  clear:both!important;
}
body.admin-interface.change-list .ecs-changelist-heading h1{
  min-width:0!important;
  margin:0!important;
}
body.admin-interface.change-list .ecs-changelist-heading .object-tools,
body.admin-interface.change-list .object-tools{
  float:none!important;
  position:static!important;
  inset:auto!important;
  clear:both!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:12px!important;
  list-style:none!important;
  z-index:5!important;
}
body.admin-interface.change-list .object-tools li{
  width:auto!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body.admin-interface.change-list .object-tools a,
body.admin-interface.change-list .object-tools a:link,
body.admin-interface.change-list .object-tools a:visited,
body.admin-interface.change-list .object-tools button{
  min-height:46px!important;
  padding:0 22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:10px!important;
  border:1px solid #08245c!important;
  background:#08245c!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
  box-shadow:0 8px 18px rgba(8,36,92,.16)!important;
}
body.admin-interface.change-list .object-tools a:hover,
body.admin-interface.change-list .object-tools button:hover{
  background:#0b2f78!important;
  border-color:#0b2f78!important;
  color:#fff!important;
}
body.admin-interface.change-list #changelist-filter{
  margin-top:0!important;
}

body.admin-interface.change-form .object-tools{
  float:none!important;
  position:static!important;
  inset:auto!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  margin:10px 0 18px!important;
  padding:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:12px!important;
  list-style:none!important;
  z-index:5!important;
}
body.admin-interface.change-form .object-tools li{
  width:auto!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body.admin-interface.change-form .object-tools a,
body.admin-interface.change-form .object-tools a:link,
body.admin-interface.change-form .object-tools a:visited,
body.admin-interface.change-form .object-tools button{
  min-width:112px!important;
  min-height:46px!important;
  padding:0 22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:10px!important;
  border:1px solid #08245c!important;
  background:#08245c!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.1!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:none!important;
  white-space:nowrap!important;
  box-shadow:0 8px 18px rgba(8,36,92,.16)!important;
}
body.admin-interface.change-form .object-tools a:hover,
body.admin-interface.change-form .object-tools button:hover{
  background:#0b2f78!important;
  border-color:#0b2f78!important;
  color:#fff!important;
}
body.admin-interface.change-form #content-main form{
  clear:both!important;
}

@media (max-width:768px){
  body.admin-interface.change-list .ecs-changelist-heading{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    margin:0 0 16px!important;
  }
  body.admin-interface.change-list .ecs-changelist-heading .object-tools,
  body.admin-interface.change-list .object-tools{
    width:100%!important;
    justify-content:stretch!important;
    align-items:stretch!important;
  }
  body.admin-interface.change-list .object-tools li,
  body.admin-interface.change-list .object-tools a,
  body.admin-interface.change-list .object-tools a:link,
  body.admin-interface.change-list .object-tools a:visited,
  body.admin-interface.change-list .object-tools button{
    width:100%!important;
  }
  body.admin-interface.change-list .object-tools a,
  body.admin-interface.change-list .object-tools a:link,
  body.admin-interface.change-list .object-tools a:visited,
  body.admin-interface.change-list .object-tools button{
    min-height:48px!important;
    border-radius:12px!important;
  }
  body.admin-interface.change-form .object-tools{
    width:100%!important;
    justify-content:stretch!important;
    align-items:stretch!important;
  }
  body.admin-interface.change-form .object-tools li,
  body.admin-interface.change-form .object-tools a,
  body.admin-interface.change-form .object-tools a:link,
  body.admin-interface.change-form .object-tools a:visited,
  body.admin-interface.change-form .object-tools button{
    width:100%!important;
  }
  body.admin-interface.change-form .object-tools a,
  body.admin-interface.change-form .object-tools a:link,
  body.admin-interface.change-form .object-tools a:visited,
  body.admin-interface.change-form .object-tools button{
    min-height:48px!important;
    border-radius:12px!important;
  }
}

/* 2026-06-12 portal mobile and tablet responsive polish. */
.shipment-controls{
  grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(150px,1fr)) auto auto;
}
.shipment-carousel-meta{
  min-height:28px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin:0 0 8px;
  color:var(--muted);
  font-size:14px;
  font-weight:800;
}
.shipment-carousel-loading{
  margin:10px 0 0;
  color:var(--muted);
  font-size:13px;
  font-weight:800;
  text-align:right;
}
@media (max-width:1024px){
  .ecs-body{
    overflow-x:hidden;
  }
  .map-pattern{
    background-size:1200px auto;
    background-position:center 160px;
    opacity:.12;
  }
  .topbar{
    width:calc(100% - 28px);
    min-height:70px;
    margin:14px auto 18px;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
  }
  .brand-lockup{
    flex:0 1 auto;
    min-width:0;
  }
  .brand-lockup img{
    width:150px;
    max-width:42vw;
  }
  .lang-switch{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    max-width:54vw;
    padding:9px 12px;
    border-radius:8px;
    font-size:14px;
    line-height:1.2;
    text-align:center;
    white-space:normal;
  }
  .page-head{
    width:calc(100% - 28px);
    margin:10px auto 16px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:12px;
  }
  .page-head > div{
    min-width:0;
  }
  .page-head h1{
    max-width:100%;
    font-size:clamp(30px,6vw,40px);
    line-height:1.08;
    overflow-wrap:anywhere;
  }
  .page-head .ghost-btn,
  .page-head form .ghost-btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    white-space:nowrap;
    border-radius:8px;
  }
  .shipment-controls{
    width:calc(100% - 28px);
    margin:0 auto 16px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-items:end;
    padding:14px;
    border-radius:10px;
  }
  .shipment-controls label{
    min-width:0;
  }
  .shipment-controls label:first-child{
    grid-column:1 / -1;
  }
  .shipment-controls input,
  .shipment-controls select{
    width:100%;
    min-width:0;
    min-height:44px;
  }
  .shipment-controls .primary-btn,
  .shipment-controls .text-btn{
    min-height:44px;
    width:100%;
    padding:0 14px;
  }
  .shipment-carousel{
    width:calc(100% - 28px);
    margin:0 auto 64px;
  }
  .shipment-carousel-meta{
    margin-bottom:10px;
  }
  .shipment-carousel-controls{
    min-height:42px;
    margin:0 0 10px;
    justify-content:flex-end;
  }
  .shipment-carousel .shipment-grid{
    grid-auto-columns:calc((100% - 18px) / 2);
    gap:18px;
    border-radius:12px;
    clip-path:inset(0 round 12px);
  }
  .shipment-carousel .shipment-card{
    min-height:330px;
    padding:20px;
    border-radius:12px;
  }
  .shipment-card-head{
    align-items:flex-start;
  }
  .shipment-card h2{
    font-size:26px;
    line-height:1.15;
  }
  .portal-pager{
    width:calc(100% - 28px);
    margin:-44px auto 56px;
    display:flex;
    justify-content:flex-end;
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    white-space:nowrap;
  }
  .portal-pager > *{
    flex:0 0 auto;
  }
  .detail-layout{
    width:calc(100% - 28px);
    grid-template-columns:1fr;
    gap:14px;
    margin:0 auto 64px;
  }
  .detail-main,
  .history-panel{
    border-radius:12px;
    padding:18px;
  }
  .milestone-track{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }
  .milestone-track span{
    min-width:132px;
    padding:12px 10px;
    font-size:13px;
    white-space:nowrap;
  }
  .detail-fields{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .timeline{
    padding-left:18px;
  }
  .footer-band{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:start;
    gap:16px;
    padding:20px 18px;
    text-align:left;
  }
  .footer-band img{
    grid-column:1 / -1;
    width:140px;
    justify-self:center;
  }
  .footer-band span{
    max-width:none;
  }
}

@media (max-width:640px){
  .topbar{
    width:calc(100% - 20px);
    min-height:62px;
    margin:10px auto 12px;
    padding:8px 0;
  }
  .brand-lockup img{
    width:124px;
    max-width:40vw;
  }
  .lang-switch{
    max-width:58vw;
    min-height:38px;
    padding:8px 10px;
    font-size:13px;
  }
  .page-head{
    width:calc(100% - 20px);
    grid-template-columns:1fr;
    align-items:start;
    margin:6px auto 14px;
  }
  .page-head h1{
    font-size:34px;
    line-height:1.08;
  }
  .page-head .ghost-btn,
  .page-head form,
  .page-head form .ghost-btn{
    width:100%;
  }
  .shipment-controls{
    width:calc(100% - 20px);
    grid-template-columns:1fr;
    padding:12px;
    gap:10px;
  }
  .shipment-controls label:first-child{
    grid-column:auto;
  }
  .shipment-controls .primary-btn,
  .shipment-controls .text-btn{
    width:100%;
  }
  .shipment-carousel{
    width:calc(100% - 20px);
    margin-bottom:52px;
  }
  .shipment-carousel-meta{
    justify-content:center;
    text-align:center;
  }
  .shipment-carousel-loading{
    text-align:center;
  }
  .shipment-carousel-controls{
    justify-content:center;
  }
  .shipment-carousel .shipment-grid{
    grid-auto-columns:100%;
    gap:14px;
  }
  .shipment-carousel .shipment-card{
    min-height:auto;
    padding:18px;
  }
  .shipment-card-head{
    gap:10px;
  }
  .status-pill{
    flex:0 0 auto;
    max-width:46%;
    text-align:center;
  }
  .tracking{
    min-width:0;
  }
  .shipment-card h2{
    font-size:25px;
  }
  .portal-pager{
    width:calc(100% - 20px);
    margin:-34px auto 46px;
    justify-content:center;
  }
  .detail-layout{
    width:calc(100% - 20px);
    margin-bottom:52px;
  }
  .detail-main,
  .history-panel{
    padding:16px;
  }
  .milestone-track{
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:minmax(128px,1fr);
    scroll-snap-type:x mandatory;
  }
  .milestone-track span{
    min-width:128px;
    scroll-snap-align:start;
  }
  .detail-fields{
    grid-template-columns:1fr;
  }
  .detail-fields div{
    padding:12px;
  }
  .footer-band{
    grid-template-columns:1fr;
    text-align:center;
    padding:18px 14px;
  }
  .footer-band img{
    width:132px;
  }
}

/* 2026-06-12 admin pagination: bounded page numbers, no show-all action. */
body.admin-interface.change-list #changelist .ecs-admin-pagination,
body.admin-interface.change-list .ecs-admin-pagination{
  order:5!important;
  grid-column:1!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:wrap!important;
  margin:0!important;
  padding:14px 18px!important;
  border:0!important;
  border-top:1px solid var(--admin-panel-border, var(--admin-line))!important;
  border-radius:0 0 var(--admin-radius, 8px) var(--admin-radius, 8px)!important;
  background:var(--admin-surface, #fff)!important;
  color:var(--admin-muted, #586986)!important;
  overflow:visible!important;
  white-space:normal!important;
}
body.admin-interface.change-list .ecs-admin-pagination-summary{
  display:inline-flex!important;
  align-items:center!important;
  gap:14px!important;
  min-width:0!important;
  color:var(--admin-text, #071c4d)!important;
  font-size:14px!important;
  font-weight:800!important;
}
body.admin-interface.change-list .ecs-admin-per-page{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:34px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--admin-muted, #586986)!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.admin-interface.change-list .ecs-admin-per-page select{
  width:auto!important;
  min-width:72px!important;
  min-height:34px!important;
  padding:6px 28px 6px 10px!important;
  border:1px solid var(--admin-panel-border, var(--admin-line))!important;
  border-radius:6px!important;
  background:var(--admin-surface, #fff)!important;
  color:var(--admin-text, #071c4d)!important;
}
body.admin-interface.change-list .ecs-admin-pagination-nav,
body.admin-interface.change-list .ecs-page-numbers{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
}
body.admin-interface.change-list .ecs-admin-pagination a,
body.admin-interface.change-list .ecs-admin-pagination .this-page,
body.admin-interface.change-list .ecs-page-step,
body.admin-interface.change-list .ecs-page-compact,
body.admin-interface.change-list .ecs-page-ellipsis{
  min-width:34px!important;
  min-height:34px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 10px!important;
  border:1px solid var(--admin-panel-border, var(--admin-line))!important;
  border-radius:6px!important;
  background:var(--admin-surface, #fff)!important;
  color:var(--admin-link, #14368f)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body.admin-interface.change-list .ecs-admin-pagination .this-page{
  background:var(--admin-link, #14368f)!important;
  border-color:var(--admin-link, #14368f)!important;
  color:#fff!important;
}
body.admin-interface.change-list .ecs-page-step{
  min-width:92px!important;
  gap:6px!important;
}
body.admin-interface.change-list .ecs-page-step.is-disabled{
  color:var(--admin-muted, #586986)!important;
  opacity:.55!important;
  cursor:not-allowed!important;
}
body.admin-interface.change-list .ecs-page-ellipsis{
  min-width:26px!important;
  padding:0!important;
  border-color:transparent!important;
  background:transparent!important;
  color:var(--admin-muted, #586986)!important;
}
body.admin-interface.change-list .ecs-page-compact{
  display:none!important;
  min-width:76px!important;
  color:var(--admin-text, #071c4d)!important;
}
body.admin-interface.change-list .ecs-admin-pagination input.default{
  margin-left:auto!important;
}
@media (max-width:700px){
  body.admin-interface.change-list #changelist .ecs-admin-pagination,
  body.admin-interface.change-list .ecs-admin-pagination{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:14px!important;
    border:1px solid var(--admin-panel-border, var(--admin-line))!important;
    border-radius:10px!important;
  }
  body.admin-interface.change-list .ecs-admin-pagination-summary{
    justify-content:flex-start!important;
    width:100%!important;
  }
  body.admin-interface.change-list .ecs-admin-per-page{
    display:none!important;
  }
  body.admin-interface.change-list .ecs-admin-pagination-nav{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
    width:100%!important;
    gap:8px!important;
  }
  body.admin-interface.change-list .ecs-page-numbers{
    display:none!important;
  }
  body.admin-interface.change-list .ecs-page-compact{
    display:inline-flex!important;
  }
  body.admin-interface.change-list .ecs-page-step{
    width:100%!important;
    min-width:0!important;
    padding:0 8px!important;
  }
  body.admin-interface.change-list .ecs-admin-pagination-nav .ecs-page-step:first-child{
    justify-content:flex-start!important;
  }
  body.admin-interface.change-list .ecs-admin-pagination-nav .ecs-page-step:last-child{
    justify-content:flex-end!important;
  }
}
