*, *:after, *:before{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    outline: none;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -ms-overflow-style: scrollbar;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

:root{
    --green: #46ceac;
    --green_h: #35ba9b;
    --green_l: #61ddbc;

    --blue: #4fc0e8;
    --blue_h: #3aadd9;
    --blue_l: #66d4f1;

    --yellow: #fdcd56;
    --yellow_h: #f5b945;
    --yellow_l: #fbd277;

    --red: #eb5463;
    --red_h: #d94452;
    --red_l: #f76c82;

    --pattern-brand-light: rgba(212, 165, 46, .10);
    --pattern-brand-surface: #fffdf8;
}

.pattern-pixel-brand-light{
    background-color: var(--pattern-brand-surface) !important;
    background-image: conic-gradient(var(--pattern-brand-light) 25%, transparent 0 50%, var(--pattern-brand-light) 0 75%, transparent 0) !important;
    background-size: 3px 3px !important;
}

embed,
video,
iframe,
iframe[style]{
    max-width: 100%;
    height: auto;
}

select{
    border: 1px solid #ccc;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    background-image: url(../../admin/_img/select.png);
    background-size: auto 70%;
    background-repeat: no-repeat;
    background-position: right 10px center;
    cursor: pointer;
    font-size: 1em;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0; overflow: hidden;
    max-width: 100%;
}

.embed-container iframe, .embed-container object, .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

img{
    max-width: 100%;
    vertical-align: middle;
    margin: 0;
}

a img {
    border: none;
    margin: 0;
}

ul{
    list-style: none;
}

fieldset{border: 0;}
input,
select,
textarea{padding: 10px; width: 100%;}
input.btn{width: auto; cursor: pointer;}

.container{
    display: block;
    width: 100%;
}

.content{
    display: block;
    margin: 0 auto;
}

.clear{
    clear: both;
}

.fl_right{
    float: right;
}

.fl_left{
    float: left;
}

.progress{
    display: block;
    width: 100%;
    background: #333;
}

.progress_bar{
    display: inline-block;
    background: #00B494;
    color: #fff;
    padding: 5px;
    font-size: 0.7em;
    text-align: center;
    max-width: 100%;
    font-weight: 600;
    text-shadow: 1px 1px 0 #333;
    text-transform: uppercase;
}

.radius{
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

.rounded{
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
}

.label_50 label{
    display: inline-block;
    width: 48%;
}

.label_50 label:nth-child(2n+0){
    margin-left: 3%;
}

/***********************************
######## HTML CHARS CONFIG #########
***********************************/
.htmlchars{
    display: block;
    width: 100%;
    padding: 30px;
}

.htmlchars h3{display: block; font-size: 2em; font-weight: 300; margin-bottom: 30px}
.htmlchars h4{display: block; font-size: 1.8em; font-weight: 300; margin-bottom: 30px}
.htmlchars h5{display: block; font-size: 1.6em; font-weight: 300; margin-bottom: 30px}
.htmlchars p{margin-bottom: 20px; font-size: 0.9em; font-weight: 400;}
.htmlchars iframe{width: 100%; border: none;}
.htmlchars ul{list-style: circle; margin: 20px 30px;}
.htmlchars ol{margin: 20px 30px;}
.htmlchars form{padding: 30px; background: #fbfbfb; margin: 20px 0; text-align: center; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
.htmlchars form label{display: block; margin-bottom: 15px; font-size: 0.9em; text-transform: uppercase;}
.htmlchars form input,
.htmlchars form textarea{border: 1px solid #ccc; display: block; margin-top: 15px; font-size: 1em; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
.htmlchars form button,
.htmlchars form input[type="submit"]{display: block; border: 0; color: #fff; text-shadow: 0 1px #000; cursor: pointer; padding: 15px 30px; font-size: 1.2em; font-weight: bold; text-transform: uppercase; background: #00B494; border-bottom: 5px solid #008068; border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px;}
.htmlchars form button:hover,
.htmlchars form input[type="submit"]:hover{background-color: #008068; border-color: #0B5747;}
.htmlchars a{color: #0E96E5; text-decoration: none;}
.htmlchars a:hover{text-decoration: underline;}
.htmlchars pre{margin-bottom: 30px; font-size: 0.8em;}
.htmlchars .btn{display: block; color: #fff;}
.htmlchars .btn:hover{text-decoration: none !Important;}


/*
BOXSTYLES
*/
.radius{
    --radius: 4px;
    border-radius: var(--radius);
    -moz-border-radius: var(--radius);
    -webkit-border-radius: var(--radius);
}

.rounded{
    --radius: 50%;
    border-radius: var(--radius);
    -moz-border-radius: var(--radius);
    -webkit-border-radius: var(--radius);
}

.transition{
    --seconds: 0.2s;
    transition-duration: var(--seconds);
    -moz-transition-duration: var(--seconds);
    -webkit-transition-duration: var(--seconds);
    cursor: pointer;
}

.paginator{
    display: flex;
    width: 100%;
    justify-content: center;
    margin-top: 30px;
}

.paginator a{
    display: inline-block;
    padding: 5px 10px;
    border: 2px solid var(--themeColorA);
    margin: 0 10px;
    color: var(--themeColorA);
    text-decoration: none;
    border-radius: .3rem;
}

.paginator .active{
    display: inline-block;
    padding: 5px 10px;
    border: 2px solid var(--themeColorA);
    margin: 0 10px;
    background: var(--themeColorA);
    color: #fff;
    text-decoration: none;
    border-radius: .3rem;
}


.paginator a:hover, .paginator a.active{
    background: var(--themeColorA);
    color: #fff;
    --seconds: 0.2s;
    transition-duration: var(--seconds);
    -moz-transition-duration: var(--seconds);
    -webkit-transition-duration: var(--seconds);
    cursor: pointer;
}

/*
==========================================================================
TRIGGERS & CALLOUTS (Design System Modern Soft Cards)
==========================================================================
*/
.trigger,
.app-callout,
.ds-callout,
.callout {
    position: relative;
    width: 100%;
    margin-bottom: 14px;
    padding: 10px 14px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 0.84rem;
    line-height: 1.5;
    font-weight: 400;
    color: #475569;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-left: 3.5px solid #94a3b8;
    border-radius: 4px;
    text-shadow: none;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

.trigger b,
.trigger strong,
.app-callout b,
.app-callout strong,
.ds-callout b,
.ds-callout strong,
.callout b,
.callout strong {
    font-weight: 600;
    color: #1e293b;
}

.trigger i,
.app-callout i,
.ds-callout i,
.callout i {
    font-size: 1.05rem;
    line-height: 1.3;
    flex-shrink: 0;
    margin-top: 1px;
}

.trigger p,
.app-callout p,
.ds-callout p,
.callout p {
    margin: 0;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}

.trigger .ajax_close {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    opacity: 0.5;
    transition: opacity 0.2s ease;
}

.trigger .ajax_close:hover {
    opacity: 1;
}

.trigger .ajax_close::before {
    content: "×";
    font-size: 16px;
    font-weight: bold;
    line-height: 16px;
    display: block;
    text-align: center;
    color: inherit;
}

/* Status: Info (Azul / Slate) */
.trigger_info,
.trigger-info,
.app-callout-info,
.ds-callout-info,
.callout-info {
    background: #f0f7ff;
    border-color: #dbeafe;
    border-left: 3.5px solid #3b82f6;
    color: #334155;
}

.trigger_info i,
.trigger-info i,
.app-callout-info i,
.ds-callout-info i,
.callout-info i {
    color: #2563eb;
}

/* Status: Warning / Alert (Dourado / Âmbar - Padrão Ana) */
.trigger_alert,
.trigger-alert,
.trigger_warning,
.trigger-warning,
.app-callout-warning,
.app-callout-alert,
.ds-callout-warning,
.callout-warning,
.callout-alert,
.app-callout-gold {
    background: #fffaf0;
    border-color: #fef08a;
    border-left: 3.5px solid #d6b34c;
    color: #64748b;
}

.trigger_alert i,
.trigger-alert i,
.trigger_warning i,
.trigger-warning i,
.app-callout-warning i,
.app-callout-alert i,
.ds-callout-warning i,
.callout-warning i,
.callout-alert i,
.app-callout-gold i {
    color: #b38725;
}

.trigger_alert b,
.trigger-alert b,
.trigger_warning b,
.trigger-warning b,
.app-callout-warning b,
.ds-callout-warning b {
    color: #78350f;
}

/* Status: Success (Verde Suave) */
.trigger_success,
.trigger-success,
.app-callout-success,
.ds-callout-success,
.callout-success {
    background: #f0fdf4;
    border-color: #bbf7d0;
    border-left: 3.5px solid #16a34a;
    color: #166534;
}

.trigger_success i,
.trigger-success i,
.app-callout-success i,
.ds-callout-success i,
.callout-success i {
    color: #15803d;
}

/* Status: Error / Danger (Vermelho Suave) */
.trigger_error,
.trigger-error,
.app-callout-danger,
.app-callout-error,
.ds-callout-danger,
.callout-danger,
.callout-error {
    background: #fef2f2;
    border-color: #fecaca;
    border-left: 3.5px solid #dc2626;
    color: #991b1b;
}

.trigger_error i,
.trigger-error i,
.app-callout-danger i,
.app-callout-error i,
.ds-callout-danger i,
.callout-danger i,
.callout-error i {
    color: #dc2626;
}

/* Status: Brand (Dourado Primário) */
.app-callout-brand,
.ds-callout-brand,
.callout-brand {
    background: #fffdf8;
    border-color: rgba(216, 174, 71, 0.25);
    border-left: 3.5px solid #d8ae47;
    color: #5c4813;
}

.app-callout-brand i,
.ds-callout-brand i,
.callout-brand i {
    color: #c49935;
}

/* Variações Out (Sem fundo sólido / Transparente) */
.trigger_success_out,
.trigger-success-out {
    color: #16a34a;
    border-color: #16a34a;
    background: transparent;
}

.trigger_info_out,
.trigger-info-out {
    color: #2563eb;
    border-color: #2563eb;
    background: transparent;
}

.trigger_alert_out,
.trigger-alert-out {
    color: #d6b34c;
    border-color: #d6b34c;
    background: transparent;
}

.trigger-error-out,
.trigger_error_out {
    color: #dc2626;
    border-color: #dc2626;
    background: transparent;
}
/*
BUTTON
*/
.btn{
    display: inline-block;
    padding: 10px 20px;
    background: #888;
    border: none;
    cursor: pointer;

    font-size: 1em;
    font-weight: normal;
    color: #fff;
    text-shadow: 1px 1px rgba(0,0,0,0.3);
}

.btn:hover{
    color: #fff;
    text-decoration: none;
    background: #666;
}

.btn-small{
    font-size: 0.875em;
}

.btn-big{
    font-size: 1.275em;
}

.btn-green{
    background: var(--green);
}

.btn-green:hover{
    background: var(--green_h);
}

.btn-green-out{
    color: var(--green);
    border: 1px solid var(--green);
    background: none;
    text-shadow: none;
}

.btn-green-out:hover{
    color: var(--green_h);
    border: 1px solid var(--green_h);
    background: none;
    text-shadow: none;
}

.btn-blue{
    background: var(--blue);
}

.btn-blue:hover{
    background: var(--blue_h);
}

.btn-blue-out{
    color: var(--blue);
    border: 1px solid var(--blue);
    background: none;
    text-shadow: none;
}

.btn-blue-out:hover{
    color: var(--blue_h);
    border: 1px solid var(--blue_h);
    background: none;
    text-shadow: none;
}

.btn-yellow{
    background: var(--yellow);
}

.btn-yellow:hover{
    background: var(--yellow_h);
}

.btn-yellow-out{
    color: var(--yellow);
    border: 1px solid var(--yellow);
    background: none;
    text-shadow: none;
}

.btn-yellow-out:hover{
    color: var(--yellow_h);
    border: 1px solid var(--yellow_h);
    background: none;
    text-shadow: none;
}

.btn-red{
    background: var(--red);
}

.btn-red:hover{
    background: var(--red_h);
}

.btn-red-out{
    color: var(--red);
    border: 1px solid var(--red);
    background: none;
    text-shadow: none;
}

.btn-red-out:hover{
    color: var(--red_h);
    border: 1px solid var(--red_h);
    background: none;
    text-shadow: none;
}

/*
FLEXBOX
*/
.flex{
    display: flex;
    flex-wrap: wrap;
}

.flex .flex-1{
    flex-basis: 100%;
}

.flex .flex-2{
    flex-basis: calc(50% - 40px);
    margin: 20px;
}

.flex .flex-3{
    flex-basis: calc(33.33% - 30px);
    margin: 15px;
}

.flex .flex-4{
    flex-basis: calc(25% - 20px);
    margin: 10px;
}

/*600 pixel*/
@media only screen and (max-width: 37rem){
    .flex .flex-1, .flex .flex-2, .flex .flex-3,.flex .flex-4{
        flex-basis: 100%;
    }

    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4, img{
        width: 100%;
    }
}

/*992pixel*/
@media only screen and (max-width: 62rem) {
      .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4{
        flex-basis: 100%;
    }

    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4, img{
        width: 100%;
    }
}


/*576 pixel*/
@media only screen and (max-width: 36rem){
    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4{
        flex-basis: 100%;
    }

    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4, img{
        width: 100%;
    }
}

/*768 pixel tablet*/
@media only screen and (max-width: 48rem){
    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4{
        flex-basis: 100%;
    }

    .flex .flex-1,.flex .flex-2,.flex .flex-3,.flex .flex-4, img{
        width: 100%;
    }
}


/*SLIDE*/
.j_slide{
    position: relative;
}

.j_slide_item{
    display: none;
}

.j_slide_item:first-child{
    display: block;
}

.j_slide_nav{
    position: absolute;
    left: 0;
    bottom: 0;
    margin-bottom: 10px;
    width: 100%;
    text-align: center;
}

.j_slide_nav span{
    display: inline-block;
    background: rgba(0,0,0,0.4);
    width: 20px;
    height: 20px;
    margin: 0 5px;
    cursor: pointer;
}

.j_slide_nav span:hover,
.j_slide_nav span.active{
    background: var(--themeColorA);
}

/*TABS*/
.j_tabs_nav.active{
    background: var(--themeColorA);
}

.j_tabs_item{
    display: none;
}

.j_tabs_item:first-child{
    display: block;
}

/* Multiselect reutilizável com checkbox personalizado */
.ds-multiselect{position:relative;width:100%}
.ds-multiselect_trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:0 13px 0 14px;border:1px solid #d9cfb4;border-radius:10px;background:#fff;color:#24211b;font:inherit;font-size:.88rem;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.ds-multiselect_trigger:focus-visible,.ds-multiselect.is-open .ds-multiselect_trigger{border-color:#b88a20;outline:0;box-shadow:0 0 0 3px rgba(184,138,32,.14)}
.ds-multiselect_trigger i{color:#a77b15;transition:transform .2s}
.ds-multiselect.is-open .ds-multiselect_trigger>i{transform:rotate(180deg)}
.ds-multiselect.is-disabled .ds-multiselect_trigger{background:#f4f2ed;color:#928c7e;cursor:not-allowed}
.ds-multiselect_panel{position:absolute;z-index:80;top:calc(100% + 7px);right:0;left:0;max-height:248px;padding:7px;overflow-y:auto;border:1px solid #d9cfb4;border-radius:11px;background:#fff;box-shadow:0 16px 38px rgba(17,17,17,.18)}
.ds-multiselect_panel[hidden]{display:none!important}
.ds-checkbox{display:flex;align-items:center;gap:10px;min-height:42px;padding:7px 9px;border-radius:7px;color:#29261f;font-size:.86rem;cursor:pointer;transition:background .15s}
.ds-checkbox:hover{background:#f8f4e9}
.ds-checkbox input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ds-checkbox_mark{display:grid;flex:0 0 20px;width:20px;height:20px;place-items:center;border:1px solid #cfc6af;border-radius:5px;background:#fff;color:#111;transition:background .15s,border-color .15s,box-shadow .15s}
.ds-checkbox_mark i{font-size:.8rem;opacity:0;transform:scale(.65);transition:opacity .15s,transform .15s}
.ds-checkbox input:checked+.ds-checkbox_mark{border-color:#d8ae47;background:#d8ae47}
.ds-checkbox input:checked+.ds-checkbox_mark i{opacity:1;transform:scale(1)}
.ds-checkbox input:focus-visible+.ds-checkbox_mark{box-shadow:0 0 0 3px rgba(184,138,32,.2)}
@media(max-width:620px){.ds-multiselect_trigger{min-height:50px}.ds-multiselect_panel{max-height:220px}}
