/* ColorTemp · JoomShopping 5.9.4. Loaded after the component's head assets. */
.colortemp-shop {
    --shop-ink: var(--color-body, #20242b);
    --shop-accent: var(--color-links, #245b91);
    --shop-surface: #fff;
    --shop-muted: #f5f6f7;
    --shop-border: #dedfe2;
    --shop-radius: .6rem;
    --shop-gap: clamp(1rem, 2.4vw, 2rem);
}
.colortemp-shop .shop-header-tools { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.colortemp-shop .shop-header-tools form { display: flex; align-items: center; }
.colortemp-shop .shop-header-tools input[type="search"],
.colortemp-shop .shop-header-tools input[type="text"] { max-width: 14rem; }
.colortemp-shop .shop-intro { max-width: var(--site-width, 1200px); margin: 0 auto; padding: var(--space-lg, 2rem) var(--padding-inline-container, 1rem) 0; }
.colortemp-shop .shop-main { width: min(100%, var(--site-width, 1200px)); margin-inline: auto; padding: clamp(1.5rem, 4vw, 4rem) var(--padding-inline-container, 1rem); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--shop-gap); }
.colortemp-shop .shop-main:has(> .shop-sidebar) { grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr); }
.colortemp-shop .shop-content { min-width: 0; }
.colortemp-shop .shop-content h1 { font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.07; overflow-wrap: anywhere; }
.colortemp-shop .shop-content h2 { font-size: clamp(1.4rem, 2.4vw, 2rem); line-height: 1.15; }
.colortemp-shop .shop-sidebar { align-self: start; position: sticky; top: calc(var(--height-menu, 80px) + 1rem); font-size: .95rem; }
.colortemp-shop .shop-sidebar ul { padding: 0; list-style: none; }
.colortemp-shop .shop-sidebar li { margin: 0; border-bottom: 1px solid var(--shop-border); }
.colortemp-shop .shop-sidebar a { display: block; padding: .7rem .25rem; text-decoration: none; }
.colortemp-shop .shop-sidebar a:hover, .colortemp-shop .shop-sidebar .active > a { color: var(--shop-accent); }
.colortemp-shop .jshop, .colortemp-shop .jshop_list_product { max-width: 100%; }
.colortemp-shop .jshop_list_category, .colortemp-shop .jshop_list_product { gap: var(--shop-gap); }
.colortemp-shop .jshop_list_category img, .colortemp-shop .jshop_list_product img,
.colortemp-shop .jshop .productfull img { max-width: 100%; height: auto; }
.colortemp-shop .jshop_list_category .category, .colortemp-shop .jshop_list_category .jshop_categ,
.colortemp-shop .jshop_list_product .product { min-width: 0; }
.colortemp-shop .jshop_list_product .product { background: var(--shop-surface); border: 1px solid var(--shop-border); border-radius: var(--shop-radius); padding: clamp(.8rem, 1.5vw, 1.4rem); height: 100%; }
.colortemp-shop .jshop_list_product .image_block, .colortemp-shop .jshop_list_category .image { background: var(--shop-muted); border-radius: calc(var(--shop-radius) - .15rem); overflow: hidden; text-align: center; }
.colortemp-shop .jshop_list_product .image_block img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: contain; padding: .8rem; }
.colortemp-shop .jshop_list_product .name, .colortemp-shop .jshop_list_product .product_title { font-size: 1.2rem; font-weight: 700; line-height: 1.25; margin-block: .8rem .35rem; }
.colortemp-shop .jshop_list_product .jshop_price, .colortemp-shop .jshop .jshop_price { font-weight: 700; color: var(--shop-ink); }
.colortemp-shop .jshop .old_price { text-decoration: line-through; opacity: .65; }
.colortemp-shop .jshop .productfull { display: grid; grid-template-columns: minmax(0, 1fr) minmax(18rem, 1fr); gap: clamp(1.5rem, 4vw, 4rem); }
.colortemp-shop .jshop .productfull > * { min-width: 0; }
.colortemp-shop .jshop .productfull .image_middle { max-width: 100%; height: auto; object-fit: contain; }
.colortemp-shop .jshop .productfull .jshop_prod_description, .colortemp-shop .jshop .productfull .prod_attr_img { margin-block: 1rem; }
.colortemp-shop .jshop input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),
.colortemp-shop .jshop select, .colortemp-shop .jshop textarea,
.colortemp-shop .shop-header-tools input { max-width: 100%; min-height: 2.75rem; padding: .55rem .75rem; border: 1px solid var(--shop-border); border-radius: .35rem; background: var(--shop-surface); color: var(--shop-ink); font: inherit; }
.colortemp-shop .jshop textarea { min-height: 7rem; }
.colortemp-shop .jshop input[type="checkbox"], .colortemp-shop .jshop input[type="radio"] { accent-color: var(--shop-accent); margin-right: .4rem; }
.colortemp-shop .jshop button, .colortemp-shop .jshop input[type="submit"],
.colortemp-shop .jshop .button, .colortemp-shop .jshop a.btn,
.colortemp-shop .shop-header-tools button { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: .55rem 1.15rem; border: 1px solid var(--shop-accent); border-radius: .35rem; background: var(--shop-accent); color: #fff; font: inherit; font-weight: 700; line-height: 1.2; cursor: pointer; text-decoration: none; }
.colortemp-shop .jshop button:hover, .colortemp-shop .jshop input[type="submit"]:hover,
.colortemp-shop .jshop .button:hover, .colortemp-shop .jshop a.btn:hover { filter: brightness(.85); color: #fff; }
.colortemp-shop .jshop :is(a, button, input, select, textarea):focus-visible, .colortemp-shop .shop-sidebar a:focus-visible { outline: 3px solid var(--shop-accent); outline-offset: 3px; }
.colortemp-shop .jshop table { width: 100%; border-collapse: collapse; }
.colortemp-shop .jshop th, .colortemp-shop .jshop td { padding: .8rem; border-bottom: 1px solid var(--shop-border); vertical-align: top; text-align: left; }
.colortemp-shop .jshop .jshop_cart, .colortemp-shop .jshop .jshop_checkout, .colortemp-shop .jshop .jshop_register { max-width: 100%; }
.colortemp-shop .jshop .jshop_checkout .jshop_block_address, .colortemp-shop .jshop .jshop_checkout .shipping_form,
.colortemp-shop .jshop .jshop_checkout .payment_form { padding: 1.2rem; margin-block: 1rem; border: 1px solid var(--shop-border); border-radius: var(--shop-radius); }
.colortemp-shop .jshop .pagination, .colortemp-shop .jshop .jshop_pagination { display: flex; flex-wrap: wrap; gap: .35rem; margin-block: 2rem; }
@media (max-width: 850px) {
    .colortemp-shop .shop-main:has(> .shop-sidebar) { grid-template-columns: minmax(0, 1fr); }
    .colortemp-shop .shop-sidebar { position: static; }
    .colortemp-shop .shop-sidebar ul { display: flex; flex-wrap: wrap; gap: .4rem .8rem; }
    .colortemp-shop .shop-sidebar li { border: 0; }
    .colortemp-shop .jshop .productfull { grid-template-columns: minmax(0, 1fr); }
    .colortemp-shop .shop-header-tools { margin-left: auto; }
    .colortemp-shop .shop-header-tools input[type="text"], .colortemp-shop .shop-header-tools input[type="search"] { max-width: 9rem; }
}
@media (max-width: 600px) {
    .colortemp-shop .shop-header-search { display: none; }
    .colortemp-shop .shop-header-tools { margin-left: auto; font-size: .85rem; }
    .colortemp-shop .jshop table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .colortemp-shop .jshop th, .colortemp-shop .jshop td { min-width: 5rem; }
}
