/**
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License version 3.0
* that is bundled with this package in the file LICENSE.txt
* It is also available through the world-wide-web at this URL:
* https://opensource.org/licenses/AFL-3.0
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade this module to a newer
* versions in the future. If you wish to customize this module for your needs
* please refer to CustomizationPolicy.txt file inside our module for more information.
*
* @author Webkul IN
* @copyright Since 2010 Webkul
* @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0
*/

.wkmodal.show {
    display: flex !important;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 40px;
}
  .wkmodal-dialog {
    max-width: 1400px;
    padding: 0 20px;
    margin: 0 auto;
  }

  .wkmodal-content {
    width: 100%;
    float: left;
    border-radius: 4px;
    border: 2px solid #222222;
    background: #ffffff;
  }

  .wkmodal-header {
     padding: 16px 20px;
     width: 100%;
     background: #222222;
     border-radius: 4px 4px 0 0;
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     gap: 12px;
  }

  .wkmodal-header h3 {
    color: #fff;
    font-weight: 600;
    margin: 0;
    line-height: 32px;
    font-size: 18px;
  }

  .wkmodal-menu {
    font-size: 14px;
    color: white;
    font-weight: 600;
    padding: 12px 16px;
    margin-bottom: 0px !important;
    transition: background-color 0.2s ease;
    border-radius: 3px;
  }

  .wkmodal-menu img {
    padding-bottom: 5px;
  }

  .wkmodal-dialog .wkmodal-content .wkmodal-header .wkmodal-menu:hover {
    background-color: #ff0000;
  }

  .wkmodal-dialog .wkmodal-content .wkmodal-header .wkmodal-menu div{
    cursor: default;
  }

  .wkmodal-dialog .wkmodal-content .wkmodal-header .wkmodal-menu div{
    cursor: default;
  }

  .wk-sub-menu-div {
    width: auto;
    background: #fafafa;
    margin-bottom: 0px !important;
    border: 1px solid #ddd;
    padding: 16px;
    border-radius: 3px;
  }

  .wk-sub-menu-div-footer {
    text-align: center;
    padding: 16px !important;
    background: #fafafa;
    border: 1px solid #ddd;
    border-radius: 3px;
  }

  .wk-sub-menu-div-footer .wk-sub-menu {
    float: none !important;
    display: inline-block;
  }

  .wk-sub-menu {
    padding: 8px;
    float: left;
    font-size: 14px;
  }

  .wk-sub-menu-select {
    padding: 0px 8px;
    margin-top: 2px;
  }

  .wk-font-size-label {
    display: inline-block;
    margin-right: 10px;
    font-weight: 600;
    color: #333;
    font-size: 14px;
  }

  .wkborder {
    border: 1px solid #e0e0e0;
    float: left;
    height: 35px;
    margin-bottom: 15px;
    margin-top: 4px;
  }

  .wkbtn {
    background: #ff0000;
    border-radius: 3px;
    color: white;
    padding: 10px 16px;
    text-transform: none;
    font-size: 13px;
    font-weight: 600;
    border: none;
    transition: background-color 0.2s ease;
  }

  .wkbtn:hover {
    background: #cc0000;
  }

  .wk-sub-menu > select {
    padding: 4px 0 0;
  }

  .wk-sub-menu input, .wk-sub-menu textarea {
    font-size: 14px;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 8px 12px;
    transition: border-color 0.2s ease;
    background: #ffffff;
  }

  .wk-sub-menu input:focus, .wk-sub-menu textarea:focus {
    border-color: #ff0000;
    outline: none;
    background: #ffffff;
  }

  .wk-sub-menu select {
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 8px 12px;
    font-size: 14px;
    transition: border-color 0.2s ease;
    background: #ffffff;
  }

  .wk-sub-menu select:focus {
    border-color: #ff0000;
    outline: none;
  }

  /* Color Palette Styles */
  .wk-quick-color-palette {
    position: absolute;
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 12px;
    margin-top: 8px;
    z-index: 1000;
    min-width: 220px;
  }

  .wk-palette-title {
    font-size: 12px;
    font-weight: 600;
    color: #222;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }

  .wk-color-swatches {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    margin-bottom: 12px;
  }

  .wk-color-swatch {
    width: 32px;
    height: 32px;
    border-radius: 3px;
    border: 2px solid #ddd;
    cursor: pointer;
    transition: border-color 0.2s ease;
  }

  .wk-color-swatch:hover {
    border-color: #ff0000;
  }

  .wk-custom-color-btn {
    width: 100%;
    background: #eeeeee;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 600;
    color: #222;
    cursor: pointer;
    transition: background-color 0.2s ease;
  }

  .wk-custom-color-btn:hover {
    background: #ff0000;
    border-color: #ff0000;
    color: #ffffff;
  }

  .wktriangle-icon {
    margin-bottom: 0px !important;
    width: 10%;
    text-align: center;
  }

  .wktriangle-icon > i{
    color:#ebebeb;
    font-size: 45px;
    margin-top: -48px;
    cursor: default;
  }

  .wktriangle-icon-for-text {
    margin-left:10%;
  }

  .wktriangle-icon-for-color {
    margin-left:20%;
  }

  .wktriangle-icon-for-extra {
    margin-left:40%;
  }

  .wkmaterial-icons {
    font-size:20px;
    color:#414141;
  }

  .wktriangle-icon-for-paint {
    margin-left:30%;
  }

  .wkmaterial-icons-for-dropdown {
    background: #ebebeb none repeat scroll 0 0;
    margin-left: -2px;
  }
  .wkrange-label {
    float: left;
    padding: 6px 0px 0px;
  }

  .wkrange {
    float: left;
    padding: 6px 10px 0px 10px;
  }

  .wktext-box {
    border: medium dotted;
    font-size: 18px;
  }

  .wktext-box:focus {
    border:none !important;
  }

  #canvas-container {
    border: 2px solid #ddd;
    height: auto;
    float: left;
    margin-bottom: 20px;
    border-radius: 3px;
    padding: 8px;
    background: #fafafa;
  }

  .wkbutton {
    border-radius: 3px;
    text-transform: none;
    float: left;
    font-weight: 600;
    transition: background-color 0.2s ease;
    border: none;
    padding: 10px 16px;
    font-size: 13px;
  }

  .wkmodal-header .wkbutton {
    margin: 0 4px;
  }

  .wkmodal-header .wkbutton:last-of-type {
    margin-right: 0;
  }

  .wkmodal-header .btn-success {
    background: #ff0000;
    color: white;
  }

  .wkmodal-header .btn-success:hover {
    background: #cc0000;
    color: white;
  }

  .wkmodal-header .btn-info {
    background: #ff0000;
    color: white;
  }

  .wkmodal-header .btn-info:hover {
    background: #cc0000;
    color: white;
  }

  .wkmodal-header .btn-warning {
    background: #666666;
    color: white;
  }

  .wkmodal-header .btn-warning:hover {
    background: #444444;
    color: white;
  }

  .wkmodal-header .btn-danger {
    background: #222222;
    color: white;
  }

  .wkmodal-header .btn-danger:hover {
    background: #000000;
    color: white;
  }

  /* Orange styling for Download and Preview buttons */
  .wkmodal-header .wk-download-btn,
  .wkmodal-header .wk-preview-btn {
    background: #ff8c00 !important;
    color: white;
    border: none;
  }

  .wkmodal-header .wk-download-btn:hover,
  .wkmodal-header .wk-preview-btn:hover {
    background: #e67e00 !important;
    color: white;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(255, 140, 0, 0.3);
  }

  .wkbutton-delete {
    border-radius: 3px;
    text-transform: none;
    padding: 10px 16px;
    background: #ff0000;
    border: none;
    font-weight: 600;
    color: white;
  }

  .wkpreview-img-text {
    font-size: 20px;
    font-weight: bold;
  }

  #wkpreview-img {
    border: 1px solid;
  }

  .wksub-menu-select {
    padding: 24px 20px 0;
  }

  .wkselect {
    overflow: hidden;
    background: url(../img/down.png) no-repeat right #ebebeb;
  }

  .wk-sub-menu-div-footer {
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.5);
  }

  .wkmodal-sub-menu-content {
    overflow: hidden;
  }

  .wkselect select {
    max-width: 85px;
    color: #7a7a7a;
    outline: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: transparent none repeat scroll 0 0;
    border: 0 none;
    font-size: 13px;
    padding: 2px 15px 2px 8px;
  }

  .wkbutton-delete:hover {
    background: #cc0000;
  }

  .wkwebtoprint_loading_overlay {
    display:none;
    position:fixed;
    left:0;
    top:0;
    height:100%;
    width:100%;
    background: transparent;
    opacity: 0.3;
    z-index: 100000;
  }

  .wkwebtoprint_loading-img {
    position:absolute;
    left:50%;
    top:50%;
  }

  .wkleft-container {
    width: calc(50% - 20px);
    float: left;
    margin-left: 10px;
    margin-right: 10px;
  }

  .wkleft-container div {
    margin-bottom: 0% !important;
  }

  #wkTextDiv {
     min-height: 80px;
  }

  #wkpreview-img-div {
    background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
    height: 100%;
    left: 0;
    overflow: auto;
    position: fixed;
    text-align: center;
    top: 0;
    width: 100%;
    z-index: 100051;
  }

  .wkpreview-img-wrap {
      position: relative;
      display: inline-block;
      font-size: 0;
      top: 5%;
  }

  .wkpreview-img-wrap .wkclose-preview-img {
    position: absolute;
    top: 2px;
    right: 2px;
    z-index: 100;
    background-color: #FFF;
    padding: 5px;
    color: #000;
    cursor: pointer;
    text-align: center;
    font-size: 20px;
    line-height: 10px;
    width:20px;
    height:20px;
  }

  .wkmodal-close {
    float: right;
    padding: 10px 10px 0 0;
  }

