:root {
--tp-primary:   #1a1a2e;
--tp-accent:    #e63946;
--tp-accent2:   #457b9d;
--tp-bg:        #f8f9fa;
--tp-surface:   #ffffff;
--tp-border:    #dee2e6;
--tp-text:      #212529;
--tp-muted:     #6c757d;
--tp-radius:    12px;
--tp-shadow:    0 20px 60px rgba(0,0,0,.22);
--tp-transition: .2s ease;
} .tshirt-preview-btn {
display: inline-flex !important;
align-items: center;
gap: 8px;
background: var(--tp-primary) !important;
color: #fff !important;
border: none !important;
border-radius: 8px !important;
padding: 12px 22px !important;
font-size: 15px !important;
font-weight: 600 !important;
cursor: pointer;
margin-bottom: 12px !important;
transition: background var(--tp-transition), transform var(--tp-transition);
letter-spacing: .3px;
}
.tshirt-preview-btn:hover {
background: var(--tp-accent) !important;
transform: translateY(-1px);
} .tshirt-modal {
display: none;
position: fixed;
inset: 0;
z-index: 999999;
align-items: center;
justify-content: center;
}
.tshirt-modal.is-open { display: flex; }
.tshirt-modal__overlay {
position: absolute;
inset: 0;
background: rgba(10,10,20,.65);
backdrop-filter: blur(4px);
animation: tpFadeIn .25s ease;
}
@keyframes tpFadeIn  { from { opacity: 0; } to { opacity: 1; } }
@keyframes tpSlideUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: none; } }
.tshirt-modal__container {
position: relative;
z-index: 1;
background: var(--tp-surface);
border-radius: 18px;
box-shadow: var(--tp-shadow);
width: min(960px, 96vw);
max-height: 92vh;
overflow-y: auto;
animation: tpSlideUp .3s ease;
}
.tshirt-modal__close {
position: absolute;
top: 14px; right: 16px;
background: none;
border: none;
font-size: 26px;
line-height: 1;
color: var(--tp-muted);
cursor: pointer;
z-index: 2;
transition: color var(--tp-transition);
padding: 0;
}
.tshirt-modal__close:hover { color: var(--tp-accent); }
.tshirt-modal__body {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 0;
}
@media (max-width: 680px) {
.tshirt-modal__body { grid-template-columns: 1fr; }
} .tshirt-modal__canvas-wrap {
background: linear-gradient(135deg, #f0f4ff 0%, #e8ecf8 100%);
border-radius: 18px 0 0 18px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 32px 24px;
gap: 12px;
}
@media (max-width: 680px) {
.tshirt-modal__canvas-wrap { border-radius: 18px 18px 0 0; padding: 24px 16px; }
}
.tshirt-modal__canvas-wrap #tshirt-canvas {
border-radius: 10px;
box-shadow: 0 8px 30px rgba(0,0,0,.12);
max-width: 100%;
height: auto;
}
.tshirt-modal__hint {
font-size: 12px;
color: var(--tp-muted);
margin: 0;
text-align: center;
} .tshirt-modal__controls {
padding: 32px 28px;
display: flex;
flex-direction: column;
gap: 20px;
}
.tshirt-modal__title {
font-size: 20px;
font-weight: 700;
color: var(--tp-primary);
margin: 0 0 4px;
letter-spacing: -.3px;
} .tshirt-tabs {
display: flex;
gap: 6px;
border-bottom: 2px solid var(--tp-border);
padding-bottom: 0;
}
.tshirt-tab {
background: none;
border: none;
border-bottom: 3px solid transparent;
margin-bottom: -2px;
padding: 8px 16px;
font-size: 14px;
font-weight: 600;
color: var(--tp-muted);
cursor: pointer;
transition: color var(--tp-transition), border-color var(--tp-transition);
border-radius: 6px 6px 0 0;
}
.tshirt-tab.active,
.tshirt-tab:hover {
color: var(--tp-primary);
border-bottom-color: var(--tp-accent);
} .tshirt-panel { display: none; flex-direction: column; gap: 16px; }
.tshirt-panel.active { display: flex; } .tshirt-field { display: flex; flex-direction: column; gap: 6px; }
.tshirt-field label {
font-size: 13px;
font-weight: 600;
color: var(--tp-text);
letter-spacing: .2px;
}
.tshirt-field textarea,
.tshirt-field select,
.tshirt-field input[type="range"] {
width: 100%;
border: 1.5px solid var(--tp-border);
border-radius: 8px;
padding: 9px 12px;
font-size: 14px;
color: var(--tp-text);
background: var(--tp-bg);
transition: border-color var(--tp-transition);
resize: vertical;
box-sizing: border-box;
}
.tshirt-field textarea:focus,
.tshirt-field select:focus {
outline: none;
border-color: var(--tp-accent2);
}
.tshirt-field input[type="range"] {
padding: 4px 0;
background: none;
border: none;
accent-color: var(--tp-accent);
}
.tshirt-char-count { font-size: 12px; color: var(--tp-muted); text-align: right; }
.tshirt-field--row {
flex-direction: row;
gap: 14px;
}
.tshirt-field--row > div {
flex: 1;
display: flex;
flex-direction: column;
gap: 6px;
} .tshirt-color-row {
display: flex;
align-items: center;
gap: 12px;
}
.tshirt-color-row input[type="color"] {
width: 42px; height: 42px;
padding: 2px; border: 2px solid var(--tp-border);
border-radius: 8px; cursor: pointer;
background: none;
flex-shrink: 0;
}
.tshirt-color-presets {
display: flex;
gap: 8px;
flex-wrap: wrap;
}
.tshirt-color-dot {
display: block;
width: 28px; height: 28px;
border-radius: 50%;
cursor: pointer;
transition: transform var(--tp-transition), box-shadow var(--tp-transition);
box-shadow: 0 1px 3px rgba(0,0,0,.15);
}
.tshirt-color-dot:hover,
.tshirt-color-dot.active {
transform: scale(1.2);
box-shadow: 0 2px 8px rgba(0,0,0,.25);
} .tshirt-upload-area {
border: 2px dashed var(--tp-border);
border-radius: 10px;
background: var(--tp-bg);
transition: border-color var(--tp-transition), background var(--tp-transition);
cursor: pointer;
overflow: hidden;
}
.tshirt-upload-area:hover,
.tshirt-upload-area.drag-over {
border-color: var(--tp-accent2);
background: #f0f6ff;
}
.tshirt-upload-placeholder {
padding: 28px 20px;
text-align: center;
pointer-events: none;
}
.tshirt-upload-icon { font-size: 32px; display: block; margin-bottom: 8px; }
.tshirt-upload-placeholder p { margin: 0 0 4px; font-size: 14px; color: var(--tp-text); }
.tshirt-upload-placeholder small { color: var(--tp-muted); font-size: 12px; }
.tshirt-upload-link { color: var(--tp-accent2); text-decoration: underline; font-weight: 600; }
.tshirt-upload-preview {
padding: 16px;
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
}
.tshirt-upload-preview img {
max-width: 120px;
max-height: 120px;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0,0,0,.1);
object-fit: contain;
}
#tshirt-remove-image {
background: none;
border: 1px solid var(--tp-border);
border-radius: 6px;
padding: 4px 12px;
font-size: 13px;
color: var(--tp-muted);
cursor: pointer;
transition: color var(--tp-transition), border-color var(--tp-transition);
}
#tshirt-remove-image:hover { color: var(--tp-accent); border-color: var(--tp-accent); } .tshirt-modal__actions {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: auto;
padding-top: 8px;
}
.tshirt-btn {
display: block;
width: 100%;
padding: 13px 20px;
border-radius: 10px;
font-size: 15px;
font-weight: 700;
cursor: pointer;
border: none;
transition: background var(--tp-transition), transform var(--tp-transition);
letter-spacing: .3px;
}
.tshirt-btn--primary {
background: var(--tp-accent);
color: #fff;
}
.tshirt-btn--primary:hover { background: #c0392b; transform: translateY(-1px); }
.tshirt-btn--secondary {
background: var(--tp-bg);
color: var(--tp-muted);
border: 1.5px solid var(--tp-border);
}
.tshirt-btn--secondary:hover { background: var(--tp-border); color: var(--tp-text); } .tshirt-modal__container::-webkit-scrollbar { width: 6px; }
.tshirt-modal__container::-webkit-scrollbar-track { background: transparent; }
.tshirt-modal__container::-webkit-scrollbar-thumb { background: var(--tp-border); border-radius: 3px; }html.yith-quick-view-is-open,
html.yith-quick-view-is-open body {
overflow: hidden;
}
html.yith-quick-view-is-open .select2-container.select2-container--open {
z-index: 1500;
}
html.yith-quick-view-is-open.yith-quick-view-on-mobile .select2-container.select2-container--open {
z-index: 999999;
}
#yith-quick-view-modal {
position: fixed;
visibility: hidden;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 1400;
opacity: 0;
text-align: center;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
}
.yith-wcqv-head {
position: absolute;
top: 15px;
right: 15px;
z-index: 1000;
width: 30px;
height: 30px;
}
#yith-quick-view-modal:before { ; display: inline-block;
vertical-align: middle;
height: 100%;
width: 0;
}
#yith-quick-view-modal span.onsale {
top: 25px;
left: 25px;
right: auto;
z-index: 10;
}
#yith-quick-view-modal .yith-wcqv-wrapper .woocommerce-variation-description p {
font-size: 16px;
}
#yith-quick-view-modal .yith-wcqv-wrapper {
display: inline-block;
vertical-align: middle;
visibility: hidden;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
text-align: left;
height: 600px;
width: 1000px;
position: absolute;
}
.yith-quick-view.yith-modal .yith-wcqv-wrapper {
position: absolute;
visibility: hidden;
-webkit-backface-visibility: hidden;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
text-align: left;
}
#yith-quick-view-modal .yith-wcqv-main { -moz-transform: translateY(20%);
-ms-transform: translateY(20%); opacity: 0;
height: 100%;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
-webkit-box-shadow: 0 1px 30px rgba(0, 0, 0, .25);
box-shadow: 0 1px 30px rgba(0, 0, 0, .25);
border-radius: 22px;
}
#yith-quick-view-modal.open,
#yith-quick-view-modal.open .yith-wcqv-wrapper {
visibility: visible;
opacity: 1;
}
#yith-quick-view-modal #yith-quick-view-content { }
#yith-quick-view-modal .yith-wcqv-main:after,
#yith-quick-view-modal .yith-wcqv-main:before { display: table;
clear: both;
}
#yith-quick-view-modal.open .yith-wcqv-main {
opacity: 1;
height: 100%;
overflow-y: scroll;
position: relative;
border-radius: 22px;
}
#yith-quick-view-close {
border: 1px solid;
position: absolute;
top: 5px;
right: 5px;
width: 20px;
height: 20px;
text-align: center;
line-height: 18px;
z-index: 2;
opacity: 0.5;
}
#yith-quick-view-close:hover {
opacity: 1;
transition: all 0.2s ease;
-webkit-transition: all 0.2s ease;
-moz-transition: all 0.2s ease;
-ms-transition: all 0.2s ease;
}
div#yith-quick-view-content div[id^="product"] {
display: flex;
flex-direction: row;
}
#yith-quick-view-content div.images { opacity: 1 !important;
margin: 0;
box-sizing: border-box;
}
#yith-quick-view-content div.images img {
max-width: 100%;
object-fit: cover;
height: 100%;
object-position: center;
}
#yith-quick-view-content div.images a {
display: block;
font-size: 0;
max-height: 600px;
height: 100%;
}
#yith-quick-view-content div.summary {
margin: 0;
padding: 15px; font-size: 16px;
box-sizing: border-box;
overflow-y: auto;
padding-left: 30px;
padding-right:30px;
}
#yith-quick-view-content div.summary.entry-summary .woocommerce-product-details__short-description p{
font-size: 16px;
}
.yith-quick-view-content.woocommerce div.summary .price {
font-size: 22px;
margin-bottom: 15px;
}
.yith-quick-view-content.woocommerce div.summary .price del,
.yith-quick-view-content.woocommerce div.summary .price ins {
display: inline-block;
background: none;
}
.yith-quick-view-content.woocommerce div.summary .price del {
font-size: 80%;
opacity: 0.5;
}
.yith-quick-view-content.woocommerce div.product .product {
height:600px;
}
.yith-quick-view-content.woocommerce div.summary div[itemprop="description"],
.yith-quick-view-content.woocommerce div.summary .product_meta {
font-size: 15px;
}
.yith-quick-view-content.woocommerce div.summary .product_meta span {
margin-bottom: 10px !important;
}
.yith-quick-view-content.woocommerce div.summary div[itemprop="description"] {
margin-bottom: 30px;
}
.yith-quick-view-content.woocommerce div.summary .product_meta > span {
display: block;
}
.yith-quick-view-content.woocommerce div.summary div.quantity,
.yith-quick-view-content.woocommerce div.summary .single_add_to_cart_button {
margin-right: 15px;
display: inline-block;
}
.yith-quick-view-content.woocommerce div.summary .single_add_to_cart_button {
padding: 12px 40px;
border-radius: 12px;
font-size: 15px;
}
.yith-quick-view-content.woocommerce div.summary table.variations {
border: 0;
margin-bottom: 0;
}
.yith-quick-view-content.woocommerce div.summary .yith-wcqv-view-details {
margin: 10px 0;
display: inline-block;
}
.yith-quick-view-content.woocommerce div.product form.cart .variations select {
float: none;
width: 100%;
max-width: 450px;
}
.yith-quick-view.yith-modal.fade-in.open .yith-quick-view-content.woocommerce div.product form.cart .variations select {
max-width: 350px;
}
#yith-quick-view-content div.woocommerce-product-rating:after,
#yith-quick-view-content div.woocommerce-product-rating:before {
content: '';
display: table;
clear: both;
}
#yith-quick-view-content div.woocommerce-product-rating a.woocommerce-review-link {
display: none;
}
#yith-quick-view-content .onsale {
top: 5px;
right: auto;
left: 5px;
}
#yith-quick-view-content figure.woocommerce-product-gallery__wrapper > div:not(:first-child) {
display: none;
}
li.product .yith-wcqv-button .blockUI.blockOverlay:before {
background: none;
}
.yith-quick-view.yith-modal .yith-quick-view-overlay {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
@media( max-width: 480px ){
#yith-quick-view-modal {
position: fixed;
z-index: 1400;
top: 0px;
bottom: 0;
left: 0;
right: 0;
visibility: hidden;
overflow: scroll;
height:100%;
}
#yith-quick-view-modal.open .images,
#yith-quick-view-modal.open .images img {
width: 100%!important;
float: none;
}
#yith-quick-view-modal .yith-wcqv-wrapper{
width:100% !important;
height: 100% !important;
top: 0!important;
bottom: 0!important;
left: 0!important;
right: 0!important;
}
#yith-quick-view-modal .yith-wcqv-wrapper .yith-wcqv-main {
width: 100%;
height:100%!important;
border-radius:0!important; height:auto;
}
#yith-quick-view-modal .yith-wcqv-wrapper .summary.entry-summary {
width: 100%;
padding-right: 30px;
float: none;
}
#yith-quick-view-modal #yith-quick-view-content {
height: auto;
}
.yith-quick-view-content.woocommerce div.product .product {
height: calc(100vh - 100px) !important;
}
}
@media( min-width: 480px ) and (max-width: 768px) {
#yith-quick-view-modal .yith-wcqv-wrapper {
height: calc(100vh - 100px) !important;
top: 50px !important;
bottom: 50px !important;
max-width: 450px;
left: 0 !important;
right: 0 !important;
margin-inline: auto;
}
#yith-quick-view-modal .yith-wcqv-wrapper .yith-wcqv-main {
height:100%!important;
border-radius:inherit;
}
}
@media (max-width: 768px) {
div#yith-quick-view-content div[id^="product"] {
flex-direction: column;
}
#yith-quick-view-modal .yith-wcqv-wrapper .yith-wcqv-main {
height:auto;
border-radius:inherit;
}
#yith-quick-view-modal .yith-quick-view-content div.images,
#yith-quick-view-modal .yith-quick-view-content div.summary {
width: 100% !important;
height: auto;
max-height: none;
}
.yith-quick-view-mobile #yith-quick-view-modal .yith-wcqv-main {
width: 100% !important;
border-radius:0!important;
}
#yith-quick-view-modal #yith-quick-view-content{ }
#yith-quick-view-content div.summary{
overflow:inherit;
}
html.yith-quick-view-is-open  #yith-quick-view-modal {
width: 100% !important;
}
}
@media ( min-width: 768px ) {
#yith-quick-view-modal.open .yith-wcqv-main {
overflow: hidden;
}
#yith-quick-view-content div.summary {
max-height: 600px;
}
} .theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary .product_title {
margin-top: 20px;
}
.theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary .product_title,
.theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary .price {
font-size: 24px;
}
.theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary .woocommerce-product-details__short-description.
.theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary .single_variation_wrap .woocommerce-variation-description,
.theme-yith-proteo .yith-quick-view .single-product div.product .summary.entry-summary form.cart .quantity input {
font-size: 16px;
}
.theme-yith-proteo .yith-quick-view .yith-quick-view-content.woocommerce div.summary .single_add_to_cart_button {
padding: 12px 40px;
border-radius: 12px;
font-size: 15px
}
.theme-yith-proteo .single-product div.product .summary.entry-summary {
padding-left: 30px;
} .woocommerce .yith-quick-view .single-product div.product .summary.entry-summary {
font-size: 16px; }
.woocommerce .yith-quick-view .single-product div.product .summary.entry-summary .product_title,
.woocommerce .yith-quick-view .single-product div.product .summary.entry-summary .price {
font-size: 24px;
}
.woocommerce .yith-quick-view .single-product div.product .summary.entry-summary form.cart .quantity input {
font-size: 20px;
}
.woocommerce .yith-quick-view .yith-quick-view-content.woocommerce div.summary .single_add_to_cart_button {
padding: 12px 40px;
border-radius: 12px;
font-size: 15px;
}