/*
 * cotar.css — extraído de resources/views/cotar.php (HANDOFF Sprint 1.3, 2026-05-07).
 * Servido como link<rel=stylesheet>; tokens (--paper, --ink, etc) vêm do design system global.
 */

/* ── Hero ── */
.cq-hero{padding:clamp(32px,5vw,52px) 0 32px;border-bottom:1px solid var(--line);margin-bottom:32px}
.cq-badge{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;display:flex;align-items:center;gap:8px}
.cq-badge::before{content:'';width:20px;height:2px;background:var(--accent)}
.cq-title{font-family:'Newsreader',serif;font-size:clamp(28px,4.5vw,44px);font-weight:400;letter-spacing:-1px;line-height:1.1;margin-bottom:8px}
.cq-title em{font-style:italic;color:var(--accent)}
.cq-sub{font-size:15px;color:var(--mute);max-width:540px;line-height:1.65}
.cq-stats{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}
.cq-stat{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--ink-soft);display:flex;align-items:center;gap:6px}
.cq-stat strong{color:var(--ink);font-size:12px}

/* ── Form ── */
.cq-form-wrap{background:var(--paper);border:1.5px solid var(--line);padding:clamp(20px,3vw,32px);margin-bottom:24px;box-shadow:0 4px 24px rgba(0,0,0,.06)}

.cotar-field-row{display:grid;grid-template-columns:1fr;gap:10px}
@media (min-width:520px){.cotar-field-row{grid-template-columns:1fr 1fr}}

.cotar-input{font-family:'DM Sans',sans-serif;font-size:15px;padding:12px 14px;border:1.5px solid var(--line);background:var(--paper);outline:none;width:100%;box-sizing:border-box}
.cotar-input:focus{border-color:var(--accent)}
.cotar-label{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:6px;display:block}

.cotar-toggle{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--paper-alt);border:1px solid var(--line-soft);cursor:pointer;font-size:14px;color:var(--ink-soft);user-select:none;margin-bottom:8px}
.cotar-toggle input{margin:0;flex-shrink:0;width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}

.cotar-map{position:relative;width:100%;height:260px;background:var(--paper-alt);border:1px solid var(--line);margin-bottom:12px;overflow:hidden}
.cotar-map .empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--mute);font-style:italic;font-size:13px;text-align:center;padding:20px;font-family:'Newsreader',serif}

.cotar-map-info{display:flex;justify-content:space-between;align-items:center;background:var(--paper-alt);border:1px solid var(--line-soft);padding:9px 12px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--ink-soft);margin-bottom:8px;flex-wrap:wrap;gap:8px}
.cotar-map-info .stats{color:var(--accent);font-weight:600}

.btn-calc{font-size:15px;padding:15px 22px;width:100%;font-weight:600;letter-spacing:.05em;border:none;cursor:pointer;margin-top:4px}

/* ── Steps indicator ── */
.cq-steps-bar{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.cq-stp{display:flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);transition:color .25s}
.cq-stp-n{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--mute);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;transition:background .25s,border-color .25s,color .25s}
.cq-stp.active{color:var(--ink)}
.cq-stp.active .cq-stp-n{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.cq-stp.done .cq-stp-n{background:var(--ok);border-color:var(--ok);color:#fff}
.cq-stp.done{color:var(--ink-soft)}
.cq-stp-sep{flex:1;height:1px;background:var(--line)}

/* ── Step 2 reveal animation ── */
#step2-section{transition:opacity .3s}

/* ── Inline cost editor ── */
.extra-cost-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line-soft)}
.extra-cost-row input{font-family:'DM Sans',sans-serif;font-size:13px;padding:6px 9px;border:1px solid var(--line);background:var(--paper-alt);outline:none}
.extra-cost-row input:focus{border-color:var(--accent)}
.extra-cost-row .rm-btn{background:var(--err);color:#fff;border:none;cursor:pointer;width:20px;height:20px;font-size:12px;line-height:1;padding:0;flex-shrink:0}

/* ── Results ── */
.res-card{background:var(--paper);border:1px solid var(--line);padding:20px;margin-bottom:16px}
.res-card h3{font-family:'Newsreader',serif;font-size:19px;font-weight:500;margin-bottom:12px}
.res-row{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line-soft);gap:8px}
.res-row:last-child{border-bottom:none}
.res-row .lbl{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);text-transform:uppercase;letter-spacing:.06em}
.res-row .val{font-family:'Newsreader',serif;font-size:16px;font-weight:500;text-align:right}
.total-row{padding:14px 16px;background:var(--ink);color:var(--paper);margin-top:10px;font-family:'Newsreader',serif;font-size:22px;font-weight:500;display:flex;justify-content:space-between;align-items:baseline}
.cost-line-mod{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-soft);gap:10px}
.cost-line-mod:last-child{border-bottom:none}
.cost-line-mod .l strong{font-size:14.5px;font-weight:500;display:block}
.cost-line-mod .l small{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--mute);display:block;margin-top:2px}
.cost-line-mod .v{font-family:'Newsreader',serif;font-size:18px;font-weight:500;white-space:nowrap;text-align:right}
.pracas-table{font-size:12.5px;width:100%;border-collapse:collapse}
.pracas-table thead th{font-family:'JetBrains Mono',monospace;font-size:9.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mute);text-align:left;padding:6px 8px;background:var(--paper-alt);border-bottom:1px solid var(--line)}
.pracas-table tbody td{padding:8px;border-bottom:1px solid var(--line-soft);vertical-align:top}
.pracas-table tfoot td{padding:10px 8px}

