@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');

#furniture-configurator {
    width: 100%;
    min-height: 680px;
    position: relative;
    overflow: visible;
}

#furniture-configurator,
#furniture-configurator button {
    font-family: 'Roboto', sans-serif;
}

#furniture-configurator p {
    font-size: 18px;
}

#furniture-configurator-gui {
    position: absolute;
    top: 15px;
    right: 15px;
    padding: 10px;
    width: 100%;
    max-width: 252px;
    background: #fff;
    box-shadow: 0 0 5px rgba(0, 0, 0, .15);
}

#furniture-configurator-gui h6 {
    padding: 0;
    margin: 0;
    margin-bottom: 10px;
}

.furniture-configurator-color-picker {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
}

.furniture-configurator-color-picker-item {
    --size: 48px;
    flex: 0 0 var(--size);
    width: var(--size);
    height: var(--size);
    margin-right: 10px;
    margin-bottom: 10px;
    object-fit: cover;
    object-position: center;
    aspect-ratio: 1 / 1;
    border: 3px solid #000;
    border-radius: 50%;
}

.furniture-configurator-color-picker-item:hover {
    border-color: #1e88e5;
    cursor: pointer;
}

#furniture-configurator-gui input[type="range"] {
    width: 100%;
}

#furniture-configurator-popup {
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    padding: 15px;
    transition: opacity .3s;
    box-shadow: 0 0 5px rgba(0, 0, 0, .2);
    opacity: 1;
    z-index: 999;
}

#furniture-configurator-popup.smooth-translate {
    transition: transform .3s, opacity .3s;
}

#furniture-configurator-popup:not(.furniture-configurator-popup-active) {
    opacity: 0;
    pointer-events: none;
}

#furniture-configurator button {
    font-size: 16px;
    text-transform: none;
}

#furniture-configurator button:hover, #furniture-configurator button:focus {
    text-decoration: none;
}

#furniture-configurator-popup::after {
    content: " ";
  position: absolute;
  top: 50%;
  right: 100%; /* To the left of the tooltip */
  margin-top: -10px;
  border-width: 10px;
  border-style: solid;
  border-color: transparent #fff transparent transparent;
  z-index: 1;
}

.furniture-configurator-product-title {
    font-size: 15px !important;
    line-height: 1.2;
    margin-bottom: 0;
}

.furniture-configurator-product-price {
    font-size: 22px !important;
    font-weight: 500;
    margin-bottom: 0;
}

.furniture-configurator-gui-header {
    border-bottom: 1px solid rgba(0, 0, 0, .15);
}

#furniture-configurator input.qty {
    width: 64px;
    background: none;
    border: 1px solid #0d6efd;
    margin-right: 4px;
    border-radius: 4px;
    color: #0d6efd;
    outline: none;
    box-shadow: none;
}

#furniture-configurator input.qty:focus {
    box-shadow: 0 0 0 0.25rem rgb(13 110 253 / 50%);
}

table.furniture-configuration-description td {
    padding: 5px 0 !important;
    padding-right: 5px !important;
}

#furniture-configurator .btn-pole-kind {
    font-size: 13px !important;
    margin-right: 5px;
    margin-bottom: 5px;
    padding: 4px 8px !important;
}