/* Área logada: configuração inicial (/configuracao/...) e painel (/painel). */

/* ========== Painel ========== */
.topbar{background:#fff;border-bottom:1px solid var(--line)}
.topbar-in{max-width:1120px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.topbar .brand{color:var(--ink);font-size:15px;min-width:0}
.topbar .brand-mark{background:var(--navy);border:0;width:34px;height:34px;font-size:15px;border-radius:7px}
.topbar .btn{min-height:44px}
.dash{max-width:808px;margin:0 auto;padding:32px 24px 48px;display:flex;flex-direction:column;gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:20px;min-width:0}
.ready-icon{flex:none;width:44px;height:44px;border-radius:50%;background:var(--ok-solid);display:flex;align-items:center;justify-content:center}
.ready-icon svg,.hero-icon svg{color:#fff}
.card-intro{color:var(--muted)}
dl.summary{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:16px}
dl.summary dt{font-size:13px;color:var(--muted)}
dl.summary dd{margin:0;font-weight:500;overflow-wrap:anywhere}
.subform{display:flex;flex-direction:column;gap:18px}
.secnote{display:flex;gap:8px;font-size:13px;color:var(--muted)}
.secnote svg{flex:none;margin-top:2px}

.drop{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 16px;border:1.5px dashed #8A94A6;border-radius:10px;background:#F8F9FB;cursor:pointer}
.drop:hover{border-color:var(--primary);background:var(--primary-tint)}
.drop svg{color:var(--primary);flex:none}
.drop-t{display:flex;flex-direction:column;min-width:0}
.drop-t b{color:var(--primary);font-weight:600;overflow-wrap:anywhere}
.drop-t span{font-size:13px;color:var(--muted)}
.file-hidden{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.file-wrap{position:relative}
.file-wrap input:focus-visible + .drop{outline:3px solid #6B93D6;outline-offset:2px}

.seg{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.seg legend{padding:0}
.seg-opts{display:flex;flex-wrap:wrap;gap:8px}
.seg-opt{flex:1 1 140px;position:relative}
.seg-opt input{position:absolute;opacity:0;width:1px;height:1px}
.seg-opt span{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;font-size:14px;font-weight:500;cursor:pointer}
.seg-opt span::before{content:"";flex:none;width:16px;height:16px;border-radius:50%;border:2px solid #8A94A6;background:#fff}
.seg-opt input:checked + span{border:2px solid var(--primary);background:var(--primary-tint);padding:9px 13px;font-weight:600}
.seg-opt input:checked + span::before{border-color:var(--primary);box-shadow:inset 0 0 0 3px #fff;background:var(--primary)}
.seg-opt input:focus-visible + span{outline:3px solid #6B93D6;outline-offset:2px}
.seg-opt .dot{margin-left:auto;font-size:12px;font-weight:600;color:var(--warn-ink)}

.token-inp{background:var(--ground);font-family:var(--mono);font-size:13px}
.row-wrap{display:flex;flex-wrap:wrap;gap:10px}
.lbl-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline}
.lbl-row .hint{margin:0}

@media (max-width:600px){
  .topbar-in{padding:10px 16px}
  .topbar .brand-name-long{display:none}
  .dash{padding:20px 16px 40px;gap:16px}
  .card{padding:18px;gap:16px}
  .ready-icon{width:36px;height:36px}
  .subform .btn-p{width:100%}
}

/* Primeiro cadastro (etapas) */
.dash.is-setup{max-width:768px}
.setup-head{display:flex;flex-direction:column;gap:6px}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}
.setup-head h1{font-family:var(--serif);font-weight:600;font-size:32px;line-height:1.2;outline:none}
.setup-head p{color:var(--muted)}
.stepper{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:12px}
.stepper .st{display:flex;align-items:center;gap:10px;flex:none}
.st-n{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;border:2px solid var(--line-strong);color:var(--muted);background:#fff;flex:none}
.st-t{display:flex;flex-direction:column;line-height:1.3}
.st-t b{font-weight:600;color:var(--muted)}
.st-s{font-size:13px;color:var(--muted)}
.st.is-current .st-n{background:var(--primary);border-color:var(--primary);color:#fff}
.st.is-current b{color:var(--ink)}.st.is-current .st-s{color:var(--primary)}
.st.is-done .st-n{background:var(--ok-solid);border-color:var(--ok-solid);color:#fff}
.st.is-done b{color:var(--ink)}.st.is-done .st-s{color:var(--ok-ink)}
.st-line{flex:1 1 40px;min-width:24px;height:2px;background:var(--line)}
.st-line.is-done{background:var(--ok-solid)}
.step-intro{display:flex;flex-direction:column;gap:4px}
.step-intro .n{font-size:13px;color:var(--muted)}
.step-intro p{color:var(--muted)}
.step-nav{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #E4E8EE;padding-top:20px}
.step-nav .btn-p{margin-left:auto}
.done-card{align-items:center;text-align:center;padding:36px 28px;border-color:var(--ok-line)}
.done-card .ready-icon{width:56px;height:56px}
.done-card h1{font-family:var(--serif);font-weight:600;font-size:30px;line-height:1.2;outline:none}
.done-card p{color:var(--muted);max-width:460px}
.done-card .msgs{width:100%;text-align:left}
.done-sum{margin:0;width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:12px;text-align:left}
.done-sum>div{padding:14px 16px;border:1px solid #E4E8EE;border-radius:8px}
.done-sum dt{font-size:13px;color:var(--muted)}.done-sum dd{margin:0;font-weight:500}
@media (max-width:600px){
  .setup-head h1{font-size:24px}
  .stepper .st{flex-shrink:1;min-width:0}
  .st-s{display:none}
  .step-nav .btn{width:100%}
  .step-nav .btn-g{order:2}
}

/* Painel para leigos (status e próximo passo) */
.hero{background:var(--navy);color:#E6ECF5;border-radius:16px;padding:32px;display:flex;gap:20px;align-items:flex-start}
.hero-text{display:flex;flex-direction:column;gap:14px;min-width:0}
.hero h1{font-family:var(--serif);font-weight:500;font-size:30px;line-height:1.2;color:#fff;outline:none;text-wrap:pretty}
.hero p{font-size:17px;color:#C9D4E5}
.hero p:empty{display:none}
.hero-count{display:block;font-size:14px;font-weight:600;color:#C9D4E5}
.prog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-width:240px;margin-top:8px}
.prog span{height:6px;border-radius:3px;background:rgba(255,255,255,.25)}
.prog span.on{background:#fff}
.btn-w{background:#fff;color:var(--navy);align-self:flex-start}.btn-w:hover{background:#E6ECF5}
.hero-icon{flex:none;width:48px;height:48px;border-radius:50%;background:var(--ok-solid);display:flex;align-items:center;justify-content:center}
.hero.is-ok{background:#fff;color:var(--ink);border:1px solid var(--ok-line);padding:28px 32px}
.hero.is-ok h1{color:var(--ink);font-weight:600;font-size:28px}
.hero.is-ok p{color:var(--muted)}
.hero.is-ok .hero-count{color:var(--ok-ink)}
.hero.is-ok .prog{display:none}
.dados{display:flex;flex-direction:column;gap:12px}
.dados>h2{font-size:18px;font-weight:600}
.dados.is-done{display:none}
.items{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.item{padding:18px 24px;display:flex;flex-direction:column;gap:16px;min-width:0}
.item.is-open{background:#FBFCFD}
.item-sep{height:1px;background:#E4E8EE}
.item-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.item-main{display:flex;flex-direction:column;min-width:0}
.item-title{margin:0;font-size:14px;font-weight:400;color:var(--muted)}
.item-status{font-weight:600;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.item-status.is-missing{color:var(--muted)}
.item-body{display:flex;flex-direction:column;gap:20px}
dl.summary.box{padding:14px 16px;background:#fff;border:1px solid #E4E8EE;border-radius:8px;gap:12px}
.subform h4{margin:0;font-size:16px;font-weight:600}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.link-danger,.linkbtn{background:none;border:0;padding:8px 0;min-height:44px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:8px}
.link-danger{color:var(--err-solid)}.linkbtn{color:var(--primary)}
.dash.is-setup .item{padding:28px}
.dash.is-setup .item-title{font-size:22px;font-weight:600;color:var(--ink)}
.dash.is-setup .form-foot .btn-p{margin-left:auto}
.dash-foot{border-top:1px solid var(--line);padding-top:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;font-size:14px;color:var(--muted)}
.dash-foot span{overflow-wrap:anywhere}
.api-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:14px}
.api-panel h2{font-size:18px;font-weight:600;outline:none}
.api-panel h2 + .hint{margin-top:2px}
@media (max-width:600px){
  .hero{padding:22px 20px;border-radius:14px}
  .hero h1{font-size:24px}.hero.is-ok h1{font-size:22px}
  .hero p{font-size:15px}
  .hero.is-ok{padding:20px}
  .hero-icon{width:40px;height:40px}
  .btn-w{width:100%}
  .prog{max-width:none}
  .item{padding:16px}
  .dash.is-setup .item{padding:18px}
  .dash.is-setup .item-title{font-size:19px}
  .form-foot .btn-p{width:100%}
  .api-panel{padding:18px}
}
