section.tkp h1{
    font-size: 2.3rem;
    font-weight: bold;
}

section.tkp .tkp-send-box{
    border-radius:6px;
    box-shadow:0px 5px 12px rgba(0,0,0,0.2);
    color:#ffffff;
    position: relative;
    overflow:hidden;
    margin:1.5rem 0;
}
section.tkp .tkp-send-box .tkp-send-box-inner{
    padding:1.5rem 2.5rem;
    z-index:2;
    position: relative;
}
section.tkp .tkp-send-box .tkp-send-box-inner h5{
    font-weight: bold;
    font-size:1.5rem;
    text-transform: uppercase;
    margin:0;
    line-height:1.2;
}
section.tkp .tkp-send-box .tkp-send-box-inner button{
    background:#ffffff;
    color:var(--main-link-color);
    font-weight: bold;
    box-shadow:0px 5px 10px rgba(0,0,0,0.2);
}
section.tkp .tkp-send-box figure{
    position: absolute;
    z-index:1;
    width:100%;
    height:100%;
    top:0;
    left:0;
}
section.tkp .tkp-send-box figure img{
    width:100%;
    height:100%;
    object-fit: cover;
}

section.tkp .tkp-search-box{
    margin-top:1.5rem;
    margin-bottom:1.5rem;
}
section.tkp .tkp-search-box h5{
    font-size:1.1rem;
    margin:0;
}
section.tkp .tkp-search-box h3{
    font-weight: bold;
    font-size:1.5rem;
    margin:0;
}

