/* ===== assets/fichas.css =====
   Fichas Técnicas (Shooting/Seeding/Evento) — página /fichas e versão modal
   ("+ criar ficha" a partir de um item de Planejamento ou de um To Do).
   Escopado por classe (.ayaFichasPage), não por id, porque a mesma tela pode
   existir duas vezes ao mesmo tempo no DOM (a página /fichas montada + uma
   instância dentro do modal de criação rápida). As regras de impressão
   (@media print) ficam de propósito FORA do escopo — precisam valer a página
   inteira pra esconder sidebar/topbar/modal na hora do PDF. */
.ayaFichasPage {
  --green-900:#1c361d;
  --green-800:#24422a;
  --beige:#f2ecdd;
  --beige-soft:#f8f4e9;
  --white:#ffffff;
  --ink:#1e1d18;
  --muted:#7a7566;
  --muted-soft:#a39d8b;
  --border:#e6dfc9;
  --border-soft:#ece6d4;
  --magenta:#e315e2;
  --magenta-soft:#fceafc;
  --green-ok:#3f7a4a;
  --green-ok-soft:#e7f2e8;
  --amber:#a3790a;
  --amber-soft:#fff6e0;
  --red:#c65b4e;
  --red-soft:#fbeae7;
  --gray-soft:#eeece4;
  --radius-lg:20px;
  --radius-md:14px;
  --shadow-card:0 1px 2px rgba(28,54,29,.05), 0 10px 28px -14px rgba(28,54,29,.16);
  --shadow-pop:0 12px 36px -12px rgba(28,54,29,.30);
  --ease: cubic-bezier(0.23, 1, 0.32, 1);
  font-family:'Inter',ui-sans-serif,system-ui,sans-serif;
  background:var(--beige);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
}

.ayaFichasPage * {
  box-sizing:border-box;
}

.ayaFichasPage h1, .ayaFichasPage h2, .ayaFichasPage h3, .ayaFichasPage .serif {
  font-family:'Fraunces',serif;
  font-weight:600;
  letter-spacing:-0.01em;
  text-transform:lowercase;
  margin:0;
}

.ayaFichasPage button {
  font-family:inherit;
}

.ayaFichasPage a {
  color:inherit;
  text-decoration:none;
}

.ayaFichasPage :focus-visible {
  outline:2px solid var(--magenta);
  outline-offset:2px;
  border-radius:6px;
}

.ayaFichasPage .aya-icon {
  vertical-align:middle;
  flex:none;
}

.ayaFichasPage .content {
  padding:26px 32px 60px;
  max-width:1080px;
  width:100%;
  margin:0;
}

.ayaFichasPage.aya-modal-content .content {
  padding:0;
  max-width:none;
}

.ayaFichasPage .eyebrow {
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--muted-soft);
  font-weight:700;
  margin-bottom:6px;
}

.ayaFichasPage .page-head h1 {
  font-size:var(--fs-page-title);
  color:var(--green-900);
}

.ayaFichasPage .page-head p {
  margin:6px 0 0;
  font-size:13px;
  color:var(--muted);
}

.ayaFichasPage .seg {
  display:flex;
  gap:4px;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:12px;
  padding:4px;
  width:max-content;
  margin:18px 0 22px;
}

.ayaFichasPage .seg .opt {
  padding:9px 18px;
  border-radius:9px;
  font-size:12.5px;
  font-weight:700;
  color:var(--muted);
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:7px;
}

.ayaFichasPage .seg .opt.active {
  background:var(--green-900);
  color:var(--beige);
}

.ayaFichasPage .btn {
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:10px 16px;
  border-radius:11px;
  font-size:var(--fs-btn);
  font-weight:var(--fw-bold);
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .12s,background .15s;
  white-space:nowrap;
}

.ayaFichasPage .btn:active {
  transform:scale(.97);
}

.ayaFichasPage .btn-primary {
  background:var(--green-900);
  color:var(--beige);
}

.ayaFichasPage .btn-primary:hover {
  background:var(--green-800);
}

.ayaFichasPage .btn-outline {
  background:var(--white);
  border-color:var(--border);
  color:var(--ink);
}

.ayaFichasPage .btn-outline:hover {
  background:var(--beige-soft);
}

.ayaFichasPage .btn-ghost {
  background:transparent;
  color:var(--muted);
}

.ayaFichasPage .btn-ghost:hover {
  background:var(--gray-soft);
  color:var(--ink);
}

.ayaFichasPage .btn-sm {
  padding:6px 10px;
  font-size:var(--fs-btn-sm);
  border-radius:8px;
}

.ayaFichasPage .btn-icon {
  width:30px;
  height:30px;
  padding:0;
  justify-content:center;
  border-radius:8px;
}

.ayaFichasPage .panel {
  background:var(--white);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-card);
  padding:14px 16px;
  margin-bottom:12px;
}

.ayaFichasPage .sec-title {
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:700;
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}

