/* ==========================================================================
   FisaDeCazare - stiluri formular
   ========================================================================== */

.fdc-wrap {
	max-width: 900px;
	margin: 0 auto;
	font-family: inherit; /* fontul de text al site-ului (vezi „Un singur font” mai jos) */
	color: #1a1a1a;
}

.fdc-form {
	background: #fff;
}

.fdc-section-title {
	font-size: 1.75rem;
	margin: 0 0 1.5rem;
	border-bottom: 2px solid #2c5282;
	padding-bottom: .5rem;
}

.fdc-fieldset {
	border: 1px solid #d8dde3;
	border-radius: 8px;
	padding: 1.25rem 1.5rem 1.5rem;
	margin: 0 0 1.5rem;
	background: #fbfcfd;
}

.fdc-fieldset legend {
	padding: 0 .5rem;
	font-weight: 600;
	color: #2c5282;
	font-size: 1.05rem;
}

.fdc-subtitle {
	margin: 1rem 0 .5rem;
	font-size: 1rem;
	color: #4a5568;
}

.fdc-row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1rem;
	margin-bottom: 1rem;
}

.fdc-field {
	display: flex;
	flex-direction: column;
}

.fdc-field label {
	font-size: .9rem;
	font-weight: 500;
	margin-bottom: .35rem;
	color: #2d3748;
}

.fdc-field input[type="text"],
.fdc-field input[type="number"],
.fdc-field input[type="date"],
.fdc-field input[type="file"],
.fdc-field select {
	padding: .55rem .75rem;
	border: 1px solid #cbd5e0;
	border-radius: 6px;
	font-size: .95rem;
	background: #fff;
	transition: border-color .15s, box-shadow .15s;
}

.fdc-field input:focus,
.fdc-field select:focus {
	outline: none;
	border-color: #2c5282;
	box-shadow: 0 0 0 3px rgba(44, 82, 130, .15);
}

.fdc-field input:disabled,
.fdc-field select:disabled {
	background: #edf2f7;
	color: #4a5568;
	cursor: not-allowed;
}

.fdc-field input.fdc-error,
.fdc-field select.fdc-error,
.fdc-field textarea.fdc-error,
input.fdc-error,
select.fdc-error,
textarea.fdc-error {
	border-color: #c53030;
	background: #fff5f5;
	box-shadow: 0 0 0 1px #c53030;
}

.fdc-hint {
	color: #718096;
	font-size: .8rem;
	margin-top: .25rem;
}

.fdc-req {
	color: #c53030;
}

/* Semnătură */
.fdc-signature-wrap {
	border: 2px dashed #cbd5e0;
	border-radius: 6px;
	padding: .5rem;
	background: #fff;
	display: inline-block;
	max-width: 100%;
}

.fdc-signature-pad {
	display: block;
	background: #fff;
	width: 100%;
	max-width: 600px;
	height: 200px;
	touch-action: none;
	cursor: crosshair;
}

.fdc-signature-clear {
	margin-top: .5rem;
	padding: .35rem .75rem;
	background: #fff;
	border: 1px solid #cbd5e0;
	border-radius: 4px;
	font-size: .85rem;
	cursor: pointer;
}

.fdc-signature-clear:hover {
	background: #f7fafc;
}

/* Butoane */
.fdc-actions {
	display: flex;
	justify-content: flex-end;
	gap: .75rem;
	margin-top: 1.5rem;
}

.fdc-btn {
	padding: .75rem 1.75rem;
	border-radius: 6px;
	border: none;
	font-size: 1rem;
	font-weight: 500;
	cursor: pointer;
	transition: background-color .15s;
}

.fdc-btn-primary {
	background: #2c5282;
	color: #fff;
}

.fdc-btn-primary:hover:not(:disabled) {
	background: #2a4365;
}

.fdc-btn:disabled {
	opacity: .6;
	cursor: not-allowed;
}

/* Mesaje */
.fdc-messages {
	margin-top: 1rem;
}

.fdc-msg {
	padding: .85rem 1rem;
	border-radius: 6px;
	margin-bottom: .5rem;
	font-size: .95rem;
}

