.utp-manual-hotel{max-width:1350px;margin:0 auto;padding:28px 20px 42px;color:#0b1622}
            .utp-manual-hotel__top a{display:inline-flex;margin-bottom:12px;color:#64748b;font-size:12px;font-weight:800;text-decoration:none}
            .utp-manual-hotel__top h1{margin:0 0 6px;font-size:32px}
            .utp-manual-hotel__top p{margin:0;color:#64748b}
            .utp-manual-hotel__errors{margin:20px 0;padding:16px 18px;border:1px solid rgba(190,24,93,.22);border-radius:14px;background:rgba(244,63,94,.06)}
            .utp-manual-hotel__errors ul{margin:8px 0 0 18px}

            .utp-manual-hotel__required-note{margin:18px 0 -2px;color:#64748b;font-size:11px;font-weight:800}
            .utp-manual-hotel__required-note span{color:#f5793b}
            .utp-manual-hotel .utp-booking-field:has(input[required],select[required],textarea[required])>.utp-booking-field__label::after,
            .utp-manual-hotel .utp-platform-country-picker:has(input[required])>.utp-booking-field__label::after{content:' *';color:#f5793b}
            .utp-manual-hotel input[readonly]{background:#f8fafc;color:#64748b}
            .utp-room-type-selector__custom{display:grid;gap:7px;margin-top:10px}
            .utp-room-type-selector__custom[hidden]{display:none}
            .utp-booking-section{margin-top:18px;padding:22px;border:1px solid rgba(11,22,34,.10);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 10px 30px rgba(11,22,34,.05)}
            .utp-booking-section__header{margin-bottom:18px}.utp-booking-section__header h2{margin:0 0 5px;font-size:20px}.utp-booking-section__header p{margin:0;color:#64748b}
            .utp-booking-fields{display:grid;gap:14px}.utp-booking-fields--grid{grid-template-columns:repeat(3,minmax(0,1fr))}.utp-booking-fields--notes{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}
            .utp-booking-field{display:flex;flex-direction:column;gap:7px;min-width:0}.utp-booking-field__label{font-size:12px;font-weight:850;letter-spacing:.03em}.utp-booking-field__help{font-size:11px;color:#64748b}
            .utp-booking-field input,.utp-booking-field select,.utp-booking-field textarea{width:100%;box-sizing:border-box;border:1px solid rgba(11,22,34,.14);border-radius:12px;background:#fff;color:#0b1622;font:inherit}
            .utp-booking-field input,.utp-booking-field select{height:48px;padding:0 13px}.utp-booking-field textarea{padding:12px 13px;resize:vertical}
            .utp-booking-field--check input{width:22px;height:22px}
            .utp-marketler-picker{position:relative;display:grid;gap:6px;margin-bottom:14px}
            .utp-marketler-picker label{display:grid;gap:6px}
            .utp-marketler-picker label>span{font-size:12px;font-weight:850}
            .utp-marketler-picker input[type="search"]{width:100%;height:44px;padding:0 14px;border:1px solid rgba(11,22,34,.14);border-radius:12px;background:#fff;color:#0b1622;font:inherit;box-sizing:border-box}
            .utp-marketler-picker small{color:#64748b;font-size:11px}
            .utp-marketler-picker__results{position:absolute;z-index:80;top:68px;left:0;right:0;max-height:260px;overflow:auto;padding:6px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:#fff;box-shadow:0 18px 42px rgba(15,23,42,.18)}
            .utp-marketler-picker__option{display:grid;gap:2px;width:100%;padding:10px 12px;border:0;border-radius:9px;background:transparent;color:#0b1622;text-align:left;cursor:pointer}
            .utp-marketler-picker__option:hover{background:#f1f5f9}
            .utp-marketler-picker__option strong{font-size:13px}
            .utp-marketler-picker__option span,.utp-marketler-picker__empty{color:#64748b;font-size:11px}
            .utp-marketler-picker__empty{padding:10px 12px}
            
            .utp-manual-hotel__traveller{margin-top:14px;padding:16px;border:1px solid rgba(11,22,34,.08);border-radius:14px;background:rgba(248,250,252,.75)}
            .utp-manual-hotel__traveller-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
            .utp-manual-hotel__traveller-head button,.utp-manual-hotel__secondary{border:0;background:transparent;color:#64748b;font-weight:800;cursor:pointer}
            .utp-manual-hotel__secondary{margin-top:14px;padding:9px 0;color:#f5793b}
            .utp-manual-hotel__actions{display:flex;justify-content:flex-end;margin-top:22px}
            .utp-manual-hotel__actions button{min-width:210px;height:54px;border:0;border-radius:16px;background:linear-gradient(135deg,#ff5e44,#ff9438);color:#fff;font-size:15px;font-weight:950;cursor:pointer;box-shadow:0 18px 38px rgba(255,94,68,.22)}

            /* Manual Booking Forms V2 — shared Booking Ownership geometry */
            .utp-manual-hotel .utp-booking-fields--ownership{
                display:grid;
                grid-template-columns:repeat(2,minmax(0,1fr));
                gap:14px;
                width:min(100%,760px);
                max-width:760px;
            }
            .utp-manual-hotel .utp-booking-fields--ownership .utp-booking-field{
                min-width:0;
            }
            .utp-manual-hotel .utp-booking-fields--ownership input,
            .utp-manual-hotel .utp-booking-fields--ownership select{
                width:100%;
                height:48px;
                min-height:48px;
                box-sizing:border-box;
            }
            .utp-manual-hotel .utp-booking-fields--ownership .utp-booking-field__help{
                min-height:28px;
                line-height:1.35;
            }

            @media(max-width:1000px){.utp-booking-fields--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
            @media(max-width:680px){.utp-manual-hotel{padding:16px}.utp-booking-fields--grid,.utp-booking-fields--ownership,.utp-booking-fields--notes{grid-template-columns:1fr}.utp-manual-hotel .utp-booking-fields--ownership{width:100%;max-width:none}}

/* Manual Hotel Booking — accommodation modes.
   Contract-backed bookings expose the canonical contract choice only;
   one-off bookings retain the manual room/board controls. */
.utp-manual-hotel__accommodation-fields>[data-utp-contract-wrap]{order:1}
.utp-manual-hotel__accommodation-fields>[data-utp-contract-rate-wrap]{order:2}
.utp-manual-hotel__manual-room{order:1;min-width:0}
.utp-manual-hotel__manual-board{order:2;min-width:0}
.utp-manual-hotel__supplier-reference{order:3;min-width:0}
.utp-manual-hotel__manual-room>.utp-booking-field,
.utp-manual-hotel__manual-board>.utp-booking-field,
.utp-manual-hotel__supplier-reference>.utp-booking-field{height:100%}
.utp-manual-hotel__manual-room[hidden],
.utp-manual-hotel__manual-board[hidden],
.utp-manual-hotel__accommodation-fields.is-contract-backed>[data-utp-contract-wrap]{order:1}
.utp-manual-hotel__accommodation-fields.is-contract-backed>[data-utp-contract-rate-wrap]{order:2}
.utp-manual-hotel__accommodation-fields.is-contract-backed>.utp-manual-hotel__supplier-reference{order:3}

/* Manual Hotel: domain-specific quantity picker layout; Platform tokens own visual styling. */
.utp-manual-hotel__room-picker{grid-column:1/-1;display:grid;gap:var(--utp-space-3)}
.utp-manual-hotel__room-picker[hidden]{display:none}
.utp-manual-hotel__room-picker-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,90px);align-items:center;gap:var(--utp-space-3);padding:var(--utp-space-2) 0;border-bottom:var(--utp-border-width) solid var(--utp-color-border)}
.utp-manual-hotel__room-picker-row input{width:100%;box-sizing:border-box}

/* Room quantities: honor hidden contract-rate field while retaining its submitted select.
   Quantity controls reuse Platform Forms .utp-input tokens. */
.utp-manual-hotel__accommodation-fields>[data-utp-contract-rate-wrap][hidden]{display:none}
.utp-manual-hotel__room-picker-row .utp-input{width:100%;min-width:0;min-height:42px;padding:10px 12px;border:var(--utp-border-width) solid var(--utp-color-border);border-radius:var(--utp-radius-md);background:var(--utp-color-surface);color:var(--utp-color-text);font-size:var(--utp-font-sm)}
