/* 担当者スマホ画面 */
body{max-width:480px;margin-inline:auto;min-height:100vh}
.head{position:relative;overflow:hidden;color:#fff;padding:26px 20px 34px;border-radius:0 0 18px 18px;
  background:var(--navy)}
.head h1{margin:0 0 6px;font-size:28px;letter-spacing:.02em}
.head p{margin:0;opacity:.92;font-size:14px;position:relative;z-index:1}
main{padding:0 14px 28px;display:grid;gap:14px;margin-top:-16px;position:relative}
.next{background:var(--butter);border:1px solid #f1e2b0;border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);position:relative}
.next::before{content:"次の便";position:absolute;top:-10px;left:16px;background:var(--brand);color:#fff;font-size:12px;font-weight:700;padding:2px 12px;border-radius:6px}
.next h2{margin:6px 0 6px;font-size:18px;line-height:1.4}.next p{margin:4px 0;font-size:14px}
.next .warn{color:var(--butter-d);font-weight:700;background:rgba(255,255,255,.55);display:inline-block;padding:3px 10px;border-radius:10px}
.trip{background:var(--paper);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow);position:relative;overflow:hidden;animation:rise .5s both}
.trip::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#34343c}
.trip.red::before{background:#d9604c}.trip.white::before{background:#c9c7d0}
.trip:nth-of-type(2){animation-delay:.05s}.trip:nth-of-type(3){animation-delay:.1s}.trip:nth-of-type(4){animation-delay:.15s}.trip:nth-of-type(5){animation-delay:.2s}
.trip.done{opacity:.55;box-shadow:none;background:#fcf6ec}
.trip.current{outline:2px solid var(--brand);outline-offset:-2px;box-shadow:var(--shadow)}
.top{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}
.time{font-size:30px;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums}
.kind{font-size:15px;font-weight:700;background:#f4ecdf;padding:1px 10px;border-radius:6px}
.state{margin-left:auto;font-size:12px;font-weight:700;padding:3px 12px;border-radius:6px;background:#ece6dc;color:var(--muted)}
.trip.current .state{background:var(--brand);color:#fff}
.stop{margin:6px 0;font-size:16px;padding-left:14px;position:relative;font-variant-numeric:tabular-nums}
.stop::before{content:"";position:absolute;left:0;top:.7em;width:7px;height:7px;border-radius:50%;background:var(--sky)}
.direct{color:var(--mint);font-weight:700;margin:8px 0 0}
.count{display:inline-block;margin:10px 0 0;color:var(--muted);font-size:13px;font-weight:700;background:#f6f0e6;padding:2px 12px;border-radius:6px}
.more{text-align:center;padding:4px 0 24px}.more a{color:var(--navy);font-weight:700;text-decoration:none;background:#fff;padding:10px 20px;border-radius:6px;box-shadow:var(--shadow);display:inline-block}
