/* Planejar evento — telas do evento futuro (js/planning.js).
   Usa as variáveis de tema do css/v2.css, então segue o claro e o escuro. */

/* A tela do planejamento tem o mesmo cabeçalho, abas e cartões de resumo da
   tela do evento. As regras abaixo são as de #screen-evento para essas
   partes, copiadas na mesma ordem de cascata (styles, v2, responsive-mobile)
   com #screen-evento trocado por #screen-planejamento. O VERIFICAR.cmd avisa
   quando a cópia fica desatualizada; para refazer, rode
   node scripts/test-planning-css.js --atualizar */
/* início da cópia de #screen-evento (gerada por scripts/test-planning-css.js) */
/* de css/styles.css */
#screen-planejamento .event-header{display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding-block:18px;}
#screen-planejamento .event-header-copy .title{font-size:22px;line-height:1.2}
#screen-planejamento .event-header-copy .sub{margin-top:4px}
#screen-planejamento .event-header-actions{display:grid;
  grid-template-columns:auto auto auto;
  align-items:center;
  gap:8px;}
#screen-planejamento .event-header-buttons .btn{min-height:42px;padding-inline:15px}
#screen-planejamento .event-header-buttons .btn span{white-space:nowrap}
#screen-planejamento.event-readonly .event-header-actions{display:none!important}
#screen-planejamento.event-readonly .event-participants-action{display:none!important}
#screen-planejamento .event-tabs{margin-top:0;margin-bottom:4px}
#screen-planejamento>.content{padding-top:18px}
#screen-planejamento .event-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height:138px;
  padding:18px 20px;
  border-radius:16px;
  box-shadow:0 8px 24px rgba(31,38,74,.055);}
#screen-planejamento .event-financial-status .amount{font-size:29px}
#screen-planejamento .event-total-card>strong{font-size:27px}
@media(max-width:760px){
#screen-planejamento .event-summary-grid{grid-template-columns:1fr 1fr;gap:9px}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height:122px;padding:15px}
#screen-planejamento .event-financial-status .amount,
#screen-planejamento .event-total-card>strong{font-size:22px}
#screen-planejamento .event-summary-statement{padding:15px 15px 3px}
}
@media(max-width:560px){
#screen-planejamento .event-header{gap:10px;padding-block:14px}
#screen-planejamento .event-header-copy .title{font-size:19px}
#screen-planejamento .event-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{padding:13px;min-width:0}
#screen-planejamento .event-financial-status .label,
#screen-planejamento .event-total-card>span{font-size:10px}
#screen-planejamento .event-financial-status .amount,
#screen-planejamento .event-total-card>strong{font-size:18px;white-space:nowrap}
}
#screen-planejamento .event-navigation-sticky{position:sticky;
  top:calc(var(--app-header-height,72px) + 12px);
  z-index:46;
  padding-bottom:14px;
  background:var(--v2-bg);}
#screen-planejamento .event-navigation-sticky::before{content:"";
  position:fixed;
  left:0;
  right:0;
  top:var(--app-header-height,72px);
  height:12px;
  background:var(--v2-bg);
  pointer-events:none;}
#screen-planejamento .event-navigation-sticky .event-header{margin-bottom:12px;}
#screen-planejamento .event-navigation-sticky .event-tabs{margin-bottom:0;}
@media(max-width:720px){
#screen-planejamento .event-navigation-sticky{top:calc(var(--app-header-height,58px) + 12px);
    padding-bottom:12px;}
}
#screen-planejamento .event-header{grid-template-columns:44px minmax(0,1fr) auto;}
#screen-planejamento>.content{padding-top:0}
#screen-planejamento .event-tabs{margin-bottom:16px}
#screen-planejamento .event-summary-grid{align-items:stretch}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height:112px;
  padding-block:16px;}
#screen-planejamento .event-total-card>strong{margin-top:2px}
#screen-planejamento .event-expenses-title{display:flex;
  align-items:center;
  gap:8px;}
#screen-planejamento .event-expense-count{display:inline-grid;
  place-items:center;
  min-width:23px;
  height:23px;
  padding:0 7px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-alt);
  color:var(--ink-secondary);
  font:700 11px/1 'Inter',sans-serif;}
#screen-planejamento .event-summary-statement>.section-title{margin:0;
  padding:0 0 12px;
  border-bottom:1px solid var(--border);}
