/* Central SEJUV v1.0.15 — tema claro/escuro sobre o layout real aprovado. */
:root,
html[data-theme="light"] {
  color-scheme: light;
  --color-page-background:#F7FCFC;
  --color-page-background-alt:#E8F6F7;
  --color-sidebar-background:rgba(247,252,252,.94);
  --color-surface-primary:#FFFFFF;
  --color-surface-secondary:#F3FBFB;
  --color-surface-elevated:#FFFFFF;
  --color-surface-muted:#EFF8F8;
  --color-surface-input:#FFFFFF;
  --color-text-primary:#092D33;
  --color-text-heading:#07343A;
  --color-text-secondary:#497177;
  --color-text-muted:#6E8E92;
  --color-border:rgba(24,126,132,.18);
  --color-border-strong:rgba(24,126,132,.30);
  --color-accent-teal:#3CB9BA;
  --color-accent-teal-strong:#167E85;
  --color-accent-teal-soft:rgba(60,185,186,.13);
  --color-accent-yellow:#FFD51F;
  --color-accent-yellow-soft:rgba(255,213,31,.22);
  --color-success:#188A47;
  --color-success-soft:rgba(24,138,71,.11);
  --color-warning:#9C7200;
  --color-warning-soft:rgba(255,213,31,.16);
  --color-danger:#D6424B;
  --color-danger-soft:rgba(214,66,75,.10);
  --color-overlay:rgba(3,27,31,.58);
  --color-shadow:rgba(8,54,62,.10);
  --color-grid:rgba(36,126,131,.07);
  --color-chat-self:#DDF8F8;
  --color-chat-other:#FFFFFF;
  --color-focus:#0B858C;
  --theme-logo-filter:drop-shadow(0 10px 20px rgba(8,54,62,.12));
  --theme-scroll-thumb:rgba(36,126,131,.24);
  --theme-calendar-event:#D7FAFA;
  --theme-calendar-meeting:#FFF1A8;
  --theme-calendar-task:#EDE8FF;
  --theme-calendar-checklist:#E8F8E9;
  --theme-status-bar:#F7FCFC;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --color-page-background:#07181B;
  --color-page-background-alt:#0B2226;
  --color-sidebar-background:rgba(7,24,27,.96);
  --color-surface-primary:#102529;
  --color-surface-secondary:#122B2F;
  --color-surface-elevated:#183237;
  --color-surface-muted:#0D2024;
  --color-surface-input:#0B2024;
  --color-text-primary:#EDF7F6;
  --color-text-heading:#F2FBFA;
  --color-text-secondary:#B5CAC9;
  --color-text-muted:#90AAA9;
  --color-border:rgba(166,214,214,.15);
  --color-border-strong:rgba(166,214,214,.30);
  --color-accent-teal:#51CACA;
  --color-accent-teal-strong:#39AFB3;
  --color-accent-teal-soft:rgba(81,202,202,.15);
  --color-accent-yellow:#FFD94A;
  --color-accent-yellow-soft:rgba(255,217,74,.17);
  --color-success:#62D394;
  --color-success-soft:rgba(98,211,148,.13);
  --color-warning:#FFD94A;
  --color-warning-soft:rgba(255,217,74,.13);
  --color-danger:#FF858C;
  --color-danger-soft:rgba(255,133,140,.13);
  --color-overlay:rgba(0,7,9,.76);
  --color-shadow:rgba(0,0,0,.30);
  --color-grid:rgba(120,188,190,.055);
  --color-chat-self:#153E43;
  --color-chat-other:#132D31;
  --color-focus:#66DDDD;
  --theme-logo-filter:drop-shadow(0 0 1px rgba(255,255,255,.62)) drop-shadow(0 12px 24px rgba(0,0,0,.35));
  --theme-scroll-thumb:rgba(133,193,194,.30);
  --theme-calendar-event:#113B40;
  --theme-calendar-meeting:#3B351B;
  --theme-calendar-task:#29243F;
  --theme-calendar-checklist:#173526;
  --theme-status-bar:#07181B;
}