#productCustomizeForm .viewTemplateHeader{
  margin-bottom: 16px!important;
  margin: -14px -14px 16px -14px;
  background: #222222;
  border-bottom: 2px solid #ff0000;
  border-radius: 3px 3px 0 0;
  padding: 4px 8px;
}

/* Hide template header buttons - not necessary */
.viewTemplateHeader.wk-template-button {
  display: none !important;
}

.wkmodal-body {
  padding: 20px;
  background: #ffffff;
  border-radius: 0 0 4px 4px;
}
.left_container {
  float: left;
  width: calc(50% - 20px);
  margin-left: 10px;
  margin-right: 10px;
}

.left_container > div {
  width: 450px;
  height: 450px;
}
.viewTemplateHeader span {
  display: inline-block;
  padding: 12px 20px;
  color: #ffffff;
  font-weight: 600;
  transition: background-color 0.2s ease;
  cursor: pointer;
  border-radius: 3px;
  margin: 4px;
}

.viewTemplateHeader span:hover {
  background: #444444;
}

body#product #productCustomizeForm .viewTemplateHeader span.active {
  background: #ff0000 !important;
  color: #ffffff;
  border-radius: 3px;
}

body#product #productCustomizeForm .active {
  background: #ff0000;
}

.wk-template-menu {
  background: #eeeeee;
  border: 1px solid #ddd;
  border-radius: 3px;
  margin-bottom: 12px;
  padding: 0;
  transition: border-color 0.2s ease;
}

