*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:#1d2740;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}a{color:#2457ba}a:hover{text-decoration:underline}.top{background:#142640;color:white;padding:18px max(5%,calc((100% - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{color:#fff;text-decoration:none;font-weight:900;font-size:22px;letter-spacing:.06em}.brand span{color:#78d7c8}.top nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.top nav a,.link{color:white;font:inherit}.inline{display:inline}.link{background:transparent;border:0;cursor:pointer}.navbtn,.btn{background:#136cbd!important;color:white!important;padding:11px 18px;border:0;border-radius:10px;text-decoration:none;display:inline-block;cursor:pointer;font:inherit}main{max-width:1100px;margin:42px auto;padding:0 20px;min-height:65vh}h1{font-size:32px;margin:0 0 22px}h2{font-size:20px}.hero{padding:45px;border-radius:22px;background:white;box-shadow:0 5px 25px #12254112}.panel{max-width:480px;background:white;border:1px solid #e4e7ee;padding:25px;border-radius:16px;box-shadow:0 4px 18px #00000008}.grid{display:flex;flex-wrap:wrap;gap:20px}.grid .panel{width:min(100%,340px)}label{display:block;font-weight:600;margin:0 0 17px}input{display:block;width:100%;padding:12px;border:1px solid #bec8d6;border-radius:9px;font:inherit;margin-top:6px}input:focus{outline:2px solid #136cbd}.notice{background:#e5f7ef;border:1px solid #b0dec6;border-radius:10px;padding:12px 16px;margin-bottom:20px}footer{text-align:center;padding:25px;color:#64748b}@media(max-width:540px){.top{padding:14px;align-items:flex-start;flex-direction:column}main{margin-top:22px}h1{font-size:26px}.hero{padding:24px}}
/* v0.3: campos de senha */
.password-field{position:relative;margin-bottom:4px}.password-field input{margin-top:0;padding-right:94px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:#eaf1f8;color:#133352;padding:7px 10px;border-radius:7px;cursor:pointer;font:600 13px system-ui}.password-toggle:focus-visible{outline:2px solid #136cbd;outline-offset:2px}.password-info{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin:3px 0 20px;font-size:12px;color:#64748b}.password-info .valid{color:#16704e}form.panel>label:not([for]){margin-bottom:18px}form.panel>label[for]{margin-bottom:6px}form.panel>label[for]+.password-field{margin-bottom:4px}

/* v0.4 - menu sem sublinhado, hover e destaque acessivel */
.top nav{gap:7px}.top nav a,.top nav button{border-radius:9px;text-decoration:none!important;padding:9px 13px;transition:background-color .15s,color .15s;line-height:1.3}
.top nav a:hover,.top nav button:hover{background:#294763;color:#9cf1df!important;text-decoration:none!important}
.top nav a:focus-visible,.top nav button:focus-visible{outline:2px solid #8fe9d8;outline-offset:2px}
.top nav .navbtn{padding:10px 17px;background:#136cbd!important;color:#fff!important}
.top nav .navbtn:hover{background:#2086d4!important;color:#fff!important}
.top nav .active{background:#2b4765;color:#9cf1df!important}
.top nav .inline{display:inline-flex}.top nav .link{font-size:16px}
.panel.wide{max-width:100%;margin:20px 0}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.btn.small{font-size:13px;padding:8px 12px}.btn.secondary{background:#dce9f4!important;color:#153557!important}
.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;font-size:14px}th{background:#f1f5fa}
.member-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.member-form input,.member-form select{width:auto;margin:0}.member-form select{min-width:100px}
select{display:block;width:100%;padding:12px;border:1px solid #bec8d6;border-radius:9px;background:white;font:inherit;margin-top:6px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:15px}.two-cols input[type=color]{height:52px;padding:4px;cursor:pointer}.logo-preview{max-width:220px;max-height:120px;object-fit:contain;margin:5px 0 15px}.muted{color:#64748b;font-size:13px}
@media(max-width:600px){.two-cols{grid-template-columns:1fr}.top nav{gap:3px}.top nav a,.top nav button{padding:8px}}

/* v0.5.1 - rodapé na base, preservando largura e cards lado a lado */
html{min-height:100%}
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
main{width:100%;max-width:1100px;flex:1 0 auto;margin:42px auto 0;padding:0 20px;min-height:0}
footer{flex-shrink:0;margin-top:auto;padding:20px 15px;text-align:center}
/* Link de retorno com o mesmo padrão visual limpo dos menus */
main a[href*="page=dashboard"]{text-decoration:none;border-radius:7px;padding:5px 8px;margin-left:-8px;transition:background-color .15s,color .15s}
main a[href*="page=dashboard"]:hover{background:#e1eaf6;color:#133b6b;text-decoration:none}
main a[href*="page=dashboard"]:focus-visible{outline:2px solid #136cbd;outline-offset:2px}
@media(max-width:540px){main{margin-top:22px}}
