:root{
    --msw-blue:#19b4f7;
    --msw-text:#666666;
    --msw-title:#111111;
    --msw-border:#dddddd;
    --msw-soft:#f7f9fa;
}

.msw-wrap{
    max-width:920px;
    color:var(--msw-text);
}

.msw-wrap h2,
.msw-wrap h3,
.msw-wrap h4,
.msw-admin-wrap h1,
.msw-admin-wrap h2,
.msw-admin-wrap h3{
    color:var(--msw-title);
}

.msw-wrap p,
.msw-wrap small,
.msw-wrap label,
.msw-wrap .msw-message-body,
.msw-wrap .msw-message-meta span,
.msw-ticket-row small{
    color:var(--msw-text);
}

.msw-wrap a:not(.button),
.msw-admin-wrap a:not(.button){
    color:var(--msw-blue);
}

.msw-card{
    background:#ffffff;
    border:1px solid var(--msw-border);
    border-radius:8px;
    padding:28px;
    margin:20px 0;
    box-shadow:0 3px 14px rgba(0,0,0,.045);
}

.msw-new-ticket-card h3{
    margin:0 0 10px;
    font-size:24px;
}

.msw-order-summary{
    margin:0 0 24px;
    line-height:1.65;
}

.msw-order-summary strong{
    color:var(--msw-title);
}

.msw-form{
    display:grid;
    gap:16px;
}

.msw-field{
    display:grid;
    gap:8px;
}

.msw-field label strong,
.msw-reply-form > label strong,
.msw-form > label strong{
    color:var(--msw-title);
    font-weight:600;
}

.msw-form input[type=text],
.msw-form textarea{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    border:1px solid #cfcfcf;
    border-radius:5px;
    background:#fff;
    color:var(--msw-text);
    padding:13px 14px;
    font:inherit;
    line-height:1.5;
    transition:border-color .15s ease,box-shadow .15s ease;
}

.msw-form textarea{
    resize:vertical;
    min-height:145px;
}

.msw-form input[type=text]:focus,
.msw-form textarea:focus{
    border-color:var(--msw-blue);
    box-shadow:0 0 0 2px rgba(25,180,247,.14);
    outline:none;
}

.msw-form textarea::placeholder{
    color:#999999;
}

.msw-field-help{
    display:block;
    font-size:12px;
    text-align:right;
}

.msw-wrap .button{
    border-radius:4px!important;
}

.msw-wrap .msw-primary-button,
.msw-wrap .msw-reply-form .button{
    background:var(--msw-blue)!important;
    border:1px solid var(--msw-blue)!important;
    color:#ffffff!important;
    font-weight:600;
    min-height:42px;
    padding:9px 20px!important;
    transition:filter .15s ease,transform .15s ease;
}

.msw-wrap .msw-primary-button:hover,
.msw-wrap .msw-reply-form .button:hover{
    filter:brightness(.94);
    color:#ffffff!important;
}

.msw-resolve-form .button{
    background:#ffffff!important;
    border:1px solid var(--msw-blue)!important;
    color:var(--msw-blue)!important;
    font-weight:600;
}

.msw-notice{
    padding:12px 14px;
    border-left:4px solid var(--msw-blue);
    background:#f2fbff;
    color:var(--msw-text);
    margin:15px 0;
}

.msw-notice-error{
    border-left-color:#d63638;
    background:#fff8f8;
}

.msw-ticket-list{
    display:grid;
    gap:10px;
}

.msw-ticket-row{
    display:flex;
    justify-content:space-between;
    gap:16px;
    align-items:center;
    background:#ffffff;
    border:1px solid var(--msw-border);
    padding:16px 18px;
    border-radius:6px;
    text-decoration:none!important;
    transition:border-color .15s ease,box-shadow .15s ease;
}

.msw-ticket-row:hover{
    border-color:var(--msw-blue);
    box-shadow:0 2px 10px rgba(25,180,247,.10);
}

.msw-ticket-row strong{
    color:var(--msw-title);
}

