/* proposta.css — editor split-view (Leva 3B).
 * A FOLHA A4 vive em proposta_sheet.css (reusada pelo preview do editor, pelo
 * iframe do "Baixar PDF" e pela página pública da 3C). Aqui só o editor/overlay.
 */
@import url("/static/css/proposta_sheet.css");

/* ---------------- Overlay ---------------- */
.lt-overlay{
  position:fixed; inset:0; z-index:9000; background:#0b0d12;
  display:flex; flex-direction:column; opacity:0; pointer-events:none;
  transition:opacity .15s ease;
}
.lt-overlay.open{ opacity:1; pointer-events:auto; }

.lt-top{
  display:flex; align-items:center; gap:10px; padding:10px 14px;
  background:var(--lt-navy-fundo); color:#fff; border-bottom:1px solid #0a1c4a; flex-wrap:wrap;
}
.lt-top .lt-selo{ height:30px; width:auto; }
.lt-top-tit{ font-weight:700; font-size:14px; line-height:1.1; }
.lt-top-sub{ font-size:11px; color:#aab6df; }
.lt-spacer{ flex:1; }
.lt-pill{ font-size:11px; padding:3px 10px; border-radius:999px; font-weight:700; text-transform:capitalize; }
.lt-pill.rascunho{ background:#3a4152; color:#cfd6e6; }
.lt-pill.pronta{ background:var(--lt-gold-soft); color:#5a4410; }
.lt-pill.enviada{ background:var(--lt-navy); color:#fff; border:1px solid var(--lt-gold); }
.lt-btn{ font:600 13px/1 var(--lt-sans); padding:8px 12px; border-radius:8px; border:1px solid #2c313c;
  background:#21252e; color:#e8eaf0; cursor:pointer; }
.lt-btn:hover{ background:#2a2f3a; }
.lt-btn.primary{ background:var(--lt-gold); color:#1a1200; border-color:var(--lt-gold); }
.lt-btn.primary:hover{ filter:brightness(1.05); }
.lt-btn:disabled{ opacity:.45; cursor:not-allowed; }
.lt-btn.ghost{ background:transparent; }
.lt-x{ background:transparent; border:none; color:#fff; font-size:22px; cursor:pointer; line-height:1; padding:2px 6px; }

/* ---------------- Split ---------------- */
.lt-split{ flex:1; display:flex; min-height:0; }
.lt-left{ width:42%; min-width:340px; overflow:auto; background:#12151b; border-right:1px solid #2c313c; padding:14px; }
.lt-right{ flex:1; overflow:auto; background:#2a2d34; padding:22px; display:flex; justify-content:center; }
.lt-live{ position:sticky; top:0; align-self:flex-start; }  /* posicionamento da folha no preview */
.lt-tabs{ display:none; }

/* Grupos colapsáveis */
/* overflow VISIBLE: o dropdown do picker é absoluto e não pode ser clipado pelo grupo */
.lt-grp{ border:1px solid #2c313c; border-radius:10px; margin-bottom:12px; overflow:visible; background:#171a21; }
.lt-grp-h{ display:flex; align-items:center; gap:8px; padding:11px 13px; cursor:pointer; font-weight:600; font-size:13px; color:#e8eaf0; user-select:none; }
.lt-grp-h .lt-chev{ margin-left:auto; transition:transform .15s; color:#8b92a3; }
.lt-grp.closed .lt-grp-b{ display:none; }
.lt-grp.closed .lt-chev{ transform:rotate(-90deg); }
.lt-grp-b{ padding:0 13px 13px; }

.lt-field{ margin-bottom:10px; }
.lt-field label{ display:block; font-size:11px; color:#8b92a3; margin-bottom:4px; }
.lt-field input, .lt-field textarea, .lt-field select{
  width:100%; box-sizing:border-box; background:#0f1115; color:#e8eaf0;
  border:1px solid #2c313c; border-radius:8px; padding:8px 10px; font:400 13px/1.35 var(--lt-sans);
}
.lt-field textarea{ resize:vertical; min-height:54px; }
.lt-row2{ display:flex; gap:10px; } .lt-row2 > *{ flex:1; }
.lt-hint{ font-size:11px; color:#707a8a; margin-top:2px; }

/* Blocos de cardápio (cards) */
.lt-card{ border:1px solid #2c313c; border-radius:10px; padding:11px; margin-bottom:10px; background:#0f1115; }
.lt-card-top{ display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.lt-chip{ font-size:10px; font-weight:700; padding:2px 8px; border-radius:999px; text-transform:uppercase; letter-spacing:.04em; }
.lt-chip.catalogo{ background:var(--lt-gold-soft); color:#5a4410; }
.lt-chip.avulso{ background:#2c313c; color:#aab2c2; }
.lt-chip.editado{ background:#3a2f10; color:#e6c56a; }
.lt-card-del{ margin-left:auto; background:transparent; border:none; color:#ef4444; cursor:pointer; font-size:15px; }
.lt-cat-row{ border-top:1px dashed #2c313c; padding-top:8px; margin-top:8px; }
.lt-mini{ font:600 11px/1 var(--lt-sans); padding:6px 9px; border-radius:7px; border:1px solid #2c313c; background:#21252e; color:#cfd6e6; cursor:pointer; }
.lt-toggle{ display:flex; align-items:center; gap:6px; font-size:12px; color:#aab2c2; margin-top:6px; }

/* Picker híbrido */
.lt-picker{ position:relative; }
.lt-picker-drop{ position:absolute; z-index:10; left:0; right:0; top:calc(100% + 4px);
  background:#0f1115; border:1px solid #2c313c; border-radius:8px; max-height:240px; overflow:auto; box-shadow:0 8px 24px rgba(0,0,0,.5); }
.lt-picker-opt{ padding:9px 11px; cursor:pointer; font-size:13px; display:flex; align-items:center; gap:8px; }
.lt-picker-opt:hover{ background:#1b1f28; }
.lt-picker-opt .lt-po-tipo{ font-size:10px; color:#8b92a3; text-transform:uppercase; }
.lt-picker-opt.novo{ border-top:1px solid #2c313c; color:var(--lt-gold); font-weight:600; }

/* Responsivo: < 860px vira abas Editar / Ver */
@media (max-width:860px){
  .lt-left, .lt-right{ width:100%; }
  .lt-split.mob .lt-left{ display:none; } .lt-split.mob .lt-right{ display:flex; }
  .lt-split:not(.mob) .lt-right{ display:none; }
  .lt-tabs{ display:flex; gap:6px; padding:8px 14px 0; background:var(--lt-navy-fundo); }
  .lt-tab-btn{ flex:1; padding:8px; border-radius:8px 8px 0 0; border:none; background:#21252e; color:#cfd6e6; font-weight:600; cursor:pointer; }
  .lt-tab-btn.active{ background:#2a2d34; color:#fff; }
  .lt-sheet{ width:100%; max-width:100%; min-height:auto; }
}

/* Impressão de FALLBACK (Ctrl+P da tela). O botão "Baixar PDF" usa um iframe
   self-contained próprio (proposta_sheet.css + print CSS), então NÃO depende disto. */
@media print{
  html, body{ background:#fff !important; margin:0 !important; padding:0 !important; }
  body > *:not(.lt-overlay){ display:none !important; }
  .lt-overlay, .lt-split, .lt-right{ position:static !important; opacity:1 !important; pointer-events:auto;
    background:#fff !important; margin:0 !important; display:block !important; overflow:visible !important; }
  .lt-top, .lt-left, .lt-tabs{ display:none !important; }
  .lt-right{ padding:0 !important; }
  .lt-sheet, .lt-live{ box-shadow:none !important; width:auto !important; position:static !important;
    min-height:auto !important; margin:0 !important; background:var(--lt-papel) !important; }
  .lt-sheet, .lt-sheet *{ -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
  .lt-ph{ display:none !important; }
  .lt-bloco, .lt-tab, .lt-fecho, .lt-assin{ break-inside:avoid; }
  @page{ size:A4; margin:14mm; }
}
