/* Bootstrap 4.6; načíst ZA původní style.css a styly tématu. */
#info #vybranyModel.stock-filter { width:100%; max-width:none; padding:0; margin:0; float:none; clear:both; }
#info #vybranyModel .stock-panel { background:#fff; border:1px solid #e0e5ec; border-radius:16px; padding:28px; box-shadow:0 10px 32px rgba(15,42,74,.07); }
#info #vybranyModel .stock-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:26px; }
#info #vybranyModel .stock-heading h3 { margin:0 0 6px; padding:0; font-size:26px; line-height:1.2; color:#003b7a; font-weight:700; }
#info #vybranyModel .stock-heading p, #info #vybranyModel .stock-actions-note { margin:0; padding:0; font-size:15px; line-height:1.5; color:#596579; }
#info #vybranyModel .stock-heading-note { color:#003b7a; background:#eef4fb; border-radius:20px; padding:7px 13px; font-size:13px; white-space:nowrap; }
#info #vybranyModel #specifikaceModelu { width:100%; float:none; margin:0; padding:0; }
#info #vybranyModel .stock-row { display:flex; flex-wrap:wrap; margin:0 -9px; padding:0; }
#info #vybranyModel .stock-field { float:none; min-width:0; padding:0 9px; margin-bottom:20px; }
#info #vybranyModel .stock-field label { display:block; position:static; float:none; width:auto; margin:0 0 7px; padding:0; text-align:left; color:#26354a; font-size:16px; font-weight:600; line-height:1.4; }
#info #vybranyModel .stock-control { display:block; position:static; float:none; width:100%; max-width:100%; height:46px; margin:0; padding:9px 32px 9px 12px; border:1px solid #cbd3df; border-radius:7px; background-color:#fff; font-size:16px; line-height:1.5; box-shadow:none; }
#info #vybranyModel select option { color:#26354a; }
#info #vybranyModel .stock-control:focus, #info #vybranyModel .stock-price:focus-within { border-color:#0057a5; box-shadow:0 0 0 3px rgba(0,87,165,.15); outline:none; }
#info #vybranyModel .stock-color-field { min-width:0; width:100%; margin:0 0 22px; padding:0; border:0; }
#info #vybranyModel .stock-color-field legend { float:none; width:auto; margin:0 0 4px; padding:0; font-size:16px; font-weight:600; color:#26354a; }
#info #vybranyModel #stockColorHelp { margin:0 0 12px; padding:0; font-size:14px; color:#596579; }
#info #vybranyModel #barvyModelu { width:100%; float:none; padding:0; margin:0; }
#info #vybranyModel ul#vzornik { display:flex; flex-wrap:wrap; align-items:center; gap:10px; width:100%; padding:4px; margin:0; list-style:none; }
#info #vybranyModel #vzornik li { display:block; float:none; width:auto; height:auto; padding:0; margin:0; }
#info #vybranyModel #vzornik a { display:block; width:44px; height:44px; position:relative; padding:3px; border:1px solid #b8c2cf; border-radius:9px; cursor:pointer; background:#fff; transition:box-shadow .15s,border-color .15s; }
#info #vybranyModel #vzornik a img { display:block; position:static; width:36px; height:36px; padding:0; margin:0; border:0; border-radius:5px; opacity:1; }
#info #vybranyModel #vzornik a:hover { border-color:#003b7a; box-shadow:0 0 0 2px #d7e6f6; }
#info #vybranyModel #vzornik a:focus { outline:3px solid #0057a5; outline-offset:3px; }
#info #vybranyModel #vzornik.has-selection a.excludedColor { opacity:.55; }
#info #vybranyModel #vzornik.has-selection a:not(.excludedColor) { border-color:#003b7a; box-shadow:0 0 0 2px #003b7a; }
#info #vybranyModel #vzornik.has-selection a:not(.excludedColor)::after { content:'✓'; position:absolute; right:-6px; top:-7px; width:19px; height:19px; line-height:19px; text-align:center; background:#003b7a; color:#fff; border-radius:50%; font-size:13px; font-weight:bold; }
#info #vybranyModel .stock-price { float:none; width:100%; height:46px; border:1px solid #cbd3df; border-radius:7px; background:#fff; }
#info #vybranyModel .stock-price > div { position:relative; width:100%; height:44px; border:0; }
#info #vybranyModel .stock-price select { position:absolute; inset:0; width:100%; height:44px; margin:0; padding:0; border:0; border-radius:7px; background:#fff; font-size:16px; }
#info #vybranyModel .stock-price input { box-sizing:border-box; position:absolute; top:0; left:0; width:calc(100% - 32px); height:44px; margin:0; padding:9px 12px; border:0; border-radius:7px 0 0 7px; background:#fff; font-size:16px; line-height:1.5; color:#26354a; }
#info #vybranyModel .stock-price input:focus { outline:0; }
#info #vybranyModel .stock-special { padding:18px; margin:2px 0 0; border:1px solid #d9e6f5; border-radius:9px; background:#f3f7fc; }
#info #vybranyModel .stock-special .custom-control { min-height:24px; padding-left:28px; }
#info #vybranyModel .stock-special label { float:none; display:block; width:auto; margin:0; padding:0; text-align:left; font-size:16px; font-weight:600; color:#003b7a; cursor:pointer; line-height:1.5; }
#info #vybranyModel .stock-special .custom-control-label::before, #info #vybranyModel .stock-special .custom-control-label::after { left:-28px; top:3px; width:18px; height:18px; }
#info #vybranyModel .stock-special input:checked ~ label::before { background-color:#003b7a; border-color:#003b7a; }
#info #vybranyModel .stock-special p { margin:5px 0 0 28px; padding:0; font-size:14px; color:#596579; }
#info #vybranyModel .stock-actions { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:24px 0 0; padding:22px 0 0; border-top:1px solid #e5eaf0; width:100%; float:none; }
#info #vybranyModel .stock-submit { max-width:100%; }
#info #vybranyModel input.stock-search { display:block; width:auto; max-width:100%; height:auto; min-height:48px; margin:0; padding:12px 24px; border:1px solid #003b7a; border-radius:7px; background:#003b7a; color:#fff; font-size:16px; font-weight:600; line-height:1.4; white-space:normal; cursor:pointer; }
#info #vybranyModel input.stock-search:hover { background:#002c5b; }
#info #vybranyModel input.stock-search:focus { outline:3px solid #6ba7e8; outline-offset:3px; }
#info #vybranyModel input.stock-search:disabled { opacity:.55; cursor:default; }
#info #vybranyModel #neniSkladem { margin:0; padding:0; font-size:16px; line-height:1.5; color:#a12230; }
#info #vybranyModel #skladoveVozy { margin-top:32px; }
@media (max-width:767.98px) {
 #info #vybranyModel .stock-panel { padding:20px; border-radius:12px; }
 #info #vybranyModel .stock-heading-note { display:none; }
 #info #vybranyModel .stock-heading h3 { font-size:23px; }
 #info #vybranyModel .stock-actions { flex-direction:column; align-items:stretch; gap:14px; }
 #info #vybranyModel .stock-actions-note { text-align:center; }
 #info #vybranyModel input.stock-search { width:100%; }
}
@media (max-width:359.98px) { #info #vybranyModel .stock-panel { padding:15px; } }

/* Cenové rozpětí */
#info #vybranyModel .stock-price-sliders {
    min-width: 0;
    margin: 0 0 22px;
    padding: 18px;
    border: 1px solid #dfe6ef;
    border-radius: 9px;
    background: #f8fafc;
}

