.thw-form {
    max-width: 600px;
    margin: auto;
    font-family: Arial, sans-serif;
}


/* =========================
FORM LABEL
========================= */

.thw-form label {
    display: block;
    font-weight: 600; 
    margin-top: 15px;
}


/* =========================
FORM INPUT
========================= */

.thw-form input,
.thw-form select,
.thw-form textarea {

    width: 100%;
    box-sizing: border-box;

    padding: 12px;
    margin-top: 8px;

    border: 1px solid #ccc;
    border-radius: 6px;

    font-size: 15px;
}


.thw-form textarea {
    height: 120px;
}


/* =========================
PRODUCT ITEM
========================= */

.thw-product-item {

    position: relative;

    border: 1px solid #ddd;

    padding: 20px;

    margin-top: 20px;

    border-radius: 10px;
}


/* =========================
REMOVE PRODUCT BUTTON
========================= */

.thw-product-item {
    position: relative;
}


.thw-remove-product {
    position: absolute !important;

    top: 18px !important;
    right: 18px !important;

    width: 32px !important;
    height: 32px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    border-radius: 50% !important;

    background: transparent !important;

    color: #555 !important;

    font-size: 24px !important;
    font-weight: 400 !important;

    line-height: 32px !important;

    text-align: center !important;

    cursor: pointer;

    box-shadow: none !important;
}


.thw-remove-product:hover {
    background: #f1f1f1 !important;

    color: #000 !important;

    opacity: 1 !important;
}
/* =========================
ADD PRODUCT BUTTON
========================= */

#thw-add-product {

    margin-top: 20px;

    padding: 12px 20px;

    background: #222;

    color: white;

    border: none;

    border-radius: 6px;

    cursor: pointer;

}


/* =========================
INVOICE WARNING
========================= */

#thw-invoice-warning {

    display: none;

}

/* =========================
SUBMIT BUTTON
========================= */

.thw-submit {

    text-align:left;

    margin-top:40px;

}


.thw-submit button {

    width:auto !important;

    height:auto;

    padding:12px 22px !important;

    background:#f1f1f1 !important;

    color:#111 !important;

    border:none !important;

    border-radius:0 !important;

    font-size:15px !important;

    font-weight:500 !important;

    cursor:pointer;

}


.thw-submit button:hover {

    background:#e5e5e5 !important;

}

/* =========================
SUCCESS POPUP FINAL
========================= */


#thw-success-popup {

    display:none;

    position:fixed !important;

    top:0 !important;
    left:0 !important;

    width:100vw !important;
    height:100vh !important;

    background:rgba(0,0,0,0.45) !important;

    z-index:999999999 !important;

    align-items:center !important;
    justify-content:center !important;

}



/* POPUP BOX */

#thw-success-popup .thw-popup-box {


    width:380px !important;

    max-width:90% !important;


    background:#ffffff !important;


    padding:40px 35px !important;


    border-radius:20px !important;


    text-align:center !important;


    box-shadow:
    0 20px 60px rgba(0,0,0,.25) !important;


}



/* ICON */

#thw-success-popup .thw-popup-icon {


    width:70px !important;

    height:70px !important;


    margin:0 auto 25px !important;


    background:#22c55e !important;


    color:#fff !important;


    border-radius:50% !important;


    display:flex !important;


    align-items:center !important;


    justify-content:center !important;


    font-size:42px !important;


}



/* TITLE */

#thw-success-popup h2 {


    font-size:28px !important;


    font-weight:400 !important;


    margin:0 0 20px !important;


    color:#111 !important;


}



/* DESCRIPTION */

#thw-success-popup p {


    font-size:16px !important;


    color:#777 !important;


    line-height:1.5 !important;


    margin:0 !important;


}


.thw-invoice-preview {
    margin: 20px 0 30px;
    padding: 20px;
    background: #fff;
    border: 1px solid #dcdcde;
    border-radius: 8px;
}

.thw-invoice-preview h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 18px;
}

.thw-invoice-box {
    max-width: 800px;
    padding: 15px;
    background: #f6f7f7;
    border: 1px solid #dcdcde;
    border-radius: 6px;
    text-align: center;
}

.thw-invoice-image {
    display: block;
    max-width: 100%;
    max-height: 700px;
    height: auto;
    margin: 0 auto;
}

.thw-invoice-pdf {
    width: 100%;
    height: 700px;
    border: none;
}

.thw-invoice-section {
    margin-top: 30px;
    margin-bottom: 30px;
}

.thw-invoice-section h2 {
    margin-bottom: 15px;
}

.thw-invoice-preview {
    width: 500px;
    max-width: 100%;
    padding: 10px;
    background: #f6f7f7;
    border: 1px solid #dcdcde;
    border-radius: 6px;
}

