:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#19283e;background:#f3f6fa}*{box-sizing:border-box}body{margin:0}header{background:#152847;color:#fff;padding:calc(16px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 19px max(18px,env(safe-area-inset-left))}.top{display:flex;justify-content:space-between;align-items:center;gap:12px;max-width:1060px;margin:auto}.top small{letter-spacing:.1em;color:#b4c8df;font-weight:700;font-size:.7rem}h1{font-size:1.9rem;margin:2px 0}h2{font-size:1.2rem}h3{font-size:1.05rem;margin:6px 0 8px}.sub{max-width:1060px;margin:auto;color:#c7d6e7}main{max-width:1060px;margin:auto;padding:12px 14px calc(24px + env(safe-area-inset-bottom))}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;position:sticky;top:0;z-index:3;background:#f3f6fa;padding:8px 0}.tabs button{background:white;color:#4a5670;border:1px solid #dbe2ec;border-radius:12px;padding:12px 3px;font-weight:650}.tabs button.active{background:#152847;color:#fff}.alert{background:#fff8e5;border:1px solid #f1dfb5;border-radius:12px;padding:11px 13px;margin:8px 0 16px;font-size:.89rem}.card{background:#fff;border:1px solid #dce4ec;border-radius:17px;padding:16px;margin:10px 0;box-shadow:0 5px 15px #1d36540a}.card p{line-height:1.52}.meta{color:#68778d;font-size:.85rem}.tag{font-size:.75rem;padding:4px 8px;border-radius:999px;background:#ecf4ff;color:#2b5182;display:inline-block;margin:4px 4px 4px 0}.tag.confirmed{background:#e7f7ef;color:#246f50}.tag.pending{background:#fff0df;color:#815b24}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}a.action,button.action{display:inline-block;text-decoration:none;background:#225eb8;color:white;border:0;border-radius:11px;padding:10px 14px;font-weight:650;font-size:.91rem}a.action.secondary,button.action.secondary{background:#edf3fc;color:#214e89}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid>.card{margin:0}.daybutton{width:100%;text-align:left;background:white;border:1px solid #dce4ec;padding:14px;border-radius:12px;margin:5px 0;cursor:pointer}.daybutton.active{border:2px solid #235cb1}select{padding:12px;border:1px solid #cbd7e8;border-radius:10px;width:100%;font:inherit;background:white}.small{font-size:.79rem;color:#65738a}.route{border-left:3px solid #6d9fde;padding-left:13px;margin:14px 0}.disclaimer{font-size:.83rem;color:#7e4b26}.statusline{font-size:.8rem;color:#64748b}@media(max-width:650px){.grid{grid-template-columns:1fr}.tabs button{font-size:.85rem}h1{font-size:1.6rem}}