/* =========================================================
   RHMP FORM - MAIN STYLE
   RentHubMP.lk
   ========================================================= */


/* =========================================================
   FORM WRAPPER
   ========================================================= */

.rhmp-form {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 45px 20px 70px;
    box-sizing: border-box;
}


/* =========================================================
   FORM HEADER
   ========================================================= */

.rhmp-form-header {
    text-align: center;
    margin-bottom: 35px;
}

.rhmp-form-header h1 {
    margin: 0;
    color: #05BA1B;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 700;
}

.rhmp-header-line {
    width: 45px;
    height: 3px;
    margin: 14px auto 0;
    background: #05BA1B;
    border-radius: 10px;
}


/* =========================================================
   COMMON SECTION
   ========================================================= */

.rhmp-section {
    width: 100%;
    padding: 25px 22px 28px;
    margin-bottom: 20px;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #b7e6bd;
    border-radius: 9px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03);
}


/* =========================================================
   SECTION TITLE
   ========================================================= */

.rhmp-section-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 23px;
}

.rhmp-section-title h2 {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    color: #05BA1B;
    font-size: 19px;
    font-weight: 700;
    line-height: 28px;
}

.rhmp-section-icon {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 24px;
    font-size: 15px;
    line-height: 1;
    border-radius: 50%;
}


/* =========================================================
   SECTION ICON BACKGROUNDS
   ========================================================= */

.rhmp-owner-icon {
    background: #e8f8eb;
}

.rhmp-description-icon {
    background: #e8f8eb;
}

.rhmp-location-icon {
    background: #e8f8eb;
}

.rhmp-booking-icon {
    background: #e8f8eb;
}

.rhmp-package-icon {
    background: #e8f8eb;
}

.rhmp-vehicle-icon {
    background: #e8f8eb;
}

.rhmp-features-icon {
    background: #e8f8eb;
}

.rhmp-reference-icon {
    background: #e8f8eb;
}


/* =========================================================
   FIELDS GRID
   ========================================================= */

.rhmp-fields-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 18px;
}

.rhmp-field {
    width: 100%;
    min-width: 0;
}

.rhmp-field label {
    display: block;
    margin-bottom: 8px;
    color: #344054;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 600;
}

.rhmp-field label span {
    color: #e05263;
}


/* =========================================================
   INPUT
   ========================================================= */

.rhmp-field input {
    width: 100%;
    height: 48px;
    padding: 0 14px;
    box-sizing: border-box;

    border: 1px solid #d5dbe3;
    border-radius: 7px;

    background: #ffffff;
    color: #344054;

    font-family: inherit;
    font-size: 14px;

    outline: none;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

.rhmp-field input::placeholder {
    color: #a5acb7;
}


/* =========================================================
   FILLED INPUT
   ========================================================= */

.rhmp-field input:not(:placeholder-shown) {
    background: #eef4f8;
}


/* =========================================================
   INPUT FOCUS
   ========================================================= */

.rhmp-field input:focus {
    border-color: #05BA1B !important;
    box-shadow: 0 0 0 3px rgba(5, 186, 27, 0.10);
    outline: none;
}


/* =========================================================
   SELECT
   ========================================================= */

.rhmp-field select {
    width: 100%;
    height: 48px;
    padding: 0 40px 0 14px;
    box-sizing: border-box;

    border: 1px solid #d5dbe3;
    border-radius: 7px;

    background-color: #ffffff;
    color: #344054;

    font-family: inherit;
    font-size: 14px;

    outline: none;
    cursor: pointer;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* =========================================================
   FILLED SELECT
   ========================================================= */

/*
 * When a real option is selected,
 * the select gets the same filled background
 * as the screenshot.
 */

.rhmp-field select:has(option:checked:not([value=""])) {
    background-color: #eef4f8;
}


/* =========================================================
   SELECT FOCUS
   ========================================================= */

.rhmp-field select:focus {
    border-color: #05BA1B !important;
    box-shadow: 0 0 0 3px rgba(5, 186, 27, 0.10);
    outline: none;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.rhmp-description-section {
    padding-bottom: 22px;
}

.rhmp-description-field {
    width: 100%;
}

.rhmp-description-field textarea {
    width: 100%;
    height: 80px;
    min-height: 80px;
    padding: 12px 14px;
    box-sizing: border-box;

    resize: vertical;

    border: 1px solid #d5dbe3;
    border-radius: 7px;

    background: #ffffff;
    color: #344054;

    font-family: inherit;
    font-size: 14px;
    line-height: 1.5;

    outline: none;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}

.rhmp-description-field textarea::placeholder {
    color: #a5acb7;
}


/* =========================================================
   FILLED TEXTAREA
   ========================================================= */

.rhmp-description-field textarea:not(:placeholder-shown) {
    background: #eef4f8;
}


/* =========================================================
   TEXTAREA FOCUS
   ========================================================= */

.rhmp-description-field textarea:focus {
    border-color: #05BA1B !important;
    box-shadow: 0 0 0 3px rgba(5, 186, 27, 0.10);
    outline: none;
}


/* =========================================================
   BOOKING TYPE
   ========================================================= */

.rhmp-booking-type-section {
    padding-bottom: 28px;
}

.rhmp-booking-options {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 18px;
}


/* =========================================================
   BOOKING CHECKBOX CARD
   ========================================================= */

.rhmp-checkbox-option {
    position: relative;

    display: flex;
    align-items: center;
    gap: 10px;

    min-height: 48px;
    padding: 0 18px;

    border: 1px solid #d5dbe3;
    border-radius: 7px;

    background: #ffffff;

    cursor: pointer;
    box-sizing: border-box;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}


/* =========================================================
   BOOKING CARD HOVER
   ========================================================= */

.rhmp-checkbox-option:hover {
    border-color: #05BA1B;
    background: #f8fff9;
}


/* =========================================================
   HIDDEN CHECKBOX
   ========================================================= */

.rhmp-checkbox-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}


/* =========================================================
   CHECKBOX BOX
   ========================================================= */

.rhmp-checkbox-box {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;

    border: 1px solid #c8d0da;
    border-radius: 4px;

    background: #ffffff;

    box-sizing: border-box;
    position: relative;

    transition:
        background 0.2s ease,
        border-color 0.2s ease;
}


/* =========================================================
   SELECTED CHECKBOX
   ========================================================= */

.rhmp-checkbox-option input:checked + .rhmp-checkbox-box {
    background: #05BA1B;
    border-color: #05BA1B;
}

.rhmp-checkbox-option input:checked + .rhmp-checkbox-box::after {
    content: "";

    position: absolute;

    left: 5px;
    top: 2px;

    width: 5px;
    height: 9px;

    border: solid #ffffff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}


/* =========================================================
   SELECTED BOOKING CARD
   ========================================================= */

.rhmp-checkbox-option:has(input:checked) {
    border-color: #05BA1B !important;
    background: #e8f8eb !important;
    box-shadow: 0 0 0 1px rgba(5, 186, 27, 0.10);
}


/* =========================================================
   BOOKING TEXT
   ========================================================= */

.rhmp-checkbox-text {
    color: #344054;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
}


/* =========================================================
   BOOKING PACKAGE
   ========================================================= */

.rhmp-booking-package-section {
    padding-bottom: 28px;
}

.rhmp-package-selector {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    width: 100%;
    margin-bottom: 22px;
    padding: 4px;

    box-sizing: border-box;

    background: #f8fafc;
    border: 1px solid #eef1f5;
    border-radius: 8px;

    gap: 4px;
}


/* =========================================================
   PACKAGE TAB
   ========================================================= */

.rhmp-package-tab {
    width: 100%;
    height: 44px;
    padding: 0 12px;

    border: 1px solid transparent;
    border-radius: 6px;

    background: transparent;
    color: #667085;

    font-family: inherit;
    font-size: 14px;
    font-weight: 600;

    cursor: pointer;
    text-align: center;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}

.rhmp-package-tab:hover {
    color: #05BA1B;
    background: #ffffff;
}


/* =========================================================
   ACTIVE PACKAGE TAB
   ========================================================= */

.rhmp-package-tab.active {
    background: #ffffff !important;
    color: #05BA1B !important;
    border-color: #e0e5eb !important;
    box-shadow: none !important;
}


/* =========================================================
   PACKAGE PANEL
   ========================================================= */

.rhmp-package-panel {
    display: none;
    width: 100%;
}

.rhmp-package-panel.active {
    display: block;
}


/* =========================================================
   PACKAGE FIELDS
   ========================================================= */

.rhmp-package-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 18px;
    width: 100%;
}

.rhmp-package-fields .rhmp-field input {
    height: 48px;
    font-size: 14px;
}

.rhmp-money,
.rhmp-number {
    font-variant-numeric: tabular-nums;
}


/* =========================================================
   VEHICLE INFORMATION
   ========================================================= */

.rhmp-vehicle-information-section {
    padding-bottom: 28px;
}


/* =========================================================
   VEHICLE FEATURES
   ========================================================= */

.rhmp-vehicle-features-section {
    padding-bottom: 28px;
}

.rhmp-features-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 0 18px;

    width: 100%;
}

.rhmp-features-column {
    display: flex;
    flex-direction: column;
    gap: 10px;
}


/* =========================================================
   FEATURE OPTION
   ========================================================= */

.rhmp-feature-option {
    position: relative;

    display: flex;
    align-items: center;
    gap: 12px;

    min-height: 48px;
    padding: 0 16px;

    border: 1px solid #dfe4ea;
    border-radius: 7px;

    background: #ffffff;

    cursor: pointer;
    box-sizing: border-box;

    transition:
        border-color 0.2s ease,
        background 0.2s ease,
        box-shadow 0.2s ease;
}


/* =========================================================
   FEATURE HOVER
   ========================================================= */

.rhmp-feature-option:hover {
    border-color: #05BA1B;
    background: #f8fff9;
    box-shadow: 0 2px 7px rgba(16, 24, 40, 0.04);
}


/* =========================================================
   HIDDEN FEATURE CHECKBOX
   ========================================================= */

.rhmp-feature-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}