/* Aliases para o legado, mantendo uma única fonte semântica de cores. */
html[data-theme] {
  --bg:var(--color-page-background);
  --bg2:var(--color-page-background-alt);
  --panel:var(--color-surface-primary);
  --panel2:var(--color-surface-secondary);
  --card:var(--color-surface-primary);
  --line:var(--color-border);
  --line2:color-mix(in srgb,var(--color-border) 65%,transparent);
  --txt:var(--color-text-primary);
  --text:var(--color-text-primary);
  --muted:var(--color-text-secondary);
  --muted2:var(--color-text-muted);
  --teal:var(--color-accent-teal);
  --teal2:var(--color-accent-teal-strong);
  --tealSoft:var(--color-accent-teal-soft);
  --yellow:var(--color-accent-yellow);
  --yellowSoft:var(--color-accent-yellow-soft);
  --green:var(--color-success);
  --greenSoft:var(--color-success-soft);
  --red:var(--color-danger);
  --redSoft:var(--color-danger-soft);
  --shadow:0 18px 42px var(--color-shadow);
}

html[data-theme] body {
  color:var(--color-text-primary)!important;
  background:
    radial-gradient(circle at 0 0,color-mix(in srgb,var(--color-accent-teal) 20%,transparent),transparent 34%),
    radial-gradient(circle at 100% 4%,color-mix(in srgb,var(--color-accent-yellow) 14%,transparent),transparent 31%),
    linear-gradient(135deg,var(--color-surface-primary) 0%,var(--color-page-background) 48%,var(--color-page-background-alt) 100%)!important;
}
html[data-theme="dark"] body {
  background:
    radial-gradient(circle at 0 0,rgba(60,185,186,.15),transparent 35%),
    radial-gradient(circle at 100% 0,rgba(255,213,31,.075),transparent 30%),
    linear-gradient(135deg,#061518 0%,#0A2024 52%,#07181B 100%)!important;
}
html[data-theme] body:before {
  background-image:linear-gradient(var(--color-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid) 1px,transparent 1px)!important;
}
html[data-theme] body:after {background:radial-gradient(circle,color-mix(in srgb,var(--color-accent-teal) 15%,transparent),transparent 66%)!important}
html[data-theme] .logo-bg{filter:none!important}
html[data-theme="dark"] .logo-bg{opacity:.025!important}

/* Login. */
html[data-theme] .login {
  color:var(--color-text-primary)!important;
  background:linear-gradient(135deg,var(--color-surface-primary),var(--color-page-background-alt) 52%,color-mix(in srgb,var(--color-accent-yellow) 12%,var(--color-page-background)))!important;
}
html[data-theme="dark"] .login{background:linear-gradient(135deg,#061518,#0B2226 58%,#171B12)!important}
html[data-theme] .login:before{background-image:linear-gradient(var(--color-grid) 1px,transparent 1px),linear-gradient(90deg,var(--color-grid) 1px,transparent 1px)!important}
html[data-theme] .login:after{background:radial-gradient(circle,color-mix(in srgb,var(--color-accent-teal) 18%,transparent),transparent 64%)!important}
html[data-theme] .login-card,
html[data-theme] .brand,
html[data-theme] .userbox {
  color:var(--color-text-primary)!important;
  background:color-mix(in srgb,var(--color-surface-primary) 88%,transparent)!important;
  border-color:var(--color-border)!important;
  box-shadow:var(--shadow)!important;
}
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .brand,
html[data-theme="dark"] .userbox{background:rgba(16,37,41,.91)!important;backdrop-filter:blur(16px)!important}
html[data-theme] .login-card h1,
html[data-theme] .brand-title,
html[data-theme] .brand:after,
html[data-theme] .userbox strong,
html[data-theme] .top h1 {color:var(--color-text-heading)!important}
html[data-theme] .login-card p,
html[data-theme] .login-links button {color:var(--color-text-secondary)!important}
html[data-theme] .brand img,
html[data-theme] .login-card img {filter:var(--theme-logo-filter)!important}
html[data-theme] .brand-copy{border-color:var(--color-border)!important}
html[data-theme] .brand-eyebrow{color:var(--color-warning)!important}
.login-theme-control{position:absolute;right:18px;top:18px;z-index:5}

/* Estrutura e navegação. */
html[data-theme] .sidebar {
  background:linear-gradient(180deg,var(--color-sidebar-background),color-mix(in srgb,var(--color-page-background-alt) 90%,transparent))!important;
  border-color:var(--color-border)!important;
  box-shadow:8px 0 36px var(--color-shadow)!important;
}
html[data-theme="dark"] .sidebar{background:linear-gradient(180deg,rgba(6,20,23,.98),rgba(9,29,32,.96))!important}
html[data-theme] .nav button{color:var(--color-text-secondary)!important}
html[data-theme] .nav button:hover{background:var(--color-accent-teal-soft)!important;color:var(--color-text-heading)!important}
html[data-theme] .nav button.active{
  background:linear-gradient(90deg,var(--color-accent-teal-soft),var(--color-accent-yellow-soft))!important;
  border-color:var(--color-border-strong)!important;
  color:var(--color-text-heading)!important;
}
html[data-theme] .nav button .nav-icon{background:var(--color-accent-teal-soft)!important;color:var(--color-text-heading)!important}
html[data-theme] .sidebar::-webkit-scrollbar-thumb,
html[data-theme] .main::-webkit-scrollbar-thumb,
html[data-theme] .modal-card::-webkit-scrollbar-thumb,
html[data-theme] .messages::-webkit-scrollbar-thumb,
html[data-theme] .notification-list::-webkit-scrollbar-thumb {background:var(--theme-scroll-thumb)!important}

/* Superfícies, cards, tabelas e textos. */
html[data-theme] .card,
html[data-theme] .modal-card,
html[data-theme] .checklist-box,
html[data-theme] .checklist-row,
html[data-theme] .checklist-empty,
html[data-theme] .checklist-done,
html[data-theme] .messages,
html[data-theme] .audit-box,
html[data-theme] .permissionBox,
html[data-theme] .validation-box,
html[data-theme] .linked-shifts,
html[data-theme] .comments-box,
html[data-theme] .attachments-box,
html[data-theme] .install-card,
html[data-theme] .status-line,
html[data-theme] .persistent-message,
html[data-theme] .day-agenda-item,
html[data-theme] .day-agenda-empty {
  color:var(--color-text-primary)!important;
  background:var(--color-surface-primary)!important;
  border-color:var(--color-border)!important;
  box-shadow:0 12px 30px var(--color-shadow)!important;
}
html[data-theme="dark"] .card,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .checklist-box,
html[data-theme="dark"] .checklist-row,
html[data-theme="dark"] .messages,
html[data-theme="dark"] .audit-box,
html[data-theme="dark"] .permissionBox,
html[data-theme="dark"] .validation-box,
html[data-theme="dark"] .linked-shifts,
html[data-theme="dark"] .comments-box,
html[data-theme="dark"] .attachments-box,
html[data-theme="dark"] .install-card,
html[data-theme="dark"] .status-line,
html[data-theme="dark"] .day-agenda-item {background:var(--color-surface-primary)!important}
html[data-theme] h1,html[data-theme] h2,html[data-theme] h3,html[data-theme] h4,html[data-theme] b,html[data-theme] strong{color:var(--color-text-heading)!important}
html[data-theme] .notice,
html[data-theme] .audit-meta,
html[data-theme] .checklist-hint,
html[data-theme] .checklist-sync,
html[data-theme] .day-agenda-meta,
html[data-theme] .notification-item p,
html[data-theme] .chat-read-hint {color:var(--color-text-secondary)!important}
html[data-theme] .kpi{color:var(--color-text-heading)!important}
html[data-theme] .kpi-label,.field label,.label,.table th,.dow{color:var(--color-text-secondary)!important}
html[data-theme] .metric-row{border-color:var(--color-border)!important}
html[data-theme] .bar-track{background:var(--color-surface-muted)!important;border-color:var(--color-border)!important}
html[data-theme] .table td{background:var(--color-surface-primary)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)!important}
html[data-theme] .table tbody tr:hover td{background:var(--color-surface-secondary)!important}
html[data-theme] a{color:var(--color-accent-teal-strong)}
html[data-theme="dark"] a{color:#76E2E2}

/* Campos, botões e foco. */
html[data-theme] .field input,
html[data-theme] .field select,
html[data-theme] .field textarea,
html[data-theme] .toolbar select,
html[data-theme] .toolbar input,
html[data-theme] .send input,
html[data-theme] .checklist-row input,
html[data-theme] .checklist-row select {
  color:var(--color-text-primary)!important;
  background:var(--color-surface-input)!important;
  border-color:var(--color-border-strong)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--color-text-primary) 8%,transparent)!important;
}
html[data-theme] input::placeholder,html[data-theme] textarea::placeholder{color:var(--color-text-muted)!important;opacity:1}
html[data-theme] select option{background:var(--color-surface-elevated)!important;color:var(--color-text-primary)!important}
html[data-theme] .btn{
  color:var(--color-text-primary)!important;
  background:var(--color-surface-primary)!important;
  border-color:var(--color-border-strong)!important;
  box-shadow:0 6px 16px var(--color-shadow)!important;
}
html[data-theme] .btn:hover{background:var(--color-surface-secondary)!important}
html[data-theme] .btn.primary{background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-teal-strong))!important;color:#041D20!important;border-color:transparent!important}
html[data-theme="dark"] .btn.primary{color:#041A1D!important}
html[data-theme] .btn.yellow{background:var(--color-accent-yellow)!important;color:#251C00!important;border-color:transparent!important}
html[data-theme] .btn.danger{background:var(--color-danger-soft)!important;color:var(--color-danger)!important;border-color:color-mix(in srgb,var(--color-danger) 55%,transparent)!important}
html[data-theme] :where(button,input,select,textarea,a,[tabindex]):focus-visible{outline:3px solid color-mix(in srgb,var(--color-focus) 72%,transparent)!important;outline-offset:2px!important}
html[data-theme] .field label.pill,
html[data-theme] #eventStaff label.pill,
html[data-theme] .staff-grid label.pill,
html[data-theme] .team-grid label.pill{color:var(--color-text-primary)!important;background:var(--color-surface-primary)!important;border-color:var(--color-border-strong)!important;box-shadow:0 6px 14px var(--color-shadow)!important}
html[data-theme] .scale-event-box{background:var(--color-surface-secondary)!important;border-color:var(--color-border)!important}

/* Calendário. */
html[data-theme] .calendar{color:var(--color-text-primary)!important}
html[data-theme] .day{background:var(--color-surface-primary)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)!important}
html[data-theme] .day:hover{border-color:var(--color-accent-teal)!important;box-shadow:0 14px 26px var(--color-shadow)!important}
html[data-theme] .day b{color:var(--color-text-secondary)!important}
html[data-theme] .day.today{box-shadow:inset 0 0 0 2px var(--color-accent-yellow)!important}
html[data-theme] .event-dot.evento{background:var(--theme-calendar-event)!important;color:var(--color-accent-teal)!important;border-color:var(--color-accent-teal)!important}
html[data-theme="light"] .event-dot.evento{color:#075A62!important}
html[data-theme] .event-dot.meeting{background:var(--theme-calendar-meeting)!important;color:var(--color-accent-yellow)!important;border-color:var(--color-accent-yellow)!important}
html[data-theme="light"] .event-dot.meeting{color:#654600!important}
html[data-theme] .event-dot.task{background:var(--theme-calendar-task)!important;color:#B9ACFF!important;border-color:#8F7BE6!important}
html[data-theme="light"] .event-dot.task{color:#4B36B6!important}
html[data-theme] .event-dot.checklist{background:var(--theme-calendar-checklist)!important;color:var(--color-success)!important;border-color:var(--color-success)!important}
html[data-theme="light"] .event-dot.checklist{color:#146B38!important}
html[data-theme] .day-agenda-title{color:var(--color-text-heading)!important}
html[data-theme] .day-agenda-time{color:var(--color-accent-teal-strong)!important}

/* Chat, notificações, estados e modais. */
html[data-theme] .messages{background:var(--color-surface-muted)!important}
html[data-theme] .msg{background:var(--color-chat-other)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)!important}
html[data-theme] .msg.me{background:var(--color-chat-self)!important;border-color:color-mix(in srgb,var(--color-accent-teal) 38%,var(--color-border))!important}
html[data-theme] .modal{background:var(--color-overlay)!important}
html[data-theme] .notification-item{background:var(--color-surface-primary)!important;border-color:var(--color-border)!important;box-shadow:0 5px 18px var(--color-shadow)!important;color:var(--color-text-primary)!important}
html[data-theme] .notification-item.read{background:var(--color-surface-muted)!important;opacity:.76}
html[data-theme] .notification-item.clickable:hover{background:var(--color-accent-teal-soft)!important}
html[data-theme] .notification-origin{color:var(--color-accent-teal-strong)!important}
html[data-theme="dark"] .notification-origin{color:#6EDCDC!important}
html[data-theme] .notification-thread-count{background:var(--color-accent-teal-soft)!important;color:var(--color-accent-teal-strong)!important}
html[data-theme="dark"] .notification-thread-count{color:#8BE8E8!important}
html[data-theme] .persistent-message.success{background:var(--color-success-soft)!important;border-color:color-mix(in srgb,var(--color-success) 55%,transparent)!important;color:var(--color-success)!important}
html[data-theme="dark"] .persistent-message.success{color:#A7F2C5!important}
html[data-theme] .persistent-message.warning{background:var(--color-warning-soft)!important;border-color:color-mix(in srgb,var(--color-accent-yellow) 50%,transparent)!important;color:var(--color-text-primary)!important}
html[data-theme] .validation-box{background:var(--color-warning-soft)!important}
html[data-theme] .permissionBox{background:var(--color-accent-teal-soft)!important;color:var(--color-text-primary)!important}
html[data-theme] .checklist-done{background:var(--color-success-soft)!important;border-color:color-mix(in srgb,var(--color-success) 45%,transparent)!important}
html[data-theme] .checklist-done summary{color:var(--color-success)!important}
html[data-theme] .toast{background:var(--color-surface-elevated)!important;color:var(--color-text-primary)!important;border:1px solid var(--color-border-strong)!important;box-shadow:var(--shadow)!important}

/* v1.0.12: navegação mensal centralizada, mensagens acessíveis e camadas previsíveis. */
.calendar-controls{display:grid;justify-items:start;gap:10px;width:100%;margin:0 0 14px}
.calendar-nav{display:grid;grid-template-columns:repeat(3,max-content);align-items:stretch;gap:8px;max-width:100%}
.calendar-nav .btn{min-height:40px;white-space:nowrap}
.calendar-period{display:grid;grid-template-columns:minmax(180px,220px) minmax(110px,140px);align-items:end;gap:8px;max-width:100%}
.calendar-period label{display:grid;gap:5px;color:var(--color-text-muted);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.calendar-period select,.calendar-period input{width:100%;min-width:0;min-height:42px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-input);color:var(--color-text-primary);padding:9px 10px}
.modal-feedback{margin:0 0 14px;padding:12px 14px;border:1px solid var(--color-border-strong);border-radius:14px;background:var(--color-surface-secondary);color:var(--color-text-primary);font-weight:750;line-height:1.45;outline:0}
.modal-feedback.hidden{display:none!important}
.modal-feedback.error,html[data-theme] .persistent-message.error{background:var(--color-danger-soft)!important;border-color:color-mix(in srgb,var(--color-danger) 55%,transparent)!important;color:var(--color-danger)!important}
html[data-theme="dark"] .modal-feedback.error,html[data-theme="dark"] .persistent-message.error{color:#FFB8BD!important}
.modal-feedback:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent-teal) 35%,transparent)}
.field-error{border-color:var(--color-danger)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--color-danger) 18%,transparent)!important}
.success-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}
.btn[aria-busy="true"]{cursor:wait;opacity:.78;transform:none!important}
html[data-theme] .toast{z-index:5000!important;bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px))!important;width:max-content;max-width:min(640px,calc(100vw - 28px));text-align:center;white-space:normal}

/* Pílulas. */
html[data-theme] .pill{border-color:var(--color-border-strong)!important;color:var(--color-text-primary)!important;background:var(--color-surface-secondary)!important}
html[data-theme] .pill.alta,html[data-theme] .alta{background:var(--color-danger-soft)!important;color:var(--color-danger)!important}
html[data-theme] .pill.media,html[data-theme] .media{background:var(--color-warning-soft)!important;color:var(--color-warning)!important}
html[data-theme="dark"] .pill.media,html[data-theme="dark"] .media{color:#FFE58B!important}
html[data-theme] .pill.baixa,html[data-theme] .baixa{background:var(--color-success-soft)!important;color:var(--color-success)!important}
html[data-theme="dark"] .pill.baixa,html[data-theme="dark"] .baixa{color:#9DE9BA!important}

/* Controle de tema. */
.theme-toggle{display:inline-grid;grid-template-columns:1fr 1fr;align-items:center;gap:2px;padding:3px;border:1px solid var(--color-border-strong);border-radius:13px;background:var(--color-surface-primary);box-shadow:0 6px 16px var(--color-shadow);min-height:44px}
.theme-choice{width:38px;height:36px;display:inline-grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--color-text-secondary);padding:0;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}
.theme-choice svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.theme-choice:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}
.theme-choice.active{background:var(--color-accent-yellow-soft);color:var(--color-warning);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent-yellow) 45%,transparent)}
.theme-toggle[data-active-theme="dark"] .theme-choice.active{background:var(--color-accent-teal-soft);color:#8CEAEA;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent-teal) 48%,transparent)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.top-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}

/* v1.0.15: resultados de eventos, serviços opcionais e relatórios coerentes. */
.impact-editor{margin:18px 0;padding:18px;border:1px solid var(--color-border-strong);border-radius:20px;background:var(--color-surface-muted);box-shadow:0 10px 26px var(--color-shadow)}
.impact-editor>h3,.additional-service-editor>h3{margin:0 0 6px;color:var(--color-text-primary)}
.additional-service-editor{margin:18px 0;padding-top:16px;border-top:1px solid var(--color-border)}
.optional-label{font-size:.82em;font-weight:700;text-transform:none;letter-spacing:0;color:var(--color-text-muted)}
.service-rows{display:grid;gap:10px;margin:12px 0}
.service-row{display:grid!important;grid-template-columns:minmax(240px,1fr) minmax(150px,190px) auto!important;align-items:end!important;gap:10px!important;margin:0!important;padding:12px!important;border:1px solid var(--color-border)!important;border-radius:16px!important;background:var(--color-surface-primary)!important;box-shadow:0 6px 16px var(--color-shadow)!important}
.service-row .field{margin:0!important}
.service-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;padding-bottom:1px}
.service-add-button{margin-top:2px}
.report-document{display:grid;gap:18px}
.report-document .report-block{margin:0!important}
.report-period-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-left:5px solid var(--color-accent-teal);border-radius:14px;background:var(--color-surface-secondary);color:var(--color-text-primary)}
.report-period-banner span{color:var(--color-text-muted);font-weight:750}
.report-print-header,.report-print-footer{display:none}
.table-scroll{width:100%;max-width:100%;overflow-x:auto}
.compact-table{min-width:560px}
.event-service-list{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:170px}
.event-service-item{display:block;line-height:1.3}
.report-table td{vertical-align:top!important}
.impact-cards .card:nth-child(1),.impact-cards .card:nth-child(2){border-top:4px solid var(--color-accent-teal)!important}
.print-only{display:none!important}
.workload-table,.weekend-table,.weekend-history-table,.workload-detail-table{min-width:860px}
.workload-person-button{display:inline;padding:0;border:0;background:transparent;color:var(--color-accent-teal-strong);font:inherit;font-weight:900;text-align:left;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}
.workload-person-button:hover{color:var(--color-text-heading)}
.workload-categories{display:flex;flex-wrap:wrap;gap:5px;min-width:210px}
.workload-empty-row td{background:var(--color-surface-muted)!important}
.workload-detail-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}
.workload-detail-kpis .kpi{font-size:clamp(1.25rem,2vw,2rem)}
.workload-detail-section{margin-top:18px}
.workload-category-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.workload-category-summary span{padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-secondary)}
.report-section-heading{margin:4px 0 12px}.report-section-heading h2{margin:0 0 4px}
.report-event-narratives{display:grid;gap:16px}
.report-event-story{display:grid;gap:14px;overflow:hidden}
.report-event-story>header{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid var(--color-border);padding-bottom:12px}
.report-event-story>header h3{margin:0 0 4px}.report-event-story>header p{margin:0;color:var(--color-text-muted)}
.report-event-number{display:grid;place-items:center;min-width:42px;height:42px;border-radius:13px;background:var(--color-accent-teal-soft);color:var(--color-accent-teal-strong);font-weight:950}
.report-event-copy p{white-space:pre-line;line-height:1.55}
.report-event-facts{display:flex;gap:8px;flex-wrap:wrap}.report-event-facts span{padding:8px 10px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-secondary)}
.report-story-services{display:flex;flex-direction:row;flex-wrap:wrap}.report-story-services .event-service-item{padding:6px 9px;border-radius:10px;background:var(--color-accent-yellow-soft)}
.report-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.report-photo-grid figure{margin:0;border:1px solid var(--color-border);border-radius:14px;overflow:hidden;background:var(--color-surface-secondary)}.report-photo-grid img{display:block;width:100%;height:210px;object-fit:cover;image-orientation:from-image;background:#e8efef}.report-photo-grid figcaption{padding:7px 9px;font-size:11px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-photo-grid figure.report-photo-error{display:none!important}
.weekend-comparison,.weekend-records{margin-bottom:18px}
.weekend-records td,.weekend-history-table td,.workload-detail-table td{vertical-align:top!important}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--color-accent-teal) 55%,transparent)!important;outline-offset:2px}