@media(max-width:560px){
#screen-planejamento .event-header{grid-template-columns:42px minmax(0,1fr) auto;}
#screen-planejamento .event-tabs{margin-bottom:14px}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height:106px;
    padding-block:13px;}
}

/* de css/v2.css */
#screen-planejamento .event-participants-list .participant-row{min-width:0;
  margin:0;
  padding:12px;
  border:1px solid var(--v2-border);
  border-radius:14px;
  background:var(--v2-surface-2);
  transition:border-color .18s ease,background .18s ease,transform .18s ease;}
#screen-planejamento .event-participants-list .participant-row:hover{border-color:color-mix(in srgb,var(--v2-primary) 42%,var(--v2-border));
  background:color-mix(in srgb,var(--v2-primary) 5%,var(--v2-surface-2));
  transform:translateY(-1px);}
#screen-planejamento .event-participants-list .participant-row:last-child{border-bottom:1px solid var(--v2-border)}
@media(max-width:560px){
#screen-planejamento .event-participants-list .participant-row{padding:11px 12px}
}
#screen-planejamento > .content{background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding-left:0!important;
  padding-right:0!important;}

/* de css/responsive-mobile.css */
@media (max-width: 720px){
#screen-planejamento .event-header{display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 13px !important;}
#screen-planejamento.event-readonly .event-header-actions{display: none !important;}
#screen-planejamento .event-header-buttons{display: none !important;}
#screen-planejamento .event-summary-grid{grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;}
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height: 126px;
    padding: 13px !important;}
}
@media (max-width: 390px){
#screen-planejamento .event-financial-status .amount,
#screen-planejamento .event-total-card > strong{font-size: 17px;}
}
@media(max-width:720px){
#screen-planejamento .event-financial-status,
#screen-planejamento .event-total-card{min-height:104px !important;
    padding:13px !important;}
}
@media (max-width:560px){
#screen-planejamento .event-tabs{display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    overflow:visible !important;}
#screen-planejamento .event-tabs .seg{width:auto !important;
    min-width:0 !important;
    padding-inline:4px !important;
    font-size:clamp(9px,2.55vw,11px) !important;}
}
@media (max-width:350px){
#screen-planejamento .event-tabs{display:flex !important;
    overflow-x:auto !important;
    scroll-snap-type:x proximity;}
#screen-planejamento .event-tabs .seg{flex:0 0 76px !important;
    scroll-snap-align:start;}
}
/* fim da cópia de #screen-evento */

/* Espaço para o botão flutuante "Registrar pagamento" no fim das listas. */
#screen-planejamento>.content,#screen-plan-item-detalhe>.content,#screen-plan-lista>.content,#screen-plan-tarefa-detalhe>.content{padding-bottom:110px}
/* Detalhe do item e da tarefa: os cartões ficam direto no fundo, como na
   tela do planejamento, e a contagem ao lado do título usa o mesmo selo. */
#screen-plan-item-detalhe>.content,#screen-plan-tarefa-detalhe>.content{background:transparent!important;border:0!important;box-shadow:none!important;padding-left:0!important;padding-right:0!important}
#screen-plan-item-detalhe .section-title:has(.event-expense-count),#screen-plan-tarefa-detalhe .section-title:has(.event-expense-count){display:flex;align-items:center;gap:8px}
#screen-plan-item-detalhe .event-expense-count,#screen-plan-tarefa-detalhe .event-expense-count{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 7px;border:1px solid var(--border);border-radius:999px;background:var(--surface-alt);color:var(--ink-secondary);font:700 11px/1 'Inter',sans-serif}

.status-planning{color:var(--v2-primary);background:color-mix(in srgb,var(--v2-primary) 14%,transparent)}

.plan-content{display:flex;flex-direction:column;gap:12px}
.plan-content>[data-plan-section]{display:flex;flex-direction:column;gap:12px}
.plan-content>[data-plan-section][hidden]{display:none}
.plan-content .event-summary-grid{margin:0}

