.admission-fields { padding: 1rem; border: 1px solid var(--line); border-radius: var(--radius-s); }
.admission-fields > summary { font-size: 0.85rem; font-weight: 600; }
.admission-fields .field-hint { margin-block: 0.8rem 0; }
.admission-fields__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.admission-fields__grid input { min-width: 0; width: 100%; }
.admission-fields__group { display: grid; grid-template-columns: minmax(0, 1fr) 5rem; gap: 0.75rem; min-width: 0; padding: 0; border: 0; }
.admission-fields__group legend { margin-bottom: 0.5rem; font-size: 0.85rem; font-weight: 600; }
.admission-fields__total, .admission-prices__total { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; font-size: 0.85rem; font-weight: 600; }
.admission-prices__total { border-top: 1px solid var(--line); padding-top: 0.75rem; margin-bottom: 0; }
.admission-prices__calculation { display: block; color: var(--ink-soft); font-size: 0.75rem; margin-top: 0.25rem; }
@media (max-width: 600px) { .admission-fields__grid { grid-template-columns: minmax(0, 1fr); } }
.admission-prices { margin-top: 1rem; padding: 0.85rem 1rem; border-radius: var(--radius-s); background: var(--surface-soft); font-family: var(--font-body); }
.admission-prices__heading { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.3rem 0.7rem; margin: 0 0 0.5rem; color: var(--ink); font-size: 0.8rem; font-weight: 600; }
.admission-prices__heading > span { color: var(--ink-soft); font-size: 0.72rem; font-weight: 400; }
.admission-prices dl { margin: 0; }
.admission-prices dl > div { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; padding-block: 0.45rem; font-size: 0.8rem; }
.admission-prices dd { margin: 0; flex-shrink: 0; white-space: nowrap; }
.itinerary-pass__fares, .itinerary-pass__editor { width: 100%; min-width: 0; }
.itinerary-pass__fares:empty { display: none; }
.itinerary-pass__editor > summary { color: var(--accent); font-size: 0.85rem; font-weight: 600; cursor: pointer; }
.itinerary-pass__editor .itinerary-form { margin-top: 1rem; }