section.tkp .tkp-search-box .tkp-search{
    position: relative;
}
section.tkp .tkp-search-box .tkp-search input{
    padding-right:40px;
    min-width:400px;
}
section.tkp .tkp-search-box .tkp-search svg {
    width: 26px;
    height: 26px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

section.tkp .tkp-catalog-list{

}
section.tkp .tkp-catalog-list ul.categories{
    margin:0;
    padding:0;
    padding-bottom: 2.5rem;
}
section.tkp .tkp-catalog-list ul.categories>li>ul{
    padding-left:1rem;
}
section.tkp .tkp-catalog-list ul ul{
    display: none;
}
section.tkp .tkp-catalog-list ul.categories>li.opened>ul{
    display:block;
}
section.tkp .tkp-catalog-list ul.categories>li{
    list-style:none;
    border-bottom:solid 1px #cccccc;
}
section.tkp .tkp-catalog-list ul.categories>li:last-of-type{
    border-bottom:0;
}
section.tkp .tkp-catalog-list ul.categories>li .category{
    display:flex;
    align-items: center;
    padding:0.8rem 0.5rem;
}
section.tkp .tkp-catalog-list ul.categories>li>.category:hover{
    background:#f7f7f7;
}
section.tkp .tkp-catalog-list ul.categories>li .category .title{
    width:100%;
    font-size:1.3rem;
}
section.tkp .tkp-catalog-list ul.categories>li .category .title span.select{
    padding:2px 5px;
    border-radius:3px;
    margin-left:3rem;
    background:#cccccc;
    font-size:0.8rem;
    white-space: nowrap;
}
section.tkp .tkp-catalog-list ul.categories>li .category .title span.select.selected{
    background:#6283fa;
    font-weight: bold;
    color:#ffffff;
}
section.tkp .tkp-catalog-list ul.categories>li .category svg{
    width:24px;
    height:24px;
    margin-right:1rem;
    cursor:pointer;
}
section.tkp .tkp-catalog-list ul.categories ul.categories{
    padding-bottom:0px;
}
section.tkp .tkp-catalog-list ul.categories>li.opened>.category>svg{
    transform: rotate(180deg);
}
section.tkp .tkp-catalog-list ul.categories>li .category svg path{
    fill:#333333;
}
section.tkp .tkp-catalog-list ul.categories>li .category svg:hover path{
    fill:var(--main-link-color);
}

section.tkp .tkp-catalog-list ul.products{
    padding:0px;
    margin:0px;
    padding-left:1rem;
}
section.tkp .tkp-catalog-list ul.products li{
    padding:0.5rem 0.8rem; 
    list-style: none;
    display: flex;
    align-items: center;
    border-top: solid 1px #cccccc;
}
section.tkp .tkp-catalog-list ul.products li a{
    color:#000000;
    text-decoration: none;
}
section.tkp .tkp-catalog-list ul.products li.selected{
    background:#e0e6fe;
}
section.tkp .tkp-catalog-list ul.products li:not(.selected):hover{
    background:#f7f7f7;
}
section.tkp .tkp-catalog-list ul.products li .checkbox{
    width:auto;
    padding-right:0.8rem;
}
section.tkp .tkp-catalog-list ul.products li .checkbox input{
    transform: scale(1.2);
    cursor:pointer;
}
section.tkp .tkp-catalog-list ul.products li .image,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .image{
    width:40px;
    height:40px;
}
section.tkp .tkp-catalog-list ul.products li .image img,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .image img{
    width:100%;
    height:100%;
    object-fit: contain;
}
section.tkp .tkp-catalog-list ul.products li .title,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .title{
    padding: 0 0.8rem;
    width:100%;
}
section.tkp .tkp-catalog-list ul.products li .unit{
    width:auto; 
    padding: 0 1.2rem;
    white-space: nowrap;
}
section.tkp .tkp-catalog-list ul.products li .price,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .price,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table .tkp-catalog-selected-total .price{
    width:auto; 
    font-size:1.2rem;
    font-weight: bold;
    padding: 0 1.2rem;
    white-space: nowrap;
}
section.tkp .tkp-catalog-list ul.products li .price svg{
    width:20px;
    height:20px;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .price svg,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table .tkp-catalog-selected-total .price svg{
    width:12px;
    height:12px;
}
section.tkp .tkp-catalog-list ul.products li .price svg path,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .price svg path,
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table .tkp-catalog-selected-total .price svg path{
    fill:#999999;
}

section.tkp .tkp-catalog-selected{
    background:#f7f7f7;
    padding:1.5rem;
    box-shadow: 0 5px 10px rgba(0,0,0,0.2);
    margin: 1.5rem 0;
}
section.tkp .tkp-catalog-selected h2{
    font-weight: bold;
    font-size:1.5rem;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table{
    background:#ffffff;
    padding:1rem;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table .tkp-catalog-selected-empty{
    text-align: center;
    color:#999999;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table .tkp-catalog-selected-total{
    justify-content: end;
    display: flex;
    font-weight: bold;
    padding-top:1rem;
    border-top:solid 1px #cccccc;
    margin-top:1rem;
    align-items: center;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr{
    display: flex;
    align-items: center;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr svg.remove{
    width:24px;
    height:24px;
    opacity:0.8;
    transition: all 0.3s ease;
    cursor: pointer;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr svg.remove:hover{
    opacity:1;
    transform: scale(1.5);
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr svg.remove path{
    fill:var(--bs-danger);
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .title a{
    color:#333333;
    text-decoration: none;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .control{
    position:relative;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .control input{
    text-align: center;
    box-shadow:0px 3px 4px rgba(0,0,0,0.2);
    padding-left:1.5rem;
    padding-right:1.5rem;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .control span{
    position: absolute;
    font-size:1.2rem;
    padding:0.2rem 0.5rem;
    top:50%;
    transform:translateY(-50%);
    font-weight: bold;
    cursor:pointer;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .control span.minus{
    left:0px;
}
section.tkp .tkp-catalog-selected .tkp-catalog-selected-table-tr .control span.plus{
    right:0px;
}

section.tkp .tkp-alert{
    padding:1rem 0;
    padding-left:50px;
    color:#999999;
    font-size:0.8rem;
    position:relative;
}
section.tkp .tkp-alert img{
    width:35px;
    height:35px;
    position: absolute;
    left:5px;
    top:1rem;
}

section.tkp .download-tkp{
    padding-left:40px;
    position: relative;
}
section.tkp .download-tkp svg{
    width: 30px;
    height:30px;
    position: absolute;
    left:0;
    top:50%;
    transform: translateY(-50%);
}
section.tkp .download-tkp svg path{
    fill:var(--main-link-color);
}
section.tkp .form-files, section.tkp .form-input{
    position: relative;
}

section.tkp .form-files button svg{
    width:20px;
    height:20px;
}
section.tkp .form-files button svg path{
    fill:var(--main-link-color);
}
section.tkp .form-files button:hover svg path{
    fill:#ffffff;
}
section.tkp .form-files .form-files-input{
    width:0;
    height:0;
    overflow:hidden;
}
section.tkp .form-files .form-files-list{
    margin:1rem 0;
    padding:0;
    max-height:300px;
    overflow:auto;
}
section.tkp  .form-files-list li{
    padding:0.5rem;
    background:#f7f7f7;
    margin:0.3rem 0;
    list-style:none;
    padding-left:1.5rem;
    position: relative;
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
}
section.tkp .form-files-list li .filetitle{
    text-overflow: ellipsis;
    width:calc(100% - 2rem);
    overflow: hidden;
}
section.tkp .form-files-list li svg{
    width:1.5rem;
    height:1.5rem;
    opacity:0.5;
    cursor:pointer;
}
section.tkp .form-files-list li svg:hover{
    opacity:1;
}
section.tkp .form-files-list li svg path{
    fill:var(--bs-danger);
}

section.tkp .modal-callback .alert{
    position:absolute;
    bottom:-2rem;
    width:100%;
    padding:0.3px;
}


@media (max-width: 520.98px) {
    section.tkp h1{
        font-size: 2rem;
        font-weight: bold;
    }
    section.tkp .tkp-send-box .tkp-send-box-inner h5{
        margin-bottom:1.2rem;
    }
    section.tkp .tkp-search-box h3{
        margin-bottom:1rem;
    }
    section.tkp .tkp-search-box .tkp-search {
        width:100%;
    }
    section.tkp .tkp-search-box .tkp-search input{
        min-width: 0;
        width:100%;
    }
    section.tkp .tkp-catalog-list ul.categories>li .category .title {
        font-size:1rem;
    }
    section.tkp .tkp-catalog-list ul.categories>li .category .title span.select{
        margin-left:0;
    }
    section.tkp .tkp-catalog-list ul.products li .image{
        display: none;
    }
    section.tkp .tkp-catalog-list ul.products li{
        flex-wrap:wrap;
    }
    section.tkp .tkp-catalog-list ul.products li .title {
        width: calc(100% - 30px);
    }
}
@media (min-width: 759px) and (max-width: 999.98px) {
    section.tkp .tkp-search-box .tkp-search input{
        min-width: 300px;
    }
}
@media (min-width: 1000px) and (max-width: 1199.98px) {
    section.tkp .tkp-search-box .tkp-search input{
        min-width: 0;
        width:100%;
    }
    section.tkp .tkp-search-box h3{
        margin-bottom:1rem;
    }
}