/* ==========================================================================
   Autoavaliação de maturidade em governança de dados
   Estilos exclusivos da página. Tokens, .wrap, .btn, header e footer vêm
   de site.css — nada aqui redefine cor de marca.
   ========================================================================== */

.aa-hero{padding:150px 0 60px}
.aa-hero h1{
  font-size:clamp(2.1rem,4.6vw,3.4rem);font-weight:800;letter-spacing:-.025em;
  line-height:1.08;color:var(--white);max-width:16ch;margin-bottom:20px;
}
.aa-hero .lead{color:var(--txt-dim);font-size:1.12rem;max-width:56ch}

.aa-facts{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:28px 0 0}
.aa-facts li{
  font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.14em;
  font-size:11.5px;font-weight:700;color:var(--teal-soft);
  border:1px solid var(--line);border-radius:999px;padding:7px 15px;
}

.aa-note{
  margin-top:30px;padding:18px 22px;border-left:2px solid var(--teal-bright);
  background:rgba(45,212,207,.05);border-radius:0 var(--r) var(--r) 0;
  color:var(--txt-dim);max-width:60ch;
}
.aa-note strong{color:var(--white);font-weight:700}

/* ---------- dimensões ---------- */
.aa-form{padding-bottom:150px}
.aa-dim{margin-top:80px}
.aa-dim-head{
  display:flex;gap:18px;align-items:baseline;
  border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:34px;
}
.aa-dim-num{
  font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.2em;
  font-size:12px;font-weight:700;color:var(--teal-bright);flex:none;
}
.aa-dim-head h2{font-size:1.6rem;font-weight:800;color:var(--white);letter-spacing:-.015em}
.aa-dim-head p{color:var(--txt-faint);font-size:.96rem;margin-top:3px}

/* ---------- perguntas ---------- */
.aa-q{border:0;margin:0 0 38px;padding:0}
.aa-q legend{display:flex;gap:14px;padding:0;margin-bottom:16px}
.aa-q-num{
  font-family:var(--ff-mono);font-size:13px;font-weight:700;color:var(--txt-faint);
  flex:none;padding-top:4px;font-variant-numeric:tabular-nums;
}
.aa-q-text{font-size:1.12rem;font-weight:700;color:var(--white);line-height:1.4}

.aa-opts{display:flex;flex-direction:column;gap:8px;padding-left:32px}
.aa-opt{
  display:flex;gap:14px;align-items:flex-start;cursor:pointer;
  padding:14px 18px;border-radius:12px;
  background:rgba(15,32,30,.6);border:1px solid var(--line);
  transition:border-color .2s,background .2s;
}
.aa-opt:hover{border-color:var(--line-strong);background:rgba(23,48,45,.7)}
.aa-opt input{
  appearance:none;-webkit-appearance:none;margin:4px 0 0;flex:none;
  width:17px;height:17px;border-radius:50%;
  border:1.5px solid var(--txt-faint);cursor:pointer;transition:.2s;
}
.aa-opt input:checked{border:5px solid var(--teal-bright)}
.aa-opt input:focus-visible{outline:2px solid var(--teal-bright);outline-offset:3px}
.aa-opt:has(input:checked){border-color:var(--teal-bright);background:rgba(45,212,207,.08)}
.aa-opt-text{color:var(--txt-dim);line-height:1.5}
.aa-opt:has(input:checked) .aa-opt-text{color:var(--txt)}
.aa-pts{
  font-family:var(--ff-mono);font-size:12px;font-weight:700;color:var(--txt-faint);
  margin-left:auto;flex:none;padding-top:4px;font-variant-numeric:tabular-nums;
}
.aa-opt:has(input:checked) .aa-pts{color:var(--teal-bright)}

/* ---------- barra fixa ---------- */
.aa-bar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  background:rgba(7,17,15,.94);backdrop-filter:blur(14px);
  border-top:1px solid var(--line);
}
.aa-bar-track{height:2px;background:rgba(117,189,167,.12)}
.aa-bar-fill{height:100%;width:0;background:var(--teal-bright);transition:width .3s ease}
.aa-bar-inner{
  max-width:var(--maxw);margin:0 auto;padding:16px 28px;
  display:flex;align-items:center;gap:18px;
}
.aa-count{
  font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.14em;
  font-size:12px;font-weight:700;color:var(--txt-dim);
  font-variant-numeric:tabular-nums;
}
.aa-bar .btn{margin-left:auto}
.btn[disabled]{opacity:.35;pointer-events:none}

