/*
 * TourDesk tour operator pages: sign-up, login and the tour operator dashboard.
 * Uses the same --tdsk-* colour variables as the rest of TourDesk (Kadence palette).
 */

.tdsk-operator { max-width: 1100px; margin: 0 auto; font-size: 1rem; line-height: 1.55; }
.tdsk-dash { container: tdsk-dash / inline-size; }
.tdsk-operator--narrow { max-width: 640px; }
.tdsk-operator h2, .tdsk-operator h3 { margin: 0 0 12px; line-height: 1.25; }
.tdsk-operator h2 { font-size: 1.45rem; }
.tdsk-operator h3 { font-size: 1.1rem; }
.tdsk-operator p { margin: 0 0 12px; }
.tdsk-operator p:last-child { margin-bottom: 0; }
.tdsk-operator a { color: var(--tdsk-accent); }
.tdsk-operator .tdsk-muted { color: var(--tdsk-muted); }
.tdsk-operator .tdsk-small { font-size: 0.875rem; margin-top: 10px; }

/* Panels */
.tdsk-operator .tdsk-panel { background: var(--tdsk-bg); border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius); padding: clamp(16px, 2.5vw, 26px); margin: 0 0 20px; }
.tdsk-operator .tdsk-panel--note { background: var(--tdsk-surface); }
.tdsk-operator .tdsk-panel__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin: 0 0 14px; }
.tdsk-operator .tdsk-panel__head h2 { margin: 0; }
.tdsk-operator .tdsk-empty { color: var(--tdsk-muted); margin: 0; }

