.itinerary-head { border-left: 5px solid var(--gold); }
.itinerary-head h1 { margin: 8px 0; color: var(--green); }
.itinerary-head p { color: var(--muted); margin: 5px 0 0; }
.itinerary-progress { margin-top: 20px; }
.itinerary-progress > h3 { margin: 28px 0 12px; padding-left: 12px; border-left: 3px solid var(--gold); color: var(--green); }
.itinerary-event { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.itinerary-event-marker { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--green); color: #fff; font-weight: 800; }
.itinerary-event.is-done .itinerary-event-marker { background: #2d806a; }
.itinerary-event-body { min-width: 0; }
.itinerary-event-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.itinerary-event-title strong { color: var(--ink); font-size: 1.05rem; }
.itinerary-event-body p { margin: 8px 0; color: var(--muted); }
.itinerary-event-body dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 18px; margin: 12px 0; }
.itinerary-event-body dl div { display: grid; grid-template-columns: 54px minmax(0,1fr); gap: 8px; }
.itinerary-event-body dt { color: var(--muted); font-size: .82rem; }
.itinerary-event-body dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.itinerary-event-body dd a { color: var(--green); text-decoration: underline; }
.itinerary-event-action { display: grid; grid-template-columns: 130px minmax(0,1fr) auto; gap: 8px; margin-top: 14px; }
.itinerary-event-action input, .itinerary-event-action select { min-width: 0; }
@media (max-width: 600px) { .itinerary-event-body dl { grid-template-columns: 1fr; } .itinerary-event-action { grid-template-columns: 1fr; } .itinerary-event-action button { width: 100%; } }
.itinerary-node-heading{display:flex;align-items:baseline;gap:10px;margin:24px 0 10px;padding:12px 16px;border-left:4px solid var(--admin-blue,#1e91cf);background:#f3f7fa}.itinerary-node-heading span{font-size:.72rem;text-transform:uppercase;color:#6b7c87;letter-spacing:.08em}.itinerary-node-heading h3{margin:0;color:#1d3444;font-size:1.12rem}
.admin-body .case-task-row{display:block;width:100%;box-sizing:border-box;margin:0 0 18px;padding:20px 22px;border:1px solid #dbe4ea;border-radius:6px;background:#fff;box-shadow:0 2px 8px rgba(28,55,70,.06)}
.admin-body details.itinerary-event-collapsible{padding:0;overflow:hidden}.admin-body .itinerary-event-collapsible>summary{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;list-style:none;background:#fbfcfd}.admin-body .itinerary-event-collapsible>summary::-webkit-details-marker{display:none}.admin-body .itinerary-event-collapsible>summary:before{content:'+';width:24px;height:24px;display:grid;place-items:center;border:1px solid #b9cbd4;border-radius:50%;color:#1e91cf;font-size:18px}.admin-body .itinerary-event-collapsible[open]>summary:before{content:'−'}.itinerary-event-summary-type{padding:4px 8px;border-radius:3px;background:#e8f2f7;color:#31708d;font-size:.72rem}.itinerary-event-collapsible>summary em{margin-left:auto;color:#71838c;font-size:.75rem;font-style:normal}.itinerary-event-collapsible[open]>summary em{font-size:0}.itinerary-event-collapsible[open]>summary em:after{content:'收起';font-size:.75rem}.admin-body .itinerary-event-collapsible>.muted-text,.admin-body .itinerary-event-collapsible>form{margin-left:20px;margin-right:20px}.admin-body .itinerary-event-collapsible>.muted-text{margin-top:16px}
.admin-body .case-task-row>.muted-text{display:flex;align-items:center;gap:8px;margin:-2px 0 16px;padding-bottom:12px;border-bottom:1px solid #edf1f3;color:#58717e;font-size:.82rem;font-weight:700}
.admin-body .case-task-row form.form-grid{display:grid;width:100%;box-sizing:border-box;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
.admin-body .case-task-row label{display:flex;flex-direction:column;gap:6px;margin:0}
.admin-body .case-task-row label>span{color:#526a76;font-size:.78rem;font-weight:700}
.admin-body .case-task-row input,.admin-body .case-task-row textarea,.admin-body .case-task-row select{width:100%;box-sizing:border-box;border:1px solid #ccd9df;border-radius:4px;background:#fbfcfd;padding:9px 10px;color:#243c48}
.admin-body .case-task-row input:focus,.admin-body .case-task-row textarea:focus,.admin-body .case-task-row select:focus{outline:2px solid rgba(30,145,207,.2);border-color:#1e91cf;background:#fff}
.admin-body .case-task-row .span-2{grid-column:1/-1}
.admin-body .case-task-row .check{flex-direction:row;align-items:center;gap:8px;padding-top:28px}
.admin-body .case-task-row .check input{width:auto}
.admin-body .case-task-row button{justify-self:end;min-width:120px;grid-column:2}
@media(max-width:700px){.admin-body .case-task-row{padding:16px}.admin-body .case-task-row form.form-grid{grid-template-columns:1fr}.admin-body .case-task-row .span-2{grid-column:auto}.admin-body .case-task-row button{grid-column:auto;width:100%}.admin-body .case-task-row .check{padding-top:0}}
.admin-body .panel table{width:100%;table-layout:auto}.admin-body .panel table th:first-child{width:18%}.admin-body .panel table th:nth-child(2){width:18%}.admin-body .panel table th:nth-child(3){width:14%}.admin-body .panel table th:nth-child(4){width:auto}.admin-body .panel table th:nth-child(5){width:8%}.admin-body .panel table th:last-child{width:190px}.admin-body .table-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.admin-body .table-actions form{display:inline-flex;margin:0}.admin-body .table-actions .button{min-width:34px;padding:7px 9px}.admin-body .table-actions .button.danger{min-width:52px}@media(max-width:760px){.admin-body .panel table{min-width:760px}.admin-body .panel .table-wrap{overflow-x:auto}.admin-body .panel table th:last-child{width:190px}}
