/* COMPRAS CSPAZ — componentes extras (usa as variáveis do style.css) */
[hidden]{display:none!important}
.page-hero{background:linear-gradient(135deg,var(--azul-escuro),var(--azul-nav));color:#fff;padding:1.2rem max(1rem,calc((100% - 760px)/2)) 1.8rem}
.page-hero.wide{padding-left:max(1rem,calc((100% - 1100px)/2));padding-right:max(1rem,calc((100% - 1100px)/2))}
.page-hero.ped{background:linear-gradient(135deg,#8a4b00,var(--laranja-vivo))}
.page-hero .voltar{display:inline-flex;align-items:center;gap:5px;color:rgba(255,255,255,.85);font:12px 'Pusia Bold';text-decoration:none;margin-bottom:1rem}
.ph-row{display:flex;align-items:center;gap:14px}
.ph-ico{width:54px;height:54px;border-radius:var(--radius-md);background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}
.page-hero h1{font:22px 'Pusia Bold';line-height:1.2}
.page-hero p{font:13px 'Pusia Light';color:rgba(255,255,255,.75);margin-top:2px}
.eyebrow{font:10px 'Pusia Bold';letter-spacing:.12em;color:#ffd27a}
.wrap{max-width:760px;width:100%;margin:0 auto;padding:1.3rem 1rem 3rem}
.wrap.wide{max-width:1100px}
.wrap .card{margin-bottom:1rem}
.btn-line{display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.85);font:12px 'Pusia Bold';background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-sm);padding:7px 12px;cursor:pointer;text-decoration:none}

/* identificação */
.who{display:flex;align-items:center;gap:12px;padding:12px;background:var(--azul-claro);border:1.5px solid var(--azul-mid);border-radius:var(--radius-md);margin-bottom:12px}
.who-av{width:42px;height:42px;border-radius:50%;background:#fff;color:var(--azul);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.who strong{display:block;font:14px 'Pusia Bold';color:var(--azul-escuro)}
.who span{font:12px 'Pusia Light';color:var(--texto-suave)}

/* alertas */
.alert{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:var(--radius-sm);font:12px/1.55 'Pusia Light';margin-top:10px;border:1.5px solid}
.alert svg{flex-shrink:0;margin-top:2px}
.alert strong{font-family:'Pusia Bold'}
.alert.info{background:var(--azul-claro);border-color:var(--azul-mid);color:var(--azul-escuro)}
.alert.warn{background:var(--amarelo-claro);border-color:#f3d98b;color:#8a5200}
.alert.danger{background:var(--vermelho-claro);border-color:#e8b4b0;color:var(--vermelho)}
.alert.ok{background:var(--verde-claro);border-color:#b7e0c4;color:var(--verde)}

/* caixinha */
.cx{border:1.5px solid var(--cinza-borda);border-radius:var(--radius-md);padding:14px;background:#fff;margin-top:12px}
.cx-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.cx-top h4{font:13px 'Pusia Bold';color:var(--azul-escuro);display:flex;align-items:center;gap:7px}
.cx-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.cx-nums div{background:var(--cinza-bg);border-radius:var(--radius-sm);padding:8px 10px}
.cx-nums small{display:block;font:10px 'Pusia Bold';color:var(--texto-faint);text-transform:uppercase;letter-spacing:.05em}
.cx-nums b{font:14px 'Pusia Bold';color:var(--texto)}
.cx-nums .sal b.neg{color:var(--vermelho)}.cx-nums .sal b.ok{color:var(--verde)}
.cx-bar{height:9px;border-radius:9px;background:var(--cinza-borda);overflow:hidden}
.cx-bar i{display:block;height:100%;border-radius:9px;background:var(--verde);transition:width .4s}
.cx-bar.warn i{background:var(--amarelo-aviso)}.cx-bar.neg i{background:var(--vermelho)}
.cx-list{margin-top:10px;font-size:12px}
.cx-list summary{cursor:pointer;color:var(--azul);font:12px 'Pusia Bold'}
.cx-row{display:grid;grid-template-columns:76px 1fr auto;gap:8px;padding:6px 0;border-bottom:1px solid var(--cinza-borda)}
.cx-row span:first-child{color:var(--texto-faint)}.cx-row b{font-family:'Pusia Bold'}
.pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:20px;font:10px 'Pusia Bold';background:var(--azul-claro);color:var(--azul-escuro);white-space:nowrap}
.pill.ok{background:var(--verde-claro);color:var(--verde)}.pill.warn{background:var(--amarelo-claro);color:var(--amarelo-aviso)}.pill.neg{background:var(--vermelho-claro);color:var(--vermelho)}

/* fonte do recurso */
.seg{display:grid;gap:8px;margin-top:6px}
.seg label{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1.5px solid var(--cinza-borda);border-radius:var(--radius-sm);cursor:pointer;background:#fff;text-transform:none;letter-spacing:0;margin:0;font:13px 'Pusia Bold';color:var(--texto)}
.seg label small{display:block;font:11px 'Pusia Light';color:var(--texto-suave)}
.seg input{width:auto;accent-color:var(--azul)}
.seg label.on{border-color:var(--azul);background:var(--azul-claro)}
.seg label.off{opacity:.5;cursor:not-allowed;background:var(--cinza-bg)}

/* itens e fotos */
.it{border:1.5px solid var(--cinza-borda);border-radius:var(--radius-md);padding:12px;margin-bottom:10px;background:var(--cinza-card)}
.it-g{display:grid;grid-template-columns:1fr 80px 130px 40px;gap:8px;align-items:end}
.it .lk{margin-top:8px;position:relative}
.it .lk svg{position:absolute;left:11px;top:13px;color:var(--texto-faint)}
.it .lk input{padding-left:34px}
.it-h{display:grid;grid-template-columns:1fr 80px 130px 40px;gap:8px;font:10px 'Pusia Bold';color:var(--texto-faint);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.btn-rm{height:42px;border:1px solid var(--cinza-borda);background:#fff;border-radius:var(--radius-sm);cursor:pointer;color:var(--vermelho);display:flex;align-items:center;justify-content:center}
.btn-add{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;border:1.5px dashed var(--azul);background:var(--azul-claro);color:var(--azul-escuro);border-radius:var(--radius-sm);padding:10px;font:12px 'Pusia Bold';cursor:pointer}
.drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px;border:1.5px dashed var(--azul-mid);border-radius:var(--radius-md);background:var(--azul-claro);color:var(--azul);cursor:pointer;text-align:center;font:12px 'Pusia Bold'}
.drop small{font:11px 'Pusia Light';color:var(--texto-suave)}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;margin-top:10px}
.thumb{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--cinza-borda);background:var(--cinza-bg)}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.thumb button{position:absolute;top:4px;right:4px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.resumo{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1.5px solid var(--cinza-borda);border-radius:var(--radius-md);padding:13px 16px;margin-bottom:1rem;font:13px 'Pusia Bold'}
.resumo b{font-size:18px;color:var(--azul-escuro)}

/* acompanhamento */
.steps{display:flex;margin:6px 0 4px}
.stp{flex:1;text-align:center;position:relative;font:10px 'Pusia Bold';color:var(--texto-faint)}
.stp i{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0 auto 6px;border-radius:50%;background:var(--cinza-borda);color:#fff;position:relative;z-index:1;font-style:normal}
.stp:not(:last-child)::after{content:"";position:absolute;top:13px;left:50%;width:100%;height:3px;background:var(--cinza-borda)}
.stp.done i,.stp.done:not(:last-child)::after{background:var(--azul)}
.stp.done{color:var(--azul-escuro)}.stp.now i{background:var(--laranja);box-shadow:0 0 0 4px rgba(255,165,0,.22)}.stp.now{color:var(--texto)}
.stp.bad i{background:var(--vermelho)}
.prazo{display:flex;gap:12px;align-items:center;padding:13px 15px;border-radius:var(--radius-md);background:var(--verde-claro);border:1.5px solid #b7e0c4;color:var(--verde);margin:12px 0}
.prazo svg{flex-shrink:0}.prazo strong{display:block;font:13px 'Pusia Bold'}.prazo span{font:12px 'Pusia Light'}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}
.gal a{display:block;aspect-ratio:1;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--cinza-borda)}.gal img{width:100%;height:100%;object-fit:cover}
.lk-a{display:inline-flex;align-items:center;gap:5px;color:var(--azul);font:11px 'Pusia Bold';text-decoration:none;word-break:break-all}
.item-li{padding:8px 0;border-bottom:1px solid var(--cinza-borda);font-size:12px}
.item-li .t{display:flex;justify-content:space-between;gap:10px}.item-li b{font-family:'Pusia Bold'}
.obs-ap{background:var(--azul-claro);border:1.5px solid var(--azul-mid);color:var(--azul-escuro);border-radius:var(--radius-sm);padding:10px 12px;font:12px/1.5 'Pusia Light'}
.tst{position:fixed;left:50%;bottom:22px;transform:translate(-50%,120px);display:flex;gap:8px;align-items:center;padding:11px 16px;border-radius:12px;background:var(--texto);color:#fff;font:12px 'Pusia Bold';z-index:2000;transition:transform .3s;max-width:92vw}
.tst.show{transform:translate(-50%,0)}.tst.ok{background:var(--verde)}.tst.err{background:var(--vermelho)}
.success-ico{width:72px;height:72px;border-radius:50%;background:var(--verde-claro);color:var(--verde);display:flex;align-items:center;justify-content:center;margin:0 auto}
@media(max-width:620px){.cx-nums{grid-template-columns:1fr 1fr}.it-h{display:none}.it-g{grid-template-columns:1fr 70px 100px 38px}}


/* ============================================================
   RESPONSIVIDADE — telas menores
============================================================ */

@media (max-width: 820px) {
  .page-hero,
  .page-hero.wide {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .page-hero {
    padding-top: 1rem;
    padding-bottom: 1.45rem;
  }

  .page-hero h1 {
    font-size: clamp(19px, 4vw, 22px);
  }

  .wrap,
  .wrap.wide {
    width: min(100% - 1.25rem, 720px);
    padding-top: 1rem;
  }

  .ad-top,
  .mc-top {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .ad-title,
  .mc-title,
  .ad-t {
    min-width: 0;
  }

  .cx-nums {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .page-hero .voltar {
    margin-bottom: .7rem;
  }

  .ph-row {
    align-items: flex-start;
  }

  .ph-ico {
    width: 46px;
    height: 46px;
  }

  .wrap,
  .wrap.wide {
    width: calc(100% - 1rem);
    padding: .85rem .5rem 2rem;
  }

  .who {
    padding: 10px;
  }

  .tabs,
  .status-tabs {
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 3px;
    scrollbar-width: none;
  }

  .tabs::-webkit-scrollbar,
  .status-tabs::-webkit-scrollbar {
    display: none;
  }

  .tabs .tab-btn,
  .status-tabs .tab-btn {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .ad-card,
  .mc-card {
    padding: .85rem;
  }

  .ad-top,
  .mc-top {
    gap: 6px;
  }

  .ad-id,
  .mc-id {
    flex: 0 0 auto;
  }

  .ad-t,
  .mc-title {
    flex: 1 1 100%;
    order: 3;
    width: 100%;
    line-height: 1.45;
  }

  .ad-meta,
  .mc-meta {
    gap: 5px 10px;
    line-height: 1.4;
  }

  .toolbar {
    flex-direction: column;
  }

  .toolbar input,
  .toolbar select {
    width: 100%;
    min-width: 0;
  }

  .modal {
    padding: .5rem;
  }

  .modal-box {
    max-height: 94vh;
    border-radius: 16px;
  }

  .modal-head {
    padding: .85rem 1rem;
  }

  .modal-body {
    padding: 0 1rem 1rem;
  }

  .dr {
    align-items: flex-start;
  }

  .dr .v {
    max-width: 62%;
    overflow-wrap: anywhere;
  }

  .steps {
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .stp {
    min-width: 82px;
  }

  .cx-row {
    grid-template-columns: 68px 1fr auto;
  }

  .acts {
    flex-direction: column;
  }

  .acts .btn,
  .acts .btn-save {
    width: 100%;
    justify-content: center;
  }
}

@media (max-width: 430px) {
  .page-hero {
    padding-bottom: 1.25rem;
  }

  .page-hero h1 {
    font-size: 18px;
  }

  .page-hero p {
    font-size: 12px;
  }

  .eyebrow {
    font-size: 9px;
  }

  .cx-nums {
    gap: 6px;
  }

  .cx-nums div {
    padding: 7px 8px;
  }

  .cx-nums b {
    font-size: 13px;
  }

  .dr {
    flex-direction: column;
    gap: 2px;
  }

  .dr .v {
    max-width: 100%;
    text-align: left;
  }

  .it-g {
    grid-template-columns: 1fr 68px 92px 36px;
    gap: 6px;
  }

  .resumo {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }
}

/* ============================================================
   BOTÃO PRINCIPAL — ENVIO DA SOLICITAÇÃO
============================================================ */
.btn-submit{
  appearance:none;
  width:100%;
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:0 0 1.5rem;
  padding:14px 20px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,var(--azul),var(--azul-escuro));
  color:#fff;
  font:15px 'Pusia Bold',sans-serif;
  letter-spacing:.01em;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(0,63,127,.20);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,opacity .18s ease;
}
.btn-submit:hover:not(:disabled){
  transform:translateY(-1px);
  box-shadow:0 11px 26px rgba(0,63,127,.27);
  filter:brightness(1.04);
}
.btn-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 5px 14px rgba(0,63,127,.20)}
.btn-submit:focus-visible{outline:3px solid rgba(255,165,0,.45);outline-offset:3px}
.btn-submit:disabled{cursor:wait;opacity:.68;box-shadow:none}
.btn-submit::before{
  content:'✓';
  width:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1.5px solid rgba(255,255,255,.65);
  border-radius:50%;
  font-size:12px;
}
@media(max-width:620px){
  .btn-submit{min-height:52px;font-size:14px;border-radius:12px}
}


/* Formulário: data ocupa a linha inteira quando não há centro de custo. */
.single-date .field{max-width:360px}
@media(max-width:620px){.single-date .field{max-width:none}}