/* ── Como funciona ── */
.cq-how{padding:36px 0;border-bottom:1px solid var(--line-soft)}
.cq-how h2{font-family:'Newsreader',serif;font-size:clamp(20px,2.8vw,26px);font-weight:400;margin-bottom:20px}
.cq-how h2 em{font-style:italic;color:var(--accent)}
.cq-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px}
.cq-step-n{font-family:'Newsreader',serif;font-style:italic;font-size:44px;line-height:.9;color:var(--accent);opacity:.35}
.cq-step h3{font-family:'Newsreader',serif;font-size:17px;margin:6px 0 5px}
.cq-step p{font-size:13px;color:var(--ink-soft);line-height:1.6}

/* ── CTA ── */
.cq-cta{width:100vw;margin-left:calc(50% - 50vw);background:var(--ink);color:var(--paper);padding:clamp(40px,5vw,60px) clamp(16px,4vw,40px);text-align:center;margin-top:40px}
.cq-cta h2{font-family:'Newsreader',serif;font-weight:400;font-size:clamp(24px,3.5vw,34px);margin-bottom:10px}
.cq-cta h2 em{font-style:italic;color:var(--accent-soft)}
.cq-cta p{color:rgba(243,238,226,.6);margin-bottom:22px;font-size:14.5px;max-width:500px;margin-left:auto;margin-right:auto}
.cq-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

.full{width:100%}

/* ── Two-column result grid ── */
.rg{display:grid;grid-template-columns:1fr;gap:14px;align-items:start;margin-bottom:14px}
@media(min-width:720px){.rg{grid-template-columns:1fr 290px}}
@media(min-width:900px){.rg{grid-template-columns:1fr 320px}}
.rg-main>*+*{margin-top:10px}
.rg-aside>*+*{margin-top:8px}
@media(min-width:720px){.rg-aside{position:sticky;top:16px}}

/* ── Route header ── */
.rh{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:16px}
.rh-label{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.rh-title{font-family:'Newsreader',serif;font-size:clamp(18px,3vw,26px);font-weight:400;margin:0 0 10px;line-height:1.2}
.rh-pills{display:flex;flex-wrap:wrap;gap:5px}
.rh-pill{font-family:'JetBrains Mono',monospace;font-size:10.5px;background:var(--paper-alt);border:1px solid var(--line-soft);padding:4px 10px;color:var(--ink-soft);white-space:nowrap}
.rh-pill strong{color:var(--ink)}

/* ── Sidebar cards ── */
.summ{background:var(--ink);color:var(--paper);padding:18px 20px}
.s-lbl{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;opacity:.5;margin-bottom:5px}
.s-num{font-family:'Newsreader',serif;font-size:36px;font-weight:400;line-height:1;margin-bottom:2px}
.s-sub{font-family:'JetBrains Mono',monospace;font-size:10px;opacity:.4;margin-bottom:12px}
.s-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-top:1px solid rgba(243,238,226,.1);font-size:13px}
.s-row .sv{font-family:'Newsreader',serif;font-size:15px;opacity:.9}

.antt-card{background:var(--paper);border:2px solid var(--accent);padding:16px 18px}
.antt-num{font-family:'Newsreader',serif;font-size:30px;font-weight:400;color:var(--accent);line-height:1;margin-bottom:2px}
.antt-sub{font-family:'JetBrains Mono',monospace;font-size:9.5px;color:var(--mute);margin-bottom:10px}
.mbar{height:5px;background:rgba(184,84,31,.12);margin:8px 0 5px}
.mbar-fill{height:100%;background:var(--accent)}
.mbar-txt{font-family:'JetBrains Mono',monospace;font-size:9.5px;color:var(--mute)}

.preco-card{background:var(--paper);border:1.5px solid var(--line);padding:14px 16px}
.preco-card.ok{border-color:var(--ok)}
.preco-card.err{border-color:var(--err)}

/* ── Main col cost rows ── */
.cd{display:flex;justify-content:space-between;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line-soft);gap:8px}
.cd:last-of-type{border-bottom:none}
.cd-l strong{font-size:14px;font-weight:500;display:block}
.cd-l small{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--mute);display:block;margin-top:2px;line-height:1.5}
.cd-v{font-family:'Newsreader',serif;font-size:17px;font-weight:500;white-space:nowrap;flex-shrink:0}
.cd-total{display:flex;justify-content:space-between;align-items:baseline;padding:12px 16px;background:var(--ink);color:var(--paper);margin-top:8px}
.cd-total-v{font-family:'Newsreader',serif;font-size:21px;font-weight:500}

/* ── Aside actions ── */
.aside-share{display:flex;gap:5px;align-items:center;margin-bottom:6px}
.aside-share input{flex:1;min-width:0;font-family:'JetBrains Mono',monospace;font-size:9.5px;background:var(--paper-alt);border:1px solid var(--line-soft);padding:7px 8px;color:var(--ink);outline:none}
.aside-btns{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.aside-btns .btn,.aside-btns a.btn{font-size:11px;padding:9px 6px;text-align:center;text-decoration:none;display:block}

@media print{
  .rg{display:block}
  .rg-aside{position:static}
  .no-print,.rh a,.aside-btns,nav,footer,.cq-cta{display:none!important}
  body{background:#fff;color:#000}
  .res-card,.summ,.antt-card,.preco-card{border:1px solid #ccc;page-break-inside:avoid;margin-bottom:10px}
  details.juri-print{display:block!important}
  details.juri-print>summary{display:none}
  details.juri-print>div{display:block!important}
}
