/* Module identity tokens; customer branding remains independently configurable. */
.platform-pagination, .platform-pagination-controls { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.platform-pagination { margin:20px 0; color:var(--muted); font-size:.9rem; }
.platform-pagination .btn[aria-disabled=true] { opacity:.5; pointer-events:none; }
.travel-upload { margin:0 0 16px; }
.travel-upload-preview { display:block; width:100%; max-height:260px; object-fit:cover; border-radius:10px; margin-bottom:20px; }
.travel-cover-section { margin-top:28px; }
.travel-cover-placeholder { display:flex; gap:18px; align-items:center; min-height:140px; padding:28px; border:1px dashed var(--border); border-radius:10px; background:var(--module-travel-soft); color:var(--module-travel-secondary); }
.travel-cover-placeholder svg { width:48px; height:48px; flex-shrink:0; }
.travel-form .multiselect { width:100%; }
.travel-form .multiselect label { margin:0; }
:root {
  --module-travel-card-start: #8f4f1c;
  --module-travel-card-end: #c4762e;
  --module-travel-card-text: #99521b;
  --module-travel-chart: #c27c38;
  --module-travel-primary: #a84c00;
  --module-travel-secondary: #803900;
  --module-travel-accent: #b65300;
  --module-travel-soft: #fff0df;
  --module-travel-on-primary: #ffffff;
  --module-groups-primary: #f2cf3a;
  --module-groups-secondary: #6b5600;
  --module-groups-accent: #e1b900;
  --module-groups-soft: #fff8ce;
  --module-groups-on-primary: #352c00;
}
.shell-groups {
  --brand-primary: var(--module-groups-primary);
  --brand-secondary: var(--module-groups-secondary);
  --brand-accent: var(--module-groups-accent);
  --brand-on-primary: var(--module-groups-on-primary);
  --heading-subtitle: var(--module-groups-secondary);
  accent-color: var(--module-groups-accent);
}
.shell-travel {
  --brand-primary: var(--module-travel-primary);
  --brand-secondary: var(--module-travel-secondary);
  --brand-accent: var(--module-travel-accent);
  --brand-on-primary: var(--module-travel-on-primary);
  --heading-subtitle: var(--module-travel-secondary);
  accent-color: var(--module-travel-primary);
}
.shell-groups .sidebar { background: #302c13; }
.shell-travel .sidebar { background: linear-gradient(180deg, #57230d, transparent 38%), #493013; }
.shell-groups .nav-item.active { background: var(--module-groups-primary); color: var(--module-groups-on-primary); }
.shell-travel .nav-item.active { background: var(--module-travel-primary); color: var(--module-travel-on-primary); }
.shell-travel .nav-accordion.is-open .nav-parent:not(.active) { box-shadow: inset 3px 0 var(--module-travel-primary); }
.shell-groups .nav-submenu-link.active { color: var(--module-groups-primary); }
.shell-travel .nav-submenu-link.active { color: #ffbd78; }
.shell-groups .sidebar-profile-avatar { background: var(--module-groups-soft); color: var(--module-groups-secondary); }
.shell-travel .sidebar-profile-avatar { background: var(--module-travel-soft); color: var(--module-travel-secondary); }
.shell-groups .credit-panel-hero { background: var(--module-groups-secondary); }
.shell-groups .wizard-tab.is-current, .shell-groups .wizard-tab-marker { background: var(--module-groups-soft); }
.shell-groups .feedback-panel__body.feedback-chat, .shell-groups .feedback-panel__body.feedback-new-chat { background: var(--module-groups-soft); }
.chip.product-type-groups { color: var(--module-groups-secondary); background: var(--module-groups-soft); }
.chip.product-type-travel { color: var(--module-travel-secondary); background: var(--module-travel-soft); }
.auth-product-groups { border-left: 4px solid var(--module-groups-accent); }
.auth-product-groups .auth-product-type, .auth-product-groups .auth-product-enter { color: var(--module-groups-secondary); }
.auth-product-travel { border-left: 4px solid var(--module-travel-primary); }
.travel-grid, .travel-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 20px; margin: 24px 0; }
.travel-card, .travel-stats .card, .travel-section { padding: 24px; }
.travel-card { color: var(--text); text-decoration: none; border-top: 4px solid var(--module-travel-primary); }
.travel-stats strong { display: block; font-size: 1.8rem; color: var(--brand-secondary); }
.travel-meta { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.travel-tabs { display: flex; overflow-x: auto; gap: 8px; padding: 8px 0 20px; }
.travel-tabs a { flex-shrink: 0; }
.travel-program-item { display: grid; grid-template-columns: 60px minmax(0, 1fr) auto; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--border); overflow-wrap: anywhere; }
.travel-program-item p { margin: 4px 0; }
.travel-public-hero { padding: 48px 24px; background: var(--module-travel-soft); border-bottom: 4px solid var(--module-travel-primary); }
@media(max-width:600px) { .travel-program-item { grid-template-columns: 52px minmax(0, 1fr); } .travel-program-item form { grid-column: 2; } }

.travel-hero-image { width:100%; max-height:340px; object-fit:cover; border-radius:12px; }

.one-product-wordmark {color:var(--module-travel-on-primary);font-size:22px;}
/* Opt in from Travel forms; shared Club/Events screens keep their own layout. */
.travel-form .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:none; }
.travel-form .form-row { margin-bottom:16px; }
.travel-form .form-row > label { margin:0; }
.travel-form label:has(input[type=checkbox]) { flex-direction:row; align-items:center; }
.shell-travel .travel-stats .card { text-decoration:none; color:var(--text); }
.shell-travel .travel-section { margin-bottom:20px; }
.travel-form-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:20px 0; }
@media(max-width:760px) { .travel-form .form-grid { grid-template-columns:minmax(0,1fr); } }

.app-shell-public { grid-template-columns:minmax(0,1fr); }
.app-shell-public .content { margin-left:0; min-width:0; }
.app-shell-public main { width:100%; max-width:1080px; margin:0 auto; }
.app-shell-public .topbar-mobile-start { display:none; }
.travel-public-brand { font-size:1.15rem; font-weight:700; color:var(--brand-secondary); text-decoration:none; }
.shell-travel .travel-public-hero { border-radius:12px; }
.shell-travel .travel-section, .shell-travel .travel-public-hero { overflow-wrap:anywhere; }

.shell-travel .travel-day-title { flex-direction:row; flex-wrap:wrap; align-items:center; }
.shell-travel .travel-day-title input[type=text] { flex:1; min-width:min(200px,100%); }
details.travel-form-section { padding:20px; }
details.travel-form-section > form { margin-top:20px; }

.travel-deadline { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; padding:16px 0; border-bottom:1px solid var(--border); text-decoration:none; }

.travel-stats { grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr)); }

