.svg-icon {
  width: 100%;
  height: 100%;
  display: block;
}

/* Assisted phone booking: customer-aligned catalog and multi-stop Outdoor flow */
.phone-booking-v2 { display: grid; gap: 16px; }
.phone-booking-v2 [hidden] { display: none !important; }
.phone-booking-v2 .editor-card-head.compact { padding-bottom: 17px; }
.catalog-flow-panel,.outdoor-flow-panel { overflow: visible; }
.phone-product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; padding: 18px 24px 22px; }
.phone-product-card { position: relative; display: grid; grid-template-columns: 100px minmax(0,1fr) 28px; align-items: center; gap: 15px; min-height: 126px; padding: 14px; text-align: left; color: var(--navy); background: #fff; border: 1px solid var(--line); border-radius: 16px; cursor: pointer; transition: .18s ease; }
.phone-product-card:hover { transform: translateY(-2px); border-color: #ff8794; box-shadow: 0 13px 28px rgba(16,45,82,.09); }
.phone-product-card.selected { border-color: var(--red); background: #fff7f8; }
.phone-product-image { display: grid; place-items: center; width: 100px; height: 92px; overflow: hidden; color: #315e88; background: #f2f6fb; border-radius: 13px; }
.phone-product-image img { width: 100%; height: 100%; object-fit: cover; }
.phone-product-image svg { width: 34px; height: 34px; }
.phone-product-card > span:nth-child(2) { display: grid; gap: 5px; min-width: 0; }
.phone-product-card small { color: var(--red); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.phone-product-card strong { font-size: 17px; line-height: 1.2; }
.phone-product-card em { color: var(--muted); font-size: 11px; font-style: normal; line-height: 1.45; }
.phone-product-card > i { display: grid; place-items: center; width: 25px; height: 25px; color: transparent; background: #fff; border: 1px solid #afc1d4; border-radius: 50%; font-style: normal; }
.phone-product-card.selected > i { color: #fff; background: var(--red); border-color: var(--red); }
.phone-cab-step { padding: 18px 24px 24px; }
.cab-selection-head { margin-bottom: 14px; padding: 12px 14px; background: linear-gradient(115deg,#f4f8fd,#fff); border: 1px solid #dce7f1; border-radius: 13px; }
.selection-kicker { display: block; margin-bottom: 3px; color: var(--red); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.cab-selection-head h3 { margin: 0; font-size: 16px; }
.cab-selection-head p { margin: 3px 0 0; color: var(--muted); font-size: 10px; }
.phone-cab-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.phone-cab-card { position: relative; display: grid; grid-template-columns: 145px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; gap: 7px 13px; min-height: 150px; padding: 12px; text-align: left; color: var(--navy); background: #fff; border: 1px solid var(--line); border-radius: 16px; cursor: pointer; transition: .18s ease; }
.phone-cab-card[hidden] { display: none !important; }
.phone-cab-card:hover { transform: translateY(-2px); border-color: #ff8794; box-shadow: 0 13px 28px rgba(16,45,82,.09); }
.phone-cab-card.selected { background: #fff7f8; border: 2px solid var(--red); padding: 13px; box-shadow: 0 12px 28px rgba(245,43,63,.11); }
.phone-cab-image { grid-row: 1 / 3; display: grid; place-items: center; height: 126px; overflow: hidden; color: #315e88; background: linear-gradient(145deg,#f7faff,#edf3f9); border-radius: 13px; }
.phone-cab-image img { width: 100%; height: 100%; padding: 7px; object-fit: contain; }
.phone-cab-image svg { width: 42px; height: 42px; }
.phone-cab-copy { align-self: end; display: grid; gap: 4px; min-width: 0; }
.phone-cab-copy strong { font-size: 17px; }
.phone-cab-copy small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.phone-cab-price { position: relative; align-self: start; display: grid; gap: 3px; padding-top: 8px; border-top: 1px dashed var(--line); }
.phone-cab-price small { color: var(--muted); font-size: 9px; }
.phone-cab-price strong { color: var(--red); font-size: 20px; }
.phone-cab-price i { position: absolute; right: 0; bottom: 2px; display: grid; place-items: center; width: 24px; height: 24px; color: transparent; background: #fff; border: 1px solid #afc1d4; border-radius: 50%; font-style: normal; }
.phone-cab-card.selected .phone-cab-price i { color: #fff; background: var(--red); border-color: var(--red); }
.round-trip-rule { display: flex; align-items: center; gap: 13px; margin: 20px 24px 0; padding: 15px 17px; color: #0d4b43; background: #effaf7; border: 1px solid #c9ebe2; border-radius: 14px; }
.round-trip-rule > span { display: grid; place-items: center; width: 38px; height: 38px; color: #0b9c76; background: #fff; border-radius: 11px; }
.round-trip-rule svg { width: 22px; height: 22px; }
.round-trip-rule div { display: grid; gap: 2px; }
.round-trip-rule small { color: #4f746d; font-size: 10px; }
.outdoor-stop-row { grid-template-columns: 34px minmax(260px,1fr) 190px 35px; }
.stepper-field { display: grid; grid-template-columns: 38px minmax(55px,1fr) 38px; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; }
.stepper-field button { color: var(--navy); background: #f5f8fc; border: 0; font-size: 20px; cursor: pointer; }
.stepper-field .field { min-width: 0; padding-inline: 5px; text-align: center; border: 0; border-inline: 1px solid var(--line); border-radius: 0; }
.outdoor-quote-actions { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 24px 24px; }
.outdoor-quote-actions .button { display: inline-flex; align-items: center; gap: 8px; }
.outdoor-quote-actions .button svg { width: 18px; height: 18px; }
.outdoor-live-summary { display: flex; gap: 10px; }
.outdoor-live-summary span { display: grid; gap: 3px; min-width: 130px; padding: 10px 14px; background: #f4f7fb; border-radius: 11px; }
.outdoor-live-summary small { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.outdoor-quote-result { margin: 0 24px 24px; padding: 18px; background: #f8fbff; border: 1px solid #cbd9e8; border-radius: 16px; }
.outdoor-route-metrics { display: grid; grid-template-columns: minmax(240px,2fr) repeat(3,minmax(120px,1fr)); gap: 10px; margin-bottom: 18px; }
.outdoor-route-metrics span { display: grid; gap: 4px; padding: 13px; background: #fff; border: 1px solid var(--line); border-radius: 11px; }
.outdoor-route-metrics small { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.outdoor-route-metrics strong { font-size: 13px; line-height: 1.35; }
.outdoor-cab-card { background: #fff; }
.calculated-field { display: flex; align-items: center; min-height: 47px; padding: 11px 14px; color: #315e88; background: #f2f7fd; border: 1px solid #d7e3ef; border-radius: 10px; font-size: 12px; font-weight: 700; line-height: 1.4; }
.cab-fallback-icon { font-size: 38px; }

@media (max-width: 1280px) {
  .booking-mode-tabs.four { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .phone-product-grid,.phone-cab-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .outdoor-route-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 1600px) and (min-width: 1281px) {
  .phone-product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .phone-cab-card { grid-template-columns: 120px minmax(0,1fr); }
}

@media (max-width: 760px) {
  .booking-mode-tabs.four,.phone-product-grid,.phone-cab-grid,.outdoor-route-metrics { grid-template-columns: 1fr; }
  .phone-product-grid,.phone-cab-step { padding-inline: 14px; }
  .phone-product-card { grid-template-columns: 78px minmax(0,1fr) 24px; }
  .phone-product-image { width: 78px; height: 76px; }
  .phone-cab-card { grid-template-columns: 1fr; grid-template-rows: 118px auto auto; }
  .phone-cab-image { grid-row: auto; height: 118px; }
  .outdoor-stop-row { grid-template-columns: 32px minmax(0,1fr); }
  .outdoor-stop-row .route-address,.outdoor-stop-row .route-days { grid-column: 2; }
  .outdoor-stop-row .route-stop-remove { grid-column: 2; justify-self: end; }
  .outdoor-quote-actions { align-items: stretch; flex-direction: column; }
  .outdoor-live-summary { display: grid; grid-template-columns: 1fr 1fr; }
}

.nav-icon {
  width: 22px;
  height: 22px;
  border: 0;
  border-radius: 0;
  flex: 0 0 22px;
  opacity: 1;
}

.nav-icon::after { display: none; }
.sidebar { width: 292px; padding: 22px 16px; }
.app-frame { width: calc(100% - 292px); margin-left: 292px; }
.sidebar-nav { gap: 3px; padding: 0 4px 18px 0; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.28) transparent; }
.nav-group { border-radius: 14px; }
.nav-parent { width: 100%; border: 0; cursor: pointer; text-align: left; background: transparent; }
.nav-parent.active { background: rgba(255,255,255,.08); box-shadow: none; }
.nav-parent:hover { background: rgba(255,255,255,.09); }
.nav-label { flex: 1; }
.nav-chevron { font-size: 18px; line-height: 1; transition: transform .2s ease; }
.nav-group.open .nav-chevron { transform: rotate(180deg); }
.nav-submenu { display: none; margin: 2px 0 8px 20px; padding: 4px 0 4px 18px; border-left: 1px solid rgba(255,255,255,.15); }
.nav-group.open .nav-submenu { display: grid; gap: 2px; animation: submenu-in .18s ease; }
.submenu-link { display: flex; align-items: center; gap: 9px; min-height: 35px; padding: 7px 10px; color: #a9bed3; border-radius: 9px; font-size: 12px; font-weight: 650; }
.submenu-link:hover { color: #fff; background: rgba(255,255,255,.07); }
.submenu-link.active { color: #fff; background: linear-gradient(110deg, rgba(245,43,63,.9), rgba(245,43,63,.58)); box-shadow: 0 7px 16px rgba(245,43,63,.16); }
.submenu-icon { width: 16px; height: 16px; flex: 0 0 16px; }
.submenu-dot { width: 5px; height: 5px; margin-left: 5px; margin-right: 6px; border-radius: 50%; background: currentColor; }
@keyframes submenu-in { from { opacity: 0; transform: translateY(-3px); } to { opacity: 1; transform: translateY(0); } }

.top-search-icon { width: 17px; height: 17px; color: #4a627d; }
.eyebrow { display: inline-block; margin-bottom: 8px; color: var(--red); font-size: 10px; font-weight: 850; letter-spacing: 1.5px; text-transform: uppercase; }
.module-page-head { align-items: center; padding: 4px 2px; }
.module-page-head h1 { font-size: clamp(29px, 3vw, 40px); }
.record-chip { display: inline-flex; align-items: center; min-height: 30px; padding: 6px 10px; border-radius: 999px; color: #48627f; background: #eef4fa; border: 1px solid #dce6f0; font-size: 11px; font-weight: 800; }

.hub-intro { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; background: linear-gradient(135deg, #fff, #f8fbff); }
.hub-intro h2, .hub-intro p { margin: 0; }
.hub-intro p { margin-top: 4px; color: var(--muted); font-size: 13px; }
.hub-intro .record-chip { margin-left: auto; }
.hub-intro-icon, .module-row-icon, .editor-icon { display: grid; place-items: center; width: 46px; height: 46px; flex: 0 0 46px; color: var(--red); background: #fff0f2; border-radius: 14px; }
.module-directory { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.module-row { display: flex; align-items: center; gap: 13px; min-height: 82px; padding: 15px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 10px 27px rgba(18,45,78,.05); transition: .18s ease; }
.module-row:hover { transform: translateY(-2px); border-color: #c5d7e9; box-shadow: var(--shadow); }
.module-row-copy { display: grid; gap: 4px; min-width: 0; }
.module-row-copy strong { font-size: 14px; }
.module-row-copy small, .module-row-meta { color: var(--muted); font-size: 11px; }
.module-row-meta { margin-left: auto; padding: 5px 8px; border-radius: 8px; background: #f5f8fb; }
.module-row-arrow { color: var(--red); font-size: 18px; }

.premium-filters { align-items: center; padding: 12px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 9px 25px rgba(18,45,78,.04); }
.search-field { display: flex; align-items: center; gap: 9px; min-width: min(430px, 100%); padding-left: 12px; border: 1px solid #d5e0eb; border-radius: 11px; background: #fff; }
.search-field .nav-icon { color: #7890aa; width: 18px; height: 18px; }
.search-field input { flex: 1; min-width: 0; border: 0; outline: 0; }
.module-list-card { padding: 22px; }
.premium-table-wrap { border-radius: 16px; }
.premium-table th { position: sticky; top: 0; z-index: 1; height: 48px; background: #f7f9fc; }
.premium-table td { min-height: 66px; vertical-align: middle; }
.premium-table tbody tr { transition: background .15s ease; }
.row-id { display: inline-flex; padding: 5px 8px; border-radius: 8px; color: #526b87; background: #f1f5f9; font-size: 11px; font-weight: 800; }
.table-media { display: flex; align-items: center; gap: 11px; min-width: 210px; }
.table-media img { width: 78px; height: 52px; object-fit: contain; border-radius: 11px; padding: 4px; background: linear-gradient(135deg, #f8fbff, #eef3f8); border: 1px solid #e1e8f0; }
.table-media span, .lookup-value { display: grid; gap: 3px; }
.table-media small, .lookup-value small { color: var(--muted); font-size: 10px; }
.boolean-pill { display: inline-flex; padding: 5px 9px; border-radius: 999px; font-size: 11px; font-weight: 800; }
.boolean-pill.yes { color: #087c50; background: #e7f8f1; }
.boolean-pill.no { color: #6c7d91; background: #eef2f6; }
.actions-column { position: sticky; right: 0; z-index: 2; background: #fff; box-shadow: -7px 0 14px rgba(18,45,78,.035); }
thead .actions-column { background: #f7f9fc; }
.row-actions { display: flex; gap: 6px; }
.empty { display: grid; justify-items: center; gap: 7px; }
.empty strong { color: var(--ink); }
.empty p { margin: 0; }
.empty-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; color: var(--red); background: #fff0f2; font-size: 24px; }

.editor-shell { display: grid; gap: 16px; }
.editor-card { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow); }
.editor-card-head { display: flex; align-items: center; gap: 14px; padding: 20px 24px; background: linear-gradient(135deg, #fbfdff, #f4f8fc); border-bottom: 1px solid var(--line); }
.editor-card-head h2, .editor-card-head p { margin: 0; }
.editor-card-head h2 { font-size: 18px; }
.editor-card-head p { margin-top: 4px; color: var(--muted); font-size: 12px; }
.premium-form-grid { padding: 24px; gap: 22px 24px; }
.premium-form-grid .form-group label { font-size: 13px; }
.required-mark { color: var(--red); font-weight: 900; }
.field-help { min-height: 17px; line-height: 1.45; }
.premium-form-grid .field { width: 100%; min-height: 48px; border-radius: 12px; background: #fcfdff; }
.premium-form-grid textarea.field { min-height: 122px; }
.premium-form-grid .field::placeholder { color: #a5b2c2; }
.lookup-control { display: grid; gap: 10px; }
.lookup-control.with-preview { grid-template-columns: 220px minmax(0, 1fr); align-items: stretch; }
.media-preview { display: grid; place-items: center; min-height: 142px; overflow: hidden; border: 1px dashed #b9c9da; border-radius: 14px; background: linear-gradient(145deg, #fafcff, #f1f5f9); }
.media-preview img { width: 100%; height: 142px; object-fit: contain; padding: 8px; }
.media-placeholder { display: grid; justify-items: center; gap: 8px; color: #8092a7; font-size: 11px; font-weight: 750; }
.media-placeholder .nav-icon { width: 27px; height: 27px; }
.lookup-control.with-preview select { min-height: 142px; padding: 12px; }
.lookup-control.with-preview select.visual-picker-native { position: absolute; width: 1px; height: 1px; min-height: 0; padding: 0; opacity: 0; pointer-events: none; }
.visual-picker-trigger { display: grid; grid-template-columns: 178px minmax(0,1fr) auto; align-items: center; gap: 18px; width: 100%; min-height: 150px; padding: 10px; color: var(--ink); text-align: left; background: #fcfdff; border: 1px solid #d5e0eb; border-radius: 15px; cursor: pointer; }
.visual-picker-trigger:hover { border-color: #91b2d4; box-shadow: 0 9px 25px rgba(18,45,78,.08); }
.visual-picker-trigger .media-preview { min-height: 128px; }
.visual-picker-trigger .media-preview img { height: 128px; }
.visual-picker-copy { display: grid; gap: 5px; }
.visual-picker-copy small { color: var(--red); font-size: 10px; font-weight: 850; letter-spacing: .8px; text-transform: uppercase; }
.visual-picker-copy strong { font-size: 16px; }
.visual-picker-copy span { color: var(--muted); font-size: 12px; }
.visual-picker-dialog { width: min(960px, calc(100vw - 28px)); max-height: min(780px, calc(100vh - 28px)); padding: 0; overflow: hidden; color: var(--ink); background: #f6f9fc; border: 0; border-radius: 22px; box-shadow: 0 28px 90px rgba(3,29,56,.32); }
.visual-picker-dialog::backdrop { background: rgba(3,23,43,.66); backdrop-filter: blur(4px); }
.visual-picker-head, .visual-picker-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 22px; background: #fff; border-bottom: 1px solid var(--line); }
.visual-picker-head h3, .visual-picker-head small { margin: 0; }
.visual-picker-head small { color: var(--red); font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: 1px; }
.visual-picker-foot { justify-content: flex-end; border-top: 1px solid var(--line); border-bottom: 0; }
.visual-picker-search { display: flex; align-items: center; gap: 10px; margin: 16px 22px 0; padding: 0 13px; background: #fff; border: 1px solid #d6e1ec; border-radius: 12px; }
.visual-picker-search input { width: 100%; min-height: 46px; border: 0; outline: 0; }
.visual-picker-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; max-height: 520px; padding: 16px 22px 22px; overflow: auto; }
.visual-option { position: relative; display: grid; grid-template-columns: 92px minmax(0,1fr) 24px; align-items: center; gap: 12px; min-height: 102px; padding: 9px; color: var(--ink); text-align: left; background: #fff; border: 1px solid #dce5ef; border-radius: 15px; cursor: pointer; }
.visual-option:hover { transform: translateY(-1px); border-color: #9cb8d4; }
.visual-option.selected { border: 2px solid var(--red); background: #fff7f8; box-shadow: 0 8px 22px rgba(245,43,63,.12); }
.visual-option-image { display: grid; place-items: center; width: 92px; height: 78px; overflow: hidden; color: #8aa0b7; background: #f1f5f9; border-radius: 11px; }
.visual-option-image img { width: 100%; height: 100%; object-fit: contain; }
.visual-option > span:nth-child(2) { display: grid; gap: 4px; min-width: 0; }
.visual-option strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.visual-option small { color: var(--muted); font-size: 10px; }
.visual-option i { display: grid; place-items: center; width: 22px; height: 22px; color: #fff; background: #ccd7e2; border-radius: 50%; font-style: normal; }
.visual-option.selected i { background: var(--red); }
.field-with-unit { position: relative; }
.field-with-unit > span { position: absolute; top: 50%; right: 13px; transform: translateY(-50%); padding-left: 8px; color: #5b718a; background: #fcfdff; font-size: 11px; font-weight: 800; }
.field-with-unit > span + * { padding-right: 62px; }
.context-banner { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; padding: 13px 16px; color: #0e416f; background: linear-gradient(110deg,#edf7ff,#f7fbff); border: 1px solid #cae1f5; border-radius: 14px; }
.context-banner > div { display: grid; gap: 2px; }
.context-banner small { color: #66809a; font-size: 10px; text-transform: uppercase; letter-spacing: .8px; }
.context-banner .record-chip { margin-left: auto; }

.journey-head { margin-bottom: 14px; }
.workspace-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 16px; }
.workspace-stats article { display: flex; align-items: center; gap: 13px; min-height: 86px; padding: 16px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 9px 25px rgba(18,45,78,.045); }
.workspace-stats article > .nav-icon { display: grid; place-items: center; width: 42px; height: 42px; flex-basis: 42px; padding: 10px; color: var(--red); background: #fff0f2; border-radius: 13px; }
.workspace-stats article > div { display: grid; gap: 2px; }
.workspace-stats strong { font-size: 21px; }
.workspace-stats small { color: var(--muted); font-size: 11px; }
.journey-filters .field.compact { width: 190px; min-height: 46px; }
.filter-check { display: flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 13px; color: #49627e; background: #f7f9fc; border: 1px solid #d8e2ec; border-radius: 11px; font-size: 12px; font-weight: 750; }
.destination-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.destination-card { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 19px; box-shadow: 0 12px 30px rgba(18,45,78,.07); transition: .18s ease; }
.destination-card:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(18,45,78,.11); }
.destination-card.inactive { opacity: .65; }
.destination-art, .package-card-art { position: relative; display: grid; place-items: center; height: 184px; overflow: hidden; color: #8da2b8; background: linear-gradient(135deg,#edf4fb,#f9fbfd); }
.destination-art img, .package-card-art img { width: 100%; height: 100%; object-fit: cover; }
.destination-art > .nav-icon, .package-card-art > .nav-icon { width: 52px; height: 52px; }
.destination-badges { position: absolute; top: 12px; left: 12px; right: 12px; display: flex; justify-content: space-between; align-items: center; gap: 6px; }
.destination-badges span, .destination-badges b { padding: 6px 9px; border-radius: 999px; color: #fff; background: rgba(5,40,73,.88); backdrop-filter: blur(8px); font-size: 10px; font-weight: 850; }
.destination-badges b { margin-left: auto; background: rgba(245,43,63,.92); }
.destination-copy { display: grid; gap: 14px; padding: 17px; }
.destination-copy small { color: var(--red); font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .8px; }
.destination-copy h2 { margin: 4px 0; font-size: 19px; }
.destination-copy p { display: -webkit-box; min-height: 38px; margin: 0; overflow: hidden; color: var(--muted); font-size: 11px; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.destination-copy dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; padding: 10px 0; border-block: 1px solid var(--line); }
.destination-copy dl div { padding: 0 7px; border-right: 1px solid var(--line); }
.destination-copy dl div:last-child { border: 0; }
.destination-copy dt { color: var(--muted); font-size: 9px; }
.destination-copy dd { margin: 3px 0 0; font-size: 11px; font-weight: 800; }
.destination-actions { display: flex; gap: 7px; }
.workspace-breadcrumb { display: flex; align-items: center; gap: 9px; margin-bottom: 13px; color: var(--muted); font-size: 11px; }
.workspace-breadcrumb a { color: #315d88; font-weight: 750; }
.workspace-hero { display: grid; grid-template-columns: 230px minmax(0,1fr) auto; align-items: center; gap: 22px; margin-bottom: 14px; padding: 18px; background: linear-gradient(135deg,#fff,#f8fbff); border: 1px solid var(--line); border-radius: 21px; box-shadow: var(--shadow); }
.workspace-hero-art { display: grid; place-items: center; height: 154px; overflow: hidden; color: #91a5b9; background: #edf3f8; border-radius: 15px; }
.workspace-hero-art img { width: 100%; height: 100%; object-fit: cover; }
.workspace-hero-art > .nav-icon { width: 55px; height: 55px; }
.workspace-hero-copy h1 { margin: 0 0 6px; font-size: 31px; }
.workspace-hero-copy p { margin: 0 0 12px; color: var(--muted); font-size: 12px; }
.workspace-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.workspace-badges > span, .workspace-badges > b { padding: 6px 9px; color: #49627d; background: #eef4fa; border-radius: 999px; font-size: 10px; }
.workspace-badges > b { color: var(--red); background: #fff0f2; }
.workspace-hero-actions { display: grid; gap: 8px; }
.workspace-section-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 20px 0 12px; }
.workspace-section-head h2, .workspace-section-head p { margin: 0; }
.workspace-section-head h2 { font-size: 22px; }
.workspace-section-head p { margin-top: 4px; color: var(--muted); font-size: 11px; }
.package-workspace-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.package-workspace-card { display: grid; grid-template-columns: 220px minmax(0,1fr); overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 10px 28px rgba(18,45,78,.06); }
.package-card-art { height: 100%; min-height: 215px; }
.package-card-art .status { position: absolute; top: 11px; left: 11px; }
.package-card-copy { display: grid; align-content: center; gap: 7px; padding: 18px; }
.package-card-copy > small { color: var(--red); font-size: 9px; font-weight: 850; text-transform: uppercase; }
.package-card-copy h3, .package-card-copy p { margin: 0; }
.package-card-copy h3 { font-size: 18px; }
.package-card-copy p { color: var(--muted); font-size: 11px; }
.package-mini-stats { display: flex; flex-wrap: wrap; gap: 9px; padding-block: 7px; color: #5c7088; font-size: 10px; }
.package-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.package-card-footer > strong { color: var(--red); font-size: 13px; }
.workspace-tabs { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow); }
.workspace-tab-list { display: flex; gap: 4px; padding: 8px; overflow-x: auto; background: #f5f8fb; border-bottom: 1px solid var(--line); }
.workspace-tab-list button { display: inline-flex; align-items: center; gap: 7px; min-height: 43px; padding: 9px 14px; white-space: nowrap; color: #5e7289; background: transparent; border: 0; border-radius: 11px; font-size: 11px; font-weight: 800; cursor: pointer; }
.workspace-tab-list button span { display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; color: #637a92; background: #e4ebf2; border-radius: 999px; font-size: 9px; }
.workspace-tab-list button.active { color: #fff; background: var(--navy); box-shadow: 0 7px 17px rgba(5,40,73,.18); }
.workspace-tab-list button.active span { color: var(--navy); background: #fff; }
.workspace-tab-panel { min-height: 330px; padding: 20px; }
.booking-primary-column,.booking-action-column{display:grid;gap:18px;align-content:start}.booking-table-space{margin-top:15px}.read-only-grid>div>div{min-height:42px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.booking-paid-card{color:#08764e;background:#eaf9f3;border-color:#bcebd7}.booking-paid-card strong{font-size:16px}.booking-paid-card p{margin:6px 0 0;color:#40816a;font-size:12px}.booking-record-workspace{margin-top:22px}.booking-linked-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.booking-linked-grid>section{min-width:0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.booking-linked-grid .full-span{grid-column:1/-1}.empty.compact{padding:24px}.booking-stop-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.booking-stop-list li{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.booking-stop-list li>span{display:grid;place-items:center;width:32px;height:32px;color:#fff;background:var(--navy);border-radius:10px;font-size:11px;font-weight:800}.booking-stop-list strong,.booking-stop-list small{display:block}.booking-stop-list small{margin-top:3px;color:var(--muted);font-size:11px}.booking-stop-list p{margin:6px 0 0;color:#536980;font-size:12px}.booking-definition-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border:1px solid var(--line);border-radius:14px;overflow:hidden}.booking-definition-list>div{padding:13px;border-bottom:1px solid var(--line);background:#fff}.booking-definition-list dt{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.booking-definition-list dd{margin:6px 0 0;font-size:13px;font-weight:650;overflow-wrap:anywhere}.document-card-list{display:grid;gap:10px}.document-card-list article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.document-card-list strong,.document-card-list small{display:block}.document-card-list small{margin-top:4px;color:var(--muted);font-size:11px}.settlement-summary{margin-bottom:14px}.settlement-summary strong{font-size:15px}
@media(max-width:1100px){.booking-linked-grid{grid-template-columns:1fr}.booking-linked-grid .full-span{grid-column:auto}}@media(max-width:700px){.booking-definition-list{grid-template-columns:1fr}.document-card-list article{align-items:flex-start;flex-direction:column}.booking-record-workspace .workspace-tab-panel{padding:12px}.booking-linked-grid>section{padding:13px}}
.workspace-detail-grid, .split-workspace { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.workspace-detail-grid .card, .split-workspace .card { box-shadow: none; }
.detail-list { display: grid; gap: 0; margin: 0; }
.detail-list div { display: grid; grid-template-columns: 120px 1fr; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.detail-list div:last-child { border: 0; }
.detail-list dt { color: var(--muted); font-size: 11px; }
.detail-list dd { margin: 0; font-size: 11px; font-weight: 750; }
.readiness-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; padding: 0; list-style: none; }
.readiness-list li { position: relative; padding: 10px 10px 10px 34px; color: #7b4c52; background: #fff4f5; border-radius: 10px; font-size: 11px; }
.readiness-list li::before { content: '!'; position: absolute; left: 10px; display: grid; place-items: center; width: 17px; height: 17px; color: #fff; background: var(--red); border-radius: 50%; font-weight: 850; }
.readiness-list li.done { color: #13734d; background: #eaf8f2; }
.readiness-list li.done::before { content: '✓'; background: #12a56b; }
.fare-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.fare-card { display: grid; grid-template-columns: 130px minmax(0,1fr); gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 15px; }
.fare-card.inactive { opacity: .6; }
.fare-cab-art { display: grid; place-items: center; min-height: 128px; overflow: hidden; color: #8ba0b5; background: #f3f6f9; border-radius: 12px; }
.fare-cab-art img { width: 100%; height: 128px; object-fit: contain; }
.fare-card > div:last-child { display: grid; align-content: center; gap: 4px; }
.fare-card h3, .fare-card p { margin: 0; }
.fare-card h3 { font-size: 14px; }
.fare-card small, .fare-card p { color: var(--muted); font-size: 9px; }
.fare-card strong { color: var(--red); font-size: 18px; }
.fare-card del { color: #8ca0b5; font-size: 10px; }
.gallery-admin-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.gallery-admin-grid a { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 14px; }
.gallery-admin-grid img { width: 100%; height: 155px; object-fit: cover; }
.gallery-admin-grid span { display: grid; gap: 3px; padding: 10px; }
.gallery-admin-grid small { color: var(--muted); font-size: 9px; }
.content-admin-list { display: grid; }
.content-admin-list a { display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.content-admin-list a > .nav-icon, .item-type { display: grid; place-items: center; width: 30px; height: 30px; padding: 7px; color: var(--red); background: #fff0f2; border-radius: 9px; }
.item-type { padding: 0; font-style: normal; font-size: 13px; font-weight: 900; }
.item-type.inclusion { color: #0a9760; background: #e8f8f1; }
.item-type.exclusion { color: var(--red); }
.item-type.note { color: #14669e; background: #eaf5fd; }
.content-admin-list a > span:nth-child(2) { display: grid; gap: 2px; }
.content-admin-list small { color: var(--muted); font-size: 9px; }
.text-link { display: inline-block; margin-top: 12px; color: #1e5e94; font-size: 10px; font-weight: 800; }
.itinerary-admin-list { display: grid; gap: 12px; }
.itinerary-day-card { display: grid; grid-template-columns: 65px minmax(0,1fr); gap: 15px; padding: 15px; background: #fff; border: 1px solid var(--line); border-radius: 16px; }
.day-number { display: grid; place-items: center; align-content: center; width: 58px; height: 66px; color: #fff; background: linear-gradient(145deg,var(--red),#ff5a68); border-radius: 13px; }
.day-number span { font-size: 9px; text-transform: uppercase; }
.day-number strong { font-size: 23px; }
.day-copy h3, .day-copy p { margin: 0; }
.day-copy p { margin-top: 3px; color: var(--muted); font-size: 10px; }
.day-stops { display: grid; gap: 0; margin: 8px 0 0; padding: 0; list-style: none; }
.day-stops li { display: grid; grid-template-columns: 105px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 9px 0; border-top: 1px solid var(--line); }
.day-stops li > span { color: #315e88; font-size: 9px; font-weight: 800; text-transform: capitalize; }
.day-stops li > div { display: grid; gap: 2px; }
.day-stops small { color: var(--muted); font-size: 9px; }
.day-stops a { color: var(--red); font-size: 9px; font-weight: 800; }
.muted-box { padding: 10px; color: var(--muted); background: #f5f8fb; border-radius: 10px; }
.switch-control { display: flex !important; align-items: center; gap: 12px; min-height: 48px; padding: 9px 12px; border: 1px solid #d5e0eb; border-radius: 12px; background: #fcfdff; cursor: pointer; }
.switch-control input { position: absolute; opacity: 0; pointer-events: none; }
.switch-track { position: relative; width: 43px; height: 24px; flex: 0 0 43px; border-radius: 999px; background: #c7d2df; transition: .2s; }
.switch-track span { position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,.16); transition: .2s; }
.switch-control input:checked + .switch-track { background: var(--red); }
.switch-control input:checked + .switch-track span { transform: translateX(19px); }
.switch-copy { display: grid; gap: 1px; }
.switch-copy small { font-weight: 500; }
.editor-actions { position: sticky; bottom: 14px; z-index: 8; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 17px; background: rgba(255,255,255,.95); backdrop-filter: blur(14px); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 15px 35px rgba(18,45,78,.12); }
.editor-actions > div:first-child { display: grid; gap: 2px; }
.editor-actions small { color: var(--muted); }
.editor-actions .button .nav-icon { width: 17px; height: 17px; }
.media-upload-card { margin-bottom: 18px; padding: 17px; background: linear-gradient(135deg,#fff 0%,#f7fbff 100%); border: 1px solid var(--line); border-radius: 19px; box-shadow: 0 12px 30px rgba(18,45,78,.07); }
.media-upload-card form { display: grid; gap: 14px; }
.upload-drop { display: grid; grid-template-columns: 154px minmax(0,1fr); align-items: center; gap: 20px; min-height: 156px; padding: 12px; background: #fff; border: 2px dashed #bfd0e1; border-radius: 16px; cursor: pointer; transition: .2s; }
.upload-drop:hover, .upload-drop.dragging { border-color: var(--red); background: #fff8f9; box-shadow: inset 0 0 0 1px rgba(255,42,60,.08); }
.upload-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.upload-preview { display: grid; place-items: center; width: 100%; height: 130px; overflow: hidden; color: #7691ad; background: #edf4fb; border-radius: 13px; }
.upload-preview .nav-icon { width: 36px; height: 36px; }
.upload-preview img { width: 100%; height: 100%; object-fit: contain; }
.upload-drop > span:nth-child(2) { display: grid; gap: 6px; }
.upload-drop strong { font-size: 17px; }
.upload-drop small { color: var(--muted); }
.upload-drop em { margin-top: 6px; color: var(--red); font-size: 10px; font-style: normal; font-weight: 800; }
.upload-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)) auto; align-items: end; gap: 12px; }
.upload-fields label { display: grid; gap: 6px; }
.upload-fields label > span { font-size: 10px; font-weight: 800; }
.upload-fields .button { min-height: 48px; }
.media-library-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.media-library-card { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; transition: .2s; }
.media-library-card:hover { transform: translateY(-2px); box-shadow: 0 14px 28px rgba(18,45,78,.1); }
.media-library-card.inactive { opacity: .58; }
.media-library-art { display: block; height: 170px; padding: 8px; background: radial-gradient(circle at center,#fff 0%,#edf3f8 100%); }
.media-library-art img { width: 100%; height: 100%; object-fit: contain; }
.media-library-copy { display: grid; gap: 6px; padding: 13px; border-top: 1px solid var(--line); }
.media-library-copy small { color: var(--red); font-size: 8px; font-weight: 850; letter-spacing: .7px; }
.media-library-copy h3, .media-library-copy p { margin: 0; }
.media-library-copy h3 { overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.media-library-copy p { min-height: 30px; color: var(--muted); font-size: 9px; line-height: 1.55; }
.media-library-copy > div { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 8px; }
.media-library-copy a { color: var(--red); font-weight: 800; }
.media-edit-layout { display: grid; grid-template-columns: minmax(280px,.75fr) minmax(0,1.4fr); align-items: start; gap: 18px; }
.media-edit-preview { padding: 17px; }
.media-edit-art { display: grid; place-items: center; min-height: 360px; overflow: hidden; background: radial-gradient(circle at center,#fff,#edf3f8); border-radius: 14px; }
.media-edit-art img { width: 100%; max-height: 430px; object-fit: contain; }
.media-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.media-facts span { display: grid; gap: 2px; padding: 10px; background: #f5f8fb; border-radius: 10px; }
.media-facts small { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.media-facts strong { overflow-wrap: anywhere; font-size: 10px; }
.media-edit-layout .editor-actions { grid-column: 1 / -1; }
.promotion-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.promotion-card { display: grid; gap: 13px; padding: 18px; background: #fff; border: 1px solid var(--line); border-top: 4px solid var(--red); border-radius: 18px; box-shadow: 0 12px 30px rgba(18,45,78,.07); }
.promotion-card.inactive { opacity: .67; border-top-color: #9eacba; }
.promotion-top, .promotion-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.offer-code { padding: 6px 10px; color: var(--red); font-size: 11px; font-weight: 900; letter-spacing: .7px; background: #fff0f2; border-radius: 8px; }
.promotion-card h2 { min-height: 42px; margin: 0; font-size: 17px; }
.promotion-value { display: flex; align-items: baseline; gap: 8px; }
.promotion-value strong { color: var(--red); font-size: 30px; }
.promotion-value span { color: var(--muted); font-size: 10px; }
.applicability { display: grid; gap: 7px; padding: 11px; background: #f4f8fc; border-radius: 12px; }
.applicability small { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.applicability > div { display: flex; flex-wrap: wrap; gap: 5px; }
.scope-chip { padding: 5px 8px; color: #0e4a7f; font-size: 8px; font-weight: 800; background: #e5f2ff; border-radius: 999px; }
.scope-chip.all { color: #087b51; background: #e6f8f1; }
.promotion-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 0; border: 1px solid var(--line); border-radius: 12px; }
.promotion-meta div { display: grid; gap: 2px; padding: 9px; }
.promotion-meta div:nth-child(odd) { border-right: 1px solid var(--line); }
.promotion-meta div:nth-child(n+3) { border-top: 1px solid var(--line); }
.promotion-meta dt { color: var(--muted); font-size: 8px; }
.promotion-meta dd { margin: 0; font-size: 10px; font-weight: 800; }
.promotion-actions { align-self: end; }
.promotion-actions form { margin: 0; }
.promotion-actions .button { min-height: 39px; padding: 8px 12px; }
.span-all { grid-column: 1 / -1; }
.service-scope-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 20px; }
.scope-select { position: relative; display: grid; grid-template-columns: 46px minmax(0,1fr) 24px; align-items: center; gap: 11px; min-height: 76px; padding: 12px; background: #fff; border: 1px solid #d7e1ec; border-radius: 14px; cursor: pointer; }
.scope-select input { position: absolute; opacity: 0; }
.scope-select:has(input:checked) { background: #fff5f6; border-color: var(--red); box-shadow: 0 8px 20px rgba(255,42,60,.1); }
.scope-select-icon { display: grid; place-items: center; width: 46px; height: 46px; color: #144f85; background: #e9f3fd; border-radius: 12px; }
.scope-select-icon svg { width: 23px; height: 23px; }
.scope-select > span:nth-child(3) { display: grid; gap: 2px; }
.scope-select small { color: var(--muted); font-size: 8px; }
.scope-select em { display: grid; place-items: center; width: 22px; height: 22px; color: transparent; font-style: normal; border: 1px solid #b8c7d6; border-radius: 50%; }
.scope-select:has(input:checked) em { color: #fff; background: var(--red); border-color: var(--red); }
.scope-empty-note { display: flex; align-items: center; gap: 10px; margin: 0 20px 20px; padding: 11px 13px; color: #29506f; font-size: 9px; background: #eef6ff; border-radius: 11px; }
.scope-empty-note .nav-icon { flex: 0 0 20px; }
.uppercase-input { text-transform: uppercase; }
.blog-admin-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.blog-admin-card { overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 12px 30px rgba(18,45,78,.07); }
.blog-admin-art { position: relative; display: grid; place-items: center; height: 185px; color: #8aa0b7; background: #edf4fa; }
.blog-admin-art img { width: 100%; height: 100%; object-fit: cover; }
.blog-admin-art .nav-icon { width: 40px; height: 40px; }
.blog-admin-art .status-badge { position: absolute; top: 12px; right: 12px; }
.blog-admin-copy { display: grid; gap: 9px; padding: 15px; }
.blog-admin-copy > small { color: var(--red); font-size: 8px; font-weight: 850; text-transform: uppercase; }
.blog-admin-copy h2,.blog-admin-copy p { margin: 0; }
.blog-admin-copy h2 { min-height: 44px; font-size: 17px; }
.blog-admin-copy h2 a { color: inherit; }
.blog-admin-copy p { display: -webkit-box; min-height: 44px; overflow: hidden; color: var(--muted); font-size: 9px; line-height: 1.6; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.blog-admin-facts { display: flex; flex-wrap: wrap; gap: 5px; }
.blog-admin-facts span { padding: 4px 7px; color: #315e88; font-size: 8px; font-weight: 750; background: #eef5fb; border-radius: 999px; }
.blog-tabs { grid-template-columns: repeat(5,minmax(0,1fr)); }
.title-highlight-preview { display: grid; align-content: center; gap: 5px; min-height: 82px; padding: 12px 15px; background: #f4f7fa; border: 1px solid var(--line); border-radius: 12px; }
.title-highlight-preview small { color: var(--muted); font-size: 8px; text-transform: uppercase; }
.title-highlight-preview strong { font-size: 14px; }
.title-highlight-preview em { color: var(--red); font-style: normal; }
.title-highlight-preview strong.invalid { color: #a04545; text-decoration: underline wavy #ff4352; }
.slug-field { display: flex; align-items: center; overflow: hidden; background: #fcfdff; border: 1px solid #d5e0eb; border-radius: 12px; }
.slug-field > span { padding-left: 12px; color: var(--muted); font-size: 10px; white-space: nowrap; }
.slug-field .field { border: 0; }
.summary-builder { display: grid; gap: 8px; padding: 20px; }
.summary-builder-head,.summary-builder-row { display: grid; grid-template-columns: 1fr 1.25fr .65fr; gap: 9px; }
.summary-builder-head span { padding-inline: 4px; color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.content-section-list { display: grid; gap: 8px; padding: 18px; }
.content-section-list article { display: grid; grid-template-columns: 45px minmax(0,1fr) auto auto auto; align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--line); border-radius: 12px; }
.section-order { display: grid; place-items: center; width: 40px; height: 40px; color: #174e7c; font-size: 10px; font-weight: 850; background: #eaf3fb; border-radius: 10px; }
.content-section-list h3,.content-section-list p { margin: 0; }
.content-section-list h3 { font-size: 12px; }
.content-section-list p,.content-section-list small { color: var(--muted); font-size: 8px; }
.content-section-list form { margin: 0; }
.content-section-list .button { min-height: 36px; padding: 7px 10px; }
.linked-actions { display: flex; align-items: center; gap: 12px; padding: 0 18px 18px; }
.linked-actions small { color: var(--muted); font-size: 9px; }
.check-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; padding: 18px; }
.check-card { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 22px; align-items: center; gap: 8px; padding: 11px; border: 1px solid var(--line); border-radius: 11px; cursor: pointer; }
.check-card input,.related-post-picker input { position: absolute; opacity: 0; }
.check-card > span { display: grid; gap: 2px; }
.check-card small { color: var(--muted); font-size: 8px; }
.check-card em,.related-post-picker em { display: grid; place-items: center; width: 21px; height: 21px; color: transparent; font-style: normal; border: 1px solid #bac9d8; border-radius: 50%; }
.check-card:has(input:checked),.related-post-picker label:has(input:checked) { background: #fff5f6; border-color: var(--red); }
.check-card:has(input:checked) em,.related-post-picker label:has(input:checked) em { color: #fff; background: var(--red); border-color: var(--red); }
.related-post-picker { display: grid; gap: 8px; max-height: 500px; padding: 18px; overflow: auto; }
.related-post-picker label { position: relative; display: grid; grid-template-columns: 80px minmax(0,1fr) 22px; align-items: center; gap: 10px; min-height: 70px; padding: 7px; border: 1px solid var(--line); border-radius: 11px; cursor: pointer; }
.related-post-picker img,.related-post-picker > label > .nav-icon { width: 80px; height: 58px; object-fit: cover; background: #edf3f8; border-radius: 8px; }
.related-post-picker > label > .nav-icon { padding: 17px 25px; }
.related-post-picker label > span:nth-child(3) { display: grid; gap: 3px; }
.related-post-picker small { color: var(--muted); font-size: 8px; text-transform: capitalize; }
.block-help { display: flex; align-items: center; gap: 8px; padding: 11px; color: #29506f; font-size: 9px; background: #eef6ff; border-radius: 11px; }
.block-help strong { white-space: nowrap; }
[data-block-field][hidden] { display: none !important; }
.access-tabs { grid-template-columns: 1fr 1fr; }
.access-tabs span { display: inline-grid; place-items: center; min-width: 23px; height: 20px; margin-left: 6px; padding-inline: 5px; color: #315e88; font-size: 8px; background: #edf4fb; border-radius: 999px; }
.access-tabs button.active span { color: #fff; background: var(--red); }
.access-user-list { display: grid; gap: 8px; padding: 18px; }
.access-user-list article { display: grid; grid-template-columns: 46px minmax(0,1fr) 180px auto; align-items: center; gap: 13px; padding: 12px; border: 1px solid var(--line); border-radius: 13px; }
.access-user-list .user-avatar { display: grid; place-items: center; width: 44px; height: 44px; color: #124875; font-weight: 900; background: #e9f2fb; border-radius: 12px; }
.access-user-main,.access-user-state { display: grid; gap: 4px; }
.access-user-main small,.access-user-state small { color: var(--muted); font-size: 8px; }
.access-user-main > div { display: flex; flex-wrap: wrap; gap: 4px; }
.access-user-state { justify-items: start; }
.role-directory { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.role-directory-card { display: grid; gap: 13px; padding: 17px; }
.role-card-head { display: grid; grid-template-columns: 45px minmax(0,1fr) auto; align-items: center; gap: 11px; }
.role-icon { display: grid; place-items: center; width: 44px; height: 44px; color: #174f7f; background: #e9f3fc; border-radius: 12px; }
.role-icon svg { width: 23px; height: 23px; }
.role-card-head h2,.role-directory-card > p { margin: 0; }
.role-card-head small { color: var(--red); font-size: 8px; font-weight: 850; }
.role-directory-card > p { min-height: 36px; color: var(--muted); font-size: 9px; line-height: 1.6; }
.role-permission-preview { display: grid; gap: 7px; padding: 10px; background: #f4f8fb; border-radius: 11px; }
.role-permission-preview strong { font-size: 9px; }
.role-permission-preview > div { display: flex; flex-wrap: wrap; gap: 4px; }
.role-permission-preview span { padding: 4px 6px; color: #315e88; font-size: 7px; background: #e6f1fb; border-radius: 999px; }
.role-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 8px; }
.permission-toolbar { display: flex; align-items: center; gap: 8px; padding: 17px; border-bottom: 1px solid var(--line); }
.permission-toolbar .search-field { flex: 1; }
.permission-toolbar .button { min-height: 42px; padding: 8px 11px; }
.permission-groups { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 17px; }
.permission-groups > section { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; }
.permission-group-head { display: flex; align-items: center; gap: 9px; padding: 11px; background: #f4f8fb; border-bottom: 1px solid var(--line); }
.permission-group-head .nav-icon { width: 24px; height: 24px; padding: 4px; color: #174f7f; background: #e5f0fb; border-radius: 7px; }
.permission-group-head > div { display: grid; gap: 2px; }
.permission-group-head small { color: var(--muted); font-size: 8px; }
.permission-list { display: grid; }
.permission-list label { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 21px; align-items: center; gap: 8px; min-height: 53px; padding: 9px 11px; border-bottom: 1px solid var(--line); cursor: pointer; }
.permission-list label:last-of-type { border-bottom: 0; }
.permission-list input,.role-select-grid input { position: absolute; opacity: 0; }
.permission-list label > span { display: grid; gap: 2px; }
.permission-list small { color: var(--muted); font-size: 7px; }
.permission-list em,.role-select-grid b { display: grid; place-items: center; width: 20px; height: 20px; color: transparent; font-style: normal; border: 1px solid #bccbda; border-radius: 50%; }
.permission-list label:has(input:checked) { background: #fff7f8; }
.permission-list label:has(input:checked) em,.role-select-grid label:has(input:checked) b { color: #fff; background: var(--red); border-color: var(--red); }
.permission-list label:has(input:disabled) { cursor: default; }
.password-field { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.password-field .button { min-height: 48px; }
.role-select-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 18px; }
.role-select-grid label { position: relative; display: grid; grid-template-columns: 46px minmax(0,1fr) 22px; align-items: center; gap: 11px; min-height: 104px; padding: 12px; border: 1px solid var(--line); border-radius: 14px; cursor: pointer; }
.role-select-grid label:has(input:checked) { background: #fff6f7; border-color: var(--red); box-shadow: 0 8px 20px rgba(255,42,60,.08); }
.role-select-grid label > span:nth-child(3) { display: grid; gap: 3px; }
.role-select-grid small { color: var(--red); font-size: 7px; font-weight: 850; }
.role-select-grid p { margin: 0; color: var(--muted); font-size: 8px; line-height: 1.45; }
.role-select-grid em { color: #315e88; font-size: 8px; font-style: normal; font-weight: 800; }

/* Assisted booking and payment sharing */
.phone-booking-form { display: grid; gap: 18px; }
.assisted-progress { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.assisted-progress span { display: flex; align-items: center; gap: 9px; min-height: 54px; padding: 10px 16px; color: var(--muted); font-size: 11px; font-weight: 800; border-right: 1px solid var(--line); }
.assisted-progress span:last-child { border-right: 0; }
.assisted-progress b { display: grid; place-items: center; width: 25px; height: 25px; color: #315b83; background: #eaf2fa; border-radius: 50%; }
.assisted-progress .active { color: var(--ink); background: linear-gradient(120deg,#fff6f7,#fff); }
.assisted-progress .active b { color: #fff; background: var(--red); box-shadow: 0 5px 14px rgba(245,43,63,.25); }
.assisted-progress .completed { color: #0b7b61; background: #f5fbf9; }
.assisted-progress .completed b { color: transparent; background: #dff5ee; }
.assisted-progress .completed b::after { content: "✓"; color: #0b9c76; }
.booking-mode-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 20px 24px 0; }
.booking-mode-tabs.three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.booking-mode-tabs.four { grid-template-columns: repeat(4,minmax(0,1fr)); }
.booking-mode-tabs label { position: relative; cursor: pointer; }
.booking-mode-tabs input { position: absolute; opacity: 0; }
.booking-mode-tabs label > span { display: grid; grid-template-columns: 28px minmax(0,1fr); align-items: center; gap: 3px 9px; min-height: 78px; padding: 14px 17px; border: 1px solid var(--line); border-radius: 13px; font-size: 12px; font-weight: 850; transition: .18s; }
.booking-mode-tabs label > span > svg { grid-row: 1 / 3; width: 25px; height: 25px; color: #315e88; }
.booking-mode-tabs label:hover > span { transform: translateY(-1px); border-color: #b7c9da; box-shadow: 0 8px 20px rgba(16,45,82,.06); }
.booking-mode-tabs small { color: var(--muted); font-size: 9px; font-weight: 500; }
.booking-mode-tabs label:has(input:checked) > span,.booking-mode-tabs label.selected > span { color: #b91f32; background: #fff5f6; border-color: #ff8895; box-shadow: 0 8px 20px rgba(245,43,63,.08); }
.booking-mode-tabs label:has(input:checked) svg,.booking-mode-tabs label.selected svg { color: var(--red); }
.catalog-toolbar { display: flex; align-items: center; gap: 10px; padding: 18px 24px 10px; }
.catalog-toolbar > .field { flex: 1; }
.catalog-filter-buttons { display: flex; gap: 5px; padding: 4px; background: #eef3f8; border-radius: 11px; }
.catalog-filter-buttons button { min-height: 34px; padding: 7px 11px; color: #54708c; font-size: 9px; font-weight: 800; background: transparent; border: 0; border-radius: 8px; cursor: pointer; }
.catalog-filter-buttons button.active { color: #fff; background: var(--navy); }
.phone-fare-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; max-height: 570px; padding: 10px 24px 24px; overflow: auto; }
.phone-fare-card { display: grid; grid-template-columns: 108px minmax(0,1fr) auto; align-items: center; gap: 13px; min-height: 116px; padding: 10px; text-align: left; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 15px; cursor: pointer; transition: .18s; }
.phone-fare-card:hover { transform: translateY(-2px); border-color: #b8cadc; box-shadow: 0 10px 24px rgba(16,45,82,.08); }
.phone-fare-card.selected { background: linear-gradient(120deg,#fff5f6,#fff); border-color: var(--red); box-shadow: 0 11px 26px rgba(245,43,63,.1); }
.phone-fare-card[hidden] { display: none; }
.phone-fare-image { display: grid; place-items: center; width: 108px; height: 92px; overflow: hidden; color: #477197; background: #f0f5fa; border-radius: 11px; }
.phone-fare-image img { width: 100%; height: 100%; object-fit: contain; }
.phone-fare-image svg { width: 35px; height: 35px; }
.phone-fare-copy { display: grid; gap: 4px; min-width: 0; }
.phone-fare-copy small { color: var(--red); font-size: 8px; font-weight: 850; text-transform: uppercase; }
.phone-fare-copy strong { font-size: 13px; }
.phone-fare-copy span { overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.phone-fare-price { display: grid; justify-items: end; gap: 5px; white-space: nowrap; }
.phone-fare-price small { color: var(--muted); font-size: 7px; }
.phone-fare-price strong { font-size: 16px; }
.phone-fare-price i { display: grid; place-items: center; width: 22px; height: 22px; color: transparent; font-style: normal; background: #edf3f8; border-radius: 50%; }
.phone-fare-card.selected .phone-fare-price i { color: #fff; background: var(--red); }
.custom-quote-panel { padding-top: 12px; }
.outstation-mode-note { display: flex; align-items: center; gap: 12px; margin: 12px 24px 0; padding: 14px 16px; color: #174e7e; background: linear-gradient(110deg,#eaf4ff,#f8fbff); border: 1px solid #c8def2; border-radius: 13px; }
.outstation-mode-note > span { display: grid; place-items: center; width: 38px; height: 38px; color: #fff; background: #246fae; border-radius: 11px; }
.outstation-mode-note svg { width: 22px; height: 22px; }
.outstation-mode-note div { display: grid; gap: 3px; }
.outstation-mode-note strong { font-size: 11px; }
.outstation-mode-note small { color: #5d7894; font-size: 8px; }
.custom-quote-panel > .notice { margin: 12px 24px 0; }
.manual-cab-picker,.route-stops-editor { margin: 0 24px 22px; padding: 17px; background: #fbfdff; border: 1px solid var(--line); border-radius: 15px; }
.subsection-title { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 13px; }
.subsection-title h3,.subsection-title p { margin: 0; }
.subsection-title h3 { font-size: 12px; }
.subsection-title p { margin-top: 4px; color: var(--muted); font-size: 8px; }
.subsection-title > span { padding: 7px 10px; color: #285b88; font-size: 8px; font-weight: 850; background: #eaf2fa; border-radius: 9px; }
.button.small { min-height: 36px; padding: 8px 12px; font-size: 9px; }
.manual-cab-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.manual-cab-card { position: relative; display: grid; grid-template-columns: 76px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; gap: 3px 10px; min-height: 90px; padding: 9px; text-align: left; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 13px; cursor: pointer; transition: .18s; }
.manual-cab-card > span { grid-row: 1 / 3; display: grid; place-items: center; width: 76px; height: 66px; overflow: hidden; color: #52779b; background: #eef4fa; border-radius: 9px; }
.manual-cab-card img { width: 100%; height: 100%; object-fit: contain; }
.manual-cab-card svg { width: 30px; height: 30px; }
.manual-cab-card b { align-self: end; font-size: 10px; }
.manual-cab-card small { align-self: start; color: var(--muted); font-size: 7px; }
.manual-cab-card i { position: absolute; right: 8px; top: 8px; display: grid; place-items: center; width: 19px; height: 19px; color: transparent; font-size: 8px; font-style: normal; background: #edf3f8; border-radius: 50%; }
.manual-cab-card:hover { transform: translateY(-1px); border-color: #b8cadc; }
.manual-cab-card.selected { background: #fff5f6; border-color: var(--red); box-shadow: 0 8px 20px rgba(245,43,63,.08); }
.manual-cab-card.selected i { color: #fff; background: var(--red); }
.manual-cab-card[hidden] { display: none; }
.route-stops-editor { background: linear-gradient(145deg,#fff,#f8fbff); }
#routeStopsList { display: grid; gap: 9px; }
.route-stop-row { position: relative; display: grid; grid-template-columns: 34px minmax(220px,1.4fr) minmax(150px,.7fr) minmax(190px,.8fr) 35px; align-items: end; gap: 9px; padding: 12px; background: #fff; border: 1px solid var(--line); border-radius: 13px; }
.route-stop-row .form-group { gap: 5px; }
.route-stop-order { align-self: center; display: grid; place-items: center; width: 31px; height: 31px; color: #fff; font-size: 10px; font-weight: 850; background: #246fae; border-radius: 50%; }
.route-stop-remove { align-self: center; width: 33px; height: 33px; color: #c72a3c; background: #fff1f3; border: 1px solid #ffc4cb; }
[data-booking-mode-panel][hidden],[data-outstation-only][hidden],[data-custom-service-field][hidden],#singleDropField[hidden] { display: none !important; }
.phone-booking-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.money-input { display: grid; grid-template-columns: 38px minmax(0,1fr); }
.money-input.suffix { grid-template-columns: minmax(0,1fr) 44px; }
.money-input > span { display: grid; place-items: center; color: #315b83; font-weight: 850; background: #eef4fa; border: 1px solid #d5e0eb; }
.money-input:not(.suffix) > span { border-right: 0; border-radius: 11px 0 0 11px; }
.money-input:not(.suffix) .field { border-radius: 0 11px 11px 0; }
.money-input.suffix > span { border-left: 0; border-radius: 0 11px 11px 0; }
.money-input.suffix .field { border-radius: 11px 0 0 11px; }
.phone-save-bar { position: sticky; bottom: 10px; z-index: 12; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 15px 18px; background: rgba(255,255,255,.96); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 16px 38px rgba(16,45,82,.15); backdrop-filter: blur(12px); }
.phone-save-bar > div { display: flex; align-items: center; gap: 10px; }
.phone-save-bar p,.phone-save-bar small { display: block; margin: 0; }
.phone-save-bar small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.save-shield { display: grid; place-items: center; width: 39px; height: 39px; color: #078a58; background: #e7f8f1; border-radius: 12px; }
.save-shield svg { width: 22px; height: 22px; }
.booking-queue-links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-bottom: 17px; }
.booking-queue-links a { display: grid; grid-template-columns: 38px minmax(0,1fr); align-items: center; gap: 10px; min-height: 74px; padding: 11px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 8px 22px rgba(16,45,82,.05); }
.booking-queue-links a > span { display: grid; place-items: center; width: 38px; height: 38px; color: #315e88; background: #eaf2fa; border-radius: 11px; }
.booking-queue-links a svg { width: 21px; height: 21px; }
.booking-queue-links a div { display: grid; gap: 3px; }
.booking-queue-links small { color: var(--muted); font-size: 8px; }
.booking-queue-links a.active { background: #fff5f6; border-color: var(--red); }
.booking-queue-links a.active > span { color: #fff; background: var(--red); }
.payment-share-card { position: relative; display: grid; gap: 10px; overflow: hidden; background: linear-gradient(145deg,#fff,#fff6f7); border-color: #ffc2c9; }
.payment-share-card:after { content: ""; position: absolute; right: -34px; top: -42px; width: 130px; height: 130px; background: rgba(245,43,63,.06); border-radius: 50%; }
.payment-share-card > * { position: relative; z-index: 1; }
.payment-share-card h3,.payment-share-card p { margin: 0; }
.payment-share-card > small { color: var(--red); font-size: 8px; font-weight: 850; letter-spacing: 1px; }
.payment-share-icon { display: grid; place-items: center; width: 42px; height: 42px; color: #fff; background: var(--red); border-radius: 13px; box-shadow: 0 8px 18px rgba(245,43,63,.22); }
.payment-share-icon svg { width: 23px; height: 23px; }
.payment-share-card .button { width: 100%; }
.whatsapp-button { background: linear-gradient(120deg,#10a86b,#20c47b); box-shadow: 0 9px 20px rgba(16,168,107,.2); }

/* Separate report workspaces */
.report-page-head { align-items: flex-end; }
.report-page-head > div > small { color: var(--red); font-size: 9px; font-weight: 850; letter-spacing: 1.2px; }
.report-period { display: flex; align-items: flex-end; gap: 8px; padding: 11px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow); }
.report-period label { display: grid; gap: 4px; color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.report-period .field { min-height: 38px; padding-block: 6px; }
.report-period .button { min-height: 38px; }
.report-switcher { display: grid; grid-template-columns: repeat(7,minmax(120px,1fr)); gap: 8px; margin-bottom: 17px; overflow-x: auto; }
.report-switcher a { display: grid; grid-template-columns: 32px minmax(0,1fr); align-items: center; gap: 8px; min-height: 59px; padding: 9px; color: #526c86; background: #fff; border: 1px solid var(--line); border-radius: 13px; }
.report-switcher a > span { display: grid; place-items: center; width: 32px; height: 32px; color: #315e88; background: #edf4fa; border-radius: 9px; }
.report-switcher svg { width: 18px; height: 18px; }
.report-switcher strong { font-size: 9px; line-height: 1.3; }
.report-switcher a.active { color: #b91f32; background: #fff5f6; border-color: #ff9da7; }
.report-switcher a.active > span { color: #fff; background: var(--red); }
.report-metrics { grid-template-columns: repeat(6,minmax(0,1fr)); }
.report-metrics article { position: relative; display: grid; gap: 7px; min-height: 114px; padding: 17px; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); }
.report-metrics article:after { content: ""; position: absolute; right: -28px; top: -34px; width: 90px; height: 90px; background: rgba(38,119,232,.07); border-radius: 50%; }
.report-metrics span { color: var(--muted); font-size: 9px; font-weight: 750; }
.report-metrics strong { font-size: 21px; letter-spacing: -.4px; }
.report-metrics small { color: #91a0b2; font-size: 7px; }
.report-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.report-table-card { min-width: 0; }
.report-table-card .card-head small { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; }
.report-data-table td:nth-child(n+2),.report-data-table th:nth-child(n+2) { text-align: right; }
.report-data-table td:first-child { width: 100%; white-space: normal; text-transform: capitalize; }

@media (max-width: 1100px) {
  .module-directory { grid-template-columns: 1fr; }
  .module-row-meta { display: none; }
  .destination-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .package-workspace-grid { grid-template-columns: 1fr; }
  .fare-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .media-library-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .promotion-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .blog-admin-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .access-user-list article { grid-template-columns: 46px minmax(0,1fr) auto; }
  .access-user-state { grid-column: 2; }
  .permission-groups { grid-template-columns: 1fr; }
  .phone-booking-columns,.report-grid { grid-template-columns: 1fr; }
  .manual-cab-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .route-stop-row { grid-template-columns: 34px 1fr 1fr; }
  .route-stop-row .form-group:first-of-type { grid-column: 2 / 4; }
  .route-stop-remove { grid-column: 1; grid-row: 2; }
  .phone-fare-grid { grid-template-columns: 1fr; }
  .booking-queue-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .report-metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .booking-mode-tabs.four,.phone-product-grid,.phone-cab-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .outdoor-route-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .route-stop-row.outdoor-stop-row { grid-template-columns: 34px minmax(0,1fr) 180px 35px; }
  .route-stop-row.outdoor-stop-row .form-group:first-of-type { grid-column: auto; }
  .route-stop-row.outdoor-stop-row .route-stop-remove { grid-column: auto; grid-row: auto; }
}

@media (max-width: 900px) {
  .sidebar { width: 292px; }
  .app-frame { width: 100%; margin-left: 0; }
  .lookup-control.with-preview { grid-template-columns: 1fr; }
  .lookup-control.with-preview select { min-height: 48px; }
  .visual-picker-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-hero { grid-template-columns: 160px minmax(0,1fr); }
  .workspace-hero-actions { grid-column: 1 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .workspace-detail-grid, .split-workspace { grid-template-columns: 1fr; }
  .gallery-admin-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .media-edit-layout { grid-template-columns: 1fr; }
  .upload-fields { grid-template-columns: 1fr 1fr; }
  .upload-fields .button { grid-column: 1 / -1; }
  .booking-mode-tabs.four { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .media-library-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .service-scope-grid { grid-template-columns: 1fr; }
  .blog-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .content-section-list article { grid-template-columns: 42px minmax(0,1fr) auto; }
  .content-section-list article > .button,.content-section-list article > form { grid-row: 2; }
  .report-page-head { align-items: stretch; }
  .report-period { width: 100%; }
}

@media (max-width: 600px) {
  .booking-mode-tabs.four,.phone-product-grid,.phone-cab-grid,.outdoor-route-metrics { grid-template-columns: 1fr; }
  .phone-product-grid,.phone-cab-step { padding-inline: 14px; }
  .route-stop-row.outdoor-stop-row { grid-template-columns: 32px minmax(0,1fr); }
  .route-stop-row.outdoor-stop-row .route-address,.route-stop-row.outdoor-stop-row .route-days { grid-column: 2; }
  .route-stop-row.outdoor-stop-row .route-stop-remove { grid-column: 2; grid-row: auto; justify-self: end; }
  .outdoor-quote-actions { align-items: stretch; flex-direction: column; }
  .module-list-card { padding: 14px; }
  .premium-form-grid { padding: 17px; }
  .editor-card-head { padding: 17px; }
  .editor-actions { align-items: stretch; flex-direction: column; bottom: 6px; }
  .editor-actions .head-actions { display: grid; grid-template-columns: 1fr 1.4fr; }
  .hub-intro { align-items: flex-start; }
  .hub-intro .record-chip { display: none; }
  .module-row { min-height: 72px; }
  .visual-picker-trigger { grid-template-columns: 96px minmax(0,1fr); min-height: 112px; }
  .visual-picker-trigger .media-preview { min-height: 92px; }
  .visual-picker-trigger .media-preview img { height: 92px; }
  .visual-picker-trigger > .button { display: none; }
  .visual-picker-grid { grid-template-columns: 1fr; padding-inline: 14px; }
  .visual-picker-search { margin-inline: 14px; }
  .destination-grid { grid-template-columns: 1fr; }
  .workspace-hero { grid-template-columns: 1fr; }
  .workspace-hero-art { height: 190px; }
  .workspace-hero-actions { grid-template-columns: 1fr; }
  .workspace-stats { grid-template-columns: 1fr 1fr; }
  .workspace-section-head { align-items: flex-start; flex-direction: column; }
  .package-workspace-card { grid-template-columns: 1fr; }
  .package-card-art { min-height: 180px; }
  .fare-card-grid { grid-template-columns: 1fr; }
  .gallery-admin-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .itinerary-day-card { grid-template-columns: 1fr; }
  .day-stops li { grid-template-columns: 80px minmax(0,1fr); }
  .day-stops li > a { grid-column: 2; }
  .upload-drop { grid-template-columns: 92px minmax(0,1fr); min-height: 112px; }
  .upload-preview { height: 88px; }
  .upload-fields, .media-library-grid { grid-template-columns: 1fr; }
  .promotion-grid { grid-template-columns: 1fr; }
  .blog-admin-grid,.summary-builder-head,.summary-builder-row,.check-card-grid { grid-template-columns: 1fr; }
  .summary-builder-head { display: none; }
  .blog-tabs { grid-template-columns: 1fr 1fr; }
  .content-section-list article { grid-template-columns: 38px minmax(0,1fr); }
  .content-section-list article > .status-badge,.content-section-list article > .button,.content-section-list article > form { grid-column: 2; grid-row: auto; }
  .linked-actions { align-items: flex-start; flex-direction: column; }
  .role-directory,.role-select-grid { grid-template-columns: 1fr; }
  .access-user-list article { grid-template-columns: 42px minmax(0,1fr); }
  .access-user-list article > .button { grid-column: 2; }
  .permission-toolbar { align-items: stretch; flex-direction: column; }
  .assisted-progress { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .assisted-progress span:nth-child(2) { border-right: 0; }
  .booking-mode-tabs,.booking-queue-links,.report-metrics { grid-template-columns: 1fr; }
  .catalog-toolbar,.phone-save-bar,.phone-save-bar > div,.report-period { align-items: stretch; flex-direction: column; }
  .phone-fare-grid,.catalog-toolbar,.booking-mode-tabs { padding-inline: 14px; }
  .phone-fare-card { grid-template-columns: 86px minmax(0,1fr); }
  .phone-fare-image { width: 86px; height: 78px; }
  .phone-fare-price { grid-column: 2; grid-row: 2; justify-items: start; grid-template-columns: auto auto; align-items: center; }
  .phone-save-bar { position: static; }
  .phone-save-bar > div:last-child { display: grid; grid-template-columns: 1fr; }
  .outstation-mode-note,.manual-cab-picker,.route-stops-editor { margin-inline: 14px; }
  .manual-cab-grid { grid-template-columns: 1fr; }
  .subsection-title { align-items: stretch; flex-direction: column; }
  .route-stop-row { grid-template-columns: 32px minmax(0,1fr); }
  .route-stop-row .form-group,.route-stop-row .form-group:first-of-type { grid-column: 2; }
  .route-stop-remove { grid-column: 1; grid-row: 2; }
  .report-period label,.report-period .button { width: 100%; }
}