.wk-template-menu .wkmodal-menu {
  background: #222222;
  color: #ffffff;
  border-radius: 3px;
  margin: 0;
}

.wk-template-menu:hover {
  border-color: #ff0000;
}

.wk-hidden {
  display: none;
}

.wk-add-images{
  background: #ebebeb;
  border-top: 1px solid #fff;
}
.wk-add-images img{
  max-width: 110px;
  max-height: 110px;
}
/* .wk-add-images img{
  width: 110px;
  height: 110px;
} */

.wk-facebook-photos img, .wk-insta-photos img {
  width: 60px;
  height: 60px;
  margin: 5px;
  border-radius: 5px;
  cursor: pointer;
}
.wk-facebook-photos img:hover, .wk-insta-photos img:hover {
  border-color: #ff0000;
}

.wk-facebook-photos {
  max-height: 200px;
  overflow: auto;
  background: white;
  display: flex;
  flex-wrap: wrap;
}

.wk-images {
  background: white;
  height: 0px;
}

.wk-image-category {
  display: inline-block;
  cursor: pointer;
}

.wk-image-category > span {
  padding: 0;
}

.wk-images > .wk-image-category > span {
  padding: 10px;
  line-height: 3;
  font-weight: 600;
}
.wk-images > .wk-image-category > span.active {
  background: #2fb5d2;
  color: white;
}

.wk-color-template > ul {
  display: flex;
  flex-wrap: wrap;
}

#productCustomizeForm div {
  margin-bottom: 0 !important;
}

#productCustomizeForm .left_container {
  width: calc(50% - 20px);
  min-width: 400px;
}

