/* Clean, touch-friendly search action for the main header. */
.novo-search .btn {
    display: grid;
    place-items: center;
    flex: 0 0 48px;
    min-width: 48px;
    padding: 0;
    border: 0;
    border-radius: 0 11px 11px 0;
    background: #0088cc;
    box-shadow: none;
    transition: background .2s ease, color .2s ease;
}

.novo-search .btn i {
    position: relative;
    font-size: 1rem;
    line-height: 1;
}

.novo-search .btn:hover {
    background: #0077b3;
}

.novo-search .btn:active {
    background: #006b9f;
}

.novo-search .btn:focus-visible {
    z-index: 2;
    outline: 3px solid rgba(0, 136, 204, .28);
    outline-offset: 2px;
}

/* ---- Unified search group (RTL-aware corners) ---------------------------
   The base rules in novo-store.css use physical corner radii, which round
   the wrong edge in an RTL layout. Logical radii keep the three controls
   welded into one pill: input at the start, select in the middle, button
   at the end. */
.novo-search {
    display: flex;
    align-items: stretch;
    flex-wrap: nowrap;
}

.novo-search > .form-control,
.novo-search > .form-select,
.novo-search > .btn {
    height: 46px;
    margin: 0;
    border-radius: 0;
}

.novo-search > .form-control {
    flex: 1 1 auto;
    min-width: 0;
    border: 2px solid var(--line);
    border-start-start-radius: 12px;
    border-end-start-radius: 12px;
    padding: 0 1rem;
}

.novo-search > .form-select {
    flex: 0 0 100px;
    max-width: 100px;
    border: 2px solid var(--line);
    border-inline-start: 0;
    background-position: left .6rem center;
    padding-inline: .7rem 1.8rem;
    font-weight: 700;
}

.novo-search > .btn {
    flex: 0 0 48px;
    min-width: 48px;
    border-start-end-radius: 12px;
    border-end-end-radius: 12px;
}

.novo-search > .form-control:focus,
.novo-search > .form-select:focus {
    z-index: 2;
    border-color: var(--novo);
    box-shadow: none;
}