.thw-invoice-image {
    display: block;
    width: 100%;
    height: auto;
    max-height: 350px;
    object-fit: contain;
    object-position: top;
}

.thw-pdf-preview {
    padding: 40px;
    text-align: center;
    background: #fff;
}

.thw-pdf-preview .dashicons {
    font-size: 50px;
    width: 50px;
    height: 50px;
}


.thw-invoice-preview{
    margin-top:20px;
}

.thw-invoice-image{
    max-width:350px;
    display:block;
}



.thw-invoice-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;

margin-top:20px;

}



.thw-invoice-card{

border:1px solid #ddd;

border-radius:10px;

padding:15px;

background:#fff;

}



.thw-invoice-card h3{

margin-top:0;

}



.thw-invoice-image{

width:100%;

height:180px;

object-fit:cover;

border-radius:8px;

border:1px solid #ddd;

margin-bottom:15px;

}



.thw-pdf-preview{

height:180px;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

background:#f7f7f7;

border-radius:8px;

margin-bottom:15px;

}


.thw-invoice-card .button{

width:100%;

text-align:center;

}


/* =========================
WARRANTY EVALUATION
========================= */

.thw-evaluation-wrapper {

    display: grid !important;

    grid-template-columns: repeat(3, minmax(0,1fr)) !important;

    gap:20px !important;

    width:100%;

}


.thw-evaluation-card {

    display:block !important;

    background:#fff;

    border:1px solid #ddd;

    border-radius:10px;

    padding:20px;

}

.thw-evaluation-card h3 {

    margin-top: 0;

    margin-bottom: 15px;

    font-size: 18px;

}


/* checkbox item */

.thw-evaluation-item {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 12px;

    font-size: 15px;

}


/* checkbox */

.thw-evaluation-item input {

    width: 18px;

    height: 18px;

}


/* final grade */

.thw-final-grade {

    margin-top: 25px;

    font-size: 20px;

    font-weight: 700;

}


/* responsive tablet */

@media(max-width:900px){

    .thw-evaluation-wrapper{

        grid-template-columns:1fr 1fr;

    }

}


/* responsive HP */

@media(max-width:600px){

    .thw-evaluation-wrapper{

        grid-template-columns:1fr;

    }

}

.thw-toolbar-control {
    height: 32px;
    padding: 0 12px;
    font-size: 13px;
    line-height: 30px;
    border-radius: 3px;
    box-sizing: border-box;
    vertical-align: middle;
}

.wrap table.widefat th,
.wrap table.widefat td {
    border-right: 1px solid #dcdcde;
}

.wrap table.widefat th:last-child,
.wrap table.widefat td:last-child {
    border-right: none;
}

/* THW Registration Form Style */

#thw-registration-form {
    max-width: 645px;
    margin: auto;
}


/* LABEL */

#thw-registration-form label {

    display:block;

    font-size:13px;

    font-weight:600;

    margin-top:25px;

    margin-bottom:8px;

}


/* INPUT */

#thw-registration-form input[type="text"],
#thw-registration-form input[type="email"],
#thw-registration-form input[type="tel"],
#thw-registration-form input[type="number"],
#thw-registration-form select,
#thw-registration-form textarea {


    width:100%;

    box-sizing:border-box;

    padding:12px;

    border:1px solid #777;

    border-radius:0;

    font-size:16px;

    background:#fff;

}


#thw-registration-form input[type="text"],
#thw-registration-form input[type="email"],
#thw-registration-form input[type="tel"],
#thw-registration-form input[type="number"],
#thw-registration-form select {

    height:42px;

}


#thw-registration-form textarea {

    height:120px;

}


/* PRODUCT */

#thw-registration-form h3 {

    font-size:13px;

    font-weight:600;

    margin-top:30px;

}


#thw-registration-form .thw-product-item {

    border:none;

    padding:0;

}


/* ADD PRODUCT */

#thw-add-product {

    background:#222;

    color:white;

    border:none;

    padding:10px 18px;

    border-radius:0;

}



/* FILE */

#thw-registration-form input[type="file"] {

    border:1px solid #777;

    padding:10px;

}


/* SUBMIT */

#thw-registration-form .thw-submit {

    text-align:left;

}


#thw-registration-form .thw-submit button {

    background:#f1f1f1;

    border:none;

    padding:14px 30px;

    font-size:15px;

}

/* =========================
PRODUCT ITEM SEPARATOR
========================= */

#thw-products .thw-product-item {

    border:1px solid #e0e0e0;

    border-radius:8px;

    padding:20px;

    margin-bottom:25px;

    background:#fff;

}