/* Forms */
.tdsk-operator .tdsk-form__title { margin-bottom: 6px; }
.tdsk-operator .tdsk-form__intro { color: var(--tdsk-muted); margin-bottom: 18px; }
.tdsk-operator .tdsk-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.tdsk-operator .tdsk-field { margin: 0 0 14px; display: flex; flex-direction: column; gap: 5px; }
.tdsk-operator .tdsk-field--wide { grid-column: 1 / -1; }
.tdsk-operator .tdsk-field > label, .tdsk-operator .tdsk-field__label { font-weight: 600; color: var(--tdsk-ink); font-size: 0.95rem; }
.tdsk-operator .tdsk-field__help { color: var(--tdsk-muted); font-size: 0.85rem; }
.tdsk-operator input[type=text], .tdsk-operator input[type=email], .tdsk-operator input[type=tel], .tdsk-operator input[type=url],
.tdsk-operator input[type=password], .tdsk-operator input[type=number], .tdsk-operator select, .tdsk-operator textarea {
	width: 100%; max-width: 100%; padding: 10px 12px; border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius-sm);
	background: var(--tdsk-bg); color: var(--tdsk-ink); font: inherit; line-height: 1.4; box-shadow: none; margin: 0;
}
.tdsk-operator input:focus, .tdsk-operator select:focus, .tdsk-operator textarea:focus { border-color: var(--tdsk-accent); outline: 2px solid color-mix(in srgb, var(--tdsk-accent) 25%, transparent); outline-offset: 0; }
.tdsk-operator .tdsk-check-line label { display: flex; gap: 8px; align-items: flex-start; }
.tdsk-operator .tdsk-check-line input { margin-top: 4px; }
.tdsk-operator .tdsk-form__foot { text-align: center; color: var(--tdsk-muted); margin-top: 14px; }
.tdsk-operator .tdsk-trap { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.tdsk-operator #loginform p { margin: 0 0 14px; display: flex; flex-direction: column; gap: 5px; }
.tdsk-operator #loginform label { font-weight: 600; color: var(--tdsk-ink); }
.tdsk-operator #loginform .login-remember label { font-weight: 400; flex-direction: row; display: flex; gap: 8px; align-items: center; }
.tdsk-operator #loginform input[type=submit] { width: 100%; }
.tdsk-operator #loginform input[type=submit], .tdsk-operator .tdsk-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 18px; border-radius: var(--tdsk-radius-sm) !important;
	border: 1px solid var(--tdsk-line) !important; background: var(--tdsk-bg) !important; color: var(--tdsk-ink) !important;
	font: inherit; font-weight: 600; line-height: 1.3; text-decoration: none !important; cursor: pointer; box-shadow: none !important;
}
.tdsk-operator #loginform input[type=submit], .tdsk-operator .tdsk-button--primary { background: var(--tdsk-accent) !important; border-color: var(--tdsk-accent) !important; color: #fff !important; }
.tdsk-operator .tdsk-button--primary:hover, .tdsk-operator #loginform input[type=submit]:hover { background: var(--tdsk-accent-strong) !important; }
.tdsk-operator .tdsk-button:hover { border-color: var(--tdsk-accent) !important; }
.tdsk-operator .tdsk-button--block { width: 100%; }
.tdsk-operator .tdsk-button--link { background: transparent !important; border-color: transparent !important; color: var(--tdsk-accent) !important; padding-left: 8px; padding-right: 8px; }
.tdsk-operator .tdsk-button--danger { color: #b3261e !important; }
.tdsk-operator .tdsk-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.tdsk-operator .tdsk-inline-form { display: inline; margin: 0; }

/* Notices */
.tdsk-operator .tdsk-notice { border-radius: var(--tdsk-radius-sm); padding: 12px 16px; margin: 0 0 16px; border-left: 4px solid var(--tdsk-accent); background: var(--tdsk-surface); }
.tdsk-operator .tdsk-notice p { margin: 0; }
.tdsk-operator .tdsk-notice p + p { margin-top: 6px; }
.tdsk-operator .tdsk-notice--error { border-left-color: #b3261e; background: #fbeceb; color: #5f1410; }
.tdsk-operator .tdsk-notice--success { border-left-color: #2e7d32; background: #edf6ee; color: #173f19; }
.tdsk-operator .tdsk-notice--warn { border-left-color: var(--tdsk-sun); background: #fdf5e7; color: #4d3510; }
.tdsk-operator .tdsk-legacy { margin-top: 8px !important; padding: 8px 10px; background: #fff; border-radius: 6px; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 0.9rem; }

/* Pills */
.tdsk-operator .tdsk-pill { display: inline-block; padding: 2px 10px; border-radius: 999px; font-size: 0.8rem; font-weight: 600; background: var(--tdsk-surface); color: var(--tdsk-text); white-space: nowrap; }
.tdsk-operator .tdsk-pill--publish, .tdsk-operator .tdsk-pill--completed, .tdsk-operator .tdsk-pill--payout-completed { background: #e3f1e4; color: #1d5a21; }
.tdsk-operator .tdsk-pill--pending, .tdsk-operator .tdsk-pill--processing, .tdsk-operator .tdsk-pill--payout-pending, .tdsk-operator .tdsk-pill--warn { background: #fdf0d9; color: #6b4a12; }
.tdsk-operator .tdsk-pill--on-hold { background: #e7eefb; color: #23407a; }
.tdsk-operator .tdsk-pill--cancelled, .tdsk-operator .tdsk-pill--refunded, .tdsk-operator .tdsk-pill--failed, .tdsk-operator .tdsk-pill--payout-decline { background: #f6e3e2; color: #7a1f19; }

/* Dashboard shell */
.tdsk-dash__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 14px; }
.tdsk-dash__who { display: flex; align-items: center; gap: 12px; min-width: 0; }
.tdsk-operator .tdsk-dash__logo { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; flex: none; }
.tdsk-dash__logo--initial { display: inline-flex; align-items: center; justify-content: center; background: var(--tdsk-accent); color: #fff; font-weight: 700; font-size: 1.3rem; }
.tdsk-operator .tdsk-dash__name { font-size: 1.2rem; font-weight: 700; color: var(--tdsk-ink); margin: 0; line-height: 1.2; }
.tdsk-dash__logout { white-space: nowrap; }
.tdsk-dash__nav { display: flex; gap: 4px; overflow-x: auto; border-bottom: 1px solid var(--tdsk-line); margin: 0 0 22px; scrollbar-width: thin; }
.tdsk-operator .tdsk-dash__nav a { padding: 10px 14px; text-decoration: none; color: var(--tdsk-text); font-weight: 600; border-bottom: 3px solid transparent; margin-bottom: -1px; white-space: nowrap; }
.tdsk-operator .tdsk-dash__nav a:hover { color: var(--tdsk-ink); }
.tdsk-operator .tdsk-dash__nav a.is-current { color: var(--tdsk-accent); border-bottom-color: var(--tdsk-accent); }

/* Stats */
.tdsk-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0 0 20px; }
.tdsk-stats--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tdsk-stat { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px; border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius); background: var(--tdsk-bg); }
.tdsk-stat__label { color: var(--tdsk-muted); font-size: 0.875rem; font-weight: 600; }
.tdsk-stat__value { font-size: clamp(1.15rem, 3.2cqi, 1.5rem); color: var(--tdsk-ink); line-height: 1.2; font-variant-numeric: tabular-nums; }
.tdsk-stat__note { color: var(--tdsk-muted); font-size: 0.8rem; }
.tdsk-operator .tdsk-stat a { font-size: 0.875rem; font-weight: 600; }

/* Lists and tables */
.tdsk-operator .tdsk-list { list-style: none; margin: 0; padding: 0; }
.tdsk-operator .tdsk-list li { display: grid; grid-template-columns: 170px 1fr auto; gap: 12px; padding: 10px 0; border-top: 1px solid var(--tdsk-line); margin: 0; align-items: baseline; }
.tdsk-operator .tdsk-list li:first-child { border-top: 0; }
.tdsk-list__date { font-weight: 600; color: var(--tdsk-ink); }
.tdsk-list__meta { color: var(--tdsk-muted); white-space: nowrap; }
.tdsk-table-wrap { overflow-x: auto; }
.tdsk-operator .tdsk-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; margin: 0; border: 0; }
.tdsk-operator .tdsk-table th, .tdsk-operator .tdsk-table td { text-align: left; padding: 11px 10px; border: 0; border-bottom: 1px solid var(--tdsk-line); vertical-align: top; background: none; }
.tdsk-operator .tdsk-table th { font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--tdsk-muted); font-weight: 700; }
.tdsk-operator .tdsk-table .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.tdsk-operator .tdsk-table tr.is-void td { color: var(--tdsk-muted); text-decoration: line-through; text-decoration-color: color-mix(in srgb, currentColor 40%, transparent); }
.tdsk-operator .tdsk-table tr.is-void td .tdsk-pill { text-decoration: none; }
.tdsk-segmented { display: inline-flex; border: 1px solid var(--tdsk-line); border-radius: 999px; padding: 3px; }
.tdsk-operator .tdsk-segmented a { padding: 5px 14px; border-radius: 999px; text-decoration: none; color: var(--tdsk-text); font-weight: 600; font-size: 0.9rem; }
.tdsk-operator .tdsk-segmented a.is-current { background: var(--tdsk-accent); color: #fff; }
.tdsk-pager { display: flex; justify-content: center; align-items: center; gap: 18px; margin: 16px 0 0; color: var(--tdsk-muted); }

/* Tours list */
.tdsk-operator .tdsk-tours { list-style: none; margin: 0 0 20px; padding: 0; border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius); background: var(--tdsk-bg); }
.tdsk-operator .tdsk-tours__item { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 16px; border-top: 1px solid var(--tdsk-line); margin: 0; }
.tdsk-operator .tdsk-tours__item:first-child { border-top: 0; }
.tdsk-tours__thumb { width: 72px; height: 54px; border-radius: 8px; overflow: hidden; background: var(--tdsk-surface); }
.tdsk-operator .tdsk-tours__thumb img { width: 100%; height: 100%; object-fit: cover; }
.tdsk-operator .tdsk-tours__title { font-weight: 700; color: var(--tdsk-ink); margin: 0 0 4px; }
.tdsk-operator .tdsk-tours__meta { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; margin: 0; font-size: 0.9rem; }
.tdsk-tours__actions { display: flex; flex-wrap: wrap; gap: 4px; justify-content: flex-end; align-items: center; }

/* Tour form */
.tdsk-operator .tdsk-photo { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.tdsk-operator .tdsk-photo__preview:empty { display: none; }
.tdsk-operator .tdsk-photo__preview img { width: 220px; height: 150px; object-fit: cover; border-radius: 8px; }
.tdsk-operator .tdsk-photo--small .tdsk-photo__preview img { width: 80px; height: 80px; border-radius: 50%; }
.tdsk-terms { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.tdsk-operator .tdsk-terms__group { border: 0; padding: 0; margin: 0; min-width: 0; }
.tdsk-operator .tdsk-terms__group legend { font-weight: 600; color: var(--tdsk-ink); padding: 0; margin-bottom: 6px; }
.tdsk-terms__list { max-height: 220px; overflow-y: auto; border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius-sm); padding: 8px 10px; }
.tdsk-operator .tdsk-terms__list label { display: flex; gap: 8px; align-items: center; padding: 3px 0; font-size: 0.95rem; }
.tdsk-operator .tdsk-panel--editor { padding: 0; overflow: hidden; }
.tdsk-operator .tdsk-panel--editor > h3 { padding: 18px 22px 0; }
.tdsk-operator .tdsk-panel--editor .tdsk-editor { border: 0; }
.tdsk-operator .tdsk-panel--editor .tdsk-editor input[type=checkbox], .tdsk-operator .tdsk-panel--editor .tdsk-editor input[type=radio] { width: auto; }
.tdsk-operator .tdsk-panel--editor .button { display: inline-block; padding: 6px 12px; border: 1px solid var(--tdsk-accent); color: var(--tdsk-accent); background: var(--tdsk-bg); border-radius: 6px; font-size: 0.9rem; line-height: 1.4; cursor: pointer; text-decoration: none; }
.tdsk-operator .wp-editor-wrap { border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius-sm); overflow: hidden; }
.tdsk-savebar { position: sticky; bottom: 0; z-index: 5; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 14px 16px; margin: 0 0 20px; background: var(--tdsk-bg); border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius); box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.06); }

@container tdsk-dash (max-width: 860px) {
	.tdsk-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.tdsk-terms { grid-template-columns: minmax(0, 1fr); }
}
@container tdsk-dash (max-width: 480px) {
	.tdsk-stats, .tdsk-stats--3 { grid-template-columns: minmax(0, 1fr); }
}
@container tdsk-dash (max-width: 520px) {
	.tdsk-operator .tdsk-form__grid { grid-template-columns: minmax(0, 1fr); }
	.tdsk-operator .tdsk-list li { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.tdsk-operator .tdsk-tours__item { grid-template-columns: 56px minmax(0, 1fr); }
	.tdsk-tours__thumb { width: 56px; height: 44px; }
	.tdsk-tours__actions { grid-column: 1 / -1; justify-content: flex-start; }
	/* Tables become cards. */
	.tdsk-operator .tdsk-table thead { display: none; }
	.tdsk-operator .tdsk-table, .tdsk-operator .tdsk-table tbody, .tdsk-operator .tdsk-table tr, .tdsk-operator .tdsk-table td { display: block; width: 100%; }
	.tdsk-operator .tdsk-table tr { border-bottom: 1px solid var(--tdsk-line); padding: 8px 0; }
	.tdsk-operator .tdsk-table td { border: 0; padding: 4px 0; text-align: left !important; }
	.tdsk-operator .tdsk-table td::before { content: attr(data-label); display: block; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--tdsk-muted); font-weight: 700; }
}

/* ---------- Theme-proofing ----------
 * Page builders and themes style every h2/h3/p/button/input inside page content.
 * These rules use a doubled class (.tdsk.tdsk-operator) so they win over those. */
.tdsk.tdsk-operator h2, .tdsk.tdsk-operator h3, .tdsk.tdsk-operator h4 { margin: 0 0 12px; padding: 0; font-weight: 700; letter-spacing: normal; text-transform: none; }
.tdsk.tdsk-operator h2 { font-size: 1.45rem; }
.tdsk.tdsk-operator h3 { font-size: 1.1rem; }
.tdsk.tdsk-operator p { margin: 0 0 12px; }
.tdsk.tdsk-operator p:last-child { margin-bottom: 0; }
.tdsk.tdsk-operator ul, .tdsk.tdsk-operator ol { margin: 0; padding: 0; }
.tdsk.tdsk-operator a { text-decoration: none; }
.tdsk.tdsk-operator a:hover { text-decoration: underline; }
.tdsk.tdsk-operator .tdsk-dash__nav a:hover, .tdsk.tdsk-operator .tdsk-button:hover, .tdsk.tdsk-operator .tdsk-segmented a:hover { text-decoration: none; }
.tdsk.tdsk-operator legend { font-size: 0.95rem; font-weight: 600; line-height: 1.4; }
.tdsk.tdsk-operator input[type=checkbox], .tdsk.tdsk-operator input[type=radio] {
	appearance: auto; -webkit-appearance: auto; width: 18px !important; height: 18px !important; min-width: 18px; margin: 0; padding: 0; flex: none; accent-color: var(--tdsk-accent); box-shadow: none;
}

/* Tour details editor (the admin editor shown on the front end). */
.tdsk.tdsk-operator .tdsk-editor { margin: 0; grid-template-columns: 200px minmax(0, 1fr); font-size: 0.95rem; }
.tdsk.tdsk-operator .tdsk-editor__tabs { background: var(--tdsk-surface); border-right: 1px solid var(--tdsk-line); padding: 8px 0; }
.tdsk.tdsk-operator button.tdsk-editor__tab {
	display: block; width: 100%; margin: 0; padding: 10px 16px !important; border: 0 !important; border-left: 3px solid transparent !important; border-radius: 0 !important;
	background: transparent !important; color: var(--tdsk-text) !important; font: inherit; font-size: 0.92rem; font-weight: 500; text-align: left; text-transform: none; letter-spacing: normal; box-shadow: none !important; line-height: 1.4; min-height: 0;
}
.tdsk.tdsk-operator button.tdsk-editor__tab:hover { background: var(--tdsk-bg) !important; color: var(--tdsk-ink) !important; }
.tdsk.tdsk-operator button.tdsk-editor__tab[aria-selected="true"] { background: var(--tdsk-bg) !important; border-left-color: var(--tdsk-accent) !important; color: var(--tdsk-accent) !important; font-weight: 700; }
.tdsk.tdsk-operator .tdsk-editor__panels { padding: 18px 22px; min-width: 0; }
.tdsk.tdsk-operator .tdsk-editor__panel-title { font-size: 1.05rem; margin: 0 0 14px; }
.tdsk.tdsk-operator .tdsk-editor label { font-weight: 600; color: var(--tdsk-ink); }
.tdsk.tdsk-operator .tdsk-editor .tdsk-f__check { font-weight: 400; color: var(--tdsk-text); gap: 8px; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-f__help { color: var(--tdsk-muted); font-size: 0.85rem; margin: 4px 0 0; }
.tdsk.tdsk-operator .tdsk-editor button:not(.tdsk-editor__tab), .tdsk.tdsk-operator .tdsk-editor .button {
	display: inline-flex; align-items: center; padding: 6px 12px !important; border: 1px solid var(--tdsk-accent) !important; border-radius: 6px !important;
	background: var(--tdsk-bg) !important; color: var(--tdsk-accent) !important; font: inherit; font-size: 0.875rem; font-weight: 600; line-height: 1.4; text-transform: none; letter-spacing: normal; box-shadow: none !important; min-height: 0;
}
.tdsk.tdsk-operator .tdsk-editor .tdsk-repeater__row summary { cursor: pointer; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-repeater__row summary button { padding: 2px 6px !important; border: 0 !important; background: none !important; }
.tdsk.tdsk-operator .tdsk-editor [data-tdsk-remove] { color: #b3261e !important; }
.tdsk.tdsk-operator .tdsk-panel--editor > h3 { padding: 20px 22px 6px; margin: 0; }
@container tdsk-dash (max-width: 760px) {
	.tdsk.tdsk-operator .tdsk-editor { grid-template-columns: minmax(0, 1fr); }
	.tdsk.tdsk-operator .tdsk-editor__tabs { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--tdsk-line); padding: 0; }
	.tdsk.tdsk-operator button.tdsk-editor__tab { width: auto; white-space: nowrap; border-left: 0 !important; border-bottom: 3px solid transparent !important; }
	.tdsk.tdsk-operator button.tdsk-editor__tab[aria-selected="true"] { border-bottom-color: var(--tdsk-accent) !important; }
	.tdsk.tdsk-operator .tdsk-editor__panels { padding: 16px; }
}

/* Sign-up and login forms (not inside the dashboard container) */
@media (max-width: 640px) {
	.tdsk-operator .tdsk-form__grid { grid-template-columns: minmax(0, 1fr); }
}
.tdsk-operator .tdsk-tours__item--plain { grid-template-columns: minmax(0, 1fr) auto; }

/* Traveller details under each booking. */
.tdsk-operator .tdsk-travellers-list { margin-top: 6px; }
.tdsk-operator .tdsk-travellers-list summary { cursor: pointer; color: var(--tdsk-accent); font-size: 0.9rem; }
.tdsk-operator .tdsk-travellers-list p { margin: 8px 0 0; font-size: 0.9rem; line-height: 1.45; }

/* Tour name, description, photo and categories at the top of the General tab. */
.tdsk-operator .tdsk-tour-basics { margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid var(--tdsk-line); }
.tdsk-operator .tdsk-tour-basics .tdsk-field { margin: 0 0 16px; }
.tdsk-operator .tdsk-tour-basics__title { margin: 20px 0 10px; font-size: 1rem; }

/* ---------- 0.4.9: dark blue menus, darker borders, dropdown arrows, short fields side by side ---------- */
.tdsk-operator {
	--tdsk-line: #a9b3c1;        /* borders, a step darker than the theme's */
	/* Menus use the theme's accent colours (Kadence palette 1 and 2). */
	--tdsk-nav-bg: var(--tdsk-accent);
	--tdsk-nav-hover: var(--tdsk-accent-strong);
	--tdsk-nav-active: color-mix(in srgb, var(--tdsk-accent-strong) 72%, #000);
	--tdsk-nav-text: rgba(255, 255, 255, 0.9);
	--tdsk-nav-bar: #fff;
}
/* Dashboard menu (Overview, Tours, Bookings ...). */
.tdsk.tdsk-operator .tdsk-dash__nav { background: var(--tdsk-nav-bg); border: 0; border-radius: var(--tdsk-radius); padding: 6px; gap: 4px; }
.tdsk.tdsk-operator .tdsk-dash__nav a { color: var(--tdsk-nav-text); border: 0; border-radius: var(--tdsk-radius-sm); margin: 0; padding: 9px 14px; }
.tdsk.tdsk-operator .tdsk-dash__nav a:hover { background: var(--tdsk-nav-hover); color: #fff; }
.tdsk.tdsk-operator .tdsk-dash__nav a.is-current { background: var(--tdsk-nav-active); color: #fff; box-shadow: inset 0 -3px 0 var(--tdsk-nav-bar); }
.tdsk.tdsk-operator .tdsk-dash__nav a:focus-visible { outline: 2px solid var(--tdsk-nav-bar); outline-offset: 1px; }
/* Tour details tabs. */
.tdsk.tdsk-operator .tdsk-editor__tabs { background: var(--tdsk-nav-bg); border-right: 0; }
.tdsk.tdsk-operator button.tdsk-editor__tab { color: var(--tdsk-nav-text) !important; }
.tdsk.tdsk-operator button.tdsk-editor__tab:hover { background: var(--tdsk-nav-hover) !important; color: #fff !important; }
.tdsk.tdsk-operator button.tdsk-editor__tab[aria-selected="true"] { background: var(--tdsk-nav-active) !important; color: #fff !important; border-left-color: var(--tdsk-nav-bar) !important; }
.tdsk.tdsk-operator .tdsk-editor { --tdsk-border: var(--tdsk-line); }
.tdsk.tdsk-operator .tdsk-panel--editor { overflow: hidden; }
/* Dropdown arrow on every select (themes often remove it). */
.tdsk.tdsk-operator select {
	-webkit-appearance: none; appearance: none; padding-right: 38px !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1.5 1.5l5.5 5.5 5.5-5.5' fill='none' stroke='%2347a0ff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 14px 9px !important;
}
/* Tick-box lists as dropdowns. */
.tdsk.tdsk-operator .tdsk-editor button.tdsk-multi__toggle {
	display: flex; width: 100%; justify-content: space-between; padding: 10px 12px !important; border: 1px solid var(--tdsk-line) !important; border-radius: var(--tdsk-radius-sm) !important;
	background: var(--tdsk-bg) !important; color: var(--tdsk-ink) !important; font-weight: 400; font-size: 0.95rem;
}
.tdsk.tdsk-operator .tdsk-editor button.tdsk-multi__toggle:hover { border-color: var(--tdsk-accent) !important; }
.tdsk.tdsk-operator .tdsk-multi.is-open button.tdsk-multi__toggle { border-color: var(--tdsk-accent) !important; }
.tdsk-operator .tdsk-multi__text.is-empty { color: var(--tdsk-muted); }
.tdsk-operator .tdsk-terms__list { max-height: 240px; }
.tdsk-operator .tdsk-multi [data-tdsk-multi-list] { border-color: var(--tdsk-line); border-radius: var(--tdsk-radius-sm); }
.tdsk-operator .tdsk-terms { align-items: start; }
/* Extra adults: dropdown, amount and result on one line. */
.tdsk.tdsk-operator .tdsk-steps__row select { width: auto; flex: 1 1 200px; }
.tdsk.tdsk-operator .tdsk-steps__row input[type=number] { width: 9em; flex: 0 0 9em; }
@container tdsk-dash (max-width: 560px) {
	.tdsk-operator .tdsk-f--half, .tdsk-operator .tdsk-f--third { flex-basis: 100%; }
}

.tdsk-operator .tdsk-dash__name-tag { font-weight: 400; color: var(--tdsk-muted); }
.tdsk-operator .tdsk-multi__arrow { color: #47a0ff; }

/* Custom dates and other lists of rows: room between the help text, the rows and the button. */
.tdsk.tdsk-operator .tdsk-editor .tdsk-f__help ul { margin: 8px 0 0 !important; padding-left: 20px !important; list-style: disc; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-f__help li { margin: 0 0 4px; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-repeater__row summary button.tdsk-repeater__remove { padding: 2px 6px !important; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-repeater__rows { display: grid; gap: 10px; margin: 0 0 16px !important; padding: 0 !important; list-style: none; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-repeater__rows:empty { margin: 0 !important; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-f__help + .tdsk-repeater, .tdsk.tdsk-operator .tdsk-editor div.tdsk-f__help + .tdsk-repeater { margin-top: 18px; }
.tdsk.tdsk-operator input[type=date], .tdsk.tdsk-operator input[type=time] {
	width: 100%; max-width: 100%; min-width: 0; padding: 10px 12px; border: 1px solid var(--tdsk-line); border-radius: var(--tdsk-radius-sm);
	background: var(--tdsk-bg); color: var(--tdsk-ink); font: inherit; line-height: 1.4; box-shadow: none; box-sizing: border-box;
}
.tdsk.tdsk-operator .tdsk-repeater__row .tdsk-f > label { font-size: 0.9rem; }
.tdsk.tdsk-operator .tdsk-repeater__row .tdsk-f > label > select, .tdsk.tdsk-operator .tdsk-repeater__row .tdsk-f > label > input, .tdsk.tdsk-operator .tdsk-repeater__row .tdsk-f > label > textarea { font-size: 0.95rem; }
.tdsk.tdsk-operator .tdsk-repeater__row .tdsk-editor__grid { padding: 16px; }
/* In the dashboard's narrower column, date ranges use two columns: From | To, Status | Places. */
.tdsk.tdsk-operator .tdsk-dates .tdsk-f--third { flex: 0 1 calc(50% - 9px); min-width: 0; }
@container tdsk-dash (max-width: 480px) {
	.tdsk.tdsk-operator .tdsk-dates .tdsk-f--third { flex-basis: 100%; }
}
/* Every editor input includes its padding and border in its width, so nothing pokes out of a row. */
.tdsk.tdsk-operator .tdsk-editor input, .tdsk.tdsk-operator .tdsk-editor select, .tdsk.tdsk-operator .tdsk-editor textarea { box-sizing: border-box; max-width: 100%; }
.tdsk.tdsk-operator .tdsk-editor .tdsk-image-field input { min-width: 0; flex: 1 1 auto; }

/* Payouts tied to invoices. */
.tdsk-operator .tdsk-invoices__check { width: 36px; }
.tdsk-operator .tdsk-invoices tfoot th { text-align: left; padding: 12px 10px; border-top: 2px solid var(--tdsk-line); border-bottom: 0; }
.tdsk-operator .tdsk-invoices tfoot th.num { text-align: right; }
.tdsk-operator .tdsk-invoices label { font-weight: 400; cursor: pointer; }
.tdsk-operator .tdsk-payout-form__error { color: #b3261e; font-weight: 600; }
.tdsk-operator .tdsk-invoice-list__item { display: block; white-space: nowrap; }
.tdsk-operator .tdsk-payout-state { font-weight: 600; font-size: 0.9rem; }
.tdsk-operator .tdsk-payout-state--paid { color: #1d5a21; }
.tdsk-operator .tdsk-payout-state--requested, .tdsk-operator .tdsk-payout-state--part { color: #8a5a00; }
.tdsk-operator .tdsk-payout-state--unpaid { color: var(--tdsk-ink); }
.tdsk-operator .tdsk-payout-state--waiting, .tdsk-operator .tdsk-payout-state--void { color: var(--tdsk-muted); font-weight: 400; }
@container tdsk-dash (max-width: 520px) {
	.tdsk-operator .tdsk-invoices td.tdsk-invoices__check { display: inline-block; width: auto; float: left; margin: 2px 10px 0 0; }
	.tdsk-operator .tdsk-invoices thead { display: none; }
	.tdsk-operator .tdsk-invoices tfoot, .tdsk-operator .tdsk-invoices tfoot tr { display: flex; justify-content: space-between; width: 100%; }
}
