.api-shell {
    --iosrt-bg: #ffffff;
    --iosrt-text: #0f172a;
    --iosrt-muted: #64748b;
    --iosrt-line: #dbe4f0;
    --iosrt-panel: #f8fafc;
    --iosrt-accent: #f59e0b;
    --iosrt-accent-strong: #d97706;
    --iosrt-danger: #c2410c;
    --iosrt-radius: 24px;
}

.api-shell,
.api-shell * {
    font-family: "Manrope", sans-serif !important;
}

.api-shell h1,
.api-shell h2,
.api-shell h3,
.api-shell h4,
.api-shell .iosrt_model_title,
.api-shell .iosrt_h1,
.api-shell .iosrt_model_h2 {
    font-family: "Space Grotesk", sans-serif !important;
}

.api-shell--booking,
.api-shell--fleet {
    padding: 18px;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.96), rgba(247,250,252,0.98)),
        #fff;
    border-radius: 26px;
}

.api-shell .iosrt_colswrap,
.api-shell .iosrt_maincol,
.api-shell .iosrt_sidecol,
.api-shell .iosrt_formwrap,
.api-shell .iosrt_formsidewrap,
.api-shell .iosrt_formvehwrap,
.api-shell .iosrt_model,
.api-shell .iosrt_model_main,
.api-shell .iosrt_model_side,
.api-shell .iosrt_resultsbox,
.api-shell .iosrt_resultswrap {
    box-sizing: border-box;
}

.api-shell .iosrt_sidecol {
    width: 300px;
}

.api-shell .iosrt_maincol {
    margin-left: 324px;
}

.api-shell .iosrt_formsidewrap,
.api-shell .iosrt_formvehwrap,
.api-shell .iosrt_model,
.api-shell .iosrt_resultswrap,
.api-shell .iosrt_book_mainbox,
.api-shell .iosrt_book_sidebox {
    border: 1px solid var(--iosrt-line);
    border-radius: var(--iosrt-radius);
    background: var(--iosrt-bg);
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.api-shell .iosrt_formsidewrap,
.api-shell .iosrt_formvehwrap {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.api-shell .iosrt_model {
    overflow: hidden;
    border-color: var(--iosrt-line);
    margin-bottom: 22px;
}

.api-shell .iosrt_model:hover {
    border-color: rgba(245, 158, 11, 0.5);
    box-shadow: 0 24px 55px rgba(245, 158, 11, 0.08);
}

.api-shell .iosrt_model_bgside {
    background: #f8fafc;
    border-left: 1px solid var(--iosrt-line);
}

.api-shell .iosrt_error {
    background: #fff7ed;
    border: 1px solid #fdba74;
    color: var(--iosrt-danger);
    border-radius: 18px;
}

.api-shell .iosrt_error h4,
.api-shell .iosrt_error p {
    color: var(--iosrt-danger);
}

.api-shell label.iosrt_labelblock,
.api-shell .iosrt_dbox_date,
.api-shell .iosrt_dbox_loc,
.api-shell .iosrt_dbox_dur,
.api-shell .iosrt_model_badge,
.api-shell .iosrt_dbox_loc span,
.api-shell .iosrt_model_title span {
    color: var(--iosrt-muted) !important;
}

.api-shell .iosrt_h1,
.api-shell .iosrt_model_h2,
.api-shell .iosrt_model_title,
.api-shell h3.iosrt_side_h3,
.api-shell h4.iosrt_dbox_h4 {
    color: var(--iosrt-text) !important;
}

.api-shell input.iosrt_text,
.api-shell input[type="text"].iosrt_text,
.api-shell input[type="number"].iosrt_text,
.api-shell select.iosrt_select {
    min-height: 52px;
    border: 1px solid var(--iosrt-line);
    border-radius: 16px;
    background: #fff;
    color: var(--iosrt-text);
    box-shadow: none;
    padding: 12px 16px;
}

.api-shell input.iosrt_text:focus,
.api-shell select.iosrt_select:focus {
    outline: none;
    border-color: rgba(245, 158, 11, 0.55);
    box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.12);
}

.api-shell button.iosrt_sbtn,
.api-shell button[type=submit].iosrt_sbtn,
.api-shell button[type=button].iosrt_sbtn,
.api-shell button.iosrt_btn,
.api-shell button[type=submit].iosrt_btn,
.api-shell button[type=button].iosrt_btn {
    min-height: 50px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--iosrt-accent), #ffd48a);
    color: #0b1422;
    font-weight: 800;
    letter-spacing: 0.01em;
    box-shadow: 0 14px 30px rgba(245, 158, 11, 0.22);
}