/* =========================================================
   FEATURE CHECKBOX
   ========================================================= */

.rhmp-feature-checkbox {
    position: relative;

    width: 26px;
    height: 26px;
    flex: 0 0 26px;

    border: 1px solid #c8d0da;
    border-radius: 4px;

    background: #ffffff;

    box-sizing: border-box;

    transition:
        background 0.2s ease,
        border-color 0.2s ease;
}


/* =========================================================
   SELECTED FEATURE CHECKBOX
   ========================================================= */

.rhmp-feature-option input:checked + .rhmp-feature-checkbox {
    background: #05BA1B;
    border-color: #05BA1B;
}

.rhmp-feature-option input:checked + .rhmp-feature-checkbox::after {
    content: "";

    position: absolute;

    left: 8px;
    top: 5px;

    width: 7px;
    height: 12px;

    border: solid #ffffff;
    border-width: 0 2px 2px 0;

    transform: rotate(45deg);
}


/* =========================================================
   SELECTED FEATURE WHOLE BOX
   ========================================================= */

.rhmp-feature-option:has(input:checked) {
    border-color: #05BA1B !important;
    background: #e8f8eb !important;
    box-shadow: 0 0 0 1px rgba(5, 186, 27, 0.10);
}


/* =========================================================
   FEATURE TEXT
   ========================================================= */

.rhmp-feature-text {
    color: #344054;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
}


/* =========================================================
   REFERENCE SECTION
   ========================================================= */

.rhmp-reference-section {
    padding-bottom: 28px;
}


/* =========================================================
   REFERENCE BOX
   ========================================================= */

.rhmp-reference-box {
    display: flex;
    align-items: flex-end;

    gap: 12px;
    width: 100%;
}

.rhmp-reference-content {
    flex: 1;
    min-width: 0;
}


/* =========================================================
   REFERENCE LABEL
   ========================================================= */

.rhmp-reference-content label {
    display: block;

    margin-bottom: 8px;

    color: #344054;

    font-size: 14px;
    line-height: 1.3;
    font-weight: 600;
}


/* =========================================================
   REFERENCE INPUT
   ========================================================= */

.rhmp-reference-content input {
    width: 100%;
    height: 48px;
    padding: 0 14px;

    box-sizing: border-box;

    border: 1px solid #d5dbe3;
    border-radius: 7px;

    background: #f8fafc !important;

    color: #05BA1B !important;

    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.4px;

    outline: none !important;
    box-shadow: none !important;
}


/* =========================================================
   COPY BUTTON
   ========================================================= */

.rhmp-reference-copy {
    height: 48px;
    padding: 0 18px;

    border: 1px solid #05BA1B !important;
    border-radius: 7px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #05BA1B !important;

    font-family: inherit;
    font-size: 14px;
    font-weight: 600;

    cursor: pointer;
    white-space: nowrap;

    outline: none !important;
    box-shadow: none !important;

    text-decoration: none !important;

    -webkit-tap-highlight-color: transparent !important;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}


/* =========================================================
   COPY BUTTON STATES
   ========================================================= */

.rhmp-reference-copy:hover,
.rhmp-reference-copy:focus,
.rhmp-reference-copy:focus-visible,
.rhmp-reference-copy:active {
    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #05BA1B !important;

    border-color: #05BA1B !important;

    outline: none !important;
    box-shadow: none !important;

    text-decoration: none !important;
}

.rhmp-reference-copy::before,
.rhmp-reference-copy::after {
    background: transparent !important;
    box-shadow: none !important;
}

.rhmp-reference-copy,
.rhmp-reference-copy span,
.rhmp-reference-copy svg {
    color: #05BA1B !important;
}


/* =========================================================
   REFERENCE NOTE
   ========================================================= */

.rhmp-reference-note {
    margin: 10px 0 0;

    color: #667085;

    font-size: 13px;
    line-height: 1.5;
}


/* =========================================================
   SEND TO ADMIN
   ========================================================= */

.rhmp-submit-section {
    padding-bottom: 32px;
}

.rhmp-submit-content {
    display: flex;
    align-items: flex-start;

    gap: 14px;
    margin-bottom: 22px;
}


/* =========================================================
   SEND ICON
   ========================================================= */

.rhmp-submit-icon {
    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #e8f8eb;

    font-size: 20px;
}


/* =========================================================
   SEND TEXT
   ========================================================= */

.rhmp-submit-text {
    flex: 1;
    min-width: 0;
}

.rhmp-submit-text h2 {
    margin: 0 0 7px;

    color: #05BA1B;

    font-size: 21px;
    line-height: 1.3;
    font-weight: 700;
}

.rhmp-submit-text p {
    margin: 0;

    color: #667085;

    font-size: 14px;
    line-height: 1.6;
}


/* =========================================================
   SEND ADMIN BUTTON
   ========================================================= */

.rhmp-send-admin-button {
    width: 100%;
    min-height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    padding: 13px 20px;

    border: 1px solid #05BA1B !important;
    border-radius: 7px !important;

    background: #05BA1B !important;
    background-color: #05BA1B !important;

    color: #ffffff !important;

    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;

    cursor: pointer;

    outline: none !important;
    box-shadow: none !important;

    text-decoration: none !important;

    -webkit-tap-highlight-color: transparent !important;

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.1s ease;
}


/* =========================================================
   SEND BUTTON HOVER
   ========================================================= */

.rhmp-send-admin-button:hover {
    background: #049f18 !important;
    background-color: #049f18 !important;

    border-color: #049f18 !important;

    color: #ffffff !important;
}


/* =========================================================
   SEND BUTTON FOCUS
   ========================================================= */

.rhmp-send-admin-button:focus,
.rhmp-send-admin-button:focus-visible {
    background: #05BA1B !important;
    background-color: #05BA1B !important;

    border-color: #05BA1B !important;

    color: #ffffff !important;

    outline: none !important;
    box-shadow: none !important;
}


/* =========================================================
   SEND BUTTON ACTIVE
   ========================================================= */

.rhmp-send-admin-button:active {
    background: #049f18 !important;
    background-color: #049f18 !important;

    border-color: #049f18 !important;

    color: #ffffff !important;

    transform: translateY(1px);
}


/* =========================================================
   SEND ICON
   ========================================================= */

.rhmp-send-admin-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    font-size: 17px;
    line-height: 1;
}


/* =========================================================
   SEND NOTE
   ========================================================= */

.rhmp-submit-note {
    margin: 10px 0 0;

    color: #667085;

    font-size: 12.5px;
    line-height: 1.5;

    text-align: center;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    .rhmp-form {
        padding: 30px 12px 50px;
    }

    .rhmp-form-header h1 {
        font-size: 32px;
    }

    .rhmp-section {
        padding: 20px 16px 22px;
    }

    .rhmp-fields-grid {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .rhmp-description-field textarea {
        height: 80px;
        min-height: 80px;
    }

    .rhmp-booking-options {
        flex-direction: column;
        gap: 10px;
    }

    .rhmp-checkbox-option {
        width: 100%;
        min-height: 48px;
    }

    .rhmp-package-selector {
        gap: 3px;
    }

    .rhmp-package-tab {
        font-size: 13px;
        padding: 0 5px;
    }

    .rhmp-package-fields {
        grid-template-columns: 1fr;
        gap: 17px;
    }

    .rhmp-features-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .rhmp-features-column {
        gap: 10px;
    }

    .rhmp-feature-option {
        width: 100%;
        min-height: 48px;
        padding: 0 14px;
    }

    .rhmp-feature-text {
        font-size: 14px;
    }

    .rhmp-reference-box {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
    }

    .rhmp-reference-copy {
        width: 100%;
    }

    .rhmp-submit-section {
        padding-bottom: 26px;
    }

    .rhmp-submit-content {
        gap: 11px;
        margin-bottom: 18px;
    }

    .rhmp-submit-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        font-size: 18px;
    }

    .rhmp-submit-text h2 {
        font-size: 18px;
    }

    .rhmp-submit-text p {
        font-size: 13px;
    }

    .rhmp-send-admin-button {
        min-height: 50px;
        font-size: 14px;
    }
}
/* =========================================================
   RHMP LOADING OVERLAY
   18 SECOND VEHICLE PHOTO TRANSITION
   ========================================================= */

.rhmp-loading-overlay {
    position: fixed;

    inset: 0;

    z-index: 999999;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 20px;

    box-sizing: border-box;

    background: rgba(255, 255, 255, 0.88);

    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}


/* =========================================================
   LOADING BOX
   ========================================================= */

.rhmp-loading-box {
    width: 100%;
    max-width: 430px;

    box-sizing: border-box;

    padding: 32px 28px;

    text-align: center;

    background: #ffffff;

    border: 2px solid #05BA1B;

    border-radius: 9px;

    box-shadow:
        0 8px 30px rgba(5, 186, 27, 0.12);
}


/* =========================================================
   LOADING ICON
   ========================================================= */

.rhmp-loading-icon {
    width: 52px;
    height: 52px;

    margin: 0 auto 16px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #e8f8eb;

    border-radius: 50%;

    font-size: 25px;
    line-height: 1;
}


/* =========================================================
   LOADING TITLE
   ========================================================= */