/* Travel composes the shared Club/Events wizard with a date-based itinerary. */
.travel-wizard { min-width:0; padding-bottom:90px; }
.travel-wizard .wizard-panel { padding:28px; }
.travel-wizard .wizard-hint { max-width:76ch; line-height:1.6; margin-bottom:24px; }
.travel-wizard .form-row .wizard-hint { margin:0; font-weight:400; }
.travel-wizard .wizard-fixed-actions { margin:0; }
.travel-program-toolbar, .travel-activity-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; }
.travel-program-toolbar > div { flex:1; min-width:min(280px,100%); }
.travel-program-toolbar h2 { margin:0 0 8px; font-size:1.2rem; }
.travel-program-toolbar .wizard-hint { margin:0; }
.travel-program-toolbar > .btn { flex-shrink:0; }
.travel-program-summary { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 20px; padding:18px 0; margin-top:16px; border-bottom:1px solid var(--border); font-size:.9rem; }
.travel-program-summary span, .travel-save-status { color:var(--muted); font-size:.85rem; }
.travel-itinerary { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; margin-top:20px; }
.travel-day-rail { display:flex; gap:10px; overflow-x:auto; padding:2px 2px 12px; scroll-padding:8px; }
.travel-day-button { flex:1 0 170px; max-width:230px; display:flex; flex-direction:column; align-items:flex-start; text-align:left; gap:6px; border:1px solid var(--border); border-radius:10px; padding:16px; background:var(--surface,white); color:var(--text); cursor:pointer; overflow-wrap:anywhere; }
.travel-day-button.is-current { background:var(--module-travel-soft); border-color:var(--module-travel-primary); box-shadow:inset 0 3px var(--module-travel-primary); }
.travel-day-button:hover { border-color:var(--module-travel-primary); }
.travel-day-button small, .travel-day-button span { color:var(--muted); font-size:.8rem; }
.travel-day-button small:last-child { margin-top:auto; padding-top:6px; }
.travel-day-content { min-width:0; }
.travel-day-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:16px; margin-bottom:20px; }
.travel-day-heading h3 { margin:0; }
.travel-day-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.travel-day-fields { padding:20px; border-radius:12px; background:var(--surface, white); margin-bottom:24px; min-width:0; }
.travel-day-fields > .form-row, .travel-day-fields > .location-picker { grid-column:1 / -1; min-width:0; }
.location-picker { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; min-width:0; }
.location-picker .form-row { min-width:0; margin:0; }
.location-picker input, .location-picker select, .location-picker .branded-select { width:100%; min-width:0; }
.location-picker input[type=search] { box-sizing:border-box; height:44px; padding:0 .75rem; border:1px solid var(--border); border-radius:6px; background:var(--surface,white); color:var(--text); font:inherit; font-size:.95rem; appearance:none; }
.location-picker input[type=search]:focus { outline:2px solid var(--primary); outline-offset:1px; }
.location-picker input[type=search]:disabled { background:var(--bg, #f6f7f9); color:var(--muted); }
.location-picker-control { position:relative; min-width:0; }
.location-picker-control input[type=search] { display:block; }
.location-picker-results { position:absolute; z-index:30; top:calc(100% + 4px); left:0; right:0; max-height:280px; overflow-y:auto; background:var(--surface,white); border:1px solid var(--border); border-radius:10px; box-shadow:0 8px 24px rgb(0 0 0 / 12%); }
.location-picker-results[hidden] { display:none; }
.location-picker-results button { display:flex; flex-direction:column; gap:4px; padding:12px 14px; width:100%; border:0; border-bottom:1px solid var(--border); background:transparent; color:var(--text); font:inherit; text-align:left; cursor:pointer; overflow-wrap:anywhere; }
.location-picker-results button:hover, .location-picker-results button[aria-selected=true] { background:var(--module-travel-soft, #f5f5f5); }
.location-picker-results small, .location-picker-source, .location-picker-legacy { font-size:.8rem; color:var(--muted); }
.location-picker-source, .location-picker-legacy { grid-column:1 / -1; }
.location-picker-source a { color:inherit; }
@media(max-width:760px) { .location-picker { grid-template-columns:minmax(0,1fr); } }
.travel-activity-toolbar small { display:block; margin-top:5px; color:var(--muted); }
.travel-activity-shortcuts { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 8px; }
.travel-activity-shortcuts .btn { display:inline-flex; gap:8px; align-items:center; padding:8px 12px; font-size:.85rem; }
.travel-activity-shortcuts svg { width:18px; height:18px; color:var(--module-travel-primary); }
.travel-timeline-row { display:grid; grid-template-columns:100px 36px minmax(0,1fr) auto; gap:14px; align-items:start; padding:20px 0; border-bottom:1px solid var(--border); }
.travel-timeline-row > strong { font-size:.9rem; }
.travel-timeline-row > div { min-width:0; overflow-wrap:anywhere; }
.travel-timeline-row p { margin:5px 0; overflow-wrap:anywhere; }
.travel-timeline-icon { width:34px; height:34px; border-radius:50%; background:var(--module-travel-soft); color:var(--module-travel-primary); display:grid; place-items:center; }
.travel-timeline-icon svg { width:19px; height:19px; }
.travel-timeline-actions { display:flex; flex-wrap:wrap; gap:4px; }
.travel-timeline-actions .btn { padding:8px; font-size:.85rem; }
.travel-empty { padding:28px; border:1px dashed var(--border); border-radius:12px; color:var(--muted); line-height:1.6; }
.travel-editor-card { border:1px solid var(--border); padding:24px; border-radius:12px; margin-bottom:20px; }
.travel-advanced { margin-top:24px; border-top:1px solid var(--border); padding-top:20px; }
.travel-advanced > div { margin-top:20px; }
.travel-review-hero { background:var(--module-travel-soft); padding:28px; border-radius:12px; }
.travel-review-day { padding:18px 0; border-bottom:1px solid var(--border); overflow-wrap:anywhere; }
.travel-review-day h4 { margin:0 0 8px; }
.travel-review-day p { margin:6px 0; }
@media(max-width:1050px) { .travel-timeline-row { grid-template-columns:90px 34px minmax(0,1fr); } .travel-timeline-actions { grid-column:3; } }
@media(max-width:760px) { .travel-wizard .wizard-panel { padding:18px; } .travel-day-button { flex:0 0 165px; } .travel-day-fields { padding:14px; } .travel-editor-card { padding:16px; } .travel-wizard .wizard-fixed-actions { gap:8px; flex-wrap:wrap; } .travel-wizard .wizard-fixed-actions .btn { padding:10px 12px; } .travel-save-status { order:-1; flex-basis:100%; } .travel-save-status:empty { display:none; } }
@media(max-width:480px) { .travel-program-toolbar > .btn { width:100%; } .travel-timeline-row { grid-template-columns:34px minmax(0,1fr); gap:10px; } .travel-timeline-row > strong { grid-column:2; } .travel-timeline-icon { grid-column:1; grid-row:1 / 3; } .travel-timeline-actions, .travel-timeline-row > div { grid-column:2; } }

.travel-day-fields > label:last-child { grid-column:1 / -1; }
.travel-day-fields .branded-select { width:100%; }

.travel-day-settings { border:1px solid var(--border); border-radius:12px; margin-bottom:20px; }
.travel-day-settings summary { padding:16px; cursor:pointer; font-weight:600; }
.travel-day-settings summary span { font-weight:400; margin-left:8px; overflow-wrap:anywhere; }
.travel-day-settings .travel-day-fields { margin:0; }

/* Daily Travel workspace uses the shared shell, cards and controls. */
:root { --module-travel-sidebar: #292a25; --module-travel-nav-active: #ffbd78; }
.shell-travel .sidebar { background: var(--module-travel-sidebar); }
.shell-travel .nav-submenu-link.active { color: var(--module-travel-nav-active); }
.travel-workspace-heading { gap:20px; align-items:flex-start; }
.travel-workspace-heading p { margin:6px 0 0; color:var(--muted); }
.travel-workspace-heading .form-actions { margin:0; }
.travel-stats-compact { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:20px 0 28px; }
.shell-travel .travel-stats-compact .card { padding:18px 20px; }
.travel-stats-compact small { color:var(--muted); }
.travel-stats-compact strong { margin-top:6px; font-size:1.55rem; }
.travel-section-heading { display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:space-between; margin:22px 0 16px; }
.travel-section-heading h2 { margin:0; }
.travel-section-heading p { color:var(--muted); margin:5px 0 0; }
.travel-section > .travel-section-heading:first-child { margin-top:0; }
.travel-media-library { margin-top:24px; }
.travel-media-library .media-current { height:132px; }
.travel-media-library .media-thumb { width:100%; height:100%; max-height:132px; padding:0; object-fit:cover; }
.travel-media-library .logo-preview-surface .media-thumb { padding:12px; object-fit:contain; }
.travel-media-library strong { overflow-wrap:anywhere; }
.travel-filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:20px; }
.travel-filters > input { flex:1; min-width:200px; }
.travel-trip-row { overflow:hidden; margin-bottom:24px; }
.travel-trip-row-heading { display:flex; align-items:center; gap:20px; padding:24px; }
.travel-trip-row-heading h2 { margin:8px 0 4px; }
.travel-trip-row-heading h2 a { color:var(--text); text-decoration:none; }
.travel-trip-row-heading p { margin:0; color:var(--muted); }
.travel-trip-thumb, .travel-trip-symbol { width:92px; height:92px; border-radius:12px; object-fit:cover; flex-shrink:0; }
.travel-trip-symbol { display:grid; place-items:center; background:var(--module-travel-soft); color:var(--module-travel-primary); }
.travel-trip-symbol svg { width:42px; height:42px; }
.travel-trip-capacity { margin-left:auto; display:grid; text-align:right; white-space:nowrap; gap:5px; }
.travel-trip-capacity strong { font-size:1.35rem; }
.travel-trip-capacity span { color:var(--muted); font-size:.85rem; }
.travel-trip-day-strip { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); border-block:1px solid var(--border); }
.travel-trip-day-strip a { display:grid; align-content:start; gap:6px; padding:18px; text-decoration:none; color:var(--text); border-right:1px solid var(--border); }
.travel-trip-day-strip a:hover { background:var(--module-travel-soft); }
.travel-trip-day-strip small { color:var(--module-travel-secondary); }
.travel-trip-day-strip strong { font-size:.9rem; }
.travel-trip-day-strip span { font-size:.8rem; color:var(--muted); }
.travel-trip-row-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:16px 24px; }
.travel-trip-row-footer > span { color:var(--muted); font-size:.9rem; }
.travel-workspace-tabs { display:flex; gap:22px; overflow-x:auto; border-bottom:1px solid var(--border); margin:20px 0 24px; }
.travel-workspace-tabs a { padding:12px 0; text-decoration:none; color:var(--muted); font-weight:600; white-space:nowrap; border-bottom:3px solid transparent; }
.travel-workspace-tabs a.is-active { color:var(--module-travel-secondary); border-color:var(--module-travel-primary); }
.travel-workspace-tabs a > span { margin-left:8px; background:var(--module-travel-soft); padding:2px 7px; border-radius:6px; }
.travel-day-switcher { display:flex; overflow-x:auto; gap:10px; padding:4px 0 10px; }
.travel-day-switcher a { min-width:150px; max-width:210px; flex:1 0 150px; display:grid; align-content:start; gap:6px; padding:14px 16px; border:1px solid var(--border); border-radius:10px; text-decoration:none; background:var(--surface,#fff); color:var(--text); }
.travel-day-switcher span, .travel-day-switcher small { font-size:.8rem; color:var(--muted); }
.travel-day-switcher strong { font-size:.9rem; }
.travel-day-switcher .is-active { border-color:var(--module-travel-primary); background:var(--module-travel-soft); box-shadow:inset 0 3px var(--module-travel-primary); }
.travel-workspace-columns { display:grid; grid-template-columns:minmax(0,2fr) minmax(260px,1fr); align-items:start; gap:24px; }
.travel-workspace-columns > *, .travel-agenda-row > div { min-width:0; }
.travel-day-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr)); gap:16px; margin:20px 0 28px; }
.travel-day-card { display:flex; flex-direction:column; padding:20px; color:var(--text); text-decoration:none; transition:border-color .15s; }
.travel-day-card:hover { border-color:var(--module-travel-primary); }
.travel-day-card h3 { margin:16px 0 6px; font-size:1.08rem; }
.travel-day-card > p { margin:0 0 20px; color:var(--muted); font-size:.9rem; }
.travel-day-card-top { display:flex; align-items:center; gap:12px; }
.travel-date-tile { display:grid; place-items:center; border-radius:8px; background:var(--module-travel-soft); color:var(--module-travel-secondary); padding:8px 12px; font-size:.75rem; }
.travel-date-tile strong { font-size:1.4rem; line-height:1.2; }
.travel-day-card-foot { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-top:auto; padding-top:14px; border-top:1px solid var(--border); font-size:.8rem; color:var(--muted); }
.travel-agenda-row { display:grid; grid-template-columns:48px 34px minmax(0,1fr); gap:14px; padding:22px 0; border-bottom:1px solid var(--border); }
.travel-agenda-row:last-child { border-bottom:0; }
.travel-agenda-row time { font-weight:700; font-size:.95rem; }
.travel-agenda-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:8px; background:var(--module-travel-soft); color:var(--module-travel-secondary); }
.travel-agenda-icon svg { width:22px; height:22px; }
.travel-agenda-row h3 { margin:4px 0; font-size:1rem; }
.travel-agenda-row p { margin:5px 0; font-size:.9rem; color:var(--muted); }
.travel-agenda-row .page-subtitle { font-size:.75rem; }
.travel-inline-action { display:inline-block; margin-top:10px; font-size:.85rem; font-weight:600; }
.travel-definition-list { margin:16px 0; }
.travel-definition-list > div { display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--border); font-size:.85rem; }
.travel-definition-list dt { color:var(--muted); }
.travel-definition-list dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.travel-one-note { background:var(--module-travel-soft); }
.travel-prewrap { white-space:pre-wrap; }
.travel-golf-facts { display:flex; flex-wrap:wrap; gap:20px; padding:14px 0; color:var(--muted); font-size:.9rem; }
.travel-event-actions { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; margin:16px 0; }
.travel-event-actions a { display:flex; justify-content:space-between; align-items:center; border:1px solid var(--border); padding:16px; border-radius:8px; text-decoration:none; color:var(--text); font-weight:600; font-size:.9rem; }
.travel-event-actions a:hover { background:var(--module-travel-soft); border-color:var(--module-travel-primary); }
.travel-helper { font-size:.85rem; color:var(--muted); }
.travel-roster > div, .shell-travel .travel-roster > label { display:flex; flex-direction:row; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; margin:0; padding:16px 0; border-bottom:1px solid var(--border); }
.travel-roster > label > span { display:flex; align-items:center; gap:12px; }
.travel-roster { margin-bottom:20px; }
.travel-check-row { display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; align-items:center; padding:16px 0; border-bottom:1px solid var(--border); text-decoration:none; color:var(--text); font-size:.9rem; }
.travel-context-banner { padding:16px 20px; background:var(--module-travel-soft); border-radius:10px; margin-bottom:20px; }
.travel-context-banner a { font-weight:700; }
.travel-context-banner p { margin:5px 0 0; }
.travel-form fieldset { border:0; padding:0; margin:0; min-width:0; }
@media(max-width:1100px) { .travel-workspace-columns { grid-template-columns:minmax(0,1fr); } .travel-workspace-columns > aside { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; } }
@media(max-width:700px) { .travel-stats-compact { grid-template-columns:repeat(2,minmax(0,1fr)); } .travel-trip-row-heading { flex-wrap:wrap; padding:18px; gap:12px; } .travel-trip-symbol, .travel-trip-thumb { width:56px; height:56px; } .travel-trip-capacity { margin-left:0; text-align:left; } .travel-trip-row-footer { padding:16px; } .travel-agenda-row { grid-template-columns:42px minmax(0,1fr); gap:12px; } .travel-agenda-icon { display:none; } .travel-section { padding:18px; } }