/* =========================
PRODUCT TITLE SPACE
========================= */

#thw-products .thw-detail {

    margin-top:20px;

}



/* =========================
ADD PRODUCT BUTTON
========================= */

#thw-add-product {

    background:#222;

    color:#fff;

    border:none;

    border-radius:4px;

    padding:12px 20px;

    font-size:14px;

    font-weight:500;

}



/* =========================
SUBMIT BUTTON FORMINATOR STYLE
========================= */


.thw-submit {

    text-align:left;

    margin-top:40px;

}


.thw-submit button {


    background:#f1f1f1 !important;

    color:#111 !important;

    border:1px solid #ddd !important;

    border-radius:4px !important;

    width:160px !important;

    height:45px;

    padding:0 !important;

    font-size:15px !important;

    font-weight:600 !important;

    cursor:pointer;

}


.thw-submit button:hover {

    background:#ddd !important;

}
/* =====================================
DOWNLOAD CENTER STYLE
===================================== */


.thw-download-center {

    max-width: 950px;

    margin: 60px auto;

    font-family: Arial, sans-serif;

}



/* HEADER */

.thw-download-header h2 {

    font-size: 32px;

    margin-bottom: 8px;

    font-weight: 600;

}


.thw-download-header p {

    color:#777;

    font-size:16px;

    margin-bottom:40px;

}



/* PRODUCT SELECTOR */

.thw-product-selector select {

    width:100%;

    padding:15px;

    border:1px solid #aaa;

    border-radius:8px;

    font-size:16px;

    background:white;

}



/* PRODUCT DETAIL CARD */

#thw-product-details {

    margin-top:30px;

    border:1px solid #ddd;

    border-radius:12px;

    overflow:hidden;

    background:white;

}



/* PRODUCT TITLE */

#thw-product-details h2 {

    font-size:24px;

    margin:0;

    padding:25px 30px 5px;

}



#thw-product-details p {

    padding:0 30px 20px;

    color:#888;

}



/* TABLE DOCUMENT */

#thw-product-details table {

    width:100%;

    border-collapse:collapse;

}



#thw-product-details th {

    text-align:left;

    padding:18px 30px;

    background:#fafafa;

    border-top:1px solid #ddd;

    border-bottom:1px solid #ddd;

    font-size:14px;

}



#thw-product-details td {

    padding:20px 30px;

    border-bottom:1px solid #eee;

    font-size:16px;

}



/* DOWNLOAD BUTTON */

.thw-download-center button,
.thw-download-center .button {


    width:42px;

    height:42px;

    padding:0;


    border-radius:8px;

    border:1px solid #222;

    background:white;

    cursor:pointer;

}



.thw-download-center button:hover,
.thw-download-center .button:hover {

    background:#222;

    color:white;

}
/* ===============================
DOWNLOAD CENTER FINAL STYLE
=============================== */


.entry-content .thw-download-center {

    font-family: Arial, sans-serif !important;

}


/* TITLE */

.entry-content .thw-download-center .thw-download-header h2 {

    color:#111 !important;

    font-size:32px !important;

    font-weight:400 !important;

    margin-bottom:10px !important;

}



.entry-content .thw-download-center .thw-download-header p {

    color:#777 !important;

    font-size:15px !important;

}



/* LABEL */

.entry-content .thw-product-selector label {

    font-size:13px !important;

    font-weight:600 !important;

}



/* SELECT */

.entry-content .thw-product-selector select {

    height:54px !important;

    padding:0 18px !important;

    border:1px solid #777 !important;

    border-radius:0 !important;

    font-size:16px !important;

}



/* CARD PRODUCT */

.entry-content #thw-product-details {

    border:1px solid #ddd !important;

    border-radius:10px !important;

}



/* PRODUCT TITLE */

.entry-content #thw-product-details h2 {

    font-size:24px !important;

    font-weight:500 !important;

    color:#111 !important;

}



/* TABLE */

.entry-content #thw-product-details table th {

    font-weight:500 !important;

    background:#fafafa !important;

}



.entry-content #thw-product-details table td {

    font-size:16px !important;

}

/* =================================
DOWNLOAD DETAIL REFINEMENT
================================= */


/* PRODUCT NAME */

.entry-content #thw-product-details h2 {

    font-size:24px !important;

    font-weight:400 !important;

    margin:0 !important;

    padding:25px 28px 5px !important;

}


/* DESCRIPTION */

.entry-content #thw-product-details p {

    font-size:14px !important;

    font-weight:300 !important;

    color:#888 !important;

    margin:0 !important;

    padding:0 28px 25px !important;

}


/* TABLE */

.entry-content #thw-product-details table {

    width:100% !important;

    table-layout:fixed !important;

}