.wkmodal-menu {
  cursor: pointer;
}
.viewTemplateHeader .changeCanvas {
  cursor: pointer;
}
.wk_canvas_image_type, .wk_canvas_text {
  border: 2px solid #ff0000;
  background: rgba(255, 0, 0, 0.05);
  border-radius: 3px;
  transition: border-color 0.2s ease;
}

.wk_canvas_image_type:hover, .wk_canvas_text:hover {
  background: rgba(255, 0, 0, 0.1);
  border-color: #cc0000;
}

.wk-canvas-container-parent {
  width: 450px !important;
  height: 450px !important;
  border-radius: 3px;
  overflow: hidden;
  border: 2px solid #ddd;
  background: #fafafa;
}
.wk-canvas-self {
  width: 450px !important;
  height: 450px !important;
}
.wk_canvas_image .canvas-container {
  width: 450px !important;
  height: 450px !important;
}

.wk_wtp_image_watermark {
  pointer-events: none;
  position:absolute;
  width: 100%;
  height: 35px;
  max-height: 35px;
  top: 0;
  left: 0;
  padding: 5px;
  display: none;
  background: rgba(111, 111, 111, 0.4);
  box-shadow: 0px 3px 3px 0px rgba(111, 111, 111, 0.4);
}
.wk_wtp_image_watermark_btn i {
  font-size: 21px;
}
.wk_wtp_image_watermark_title {
  color: white;
  font-weight: bold;
  font-size: 10px;
}
.wk_wtp_image_watermark_btn {
  pointer-events: auto;
  height: 24px;
  width: 24px;
  border-radius: 3px;
  padding: 0;
  border: 1px solid lightgray;
  outline: none!important;
  float: right;
  display: none;
}
.wk-highlighted {
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
  z-index: 9999;
  border-style: double;
}

#productCustomizeForm .sp-picker-container,
#productCustomizeForm .sp-palette-container {
    padding-bottom: 0% !important;
    height: 210px;
}

#productCustomizeForm .sp-palette-button-container,
#productCustomizeForm .sp-button-container {
    float: right;
    margin-top: 1.5rem;
}

/* Customization done by Ajeet (UvDesk: #633923) */
.wk-product-prices div {
    font-size: 22px;
    font-weight: 600;
}

.wkmodal .nav-tabs {
    border-bottom: none;
}

.wkmodal .nav-tabs .nav-item .nav-link {
    border: none;
    border-radius: 0;
}

.wkmodal .nav-tabs .nav-item .nav-link:not(.active):hover {
    background: rgba(230, 57, 70, 0.2);
}

.wkmodal .nav-tabs .nav-item {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}
/* ////////// */

@media only screen and (max-width: 1024px) {
  .wkleft-container {
    width: 100%;
    float: left;
    margin:0;
    margin-top: 20px;
  }
}

/* Mobile responsive styles for buttons and layout */
@media only screen and (max-width: 768px) {
  .wkmodal-header {
    flex-direction: column;
    padding: 12px 16px;
    gap: 8px;
  }

  .wkmodal-header h3 {
    width: 100%;
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 24px;
  }

  .wkmodal-header .btn-group {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    float: none !important;
    overflow-x: auto;
  }

  .wkmodal-header .wkbutton {
    flex: 1 1 auto;
    min-width: 70px;
    padding: 8px 10px;
    font-size: 11px;
    margin: 0 !important;
    float: none;
    white-space: nowrap;
  }

  .wkmodal-body {
    padding: 12px;
  }

  .left_container, .wkleft-container {
    width: 100% !important;
    min-width: auto !important;
    margin: 0 !important;
  }

  .left_container > div {
    width: 100% !important;
    height: auto !important;
  }

  .wk-canvas-container-parent {
    width: 100% !important;
    height: auto !important;
  }

  .wk-canvas-self {
    width: 100% !important;
    height: auto !important;
  }

  .wk-sub-menu-div, .wk-sub-menu-div-footer {
    padding: 12px;
  }

  .wk-template-menu .wkmodal-menu {
    padding: 10px 12px;
    font-size: 13px;
  }

  .viewTemplateHeader span {
    padding: 8px 12px;
    font-size: 13px;
  }
}

@media only screen and (max-width: 480px) {
  .wkmodal-header .wkbutton {
    min-width: 60px;
    padding: 8px 8px;
    font-size: 10px;
  }

  .wkmodal-dialog {
    padding: 0 10px;
  }

  .wkmodal-body {
    padding: 10px;
  }
}