#info #vybranyModel .stock-price-sliders legend {
    float: none;
    width: auto;
    margin: 0;
    padding: 0 6px;
    color: #26354a;
    font-size: 16px;
    font-weight: 600;
}

/* Popisky nad společnou lištou */
#info #vybranyModel .stock-range-labels {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

#info #vybranyModel .stock-range-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

#info #vybranyModel .stock-range-heading:last-child {
    align-items: flex-end;
    text-align: right;
}

#info #vybranyModel .stock-range-heading label {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
    font-size: 14px;
    color: #596579;
}

#info #vybranyModel .stock-range-heading output {
    color: #003b7a;
    font-size: 16px;
    font-weight: 600;
}

/* Jedna společná lišta */
#info #vybranyModel .stock-dual-range {
    position: relative;
    height: 48px;
    margin: 2px 0 10px;
    isolation: isolate;
}

#info #vybranyModel .stock-range-rail {
    position: absolute;
    left: 12px;
    right: 12px;
    top: 20px;
    height: 8px;
    border-radius: 8px;
    background: #d6dfeb;
    cursor: pointer;
}

#info #vybranyModel .stock-range-rail span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    background: #003b7a;
}

/* Obě vstupní pole leží přes sebe; ovládají se jejich úchyty. */
#info #vybranyModel .stock-dual-range input.stock-range {
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 48px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    pointer-events: none;
    outline: none;
}

#info #vybranyModel .stock-range::-webkit-slider-runnable-track {
    height: 8px;
    border: 0;
    background: transparent;
}

#info #vybranyModel .stock-range::-moz-range-track {
    height: 8px;
    border: 0;
    background: transparent;
}

#info #vybranyModel .stock-range::-moz-range-progress {
    background: transparent;
}

/* Úchyty – Chrome, Edge, Safari */
#info #vybranyModel .stock-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    pointer-events: auto;
    box-sizing: border-box;
    width: 24px;
    height: 24px;
    margin-top: -8px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #003b7a;
    box-shadow: 0 1px 5px rgba(0, 0, 0, .25);
    cursor: grab;
}

/* Úchyty – Firefox */
#info #vybranyModel .stock-range::-moz-range-thumb {
    pointer-events: auto;
    box-sizing: border-box;
    width: 24px;
    height: 24px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: #003b7a;
    box-shadow: 0 1px 5px rgba(0, 0, 0, .25);
    cursor: grab;
}

#info #vybranyModel .stock-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 4px rgba(0, 87, 165, .25);
}

#info #vybranyModel .stock-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 4px rgba(0, 87, 165, .25);
}

#info #vybranyModel .stock-range:disabled::-webkit-slider-thumb {
    pointer-events: none;
    opacity: .5;
}

#info #vybranyModel .stock-range:disabled::-moz-range-thumb {
    pointer-events: none;
    opacity: .5;
}

/* Text a zrušení omezení pod lištou */
#info #vybranyModel .stock-range-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 16px;
}

#info #vybranyModel .stock-range-footer p {
    margin: 0;
    padding: 0;
    color: #596579;
    font-size: 14px;
}

#info #vybranyModel #cenaReset {
    margin: 0;
    padding: 4px 0;
    color: #003b7a;
    font-size: 14px;
    white-space: normal;
}        