.public-transport-fields{
  display:grid;
  gap:10px;
  padding:10px;
  border:1px solid #c4b5fd;
  border-radius:10px;
  background:#f5f3ff;
}
.public-transport-fields[hidden]{display:none}
.non-public-route[hidden]{display:none}
.service-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.service-editor-head strong{font-size:.84rem;color:#5b21b6}
.service-editor-head p{margin:3px 0 0;color:var(--muted);font-size:.72rem;line-height:1.45}
.service-editor-head button{flex:0 0 auto;color:#5b21b6;border-color:#c4b5fd}
.boarding-buffer{max-width:240px}
.service-list{display:grid;gap:9px}
.service-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  padding:9px;
  border:1px solid #ddd6fe;
  border-radius:9px;
  background:#fff;
}
.service-row-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.service-row-head b{font-size:.78rem;color:#5b21b6}
.service-row-head .remove-service{min-height:28px;padding:3px 7px;color:var(--danger);font-size:.7rem}
.service-note{grid-column:1/-1}
.transit-summary{display:grid;gap:3px;margin-top:3px}
.transit-service-line{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:.78rem;color:var(--ink)}
.transit-service-line strong{font-size:.82rem}
.transit-badge{display:inline-block;padding:1px 6px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-size:.66rem;font-weight:800}
.transit-badge.reserved{background:#dcfce7;color:#166534}
.transit-badge.last{background:#ffedd5;color:#9a3412}
.transit-plan{color:var(--muted);font-size:.7rem}
.transit-note{font-size:.7rem;color:var(--muted)}
.service-choice{grid-column:1/-1!important}
@media(max-width:720px){.service-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .service-editor-head{display:grid}
  .service-editor-head button{width:100%}
  .boarding-buffer{max-width:none}
}
@media(max-width:390px){.service-row{grid-template-columns:1fr}.service-row-head,.service-note{grid-column:auto}}
