/* ============================================
   PAINEL DA REFORMA TRIBUTÁRIA — estilos próprios
   Usa os tokens do styles.css; todas as classes têm prefixo rt-
   ============================================ */
:root{
  --stage-on:#0C447C; --stage-done:#1D9E75; --stage-off:#d3dce6;
  --header-h:76px;
}
@media (prefers-color-scheme: dark){
  :root{--stage-on:#5b9be0; --stage-done:#2fc28f; --stage-off:#21395a;}
}
@media (max-width:900px){ :root{--header-h:68px;} }

.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;}

/* ---------- hero do painel ---------- */
.rt-hero-wrap{padding-block:56px 0;}
.rt-stamp{font-family:var(--mono);font-size:12px;color:var(--on-navy-muted);}
.rt-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px;padding-block:20px 36px;align-items:end;}
.rt-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--green-bright);margin-bottom:14px;}
.rt-hero h1{font-size:clamp(32px,5vw,56px);font-weight:600;letter-spacing:-.03em;color:var(--on-navy);}
.rt-hero h1 span{color:var(--green-bright);}
.rt-hero p{color:var(--on-navy-muted);max-width:52ch;margin:16px 0 0;font-size:16px;}
.rt-keyfacts{border-left:1px solid rgba(255,255,255,.18);}
.rt-kf{padding:10px 0 10px 20px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:baseline;border-top:1px solid rgba(255,255,255,.1);}
.rt-kf:first-child{border-top:0;}
.rt-kf b{font-family:var(--display);font-weight:600;font-size:24px;color:var(--on-navy);white-space:nowrap;}
.rt-kf span{font-size:13px;color:var(--on-navy-muted);}

.rt-score{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--on-navy-line);}
.rt-sc{all:unset;cursor:pointer;padding:18px 18px 20px;border-left:1px solid var(--on-navy-line);display:grid;gap:8px;transition:background .15s;}
.rt-sc:first-child{border-left:0;padding-left:0;}
.rt-sc:hover{background:rgba(255,255,255,.04);}
.rt-sc:focus-visible{outline:2px solid var(--green);outline-offset:-2px;}
.rt-sc[aria-pressed="true"]{background:rgba(29,158,117,.16);}
.rt-sc .n{font-family:var(--display);font-size:38px;font-weight:600;line-height:1;color:var(--on-navy);}
.rt-sc .lb{font-weight:600;font-size:14px;}
.rt-sc .ds{font-size:12px;color:var(--on-navy-muted);}
.rt-meter{display:flex;gap:3px;}
.rt-meter i{height:4px;flex:1;border-radius:1px;background:rgba(255,255,255,.18);}
.rt-meter i.on{background:var(--on-navy);}
.rt-meter i.done{background:var(--green);}

/* ---------- seções ---------- */
.rt-section{padding-block:44px 8px;}
.rt-sh{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.rt-sh h2{font-size:clamp(22px,3vw,28px);font-weight:600;color:var(--title);}
.rt-sh .aside{font-size:13px;color:var(--muted);}

/* pauta */
.rt-pauta{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.rt-pt{background:var(--surface);padding:14px 16px;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start;}
.rt-pt .dd{font-family:var(--display);font-size:30px;font-weight:600;line-height:1;color:var(--title);grid-row:span 2;min-width:44px;}
.rt-pt .dd small{display:block;font-family:var(--mono);font-size:11px;font-weight:400;color:var(--muted);text-transform:uppercase;margin-top:4px;letter-spacing:.06em;}
.rt-pt .tt{font-weight:600;font-size:14px;line-height:1.35;}
.rt-pt .ss{font-size:12px;color:var(--muted);}
.rt-pt .cd{grid-column:2;font-family:var(--mono);font-size:11px;color:var(--green);font-weight:500;}
.rt-pt.past{opacity:.5;}
.rt-pt.past .cd{color:var(--muted);}

/* filtros */
.rt-filters{position:sticky;top:var(--header-h);z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding-block:12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.rt-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1 1 420px;min-width:0;}
.rt-chip{all:unset;cursor:pointer;font-family:var(--mono);font-size:12px;padding:5px 10px;border-radius:4px;border:1px solid var(--line);background:var(--surface);color:var(--fg);}
.rt-chip:hover{border-color:var(--title);}
.rt-chip:focus-visible{outline:2px solid var(--green);outline-offset:2px;}
.rt-chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff;}
.rt-search{flex:0 1 280px;min-width:0;font:inherit;font-size:14px;padding:8px 12px;border-radius:4px;border:1px solid var(--line);background:var(--surface);color:var(--fg);}
.rt-count{font-family:var(--mono);font-size:12px;color:var(--muted);}

/* grupos */
.rt-group{padding-top:28px;}
.rt-gh{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;margin-bottom:14px;}
.rt-gh .rt-meter{width:96px;}
.rt-gh .rt-meter i{background:var(--stage-off);height:5px;}
.rt-gh .rt-meter i.on{background:var(--stage-on);}
.rt-gh .rt-meter i.done{background:var(--stage-done);}
.rt-gh h3{font-size:20px;font-weight:600;color:var(--fg);}
.rt-gh h3 small{font-family:var(--body);font-weight:400;font-size:14px;color:var(--muted);margin-left:8px;}
.rt-gh .gn{font-family:var(--mono);font-size:12px;color:var(--muted);}
.rt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;align-items:start;}

