/* Estilo geral do widget */
#frame-builder {
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 20px;
    max-width: 600px;
    margin: 0 auto;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    font-family: Sora, sans-serif;
}

/* Título principal */
#frame-builder h3.fb-title {
    font-size: 1.5rem;
    text-align: center;
    margin-bottom: 20px;
    color: #000;
}

/* Seções (Moldura e Tamanho) */
.fb-section {
    margin-bottom: 30px; /* Maior espaçamento entre seções */
}

.fb-section-title {
    font-size: 1.rem;
    margin-bottom: 10px;
    color: #555;
    text-align: center;
}

/* Botões de moldura (lado a lado) */
.moldura-options {
    display: flex;
    justify-content: center;
    gap: 20px; /* Espaçamento entre os botões */
    margin-bottom: 20px;
}

.moldura-options label {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f0f0f0;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    width: 265px; /* Largura fixa */
    height: 50px; /* Altura fixa */
	  font-family: Sora, sans-serif !important;
}

.moldura-options label:hover {
    border-color: #0073e6;
    background-color: #e6f4ff;
}

.moldura-options input {
    display: none; /* Esconde o input */
}

.moldura-options input:checked + label {
    border-color: #3d6aff;
    background-color: #d6e4ff;
    color: #3d6aff;
    font-weight: 900;
	font-family: Sora, sans-serif;
}

/* Botões de tamanho (grade de 4 colunas) */
.tamanho-options {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 colunas */
    gap: 15px; /* Espaçamento entre os botões */
    justify-items: center;
	
}

.tamanho-options label {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f0f0f0;
    color: #000;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    width: 120px; /* Largura fixa */
    height: 50px; /* Altura fixa */
	font-family: Sora, sans-serif;
}

.tamanho-options label:hover {
    border-color: #0073e6;
    background-color: #e6f4ff;
}

.tamanho-options input {
    display: none; /* Esconde o input */
}

.tamanho-options input:checked + label {
    border-color: #3d6aff;
    background-color: #d6e4ff;
    color: #3d6aff;
    font-weight: 900;
}

/* Botão de quantidade */
.quantity-option {
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f0f0f0;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-size: 1rem;
    font-weight: 400;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 5px;
}

.quantity-option:hover {
    background-color: #e6f4ff;
    border-color: #0073e6;
	color: #3d6aff;
}

.quantity-option.selected {
    background-color: #d6e4ff;
    color: #3d6aff;
    border-color: #005bb5;
    font-weight: bold;
}


/* Total a pagar */
#total-price {
    font-size: 1.2rem;
    color: #3d6aff !important;
    text-align: center;
    margin: 15px 0;
    font-weight: bold;
}

/* Botão Adicionar ao Carrinho */

#add-to-cart {
	color:#fff !important;
}

#add-to-cart {
    border-radius: 20px / 100% !important;
    box-shadow: inset 0 0 5px 5px #ffffff25, 0 5px 0 0 #2B55A1, 0 15px 10px 0 #00000050 !important;
    width: 100%;
    position: relative;
    background: rgb(61, 106, 255) !important;
    border: 1px solid rgb(61, 106, 255) !important;
    overflow: hidden;
    transition: all 0.2s ease-in;
    padding: 20px 40px;;
    font-family: "Sora" !important;
    font-weight: 700 !important;
    font-size: 1.2em
}

#add-to-cart:hover {
    background: rgb(61, 106, 255) !important;
    border: none;
    transition: all 0.3s ease-out;
    transform: scale(1.05);
}

#add-to-cart:hover::before {
    animation: sh02 0.5s 0s linear;
}

#add-to-cart::before {
    content: '';
    display: block;
    width: 0;
    height: 86%;
    position: absolute;
    top: 7%;
    left: 0;
    opacity: 0;
    background: #fff;
    box-shadow: 0 0 50px 30px #fff;
    transform: skewX(-20deg);
}

@keyframes sh02 {
    from {
        opacity: 0;
        left: 0;
    }
    50% {
        opacity: 1;
    }
    to {
        opacity: 0;
        left: 100%;
    }
}

#add-to-cart:active {
    box-shadow: inset 0 0 5px 5px #ffffff25, 0 5px 0 0 #2B55A1, 0 10px 5px 0 #00000085 !important;
    transition: all 0.1s ease-in;
    transform: scale(1);
}

/* Botão Finalizar Compra */

.checkout-button.button.alt.wc-forward {
	color:#fff !important;
}

.checkout-button.button.alt.wc-forward {
    border-radius: 20px / 100% !important;
    box-shadow: inset 0 0 5px 5px #ffffff25, 0 5px 0 0 #2B55A1, 0 15px 10px 0 #00000050 !important;
    width: 100%;
    position: relative;
    background: rgb(61, 106, 255) !important;
    border: 1px solid rgb(61, 106, 255) !important;
    overflow: hidden;
    transition: all 0.2s ease-in;
    padding: 20px 40px;;
    font-family: "Sora" !important;
    font-weight: 700 !important;
    font-size: 1.2em
}

.checkout-button.button.alt.wc-forward:hover {
    background: rgb(61, 106, 255) !important;
    border: none;
    transition: all 0.3s ease-out;
    transform: scale(1.05);
}

.checkout-button.button.alt.wc-forward:hover::before {
    animation: sh02 0.5s 0s linear;
}

.checkout-button.button.alt.wc-forward::before {
    content: '';
    display: block;
    width: 0;
    height: 86%;
    position: absolute;
    top: 7%;
    left: 0;
    opacity: 0;
    background: #fff;
    box-shadow: 0 0 50px 30px #fff;
    transform: skewX(-20deg);
}

@keyframes sh02 {
    from {
        opacity: 0;
        left: 0;
    }
    50% {
        opacity: 1;
    }
    to {
        opacity: 0;
        left: 100%;
    }
}

.checkout-button.button.alt.wc-forward:active {
    box-shadow: inset 0 0 5px 5px #ffffff25, 0 5px 0 0 #2B55A1, 0 10px 5px 0 #00000085 !important;
    transition: all 0.1s ease-in;
    transform: scale(1);
}


/* Responsividade para telas menores */
@media (max-width: 600px) {
    .tamanho-options {
        grid-template-columns: repeat(2, 1fr); /* 2 colunas em telas menores */
    }

    .tamanho-options label {
        width: 100%; /* Ajuste a largura para preencher o espaço disponível */
    }
	.moldura-options label {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f0f0f0;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    width: 120px; /* Largura fixa */
    height: 50px; /* Altura fixa */
}
	
	.tamanho-options label {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #f0f0f0;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    width: 120px; /* Largura fixa */
    height: 50px; /* Altura fixa */
}
}