.fdc-msg-success {
	background: #f0fff4;
	border: 1px solid #9ae6b4;
	color: #22543d;
}

.fdc-msg-error {
	background: #fff5f5;
	border: 1px solid #feb2b2;
	color: #742a2a;
}

.fdc-field-error {
	color: #c53030;
	font-size: .8rem;
	margin-top: .25rem;
	display: block;
}

/* Oaspeți */
.fdc-oaspete {
	border-left: 4px solid #2c5282;
}

/* Responsive */
@media (max-width: 600px) {
	.fdc-row {
		grid-template-columns: 1fr;
	}

	.fdc-actions {
		flex-direction: column-reverse;
	}

	.fdc-btn {
		width: 100%;
	}
}

/* ==========================================================================
   Hospitable extras: bara de progres + buton draft
   ========================================================================== */

#fdc-progress {
	margin-bottom: 1.25rem;
}

.fdc-progress-label {
	font-size: .85rem;
	color: #4a5568;
	margin-bottom: .35rem;
	font-weight: 500;
}

.fdc-progress-track {
	background: #edf2f7;
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
}

.fdc-progress-fill {
	background: linear-gradient(90deg, #38a169, #48bb78);
	height: 100%;
	width: 0;
	transition: width .4s ease;
	border-radius: 999px;
}

.fdc-btn-secondary {
	background: #fff;
	color: #2c5282;
	border: 1px solid #2c5282;
}

.fdc-btn-secondary:hover:not(:disabled) {
	background: #ebf4ff;
}

/* ==========================================================================
   Hospitable banner (sus în formular)
   ========================================================================== */

.fdc-banner {
	display: flex;
	gap: 16px;
	padding: 16px 20px;
	margin: 0 0 1.5rem;
	border-radius: 8px;
	border-left: 4px solid;
	background: #fff;
}

.fdc-banner-icon {
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 16px;
	color: #fff;
}

.fdc-banner-content {
	flex: 1;
	min-width: 0;
}

.fdc-banner h3 {
	margin: 0 0 .5rem;
	font-size: 1.05rem;
	color: #1a1a1a;
}

.fdc-banner-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 4px 16px;
	font-size: .9rem;
	color: #2d3748;
}

/* SUCCESS - rezervare incarcata */
.fdc-banner-success {
	background: #f0fff4;
	border-color: #38a169;
}
.fdc-banner-success .fdc-banner-icon {
	background: #38a169;
}

/* EXISTING - reluare draft sau fisa finalizata */
.fdc-banner-existing {
	background: #ebf8ff;
	border-color: #2c5282;
}
.fdc-banner-existing .fdc-banner-icon {
	background: #2c5282;
}

/* ERROR */
.fdc-banner-error {
	background: #fff5f5;
	border-color: #c53030;
}
.fdc-banner-error .fdc-banner-icon {
	background: #c53030;
}

.fdc-banner-warning {
	margin: .75rem 0 0;
	padding: .5rem .75rem;
	background: #fffaf0;
	border: 1px solid #f6ad55;
	border-radius: 4px;
	font-size: .85rem;
	color: #744210;
}

.fdc-banner-debug {
	margin-top: .75rem;
	padding: .75rem;
	background: rgba(0,0,0,.04);
	border-radius: 4px;
	font-size: .85rem;
}

.fdc-banner-debug summary {
	cursor: pointer;
	font-weight: 600;
	color: #4a5568;
}

.fdc-banner-debug p {
	margin: .5rem 0;
}

.fdc-banner-debug code {
	background: #fff;
	padding: 2px 6px;
	border-radius: 3px;
	font-size: .85em;
}

/* ==========================================================================
   Notice copii (între adulți și copii)
   ========================================================================== */
.fdc-children-notice {
	background: #fffbeb;
	border-left: 4px solid #d69e2e;
	padding: 12px 16px;
	margin: 16px 0;
	border-radius: 4px;
	color: #744210;
	font-size: .92rem;
	line-height: 1.5;
}

.fdc-children-notice strong {
	display: block;
}

/* ==========================================================================
   Debug panel Hospitable (vizibil doar pentru admin)
   ========================================================================== */