.travel-roster-row { border-bottom: 1px solid var(--border-color, #e5e7eb); padding-bottom: .6rem; }
.travel-golf-profile { display: flex; flex-wrap: wrap; gap: .75rem; padding: 0 .75rem .5rem; }
.travel-golf-profile label { display: grid; gap: .3rem; font-size: .85rem; flex: 1 1 160px; border: 0; padding: 0; }
.travel-golf-profile input, .travel-golf-profile select { width: 100%; min-width: 0; }

/* Travel lists reuse the One table container, tools, actions and mobile cards. */
.travel-table-section { margin: 1.5rem 0; }
.travel-table-pagination, .travel-table-actions, .travel-table-create { margin-top: 1rem; }
.modal-body .table-container > .travel-table { min-width: 100%; }
.travel-table th, .travel-table td { white-space: normal; }
.travel-table td { overflow-wrap: anywhere; }
.travel-table .travel-booking-number { white-space: nowrap; }
.travel-table .travel-next-payment { min-width: 8.5rem; }
.travel-table th.actions-cell, .travel-table td.actions-cell { width: 3rem; }
.travel-table .travel-money { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.travel-cell-stack { display: grid; gap: .2rem; min-width: 0; }
.travel-cell-stack small, .travel-cell-meta { color: var(--muted); font-size: .8rem; }
.travel-cell-meta { display: block; margin-top: .2rem; }
.travel-table-description { white-space: pre-line !important; max-width: 40rem; }
.travel-table input[type="number"], .travel-table select { width: 100%; min-width: 0; max-width: 12rem; }
.travel-table .bulk-cell { width: 3rem; }
@media (max-width: 720px) {
  .travel-table.table-mobile-cards td.actions-cell, .travel-table.table-mobile-cards td.bulk-cell { width: 100%; }
  .travel-table.table-mobile-cards .travel-money { white-space: normal; }
  .travel-table.table-mobile-cards .travel-booking-number { white-space: normal; }
  .travel-table.table-mobile-cards .travel-next-payment { min-width: 0; }
  .travel-table-filters > * { min-width: 0; }
}

.travel-message-preview { max-width: 36rem; min-width: 16rem; white-space: normal; }
.travel-message-preview p { margin: .35rem 0; }
.travel-message-preview small { color: var(--muted); line-height: 1.6; }
.travel-channel-options { border: 1px solid var(--border); border-radius: .5rem; padding: 1rem; display: flex; flex-wrap: wrap; gap: 1.5rem; }
.travel-channel-options legend { padding: 0 .35rem; }
.travel-inline-form { display: inline-block; margin: .4rem 0; }

.travel-table-meta { display: block; margin-top: .35rem; color: var(--muted); font-size: .8rem; line-height: 1.5; }
.travel-inline-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }

/* Keep the golf picker compact when there is no search feedback. */
[data-travel-course-status]:empty { display: none; }

/* Trip listings keep one line per row; narrower screens scroll horizontally. */
.travel-trips-table th, .travel-trips-table td { white-space: nowrap; overflow-wrap: normal; }

.travel-participant-toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; flex-wrap:wrap; }
.travel-participant-toolbar .table-tools { margin:0; flex:1; }
.travel-participant-toolbar > .form-actions { margin:0; margin-left:auto; }
.travel-participants-table th, .travel-participants-table td { white-space:nowrap; overflow-wrap:normal; }
.travel-access-actions { display:flex; align-items:center; gap:.5rem; }
.travel-access-actions form { margin:0; }
