/* Espaço Projetado · página do cliente do estúdio (e a prévia no painel). Usa os tokens de /ds.css. */
.ep-cli{background:var(--bg);color:var(--ink);font:400 16.5px/1.6 var(--f-txt)}
.ep-cli *{box-sizing:border-box}
.ep-cli .wrap{max-width:860px;margin:0 auto;padding-inline:24px}
.ep-cli h1,.ep-cli h2,.ep-cli h3,.ep-cli h4{font-family:var(--f-disp);font-weight:400;line-height:1.08;margin:0;text-wrap:balance;color:var(--ink)}
.ep-cli p{margin:0}
.ep-cli .mut{color:var(--mut)}.ep-cli .peq{font-size:12.5px}
.ep-cli .ico{display:inline-grid;width:18px;height:18px}.ep-cli .ico svg{width:100%;height:100%}
.cli-topo{border-bottom:1px solid var(--line);background:var(--sup)}
.cli-topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;color:var(--mut)}
.cli-topo .logo{max-height:40px;max-width:180px;object-fit:contain}
.cli-topo .nome-estudio{font:500 13px/1.3 var(--f-txt);letter-spacing:.22em;text-transform:uppercase;color:var(--ink)}
.cli{display:grid;gap:clamp(36px,6vw,64px);padding-block:clamp(36px,6vw,64px) 48px}
.faixa-previa{background:var(--info-bg);color:var(--info);border-radius:10px;padding:10px 14px;font-size:14px;font-weight:500}
.cli-hero{display:grid;gap:16px;position:relative}
.cli-hero h1{font-size:clamp(40px,7vw,68px);letter-spacing:-.01em}
.cli-hero .para{font-size:18px;color:var(--mut)}.cli-hero .para b{color:var(--ink);font-weight:500}
.cli-hero .carimbo{justify-self:start;margin-top:6px}
.ep-resumo{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;margin:8px 0 0;border-top:1px solid var(--line2)}
.ep-resumo div{padding:16px 16px 0 0}.ep-resumo dt{font:500 11.5px/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.ep-resumo dd{margin:6px 0 0;font:400 clamp(26px,3.6vw,34px)/1 var(--f-disp)}
.sec-cab{display:grid;gap:10px;margin-bottom:12px}
.sec-cab h2{font-size:clamp(30px,4.4vw,42px)}
/* etapas da proposta */
.etapas-prop{list-style:none;margin:22px 0 0;padding:0;display:grid;border-top:1px solid var(--line)}
.etapas-prop>li{display:grid;grid-template-columns:48px 1fr;gap:12px;padding:20px 0;border-bottom:1px solid var(--line)}
.etapas-prop .n{font-size:13px;color:var(--brand);padding-top:6px}
.et-cab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px}
.etapas-prop h3{font-size:26px}
.entregaveis{margin:8px 0 0;padding-left:18px;color:var(--mut);display:grid;gap:3px}
/* valores */
.valores{background:var(--sup);border:1px solid var(--line);border-radius:var(--r2);padding:clamp(20px,3vw,30px);display:grid;gap:16px;box-shadow:var(--sh1)}
.valores .total{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.valores .total b{font:400 clamp(40px,6vw,56px)/1 var(--f-disp)}
.parcelas{display:grid;border-top:1px solid var(--line)}
.parc{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px dashed var(--line)}
.parc b{font-weight:500;font-variant-numeric:tabular-nums}
.extra-linha{font-size:15px;color:var(--mut)}.extra-linha b{color:var(--ink);font-weight:600}
.textos{display:grid;gap:22px}
.bloco-txt{display:grid;gap:6px}.bloco-txt h3{font-size:24px}.bloco-txt p{color:var(--mut);white-space:pre-line}
/* aceite */
.aceite{background:var(--sup);border:1px solid var(--line);border-radius:var(--r3);padding:clamp(22px,4vw,36px);display:grid;gap:10px;box-shadow:var(--sh2)}
.aceite h2{font-size:clamp(30px,4.4vw,42px)}
.ep-cli .rot{font-weight:500;font-size:14.5px;margin-top:8px}
.ep-cli input:not([type=checkbox]),.ep-cli textarea{width:100%;min-height:48px;border:1px solid var(--line2);border-radius:10px;padding:10px 14px;font:400 16px/1.45 var(--f-txt);background:var(--bg);color:var(--ink)}
.ep-cli textarea{resize:vertical}
.ep-cli .chk{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;margin:8px 0}
.ep-cli .chk input,.ep-cli .extra input{width:20px;height:20px;margin-top:3px;accent-color:var(--brand)}
.ep-cli .btn.larga{width:100%;min-height:52px;font-size:16px;margin-top:6px}
.ep-cli .aviso{background:var(--bad-bg);color:var(--bad);border-radius:10px;padding:10px 14px;font-weight:500}
.duvida{border-top:1px solid var(--line);margin-top:6px;padding-top:6px}
.duvida summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--brand);font-weight:500}
.duvida[open]{display:grid;gap:8px}
.aviso-grande{background:var(--sup2);border-radius:var(--r2);padding:20px;font-size:17px}
/* andamento */
.progresso{display:grid;gap:10px}
.pg-txt{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.pg{height:8px;border-radius:999px;background:var(--sup3);overflow:hidden}.pg i{display:block;height:100%;background:var(--brand);border-radius:inherit;transition:width .8s cubic-bezier(.2,.7,.2,1)}
.etapas-and{list-style:none;margin:0;padding:0;display:grid;gap:18px}
.et-and{background:var(--sup);border:1px solid var(--line);border-radius:var(--r2);padding:clamp(18px,3vw,28px);display:grid;gap:18px;box-shadow:var(--sh1)}
.et-and.st-aguardando{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft),var(--sh2)}
.et-and.st-pendente{background:transparent;box-shadow:none;border-style:dashed}
.et-and .et-cab{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.et-and .n{font-size:13px;color:var(--brand);padding-top:8px}
.et-and h2{font-size:clamp(26px,3.6vw,34px)}
.et-meta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:8px}
.vazio-et{font-size:15px;margin-left:52px}
.entrega{display:grid;gap:14px}
.entrega.antiga{border-top:1px dashed var(--line2);padding-top:16px;opacity:.88}
.entrega-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.entrega-cab h4{font-size:24px;margin-top:4px}
.entrega .nota{white-space:pre-line}
.entrega-itens{display:grid;gap:16px}
.galeria{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.galeria.g1{grid-template-columns:1fr}.galeria.g3 figure:first-child{grid-row:span 2}
.galeria figure{margin:0;position:relative;border-radius:10px;overflow:hidden;background:var(--sup2);min-height:120px}
.galeria figure.carregando{background:linear-gradient(90deg,var(--sup2),var(--sup3),var(--sup2));background-size:200% 100%;animation:brilho 1.2s linear infinite}
@keyframes brilho{to{background-position:-200% 0}}
.galeria .ampliar{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:zoom-in}
.galeria img{width:100%;height:100%;object-fit:cover;display:block;min-height:120px}
.galeria figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px 10px 8px;font:500 11px/1.3 var(--f-mono);letter-spacing:.04em;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}
.paleta{display:flex;flex-wrap:wrap;gap:10px}
.cor{display:grid;grid-template-rows:56px auto auto;width:104px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--sup);font-size:13px}
.cor i{display:block}.cor b{font-weight:500;padding:6px 10px 0}.cor span{padding:0 10px 8px;font-size:11px;color:var(--mut)}
.texto{white-space:pre-line}
.links{display:grid;gap:8px}
.link{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid var(--line2);border-radius:10px;color:var(--ink);text-decoration:none;font-weight:500}
.link:hover{border-color:var(--brand);color:var(--brand)}
.compras-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.compras{width:100%;border-collapse:collapse;font-size:15px}
.compras th,.compras td{padding:10px 12px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.compras thead th{border-top:0;font:500 11px/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.compras .num{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.compras small{display:block;color:var(--mut)}
.compras tfoot td{background:var(--sup2);font-weight:600}
.coment{margin:0;border-left:3px solid var(--line2);padding:6px 0 6px 14px;display:grid;gap:4px}
.responder{border-top:1px solid var(--line);padding-top:16px;display:grid;gap:10px}
.responder .quem{display:grid;gap:4px;max-width:360px}
.responder .barra,.ajuste .barra{display:flex;flex-wrap:wrap;gap:10px}
.responder .btn{min-height:50px}
.ajuste{display:grid;gap:8px}
.ajuste .extra{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;background:var(--warn-bg);color:var(--ink);border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);border-radius:10px;padding:12px 14px;font-size:15px}
.ajuste .extra b{color:var(--warn);font-weight:600}
.nota-rev{font:500 12.5px/1.4 var(--f-mono);color:var(--mut)}
.ep-cli .fino{font-size:13px;color:var(--mut)}
.anteriores summary,.proposta-aceita summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--brand);font-weight:500}
.anteriores[open]{display:grid;gap:16px}
.proposta-aceita{border-top:1px solid var(--line);padding-top:8px}
.proposta-aceita[open]{display:grid;gap:22px}
.registro{border-top:1px solid var(--line);padding-top:8px}
.registro summary{cursor:pointer;min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:12px;font:400 26px/1.1 var(--f-disp)}
.registro ol{list-style:none;margin:8px 0 0;padding:0;display:grid}
.registro li{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:15px}
.registro time{font-size:12.5px;color:var(--mut);padding-top:2px}
.registro li.por-cliente span{color:var(--ink);font-weight:500}
.cli-rodape{border-top:1px solid var(--line);background:var(--sup);padding-block:26px 40px;font-size:14px;color:var(--mut)}
.cli-rodape .wrap{display:grid;gap:14px}
.cli-rodape b{color:var(--ink);font-weight:500;display:block}
.contatos{display:flex;flex-wrap:wrap;gap:8px 20px}
.contatos a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--ink);text-decoration:none}
.cli-rodape .feito{font:500 11.5px/1.4 var(--f-mono);letter-spacing:.06em;color:var(--mut)}
.luz{position:fixed;inset:0;z-index:100;background:rgba(14,15,13,.92);display:grid;place-items:center;padding:20px;gap:10px;grid-template-rows:1fr auto}
.luz img{max-width:100%;max-height:82vh;border-radius:8px;object-fit:contain}
.luz p{color:#eeebe4;font:500 13px var(--f-mono)}
.luz-x{position:fixed;top:14px;right:14px;width:48px;height:48px;border-radius:50%;border:0;background:#eeebe4;color:#141513;font-size:28px;line-height:1;cursor:pointer}
.erro-pg{min-height:60vh;align-content:center}
.erro-pg h1{font-size:clamp(40px,7vw,64px)}
@media(max-width:600px){
  .ep-cli .wrap{padding-inline:18px}
  .etapas-prop>li{grid-template-columns:36px 1fr}
  .registro li{grid-template-columns:1fr;gap:2px}
  .vazio-et{margin-left:0}
  .responder .barra .btn,.ajuste .barra .btn{flex:1 1 100%}
}
@media print{
  .cli-topo,.cli-rodape .contatos,.responder,.duvida,.aceite .btn,.faixa-previa{display:none!important}
  .registro,.anteriores,.proposta-aceita{display:block}.registro ol{display:grid!important}
  .et-and{break-inside:avoid;box-shadow:none}
}
