:root{--bg:#051525;--card:#0a2238;--line:#174361;--aqua:#36cafa;--text:#f3faff;--muted:#a8c5d9}*{box-sizing:border-box}body{font:15px/1.55 system-ui,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--text);margin:0}a{color:var(--aqua)}.hero{background:linear-gradient(118deg,#061324ed,#08243add),radial-gradient(ellipse at 75% 20%,#15669d,#031221 60%);padding:32px max(24px,5vw);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:flex-end;gap:.12em;font-size:clamp(40px,7vw,76px);font-weight:900;letter-spacing:-.065em;line-height:1}.brand-afa{display:inline-block;color:#eef4f8;text-shadow:0 1px 0 #8aa2b5,0 0 14px rgba(255,255,255,.08);letter-spacing:-.075em}.brand-30{display:inline-block;background:linear-gradient(180deg,#57dbff 0%,#1ec1f8 55%,#0ca4ec 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 20px rgba(32,191,243,.14)}.tag{letter-spacing:.12em;font-size:13px;margin-top:6px}.small{color:var(--muted);font-size:13px}.wrap{width:min(1440px,96%);margin:22px auto}.topnav{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:0 0 18px}.topnav a{font-size:13px}.topnav form{margin-left:auto}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.card{background:linear-gradient(135deg,#0b263e,#071b2d);border:1px solid var(--line);border-radius:9px;padding:22px;min-width:0}.card h2{font-size:16px;margin:0 0 12px}.card strong.big{font-size:34px;color:var(--aqua)}.wide{grid-column:span 2}.full{grid-column:1/-1}h1{font-size:30px}h2{font-size:19px}.label{font-weight:700;font-size:13px;color:#c2e1f4}.formbox{max-width:610px;margin:30px auto}.fields{display:grid;gap:13px}.fields label{display:grid;gap:5px}.fields input:not([type=checkbox]){width:100%;padding:12px;border:1px solid #6790ab;border-radius:5px;background:#fff;color:#071d31;font:inherit}.checkbox{display:flex;gap:10px;align-items:flex-start}.checkbox input{margin-top:5px;accent-color:var(--aqua)}button,.btn{background:#0586c3;border:1px solid #39bded;border-radius:6px;color:#fff;padding:10px 15px;font:700 14px system-ui;cursor:pointer;text-decoration:none;display:inline-block}button.alt,.btn.alt{background:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #62d5ff}.alert{padding:12px 15px;border-radius:6px;background:#283e55;margin:12px 0}.alert.error{background:#62232e}.alert.success{background:#155646}.alert.warning{background:#634919}.percent{background:#173951;height:11px;border-radius:7px;overflow:hidden}.percent div{background:linear-gradient(90deg,#028fd7,#1ed8b5);height:100%}.area{display:grid;grid-template-columns:minmax(150px,1.5fr) minmax(70px,1fr) 40px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #173b56;font-size:13px}.muted{color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}td{overflow-wrap:anywhere}.report th{background:#123c59}header.printhead{display:flex;justify-content:space-between;gap:20px;align-items:center}.notes{border-left:3px solid var(--aqua);padding-left:12px;color:#d0e4ee}.value{white-space:pre-wrap;overflow-wrap:anywhere}.item{padding:10px;border-bottom:1px solid var(--line)}@media(max-width:920px){.grid{grid-template-columns:1fr 1fr}.wide{grid-column:span 2}}@media(max-width:620px){.grid{grid-template-columns:1fr}.wide{grid-column:span 1}.hero{padding:25px}.area{grid-template-columns:1fr 100px 35px}.card{padding:16px}}@media print{body{background:white;color:#172a3a}.hero,.topnav,.noprint,button{display:none!important}.card{color:#172a3a;background:white;border:1px solid #aaa;break-inside:avoid}.wrap{width:100%;margin:0}.grid{display:block}.card{margin:12px 0}.muted,.small{color:#345}.report th{background:#deeaf1;color:#123}.percent div{background:#888}a{color:#123}}

.brand-lockup{gap:.14em;align-items:flex-end;flex-wrap:wrap}.brand-logo{height:clamp(44px,7vw,82px);width:auto;display:block;filter:drop-shadow(0 0 12px rgba(255,255,255,.06))}.brand-30{display:inline-block;background:linear-gradient(180deg,#57dbff 0%,#1ec1f8 55%,#0ca4ec 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 20px rgba(32,191,243,.14)}@media(max-width:620px){.brand-logo{height:clamp(38px,12vw,64px)}}

/* Logo AFA com fundo transparente: sem moldura, margens ou sombra adicional */
.brand-logo{filter:none;object-fit:contain}

/* Correção do logótipo AFA30 — respeitar imagem original e evitar cortes */
.brand.brand-lockup{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start;gap:14px;max-width:100%;line-height:1.2;letter-spacing:0;overflow:visible;padding:6px 12px 9px 0}
.brand.brand-lockup .brand-logo{display:block;flex:0 1 auto;width:auto;height:clamp(46px,6.3vw,80px);max-width:65%;object-fit:contain;filter:none}
.brand.brand-lockup .brand-30{flex:0 0 auto;display:block;font-size:clamp(45px,6.3vw,80px);font-weight:900;line-height:1.15;letter-spacing:-.025em;white-space:nowrap;padding:1px 10px 6px 0;background:linear-gradient(180deg,#4ce0ff,#14b9f6 58%,#078cdb);background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none;overflow:visible}
@media(max-width:480px){.brand.brand-lockup{gap:8px;padding-right:3px}.brand.brand-lockup .brand-logo{max-width:66%;height:auto;max-height:64px}.brand.brand-lockup .brand-30{font-size:clamp(38px,12vw,62px);padding-right:5px}}

/* Relatório institucional: superfície clara e separação entre recolha e análise. */
.report-document{background:#edf3f7;padding:24px;border-radius:12px;color:#173249;max-width:1120px;margin:auto}.report-document .card{background:white;border:1px solid #d7e4ec;color:#173249;border-radius:8px;padding:28px}.report-document .small,.report-document .muted{color:#526d80}.report-cover{border-top:6px solid #00c7e7!important}.report-cover h1{font-size:36px;line-height:1.2;color:#092a43;margin:12px 0}.report-subtitle{font-size:16px;color:#526d80}.report-document .notes{background:#f0f7fa;padding:14px 18px;color:#365569;font-size:13px;line-height:1.7}.document-status{display:inline-block;background:#ddf6fa;color:#006d85;border:1px solid #98deea;border-radius:5px;padding:8px 12px;font-size:11px;font-weight:800;letter-spacing:1px}.report-document .grid{grid-template-columns:2fr 1fr}.report-document .wide{grid-column:auto}.report-document h2{font-size:20px;color:#092a43}.report-document .percent{background:#e5eef4;height:6px}.report-document .percent div{background:#079fbe}.report-document .area{border-color:#e1eaf0}.report-document .report-area{margin:32px 0 16px;border-bottom:3px solid #00bcd6;padding:12px 0;color:#092a43;font-size:20px}.report-document table th{background:#eef5f8;color:#173249;font-size:12px}.report-document table td{border-color:#dfe9ee;padding:14px 12px;line-height:1.7}.report-document .question-heading th{background:#092d47;color:white;font-size:14px;line-height:1.7;padding:14px}.report-document .report td:first-child{color:#4b667a;font-size:12px;width:30%}.report-footer{text-align:center;font-size:11px;color:#526d80;line-height:1.8;border-top:1px solid #cbdde7;margin-top:28px;padding-top:18px}.report-document a{color:#007a9b}@media(max-width:700px){.report-document{padding:10px}.report-document .card{padding:18px}.report-document .grid{grid-template-columns:1fr}.report-cover h1{font-size:28px}.report-document .printhead{display:block}.report-document table{table-layout:fixed}}@media print{@page{size:A4;margin:15mm}.report-document{background:white;padding:0}.report-document .card{break-inside:auto;border:0;padding:14px 0}.report-document .report-cover{border-top:5px solid #00c7e7!important}.report-document .grid{display:block}.report-document tr{break-inside:avoid}.report-document .question-heading{break-after:avoid}.report-document h2,.report-document h3{break-after:avoid}.report-document .question-heading th{background:#edf5f8;color:#092d47}.report-document .report{margin-top:0!important}.report-document{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
/* SCORE / REVIEW */
.af-fieldset{border:0;padding:0;margin:0;min-width:0}.af-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.af-field{display:flex;flex-direction:column;gap:7px;margin:10px 0;font-size:13px;font-weight:600}.af-field input,.af-field select,.af-field textarea{font:14px/1.6 system-ui;background:#fff;color:#12344b;border:1px solid #7295aa;border-radius:6px;padding:10px;width:100%;min-width:0}.af-field textarea{resize:vertical}.af-record{padding:20px;margin:18px 0;border:1px solid #2a526c;border-left:3px solid #1bc9e8;border-radius:8px}.af-section{margin:20px 0}.af-actions{padding:20px;background:#092a43;position:sticky;bottom:0;border-top:2px solid #00bddc;z-index:2}.af-actions button{margin:4px}.af-scorecard{max-width:1250px;margin:auto;background:#061827;border-radius:12px;overflow:hidden}.af-card-hero{padding:36px;background:linear-gradient(120deg,#051827,#103e56);border-top:6px solid #00cce7}.af-card-hero h1{font-size:clamp(30px,5vw,54px);margin:14px 0}.af-card-hero h1 span{color:#55d9f5}.af-meta{display:flex;flex-wrap:wrap;gap:20px;background:#fff;color:#183c52;padding:18px;border-radius:8px;margin-top:24px}.af-card-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:14px}.af-panel{background:#f7fafc;color:#143249;border-radius:9px;padding:24px;margin-bottom:14px;border:1px solid #d4e1e9}.af-panel h2{font-size:22px;color:#092b45;margin:0 0 12px}.af-panel h3{font-size:16px}.af-panel p{font-size:14px;line-height:1.7}.af-panel a{color:#007594}.af-panel .small,.af-panel small{color:#4d6c80}.af-score{font-size:64px;line-height:1.4;font-weight:800;color:#062b46}.af-score small{font-size:24px}.af-trust{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.af-trust div{padding:14px;background:white;border:1px solid #dce8ee;border-radius:6px}.af-trust b,.af-trust span{display:block}.af-trust span{font-size:12px;margin-top:6px}.af-critical{border-left:4px solid #15829a;background:#e6f2f6;padding:14px;font-weight:700}.af-critical.critical{background:#fff0ef;border-color:#e1423c;color:#9a251f}.af-critical.attention{background:#fff5d9;border-color:#e9a500;color:#715200}.af-domain{margin:20px 0}.af-domain>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:13px}.af-bar{height:9px;background:#deebf1;margin:8px 0;border-radius:6px;overflow:hidden}.af-bar i{display:block;height:100%;background:linear-gradient(90deg,#0695b0,#29c9e5)}.af-finding{background:white;border:1px solid #d6e4eb;border-radius:7px;padding:16px;margin:12px 0;overflow-wrap:anywhere}.af-card-footer{text-align:center;padding:26px;color:white;font-size:19px}.af-card-footer small{font-size:12px;color:#bed7e5}.af-warning{padding:16px;background:#fff0bd;color:#624b0d;font-weight:700}.af-panel .value{white-space:pre-wrap}@media(max-width:760px){.af-card-columns,.af-fields{grid-template-columns:1fr}.af-card-hero{padding:24px}.af-panel{padding:18px}.af-actions{position:static}}@media print{.af-scorecard{background:white}.af-card-hero{color:#0a2c44;background:white}.af-card-hero .small{color:#345}.af-card-columns{display:block;padding:0}.af-panel{break-inside:auto;border:0;border-top:2px solid #00bddc}.af-finding,.af-domain{break-inside:avoid}.af-card-footer{color:#12344b}.af-card-footer small{color:#345}.af-actions{display:none}.af-panel h2,.af-panel h3{break-after:avoid}.af-scorecard{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Compact AFA30 branding: 50% of the previous rendered dimensions. */
.hero .brand.brand-lockup{font-size:clamp(20px,3.5vw,38px);gap:7px;padding:3px 6px 4.5px 0}
.hero .brand.brand-lockup .brand-logo{height:clamp(23px,3.15vw,40px);width:auto;max-width:65%;max-height:none}
.hero .brand.brand-lockup .brand-30{font-size:clamp(22.5px,3.15vw,40px);padding:.5px 5px 3px 0}
.hero{padding-top:20px;padding-bottom:20px}
@media(max-width:480px){.hero .brand.brand-lockup{gap:4px;padding-right:1.5px}.hero .brand.brand-lockup .brand-logo{height:auto;max-height:32px;max-width:33%}.hero .brand.brand-lockup .brand-30{font-size:clamp(19px,6vw,31px);padding-right:2.5px}}
button.danger,.btn.danger{background:#8b2939;border-color:#e77986;color:#fff}
.deletion-confirmation ul{padding-left:22px}.deletion-confirmation li{margin:8px 0}