.api-shell button.iosrt_sbtn:hover,
.api-shell button[type=submit].iosrt_sbtn:hover,
.api-shell button[type=button].iosrt_sbtn:hover,
.api-shell button.iosrt_btn:hover,
.api-shell button[type=submit].iosrt_btn:hover,
.api-shell button[type=button].iosrt_btn:hover {
    background: linear-gradient(135deg, #f59e0b, #ffdf9f);
    color: #09111f;
}

.api-shell a.iosrt_model_more,
.api-shell a.iosrt_model_more:visited,
.api-shell a.iosrt_model_more:active,
.api-shell a.iosrt_model_more:link {
    color: var(--iosrt-accent-strong);
    font-weight: 700;
}

.api-shell .iosrt_book_flexwrap {
    gap: 16px;
}

.api-shell .iosrt_book_mainbox,
.api-shell .iosrt_book_sidebox {
    padding: 18px;
}

.api-shell .iosrt_dbox {
    border-bottom: 1px solid var(--iosrt-line);
}

.api-shell .iosrt_model_colswrap {
    align-items: stretch;
}

.api-shell .iosrt_model_main,
.api-shell .iosrt_model_side {
    padding: 22px;
}

.api-shell .iosrt_formvehwrap,
.api-shell .iosrt_formsidewrap {
    padding: 18px;
}

.booking-card--inline .iosrt_formwrap,
.booking-card--inline form.iosrt_form {
    width: 100%;
}

.booking-card--inline .iosrt_formvehwrap,
.booking-card--inline .iosrt_formsidewrap {
    padding: 0;
    border: 0;
    box-shadow: none;
    background: transparent;
}

.booking-card--inline .iosrt_2colflexwrap {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: end;
}

.booking-card--inline .iosrt_2colflexbox,
.booking-card--inline .iosrt_datebox,
.booking-card--inline .iosrt_dateonlybox,
.booking-card--inline .iosrt_timebox {
    min-width: 0;
    flex: 1 1 auto;
}

.booking-card--inline .iosrt_datebox {
    padding-right: 0;
}

.booking-card--inline .iosrt_timebox {
    float: none;
    width: auto;
}

.booking-card--inline .iosrt_hourbox,
.booking-card--inline .iosrt_minbox {
    width: 50%;
    padding-right: 0;
}

.booking-card--inline button.iosrt_sbtn,
.booking-card--inline button[type=submit].iosrt_sbtn,
.booking-card--inline button[type=button].iosrt_sbtn {
    width: 100%;
    min-width: 170px;
}

@media (max-width: 1180px) {
    .booking-card--inline .iosrt_2colflexwrap {
        flex-wrap: wrap;
    }
}

@media (max-width: 760px) {
    .booking-card--inline .iosrt_2colflexwrap {
        display: block;
    }
}

.api-shell .flatpickr-calendar {
    border-radius: 18px;
    border: 1px solid var(--iosrt-line);
    box-shadow: 0 24px 45px rgba(15, 23, 42, 0.15);
}

@media (max-width: 980px) {
    .api-shell .iosrt_sidecol {
        width: 100%;
        float: none;
    }

    .api-shell .iosrt_maincol {
        margin-left: 0;
    }

    .api-shell .iosrt_model_colswrap {
        display: block;
    }

    .api-shell .iosrt_model_bgside {
        border-left: 0;
        border-top: 1px solid var(--iosrt-line);
    }
}
