
.fcl-public,.fcl-panel{max-width:1100px;margin:30px auto;font-family:Arial,sans-serif;color:#182033}
.fcl-card,.fcl-indicator{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:22px;box-shadow:0 8px 26px rgba(0,0,0,.05)}
.fcl-indicator{max-width:650px;margin:0 auto 14px;background:#fff4ef;border-color:#f2c5b6}
.fcl-indicator span,.fcl-indicator strong,.fcl-indicator small{display:block}.fcl-indicator span{font-size:12px;color:#7d6a63}.fcl-indicator strong{font-size:16px;margin:3px 0}
.fcl-public>.fcl-card{max-width:650px;margin:0 auto}.fcl-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fcl-grid .full{grid-column:1/-1}
.fcl-card label{display:block;font-weight:700;font-size:13px;margin:10px 0}.fcl-card input,.fcl-card select,.fcl-card textarea{width:100%;padding:12px;border:1px solid #d8dee8;border-radius:9px;margin-top:6px}
.fcl-card button,.fcl-btn{display:inline-block;border:0;background:#e9693b;color:#fff!important;padding:12px 18px;border-radius:9px;text-decoration:none;font-weight:700;cursor:pointer}
.fcl-consent{display:flex!important;gap:8px;align-items:flex-start}.fcl-consent input{width:auto!important;margin-top:3px!important}
.fcl-alert{padding:12px;border-radius:9px;margin:12px 0}.fcl-alert.success{background:#eaf8ef;color:#176c3b}.fcl-alert.error{background:#fff0f0;color:#9a2929}
.fcl-panel-head{background:#12376a;color:#fff;border-radius:18px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.fcl-panel-head h2{color:#fff;margin:4px 0}.fcl-panel-head a{color:#fff}
.fcl-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.fcl-stats>div{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px}.fcl-stats span,.fcl-stats strong{display:block}.fcl-stats strong{font-size:26px;margin-top:5px;color:#12376a}
.fcl-table-wrap{overflow:auto}.fcl-card table{width:100%;border-collapse:collapse}.fcl-card th,.fcl-card td{padding:10px;border-bottom:1px solid #edf0f4;text-align:left;font-size:13px}
.fcl-admin-stats{display:grid;grid-template-columns:repeat(3,220px);gap:14px;margin:18px 0}.fcl-admin-stats>div,.fcl-admin-card{background:white;border:1px solid #ddd;border-radius:12px;padding:18px}.fcl-admin-stats span,.fcl-admin-stats strong{display:block}.fcl-admin-stats strong{font-size:28px;margin-top:5px}
@media(max-width:750px){.fcl-grid{grid-template-columns:1fr}.fcl-grid .full{grid-column:auto}.fcl-stats{grid-template-columns:1fr}.fcl-admin-stats{grid-template-columns:1fr}}


/* FC Lideranças v1.0.1
   Nas páginas próprias do sistema, remove totalmente o cabeçalho,
   menus, breadcrumb/título do tema, rodapé e barras laterais.
   O restante do portal não é alterado. */
body.fcl-system-page header,
body.fcl-system-page footer,
body.fcl-system-page nav,
body.fcl-system-page aside,
body.fcl-system-page .site-header,
body.fcl-system-page .site-footer,
body.fcl-system-page #site-header,
body.fcl-system-page #site-footer,
body.fcl-system-page #masthead,
body.fcl-system-page #colophon,
body.fcl-system-page .header,
body.fcl-system-page .footer,
body.fcl-system-page .main-header,
body.fcl-system-page .main-footer,
body.fcl-system-page .page-header,
body.fcl-system-page .entry-header,
body.fcl-system-page .breadcrumb,
body.fcl-system-page .breadcrumbs,
body.fcl-system-page .breadcrumb-area,
body.fcl-system-page .page-title-area,
body.fcl-system-page .page-title-wrap,
body.fcl-system-page .page-banner,
body.fcl-system-page .titlebar,
body.fcl-system-page .sidebar,
body.fcl-system-page #sidebar,
body.fcl-system-page .widget-area {
    display:none !important;
}

body.fcl-system-page {
    margin:0 !important;
    padding:0 !important;
    background:#f7f8fb !important;
}

body.fcl-system-page #page,
body.fcl-system-page .site,
body.fcl-system-page #content,
body.fcl-system-page .site-content,
body.fcl-system-page .content-area,
body.fcl-system-page main,
body.fcl-system-page .container,
body.fcl-system-page .content,
body.fcl-system-page article,
body.fcl-system-page .entry-content {
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}

body.fcl-system-page .fcl-public,
body.fcl-system-page .fcl-panel {
    box-sizing:border-box;
    min-height:100vh;
    padding:32px 18px;
    margin:0 auto !important;
}


/* v1.1.0 — Identidade do candidato */
.fcl-public,
.fcl-panel{
    position:relative;
    background:
        linear-gradient(rgba(247,248,251,.90),rgba(247,248,251,.96)),
        var(--fcl-candidate-bg, none);
    background-size:cover;
    background-position:center top;
    background-attachment:fixed;
}

.fcl-candidate-hero{
    max-width:880px;
    margin:0 auto 20px;
    padding:18px 22px;
    display:flex;
    align-items:center;
    gap:20px;
    background:rgba(255,255,255,.94);
    border:1px solid #e5e7eb;
    border-radius:20px;
    box-shadow:0 10px 34px rgba(0,0,0,.07);
    backdrop-filter:blur(5px);
}

.fcl-candidate-photo{
    width:128px;
    height:128px;
    min-width:128px;
    overflow:hidden;
    border-radius:18px;
    background:#eef2f7;
}

.fcl-candidate-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.fcl-candidate-info h1{
    margin:3px 0 4px!important;
    padding:0!important;
    font-size:30px!important;
    line-height:1.1!important;
    color:#17376b!important;
}

.fcl-candidate-office{
    display:block;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#e9693b;
}

.fcl-candidate-number{
    display:inline-block;
    margin:5px 0;
    padding:5px 11px;
    border-radius:999px;
    background:#17376b;
    color:#fff;
    font-size:18px;
    font-weight:900;
}

.fcl-candidate-info p{
    margin:6px 0 0!important;
    color:#667085;
}

.fcl-public .fcl-card,
.fcl-public .fcl-indicator,
.fcl-panel .fcl-card,
.fcl-panel .fcl-panel-head,
.fcl-panel .fcl-stats>div{
    position:relative;
    z-index:1;
    background-color:rgba(255,255,255,.94);
}

.fcl-media-preview{
    width:180px;
    min-height:80px;
    margin:0 0 10px;
    border:1px dashed #bcc5d1;
    border-radius:12px;
    background:#f8fafc;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
}

.fcl-media-preview.wide{width:360px;max-width:100%;height:150px}
.fcl-media-preview img{max-width:100%;max-height:180px;display:block}

@media(max-width:650px){
    .fcl-candidate-hero{
        display:block;
        text-align:center;
        padding:16px;
    }
    .fcl-candidate-photo{
        width:115px;
        height:115px;
        min-width:115px;
        margin:0 auto 12px;
    }
    .fcl-candidate-info h1{font-size:25px!important}
}


/* v1.1.1 — correções de responsividade mobile */
.fcl-panel-head{
    gap:14px;
}
.fcl-panel-head > div{
    min-width:0;
}
.fcl-panel-head > a{
    flex:0 0 auto;
    white-space:nowrap !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    writing-mode:horizontal-tb !important;
    min-width:max-content;
}

.fcl-stats > div{
    min-width:0;
}
.fcl-stats span,
.fcl-stats strong{
    word-break:normal !important;
    overflow-wrap:normal !important;
    white-space:normal;
}

/* Tabela: nunca quebrar cabeçalhos letra por letra */
.fcl-card table{
    table-layout:auto !important;
}
.fcl-card th{
    white-space:nowrap !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    hyphens:none !important;
}
.fcl-card td{
    word-break:normal !important;
    overflow-wrap:anywhere;
}

/* Larguras mínimas para os campos mais curtos */
.fcl-card th:nth-child(1){min-width:110px}
.fcl-card th:nth-child(2){min-width:115px}
.fcl-card th:nth-child(3){min-width:105px}
.fcl-card th:nth-child(4){min-width:120px}

/* Link de cadastro não deve estourar a tela */
.fcl-card input[readonly]{
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

@media(max-width:650px){
    .fcl-panel{
        padding-left:12px !important;
        padding-right:12px !important;
    }

    .fcl-panel-head{
        display:flex !important;
        flex-direction:row !important;
        align-items:center !important;
        justify-content:space-between !important;
        padding:16px !important;
    }

    .fcl-panel-head h2{
        font-size:22px !important;
        line-height:1.15 !important;
        margin:4px 0 0 !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
    }

    .fcl-panel-head > a{
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        padding:8px 12px !important;
        border:1px solid rgba(255,255,255,.35);
        border-radius:9px;
        font-size:13px !important;
    }

    /* Cards ocupam largura total, evitando colunas estreitas */
    .fcl-stats{
        grid-template-columns:1fr !important;
        gap:10px !important;
    }

    .fcl-stats > div{
        width:100% !important;
    }

    .fcl-stats span{
        font-size:13px !important;
    }

    .fcl-stats strong{
        font-size:28px !important;
        white-space:normal !important;
    }

    /* Tabela em rolagem horizontal, sem esmagar palavras */
    .fcl-table-wrap{
        width:100%;
        overflow-x:auto !important;
        -webkit-overflow-scrolling:touch;
    }

    .fcl-card table{
        width:max-content !important;
        min-width:640px !important;
        table-layout:auto !important;
    }

    .fcl-card th,
    .fcl-card td{
        padding:10px 12px !important;
        font-size:13px !important;
        vertical-align:top;
    }

    .fcl-card th{
        white-space:nowrap !important;
    }

    .fcl-card h3{
        word-break:normal !important;
        overflow-wrap:normal !important;
        line-height:1.2 !important;
    }

    /* Evita que qualquer link/botão curto fique vertical */
    .fcl-panel a,
    .fcl-panel button,
    .fcl-btn{
        writing-mode:horizontal-tb !important;
        word-break:normal !important;
        overflow-wrap:normal !important;
    }
}

@media(max-width:390px){
    .fcl-panel-head h2{
        font-size:19px !important;
    }
    .fcl-panel-head > a{
        padding:7px 10px !important;
        font-size:12px !important;
    }
}