.fdc-debug-panel {
	background: #1a202c;
	color: #e2e8f0;
	border-radius: 6px;
	padding: 10px 14px;
	margin: 0 0 1rem;
	font-family: ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;
	font-size: 12px;
	border: 1px solid #2d3748;
}

.fdc-debug-panel summary {
	cursor: pointer;
	padding: 4px 0;
	color: #f7fafc;
}

.fdc-debug-panel summary strong {
	color: #f6e05e;
}

.fdc-debug-panel code {
	background: rgba(255,255,255,.1);
	padding: 1px 5px;
	border-radius: 3px;
	font-size: .95em;
	color: #fbd38d;
}

.fdc-debug-meta {
	margin: 8px 0;
	padding: 8px;
	background: rgba(255,255,255,.04);
	border-radius: 4px;
}

.fdc-debug-meta > div {
	margin-bottom: 4px;
}

.fdc-debug-json {
	background: #2d3748;
	color: #e2e8f0;
	padding: 10px;
	border-radius: 4px;
	max-height: 500px;
	overflow: auto;
	white-space: pre;
	font-size: 11px;
	line-height: 1.45;
}

/* DB debug panel - distinct vizual de Hospitable (verde vs galben) */
.fdc-debug-panel.fdc-debug-db summary strong {
	color: #68d391;
}

.fdc-debug-panel.fdc-debug-db {
	border-color: #2f4f4f;
}


/* ==========================================================================
   Oaspete - header collapsible (minimal)
   ========================================================================== */
.fdc-oaspete {
	padding: 0 !important;
}

.fdc-oaspete .fdc-oaspete-legend {
	padding: 0;
	width: 100%;
	margin: 0;
	display: block;
}

.fdc-oaspete-toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 10px 14px;
	background: transparent;
	border: none;
	cursor: pointer;
	font-size: 1rem;
	font-weight: 600;
	color: inherit;
	text-align: left;
}

.fdc-oaspete-toggle:hover {
	background: rgba(0,0,0,.03);
}

.fdc-oaspete-toggle:focus {
	outline: 2px solid currentColor;
	outline-offset: -2px;
}

.fdc-oaspete-toggle-icon {
	display: inline-block;
	font-size: .85em;
	min-width: 14px;
	opacity: .6;
}

.fdc-oaspete-label {
	flex: 1;
}

.fdc-oaspete-progress-text {
	font-weight: 400;
	font-size: .9em;
	opacity: .7;
}

/* Body - collapse */
.fdc-oaspete-body {
	padding: 14px;
	display: block;
}

.fdc-oaspete.fdc-collapsed .fdc-oaspete-body {
	display: none;
}


/* ==========================================================================
   Uploadable existing state (poza act / semnatura deja salvate)
   ========================================================================== */
.fdc-uploadable-existing {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	padding: 10px 12px;
	background: #f0fff4;
	border: 1px solid #9ae6b4;
	border-radius: 4px;
	margin-top: 4px;
}

.fdc-uploadable-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #22543d;
	font-weight: 600;
	font-size: .92rem;
	flex: 1;
}

.fdc-uploadable-icon {
	font-size: 1.1em;
	opacity: .9;
}

.fdc-uploadable-replace {
	background: transparent;
	color: #2d3748;
	border: 1px solid #cbd5e0;
	padding: 5px 12px;
	border-radius: 3px;
	cursor: pointer;
	font-size: .85rem;
	font-weight: 500;
}

.fdc-uploadable-replace:hover {
	background: #fff;
	border-color: #2d3748;
}

/* ==========================================================================
   "Copiază la toți" - buton pentru oaspetele principal
   ========================================================================== */
.fdc-copy-to-others {
	margin: 10px 0 18px;
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
}

.fdc-copy-to-others-btn {
	background: transparent;
	color: #2d3748;
	border: 1px dashed #a0aec0;
	padding: 8px 14px;
	border-radius: 4px;
	cursor: pointer;
	font-size: .88rem;
	font-weight: 500;
}

.fdc-copy-to-others-btn:hover {
	background: #f7fafc;
	border-color: #2d3748;
	border-style: solid;
}