.plan-card{display:flex;flex-direction:column;gap:8px;width:100%;padding:14px;border:1px solid var(--v2-border);border-radius:var(--v2-radius,16px);background:var(--v2-surface);box-shadow:var(--v2-soft-shadow);color:var(--v2-text);text-align:left;font:inherit}
.plan-card .section-title{margin:0}
button.plan-card{cursor:pointer}
button.plan-card:hover{border-color:color-mix(in srgb,var(--v2-primary) 45%,var(--v2-border))}
.plan-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.plan-card-note{font-size:12.5px;color:var(--v2-muted)}
.plan-link{border:0;background:none;padding:0;color:var(--v2-primary);font:700 12.5px 'Inter',sans-serif;cursor:pointer}
.plan-paid-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px}
.plan-paid-head-small{font-size:12.5px;color:var(--v2-muted);margin-top:4px}
.plan-paid-pct{display:inline-flex;align-items:center;gap:6px;color:var(--v2-primary)}
.plan-bar{display:block;height:7px;border-radius:7px;background:var(--v2-surface-2);overflow:hidden}
.plan-bar>i{display:block;height:100%;width:0;border-radius:7px;background:linear-gradient(90deg,#00C6B3,var(--v2-primary));transition:width .25s ease}
.plan-kv{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--v2-muted);padding:6px 0;border-top:1px solid var(--v2-border)}
.plan-kv:first-of-type{border-top:0}
.plan-kv strong{color:var(--v2-text);text-align:right}
.positive-text{color:var(--v2-positive)!important}
.negative-text{color:var(--v2-negative)!important}
.plan-big{font-size:24px;font-weight:800}
.plan-help{margin:0 2px;font-size:12px;line-height:1.45;color:var(--v2-faint)}
.plan-empty{padding:10px 0;font-size:13px;color:var(--v2-muted)}
.plan-wide-action{width:100%}

.plan-budget-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;text-align:center}
.plan-budget-totals span{display:block;font-size:12px;color:var(--v2-muted);font-weight:600}
.plan-budget-totals strong{display:block;margin-top:3px;font-size:14px}

