﻿/* MODERN PURPLE UI - camada global sobre os componentes Web Forms existentes. */
:root{--p900:#3e2c50;--p800:#4d3561;--p700:#684381;--p600:#765095;--p500:#8b66a9;--p200:#dcd0e6;--p100:#eee8f4;--p050:#f7f4fa;--surface:#fff;--text:#514858;--muted:#7c7283;--danger:#a43d55;--border:#e5ddea;--shadow:0 14px 38px rgba(62,43,82,.1)}
html{min-height:100%}
body{min-height:100vh;background:#f1eef7;background-image:radial-gradient(circle at 8% 5%,rgba(113,75,154,.1),transparent 28%),radial-gradient(circle at 94% 90%,rgba(181,158,205,.16),transparent 26%);color:var(--text);font-size:14px;line-height:1.5}
a:link,a:visited{color:var(--p600)}a:hover{color:var(--p800)}
.page{box-sizing:border-box;width:min(1224px,calc(100% - 40px));max-width:1224px;margin:28px auto 0;border:0;border-radius:20px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.header{box-sizing:border-box;min-height:82px;border-bottom:1px solid var(--p100);background:rgba(255,255,255,.97)}
.title{padding:18px 28px}.title img{display:block;max-width:180px;height:auto}
.loginDisplay{min-height:65px;padding:9px 28px 8px;color:var(--muted);line-height:1.55}.loginDisplay a:link,.loginDisplay a:visited,.loginDisplay a:hover{color:var(--p600);text-decoration:none}.loginDisplay a:hover{text-decoration:underline}
.loginDisplay input[type=text]{box-sizing:border-box;width:220px;height:36px;margin-left:6px;padding:0 12px;border:1px solid var(--p200);border-radius:9px;outline:0;background:var(--p050);color:var(--text)}.loginDisplay input[type=text]:focus{border-color:var(--p500);box-shadow:0 0 0 3px rgba(126,84,160,.1)}
div.hideSkiplink{clear:both;background:var(--p800)}div.menu{padding:0 20px}div.menu ul{display:flex;flex-wrap:wrap;gap:4px}div.menu ul li a,div.menu ul li a:visited{border:0;border-radius:8px;background:transparent;color:#f3edf7;line-height:1.4;padding:11px 18px}div.menu ul li a:hover{background:rgba(255,255,255,.13);color:#fff}
.main{box-sizing:border-box;min-height:500px;margin:0;padding:36px 40px 48px}
h1,h2,h3,h4,h5,h6{color:var(--p900);font-family:"Segoe UI",Arial,sans-serif;font-variant:normal;font-weight:700;letter-spacing:-.01em}h2{margin:0 0 22px;font-size:1.75em}
fieldset{box-sizing:border-box;min-width:0;margin:0 0 24px;padding:26px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 8px 24px rgba(62,43,82,.06)}legend{padding:0 10px;color:var(--p800);font-size:1.18em;font-weight:700}fieldset p{margin:0 0 17px}fieldset label{display:inline-block;margin-bottom:6px;color:#574d5e;font-weight:600}
input.textEntry,input.passwordEntry,select.dropdown,textarea.textEntry,input[type=file]{box-sizing:border-box;width:min(100%,440px);min-height:43px;padding:9px 13px;border:1px solid var(--p200);border-radius:9px;outline:0;background:#fcfbfd;color:var(--text);font:inherit;transition:border-color .2s,box-shadow .2s,background .2s}textarea.textEntry{min-height:90px;resize:vertical}select.dropdown{cursor:pointer}
input.textEntry:focus,input.passwordEntry:focus,select.dropdown:focus,textarea.textEntry:focus,input[type=file]:focus{border-color:var(--p500);background:#fff;box-shadow:0 0 0 4px rgba(126,84,160,.1)}input[type=checkbox],input[type=radio]{accent-color:var(--p600)}
input[type=submit],input[type=button],button{min-height:40px;margin:3px;padding:0 18px;border:0;border-radius:9px;background:linear-gradient(135deg,#815ba0,var(--p700));box-shadow:0 6px 14px rgba(105,67,130,.18);color:#fff;cursor:pointer;font:inherit;font-weight:700;transition:transform .15s,box-shadow .15s,filter .15s}input[type=submit]:hover,input[type=button]:hover,button:hover{filter:brightness(1.06);box-shadow:0 8px 19px rgba(105,67,130,.25);transform:translateY(-1px)}
.submitButton{margin-top:22px;padding-right:0}.failureNotification{color:var(--danger);font-size:.95em;font-weight:600}
.fieldsetPortalLateral,.fieldsetPortalPerfil,.fieldsetPortal,.fieldsetPortalPostagem,.fieldsetPortalPesquisa,.fieldsetPortalResultado{height:auto;max-width:100%}.fieldsetPortalPostagem{width:100%}.fieldsetPortalPesquisa{width:min(100%,620px)}.fieldsetPortalResultado{width:100%}.fieldsetPortalPerfil{width:190px}.fieldsetPortalLateral{width:240px}.fieldsetPortal{width:190px}
.divFlutuantesEsquerdaGrid{float:none;width:100%}.accountFoto{width:auto}.FotoAlbum,fieldset img{max-width:100%;height:auto;border-radius:11px}
table.gridsVw,table.mGrid{width:100%;margin-top:14px;border:1px solid var(--border);border-collapse:separate;border-spacing:0;border-radius:12px;background:#fff;overflow:hidden}.gridsVw th,.mGrid th{padding:13px 12px;border:0;border-bottom:1px solid #d9cde2;background:var(--p050);color:var(--p800);font-weight:700;text-align:left}.gridsVw th a,.mGrid th a{color:var(--p800);text-decoration:none}.gridsVw td,.mGrid td{padding:12px;border:0;border-bottom:1px solid #eee9f1}.gridsVw tr:last-child td,.mGrid tr:last-child td{border-bottom:0}.gridsVw tr.alt td,.mGrid tr.alt td,.gridsVw .alt td,.mGrid .alt td{background:#faf8fc}.gridsVw tr:hover td,.mGrid tr:hover td{background:#f7f2fa}.pgr td{padding:12px!important;background:var(--p050)!important}.pgr a,.pgr span{display:inline-grid;min-width:30px;height:30px;margin:2px;place-items:center;border-radius:7px;text-decoration:none}.pgr span{background:var(--p700);color:#fff}
.footer{box-sizing:border-box;width:min(1224px,calc(100% - 40px));padding:18px 20px 26px;color:var(--muted)}.footer a{color:var(--p600)}
@media(max-width:800px){.page,.footer{width:calc(100% - 24px)}.page{margin-top:12px;border-radius:15px}.header{min-height:70px}.title{float:none;padding:16px 20px}.title img{max-width:185px}.loginDisplay{min-height:0;padding:8px 20px 16px;text-align:left}.loginDisplay input[type=text]{width:min(100%,260px);margin:7px 0 0}div.menu{padding:0 10px}div.menu ul li a,div.menu ul li a:visited{padding:10px 13px}.main{padding:28px 22px 38px}.divFlutuantesEsquerda,.divFlutuantesDireita{float:none}.accountFoto{width:100%}.fieldsetPortalPerfil,.fieldsetPortalLateral,.fieldsetPortal,.fieldsetPortalPesquisa,.fieldsetPortalResultado{width:100%}.gridsVw,.mGrid{display:block;max-width:100%;overflow-x:auto;white-space:nowrap}}
@media(max-width:480px){body{font-size:13px}.page,.footer{width:calc(100% - 14px)}.main{padding:22px 14px 30px}fieldset{padding:20px 15px;border-radius:12px}input.textEntry,input.passwordEntry,select.dropdown,textarea.textEntry{width:100%!important}.submitButton{text-align:left}.submitButton input{width:100%;margin:4px 0}}

/* Correções de composição para páginas legadas da pasta Account. */
.main::after{content:"";display:block;clear:both}
.accountFoto.divFlutuantesEsquerda{box-sizing:border-box}
.accountFoto.divFlutuantesEsquerda+.accountFoto.divFlutuantesEsquerda{width:calc(100% - 220px);margin-left:20px}
.accountFoto.divFlutuantesEsquerda+.accountFoto.divFlutuantesEsquerda>.fieldsetPortalPesquisa{box-sizing:border-box;width:100%;min-width:0}
.fieldsetPortalPostagem{box-sizing:border-box;overflow-x:auto;overflow-y:hidden}
table.gridsVw,table.mGrid{display:block;box-sizing:border-box;max-width:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap;-webkit-overflow-scrolling:touch}
table.gridsVw tbody,table.mGrid tbody{min-width:100%}

@media(max-width:800px){
    .accountFoto.divFlutuantesEsquerda+.accountFoto.divFlutuantesEsquerda{width:100%;margin-left:0}
}

/* GridView padronizado: sempre ocupa o cartão, sem barra de rolagem. */
/* Filtros de listagem: colunas fluidas, sem alterar controles/postbacks. */
.purple-filters {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
    gap: 18px 20px;
    align-items: start;
    width: 100%;
}
.purple-filters > p,
.purple-filters > div,
.purple-filters > div > p {
    min-width: 0;
    margin: 0;
}
.purple-filters input.textEntry,
.purple-filters select.dropdown {
    width: 100%;
    max-width: 100%;
}
.purple-filters > p > span[style] {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100%;
    min-height: 43px;
    padding: 8px;
    border-color: var(--p200) !important;
    border-radius: 9px;
}

.fieldsetPortalPostagem{overflow:visible}
table.gridsVw,table.mGrid{
    display:table;
    width:100%!important;
    max-width:100%;
    table-layout:fixed;
    overflow:visible;
    white-space:normal;
}
table.gridsVw tbody,table.mGrid tbody{min-width:0}
.gridsVw th,.gridsVw td,.mGrid th,.mGrid td{
    box-sizing:border-box;
    min-width:0;
    white-space:normal;
    overflow-wrap:anywhere;
    word-break:normal;
}
.gridsVw .pgr td,.mGrid .pgr td{white-space:normal}

@media(max-width:800px){
    .gridsVw th,.gridsVw td,.mGrid th,.mGrid td{padding:10px 7px;font-size:.92em}
}