.fdc-copy-result {
	font-size: .88rem;
}
.fdc-copy-result-success { color: #22543d; font-weight: 600; }
.fdc-copy-result-warn { color: #744210; }

/* ==========================================================================
   Bilingv RO/EN - subtitlu engleză sub label-ul principal
   ========================================================================== */
.fdc-en {
	display: inline-block;
	font-weight: 400;
	font-style: italic;
	color: #718096;
	font-size: .8em;
	margin-left: 4px;
}

.fdc-section-title .fdc-en,
.fdc-subtitle .fdc-en {
	display: block;
	margin-left: 0;
	margin-top: 2px;
}

/* În legend, .fdc-en stă pe aceeași linie (override la default-ul de mai sus). */
.fdc-fieldset legend .fdc-en {
	display: inline;
	margin-left: 6px;
	font-size: .9em;
}

/* Stil unitar pentru toate legendele de fieldset - același look & feel. */
.fdc-fieldset > legend {
	font-weight: 600;
	font-size: 1.05rem;
	color: #2d3748;
	padding: 0 8px;
	line-height: 1.4;
}

/* ==========================================================================
   Banner simplificat - subtitle + variante (readonly)
   ========================================================================== */
.fdc-banner-subtitle {
	margin: 6px 0 0;
	color: inherit;
	font-size: .95em;
	line-height: 1.45;
}
.fdc-banner-subtitle .fdc-en {
	display: block;
	margin-top: 2px;
}

.fdc-banner-readonly {
	background: #e6fffa;
	border-left: 4px solid #319795;
	color: #234e52;
}
.fdc-banner-readonly .fdc-banner-icon {
	color: #319795;
}

/* Mod vizualizare - form general */
.fdc-form-readonly .fdc-field input,
.fdc-form-readonly .fdc-field select,
.fdc-form-readonly .fdc-field textarea {
	background: #f7fafc;
	cursor: not-allowed;
}

.fdc-readonly-notice {
	padding: 14px 18px;
	background: #f0fff4;
	border: 1px dashed #38a169;
	color: #22543d;
	border-radius: 5px;
	font-weight: 600;
	text-align: center;
	margin: 0;
}
.fdc-readonly-notice .fdc-en {
	display: block;
	font-weight: 400;
	font-style: italic;
	color: #2f855a;
	margin-top: 3px;
}

/* ==========================================================================
   Radio group (Tip act)
   ========================================================================== */
.fdc-radio-group {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-top: 4px;
}

.fdc-radio {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border: 1px solid #cbd5e0;
	border-radius: 4px;
	cursor: pointer;
	font-weight: 400;
	background: #fff;
	transition: border-color .15s, background .15s;
}

.fdc-radio:hover {
	border-color: #2d3748;
	background: #f7fafc;
}

.fdc-radio input[type="radio"] {
	margin: 0;
	cursor: pointer;
}

.fdc-radio input[type="radio"]:checked + span {
	font-weight: 600;
}

.fdc-radio:has(input[type="radio"]:checked) {
	border-color: #2d3748;
	background: #edf2f7;
}

/* ==========================================================================
   Numele oaspetelui în legend (după "Adult 1")
   ========================================================================== */
.fdc-oaspete-name {
	font-weight: 400;
	color: #4a5568;
	font-style: italic;
	margin-left: 4px;
}

/* ==========================================================================
   Invoice section (factură)
   ========================================================================== */
.fdc-invoice-section {
	background: #fffdf4;
	border-left: 4px solid #ecc94b;
}

.fdc-invoice-warning {
	padding: 12px 16px;
	background: #fff5f5;
	border-left: 3px solid #c53030;
	color: #742a2a;
	margin-bottom: 16px;
	font-size: .95em;
}

.fdc-checkbox-wrap {
	margin: 12px 0;
}

.fdc-checkbox-label {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	cursor: pointer;
	padding: 10px 14px;
	border: 1px solid #cbd5e0;
	border-radius: 4px;
	background: #fff;
}

.fdc-checkbox-label:hover {
	border-color: #2d3748;
}

.fdc-checkbox-label input[type="checkbox"] {
	margin: 3px 0 0;
}

.fdc-checkbox-label .fdc-en {
	display: block;
	margin-top: 2px;
}

.fdc-invoice-details {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px dashed #cbd5e0;
}

.fdc-invoice-type-radios {
	display: flex;
	gap: 12px;
	margin-top: 6px;
	flex-wrap: wrap;
}

.fdc-invoice-type-radios .fdc-radio {
	flex: 1;
	min-width: 200px;
}

.fdc-invoice-preview {
	margin-top: 16px;
	padding: 16px 18px;
	background: #edf2f7;
	border-radius: 4px;
	border-left: 4px solid #4a5568;
}

.fdc-invoice-preview > strong {
	display: block;
	margin-bottom: 12px;
	color: #2d3748;
	font-size: .98em;
}

.fdc-invoice-preview-row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid #cbd5e0;
}

.fdc-invoice-preview-row:last-child {
	border-bottom: none;
}

.fdc-invoice-preview-label {
	flex: 0 0 180px;
	font-weight: 600;
	color: #4a5568;
	font-size: .9em;
	padding-top: 2px;
}

.fdc-invoice-preview-text {
	flex: 1;
	padding: 6px 10px;
	background: #fff;
	border: 1px dashed #a0aec0;
	border-radius: 3px;
	font-family: monospace;
	font-size: .92em;
	color: #2d3748;
}

.fdc-invoice-preview-total .fdc-amount-value {
	font-weight: 700;
	color: #22543d;
	font-size: 1.4em;
}

@media (max-width: 600px) {
	.fdc-invoice-preview-row {
		flex-direction: column;
		gap: 4px;
	}
	.fdc-invoice-preview-label {
		flex: 0 0 auto;
	}
}

/* ==========================================================================
   Invoice - state-uri noi (post-checkout, locked, expired)
   ========================================================================== */

/* Conținut locked - rândurile de info */
.fdc-invoice-locked-content {
	background: #f7fafc;
	border: 1px solid #e2e8f0;
	border-radius: 4px;
	padding: 14px 18px;
}
.fdc-invoice-locked-row {
	display: flex;
	gap: 12px;
	padding: 6px 0;
	border-bottom: 1px dotted #cbd5e0;
}
.fdc-invoice-locked-row:last-child {
	border-bottom: none;
}
.fdc-invoice-locked-row strong {
	flex: 0 0 180px;
	color: #2d3748;
	font-size: .92em;
}
.fdc-invoice-locked-row span {
	flex: 1;
	color: #1a202c;
	word-break: break-word;
}

/* Notice expired */
.fdc-invoice-expired-notice {
	padding: 16px 20px;
	background: #fed7d7;
	border-left: 4px solid #c53030;
	border-radius: 4px;
	color: #742a2a;
}
.fdc-invoice-expired-notice strong {
	display: block;
	font-size: 1.05em;
}

/* Container pentru cazul în care formularul e BLOCAT (link invalid/expirat) */
.fdc-form-blocked {
	max-width: 720px;
	margin: 24px auto;
	padding: 0 16px;
}
.fdc-form-blocked .fdc-banner {
	margin: 0;
}

/* ==========================================================================
   Poarta de acces (1.12.0) - confirmare nume de familie titular
   ========================================================================== */
.fdc-gate {
	max-width: 560px;
}
.fdc-gate .fdc-gate-message {
	margin: 0 0 1rem;
}
.fdc-gate .fdc-field input[type="text"] {
	width: 100%;
	box-sizing: border-box;
}

/* FIX 1.12.0: atributul `hidden` trebuie să câștige în fața display:flex de mai sus
   (altfel badge-ul "Semnătura a fost înregistrată" apare și pe fișe noi). */
.fdc-uploadable-existing[hidden],
.fdc-uploadable-input[hidden] {
	display: none;
}

/* 1.17.0: câmpurile ascunse condiționat (ex: Județ pentru domiciliu în afara României) */
.fdc-field[hidden] {
	display: none !important;
}

/* ==========================================================================
   Paleta nooks.ro (1.18.1) - modifici culorile doar aici
   ========================================================================== */
.fdc-wrap {
	--fdc-bg: #EBEBEB4D;     /* fundal blocuri */
	--fdc-ink: #1A1A1A;      /* text */
	--fdc-accent: #733F1E;   /* bordură / accent */
}

/* Antet explicativ fișă */
.fdc-intro {
	margin: 0 0 1.75rem;
	padding: 18px 22px;
	border-radius: 10px;
	border: 1px solid var(--fdc-accent);
	border-left-width: 5px;
	background: var(--fdc-bg);
	color: var(--fdc-ink);
	font-size: 1.02rem;
	line-height: 1.55;
}
.fdc-intro p {
	margin: 0 0 .55em;
}
.fdc-intro p:last-child {
	margin-bottom: 0;
}
.fdc-intro-lead {
	font-size: 1.15em;
	font-weight: 700;
}
.fdc-intro-lang + .fdc-intro-lang {
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(115, 63, 30, .25);
}
.fdc-banner-admin-notes:empty,
.fdc-banner-admin-notes > div:empty {
	display: none;
}

/* Blocul fiecărui oaspete (Adult 1, Adult 2...) */
.fdc-fieldset.fdc-oaspete {
	background: var(--fdc-bg);
	border: 1px solid var(--fdc-accent);
	border-left-width: 4px;
	color: var(--fdc-ink);
}

/* Bara „Adult 1 — Nume  56%” */
.fdc-oaspete .fdc-oaspete-legend {
	width: auto;
	max-width: calc(100% - 24px);
	margin: 0 0 0 10px;
}
.fdc-oaspete-toggle {
	background: var(--fdc-bg);
	border: 1px solid var(--fdc-accent);
	border-radius: 6px;
	color: var(--fdc-ink);
	padding: 8px 14px;
}
.fdc-oaspete-toggle:hover {
	background: rgba(115, 63, 30, .06);
}
.fdc-oaspete-name,
.fdc-oaspete-progress-text {
	color: var(--fdc-ink);
}
.fdc-oaspete-progress-text {
	opacity: .75;
}

@media (max-width: 600px) {
	.fdc-intro {
		padding: 14px 16px;
		font-size: 1rem;
	}
	.fdc-oaspete .fdc-oaspete-legend {
		margin-left: 6px;
		max-width: calc(100% - 12px);
	}
}

/* ==========================================================================
   Butoane - stil unic nooks.ro (1.18.2)
   Contur #733F1E, colțuri rotunjite, interior alb, text negru;
   la hover / click / focus de la tastatură: umplere #733F1E, text alb.
   !important + specificitate mare: tema site-ului stilizează global <button>
   (chenar roșu, umplere roșie la hover) și altfel ar câștiga.
   ========================================================================== */
.fdc-wrap button,
.fdc-wrap .fdc-btn,
.fdc-wrap .fdc-btn-primary,
.fdc-wrap .fdc-btn-secondary,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle {
	background: #fff !important;
	background-image: none !important;
	color: var(--fdc-ink) !important;
	border: 1px solid var(--fdc-accent) !important;
	border-radius: 8px !important;
	box-shadow: none !important;
	text-shadow: none !important;
	transition: background-color .15s ease, color .15s ease;
}
.fdc-wrap button:hover:not(:disabled),
.fdc-wrap button:active:not(:disabled),
.fdc-wrap button:focus-visible,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:hover,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:active,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:focus-visible {
	background: var(--fdc-accent) !important;
	color: #fff !important;
	border-color: var(--fdc-accent) !important;
}
/* Textul secundar din bara „Adult N” (nume, %) se albește odată cu butonul */
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:hover *,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:active *,
.fdc-wrap .fdc-oaspete .fdc-oaspete-toggle:focus-visible * {
	color: #fff !important;
	opacity: 1;
}
.fdc-wrap button:focus {
	outline: none;
}
.fdc-wrap button:focus-visible {
	outline: 2px solid var(--fdc-accent) !important;
	outline-offset: 2px;
}
.fdc-wrap button:disabled {
	opacity: .5;
	cursor: not-allowed;
}
/* Butonul principal (Trimite fișa / Continuă) puțin mai proeminent, același stil */
.fdc-wrap .fdc-btn-primary {
	font-weight: 600 !important;
}

/* ==========================================================================
   Bannere în paleta nooks.ro: fișă finalizată, cerere factură transmisă,
   pagina de verificare a numelui, link invalid
   ========================================================================== */
.fdc-wrap .fdc-banner,
.fdc-form-blocked .fdc-banner {
	background: var(--fdc-bg, #EBEBEB4D);
	border: 1px solid var(--fdc-accent, #733F1E);
	border-left-width: 5px;
	border-radius: 10px;
	color: var(--fdc-ink, #1A1A1A);
}
.fdc-form-blocked {
	--fdc-bg: #EBEBEB4D;
	--fdc-ink: #1A1A1A;
	--fdc-accent: #733F1E;
}
.fdc-wrap .fdc-banner h3,
.fdc-form-blocked .fdc-banner h3 {
	color: var(--fdc-ink);
}
.fdc-wrap .fdc-banner .fdc-banner-icon,
.fdc-form-blocked .fdc-banner .fdc-banner-icon {
	background: var(--fdc-accent);
	color: #fff;
}
/* Erorile rămân recognoscibile: doar iconul e roșu */
.fdc-wrap .fdc-banner-error .fdc-banner-icon,
.fdc-form-blocked .fdc-banner-error .fdc-banner-icon {
	background: #b32d2e;
}
.fdc-wrap .fdc-banner .fdc-en,
.fdc-wrap .fdc-banner-subtitle,
.fdc-form-blocked .fdc-banner .fdc-en,
.fdc-form-blocked .fdc-banner-subtitle {
	color: var(--fdc-ink);
	opacity: .8;
}

/* Mesaj de succes (după salvare / trimitere) în aceeași paletă; erorile rămân roșii */
.fdc-wrap .fdc-msg-success {
	background: var(--fdc-bg);
	border: 1px solid var(--fdc-accent);
	color: var(--fdc-ink);
	border-radius: 8px;
}

/* Câmpuri: focus în culoarea accent (inclusiv pe pagina de verificare) */
.fdc-wrap .fdc-field input:focus,
.fdc-wrap .fdc-field select:focus,
.fdc-wrap .fdc-field textarea:focus {
	border-color: var(--fdc-accent) !important;
	box-shadow: 0 0 0 2px rgba(115, 63, 30, .15) !important;
	outline: none;
}

/* ==========================================================================
   Un singur font în tot formularul (1.18.3)
   Totul moștenește fontul de text al paginii (body). Titlurile, câmpurile,
   butoanele și textele mici își păstrează mărimea/grosimea, dar nu mai primesc
   fonturi diferite (tema: serif pe titluri; browserul: Arial pe câmpuri,
   monospace pe textarea).
   ========================================================================== */
.fdc-wrap,
.fdc-form-blocked {
	font-family: inherit;
}
.fdc-wrap *,
.fdc-form-blocked * {
	font-family: inherit !important;
}

/* ==========================================================================
   Telefon: nimic nu depășește lățimea ecranului (1.18.4)
   Tema setează white-space: nowrap pe butoane; un buton lung (ex. „Copiază …
   la ceilalți oaspeți” de la Adult 1) nu se mai rupea pe rânduri și, pentru că
   un <fieldset> are implicit min-width: min-content, lățea tot blocul oaspetelui
   și toate câmpurile din el peste marginea ecranului.
   ========================================================================== */
.fdc-wrap fieldset {
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}
.fdc-wrap button {
	white-space: normal !important;
	overflow-wrap: anywhere;
	max-width: 100%;
	height: auto !important;
	line-height: 1.3 !important;
}
.fdc-wrap input,
.fdc-wrap select,
.fdc-wrap textarea {
	max-width: 100%;
	box-sizing: border-box;
}
.fdc-wrap .fdc-row > *,
.fdc-wrap .fdc-field {
	min-width: 0;
}
.fdc-wrap canvas {
	max-width: 100%;
}

/* Bannere cu titlu RO + EN la aceeași importanță și subtitlu mai discret
   (fișă finalizată, rezervare negăsită) */
.fdc-banner-titles h3,
.fdc-banner-titles .fdc-banner-title-en {
	margin: 0;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.35;
}
.fdc-banner-titles .fdc-banner-title-en {
	margin-top: 4px;
}
.fdc-banner-titles .fdc-banner-subtitle {
	margin-top: 10px;
}