.ayaFichasPage .sec-title .n {
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--green-900);
  color:var(--beige);
  font-family:'Fraunces',serif;
  font-weight:600;
  font-size:9.5px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
}

.ayaFichasPage .field {
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-bottom:9px;
}

.ayaFichasPage .field label {
  font-size:10.5px;
  font-weight:700;
  color:var(--muted);
}

.ayaFichasPage .field .hint {
  font-size:9.5px;
  color:var(--muted-soft);
  font-weight:400;
}

.ayaFichasPage .field input, .ayaFichasPage .field select, .ayaFichasPage .field textarea {
  padding:7px 9px;
  border:1px solid var(--border);
  border-radius:8px;
  font-size:11.5px;
  font-family:inherit;
  color:var(--ink);
  width:100%;
}

.ayaFichasPage .field textarea {
  min-height:46px;
  resize:vertical;
}

.ayaFichasPage .field-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

.ayaFichasPage .field-row3 {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:9px;
}

.ayaFichasPage .chip-select {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.ayaFichasPage .block-toggle-btn {
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 10px;
  border-radius:8px;
  border:1px solid var(--border);
  font-size:var(--fs-btn-sm);
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  background:var(--white);
}

.ayaFichasPage .block-toggle-btn:hover { background:var(--beige-soft); }

.ayaFichasPage .block-toggle-btn.on {
  background:var(--green-900);
  border-color:var(--green-900);
  color:var(--beige);
}

.ayaFichasPage .chip-opt {
  padding:6px 13px;
  border-radius:999px;
  border:1px solid var(--border);
  font-size:11.5px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
  background:var(--white);
}

.ayaFichasPage .chip-opt.on {
  background:var(--green-900);
  border-color:var(--green-900);
  color:var(--beige);
}

.ayaFichasPage .rep-table {
  width:100%;
  border-collapse:collapse;
  margin-bottom:8px;
}

.ayaFichasPage .rep-table th {
  text-align:left;
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted-soft);
  font-weight:700;
  padding:6px 8px;
  border-bottom:1px solid var(--border-soft);
  white-space:nowrap;
}

.ayaFichasPage .rep-table td {
  padding:5px 6px;
  vertical-align:top;
}

.ayaFichasPage .rep-table input, .ayaFichasPage .rep-table select {
  padding:7px 9px;
  border:1px solid var(--border);
  border-radius:8px;
  font-size:12px;
  width:100%;
}

.ayaFichasPage .rep-table .num {
  width:34px;
  text-align:center;
  font-weight:700;
  color:var(--muted-soft);
  padding-top:9px;
}

.ayaFichasPage .rep-table .rm {
  width:30px;
}

.ayaFichasPage .rep-rm-btn {
  width:26px;
  height:26px;
  border-radius:7px;
  border:1px solid var(--border);
  background:var(--white);
  color:var(--red);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}

.ayaFichasPage .rep-rm-btn:hover {
  background:var(--red-soft);
}

.ayaFichasPage .rep-foot {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:4px;
}

.ayaFichasPage .total-pill {
  font-size:11.5px;
  font-weight:700;
  color:var(--green-900);
}

.ayaFichasPage .fixed-table {
  width:100%;
  border-collapse:collapse;
}

.ayaFichasPage .fixed-table th {
  text-align:left;
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted-soft);
  font-weight:700;
  padding:6px 8px;
  border-bottom:1px solid var(--border-soft);
}

.ayaFichasPage .fixed-table td {
  padding:6px 8px;
  vertical-align:top;
  font-size:12.5px;
}

.ayaFichasPage .fixed-table .area-label {
  font-weight:700;
  padding-top:9px;
  white-space:nowrap;
}

.ayaFichasPage .fixed-table input {
  padding:7px 9px;
  border:1px solid var(--border);
  border-radius:8px;
  font-size:12px;
  width:100%;
}

.ayaFichasPage .radio-row {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.ayaFichasPage .radio-opt {
  padding:8px 14px;
  border-radius:10px;
  border:1px solid var(--border);
  font-size:12px;
  font-weight:600;
  color:var(--muted);
  cursor:pointer;
}

.ayaFichasPage .radio-opt.on {
  border-color:var(--green-900);
  background:var(--green-ok-soft);
  color:var(--green-900);
}

.ayaFichasPage .action-bar {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
  margin-top:6px;
  margin-bottom:26px;
}

.ayaFichasPage .hist-panel {
  background:var(--white);
  border:1px solid var(--border-soft);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-card);
  overflow:hidden;
}

.ayaFichasPage table.hist {
  width:100%;
  border-collapse:collapse;
}

.ayaFichasPage table.hist thead th {
  text-align:left;
  font-size:10.5px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted-soft);
  font-weight:700;
  padding:12px 18px;
  border-bottom:1px solid var(--border-soft);
}

.ayaFichasPage table.hist tbody td {
  padding:11px 18px;
  font-size:12.5px;
  border-bottom:1px solid var(--border-soft);
}

.ayaFichasPage table.hist tbody tr:last-child td {
  border-bottom:none;
}

