/* HBR Forms · folha de estilos do inquérito público */
:root{--paper:#F2F5F9;--sheet:#fff;--ink:#0A1F3D;--azulejo:#1E4FA3;--sinal:#FF4D00;--ardosia:#5A6B84;--line:#D8E0EC;--line-soft:#E6EBF2;--serif:"Fraunces",Georgia,serif;--sans:"Archivo",-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}
header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}
.topbar{max-width:1080px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:14px}
.logo{height:42px;display:flex;align-items:center;flex-shrink:0}.logo img{height:34px;width:auto;display:block}
.brand{font-weight:600;font-size:14px;line-height:1.35}.brand small{display:block;font-weight:400;color:var(--ardosia);font-size:12.5px}
.progress-wrap{flex:1;height:3px;background:var(--line-soft);overflow:hidden}.progress{height:100%;width:0%;background:var(--sinal);transition:width .4s ease}
.counter{font-size:13px;color:var(--ardosia);white-space:nowrap;min-width:120px;text-align:right}
main{flex:1;display:flex;justify-content:center;padding:40px 20px 72px}
.layout{display:flex;gap:40px;width:100%;max-width:1080px;align-items:flex-start}
.rail{display:none;width:210px;flex-shrink:0;position:sticky;top:92px}
.rail p{font-size:13px;color:var(--ardosia);margin:0 0 12px;line-height:1.5}
.rail ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}
.rail li{padding:7px 0 7px 16px;font-size:13.5px;color:var(--ardosia);position:relative}
.rail li.current{color:var(--ink);font-weight:700}
.rail li.current::before{content:"";position:absolute;left:-2px;top:6px;bottom:6px;width:3px;background:var(--sinal)}
.rail li.done{color:var(--azulejo)}
@media(min-width:1020px){.rail{display:block}}
.stage{width:100%;max-width:660px}
.sheet{background:var(--sheet);border:1px solid var(--line);border-top:4px solid var(--ink);padding:48px 48px 40px;min-height:420px}
.sheet.enter{animation:sheetIn .5s cubic-bezier(.2,.8,.2,1)} @keyframes sheetIn{from{opacity:0}to{opacity:1}}
.section-note{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--azulejo);margin-bottom:18px}
.section-note::before{content:"";width:10px;height:10px;background:var(--sinal);flex-shrink:0}
h1{font-family:var(--serif);font-weight:600;font-size:40px;line-height:1.08;margin:0 0 16px;max-width:18ch}
h2.q{font-family:var(--serif);font-weight:600;font-size:29px;line-height:1.22;margin:0 0 10px;max-width:26ch}
h2.q .num{color:var(--ardosia);font-family:var(--sans);font-weight:500;font-size:15px;display:block;margin-bottom:10px}
.desc{color:#2B3A52;font-size:16.5px;line-height:1.65;max-width:62ch}
.hint{color:var(--ardosia);font-size:14px;margin-top:10px;line-height:1.55;max-width:62ch}
.field{margin-top:26px}
input[type=text],textarea{width:100%;font-size:17px;padding:14px 4px;border:none;border-bottom:2px solid var(--line);background:transparent;outline:none;font-family:var(--serif);color:var(--ink);border-radius:0}
input[type=text]:focus{border-bottom-color:var(--sinal)}
input[type=text]::placeholder,textarea::placeholder{color:#9AA7BB;font-family:var(--sans);font-size:15px}
textarea{min-height:120px;resize:vertical;line-height:1.6;border:1px solid var(--line);padding:14px 16px}
textarea:focus{border-color:var(--sinal);outline:none}
.opts{display:flex;flex-direction:column;margin-top:26px;border-top:1px solid var(--line)}
.opt{display:flex;align-items:center;gap:14px;text-align:left;border:none;border-bottom:1px solid var(--line);background:transparent;padding:16px 12px 16px 16px;font-size:16px;cursor:pointer;width:100%;font-family:var(--sans);color:var(--ink);position:relative}
.opt:hover{background:#F7F9FC}.opt.selected{background:#FFF4ED}
.opt.selected::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sinal)}
.opt .key{min-width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);font-size:12.5px;font-weight:600;color:var(--ardosia);flex-shrink:0}
.opt.selected .key{background:var(--ink);color:#fff;border-color:var(--ink)}
.opt .check{min-width:22px;height:22px;border:1.5px solid var(--ardosia);display:grid;place-items:center;background:#fff;font-size:14px;font-weight:700;flex-shrink:0;color:transparent}
.opt.selected .check{background:var(--ink);border-color:var(--ink);color:#fff}
.other-input{margin:0;display:none;border-bottom:1px solid var(--line);padding:4px 16px 12px}
.other-input.show{display:block}
.scale-row{display:flex;margin-top:26px;border:1px solid var(--line)}
.scale-btn{flex:1;min-width:0;padding:18px 6px 14px;border:none;border-right:1px solid var(--line);background:#fff;cursor:pointer;text-align:center;font-family:var(--sans);color:var(--ink)}
.scale-btn:last-child{border-right:none}
.scale-btn strong{display:block;font-family:var(--serif);font-size:26px;font-weight:600}
.scale-btn span{font-size:11px;color:var(--ardosia);line-height:1.35;display:block;margin-top:6px}
.scale-btn:hover{background:#F7F9FC}.scale-btn.selected{background:var(--ink);color:#fff}.scale-btn.selected span{color:#B9C6D8}
.nps-wrap{margin-top:26px}.nps-grid{display:flex;border:1px solid var(--line)}
.nps-btn{flex:1;min-width:0;padding:14px 0;border:none;border-right:1px solid var(--line);background:#fff;font-weight:600;font-size:15px;cursor:pointer;font-family:var(--sans);color:var(--ink)}
.nps-btn:last-child{border-right:none}.nps-btn:hover{background:#F7F9FC}.nps-btn.selected{background:var(--sinal);color:#fff}
.nps-scale{display:flex;border:1px solid var(--line);border-top:none}
.nps-scale span{flex:1;font-size:11.5px;color:var(--ardosia);padding:8px 10px;line-height:1.4}
.nps-scale span:last-child{text-align:right}
.matrix{margin-top:24px;border-top:1px solid var(--line)}
.m-row{border-bottom:1px solid var(--line);padding:16px 4px}
.m-row.done{background:#FFF4ED}
.m-title{font-weight:600;font-size:15.5px;margin-bottom:12px}
.m-btns{display:flex;border:1px solid var(--line);max-width:420px}
.m-btn{flex:1;padding:10px 0;border:none;border-right:1px solid var(--line);background:#fff;font-weight:600;cursor:pointer;font-family:var(--sans);font-size:14px;color:var(--ink)}
.m-btn:last-child{border-right:none}.m-btn:hover{background:#F7F9FC}.m-btn.selected{background:var(--ink);color:#fff}
.nav{display:flex;gap:8px;margin-top:36px;padding-top:24px;border-top:1px solid var(--line);align-items:center}
.btn{border:1px solid var(--ink);padding:14px 28px;font-size:15px;font-weight:600;cursor:pointer;font-family:var(--sans);display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--ink)}
.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:var(--azulejo);border-color:var(--azulejo)}
.btn-ghost{background:transparent;color:var(--ardosia);border-color:transparent}
.btn-ghost:hover{color:var(--ink);border-color:var(--line)}
.btn:focus-visible,.opt:focus-visible,.scale-btn:focus-visible,.nps-btn:focus-visible,.m-btn:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--sinal);outline-offset:2px}
.error{display:none;margin-top:16px;border-left:3px solid #B42318;background:#FEF3F2;color:#7A271A;padding:12px 16px;font-size:14px;line-height:1.5}
.error.show{display:block}
.kbd-hint{margin-left:auto;font-size:12.5px;color:var(--ardosia)}
kbd{background:#fff;border:1px solid var(--line);padding:2px 7px;font-size:12px;font-family:var(--sans)}
.banner{margin:-48px -48px 26px}.banner img{display:block;width:100%;height:auto;max-height:230px;object-fit:cover}
.ink-panel{background:var(--ink);color:#fff;padding:32px 30px;margin:26px 0}
.ink-panel h3{font-family:var(--serif);font-weight:600;font-size:21px;margin:0 0 10px}
.ink-panel p{margin:0;color:#C7D2E3;line-height:1.65;font-size:15px;max-width:58ch}.ink-panel strong{color:#fff}
.facts{margin:22px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.facts li{display:flex;justify-content:space-between;gap:16px;padding:11px 2px;border-bottom:1px solid var(--line-soft);font-size:14.5px}
.facts li span:first-child{color:var(--ardosia)}.facts li span:last-child{font-weight:600;text-align:right}
footer{max-width:1080px;margin:0 auto;padding:0 24px 32px;color:var(--ardosia);font-size:12.5px;line-height:1.7}
footer strong{color:var(--ink)}
@media(max-width:640px){.sheet{padding:30px 22px}.banner{margin:-30px -22px 22px}h1{font-size:31px}h2.q{font-size:24px}.scale-row{flex-wrap:wrap}.scale-btn{min-width:30%;border-bottom:1px solid var(--line)}.nps-grid{flex-wrap:wrap}.nps-btn{min-width:15%}.kbd-hint{display:none}.counter{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sheet.enter{animation:none}.progress{transition:none}}