/* COLUMN WIDTH */

.entry-content #thw-product-details th:nth-child(1),
.entry-content #thw-product-details td:nth-child(1){

    width:45%;

}


.entry-content #thw-product-details th:nth-child(2),
.entry-content #thw-product-details td:nth-child(2){

    width:35%;

}


.entry-content #thw-product-details th:nth-child(3),
.entry-content #thw-product-details td:nth-child(3){

    width:20%;

    text-align:center;

}


/* HEADER */

.entry-content #thw-product-details th {

    font-size:13px !important;

    font-weight:500 !important;

    padding:16px 28px !important;

}


/* DOCUMENT NAME */

.entry-content #thw-product-details td:first-child {

    font-size:16px !important;

    font-weight:500 !important;

}


/* NOTE */

.entry-content #thw-product-details td:nth-child(2) {

    font-size:14px !important;

    color:#888;

}


/* DOWNLOAD BUTTON */

.entry-content #thw-product-details button,
.entry-content #thw-product-details a {

    font-size:14px !important;

}

/* =================================
DOWNLOAD FILE ROW STYLE
================================= */


/* ROW GRID */

.thw-file-row {

    display:grid !important;

    grid-template-columns: 45% 35% 20% !important;

    align-items:center;

    padding:20px 28px;

    border-bottom:1px solid #eee;

}



/* HEADER */

.thw-file-header {

    background:#fafafa;

    padding-top:16px;

    padding-bottom:16px;

    font-size:13px;

    font-weight:500;

}



/* DOCUMENT NAME */

.thw-file-name {

    font-size:16px !important;

    font-weight:500 !important;

    color:#222;

}



/* NOTE */

.thw-file-note {

    font-size:14px !important;

    color:#888;

}



/* DOWNLOAD */

.thw-file-download {

    display:flex;

    justify-content:center;

}



/* BUTTON */

.thw-file-download button,
.thw-file-download a {


    width:42px;

    height:42px;

    display:flex;

    align-items:center;

    justify-content:center;


    border:1px solid #222;

    border-radius:8px;

    background:white;

}

/* CENTER HEADER COLUMN */

.thw-file-header .thw-file-name,
.thw-file-header .thw-file-note,
.thw-file-header .thw-file-download {

    text-align:center !important;

}

/* FIX PRODUCT DESCRIPTION ALIGNMENT */

.thw-product-panel .thw-product-detail-header {

    padding:25px 30px !important;

}


.thw-product-panel .thw-product-detail-header h3 {

    margin:0 !important;

    padding:0 !important;

    font-size:24px !important;

    font-weight:500 !important;

    line-height:32px !important;

}


.thw-product-panel .thw-product-detail-header p {

    margin:8px 0 0 0 !important;

    padding:0 !important;

    padding-left:0 !important;

    text-indent:0 !important;

    font-size:14px !important;

    font-weight:400 !important;

    color:#888 !important;

    line-height:20px !important;

}

#thw-product-details .thw-product-detail-header p {

    padding:0 !important;

}

#thw-success-popup {

    display:none;

    position:fixed !important;

    top:0;
    left:0;

    width:100vw;
    height:100vh;

    background:rgba(0,0,0,.45);

    z-index:999999;

    align-items:center;
    justify-content:center;

}


#thw-success-popup .thw-popup-box {

    width:380px;

    background:white;

    padding:40px;

    border-radius:20px;

    text-align:center;

}

/* =================================
 WARRANTY CLAIM UI
================================= */

.thw-page-header{
    margin-bottom:30px;
}

.thw-page-header h1{
    font-size:32px;
    font-weight:600;
    color:#0f172a;
}

.thw-page-header p{
    color:#64748b;
}


.thw-card{

    background:#fff;
    border:1px solid #e2e8f0;
    border-radius:14px;

    padding:30px;

    max-width:720px;

    box-shadow:
    0 4px 15px rgba(0,0,0,.05);

    margin-top:25px;

}


.thw-card-header{

    display:flex;
    align-items:center;
    gap:12px;

}


.thw-card-header h3{

    margin:0;
    font-size:22px;
    color:#0f172a;

}


.thw-description{

    color:#64748b;
    margin-bottom:25px;

}


.thw-info-note{

    margin-top:20px;

    padding:14px;

    background:#eff6ff;

    border-radius:10px;

    color:#2563eb;

    font-size:14px;

}



#thw-claim-validation h2{

    font-size:22px;
    color:#0f172a;

}



#thw-claim-validation input[type=date],
#thw-claim-validation input[type=text]{

    width:100% !important;

    height:44px !important;

    border-radius:8px !important;

    border:1px solid #cbd5e1 !important;

}
