/* Pagamentos da semana, Enviar conversas, Conferir e Configurações. */
a.btn{text-decoration:none; display:inline-block}

/* ----- Escolha da semana ----- */
.semanas{display:flex; gap:8px; overflow-x:auto; padding-bottom:4px; scrollbar-width:thin}
.semanas button{flex:none; border:1px solid var(--line); background:var(--surface); border-radius:12px; padding:9px 14px; cursor:pointer; text-align:left; display:flex; flex-direction:column; gap:1px; transition:border-color .2s, background .2s}
.semanas button b{font-family:var(--f-display); font-weight:500; font-size:15px}
.semanas button span{font-size:12px; color:var(--muted)}
.semanas button[aria-selected="true"]{border-color:var(--accent); background:var(--accent-soft)}
.kpi.ok-k .v{color:var(--ok)} .kpi.warn-k .v{color:var(--warn)}

.aviso-conf{all:unset; cursor:pointer; display:flex; align-items:center; gap:12px; background:var(--warn-soft); color:var(--ink); border:1px solid color-mix(in srgb,var(--warn) 35%,transparent); border-radius:12px; padding:12px 16px; font-size:14.5px}
.aviso-conf svg{width:22px; height:22px; stroke:var(--warn); fill:none; stroke-width:1.8; flex:none}
.aviso-conf span:last-child{margin-left:auto; font-size:22px; color:var(--warn)}
.aviso-conf:focus-visible{outline:2px solid var(--accent)}
.link{all:unset; cursor:pointer; color:var(--accent); font-weight:600}

/* ----- Cartão de cada Pix ----- */
.pix-lista{display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:14px}
.pix{background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:16px 18px; box-shadow:var(--shadow); display:flex; flex-direction:column; gap:12px; position:relative; overflow:hidden}
.pix::before{content:""; position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--warn)}
.pix.pago::before{background:var(--ok)} .pix.dif::before{background:var(--bad)}
.pix-topo{display:flex; justify-content:space-between; gap:12px; align-items:flex-start}
.pix-quem{display:flex; gap:12px; align-items:center; min-width:0}
.pix-quem .avatar{background:var(--surface-2); color:var(--ink); border:1px solid var(--line)}
.pix-quem h3{font-size:17px}
.pix-valor{display:flex; flex-direction:column; align-items:flex-end; gap:5px; flex:none}
.pix-valor b{font-family:var(--f-display); font-size:22px; font-weight:500; font-variant-numeric:tabular-nums; letter-spacing:-.01em}
.pix-chave{display:flex; flex-wrap:wrap; gap:6px 12px; align-items:center; font-size:13px; color:var(--muted); background:var(--surface-2); border-radius:9px; padding:8px 10px}
.pix-chave .mono{font-family:var(--f-mono); color:var(--ink); font-size:12.5px}
.pix-chave .btn{margin-left:auto}
.pix-acoes{display:flex; gap:8px; flex-wrap:wrap}
.pix-conta{list-style:none; margin:0; padding:0; border-top:1px solid var(--line); animation:rise .3s ease both}
.pix-conta li{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 12px; padding:8px 0; border-bottom:1px dashed var(--line); font-size:13.5px}
.pix-conta li b{font-weight:600} .pix-conta li span{grid-column:1; color:var(--muted); font-size:12.5px}
.pix-conta li em{grid-row:1 / span 2; grid-column:2; align-self:center; font-style:normal; font-variant-numeric:tabular-nums; font-weight:600}
.pix-conta li.menos em{color:var(--bad)}
.pix-conta li.tot{border-bottom:0; border-top:1px solid var(--ink)}
.pix-conta li.tot em{font-size:16px}

/* ----- Cartão da semana na Visão geral ----- */
.semana-mini .semana-nums{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:10px}
.semana-nums div{display:flex; flex-direction:column; gap:2px}
.semana-nums span{font-size:12px; color:var(--muted)}
.semana-nums b{font-family:var(--f-display); font-size:21px; font-weight:500; font-variant-numeric:tabular-nums}
.semana-nums .ok b{color:var(--ok)} .semana-nums .warn b{color:var(--warn)}
.bar.larga{height:8px; margin:6px 0 12px}
.mini-pix{display:flex; flex-wrap:wrap; gap:8px}
.mini-pix button{all:unset; cursor:pointer; display:inline-flex; gap:8px; align-items:center; padding:6px 11px; border-radius:999px; font-size:13px; border:1px solid var(--line); background:var(--surface-2)}
.mini-pix button::before{content:""; width:8px; height:8px; border-radius:50%; background:var(--warn)}
.mini-pix button.ok::before{background:var(--ok)} .mini-pix button.bad::before{background:var(--bad)}
.mini-pix b{font-variant-numeric:tabular-nums}