@media(max-width:720px){
  .workload-detail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .workload-category-summary{grid-template-columns:1fr 1fr}
  .workload-table,.weekend-table,.weekend-history-table,.workload-detail-table{min-width:760px}
  .report-photo-grid{grid-template-columns:1fr}.report-photo-grid img{height:auto;max-height:340px}
}

/* Contadores mantêm contraste nos dois temas. */
html[data-theme] .nav-unread-badge,
html[data-theme] .chat-unread-badge,
html[data-theme] .unread-badge,
html[data-theme] .notification-bell span{border-color:var(--color-surface-primary)!important;box-shadow:0 0 0 2px var(--color-surface-primary),0 8px 18px rgba(255,59,48,.28)!important}

/* Mobile atual preservado; apenas acomoda o seletor e safe areas. */
@media(max-width:900px){
  .top{align-items:flex-start!important}
  .top-actions{width:100%;justify-content:flex-start}
  .login-theme-control{right:max(12px,env(safe-area-inset-right));top:max(12px,env(safe-area-inset-top))}
  .service-row{grid-template-columns:1fr!important}.service-row-actions{justify-content:flex-start}
}
@media(max-width:620px){
  .theme-toggle{min-height:42px}.theme-choice{width:36px;height:34px}
  .top-actions{gap:8px}
  html[data-theme] .send{background:var(--color-page-background)!important}
  .calendar-nav{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:6px}
  .calendar-nav .btn{min-width:0;min-height:44px;padding:7px 4px!important;font-size:clamp(9.5px,2.7vw,11px)!important;line-height:1.15;white-space:normal;overflow-wrap:normal}
  .calendar-period{grid-template-columns:minmax(0,1fr) minmax(96px,.55fr);width:100%}
  html[data-theme] .toast{bottom:max(20px,calc(env(safe-area-inset-bottom) + 78px))!important}
}

@media(prefers-reduced-motion:reduce){.theme-choice,.day,.btn{transition:none!important}}