.rhmp-loading-title {
    margin: 0 0 10px;

    color: #05BA1B;

    font-size: 21px;
    line-height: 1.3;
    font-weight: 700;
}


/* =========================================================
   LOADING MESSAGE
   ========================================================= */

.rhmp-loading-message {
    max-width: 350px;

    margin: 0 auto 22px;

    color: #667085;

    font-size: 14px;
    line-height: 1.6;
}


/* =========================================================
   COUNTDOWN
   ========================================================= */

.rhmp-countdown {
    display: flex;
    align-items: baseline;
    justify-content: center;

    gap: 7px;

    margin-bottom: 17px;
}

#rhmp-countdown-number {
    color: #05BA1B;

    font-size: 32px;
    line-height: 1;
    font-weight: 700;

    font-variant-numeric: tabular-nums;
}

.rhmp-countdown-text {
    color: #667085;

    font-size: 14px;
    font-weight: 500;
}


/* =========================================================
   PROGRESS WRAPPER
   ========================================================= */

.rhmp-progress-wrapper {
    width: 100%;
    height: 7px;

    overflow: hidden;

    background: #e8f8eb;

    border-radius: 20px;
}


/* =========================================================
   PROGRESS BAR
   ========================================================= */

.rhmp-progress-bar {
    width: 100%;
    height: 100%;

    background: #05BA1B;

    border-radius: 20px;

    transition: width 1s linear;
}


/* =========================================================
   PREVENT BACKGROUND SCROLL
   ========================================================= */

body.rhmp-loading-active {
    overflow: hidden;
}


/* =========================================================
   LOADING MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .rhmp-loading-overlay {
        padding: 16px;
    }

    .rhmp-loading-box {
        max-width: 100%;
        padding: 28px 22px;
    }

    .rhmp-loading-title {
        font-size: 20px;
    }

    .rhmp-loading-message {
        font-size: 14px;
    }

    #rhmp-countdown-number {
        font-size: 30px;
    }
}
/* =========================================================
   RHMP AD DURATION + ADMIN-CONTROLLED PRICING
   v1.4.0
========================================================= */

.rhmp-ad-duration-section {
    padding-bottom: 26px;
}