/* ----- Enviar conversas e fotos ----- */
.solta{display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:18px; align-items:center; border:2px dashed var(--line); background:var(--surface); cursor:pointer; transition:border-color .2s, background .2s}
.solta.sobre{border-color:var(--accent); background:var(--accent-soft)}
.solta:focus-visible{outline:2px solid var(--accent)}
.solta-ic{width:54px; height:54px; border-radius:14px; background:var(--accent-soft); display:grid; place-items:center}
.solta-ic svg{width:28px; height:28px; stroke:var(--accent); fill:none; stroke-width:1.7}
.leituras{display:flex; flex-direction:column}
.leitura{display:grid; grid-template-columns:34px minmax(0,1fr) auto; gap:12px; align-items:center; padding:10px 0; border-top:1px solid var(--line)}
.leitura:first-child{border-top:0}
.leitura .tipo{width:34px; height:34px; border-radius:9px; background:var(--surface-2); display:grid; place-items:center}
.leitura .tipo svg{width:18px; height:18px; stroke:var(--muted); fill:none; stroke-width:1.7}
.leitura .t{font-weight:600; font-size:14px}
.leitura .m{font-size:12.5px; color:var(--muted); overflow-wrap:anywhere}
.leitura .m.arq{font-family:var(--f-mono); font-size:11px; opacity:.8}
.leitura .dir{display:flex; flex-direction:column; align-items:flex-end; gap:4px}
.leitura .dir b{font-variant-numeric:tabular-nums}
.leitura.rodando{opacity:.75}
.spin{width:18px; height:18px; border-radius:50%; border:2px solid var(--line); border-top-color:var(--accent); animation:girar .8s linear infinite; display:inline-block}
@keyframes girar{to{transform:rotate(360deg)}}
.ajuda summary{cursor:pointer; list-style:none}
.ajuda summary::-webkit-details-marker{display:none}
.ajuda summary::after{content:" ›"; color:var(--muted)}
.ajuda[open] summary::after{content:" ˅"}
.ajuda ol{margin:10px 0 0; padding-left:20px; display:flex; flex-direction:column; gap:8px; font-size:14px}

/* ----- Conferir ----- */
.conf-lista{display:grid; grid-template-columns:repeat(auto-fill,minmax(420px,1fr)); gap:14px}
.conf{background:var(--surface); border:1px solid var(--line); border-left:4px solid var(--warn); border-radius:12px; padding:16px 18px; display:flex; flex-direction:column; gap:8px; box-shadow:var(--shadow)}
.conf h3{font-size:16px} .conf p{margin:0; font-size:13.5px}
.conf-topo{display:flex; justify-content:space-between; gap:10px; align-items:center; flex-wrap:wrap}
.conf-valor{font-family:var(--f-display); font-size:19px; font-weight:500}
.conversa{font-family:var(--f-mono); font-size:12px; line-height:1.55; background:var(--surface-2); border:1px solid var(--line); border-radius:9px; padding:10px 12px; margin:0; white-space:pre-wrap; overflow-wrap:anywhere; max-height:220px; overflow:auto}
.conf .acts{display:flex; gap:8px; flex-wrap:wrap; align-items:center}
.sel-obra{border:1px solid var(--line); border-radius:8px; padding:6px 8px; background:var(--surface); max-width:220px}
.tudo-certo{text-align:center; padding:40px 20px}
.ok-ic{width:56px; height:56px; border-radius:50%; background:var(--ok-soft); display:grid; place-items:center; margin:0 auto 12px}
.ok-ic svg{width:28px; height:28px; stroke:var(--ok); fill:none; stroke-width:2.2}

/* ----- Configurações ----- */
.form-grid.tres{grid-template-columns:repeat(3,minmax(0,1fr))}
.regras .note{margin-top:12px}
.crew.com-he label{grid-template-columns:22px minmax(0,1fr) 84px 120px}
.crew-cab{display:grid; grid-template-columns:22px minmax(0,1fr) 84px 120px; gap:12px; padding:0 4px 6px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--muted)}
.crew-cab span:nth-child(n+3){text-align:right}

/* Gasto aguardando aprovação trava o Pix; o que faltou pagar passa para a semana seguinte. */
.aviso-trava{display:flex; align-items:center; gap:12px; background:var(--bad-soft); color:var(--ink); border:1px solid color-mix(in srgb,var(--bad) 35%,transparent); border-radius:12px; padding:12px 16px; font-size:14.5px; margin-bottom:14px}
.aviso-trava svg{width:22px; height:22px; stroke:var(--bad); fill:none; stroke-width:1.8; flex:none}
.pix.travado::before{background:var(--bad)}
.pix-trava{background:var(--bad-soft); border-radius:10px; padding:10px 12px; display:flex; flex-direction:column; gap:8px; font-size:14.5px}
.pix-pend{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px}
.pix-pend .acts{display:flex; flex-wrap:wrap; gap:6px}
.pix-conta li.pend{opacity:.75}
.pix-conta li.pend em{text-decoration:line-through}
.pix-adiante{margin:0}
.aviso-fechada{display:flex; align-items:center; gap:12px; background:var(--ok-soft); color:var(--ink); border:1px solid color-mix(in srgb,var(--ok) 35%,transparent); border-radius:12px; padding:12px 16px; font-size:14.5px; margin-bottom:14px}
.aviso-fechada svg{width:22px; height:22px; stroke:var(--ok); fill:none; stroke-width:1.8; flex:none}
.pix-conta li.comb em{color:var(--ok)}