.msw-status{
    display:inline-flex;
    align-items:center;
    padding:5px 10px;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    white-space:nowrap;
}

.msw-status-open{
    background:#eaf8fe;
    color:#068ec9;
}

.msw-status-answered{
    background:#f1f3f5;
    color:#666666;
}

.msw-status-resolved{
    background:#ecfdf3;
    color:#027a48;
}

.msw-ticket-head{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-start;
}

.msw-ticket-head h2,
.msw-ticket-head h3{
    margin-top:0;
}

.msw-messages{
    display:grid;
    gap:12px;
    margin:24px 0;
}

.msw-message{
    max-width:82%;
    padding:13px 15px;
    border-radius:10px;
    color:var(--msw-text);
}

.msw-message-customer{
    background:#f3f4f5;
    margin-right:auto;
}

.msw-message-admin{
    background:#eaf8fe;
    border:1px solid rgba(25,180,247,.22);
    margin-left:auto;
}

.msw-message-meta{
    display:flex;
    gap:8px;
    align-items:center;
    margin-bottom:5px;
    font-size:12px;
}

.msw-message-meta strong{
    color:var(--msw-title);
}

.msw-message-meta span{
    opacity:.8;
}

.msw-message-body p{
    color:var(--msw-text);
}

.msw-message-body p:last-child{
    margin-bottom:0;
}

.msw-reply-form{
    margin-top:20px;
}

.msw-resolve-form{
    margin-top:12px;
}

.msw-resolved-note{
    padding:12px;
    border-radius:6px;
    background:#ecfdf3;
    color:#027a48!important;
}

.msw-admin-wrap{
    max-width:1180px;
}

.msw-admin-table td,
.msw-admin-table th{
    vertical-align:middle;
}

.msw-admin-actions{
    display:flex;
    gap:14px;
    align-items:center;
    margin-top:18px;
}

.msw-admin-actions form{
    margin:0;
}

.button-link-delete{
    color:#b32d2e!important;
}

.msw-admin-filters{
    margin:14px 0;
}


/* Link de suporte dentro da tabela de detalhes do pedido. */
.woocommerce-table--order-details tfoot .msw-support-row td{
    padding-top:14px;
    padding-bottom:14px;
    text-align:left;
}

.woocommerce-table--order-details .msw-order-support-link{
    display:inline;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    color:var(--msw-blue)!important;
    font-weight:600;
    line-height:inherit;
    text-decoration:none!important;
}

.woocommerce-table--order-details .msw-order-support-link:hover,
.woocommerce-table--order-details .msw-order-support-link:focus{
    background:none!important;
    color:var(--msw-blue)!important;
    text-decoration:underline!important;
}

@media(max-width:700px){
    .woocommerce-table--order-details tfoot .msw-support-row td{
        text-align:center!important;
    }

    .msw-wrap{
        margin:0 auto;
        text-align:center;
    }

    .msw-wrap > h2{
        text-align:center;
    }

    .msw-card{
        margin:18px auto;
        padding:20px 16px;
        text-align:center;
    }

    .msw-new-ticket-card h3{
        font-size:22px;
        line-height:1.3;
    }

    .msw-form{
        justify-items:center;
    }

    .msw-field{
        width:100%;
        text-align:center;
    }

    .msw-form textarea,
    .msw-form input[type=text]{
        text-align:left;
    }

    .msw-field-help{
        width:100%;
        text-align:center;
    }

    .msw-wrap .msw-primary-button,
    .msw-wrap .msw-reply-form .button,
    .msw-resolve-form .button{
        width:100%;
        max-width:340px;
        text-align:center;
    }

    .msw-ticket-row,
    .msw-ticket-head{
        flex-direction:column;
        align-items:center;
        text-align:center;
    }

    .msw-ticket-row{
        justify-content:center;
    }

    .msw-messages{
        text-align:left;
    }

    .msw-message{
        max-width:94%;
    }

    .msw-admin-actions{
        align-items:flex-start;
        flex-direction:column;
    }
}