.ayaFichasPage .pill {
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  border-radius:999px;
  font-size:10.5px;
  font-weight:700;
}

.ayaFichasPage .empty-note {
  padding:30px 18px;
  text-align:center;
  color:var(--muted);
  font-size:12.5px;
}

.ayaFichasPage .ficha-toast {
  position:fixed;
  bottom:22px;
  right:22px;
  background:var(--green-900);
  color:var(--beige);
  padding:12px 18px;
  border-radius:12px;
  font-size:13px;
  font-weight:600;
  box-shadow:var(--shadow-pop);
  z-index:160;
  transform:translateY(10px);
  opacity:0;
  transition:transform .2s var(--ease),opacity .2s var(--ease);
  pointer-events:none;
}

.ayaFichasPage .ficha-toast.show {
  transform:translateY(0);
  opacity:1;
}

.ayaFichasPage .print-area {
  display:none;
}

@media (max-width:980px) {
  .ayaFichasPage .content {
    padding:18px 14px 44px;
  }
  .ayaFichasPage .field-row, .ayaFichasPage .field-row3 {
    grid-template-columns:1fr;
  }
}

/* ---- versão modal ("+ criar ficha" a partir de um item/to do) ---- */
.aya-ficha-modal-overlay {
  position:fixed; inset:0; background:rgba(28,54,29,.4);
  opacity:0; pointer-events:none; transition:opacity .2s cubic-bezier(0.23, 1, 0.32, 1);
  z-index:150; display:flex; align-items:center; justify-content:center; padding:20px;
}
.aya-ficha-modal-overlay.show { opacity:1; pointer-events:auto; }
.aya-ficha-modal-box {
  background:#f2ecdd; border-radius:20px; width:min(880px,100%); max-height:92vh;
  overflow-y:auto; border:1px solid #e6dfc9; box-shadow:0 12px 36px -12px rgba(28,54,29,.30);
  transform:scale(.97); opacity:0; transition:transform .2s cubic-bezier(0.23, 1, 0.32, 1),opacity .2s cubic-bezier(0.23, 1, 0.32, 1);
  position:relative; padding:32px 34px 34px;
}
.aya-ficha-modal-overlay.show .aya-ficha-modal-box { transform:scale(1); opacity:1; }
.aya-ficha-modal-close {
  position:sticky; top:14px; float:right; margin-right:14px;
  width:30px; height:30px; border-radius:50%; background:#fff; border:1px solid #e6dfc9;
  display:flex; align-items:center; justify-content:center; color:#7a7566; cursor:pointer; z-index:2;
}
.aya-ficha-modal-close:hover { background:#f8f4e9; }

/* --- regras globais de impressão (não escopadas de propósito) --- */
@media print{
    body *{visibility:hidden;}
    .print-area-active, .print-area-active *{visibility:visible;}
    .print-area-active{display:block !important;position:absolute;top:0;left:0;width:100%;padding:0;margin:0;}
    .p-doc{padding:20px 6px;}
    .p-header{text-align:center;border-bottom:2px solid #1c361d;padding-bottom:14px;margin-bottom:18px;}
    .p-header h1{font-family:'Fraunces',serif;font-weight:600;font-size:22px;color:#1c361d;text-transform:uppercase;letter-spacing:.03em;}
    .p-header .sub{font-size:11px;color:#7a7566;margin-top:6px;}
    .p-header .ver{font-size:10px;color:#a39d8b;margin-top:2px;}
    .p-sec{margin-bottom:16px;page-break-inside:avoid;}
    /* Uma .p-sec com tabela grande (ex: histórico de pedidos de um influenciador com
       dezenas de linhas) não cabe inteira numa página — "avoid" nela é impossível de
       cumprir, e forçar isso some com o conteúdo no PDF em vez de deixar quebrar entre
       páginas (bug real: histórico de pedidos não saía no PDF pra influenciadora com
       muitos pedidos). Sem "avoid" só nas seções com tabela — as outras (Dados/Resumo,
       poucas linhas .p-row) continuam protegidas contra quebra no meio. */
    .p-sec:has(.p-table){page-break-inside:auto;}
    .p-sec-title{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#1c361d;border-bottom:1px solid #e6dfc9;padding-bottom:4px;margin-bottom:8px;}
    .p-row{display:flex;gap:6px;font-size:11.5px;padding:2px 0;}
    .p-row .k{font-weight:700;min-width:170px;}
    .p-row .v{color:#333;}
    .p-table{width:100%;border-collapse:collapse;margin:6px 0 4px;}
    .p-table thead{display:table-header-group;}
    .p-table tr{page-break-inside:avoid;}
    .p-table th{font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;text-align:left;border-bottom:1px solid #1c361d;padding:4px 6px;}
    .p-table td{font-size:10.5px;padding:4px 6px;border-bottom:1px solid #e6dfc9;}
    .p-footer{text-align:center;font-style:italic;font-size:10.5px;color:#7a7566;margin-top:20px;border-top:1px solid #e6dfc9;padding-top:10px;}
}