.rhmp-ad-price-card {
    width: 100%;
    padding: 18px;
    box-sizing: border-box;
    border: 1px solid #cfe8da;
    border-radius: 14px;
    background:
        linear-gradient(115deg, rgba(255,255,255,.55), transparent 65%),
        linear-gradient(135deg, #fbfefc, #f1fbf5);
    box-shadow: 0 10px 24px rgba(11, 80, 48, .06);
}

.rhmp-ad-price-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.rhmp-ad-price-eyebrow {
    display: block;
    margin-bottom: 3px;
    color: #079447;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: 1.1px;
}

.rhmp-ad-price-category {
    display: block;
    color: #173f2d;
    font-size: 15px;
    line-height: 1.3;
    font-weight: 850;
}

.rhmp-ad-price-range {
    flex: 0 0 auto;
    padding: 7px 10px;
    border: 1px solid #c7e5d4;
    border-radius: 999px;
    background: #ffffff;
    color: #087c49;
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
}

.rhmp-duration-control {
    display: grid;
    grid-template-columns: 52px minmax(150px, 1fr) 52px;
    align-items: center;
    gap: 13px;
    padding: 15px;
    border: 1px solid #dbece3;
    border-radius: 12px;
    background: #ffffff;
}

.rhmp-duration-button {
    width: 52px;
    height: 52px;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 1px solid rgba(7,148,71,.34) !important;
    border-radius: 50% !important;
    background:
        linear-gradient(115deg,rgba(255,255,255,.42),transparent 65%),
        linear-gradient(135deg,#edf9f2,#def5e8) !important;
    color: #079447 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 27px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(7,148,71,.07) !important;
    outline: 0 !important;
    transition:
        transform .14s ease,
        border-color .14s ease,
        background .14s ease,
        color .14s ease,
        box-shadow .14s ease;
}

.rhmp-duration-button:hover,
.rhmp-duration-button:focus-visible {
    border-color: #079447 !important;
    background:
        linear-gradient(115deg,rgba(255,255,255,.20),transparent 65%),
        linear-gradient(135deg,#20ed78,#10cf61 48%,#079447) !important;
    color: #ffffff !important;
    box-shadow: 0 7px 16px rgba(7,148,71,.18) !important;
}

.rhmp-duration-button:active {
    transform: scale(.95);
}

.rhmp-duration-button:disabled {
    opacity: .36 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
}

.rhmp-duration-display {
    min-width: 0;
    text-align: center;
}

.rhmp-duration-display > span {
    display: block;
    margin-bottom: 2px;
    color: #7a8e84;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .6px;
}

.rhmp-duration-days {
    display: block;
    color: #263b32;
    font-size: 28px;
    line-height: 1.15;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}


.rhmp-typed-days {
    margin-top: 12px;
    padding: 12px 13px;
    border: 1px solid #d8e9e0;
    border-radius: 11px;
    background: rgba(255,255,255,.82);
}

.rhmp-typed-days > label {
    display: block;
    margin-bottom: 7px;
    color: #4e665b;
    font-size: 10px;
    font-weight: 900;
}

.rhmp-typed-days-control {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 8px;
}

.rhmp-typed-days-control input {
    width: 100% !important;
    min-height: 42px;
    margin: 0 !important;
    border: 1px solid #cfe0d7 !important;
    border-radius: 9px !important;
    background: #fff !important;
    box-shadow: none !important;
    color: #173f2d !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.rhmp-typed-days-control input:focus {
    border-color: #079447 !important;
    outline: 0 !important;
    box-shadow: 0 0 0 3px rgba(16,207,97,.11) !important;
}

.rhmp-typed-days-control button {
    min-width: 96px;
    min-height: 42px;
    padding: 0 14px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background:
        linear-gradient(115deg,rgba(255,255,255,.20),transparent 65%),
        linear-gradient(135deg,#20ed78,#10cf61 48%,#079447) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    cursor: pointer;
    box-shadow: 0 6px 14px rgba(7,148,71,.16) !important;
}

.rhmp-typed-days > small {
    display: block;
    margin-top: 6px;
    color: #74877e;
    font-size: 9px;
    line-height: 1.4;
}

.rhmp-ad-price-breakdown {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 9px;
    margin-top: 12px;
}

.rhmp-ad-price-item {
    padding: 11px 12px;
    border: 1px solid #deebe4;
    border-radius: 10px;
    background: rgba(255,255,255,.82);
}

.rhmp-ad-price-item span {
    display: block;
    color: #7b8e85;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 800;
}

.rhmp-ad-price-item strong {
    display: block;
    margin-top: 4px;
    color: #173f2d;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.rhmp-ad-total {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 12px;
    padding: 14px 15px;
    border: 1px solid rgba(7,148,71,.33);
    border-radius: 11px;
    background:
        linear-gradient(135deg,#effbf4,#e4f8ec);
}

.rhmp-ad-total span {
    display: block;
    color: #087c49;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 900;
}

.rhmp-ad-total small {
    display: block;
    max-width: 520px;
    margin-top: 3px;
    color: #71857b;
    font-size: 9px;
    line-height: 1.4;
    font-weight: 650;
}

.rhmp-ad-total > strong {
    flex: 0 0 auto;
    color: #079447;
    font-size: 24px;
    line-height: 1;
    font-weight: 950;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.rhmp-ad-price-status {
    margin: 11px 0 0;
    color: #637a6f;
    font-size: 10px;
    line-height: 1.45;
    text-align: center;
}

.rhmp-duration-note {
    margin: 10px 0 0;
    color: #667b72;
    font-size: 11px;
    line-height: 1.45;
    text-align: center;
}

@media (max-width: 700px) {

    .rhmp-ad-price-card {
        padding: 14px;
    }

    .rhmp-ad-price-top {
        align-items: flex-start;
        gap: 10px;
    }

    .rhmp-ad-price-range {
        font-size: 9px;
    }

    .rhmp-duration-control {
        grid-template-columns: 46px minmax(110px,1fr) 46px;
        gap: 9px;
        padding: 12px 10px;
    }

    .rhmp-duration-button {
        width: 46px;
        height: 46px;
        font-size: 24px !important;
    }

    .rhmp-duration-days {
        font-size: 24px;
    }

    .rhmp-typed-days-control {
        grid-template-columns: 1fr;
    }

    .rhmp-typed-days-control button {
        width: 100%;
    }

    .rhmp-ad-price-breakdown {
        grid-template-columns: 1fr;
    }

    .rhmp-ad-total {
        align-items: flex-start;
        flex-direction: column;
        gap: 9px;
    }

    .rhmp-ad-total > strong {
        font-size: 22px;
    }
}

@media (max-width: 380px) {

    .rhmp-ad-price-card {
        padding: 12px;
    }

    .rhmp-ad-price-top {
        flex-direction: column;
    }

    .rhmp-duration-control {
        grid-template-columns: 42px minmax(95px,1fr) 42px;
        gap: 7px;
    }

    .rhmp-duration-button {
        width: 42px;
        height: 42px;
        font-size: 22px !important;
    }

    .rhmp-duration-days {
        font-size: 21px;
    }
}

/* =========================================================
   v1.2.0 VEHICLE CATEGORY SELECTOR
   Passenger / Service / Watercraft / Aircraft
========================================================= */
.rhmp-vehicle-group-picker {
    margin: 2px 0 20px;
    padding: 14px;
    border: 1px solid #dce9e1;
    border-radius: 12px;
    background: #fbfefc;
}

.rhmp-vehicle-group-label {
    margin-bottom: 9px;
    color: #344054;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 650;
}

.rhmp-vehicle-group-label span {
    color: #e05263;
}

.rhmp-vehicle-group-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.rhmp-vehicle-group-tab {
    min-width: 0;
    min-height: 46px;
    margin: 0;
    padding: 9px 10px;
    border: 1px solid #cfe5d8;
    border-radius: 10px;
    background: #ffffff;
    color: #3c4b43;
    font: inherit;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(24, 70, 45, .035);
    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

.rhmp-vehicle-group-tab:hover {
    border-color: #83d8a7;
    color: #078b43;
    transform: translateY(-1px);
}

.rhmp-vehicle-group-tab.active,
.rhmp-vehicle-group-tab[aria-pressed="true"] {
    border-color: rgba(7, 148, 71, .34);
    background:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447);
    color: #ffffff;
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 5px 12px rgba(7,148,71,.18);
}

.rhmp-vehicle-group-tab:focus-visible {
    outline: 3px solid rgba(32, 237, 120, .30);
    outline-offset: 2px;
}

.rhmp-vehicle-group-help {
    margin: 9px 2px 0;
    color: #7a8798;
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 900px) {
    .rhmp-vehicle-group-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .rhmp-vehicle-group-picker {
        margin-bottom: 17px;
        padding: 11px;
        border-radius: 11px;
    }

    .rhmp-vehicle-group-tabs {
        gap: 7px;
    }

    .rhmp-vehicle-group-tab {
        min-height: 44px;
        padding: 8px 7px;
        font-size: 12px;
        border-radius: 9px;
    }

    .rhmp-vehicle-group-help {
        font-size: 11px;
    }
}


/* =========================================================
   v1.2.1 VEHICLE GROUP BUTTON — REMOVE BLUE BROWSER/THEME STATE
   Visual-only fix. Category selector logic is unchanged.
========================================================= */
.rhmp-vehicle-group-tab {
    -webkit-appearance: none !important;
    appearance: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.rhmp-vehicle-group-tab:focus,
.rhmp-vehicle-group-tab:active {
    outline: none !important;
}

.rhmp-vehicle-group-tab.active,
.rhmp-vehicle-group-tab.active:hover,
.rhmp-vehicle-group-tab.active:focus,
.rhmp-vehicle-group-tab.active:active,
.rhmp-vehicle-group-tab[aria-pressed="true"],
.rhmp-vehicle-group-tab[aria-pressed="true"]:hover,
.rhmp-vehicle-group-tab[aria-pressed="true"]:focus,
.rhmp-vehicle-group-tab[aria-pressed="true"]:active {
    border-color: rgba(7, 148, 71, .34) !important;
    background:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447) !important;
    background-color: #10cf61 !important;
    color: #ffffff !important;
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 5px 12px rgba(7,148,71,.18) !important;
}

.rhmp-vehicle-group-tab:not(.active):focus,
.rhmp-vehicle-group-tab:not([aria-pressed="true"]):focus {
    background: #ffffff !important;
    color: #078b43 !important;
    border-color: #83d8a7 !important;
}


/* =========================================================
   v1.3.0 TEST — CATEGORY-AWARE FORM PROTOTYPE
========================================================= */

/* Defeat theme/browser blue button states with a highly scoped rule. */
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:active {
    -webkit-appearance: none !important;
    appearance: none !important;
    background-image: none !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #3c4b43 !important;
    border-color: #cfe5d8 !important;
    outline: none !important;
    filter: none !important;
    text-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:active,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"],
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:active {
    background:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447) !important;
    background-color: #10cf61 !important;
    background-image:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447) !important;
    color: #ffffff !important;
    border-color: rgba(7,148,71,.34) !important;
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 5px 12px rgba(7,148,71,.18) !important;
}

.rhmp-form-test-note {
    margin-top: 11px;
    padding: 10px 12px;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    border: 1px solid #f1d7a8;
    border-radius: 10px;
    background: #fffaf0;
    color: #795c25;
    font-size: 11px;
    line-height: 1.45;
}

.rhmp-form-test-note strong {
    flex: 0 0 auto;
    color: #8a661d;
}

.rhmp-field-profile-hidden,
.rhmp-package-tab[hidden],
.rhmp-package-panel[hidden],
.rhmp-checkbox-option[hidden],
.rhmp-vehicle-features-section[hidden],
.rhmp-profile-preview[hidden] {
    display: none !important;
}

.rhmp-profile-preview {
    margin-top: 16px;
    padding: 16px;
    border: 1px solid #dce9e1;
    border-radius: 14px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,252,249,.98));
    box-shadow: 0 7px 20px rgba(15, 55, 35, .045);
}

.rhmp-profile-preview-head {
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.rhmp-profile-preview-kicker {
    display: block;
    margin-bottom: 3px;
    color: #079447;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 800;
    letter-spacing: .12em;
}

.rhmp-profile-preview-head h3 {
    margin: 0;
    color: #253b31;
    font-size: 17px;
    line-height: 1.25;
}

.rhmp-preview-badge {
    flex: 0 0 auto;
    padding: 5px 8px;
    border: 1px solid #f0d08e;
    border-radius: 999px;
    background: #fff6df;
    color: #8b681f;
    font-size: 9px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .08em;
}

.rhmp-profile-preview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 16px;
}

.rhmp-preview-field input,
.rhmp-prototype-package-panel input {
    background: #ffffff !important;
}

.rhmp-prototype-package-tab {
    position: relative;
}

.rhmp-prototype-package-tab::after {
    content: 'TEST';
    position: absolute;
    right: 7px;
    top: 5px;
    padding: 2px 4px;
    border-radius: 999px;
    background: rgba(7,148,71,.09);
    color: #078b43;
    font-size: 7px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: .06em;
}

.rhmp-preview-save-note {
    margin: 10px 0 0;
    color: #8b681f;
    font-size: 10px;
    line-height: 1.4;
}

@media (max-width: 700px) {
    .rhmp-profile-preview {
        padding: 12px;
    }

    .rhmp-profile-preview-grid {
        grid-template-columns: 1fr;
        gap: 11px;
    }

    .rhmp-form-test-note {
        display: block;
    }

    .rhmp-form-test-note strong {
        display: block;
        margin-bottom: 3px;
    }
}


/* =========================================================
   v1.3.0 PRODUCTION CATEGORY-AWARE FORM
========================================================= */

.rhmp-form-test-note,
.rhmp-preview-badge,
.rhmp-preview-save-note {
    display: none !important;
}

.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab:active {
    -webkit-appearance: none !important;
    appearance: none !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #3c4b43 !important;
    border-color: #cfe5d8 !important;
    outline: none !important;
    filter: none !important;
    text-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab.active:active,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"],
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:hover,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:focus,
.rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker .rhmp-vehicle-group-tab[aria-pressed="true"]:active {
    background:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447) !important;
    background-color: #10cf61 !important;
    background-image:
        linear-gradient(115deg, rgba(255,255,255,.20), transparent 65%),
        linear-gradient(135deg, #20ed78, #10cf61 48%, #079447) !important;
    color: #ffffff !important;
    border-color: rgba(7,148,71,.34) !important;
    box-shadow:
        inset 0 1px 2px rgba(255,255,255,.48),
        0 5px 12px rgba(7,148,71,.18) !important;
}

.rhmp-dynamic-package-tab::after {
    display: none !important;
}

.rhmp-profile-field input,
.rhmp-dynamic-package-panel input {
    background: #ffffff !important;
}


/* =========================================================
   v1.3.2 OWNER DASHBOARD ADD-VEHICLE NIC LOCK
========================================================= */

#rhmp-nic-number[data-rhmp-owner-nic-locked="1"]{
    background:#f3f7f5 !important;
    color:#42554b !important;
    border-color:#cfe0d7 !important;
    cursor:not-allowed;
    box-shadow:inset 0 1px 2px rgba(16,42,32,.03);
}



/* =========================================================
   v1.4.2 MOBILE + TABLET HORIZONTAL LAYOUT
   Visual-only. No category / pricing / submit logic changed.
========================================================= */

/*
 * Vehicle Category:
 * Keep Passenger / Service / Watercraft / Aircraft in one long row
 * on tablet and mobile, matching the desktop presentation.
 */
@media (max-width: 1024px) {

    .rhmp-vehicle-group-picker {
        overflow: hidden;
    }

    .rhmp-vehicle-group-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 7px !important;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 2px 1px 5px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: rgba(7,148,71,.26) transparent;
    }

    .rhmp-vehicle-group-tabs::-webkit-scrollbar {
        height: 4px;
    }

    .rhmp-vehicle-group-tabs::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(7,148,71,.26);
    }

    .rhmp-vehicle-group-tab {
        flex: 1 0 145px !important;
        min-width: 145px !important;
        min-height: 44px !important;
        white-space: nowrap;
    }


    /*
     * Select Ad Duration:
     * Keep the desktop horizontal composition on tablet/mobile.
     */
    .rhmp-ad-price-top {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }

    .rhmp-duration-control {
        display: grid !important;
        grid-template-columns: 48px minmax(125px,1fr) 48px !important;
        align-items: center !important;
        gap: 9px !important;
        padding: 12px !important;
    }

    .rhmp-duration-button {
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        min-height: 48px !important;
    }

    .rhmp-typed-days-control {
        display: grid !important;
        grid-template-columns: minmax(0,1fr) auto !important;
        gap: 8px !important;
    }

    .rhmp-typed-days-control button {
        width: auto !important;
        min-width: 92px !important;
    }

    .rhmp-ad-price-breakdown {
        display: grid !important;
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
        gap: 7px !important;
    }

    .rhmp-ad-total {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .rhmp-ad-total > strong {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }
}


/*
 * Phone-specific sizing:
 * Stay horizontal but make the same layout fit comfortably.
 */
@media (max-width: 700px) {

    .rhmp-vehicle-group-picker {
        padding: 10px !important;
    }

    .rhmp-vehicle-group-tab {
        flex-basis: 132px !important;
        min-width: 132px !important;
        min-height: 42px !important;
        padding: 8px 8px !important;
        font-size: 11px !important;
    }

    .rhmp-ad-price-card {
        padding: 12px !important;
        overflow: hidden;
    }

    .rhmp-ad-price-top {
        flex-direction: row !important;
        align-items: center !important;
    }

    .rhmp-ad-price-category {
        font-size: 13px !important;
    }

    .rhmp-ad-price-range {
        padding: 6px 8px !important;
        font-size: 8px !important;
    }

    .rhmp-duration-control {
        grid-template-columns: 44px minmax(105px,1fr) 44px !important;
        gap: 7px !important;
        padding: 10px 8px !important;
    }

    .rhmp-duration-button {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        font-size: 23px !important;
    }

    .rhmp-duration-days {
        font-size: 22px !important;
        white-space: nowrap;
    }

    .rhmp-duration-display > span {
        font-size: 8px !important;
    }

    .rhmp-typed-days {
        padding: 10px !important;
    }

    .rhmp-typed-days-control {
        grid-template-columns: minmax(0,1fr) 82px !important;
        gap: 7px !important;
    }

    .rhmp-typed-days-control input {
        min-height: 40px !important;
    }

    .rhmp-typed-days-control button {
        width: 82px !important;
        min-width: 82px !important;
        min-height: 40px !important;
        padding: 0 8px !important;
        font-size: 10px !important;
    }

    .rhmp-ad-price-breakdown {
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
        gap: 5px !important;
    }

    .rhmp-ad-price-item {
        min-width: 0;
        padding: 9px 7px !important;
    }

    .rhmp-ad-price-item span {
        font-size: 7.5px !important;
        white-space: nowrap;
    }

    .rhmp-ad-price-item strong {
        font-size: 11px !important;
        white-space: nowrap;
    }

    .rhmp-ad-total {
        flex-direction: row !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 11px !important;
    }

    .rhmp-ad-total span {
        font-size: 9px !important;
    }

    .rhmp-ad-total small {
        font-size: 7.5px !important;
        line-height: 1.3 !important;
    }

    .rhmp-ad-total > strong {
        font-size: 18px !important;
    }

    .rhmp-ad-price-status,
    .rhmp-duration-note {
        font-size: 8.5px !important;
    }
}


/*
 * Very narrow phones:
 * Preserve the same horizontal design. Category row remains swipeable.
 */
@media (max-width: 380px) {

    .rhmp-vehicle-group-tab {
        flex-basis: 122px !important;
        min-width: 122px !important;
        font-size: 10.5px !important;
    }

    .rhmp-ad-price-top {
        flex-direction: row !important;
    }

    .rhmp-duration-control {
        grid-template-columns: 40px minmax(92px,1fr) 40px !important;
        gap: 6px !important;
    }

    .rhmp-duration-button {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        font-size: 21px !important;
    }

    .rhmp-duration-days {
        font-size: 19px !important;
    }

    .rhmp-typed-days-control {
        grid-template-columns: minmax(0,1fr) 76px !important;
    }

    .rhmp-typed-days-control button {
        width: 76px !important;
        min-width: 76px !important;
        font-size: 9px !important;
    }

    .rhmp-ad-price-breakdown {
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    }

    .rhmp-ad-price-item span {
        font-size: 7px !important;
    }

    .rhmp-ad-price-item strong {
        font-size: 10px !important;
    }

    .rhmp-ad-total {
        flex-direction: row !important;
    }

    .rhmp-ad-total > strong {
        font-size: 16px !important;
    }
}


/* =========================================================
   v1.5.0 OWNER LANGUAGE + WHATSAPP PHOTO STEP
========================================================= */
.rhmp-language-section{position:relative}
.rhmp-language-intro{margin:-4px 0 15px;color:#62786e;font-size:12px;line-height:1.55}
.rhmp-language-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rhmp-language-button{display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;min-height:52px!important;padding:10px 13px!important;border:1px solid #d1e3da!important;border-radius:11px!important;background:#fff!important;color:#314b3f!important;font-size:13px!important;font-weight:850!important;cursor:pointer!important;box-shadow:0 4px 12px rgba(16,54,38,.045)!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}
.rhmp-language-button:hover,.rhmp-language-button:focus-visible{border-color:#079447!important;outline:0!important;box-shadow:0 0 0 3px rgba(16,207,97,.10)!important;transform:translateY(-1px)}
.rhmp-language-button.active{border-color:#079447!important;background:linear-gradient(115deg,rgba(255,255,255,.18),transparent 65%),linear-gradient(135deg,#20ed78,#10cf61 48%,#079447)!important;color:#fff!important;box-shadow:0 7px 18px rgba(7,148,71,.18)!important}
.rhmp-language-code{display:grid;place-items:center;min-width:31px;height:31px;padding:0 5px;border:1px solid rgba(7,148,71,.16);border-radius:8px;background:#effaf4;color:#079447;font-size:10px;font-weight:950}
.rhmp-language-button.active .rhmp-language-code{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.16);color:#fff}
.rhmp-language-required{margin:11px 0 0;padding:9px 11px;border:1px solid #f0caca;border-radius:8px;background:#fff6f6;color:#a23c3c;font-size:10px;font-weight:800;text-align:center}
.rhmp-language-next{margin-top:15px}
.rhmp-whatsapp-photo-box{padding:17px;border:1px solid rgba(7,148,71,.31);border-radius:14px;background:linear-gradient(135deg,#f8fdf9,#eefaf3);box-shadow:0 9px 24px rgba(7,90,50,.055)}
.rhmp-whatsapp-photo-heading{display:flex;align-items:center;gap:10px}
.rhmp-whatsapp-photo-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:11px;background:linear-gradient(135deg,#20ed78,#10cf61 48%,#079447);font-size:19px;box-shadow:0 6px 14px rgba(7,148,71,.15)}
.rhmp-language-selected-label{display:block;color:#079447;font-size:8px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.rhmp-whatsapp-photo-heading h3{margin:3px 0 0;color:#173f2d;font-size:16px;line-height:1.25}
.rhmp-whatsapp-photo-box>p{margin:12px 0;color:#536b60;font-size:11px;line-height:1.58}
.rhmp-photo-policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rhmp-photo-policy-item{display:flex;align-items:center;gap:8px;min-height:52px;padding:10px;border:1px solid #dbe9e2;border-radius:10px;background:#fff;color:#29463a}
.rhmp-photo-policy-item>span{display:grid;place-items:center;min-width:30px;height:30px;border-radius:8px;background:#edf8f2;color:#079447;font-size:11px;font-weight:950}
.rhmp-photo-policy-item.is-free>span{background:#def7e9}
.rhmp-photo-policy-item strong{font-size:10px;line-height:1.35}
.rhmp-localized-submit{margin-top:13px!important}
@media(max-width:700px){.rhmp-language-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.rhmp-language-button{min-height:47px!important;padding:8px 6px!important;font-size:10.5px!important;gap:5px!important}.rhmp-language-code{min-width:26px;height:26px;font-size:8px}.rhmp-photo-policy-grid{grid-template-columns:1fr}.rhmp-whatsapp-photo-box{padding:13px}.rhmp-language-intro{font-size:10px}}
@media(max-width:380px){.rhmp-language-button{font-size:9.5px!important}.rhmp-language-code{display:none}}


/* =========================================================
   v1.5.3 LOCAL / FOREIGN BOOKING PACKAGE PRICES
   ========================================================= */

.rhmp-booking-package-section > .rhmp-section-title {
    flex-wrap: wrap;
}

.rhmp-package-audience-toggle {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
    padding: 3px;
    border: 1px solid #dbe8df;
    border-radius: 9px;
    background: #f7fbf8;
}

.rhmp-package-audience-button {
    min-width: 76px;
    height: 34px;
    padding: 0 13px;
    border: 1px solid transparent !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: #667085 !important;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    box-shadow: none !important;
    outline: none !important;
    transition:
        background .18s ease,
        color .18s ease,
        box-shadow .18s ease;
}

.rhmp-package-audience-button:hover,
.rhmp-package-audience-button:focus,
.rhmp-package-audience-button:active {
    background: #eefaf2 !important;
    color: #079447 !important;
    outline: none !important;
}

.rhmp-package-audience-button.active {
    background:
        linear-gradient(115deg,rgba(255,255,255,.18),transparent 65%),
        linear-gradient(135deg,#20ed78,#10cf61 48%,#079447) !important;
    color: #ffffff !important;
    box-shadow: 0 5px 12px rgba(7,148,71,.15) !important;
}

.rhmp-package-audience-note {
    margin: -13px 0 16px;
    color: #78868f;
    font-size: 11px;
    font-weight: 600;
}

.rhmp-package-selector[data-rhmp-package-audience="foreign"],
.rhmp-package-panel[data-rhmp-audience="foreign"] {
    display: none;
}

.rhmp-booking-package-section.rhmp-pricing-audience-foreign
    > .rhmp-package-selector:not([data-rhmp-package-audience="foreign"]),
.rhmp-booking-package-section.rhmp-pricing-audience-foreign
    > .rhmp-package-panel:not([data-rhmp-audience="foreign"]) {
    display: none !important;
}

.rhmp-booking-package-section.rhmp-pricing-audience-foreign
    > .rhmp-package-selector[data-rhmp-package-audience="foreign"]:not([hidden]) {
    display: grid;
}

.rhmp-booking-package-section.rhmp-pricing-audience-foreign
    > .rhmp-package-panel[data-rhmp-audience="foreign"].active:not([hidden]) {
    display: block;
}

@media (max-width: 700px) {
    .rhmp-package-audience-toggle {
        width: 100%;
        margin-left: 34px;
        margin-top: 3px;
    }

    .rhmp-package-audience-button {
        flex: 1 1 0;
        min-width: 0;
    }

    .rhmp-package-audience-note {
        margin-top: -10px;
    }
}


/* =========================================================
   v1.5.4 MOBILE DESKTOP-COMPOSITION LAYOUT
   =========================================================
   Visual-only upgrade.

   Goal:
   Keep the same visual hierarchy/composition used on Desktop,
   but scale it cleanly for phones instead of stacking important
   button rows and package fields into an awkward single column.
========================================================= */

@media (max-width: 700px) {

    /*
     * Overall form / card spacing.
     */
    .rhmp-main-form .rhmp-form {
        padding: 22px 9px 42px !important;
    }

    .rhmp-main-form .rhmp-section {
        padding: 18px 12px 20px !important;
        margin-bottom: 14px !important;
        border-radius: 10px !important;
    }

    .rhmp-main-form .rhmp-section-title {
        gap: 8px !important;
        margin-bottom: 17px !important;
    }

    .rhmp-main-form .rhmp-section-title h2 {
        font-size: 17px !important;
        line-height: 1.25 !important;
    }

    .rhmp-main-form .rhmp-section-icon {
        width: 22px !important;
        height: 22px !important;
        flex: 0 0 22px !important;
        font-size: 13px !important;
    }


    /*
     * Desktop-like 2-column field layout on mobile.
     * District + City, vehicle information pairs, etc.
     */
    .rhmp-main-form .rhmp-fields-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 13px 9px !important;
    }

    .rhmp-main-form .rhmp-field {
        min-width: 0 !important;
    }

    .rhmp-main-form .rhmp-field label {
        min-height: 29px;
        margin-bottom: 6px !important;
        font-size: 11.5px !important;
        line-height: 1.25 !important;
        display: flex !important;
        align-items: flex-end;
    }

    .rhmp-main-form .rhmp-field input,
    .rhmp-main-form .rhmp-field select {
        height: 44px !important;
        min-height: 44px !important;
        font-size: 12px !important;
    }

    .rhmp-main-form .rhmp-field input {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .rhmp-main-form .rhmp-field select {
        padding-left: 10px !important;
        padding-right: 30px !important;
    }

    .rhmp-main-form .rhmp-description-field textarea {
        min-height: 82px !important;
        height: 82px !important;
        padding: 10px 11px !important;
        font-size: 12px !important;
    }


    /*
     * Vehicle Category:
     * same Desktop 4-button row, scaled to fit mobile.
     */
    .rhmp-main-form .rhmp-form .rhmp-vehicle-group-picker {
        padding: 10px !important;
        margin-bottom: 16px !important;
        overflow: visible !important;
    }

    .rhmp-main-form .rhmp-form .rhmp-vehicle-group-tabs {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 5px !important;
        width: 100% !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    .rhmp-main-form .rhmp-form .rhmp-vehicle-group-tab {
        min-width: 0 !important;
        width: 100% !important;
        flex: none !important;
        min-height: 48px !important;
        padding: 6px 4px !important;
        border-radius: 8px !important;
        font-size: 9.5px !important;
        line-height: 1.18 !important;
        white-space: normal !important;
        overflow-wrap: normal;
        word-break: normal;
    }

    .rhmp-main-form .rhmp-vehicle-group-label {
        margin-bottom: 8px !important;
        font-size: 12px !important;
    }

    .rhmp-main-form .rhmp-vehicle-group-help {
        margin-top: 8px !important;
        font-size: 10px !important;
        line-height: 1.35 !important;
    }


    /*
     * Booking Type:
     * keep Rent / Hire / Self Drive / Trip in one professional row.
     */
    .rhmp-main-form .rhmp-booking-options {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    .rhmp-main-form .rhmp-booking-options .rhmp-checkbox-option {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 58px !important;
        padding: 7px 5px !important;
        gap: 5px !important;
        justify-content: center;
        flex-direction: column;
        text-align: center;
        border-radius: 8px !important;
    }

    .rhmp-main-form .rhmp-booking-options .rhmp-checkbox-box {
        width: 16px !important;
        height: 16px !important;
        flex: 0 0 16px !important;
    }

    .rhmp-main-form .rhmp-booking-options .rhmp-checkbox-text {
        font-size: 9px !important;
        line-height: 1.2 !important;
    }


    /*
     * Call for pricing remains a full-width desktop-style row.
     */
    .rhmp-main-form .rhmp-call-pricing-option {
        width: 100% !important;
        min-height: 46px !important;
        padding: 0 12px !important;
    }

    .rhmp-main-form .rhmp-call-pricing-option .rhmp-checkbox-text {
        font-size: 12px !important;
    }


    /*
     * Booking Package title + Local / Foreign:
     * keep everything on the same title line like Desktop.
     */
    .rhmp-main-form .rhmp-booking-package-section > .rhmp-section-title {
        display: grid !important;
        grid-template-columns: 22px minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 7px !important;
        flex-wrap: nowrap !important;
    }

    .rhmp-main-form .rhmp-booking-package-section
        > .rhmp-section-title
        h2 {
        white-space: nowrap;
        font-size: 16px !important;
    }

    .rhmp-main-form .rhmp-package-audience-toggle {
        width: auto !important;
        min-width: 132px;
        margin: 0 !important;
        padding: 3px !important;
        gap: 3px !important;
        justify-self: end;
    }

    .rhmp-main-form .rhmp-package-audience-button {
        min-width: 62px !important;
        height: 32px !important;
        padding: 0 8px !important;
        font-size: 10.5px !important;
    }

    .rhmp-main-form .rhmp-package-audience-note {
        margin: -8px 0 13px 29px !important;
        font-size: 9.5px !important;
        line-height: 1.3 !important;
    }


    /*
     * Per Day / Week / Month / Year:
     * keep Desktop's four-tab row.
     */
    .rhmp-main-form .rhmp-package-selector,
    .rhmp-main-form
        .rhmp-package-selector[data-rhmp-package-audience="foreign"] {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 3px !important;
        padding: 3px !important;
        margin-bottom: 15px !important;
    }

    .rhmp-main-form .rhmp-package-tab {
        min-width: 0 !important;
        height: 40px !important;
        padding: 0 3px !important;
        font-size: 10.5px !important;
        line-height: 1.15 !important;
        white-space: normal;
    }


    /*
     * Package fields:
     * same Desktop 3-column row for Amount / KM / Extra Charge.
     */
    .rhmp-main-form .rhmp-package-fields {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .rhmp-main-form .rhmp-package-fields .rhmp-field label {
        min-height: 31px;
        font-size: 9.5px !important;
        line-height: 1.2 !important;
    }

    .rhmp-main-form .rhmp-package-fields .rhmp-field input {
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 7px !important;
        font-size: 10.5px !important;
    }


    /*
     * Feature choices keep the Desktop multi-column feel.
     */
    .rhmp-main-form .rhmp-features-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .rhmp-main-form .rhmp-features-list .rhmp-feature-option {
        min-width: 0 !important;
        min-height: 44px !important;
        padding: 7px 9px !important;
        gap: 7px !important;
    }

    .rhmp-main-form .rhmp-features-list .rhmp-feature-text {
        font-size: 10.5px !important;
        line-height: 1.25 !important;
    }


    /*
     * Ad Duration:
     * preserve the already-approved horizontal mobile layout,
     * only tighten outer spacing to match the rest of the form.
     */
    .rhmp-main-form .rhmp-ad-price-card {
        padding: 11px !important;
    }

    .rhmp-main-form .rhmp-duration-control {
        margin-top: 1px;
    }
}


/*
 * Very narrow phones:
 * still preserve the same Desktop composition instead of stacking.
 */
@media (max-width: 380px) {

    .rhmp-main-form .rhmp-form {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    .rhmp-main-form .rhmp-section {
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    .rhmp-main-form .rhmp-fields-grid {
        gap-left: 7px;
        gap-right: 7px;
        column-gap: 7px !important;
    }

    .rhmp-main-form .rhmp-form .rhmp-vehicle-group-tabs {
        gap: 3px !important;
    }

    .rhmp-main-form .rhmp-form .rhmp-vehicle-group-tab {
        min-height: 46px !important;
        padding: 5px 2px !important;
        font-size: 8.5px !important;
    }

    .rhmp-main-form .rhmp-package-audience-toggle {
        min-width: 118px;
    }

    .rhmp-main-form .rhmp-package-audience-button {
        min-width: 55px !important;
        padding: 0 5px !important;
        font-size: 9.5px !important;
    }

    .rhmp-main-form .rhmp-package-tab {
        font-size: 9.5px !important;
    }

    .rhmp-main-form .rhmp-package-fields {
        gap: 6px !important;
    }

    .rhmp-main-form .rhmp-package-fields .rhmp-field label {
        font-size: 8.7px !important;
    }

    .rhmp-main-form .rhmp-package-fields .rhmp-field input {
        padding: 0 5px !important;
        font-size: 9.7px !important;
    }

    .rhmp-main-form .rhmp-booking-options {
        gap: 4px !important;
    }

    .rhmp-main-form .rhmp-booking-options .rhmp-checkbox-option {
        padding: 6px 3px !important;
    }

    .rhmp-main-form .rhmp-booking-options .rhmp-checkbox-text {
        font-size: 8.3px !important;
    }
}


/* Dependent Brand / Model choices retain native keyboard and mobile selects. */
.rhmp-main-form .rhmp-brand-model-source[hidden] { display: none !important; }
.rhmp-main-form .rhmp-brand-model-source:not([hidden]) { margin-top: 8px; }
.rhmp-brand-model-help { display: block; margin-top: 6px; color: #667085; font-size: 12px; line-height: 1.5; }

/* Searchable Brand / Model lists: filter while typing, select by touch or keyboard. */
.rhmp-main-form .rhmp-search-choice { position: relative; min-width: 0; }
.rhmp-main-form select[hidden],
.rhmp-main-form .rhmp-choice-results[hidden] { display: none !important; }
.rhmp-main-form .rhmp-choice-results {
  position: absolute; top: 100%; left: 0; right: 0; z-index: 100;
  margin-top: 6px; max-height: 240px; overflow-y: auto;
  overscroll-behavior: contain; border: 1px solid #cfe5d8; border-radius: 8px;
  background: #fff; color: #253a2c; box-shadow: 0 6px 16px rgba(7,148,71,.10);
}
.rhmp-main-form .rhmp-choice-option {
  padding: 12px 14px; min-height: 44px; box-sizing: border-box;
  font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; cursor: pointer;
}
.rhmp-main-form .rhmp-choice-option:hover,
.rhmp-main-form .rhmp-choice-option.is-active,
.rhmp-main-form .rhmp-choice-option[aria-selected="true"] { background: #e6f7ed; color: #006d35; }
.rhmp-main-form .rhmp-choice-search { font-size: 16px; }
.rhmp-main-form .rhmp-choice-search:disabled { opacity: .6; }

/* Keep touch browsing inside the results; use native finger scrolling without extra controls. */
.rhmp-main-form .rhmp-choice-results {
  touch-action: pan-y; -webkit-overflow-scrolling: touch;
  overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable;
}
.rhmp-main-form .rhmp-choice-option { touch-action: pan-y; user-select: none; }

/* Five visible options; the remaining options stay in the same swipeable list. */
.rhmp-main-form .rhmp-choice-results {
  box-sizing: content-box; max-height: 240px; padding: 0;
}
.rhmp-main-form .rhmp-choice-option {
  height: 48px; min-height: 48px; max-height: 48px;
  margin: 0; padding: 4px 14px; box-sizing: border-box;
  display: flex; align-items: center; line-height: 20px;
}

/* v1.5.12 – Safari Tour Hire: compact, category-only form controls. */
.rhmp-main-form .rhmp-profile-field select,
.rhmp-main-form .rhmp-profile-field textarea {width:100%; box-sizing:border-box; background:#fff; border:1px solid #cbded2; border-radius:9px; padding:12px; color:#24362b; font:inherit; min-height:44px;}
.rhmp-main-form .rhmp-profile-field textarea {min-height:84px; resize:vertical;}
.rhmp-main-form .rhmp-profile-field select:focus,
.rhmp-main-form .rhmp-profile-field textarea:focus {outline:2px solid #10b95f; outline-offset:1px;}
.rhmp-safari-required {color:#dc2626;}
.rhmp-profile-preview-grid .rhmp-safari-wide-field {grid-column:1 / -1;}
@media(max-width:700px){.rhmp-profile-preview-grid .rhmp-safari-wide-field{grid-column:auto;}}

/* v1.5.13: language first, photo instructions immediately above submit */
.rhmp-language-section{margin-bottom:22px}
.rhmp-language-final-section .rhmp-localized-submit{display:flex;flex-direction:column;gap:12px}
.rhmp-language-final-section .rhmp-whatsapp-photo-box{width:100%;box-sizing:border-box;margin:0 0 2px}
.rhmp-language-final-section .rhmp-send-admin-button{align-self:stretch}
.rhmp-language-next[hidden]{display:none!important}
.rhmp-language-section .rhmp-language-required[hidden]{display:none!important}
@media(max-width:640px){.rhmp-language-section{margin-bottom:14px}.rhmp-language-final-section .rhmp-localized-submit{gap:10px}}

/* =========================================================
   v1.5.14 — LOCALIZED FORM GUIDANCE + RESPONSIVE POLISH
   Existing English labels, dropdowns, placeholders and all data logic
   remain intact. Guidance text only follows the chosen language.
   ========================================================= */
.rhmp-main-form,
.rhmp-main-form .rhmp-form,
.rhmp-main-form .rhmp-section,
.rhmp-main-form .rhmp-fields-grid,
.rhmp-main-form .rhmp-profile-preview,
.rhmp-main-form .rhmp-profile-preview-grid,
.rhmp-main-form .rhmp-package-fields,
.rhmp-main-form .rhmp-field {min-width:0;max-width:100%;box-sizing:border-box}
.rhmp-main-form .rhmp-english-only-banner {
    margin:14px 0 0;padding:12px 15px;border:1px solid #b4dfc7;
    border-inline-start:4px solid #079447;border-radius:10px;
    background:#f0fbf5;color:#1c5939;font-size:13px;line-height:1.65;font-weight:700;
    overflow-wrap:anywhere;
}
.rhmp-main-form .rhmp-section-guide {
    margin:0 0 15px;padding:0;color:#527161;font-size:13px;
    line-height:1.7;overflow-wrap:anywhere;
}
.rhmp-main-form .rhmp-input-help {
    margin:7px 1px 0;color:#64796d;font-size:12px;font-weight:450;
    line-height:1.65;overflow-wrap:anywhere;white-space:normal;
}
.rhmp-main-form .rhmp-input-language-error {
    margin:7px 1px 0;color:#b42318;font-size:12px;
    font-weight:650;line-height:1.6;overflow-wrap:anywhere;
}
.rhmp-main-form .rhmp-input-language-error[hidden],
.rhmp-main-form .rhmp-profile-field[hidden] {display:none!important}
.rhmp-main-form .rhmp-nonenglish-input,
.rhmp-main-form .rhmp-nonenglish-input:focus {border-color:#d92d20!important;
    box-shadow:0 0 0 2px rgba(217,45,32,.1)!important}
.rhmp-main-form .rhmp-profile-field select,
.rhmp-main-form .rhmp-profile-field input,
.rhmp-main-form .rhmp-profile-field textarea,
.rhmp-main-form .rhmp-field select,
.rhmp-main-form .rhmp-field input,
.rhmp-main-form .rhmp-description-field textarea {max-width:100%;min-width:0;box-sizing:border-box}
.rhmp-main-form .rhmp-language-intro {font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.rhmp-main-form .rhmp-language-buttons {min-width:0}
.rhmp-main-form .rhmp-language-button {min-width:0;white-space:normal;overflow-wrap:anywhere;text-align:center}
.rhmp-main-form .rhmp-language-button:focus-visible,
.rhmp-main-form button:focus-visible {outline:2px solid #079447!important;outline-offset:2px}
.rhmp-main-form .rhmp-whatsapp-photo-box,
.rhmp-main-form .rhmp-photo-policy-item,
.rhmp-main-form .rhmp-submit-section {max-width:100%;min-width:0;box-sizing:border-box;overflow-wrap:anywhere}
.rhmp-main-form .rhmp-photo-policy-item strong {font-size:clamp(11px,1.1vw,13px);line-height:1.5}
.rhmp-main-form .rhmp-whatsapp-photo-box>p {font-size:13px;line-height:1.7}
@media (max-width:1024px) {
    .rhmp-main-form .rhmp-fields-grid,
    .rhmp-main-form .rhmp-profile-preview-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
    .rhmp-main-form .rhmp-profile-preview-grid .rhmp-safari-wide-field {grid-column:1 / -1}
}
@media (max-width:767px) {
    .rhmp-main-form .rhmp-form {max-width:100%;overflow-x:clip}
    .rhmp-main-form .rhmp-section {padding-inline:clamp(12px,3.5vw,22px)}
    .rhmp-main-form .rhmp-fields-grid,
    .rhmp-main-form .rhmp-profile-preview-grid,
    .rhmp-main-form .rhmp-package-fields {grid-template-columns:minmax(0,1fr)!important}
    .rhmp-main-form .rhmp-profile-preview-grid .rhmp-safari-wide-field {grid-column:1 / -1}
    .rhmp-main-form .rhmp-language-buttons {grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
    .rhmp-main-form .rhmp-language-button {min-height:48px!important;font-size:clamp(11px,2.8vw,13px)!important;padding:9px 4px!important;gap:5px!important}
    .rhmp-main-form .rhmp-english-only-banner {font-size:12.5px}
    .rhmp-main-form .rhmp-input-help,
    .rhmp-main-form .rhmp-section-guide {font-size:12.5px;line-height:1.7}
    .rhmp-main-form .rhmp-field input,
    .rhmp-main-form .rhmp-field select,
    .rhmp-main-form .rhmp-field textarea,
    .rhmp-main-form .rhmp-description-field textarea,
    .rhmp-main-form .rhmp-profile-field input,
    .rhmp-main-form .rhmp-profile-field select,
    .rhmp-main-form .rhmp-profile-field textarea {font-size:16px!important;min-height:46px}
    .rhmp-main-form .rhmp-send-admin-button {min-height:50px;width:100%}
    .rhmp-main-form .rhmp-photo-policy-grid {grid-template-columns:1fr!important}
}
@media (max-width:390px) {
    .rhmp-main-form .rhmp-language-code {display:none}
    .rhmp-main-form .rhmp-language-button {font-size:11px!important;padding-inline:3px!important}
}
@media (prefers-reduced-motion:reduce) {
    .rhmp-main-form .rhmp-language-button {transition:none!important}
}

/* =========================================================
   v1.5.15 — DESKTOP CENTERED, BALANCED FORM CANVAS
   Scope: cosmetics only, mobile and tablet layout are preserved.
   DOM: form.rhmp-main-form > div.rhmp-form (not the reverse).
   ========================================================= */
@media (min-width: 1025px) {
    body form.rhmp-main-form > .rhmp-form,
    body .rhmp-main-form > .rhmp-form {
        width: calc(100% - 48px) !important;
        max-width: 940px !important;
        margin-inline: auto !important;
        padding: 30px 12px 70px !important;
    }
    body .rhmp-main-form > .rhmp-form .rhmp-form-header {
        margin: 0 auto 29px !important;
        text-align: center;
    }
    body .rhmp-main-form > .rhmp-form .rhmp-form-header h1 {
        font-size: clamp(28px, 2.6vw, 36px);
        line-height: 1.25;
    }
    body .rhmp-main-form > .rhmp-form .rhmp-section {
        padding: 25px 29px 28px;
        margin-bottom: 20px;
        border: 1px solid #d5e8dc;
        border-radius: 15px;
        box-shadow: 0 7px 25px rgba(8, 62, 36, 0.045);
    }
    body .rhmp-main-form > .rhmp-form .rhmp-fields-grid,
    body .rhmp-main-form > .rhmp-form .rhmp-profile-preview-grid {
        column-gap: 23px;
        row-gap: 16px;
    }
    body .rhmp-main-form > .rhmp-form .rhmp-language-buttons { gap: 12px; }
}
/* Sinhala/Tamil guidance should remain legible and wrap naturally. */
.rhmp-main-form .rhmp-input-help,
.rhmp-main-form .rhmp-section-guide,
.rhmp-main-form .rhmp-english-only-banner {
    font-family: -apple-system, BlinkMacSystemFont, "Noto Sans Sinhala", "Noto Sans Tamil", "Iskoola Pota", "Latha", Arial, sans-serif;
    word-break: normal;
    overflow-wrap: break-word;
}

/* RentHubMP Terms acceptance step: scoped, responsive and accessible. */
.rhmp-form .rhmp-legal-consent {border:1px solid #cce9d7;background:linear-gradient(150deg,#f4fcf7,#fff);padding:clamp(15px,2.5vw,24px);border-radius:16px;margin:0 0 16px;max-width:100%;}
.rhmp-form .rhmp-legal-heading{color:#076e3b;font-weight:800;font-size:clamp(16px,2vw,19px);margin-bottom:8px;}
.rhmp-form .rhmp-legal-help{font-size:13px;color:#536776;line-height:1.65;margin:5px 0 14px;}
.rhmp-form .rhmp-legal-links{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px;}
.rhmp-form .rhmp-legal-links a{border:1px solid #93d4aa;background:#fff;color:#087c43;text-decoration:none;font-size:12px;font-weight:750;padding:10px 12px;border-radius:10px;line-height:1.4;}
.rhmp-form .rhmp-legal-links a:is(:hover,:focus-visible){background:#e1f6e9;outline-offset:2px;}
.rhmp-form .rhmp-legal-choice{display:flex;gap:12px;align-items:flex-start;cursor:pointer;background:#fff;border:1px solid #d3e5d9;border-radius:12px;padding:14px;color:#233648;font-size:14px;line-height:1.65;}
.rhmp-form .rhmp-legal-choice input{width:20px!important;height:20px!important;min-width:20px;min-height:20px;accent-color:#08a94f;margin:2px 0 0!important;}
.rhmp-form .rhmp-legal-choice strong{color:#c62828;}
.rhmp-form .rhmp-legal-error{color:#b42318;font-size:13px;margin:10px 0;}
.rhmp-form .rhmp-legal-next{display:block;width:100%;min-height:48px;margin-top:15px;background:#08a94f;color:#fff;border:1px solid #07863e;border-radius:12px;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 7px 18px rgba(8,169,79,.15);}
.rhmp-form .rhmp-legal-next:disabled{background:#b9c9be;border-color:#b9c9be;color:#4d6055;cursor:not-allowed;box-shadow:none;}
.rhmp-form .rhmp-legal-next:not(:disabled):is(:hover,:focus-visible){background:#087e3e;}
.rhmp-form .rhmp-legal-submit-gate[hidden]{display:none!important;}
@media(max-width:600px){.rhmp-form .rhmp-legal-links{display:grid;grid-template-columns:1fr;}.rhmp-form .rhmp-legal-links a{display:block;text-align:center;}.rhmp-form .rhmp-legal-choice{font-size:13px;}}

.rhmp-form .rhmp-legal-choice+.rhmp-legal-choice{margin-top:11px}

/* v1.5.19 — RentHubMP green theme, accessible terms review dialog. */
.rhmp-form .rhmp-legal-open{display:block;width:100%;min-height:48px;border:1px solid #087f40;border-radius:12px;background:#08a94f;color:#fff;font-size:15px;font-weight:800;cursor:pointer;padding:12px 16px;box-shadow:0 6px 17px rgba(8,169,79,.18)}
.rhmp-form .rhmp-legal-open:hover,.rhmp-form .rhmp-legal-open:focus-visible{background:#087e3e;color:#fff}
.rhmp-form .rhmp-legal-open:disabled{opacity:.6;cursor:not-allowed}
.rhmp-form .rhmp-legal-summary{font-size:13px;color:#526a5d;margin:10px 0 0}
.rhmp-owner-terms-modal[hidden],.rhmp-owner-terms-language[hidden]{display:none!important}
body.rhmp-terms-dialog-open{overflow:hidden}
.rhmp-owner-terms-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:clamp(8px,2vw,24px);font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif}
.rhmp-owner-terms-backdrop{position:absolute;inset:0;background:rgba(4,25,17,.72);backdrop-filter:blur(3px)}
.rhmp-owner-terms-dialog{z-index:1;position:relative;width:min(740px,100%);max-width:100%;height:min(790px,92dvh);max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;border-radius:18px;background:#fff;border:1px solid #b8d9c5;box-shadow:0 22px 70px rgba(0,0,0,.28);box-sizing:border-box;outline:none;color:#20392d}
.rhmp-owner-terms-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:clamp(13px,2vw,22px);background:#f1fbf4;border-bottom:1px solid #d7ebe0;flex:0 0 auto}
.rhmp-owner-terms-header h2{margin:0 0 5px;font-size:clamp(17px,2.4vw,23px);color:#087c43;line-height:1.3}
.rhmp-owner-terms-header p{margin:0;font-size:clamp(12px,1.5vw,13px);color:#577568;line-height:1.4}
.rhmp-owner-terms-close{flex:none;width:40px;height:40px;display:grid;place-items:center;border:1px solid #d1e5d7;border-radius:10px;background:#fff;color:#24533b;font-size:27px;line-height:1;cursor:pointer}
.rhmp-owner-terms-close:hover{background:#e3f7e9}
.rhmp-owner-terms-scroll{flex:1 1 auto;min-height:80px;overflow-y:auto;overscroll-behavior:contain;padding:clamp(14px,2.4vw,24px);scrollbar-color:#08a94f #eef6f0;scrollbar-width:auto}
.rhmp-owner-terms-policy{border-bottom:1px solid #e5ede8;margin:0 0 20px;padding-bottom:12px}
.rhmp-owner-terms-policy h3{font-size:clamp(17px,2vw,21px);color:#08783e;margin:4px 0 10px;line-height:1.4}
.rhmp-owner-terms-policy h4{font-size:14px;color:#1b6140;margin:18px 0 6px;line-height:1.5}
.rhmp-owner-terms-policy p{font-size:13px;line-height:1.8;color:#374b42;margin:6px 0 12px;overflow-wrap:anywhere}
.rhmp-owner-terms-end{text-align:center;font-weight:800;color:#087d42;font-size:14px;margin:12px 0 0;padding:18px 0}
.rhmp-owner-terms-footer{flex:0 0 auto;padding:clamp(12px,2vw,18px);background:#fff;border-top:1px solid #d7ebe0;box-shadow:0 -8px 14px rgba(20,60,35,.03);max-height:45%;overflow-y:auto}
.rhmp-owner-terms-progress{margin:0 0 10px;color:#087844;font-size:12px;font-weight:750;line-height:1.45}
.rhmp-owner-terms-footer .rhmp-legal-choice{display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:8px 10px;margin:0 0 6px!important;background:#f7fcf8;border:1px solid #deede3;border-radius:9px;color:#233c30;font-size:clamp(11px,1.4vw,13px);line-height:1.4}
.rhmp-owner-terms-footer .rhmp-legal-choice input{width:20px!important;height:20px!important;min-width:20px;accent-color:#08a94f;margin:1px 0 0!important}
.rhmp-owner-terms-footer .rhmp-legal-choice:has(input:disabled){opacity:.58;cursor:not-allowed}
.rhmp-owner-terms-footer .rhmp-legal-next{margin:9px 0 0;min-height:44px;font-size:14px}
@media(max-width:600px){.rhmp-owner-terms-modal{padding:7px}.rhmp-owner-terms-dialog{width:100%;height:calc(100dvh - 14px);max-height:calc(100dvh - 14px);border-radius:13px}.rhmp-owner-terms-header{padding:13px}.rhmp-owner-terms-scroll{padding:14px}.rhmp-owner-terms-footer{padding:11px;max-height:49%}.rhmp-owner-terms-footer .rhmp-legal-choice{font-size:12px;line-height:1.35}}
@media(prefers-reduced-motion:reduce){.rhmp-owner-terms-modal *{scroll-behavior:auto!important}}