/* Linhas: datas, itens, pagamentos, agenda e tarefas */
.plan-line{display:flex;align-items:center;gap:11px;width:100%;padding:11px 0;border:0;border-top:1px solid var(--v2-border);background:none;color:var(--v2-text);text-align:left;font:inherit}
.plan-line:first-child,.plan-card>.section-title+.plan-line,.plan-card-head+div>.plan-line:first-child{border-top:0}
.plan-line-button{cursor:pointer}
.plan-line-button:hover .plan-line-main strong{color:var(--v2-primary)}
.plan-line-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.plan-line-main strong{font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.plan-line-main small{font-size:12px;line-height:1.35;color:var(--v2-muted)}
.plan-line-side{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right}
.plan-line-side strong{font-size:14px}
.plan-line-side small{font-size:11.5px;color:var(--v2-muted)}
.plan-line.is-past .plan-line-main strong{color:var(--v2-muted);font-weight:600}
.plan-estimate{color:var(--v2-muted)}
.plan-tile{width:40px;height:40px;border-radius:12px}
.plan-date{width:34px;flex-shrink:0;text-align:center;line-height:1.15}
.plan-date span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;color:var(--v2-muted)}
.plan-date strong{display:block;font-size:18px;font-weight:800}
.plan-chip{display:inline-flex;align-items:center;margin-top:4px;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:800;white-space:nowrap;background:var(--v2-surface-2);color:var(--v2-muted)}
.plan-chip.is-info{background:color-mix(in srgb,var(--v2-primary) 14%,transparent);color:var(--v2-primary)}
.plan-chip.is-warning{background:color-mix(in srgb,var(--v2-warning) 16%,transparent);color:var(--v2-warning)}
.plan-chip.is-positive{background:color-mix(in srgb,var(--v2-positive) 14%,transparent);color:var(--v2-positive)}
.plan-chip.is-negative{background:color-mix(in srgb,var(--v2-negative) 14%,transparent);color:var(--v2-negative)}
.plan-icon-action{width:30px;height:30px;border-radius:9px;border:1px solid var(--v2-border);background:var(--v2-surface-2);color:var(--v2-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.plan-icon-action:hover{color:var(--v2-negative)}
.plan-line .avatar{width:32px;height:32px;margin:0;flex-shrink:0}

.plan-month{margin:6px 2px -4px}
.plan-agenda-card{gap:0;padding-top:4px;padding-bottom:4px}
.plan-today{display:flex;align-items:center;gap:8px;margin:4px 2px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--v2-primary)}
.plan-today::before,.plan-today::after{content:"";flex:1;height:1px;background:var(--v2-primary);opacity:.45}
.plan-filter{margin:0;max-width:none}
.plan-filter .seg,.plan-segmented .seg{flex:1 1 0!important;min-width:0;text-align:center;justify-content:center}

/* Tarefas */
.plan-check{width:24px;height:24px;flex-shrink:0;border-radius:7px;border:1.5px solid var(--v2-border);background:var(--v2-surface-2);color:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.plan-check.is-on{background:var(--v2-positive);border-color:var(--v2-positive);color:#fff}
.plan-task.is-done .plan-line-main strong{text-decoration:line-through;color:var(--v2-muted)}
.plan-task-form{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.plan-link-anchor{font-size:14px;font-weight:700;color:var(--v2-primary);text-decoration:none;overflow-wrap:anywhere}
.plan-link-anchor:hover{text-decoration:underline}
.plan-notes{min-height:110px;height:auto;padding-top:12px;padding-bottom:12px;resize:vertical;font:500 14px/1.5 'Inter',sans-serif}
.plan-task-form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
/* Linhas que abrem a tarefa ou o item (Agenda e Tarefas). */
.plan-line-open{cursor:pointer}
.plan-line-open:hover .plan-line-main strong,.plan-line-main.plan-line-open:hover strong{color:var(--v2-primary)}
.plan-line-open:focus-visible{outline:2px solid color-mix(in srgb,var(--v2-primary) 40%,transparent);outline-offset:2px;border-radius:8px}
.plan-line-chevron{color:var(--v2-muted);transform:rotate(180deg)}
.plan-line-side:has(.plan-line-chevron){flex-direction:row;align-items:center;gap:8px}
.plan-task .plan-line-side{flex-direction:row;align-items:center;gap:6px}
/* Links no formulário da tarefa: nome e endereço empilhados e o X ao lado. */
.plan-task-link-row{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:8px;margin-bottom:10px}
.plan-task-link-fields{display:flex;flex-direction:column;gap:6px;min-width:0}
.plan-notes-text,.plan-legacy-notes{margin:4px 0 0;font-size:14px;line-height:1.5;color:var(--v2-text);white-space:pre-wrap;overflow-wrap:anywhere}

/* Formulários do item e do pagamento */
.plan-form .field-label{margin-top:14px}
.plan-form .create-field .field-label{display:block;margin:0 0 8px}
/* Os campos com <label> são inline por padrão e perdiam a margem de cima. */
.plan-form .create-field{display:block;margin-top:14px}
/* O primeiro campo encosta no topo do cartão, como na Nova despesa. */
.plan-form>:first-child{margin-top:0}
.plan-form .plan-help{margin-top:6px}
.plan-segmented{margin:0;max-width:none}
.plan-icon-picker{display:flex;flex-wrap:wrap;gap:6px}
.plan-icon-picker[hidden]{display:none}
.plan-settings-row{margin-top:10px}
.plan-installment-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 30px;align-items:center;gap:8px;margin-bottom:8px}
.plan-callout{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:11px 12px;border-radius:12px;background:color-mix(in srgb,var(--v2-primary) 10%,transparent);font-size:12.5px;line-height:1.45;color:var(--v2-text)}
.plan-callout .icon{color:var(--v2-primary);flex-shrink:0;margin-top:1px}
.plan-topbar-copy{flex:1;min-width:0}
#plp-to[hidden],#pli-payer-field[hidden],#pli-due-field[hidden],#pli-installments-row[hidden]{display:none!important}
.plan-started-extra{margin:0 0 12px}

@media (max-width:640px){
  .plan-content{gap:10px}
  .plan-line-side strong{font-size:13.5px}
  .plan-tile{width:36px;height:36px}
}

/* Meus eventos: com o filtro "Em planejamento" são quatro filtros, que não
   cabem entre o título e os botões em telas médias. Até 1320px usa o mesmo
   arranjo que o app já usa abaixo de 980px: filtros numa linha própria. */
@media (min-width:981px) and (max-width:1320px){
  #screen-eventos .panel-heading{grid-template-columns:1fr auto}
  #screen-eventos .panel-heading>div:first-child{grid-column:1}
  #screen-eventos .event-filter-group{grid-column:1 / -1;grid-row:2;justify-self:center}
  #screen-eventos .home-event-actions{grid-column:2;grid-row:1}
}
