/* Linguagem visual da área de trabalho, alinhada à tela de login. */
body:not(.guest-page){
  --ink:#233d32;--muted:#5d6b63;--paper:#fff;--sand:#fafbf9;
  --accent:#254f3c;--green:#254f3c;--line:#d3ddd5;
  background:#fafbf9;color:#233d32;
}
body:not(.guest-page) .local-banner{background:#fafbf9;border-bottom:1px solid #d3ddd5;color:#254f3c}
body:not(.guest-page) .local-banner #syncStatus{color:#5d6b63}
body:not(.guest-page) h1,
body:not(.guest-page) h2,
body:not(.guest-page) h3{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.025em}
body:not(.guest-page) h1{font-weight:650}
body:not(.guest-page) h2,
body:not(.guest-page) h3{font-weight:600}
body:not(.guest-page) button,
body:not(.guest-page) .button{border-radius:5px;box-shadow:none}
body:not(.guest-page) .new-event,
body:not(.guest-page) .dialog-actions button[type=submit]{background:#254f3c;color:#fff}
body:not(.guest-page) button.secondary,
body:not(.guest-page) .button.secondary{background:transparent;border:1px solid #becdc2;color:#254f3c}
body:not(.guest-page) button:focus-visible,
body:not(.guest-page) a:focus-visible,
body:not(.guest-page) input:focus-visible,
body:not(.guest-page) select:focus-visible{outline:3px solid #719980;outline-offset:2px}
body:not(.guest-page) input,
body:not(.guest-page) select,
body:not(.guest-page) textarea{border-radius:5px;border-color:#b5c4b9}

/* Seções abertas substituem cartões decorativos. */
body:not(.guest-page) .panel,
body:not(.guest-page) .event-toolbar,
body:not(.guest-page) .plan-filters{
  background:transparent;border:0;border-bottom:1px solid #d3ddd5;
  border-radius:0;box-shadow:none;padding:20px 0 24px;
}
body:not(.guest-page) .panel:first-child{padding-top:0}
body:not(.guest-page) .empty,
body:not(.guest-page) .events-empty{background:transparent;border:0;border-radius:0;box-shadow:none;padding:26px 0;text-align:left;color:#5d6b63}
body:not(.guest-page) .workspace-guide{background:transparent}
body:not(.guest-page) .workspace-navigation{
  background:transparent;border:0;border-right:1px solid #d3ddd5;
  border-radius:0;box-shadow:none;padding:10px 18px 18px 0;
}
body:not(.guest-page) .navigation-item.active{background:#e7efe9;color:#254f3c;box-shadow:inset 3px 0 #254f3c}
body:not(.guest-page) .navigation-item.active small{color:#4d6958}
body:not(.guest-page) .navigation-item:hover{background:#edf3ef}
body:not(.guest-page) .navigation-brand{border-bottom-color:#d3ddd5}
body:not(.guest-page) .navigation-account{border-bottom-color:#d3ddd5}

/* Números em faixas simples; a cor indica o dado principal. */
body:not(.guest-page) .stat,
body:not(.guest-page) .metric,
body:not(.guest-page) .plan-stat,
body:not(.guest-page) #confirmations .response-stats>div{
  min-height:0;background:transparent;border:0;border-left:1px solid #d3ddd5;
  border-radius:0;box-shadow:none;padding:9px 14px 9px 18px;
}
body:not(.guest-page) .stat:first-child,
body:not(.guest-page) .metric:first-child,
body:not(.guest-page) .plan-stat:first-child,
body:not(.guest-page) #confirmations .response-stats>div:first-child{border-left-color:#789b83}
body:not(.guest-page) .stat b,
body:not(.guest-page) .metric b,
body:not(.guest-page) .plan-stat b{color:#254f3c}
body:not(.guest-page) #checkin>.stats:first-child>.stat:first-child{background:transparent;color:#233d32;border:0;border-left:3px solid #254f3c}
body:not(.guest-page) .metric-arrived{background:transparent;border-left:3px solid #254f3c}
body:not(.guest-page) .age-summary{background:transparent;border:0;border-top:1px solid #d3ddd5;border-radius:0;padding:20px 0}
body:not(.guest-page) .age-summary .stat{border-left:1px solid #d3ddd5}

/* Listas mostram relações por ordem e divisórias, sem empilhar caixas. */
body:not(.guest-page) .event-list{grid-template-columns:1fr;gap:0}
body:not(.guest-page) .event-card,
body:not(.guest-page) .team-page .row,
body:not(.guest-page) .row,
body:not(.guest-page) .plan-item{
  border:0;border-bottom:1px solid #d3ddd5;border-radius:0;
  background:transparent;box-shadow:none;margin:0;
}
body:not(.guest-page) .event-card{min-height:72px;padding:15px 14px}
body:not(.guest-page) .event-card.selected{background:var(--event-tint,#e7efe9);box-shadow:inset 4px 0 #254f3c}
body:not(.guest-page) .event-card:hover{background:#edf3ef;box-shadow:none}
body:not(.guest-page) .event-card.selected:hover{box-shadow:inset 4px 0 #254f3c}
body:not(.guest-page) #eventList>#eventDetails{border:0;border-bottom:1px solid #d3ddd5;border-radius:0;box-shadow:inset 4px 0 #254f3c;padding:18px}
body:not(.guest-page) .plan-time{background:transparent}
body:not(.guest-page) .plan-item.status-in_progress{box-shadow:inset 3px 0 #254f3c}
body:not(.guest-page) .plan-notes{background:#edf3ef;border-radius:4px}
body:not(.guest-page) .table-wrap,
body:not(.guest-page) .checkin-team-group{border:0;border-radius:0;box-shadow:none}
body:not(.guest-page) th{background:#e8eee8;color:#385747}
body:not(.guest-page) .report-option{border-left:2px solid #789b83;border-bottom:0;padding:12px 20px}
body:not(.guest-page) .report-symbol{background:transparent}

/* Formulários abertos mantêm um contorno leve para separar a camada modal. */
body:not(.guest-page) dialog{background:#fff;border:1px solid #d3ddd5;border-radius:10px}
/* Base compartilhada dos formulários modais. O menu lateral tem geometria própria. */
@media screen{
  body:not(.guest-page) dialog:not(.mobile-navigation-dialog):not(.header-navigation-dialog){
    box-sizing:border-box;
    max-width:calc(100vw - 24px);
    max-height:calc(100vh - 24px);
    max-height:calc(100dvh - 24px);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    overflow-wrap:anywhere;
    -webkit-overflow-scrolling:touch;
  }
  body:not(.guest-page) dialog :is(form,fieldset,label,.form-grid,.inline){min-width:0;max-width:100%}
  body:not(.guest-page) dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea){box-sizing:border-box;min-width:0;max-width:100%}
  body:not(.guest-page) dialog button{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  body:not(.guest-page) dialog .dialog-heading h2{min-width:0;overflow-wrap:anywhere}
  body:not(.guest-page) dialog .dialog-close{flex:none}
  body:not(.guest-page) dialog :is(.dialog-actions,form>.actions,dialog>.actions){min-width:0;flex-wrap:wrap}
  body:not(.guest-page) dialog.modal-frame[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
  body:not(.guest-page) dialog.modal-frame .modal-scroll{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  body:not(.guest-page) dialog.modal-frame :is(.dialog-heading,.dialog-actions){position:static}
  @media(max-width:600px){
    body:not(.guest-page) dialog:not(.mobile-navigation-dialog):not(.header-navigation-dialog){padding:16px}
    body:not(.guest-page) .event-dialog:not(.modal-frame) .dialog-heading h2{font-size:23px;line-height:1.2}
    body:not(.guest-page) dialog :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
    body:not(.guest-page) dialog.modal-frame[open]{height:min(500px,66dvh)}
    body:not(.guest-page) dialog.modal-frame .dialog-actions{display:flex;flex-direction:column-reverse;gap:8px;margin:0;padding-top:10px;border-top:1px solid #d3ddd5}
    body:not(.guest-page) dialog.modal-frame .dialog-actions button{flex:0 0 auto;width:100%}
  }
  @media(max-height:420px){
    body:not(.guest-page) dialog.modal-frame[open]{height:85dvh}
    body:not(.guest-page) dialog.modal-frame .dialog-actions{flex-direction:row}
    body:not(.guest-page) dialog.modal-frame .dialog-actions button{flex:1 1 0;width:auto}
  }
}
body:not(.guest-page) .active-event,
body:not(.guest-page) .walkin-event-context{background:#e7efe9;border-radius:4px;color:#254f3c}
body:not(.guest-page) .checkin-summary>summary{background:transparent;border:1px solid #becdc2;border-radius:5px}

@media(max-width:800px){
  body:not(.guest-page) .mobile-navigation-bar:not([hidden]){
    border:0;border-bottom:1px solid #d3ddd5;border-radius:0;
    background:transparent;padding:10px 2px 14px;
  }
  body:not(.guest-page) .mobile-navigation-dialog .workspace-navigation{
    background:#fff;border:0;padding:0 16px 24px;
  }
  body:not(.guest-page) .metric,
  body:not(.guest-page) .stat,
  body:not(.guest-page) .plan-stat{padding:10px 12px;border-left:2px solid #d3ddd5}
  body:not(.guest-page) .report-option{padding:16px 0 20px 18px}
}
@media print{
  body:not(.guest-page){background:#fff}
}

/* Confirmação do convidado na mesma linguagem da marca. */
.guest-page:not(.login-page){background:#fafbf9;color:#233d32;--ink:#233d32;--muted:#5d6b63;--line:#d3ddd5;border-top:5px solid #254f3c}
.guest-page:not(.login-page) .guest-main{max-width:680px}
.guest-page:not(.login-page) .guest-header{border-bottom:1px solid #d3ddd5}
.guest-page:not(.login-page) .eyebrow{color:#254f3c;letter-spacing:0;text-transform:none}
.guest-page:not(.login-page) h1,.guest-page:not(.login-page) h2{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:600;letter-spacing:-.025em}
.guest-page:not(.login-page) .guest-panel{background:transparent;border:0;border-bottom:1px solid #d3ddd5;border-radius:0;box-shadow:none;padding:24px 0}
.guest-page:not(.login-page) .member{background:transparent;border:0;border-top:1px solid #d3ddd5;border-radius:0;padding:18px 0;margin:18px 0 0}
.guest-page:not(.login-page) input,.guest-page:not(.login-page) select{border-color:#b5c4b9;border-radius:5px}
.guest-page:not(.login-page) button{background:#254f3c;border-radius:5px}
.guest-page:not(.login-page) button.secondary{background:transparent;border-color:#becdc2;color:#254f3c}
.guest-page:not(.login-page) button:focus-visible,.guest-page:not(.login-page) input:focus-visible,.guest-page:not(.login-page) select:focus-visible{outline:3px solid #719980;outline-offset:2px}
.guest-page:not(.login-page) #message:not(:empty){background:#edf3ef;border:0;border-left:3px solid #789b83;border-radius:0}
.guest-page:not(.login-page) .success{background:#edf3ef;border-color:#cbdacb}
@media(max-width:500px){.guest-page:not(.login-page) .guest-main{padding:22px 20px 40px}.guest-page:not(.login-page) .guest-panel{padding:18px 0}}

/* Painel do evento: números visíveis sem abrir um resumo dentro do check-in. */
#liveSummary{margin:18px 0 26px}#liveSummary .checkin-summary-content{padding:0}.live-tables{margin-top:18px}.live-tables h3{margin:0 0 12px}.live-table-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:12px 0;border-top:1px solid var(--line);align-items:center}.live-table-row span{color:var(--muted)}
@media(max-width:600px){.live-table-row{grid-template-columns:minmax(0,1fr) auto}.live-table-row span:last-child{grid-column:2;grid-row:2}.live-table-row span:nth-child(2){grid-column:1;grid-row:2}}

/* Cadastro guiado do evento e lembrete de contatos pendentes. */
#newEventDialog{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box}.event-wizard-progress{margin:14px 0 0!important;color:#486d56;font-weight:700;letter-spacing:.02em}.event-wizard-steps>section{display:grid;gap:14px;padding-top:8px}.event-wizard-steps>section[hidden]{display:none}.event-wizard-steps label{display:grid;gap:7px;margin:0}.event-wizard-steps input,.event-wizard-steps textarea{box-sizing:border-box;min-width:0;width:100%}.event-wizard-steps>section>p{margin:0 0 2px}.event-wizard-steps .type-dropdown{position:relative;top:auto;max-width:100%;width:100%;box-shadow:none}.event-extra-contacts{display:grid;gap:12px;margin-top:10px}.event-extra-contacts h3{margin:4px 0}.event-extra-contacts label{display:grid;gap:7px;margin:0}.event-extra-contacts textarea{width:100%;box-sizing:border-box}.event-setup-reminder{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:14px;padding:14px 16px;border:1px solid #d8c5a4;border-radius:8px;background:#fff9ee;color:#584b35}.event-setup-reminder p{margin:4px 0 0;line-height:1.45}.event-setup-reminder button{flex:none}
@media(max-width:600px){#newEventDialog .dialog-actions{display:flex;flex-wrap:wrap}#newEventDialog .dialog-actions button{min-width:0;flex:1 1 calc(50% - 8px);padding-inline:8px}#newEventDialog .dialog-actions .wizard-next:not([hidden]),#newEventDialog .dialog-actions #saveNewEvent:not([hidden]){order:-1;flex-basis:100%}.event-setup-reminder{align-items:stretch;flex-direction:column}.event-setup-reminder button{width:100%}}
.client-access-panel{margin-top:24px}.client-access-panel>p{max-width:68ch}.meeting-list{display:grid;gap:0}.meeting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #e6ddd1;padding:18px 2px}.meeting-row strong{font-family:Georgia,serif;font-size:20px;font-weight:500}.meeting-row p{margin:5px 0 0}.meeting-row .actions{margin:0}.meeting-help{margin-top:20px;max-width:65ch}#meetingDialog{width:min(560px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box}#meetingForm{display:grid;gap:14px}#meetingForm label{display:grid;gap:6px}#meetingForm textarea{width:100%;box-sizing:border-box}.meeting-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.meeting-dates input{min-width:0}#meetingDialog .dialog-actions{margin-top:5px}
#clientAccountDialog,#clientCredentialsDialog{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box}#clientAccountForm{display:grid;gap:14px}#clientAccountForm>label:not(.client-show-password){display:grid;gap:6px}#clientAccountForm input:not([type=checkbox]),#clientCredentialsText{box-sizing:border-box;min-width:0;width:100%}.client-show-password{display:flex;align-items:center;gap:8px}.client-show-password input{width:20px;height:20px}#clientCredentialsText{margin-top:12px;resize:vertical}
@media(max-width:600px){.meeting-row{align-items:stretch;flex-direction:column}.meeting-row .actions{display:grid;grid-template-columns:1fr 1fr}.meeting-row .actions button{min-width:0}.meeting-dates{grid-template-columns:1fr}}
