/* AAT Forwarding — the customer and the courier portal (ABGA M02).
   The website's own design: site.css and intake.css are byte-identical copies of the website's files,
   loaded before this one. Only what the portals have and the website has not is added here — the
   account line, the case list, messages, the document table — in the site's tokens and type scale.
   The yellow stays where the site puts it: accent bars, link underlines, CTA surfaces, focus rings. */

/* ── a view waits for its data; nothing flashes before it ─────── */
[hidden]{display:none!important}
.pview{min-height:40vh}
.loading{font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

/* ── the hero's action as a link to the form on the same page ── */
.hero-act .altbtn{cursor:pointer}

/* ── signed in: who, and the way out ──────────────────────────── */
.acct{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;
  border-bottom:1px solid var(--rule);padding-bottom:var(--s2);margin-bottom:var(--s4);
  font-family:var(--mono);font-size:clamp(12.5px,calc(11.86px + 0.163vw),15px);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.acct b{color:var(--text);font-weight:500}
.linkbtn{background:none;border:0;padding:0;cursor:pointer;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--blue);
  text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:var(--link-underline);text-underline-offset:3px}
.linkbtn:hover{color:var(--blue-d)}
.prose a,.gnote a,.intake .hint a,.lead a{color:var(--blue);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:var(--link-underline);text-underline-offset:3px}

/* ── forms: the website's request card, narrower where it holds a sign-in ── */
.intake.narrow{max-width:640px}
.intake form{margin:0}
.intake .fld{min-width:0}
.intake .fgrid.one{grid-template-columns:1fr}
.intake input[readonly]{background:var(--paper-2)}
.intake .status.ok{color:var(--blue)}

/* ── entries as buttons: the website's entry cards, chosen on the page ── */
button.entry{font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%}
.entry[aria-pressed="true"]{background:var(--paper-2);border-left-color:var(--navy)}

/* ── the case list ─────────────────────────────────────────────── */
.cases{margin-top:var(--s4);border-top:1px solid var(--rule)}
.case{border-bottom:1px solid var(--rule)}
/* Each case a card (AAT Forwarding LLC, 24.10.2026, of the one line it was: "das geht doch auch besser als nur so dahin geklatscht und
   geschissen"): its reference, open and its product on top; what travels, how many and how heavy; pickup → delivery side by side by their
   airports on a tinted band — one under the other on a phone —; where it stands, what waits for the customer, and the way in. Opened, the
   band gives way to the case's own pickup | delivery under it. */
.case>summary{cursor:pointer;list-style:none;display:block;padding:clamp(20px,calc(18.22px + 0.458vw),28px) 0}
.case>summary::-webkit-details-marker{display:none}
.case>summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.cs{display:block}
.cs-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.case .ref{font-family:var(--mono);font-weight:500;font-size:clamp(13px,calc(12.36px + 0.163vw),16px);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cs-top .badge{margin-left:0;vertical-align:0}
.cs-prod{margin-left:auto;font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.case .what{font-family:var(--disp);font-weight:600;font-size:clamp(20px,calc(19.24px + 0.196vw),23px);line-height:1.3;color:var(--text);margin-top:8px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.case[open] .what{color:var(--blue)}
.cs-amt{display:block;color:var(--muted);font-size:clamp(16px,calc(15.49px + 0.131vw),18px);margin-top:2px}
.cs-route{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:var(--s2);padding:14px 18px;background:var(--paper-2);border-left:4px solid var(--blue)}
@media(min-width:760px){.cs-route{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:0 24px}}
.cs-arrow{display:none;align-self:center;color:var(--blue);font-family:var(--disp);font-weight:700;font-size:26px;line-height:1}
@media(min-width:760px){.cs-arrow{display:block}}
.cs-end{display:flex;flex-direction:column;min-width:0}
.cs-k{font-family:var(--disp);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.cs-ap{font-family:var(--disp);font-weight:600;font-size:clamp(17px,calc(16.49px + 0.131vw),19px);line-height:1.3;color:var(--text);margin-top:3px;overflow-wrap:anywhere}
.cs-ap.none{color:var(--muted);font-weight:500}
.cs-ad{color:var(--muted);font-size:15px;line-height:1.4;margin-top:1px;overflow-wrap:anywhere}
.cs-t{color:var(--blue);font-weight:600;font-size:15px;line-height:1.4;margin-top:6px}
.cs-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:var(--s2)}
.cs-state{display:inline-flex;align-items:center;gap:9px;font-weight:600;color:var(--text);line-height:1.4}
.cs-state::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px var(--navy)}
.cs-state.done{color:var(--muted)}
.cs-state.done::before{background:var(--rule);box-shadow:none}
.cs-todo{padding:5px 12px;background:#FFF5D1;border-left:4px solid var(--gold);color:#5C3D00;font-size:15px;line-height:1.4}
.cs-open{margin-left:auto;font-family:var(--disp);font-weight:700;color:var(--blue);white-space:nowrap;
  text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:var(--link-underline);text-underline-offset:3px}
.cs-open::after{content:"\00a0▾"}
.case[open] .cs-open::after{content:"\00a0▴"}
.cs-open .c,.case[open] .cs-open .o{display:none}
.case[open] .cs-open .c{display:inline}
.case[open] .cs-route,.case[open] .cs-amt{display:none}
.case>summary:hover .cs-open{color:var(--blue-d)}
.case .body{padding:0 0 var(--s4)}
.case .body>h3{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(15px,calc(14.24px + 0.196vw),18px);color:var(--blue);margin-top:var(--s4)}
.case .chain{margin-top:var(--s3)}

.badge{display:inline-block;font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  border:1px solid var(--blue);color:var(--blue);padding:3px 8px;margin-left:10px;vertical-align:2px;line-height:1.3}
.badge.done{border-color:var(--rule);color:var(--muted)}

/* ── facts of a case: the rail's label and value, in a grid ─────── */
.kv{display:grid;grid-template-columns:1fr;gap:0 clamp(18px,calc(12.39px + 1.438vw),40px);margin-top:var(--s2)}
.kv>div{min-width:0}
.kv dt{font-family:var(--disp);color:var(--muted);text-transform:uppercase;font-size:clamp(13px,calc(12.49px + 0.131vw),15px);letter-spacing:.14em;margin-top:var(--s3);font-weight:700}
.kv dd{color:var(--text);font-weight:600;font-size:clamp(18px,calc(17.49px + 0.131vw),20px);line-height:1.4;margin-top:4px}
@media(min-width:700px){.kv{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.kv{grid-template-columns:repeat(4,1fr)}}

/* ── what the customer wrote ───────────────────────────────────── */
.msgs{margin-top:var(--s2)}
.msgs li{border-left:3px solid var(--blue);padding:4px 0 4px 18px;margin-top:var(--s2)}
.msgs .k{font-family:var(--mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:block}
.msgs p{color:var(--text);margin-top:4px;font-size:clamp(17px,calc(16.49px + 0.131vw),19px);line-height:1.55;white-space:pre-line}
.write{margin-top:var(--s3);max-width:760px}
.write label{display:block;font-weight:600;font-size:16px;line-height:1.35;margin-bottom:6px}
.write textarea{display:block;width:100%;font-family:var(--body);font-size:16px;line-height:1.4;color:var(--text);background:var(--paper);border:1px solid var(--rule);border-radius:0;padding:12px 14px;min-height:110px;resize:vertical}
.write textarea:hover{border-color:var(--blue-l)}
.write .actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-top:var(--s2)}
.write .send{background:var(--gold);color:var(--dark);border:0;border-left:6px solid var(--dark);cursor:pointer;font-family:var(--disp);font-weight:700;font-size:16px;letter-spacing:.02em;padding:13px 24px;transition:filter .18s}
.write .send:hover{filter:brightness(.96)}
.write .send[disabled]{opacity:.6;cursor:wait}
.write .status{margin:0;font-size:16px}
.write .status.err{color:#8B1E1E}
.msghead{margin-top:var(--s4)}
.msgnote{margin-top:var(--s4)}

/* ── the courier's documents ───────────────────────────────────── */
.docs{width:100%;border-collapse:collapse;margin-top:var(--s3);font-size:clamp(17px,calc(16.49px + 0.131vw),19px)}
.docs th{font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:10px 12px 10px 0;border-bottom:2px solid var(--blue)}
.docs td{padding:14px 12px 14px 0;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.45}
.docs .ok{color:var(--blue);font-weight:600}
.docs .bad{color:#8B1E1E;font-weight:600}
.docs .wait{color:var(--muted)}
@media(max-width:699px){
  .docs thead{display:none}
  .docs tr{display:block;border-bottom:1px solid var(--rule);padding:12px 0}
  .docs td{display:block;border:0;padding:2px 0}
}

/* ── the courier's account: four tabs ──────────────────────────── */
.ptabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:2px solid var(--blue);margin-top:var(--s3)}
.ptabs [role="tab"]{font-family:var(--disp);font-weight:600;font-size:clamp(15px,calc(14.24px + 0.196vw),18px);letter-spacing:.02em;
  background:var(--paper-2);color:var(--blue);border:1px solid var(--rule);border-bottom:0;padding:12px 20px;margin:0 4px -2px 0;cursor:pointer}
.ptabs [role="tab"]:hover{background:var(--paper-3)}
.ptabs [role="tab"][aria-selected="true"]{background:var(--navy);color:var(--on-dark);border-color:var(--navy);box-shadow:inset 0 4px 0 var(--gold)}
.ppane{padding-top:var(--s4)}
.ppane>.intake{margin-top:var(--s4)}
.subt{font-family:var(--disp);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(15px,calc(14.24px + 0.196vw),18px);color:var(--blue);margin-top:var(--s5)}

/* ── a card per document type ──────────────────────────────────── */
.dcards{display:grid;grid-template-columns:1fr;gap:var(--s3);margin-top:var(--s3)}
@media(min-width:700px){.dcards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.dcards{grid-template-columns:repeat(3,1fr)}}
.dcard{border:1px solid var(--rule);border-top:var(--card-border) solid var(--blue);background:var(--paper);padding:var(--s3);display:flex;flex-direction:column}
.dcard h3{font-family:var(--disp);font-weight:700;font-size:clamp(19px,calc(18.49px + 0.131vw),21px);color:var(--text);margin:0}
.dcard .dcount{font-weight:600;margin-top:var(--s2)}
.dcard .dlast{color:var(--muted);font-style:italic;margin-top:4px}
.cact{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding-top:var(--s3)}
.cbtn{font-family:var(--disp);font-weight:700;font-size:15px;letter-spacing:.02em;padding:11px 16px;cursor:pointer;
  background:var(--gold);color:var(--dark);border:0;border-left:5px solid var(--dark)}
.cbtn.alt{background:var(--paper-2);color:var(--blue);border:1px solid var(--rule);border-left:5px solid var(--blue)}
.cbtn:hover{filter:brightness(.96)}
.cbtn[disabled]{opacity:.5;cursor:default;filter:none}
.dlist{margin-top:var(--s2);border-top:1px solid var(--rule)}
.dlist li{display:flex;flex-direction:column;padding:10px 0;border-bottom:1px solid var(--rule);line-height:1.4}
.dlist .dn{font-weight:600}
.dlist .dm{color:var(--muted);font-size:15px}
.dlist .ok{color:var(--blue);font-weight:600}
.dlist .bad{color:#8B1E1E;font-weight:600}
.dlist .wait{color:var(--muted)}

/* ── the consents ──────────────────────────────────────────────── */
.consent{border-left:3px solid var(--blue);padding:4px 0 4px 18px;margin-top:var(--s3)}
.consent .ct{font-weight:700}
.consent .cs{color:var(--muted);margin-top:2px}
.consent .cs.ok{color:var(--blue);font-weight:600}
.consent .linkbtn{margin-top:var(--s2);text-transform:none;letter-spacing:0;font-family:var(--body)}
.ctext{margin-top:var(--s2)}
.ctext summary{cursor:pointer;color:var(--blue);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:var(--link-underline);text-underline-offset:3px}
.ctext p{margin-top:var(--s2);line-height:1.5;font-size:16px;max-width:860px}
.ctext .cver{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* ── the upload dialog, the request card as a modal ────────────── */
.pdlg{margin:auto;border:1px solid var(--rule);border-left:5px solid var(--blue);padding:clamp(20px,calc(13.88px + 1.569vw),40px);width:min(680px,calc(100vw - 32px));
  max-height:calc(100vh - 32px);overflow:auto;background:var(--paper);color:var(--text)}
.pdlg::backdrop{background:rgba(16,17,56,.6)}
.pdlg form{position:relative;margin:0}
.pdlg h3{font-family:var(--disp);font-weight:700;font-size:clamp(22px,calc(19.96px + 0.523vw),30px);margin:0 40px var(--s2) 0;color:var(--text)}
.dlgx{position:absolute;top:-8px;right:-8px;background:none;border:0;font-size:30px;line-height:1;color:var(--muted);cursor:pointer;padding:4px 10px}
.dlgx:hover{color:var(--text)}
.dlgnote{color:var(--muted);line-height:1.5}
.pdlg .fgrid{display:grid;grid-template-columns:1fr;gap:var(--s3);margin-top:var(--s3)}
.pdlg label{display:block;font-weight:600;font-size:16px;line-height:1.35;margin-bottom:6px}
.pdlg .req{color:var(--blue);font-weight:700;margin-left:4px}
.pdlg input:not([type="checkbox"]),.pdlg select{display:block;width:100%;box-sizing:border-box;font-family:var(--body);font-size:16px;line-height:1.4;
  color:var(--text);background:var(--paper);border:1px solid var(--rule);border-radius:0;padding:12px 14px}
.pdlg input[type="file"]{padding:9px 10px}
.pdlg .fld input+input{margin-top:8px}
.dlgconsent{margin-top:var(--s3);background:var(--paper-2);padding:var(--s2) var(--s3)}
.chk{display:flex!important;gap:12px;align-items:flex-start;font-weight:400!important;line-height:1.5!important}
.chk input{margin-top:5px;width:18px;height:18px;flex-shrink:0;accent-color:var(--blue)}
.pdlg .hint{font-size:14px;color:var(--muted);margin:var(--s2) 0 0}
.pdlg .actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-top:var(--s3)}
.pdlg .send{background:var(--gold);color:var(--dark);border:0;border-left:6px solid var(--dark);cursor:pointer;font-family:var(--disp);font-weight:700;font-size:17px;padding:14px 28px}
.pdlg .send[disabled]{opacity:.6;cursor:wait}
.pdlg .status{margin:0;font-size:16px}
.pdlg .status.err,.ppane .status.err{color:#8B1E1E}
.ppane>.status{margin-top:var(--s2)}
.ppane .status.ok{color:var(--blue)}
.ppane .intake h3{font-size:clamp(19px,calc(18.24px + 0.196vw),22px);color:var(--text)}
.chain .stepphoto{display:block;max-width:min(100%,360px);margin-top:8px;border-radius:4px}
.chain .signedby{margin:6px 0 0;font-weight:600}
.chain .stepsig{display:block;max-width:min(100%,260px);margin-top:6px;background:#fff;border-bottom:1px solid #c9d1dc}
.pod{margin-top:12px}

/* The quotation sent to sign (AAT Forwarding LLC, 23.10.2026): to review and sign while it is out, its signed copy once signed. */
.quote{margin:12px 0 4px;padding:14px 16px;border-left:4px solid var(--gold);background:rgba(22,23,75,.04)}
.quote .qref{margin:0;font-weight:700}
.quote .qstate{margin:4px 0 0;color:var(--muted)}
.quote .sign{display:inline-block;margin-top:10px;background:var(--gold);color:var(--dark);border-left:6px solid var(--dark);font-family:var(--disp);font-weight:700;font-size:16px;letter-spacing:.02em;padding:11px 20px;text-decoration:none}
.quote .sign:hover{filter:brightness(.96)}

/* The requirements of an on-board courier, above the registration (AAT Forwarding LLC, 04.10.2026). */
.reqs{margin:18px 0 22px;padding:16px 18px;border-left:4px solid var(--gold);background:rgba(22,23,75,.04)}
.reqs h3{font-family:var(--display, inherit);font-size:17px;margin:0 0 8px;color:var(--navy)}
.reqs ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:6px 22px;margin:0;padding:0}
.reqs li{position:relative;padding-left:20px;line-height:1.4}
.reqs li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--navy);border-radius:1px}

/* Lists inside a consent text (04.10.2026). */
.clist{list-style:disc;margin:4px 0 10px;padding-left:22px}
.clist li{margin:2px 0;line-height:1.45}
/* Replacing a rejected or run-out document (04.10.2026). */
.dlist .dact{margin-top:8px}
.dlist .dreplace{display:grid;gap:6px;max-width:420px;margin-top:8px}
.dlist .dreplace label{font-size:14px;color:var(--muted)}

/* The flight between take-off and landing (AAT Forwarding LLC, 08.10.2026): while the courier is in the air, a card with
   the flight, its times and the link to follow it live; once landed, one short line on the take-off. */
.chain .fline{margin-top:6px;color:var(--text);font-size:clamp(16px,calc(15.49px + 0.131vw),18px)}
.chain .gnote+.fline{margin-top:calc(6px - var(--s3))}
.chain .fline b{font-family:var(--mono);font-weight:500;letter-spacing:.06em;margin-right:6px}
.step.air::before{background:var(--gold);border-color:var(--navy);box-shadow:0 0 0 4px var(--paper),0 0 0 7px rgba(42,74,129,.35)}
.tint .step.air::before{box-shadow:0 0 0 4px var(--paper-2),0 0 0 7px rgba(42,74,129,.35)}
.step.air .k{color:var(--blue);font-weight:600}
.chain .flight{margin-top:12px;max-width:780px;background:var(--paper-2);border:1px solid var(--rule);border-left:5px solid var(--blue);
  padding:clamp(14px,calc(11.45px + 0.654vw),22px) clamp(14px,calc(10.94px + 0.784vw),26px)}
.tint .chain .flight{background:var(--paper)}
.chain .fno{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 16px;color:var(--text)}
.chain .fno b{font-family:var(--mono);font-weight:500;font-size:clamp(20px,calc(18.98px + 0.261vw),24px);letter-spacing:.06em;color:var(--navy)}
.chain .fno span{font-family:var(--disp);font-weight:600;font-size:clamp(18px,calc(17.49px + 0.131vw),20px);letter-spacing:.04em}
.chain .fno em{font-style:normal;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.chain .ftimes{display:flex;flex-direction:column;gap:10px 32px;margin-top:12px}
@media(min-width:600px){.chain .ftimes{flex-direction:row;flex-wrap:wrap}}
.chain .ftimes dt{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.chain .ftimes dd{margin-top:2px;font-weight:600;color:var(--text);font-size:clamp(16px,calc(15.49px + 0.131vw),18px);line-height:1.4}
.chain .fstand{display:block;font-weight:600;color:var(--blue);font-size:15px}
.chain .fstand.late{color:#8B1E1E}
.chain .follow{display:inline-block;margin-top:16px;background:var(--gold);color:var(--dark);border-left:6px solid var(--dark);
  font-family:var(--disp);font-weight:700;font-size:16px;letter-spacing:.02em;padding:12px 22px;text-decoration:none;transition:filter .18s}
.chain .follow:hover{filter:brightness(.96)}
.chain .follow:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.chain .fnote{margin-top:12px;font-size:15px;line-height:1.45;color:var(--muted)}
.chain .fdue{margin-top:14px;max-width:60ch;font-weight:600;color:var(--text);font-size:clamp(16px,calc(15.49px + 0.131vw),18px);line-height:1.45}
@media(max-width:599px){.chain .follow{display:block;text-align:center}}

/* The case's flights above its steps (AAT Forwarding LLC, 15.10.2026: "oben bei den Auftragsdaten"): one line each — where it
   stands, the number as the flight card writes it, the airports and the times as the ticket prints them. The case head takes
   the flight as a fifth tile: three to a row on a tablet, all five in one from 1024px. */
.fhead{margin-top:var(--s4)}
.flights{margin-top:var(--s2);border-top:1px solid var(--rule);max-width:960px}
.flights li{padding:12px 0;border-bottom:1px solid var(--rule);color:var(--text);font-size:clamp(17px,calc(16.49px + 0.131vw),19px);line-height:1.45}
.flights .fs{font-weight:700}
.flights li.air .fs{color:var(--blue)}
.flights .fn{font-family:var(--mono);font-weight:500;letter-spacing:.06em}
@media(min-width:700px){.hstrip.five{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.hstrip.five{grid-template-columns:repeat(5,1fr)}}

/* ── Rule 1 (AAT Forwarding LLC, 09.10.2026): the temperature — an excursion as soon as it is recorded, never removed ─────── */
.temp{margin-top:var(--s3);max-width:900px}
.temp .tperm{font-size:clamp(17px,calc(16.49px + 0.131vw),19px);color:var(--text)}
.temp .tsum{margin-top:var(--s2);font-weight:600;color:var(--blue);font-size:clamp(17px,calc(16.49px + 0.131vw),19px)}
.texc{margin-top:var(--s3);padding:16px 18px;border:2px solid #B3261E;border-left-width:8px;background:#FDECEA;color:#14171F}
.texc .thead{font-family:var(--disp);font-weight:700;font-size:clamp(18px,calc(17.24px + 0.196vw),21px);line-height:1.3;color:#8B1E1E}
.texc .tline{margin-top:6px;font-weight:600;font-size:clamp(16px,calc(15.49px + 0.131vw),18px);line-height:1.45;overflow-wrap:anywhere}
.texc .treview{margin-top:6px;font-size:clamp(16px,calc(15.49px + 0.131vw),18px);line-height:1.45}
.texc.incident{background:#7A1414;border-color:#5C0D0D;color:#FFFFFF}
.texc.incident .thead{color:#FFFFFF}
.texc.incident .tsteps .k{color:#F3D6D6}
.texc.notconf{background:var(--paper);border-color:#B26A00;border-left-color:#B26A00}
.texc.notconf .thead{color:#7A4A00}
.texc.resolved{background:var(--paper-2);border-color:var(--rule);border-left-color:#8A93A3}
.texc.resolved .thead{color:var(--muted)}
.tsteps{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px}
.tsteps li{display:flex;flex-direction:column}
.tsteps li span:first-child{font-weight:600}
.tsteps .k,.treads .k{font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}
.treads{margin-top:var(--s3);border-top:1px solid var(--rule)}
.treads li{display:grid;grid-template-columns:1fr;gap:2px 16px;padding:10px 0;border-bottom:1px solid var(--rule);font-size:16px;line-height:1.4}
@media(min-width:760px){.treads li{grid-template-columns:200px 1fr auto auto;align-items:baseline}}
.treads .tstate{font-weight:600;color:var(--blue)}
.treads li.out .tstate{color:#B3261E}
.treads li.unchecked .tstate{color:#8A5300}
.treads .tsrc{color:var(--muted);font-size:14px}
.badge.temp{border-color:#B3261E;color:#FFFFFF;background:#B3261E;margin-top:0;max-width:none}
.badge.temp.incident{border-color:#7A1414;background:#7A1414}

/* ── the case's head (AAT Forwarding LLC, 24.10.2026: "oben sauber ordentlich die daten pickup / Delivery in zwei spalten nebeneinander";
   "das soll halt wirklich ordentlich aussehen pickup | delivery und darunter shipment details"): the pickup and the delivery as two cards
   side by side — one under the other on a phone —, what travels in a card across both under them. Each card a label, the place, then its
   facts as label and value, one line each. ─────────────────────────────────────────────────────────────────────────────────────────── */
.head{margin-top:var(--s3)}
.ends{display:grid;grid-template-columns:1fr;gap:var(--s3)}
@media(min-width:760px){.ends{grid-template-columns:1fr 1fr}}
.end,.ship{min-width:0;background:var(--paper);border:1px solid var(--rule);border-top:var(--card-border) solid var(--blue);padding:var(--s3)}
.ship{margin-top:var(--s3)}
.end .el,.ship .el,.artsbox .el{font-family:var(--disp);font-weight:700;font-size:clamp(14px,calc(13.36px + 0.163vw),17px);letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin:0}
.end .ea,.ship .sw{font-family:var(--disp);font-weight:600;font-size:clamp(19px,calc(18.24px + 0.196vw),22px);line-height:1.3;color:var(--text);margin-top:10px;overflow-wrap:anywhere}
.end .ea.none,.ship .sw.none{color:var(--muted);font-weight:500}
.end .eo,.ship .eo{color:var(--muted);margin-top:2px;line-height:1.45}
/* "efacts", not the site's own .facts (a bulleted list with its own padding). */
.efacts,.sfacts{margin-top:var(--s2);border-top:1px solid var(--rule)}
.efacts>div{display:grid;grid-template-columns:minmax(110px,32%) minmax(0,1fr);gap:2px 16px;padding:9px 0;border-bottom:1px solid var(--rule)}
.efacts dt,.sfacts dt{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:3px}
.efacts dd,.sfacts dd{font-weight:600;color:var(--text);line-height:1.45;overflow-wrap:anywhere}
.efacts dd.time{color:var(--blue)}
.efacts dd.say,.sfacts dd.say{font-weight:400;white-space:pre-line}
.efacts a{color:var(--blue);overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:var(--link-underline);text-underline-offset:3px}
@media(max-width:420px){.efacts>div{grid-template-columns:minmax(0,1fr)}}
.sfacts{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0 var(--s3);border-top:0}
.sfacts>div{padding:9px 0;border-top:1px solid var(--rule)}
.sfacts dd{margin-top:2px}
.sfacts.wide{grid-template-columns:1fr;margin-top:0}
.artsbox{margin-top:var(--s3)}
.arts{width:100%;border-collapse:collapse;margin-top:8px;font-size:16px}
.arts th{font-family:var(--mono);font-weight:500;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:8px 12px 8px 0;border-bottom:2px solid var(--blue)}
.arts td{padding:10px 12px 10px 0;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.4;overflow-wrap:anywhere}
.arts .amore{display:block;color:var(--muted);font-size:14px}
@media(max-width:699px){
  .arts thead{display:none}
  .arts tr{display:block;border-bottom:1px solid var(--rule);padding:8px 0}
  .arts td{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;border:0;padding:2px 0}
  .arts td::before{content:attr(data-label);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
  .arts td.none{display:none}
}
.headnote{margin-top:var(--s2);color:var(--muted);font-size:16px}

/* ── the documents: one line each — what, where it stands, what to do ───────────────────────────────────────────────────────────── */
.doclist{margin-top:var(--s3);border-top:2px solid var(--blue)}
.doclist li{display:grid;grid-template-columns:1fr;gap:6px 24px;padding:16px 0 16px 14px;border-bottom:1px solid var(--rule);border-left:4px solid transparent}
.doclist li.ok{border-left-color:var(--blue)}
.doclist li.due{border-left-color:var(--gold)}
.doclist li.late{border-left-color:#B3261E}
@media(min-width:900px){.doclist li{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 190px;align-items:center}
  .doclist .dact{justify-content:flex-end}}
.doclist .dhead{display:flex;flex-direction:column;min-width:0}
.doclist .dname{font-family:var(--disp);font-weight:700;font-size:clamp(18px,calc(17.49px + 0.131vw),20px);color:var(--text)}
.doclist .dref{font-family:var(--mono);font-size:13px;letter-spacing:.06em;color:var(--muted);overflow-wrap:anywhere}
.doclist .ddet{color:var(--muted);font-size:16px;line-height:1.4;margin-top:2px}
.doclist .dstate{margin:0;font-size:16px;line-height:1.45;color:var(--muted)}
.doclist li.ok .dstate{color:var(--blue);font-weight:600}
.doclist li.due .dstate{color:#7A4A00;font-weight:600}
.doclist li.late .dstate{color:#8B1E1E;font-weight:600}
.doclist .dact{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.dbtn{display:inline-block;font-family:var(--disp);font-weight:700;font-size:15px;letter-spacing:.02em;padding:10px 18px;cursor:pointer;text-decoration:none;
  background:var(--gold);color:var(--dark);border:0;border-left:5px solid var(--dark);white-space:nowrap}
.dbtn.alt{background:var(--paper-2);color:var(--blue);border:1px solid var(--rule);border-left:5px solid var(--blue)}
.tint .dbtn.alt{background:var(--paper)}
.dbtn:hover{filter:brightness(.96)}
.dbtn[disabled]{opacity:.6;cursor:wait}
.dbtn:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.filebtn{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
.filebtn .fstat{color:var(--muted);font-size:14px}

/* ── rule 1 at the very top: a temperature outside its range, said until Operations resolve it ─────────────────────────────────── */
.alertwrap{padding-top:var(--s3)}
.calert{padding:14px 18px;border:2px solid #B3261E;border-left-width:8px;background:#FDECEA;color:#14171F}
.calert p{margin:0;line-height:1.45}
.calert .ct{font-family:var(--disp);font-weight:700;font-size:clamp(18px,calc(17.24px + 0.196vw),21px);color:#8B1E1E}
.calert p+p{margin-top:4px}
.calert.incident{background:#7A1414;border-color:#5C0D0D;color:#FFFFFF}
.calert.incident .ct,.calert.incident .linkbtn{color:#FFFFFF}
.case .body>.calert{margin-top:var(--s3)}

/* ── Tracking: the temperature, the map, the flights, the steps ─────────────────────────────────────────────────────────────────── */
.trhead{margin-top:var(--s4)}
.stitle+.tempat .trhead{margin-top:var(--s2)}
.case .body h4.trh{font-family:var(--disp);font-weight:700;font-size:clamp(15px,calc(14.49px + 0.131vw),17px);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:var(--s3)}
.pmapbox{margin-top:var(--s3);border:1px solid var(--rule);background:var(--paper)}
.pmap{height:clamp(280px,calc(200px + 18vw),460px);background:#E8EDF3}
.pmapnote{margin:0;padding:10px 14px;border-top:1px solid var(--rule);font-size:15px;line-height:1.45;color:var(--muted)}
.pmap .leaflet-container,.pmap.leaflet-container{font:inherit}
.pmark{background:none;border:0}
.pmark.pm-start{border-radius:50%;background:var(--gold);border:3px solid var(--navy);box-shadow:0 0 0 2px #FFFFFF}
.pmark.pm-end{background:var(--blue);border:2px solid #FFFFFF;box-shadow:0 0 0 1px var(--navy)}
.pmark.pm-plane svg{display:block;width:28px;height:28px}
.pmark.pm-plane path{fill:var(--gold);stroke:var(--navy);stroke-width:1.2}
.leaflet-tooltip.plabel{background:rgba(255,255,255,.94);border:1px solid var(--rule);border-radius:0;box-shadow:none;padding:2px 7px;
  font-family:var(--body);font-weight:600;font-size:13px;line-height:1.35;color:var(--text)}
/* A map's label is one short line beside its mark, the one exception to the site's rule that words wrap: wrapped, it would stand over
   the marks around it. */
.leaflet-tooltip.plabel span{white-space:nowrap;max-width:none}
.leaflet-tooltip.plabel::before{display:none}
.leaflet-tooltip.plabel.air{background:var(--navy);border-color:var(--navy);color:#FFFFFF}