/* ---------- resultado ---------- */
.aa-result{padding:150px 0 110px}
.aa-score{
  font-size:clamp(4.6rem,13vw,8rem);font-weight:900;line-height:.92;
  letter-spacing:-.045em;color:var(--teal-bright);font-variant-numeric:tabular-nums;
  margin:14px 0 0;
}
.aa-score span{font-size:.3em;color:var(--txt-faint);font-weight:700;letter-spacing:0}
.aa-band{
  font-size:clamp(1.8rem,4vw,2.9rem);font-weight:900;color:var(--white);
  letter-spacing:-.025em;margin:18px 0 0;
}

/* medidor de faixas */
.aa-meter{margin:38px 0 0;max-width:640px}
.aa-meter-track{display:flex;gap:3px;height:11px}
.aa-meter-seg{background:rgba(117,189,167,.14);border-radius:3px}
.aa-meter-seg.on{background:var(--teal-bright);box-shadow:0 0 18px rgba(45,212,207,.5)}
.aa-meter-labels{display:flex;gap:3px;margin-top:10px}
.aa-meter-labels span{
  font-family:var(--ff-mono);font-size:11px;letter-spacing:.1em;font-weight:700;
  color:var(--txt-faint);text-align:center;
}
.aa-meter-labels span.on{color:var(--teal-bright)}

.aa-prose{margin:40px 0 0;max-width:62ch}
.aa-prose p{color:var(--txt-dim);font-size:1.06rem;margin-bottom:16px}

.aa-move{
  margin:36px 0 0;max-width:70ch;padding:26px 30px;border-radius:var(--r);
  background:linear-gradient(160deg,rgba(23,48,45,.9),rgba(13,30,28,.75));
  border:1px solid var(--line);border-left:2px solid var(--orange);
}
.aa-move h3{
  font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.2em;
  font-size:11.5px;font-weight:700;color:var(--orange);margin-bottom:12px;
}
.aa-move p{color:var(--txt);font-size:1.06rem}

.aa-sec{margin-top:80px}
.aa-sec > .kicker{margin-bottom:14px}
.aa-sec > p{color:var(--txt-dim);max-width:62ch;margin-bottom:28px}

/* barras por dimensão */
.aa-chart{max-width:680px}
.aa-row{
  position:relative;display:grid;grid-template-columns:150px 1fr 58px;
  align-items:center;gap:18px;padding:11px 0;
}
.aa-row-name{font-weight:700;color:var(--txt)}
.aa-row-track{height:10px;border-radius:3px;background:rgba(117,189,167,.12);overflow:hidden}
.aa-row-fill{
  height:100%;width:0;border-radius:0 4px 4px 0;background:var(--teal-bright);
  transition:width .6s cubic-bezier(.22,.61,.36,1);
}
.aa-row-val{
  font-family:var(--ff-mono);font-size:14px;color:var(--txt-faint);text-align:right;
  font-variant-numeric:tabular-nums;
}
.aa-row-val b{color:var(--white);font-weight:700}
.aa-tip{
  position:absolute;left:150px;bottom:calc(100% - 8px);z-index:5;
  background:var(--panel);border:1px solid var(--line-strong);color:var(--txt);
  font-size:13px;padding:8px 13px;border-radius:9px;white-space:nowrap;
  opacity:0;pointer-events:none;transition:opacity .2s;
}
.aa-row:hover .aa-tip,.aa-row:focus-within .aa-tip{opacity:1}

.aa-table{width:100%;border-collapse:collapse;max-width:760px}
.aa-table th{
  font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.16em;
  font-size:11px;font-weight:700;color:var(--teal-bright);
  text-align:left;padding:0 14px 12px 0;
}
.aa-table td{padding:13px 14px 13px 0;border-top:1px solid var(--line);color:var(--txt-dim)}
.aa-table td:first-child{color:var(--white);font-weight:700;white-space:nowrap}
.aa-table-wrap{overflow-x:auto}

.aa-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}

@media (max-width:820px){
  .sol-grid{grid-template-columns:1fr}
  .aa-row{grid-template-columns:112px 1fr 50px;gap:12px}
  .aa-tip{left:0}
}
@media (max-width:560px){
  .aa-hero{padding:120px 0 40px}
  .aa-opts{padding-left:0}
}
@media (prefers-reduced-motion:reduce){
  .aa-row-fill,.aa-bar-fill,.aa-opt{transition:none}
}
@media print{
  .aa-bar,.aa-actions,header,footer,body::before,body::after{display:none !important}
  body{background:#fff;color:#000}
  .aa-result{padding:0}
  .aa-score,.aa-band,.aa-row-val b,.aa-table td:first-child{color:#000}
  .aa-prose p,.aa-table td{color:#333}
}
