/* Approved three-day Trips calendar. Existing CargoDept tokens only. */
.cargo-portal .portal-trips-layout{display:flex;justify-content:flex-end;gap:3px;margin:0 0 14px;padding:3px;border:1px solid var(--cargo-line);border-radius:6px;background:var(--cargo-paper);width:fit-content;margin-left:auto}
.cargo-portal .portal-trips-layout button{min-height:32px;padding:6px 12px;border:0;border-radius:4px;background:transparent;font-size:12px;font-weight:400;color:var(--cargo-ink)}
.cargo-portal .portal-trips-layout button[aria-pressed=true]{background:var(--cargo-tint)}
.cargo-portal .portal-trips-calendar{min-width:0;color:var(--cargo-ink);font:14px/1.45 Arial,Helvetica,sans-serif}
.cargo-portal .portal-trips-calendar *{box-sizing:border-box}
.cargo-portal .portal-trips-calendar [hidden]{display:none!important}
.cargo-portal .portal-trips-calendar .calendar-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.cargo-portal .portal-trips-calendar .calendar-period{font-size:16px;font-weight:500}
.cargo-portal .portal-trips-calendar .calendar-date-buttons{display:flex;align-items:center;gap:5px}
.cargo-portal .portal-trips-calendar button{min-height:32px;min-width:32px;padding:6px 10px;border:1px solid var(--cargo-line);border-radius:5px;background:var(--cargo-paper);color:var(--cargo-ink);font:12px/1.4 Arial,Helvetica,sans-serif}
.cargo-portal .portal-trips-calendar .calendar-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:stretch}
.cargo-portal .portal-trips-calendar .calendar-day{min-width:0;min-height:350px;padding:0 10px 12px;border:1px solid var(--cargo-line);border-radius:7px;background:var(--cargo-soft)}
.cargo-portal .portal-trips-calendar .calendar-today{background:var(--cargo-tint);border-color:var(--cargo-orange)}
.cargo-portal .portal-trips-calendar .calendar-day-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:6px;padding:15px 2px 12px;margin-bottom:13px;border-bottom:1px solid var(--cargo-line)}
.cargo-portal .portal-trips-calendar .calendar-weekday{display:block;color:var(--cargo-stone);font-size:11px;margin-bottom:4px}
.cargo-portal .portal-trips-calendar .calendar-today .calendar-weekday{color:var(--cargo-ink)}
.cargo-portal .portal-trips-calendar .calendar-day-heading h2{font-size:20px;font-weight:500;letter-spacing:-.4px;margin:0;line-height:1.3}
.cargo-portal .portal-trips-calendar .calendar-day-count{font-size:11px;color:var(--cargo-stone);padding-top:3px;white-space:nowrap}
.cargo-portal .portal-trips-calendar .calendar-card{min-width:0;padding:12px 11px;margin:0 0 10px;border:1px solid var(--cargo-line);border-radius:6px;background:var(--cargo-paper);overflow-wrap:anywhere}
.cargo-portal .portal-trips-calendar .calendar-time{display:block;font-size:11px;color:var(--cargo-stone);margin-bottom:8px;font-variant-numeric:tabular-nums}
.cargo-portal .portal-trips-calendar .calendar-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}
.cargo-portal .portal-trips-calendar .calendar-trip-link{font-size:14px;font-weight:600;color:var(--cargo-ink);text-decoration:none}
.cargo-portal .portal-trips-calendar .calendar-trip-link:hover{text-decoration:underline;text-underline-offset:3px}
.cargo-portal .portal-trips-calendar input[type=checkbox]{width:14px;height:14px;min-height:14px;min-width:14px;margin:0;padding:0;accent-color:var(--cargo-orange)}
.cargo-portal .portal-trips-calendar .calendar-template{font-size:12px;margin-bottom:9px}
.cargo-portal .portal-trips-calendar .calendar-status{display:inline-block;max-width:100%;font-size:11px;line-height:1.3;background:var(--cargo-soft);color:var(--cargo-ink);padding:3px 5px;border-radius:3px}
.cargo-portal .portal-trips-calendar .calendar-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;margin-top:10px;padding-top:9px;border-top:1px solid var(--cargo-line);font-size:12px;font-variant-numeric:tabular-nums}
.cargo-portal .portal-trips-calendar .calendar-metric-label{display:block;font-size:11px;color:var(--cargo-stone);margin-bottom:2px}
.cargo-portal .portal-trips-calendar .calendar-appointment{font-size:11px;color:var(--cargo-stone);margin-top:9px}
.cargo-portal .portal-trips-calendar .calendar-bundle{font-size:11px;margin-top:10px;border-top:1px solid var(--cargo-line);padding-top:8px}
.cargo-portal .portal-trips-calendar summary{padding:3px 0;cursor:pointer;overflow-wrap:anywhere}
.cargo-portal .portal-trips-calendar .calendar-member{padding:10px 0 5px;margin:9px 0 0;border:0;border-top:1px solid var(--cargo-line);border-radius:0}
.cargo-portal .portal-trips-calendar .calendar-manage{font-size:11px;margin-top:8px;white-space:normal;max-width:100%}
.cargo-portal .portal-trips-calendar .calendar-data-state{margin-top:8px;font-size:11px}
.cargo-portal .portal-trips-calendar .calendar-empty{font-size:12px;text-align:center;color:var(--cargo-stone);padding:20px 2px;margin:0}
.cargo-portal .portal-trips-calendar .calendar-message{font-size:12px;color:var(--cargo-stone);margin:0 0 12px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cargo-portal .portal-trips-calendar .calendar-undated{border-top:1px solid var(--cargo-line);padding-top:13px;margin-top:16px;font-size:12px}
.cargo-portal .portal-trips-calendar .calendar-undated .calendar-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:12px}
.cargo-portal .portal-trips-calendar .calendar-footnote{font-size:11px;color:var(--cargo-stone);margin:16px 0 0}
.cargo-portal .portal-trips-calendar :is(button,a,input,summary):focus-visible,.cargo-portal .portal-trips-layout button:focus-visible{outline:3px solid var(--cargo-orange);outline-offset:3px}
@media(max-width:760px){.cargo-portal .portal-trips-calendar .calendar-board,.cargo-portal .portal-trips-calendar .calendar-undated .calendar-cards{grid-template-columns:minmax(0,1fr)}.cargo-portal .portal-trips-calendar .calendar-day{min-height:0}.cargo-portal .portal-trips-calendar .calendar-day-heading{align-items:center;padding:11px 2px;margin-bottom:10px}.cargo-portal .portal-trips-calendar .calendar-day-heading>div{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.cargo-portal .portal-trips-calendar .calendar-weekday{margin:0}.cargo-portal .portal-trips-calendar .calendar-day-heading h2{font-size:17px}.cargo-portal .portal-trips-calendar .calendar-period{font-size:14px}}
@media(pointer:coarse){.cargo-portal .portal-trips-calendar button,.cargo-portal .portal-trips-layout button{min-height:44px;min-width:44px}.cargo-portal .portal-trips-calendar summary{min-height:44px;display:flex;align-items:center}.cargo-portal .portal-trips-calendar .calendar-trip-link{display:inline-flex;align-items:center;min-height:44px}.cargo-portal .portal-trips-calendar input[type=checkbox]{width:20px;height:20px;min-width:20px;min-height:20px}}