.rt-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:18px 18px 14px;display:grid;gap:10px;min-width:0;transition:border-color .15s;}
.rt-card:hover{border-color:var(--title);}
.rt-card .row1{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;}
.rt-card h4{font-family:var(--display);font-size:21px;font-weight:600;color:var(--title);margin:0;line-height:1.15;}
.rt-card .sub{font-weight:600;font-size:14px;margin-top:-6px;}
.rt-card p{margin:0;font-size:14px;color:var(--fg);}
.rt-trk{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;}
.rt-trk span{display:grid;gap:4px;font-family:var(--mono);font-size:10px;color:var(--muted);}
.rt-trk span::before{content:"";height:3px;background:var(--stage-off);border-radius:1px;}
.rt-trk span.on::before{background:var(--stage-on);}
.rt-trk span.done::before{background:var(--stage-done);}
.rt-trk span.cur{color:var(--fg);font-weight:500;}
.rt-tribs{font-family:var(--mono);font-size:11px;color:var(--muted);}
.rt-tribs b{color:var(--green);font-weight:500;}
.rt-card details{border-top:1px solid var(--line);padding-top:10px;}
.rt-card summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--title);list-style:none;display:flex;justify-content:space-between;}
.rt-card summary::-webkit-details-marker{display:none;}
.rt-card summary::after{content:"+";font-family:var(--mono);font-weight:400;}
.rt-card details[open] summary::after{content:"−";}
.rt-box{display:grid;gap:12px;margin-top:12px;font-size:14px;}
.rt-box h5{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:0 0 3px;}
.rt-box ul{margin:0;padding-left:18px;display:grid;gap:3px;list-style:disc;}
.rt-box .tip{background:var(--green-soft);border-radius:4px;padding:10px 12px;}
.rt-box .tip h5{color:var(--green);}
.rt-box a{color:var(--title);text-decoration:underline;text-underline-offset:2px;}
.rt-empty{padding:40px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:6px;margin-top:24px;}

/* simulador */
.rt-sim{background:var(--navy-deep);color:var(--on-navy);border-radius:8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;}
.rt-sim-form{padding:26px;display:grid;gap:14px;align-content:start;}
.rt-sim-form h3{font-size:20px;font-weight:600;color:var(--on-navy);}
.rt-sim-form p{margin:0;font-size:13px;color:var(--on-navy-muted);}
.rt-sim label{display:grid;gap:5px;font-size:12px;font-family:var(--mono);color:var(--on-navy-muted);text-transform:uppercase;letter-spacing:.05em;}
.rt-sim input,.rt-sim select{font-family:var(--body);text-transform:none;letter-spacing:0;font-size:15px;color:#fff;padding:10px 12px;border-radius:4px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);width:100%;}
.rt-sim select option{color:#0d1f33;}
.rt-sim-out{background:rgba(255,255,255,.05);padding:26px;display:grid;gap:10px;align-content:start;border-left:1px solid rgba(255,255,255,.1);}
.rt-sim-out .lb{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--on-navy-muted);}
.rt-sim-out .big{font-family:var(--display);font-size:44px;font-weight:600;color:var(--green-bright);line-height:1;}
.rt-ln{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding-block:6px;border-top:1px solid rgba(255,255,255,.1);}
.rt-ln b{font-family:var(--mono);font-weight:500;}
.rt-sim-out .note{font-size:12px;color:var(--on-navy-muted);margin:6px 0 0;}

/* gráfico */
.rt-chart{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:20px 20px 8px;}
.rt-legend{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;margin-bottom:8px;}
.rt-legend span{display:flex;align-items:center;gap:6px;}
.rt-legend i{width:16px;height:3px;border-radius:2px;}
.rt-chart svg{width:100%;height:auto;display:block;}
.rt-chart svg text{font-family:var(--mono);font-size:11px;fill:var(--muted);}
.rt-years{overflow-x:auto;margin-top:12px;}
.rt-years-in{display:grid;grid-template-columns:repeat(8,minmax(128px,1fr));min-width:1024px;border-top:1px solid var(--line);}
.rt-yr{padding:14px 12px 4px;border-left:1px solid var(--line);font-size:13px;}
.rt-yr:first-child{border-left:0;padding-left:0;}
.rt-yr h4{font-family:var(--display);font-size:18px;color:var(--title);margin:0 0 6px;}
.rt-yr.now h4::after{content:"agora";font-family:var(--mono);font-size:10px;font-weight:500;color:#fff;background:var(--green);padding:1px 6px;border-radius:3px;margin-left:8px;vertical-align:middle;}
.rt-yr ul{margin:0;padding-left:15px;display:grid;gap:3px;color:var(--fg);list-style:disc;}

/* mito ou verdade */
.rt-mv{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;}
.rt-mvi{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:16px 18px;display:grid;gap:6px;}
.rt-vd{justify-self:start;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:3px;color:#fff;}
.rt-vd.m{background:var(--navy);}
.rt-vd.v{background:var(--green);}
.rt-mvi h4{font-family:var(--display);font-size:17px;font-weight:600;margin:2px 0 0;color:var(--fg);}
.rt-mvi p{margin:0;font-size:14px;color:var(--muted);}

.rt-disclaimer{font-size:13px;color:var(--muted);padding-block:40px 64px;max-width:70ch;}

@media (max-width:860px){
  .rt-hero{grid-template-columns:1fr;gap:28px;}
  .rt-score{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rt-sc:nth-child(3){border-left:0;padding-left:0;}
  .rt-sc:nth-child(n+3){border-top:1px solid var(--on-navy-line);}
  .rt-sim{grid-template-columns:1fr;}
  .rt-sim-out{border-left:0;border-top:1px solid rgba(255,255,255,.1);}
}
@media (max-width:520px){
  .rt-grid,.rt-mv{grid-template-columns:1fr;}
  .rt-gh{grid-template-columns:1fr auto;}
  .rt-gh .rt-meter{display:none;}
  .rt-filters{position:static;}
}
