/* Central SEJUV v1.0.15 — app shell profissional exclusivo para mobile/PWA. */
.mobile-app-header,.mobile-bottom-nav,.mobile-more-backdrop,.mobile-fab{display:none}

@media (max-width:820px), ((display-mode:standalone) and (max-width:932px)), ((pointer:coarse) and (max-height:500px) and (max-width:932px)){
  :root{
    --mobile-header-height:60px;
    --mobile-nav-height:66px;
    --mobile-content-max:680px;
  }
  html{height:100%;background:var(--color-page-background);overscroll-behavior:none}
  body{min-height:100%;min-height:100dvh;overflow-x:hidden;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}
  body.mobile-conversation-open{overflow:hidden}
  body.mobile-shell-active .logo-bg{display:none!important}
  body.mobile-shell-active .app:not(.hidden){display:block!important;min-height:100vh!important;min-height:100dvh!important;width:100%!important;overflow:visible!important}
  body.mobile-shell-active .sidebar{display:none!important}
  body.mobile-shell-active .main{
    display:block!important;width:100%!important;min-width:0!important;max-width:none!important;
    min-height:100vh!important;min-height:100dvh!important;height:auto!important;overflow:visible!important;
    padding:calc(var(--mobile-header-height) + env(safe-area-inset-top) + 14px) max(14px,env(safe-area-inset-right)) calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 24px) max(14px,env(safe-area-inset-left))!important;
    background:transparent!important;
  }
  body.mobile-shell-active .main>.top{display:none!important}
  body.mobile-shell-active .section{width:min(100%,var(--mobile-content-max));margin:0 auto;min-width:0!important}
  body.mobile-shell-active .section:not(.active){display:none!important}

  .mobile-app-header{
    display:flex;position:fixed;z-index:2200;top:0;left:0;right:0;
    min-height:calc(var(--mobile-header-height) + env(safe-area-inset-top));
    padding:env(safe-area-inset-top) max(10px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));
    align-items:center;justify-content:space-between;gap:10px;
    background:color-mix(in srgb,var(--color-surface-primary) 93%,transparent);
    border-bottom:1px solid var(--color-border);box-shadow:0 8px 24px var(--color-shadow);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
  }
  .mobile-header-brand{display:flex;align-items:center;gap:9px;min-width:0;height:var(--mobile-header-height)}
  .mobile-header-brand img{width:76px;height:36px;object-fit:contain;filter:var(--theme-logo-filter)}
  .mobile-header-brand-copy{display:flex;flex-direction:column;min-width:0}
  .mobile-header-brand-copy strong{font-size:12px;line-height:1.1;letter-spacing:.035em;text-transform:uppercase;white-space:nowrap}
  .mobile-header-brand-copy span{font-size:10px;color:var(--color-text-muted);white-space:nowrap}
  .mobile-header-actions{display:flex;align-items:center;gap:4px}
  .mobile-icon-button,.mobile-avatar-button{
    position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
    width:44px;height:44px;border:0;border-radius:14px;color:var(--color-text-heading);
    background:transparent;touch-action:manipulation
  }
  .mobile-icon-button:hover,.mobile-icon-button:focus-visible,.mobile-avatar-button:hover,.mobile-avatar-button:focus-visible{background:var(--color-accent-teal-soft);outline:2px solid transparent}
  .mobile-icon-button svg,.mobile-nav-item svg,.mobile-more-item svg,.mobile-fab svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .mobile-avatar-button{width:38px;height:38px;border-radius:50%;margin-left:2px;background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-teal-strong));color:#fff;font-weight:900;font-size:13px;border:2px solid color-mix(in srgb,var(--color-surface-primary) 78%,transparent);box-shadow:0 5px 14px var(--color-shadow)}
  .mobile-header-badge,.mobile-nav-badge{position:absolute;display:flex;align-items:center;justify-content:center;background:var(--color-danger);color:#fff;border:2px solid var(--color-surface-primary);font-weight:900;line-height:1}
  .mobile-header-badge{right:1px;top:1px;min-width:19px;height:19px;padding:0 4px;border-radius:999px;font-size:10px}

  .mobile-bottom-nav{
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:2200;left:0;right:0;bottom:0;
    min-height:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom));
    padding:5px max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));
    background:color-mix(in srgb,var(--color-surface-primary) 96%,transparent);border-top:1px solid var(--color-border);
    box-shadow:0 -10px 30px var(--color-shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
  }
  .mobile-nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:56px;border:0;border-radius:16px;background:transparent;color:var(--color-text-muted);font-size:10px;font-weight:800;line-height:1;touch-action:manipulation}
  .mobile-nav-item.active{color:var(--color-accent-teal-strong);background:linear-gradient(180deg,var(--color-accent-teal-soft),transparent)}
  .mobile-nav-item.active:before{content:"";position:absolute;top:0;left:31%;right:31%;height:3px;border-radius:0 0 999px 999px;background:var(--color-accent-yellow)}
  .mobile-nav-item span:not(.mobile-nav-badge){max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-nav-badge{top:5px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 4px;border-radius:999px;font-size:9px}
  body.mobile-conversation-open .mobile-bottom-nav{transform:translateY(110%);pointer-events:none}

  .mobile-more-backdrop{display:block;position:fixed;z-index:2600;inset:0;background:var(--color-overlay);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
  .mobile-more-backdrop.open{opacity:1;visibility:visible}
  .mobile-more-sheet{position:absolute;left:0;right:0;bottom:0;max-height:min(88dvh,780px);overflow:auto;overscroll-behavior:contain;padding:10px max(16px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-radius:26px 26px 0 0;background:var(--color-surface-primary);border:1px solid var(--color-border);box-shadow:0 -22px 70px rgba(0,0,0,.28);transform:translateY(102%);transition:transform .24s ease}
  .mobile-more-backdrop.open .mobile-more-sheet{transform:translateY(0)}
  .mobile-sheet-handle{width:44px;height:5px;border-radius:999px;background:var(--color-border-strong);margin:2px auto 14px}
  .mobile-profile{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:10px 2px 18px;border-bottom:1px solid var(--color-border)}
  .mobile-profile-avatar{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-teal-strong));color:#fff;font-weight:900}
  .mobile-profile strong{display:block;font-size:16px}.mobile-profile span{display:block;color:var(--color-text-secondary);font-size:12px;margin-top:3px}
  .mobile-sheet-close{width:44px;height:44px;border:0;border-radius:14px;background:var(--color-surface-muted);color:var(--color-text-primary);font-size:24px}
  .mobile-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:15px 0}
  .mobile-more-item{display:flex;align-items:center;gap:10px;min-height:54px;padding:11px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-secondary);color:var(--color-text-primary);font-weight:800;text-align:left}
  .mobile-more-item svg{flex:0 0 auto;width:20px;height:20px;color:var(--color-accent-teal-strong)}
  .mobile-more-item small{display:block;color:var(--color-text-muted);font-weight:600;margin-top:3px}
  .mobile-more-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--color-border)}
  .mobile-more-version{font-size:11px;color:var(--color-text-muted)}
  .mobile-logout{min-height:44px;padding:0 16px;border:1px solid color-mix(in srgb,var(--color-danger) 45%,transparent);border-radius:14px;background:var(--color-danger-soft);color:var(--color-danger);font-weight:900}

  .mobile-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 2px 16px}
  .mobile-page-head h1,.mobile-page-head h2{margin:0;font-size:25px;line-height:1.05;letter-spacing:-.02em;text-transform:none!important;font-family:Inter,Arial,sans-serif!important}
  .mobile-page-head p{margin:6px 0 0;color:var(--color-text-secondary);font-size:13px;line-height:1.4}
  .mobile-greeting{padding:2px 2px 16px}.mobile-greeting h1{margin:0;font-size:25px;line-height:1.08;letter-spacing:-.025em;text-transform:none!important;font-family:Inter,Arial,sans-serif!important}.mobile-greeting p{margin:7px 0 0;color:var(--color-text-secondary);font-size:13px;text-transform:capitalize}
  .mobile-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:21px 2px 10px}.mobile-section-title h2{margin:0;font-size:17px;text-transform:none!important;font-family:Inter,Arial,sans-serif!important}.mobile-link-button{min-height:40px;padding:0 8px;border:0;background:transparent;color:var(--color-accent-teal-strong);font-weight:900;font-size:12px}

  .mobile-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .mobile-kpi-card{position:relative;min-height:118px;padding:15px;border:1px solid var(--color-border);border-radius:21px;background:var(--color-surface-primary);box-shadow:0 10px 26px var(--color-shadow);text-align:left;color:var(--color-text-primary);overflow:hidden}
  .mobile-kpi-card:after{content:"";position:absolute;right:-24px;bottom:-34px;width:82px;height:82px;border-radius:50%;background:var(--color-accent-teal-soft)}
  .mobile-kpi-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:var(--color-accent-teal-soft);color:var(--color-accent-teal-strong)}
  .mobile-kpi-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
  .mobile-kpi-value{display:block;margin-top:9px;font-size:28px;line-height:1;font-weight:950;color:var(--color-text-heading)}
  .mobile-kpi-label{display:block;margin-top:5px;font-size:11px;font-weight:800;color:var(--color-text-secondary)}
  .mobile-kpi-card.critical .mobile-kpi-icon{background:var(--color-danger-soft);color:var(--color-danger)}
  .mobile-kpi-card.meeting .mobile-kpi-icon{background:var(--color-accent-yellow-soft);color:var(--color-warning)}

  .mobile-list{display:flex;flex-direction:column;gap:9px}
  .mobile-list-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;min-width:0;padding:13px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface-primary);box-shadow:0 7px 20px var(--color-shadow)}
  .mobile-list-card.clickable{cursor:pointer}.mobile-list-card.clickable:active{transform:scale(.99)}
  .mobile-time{min-width:44px;text-align:center;font-size:11px;font-weight:900;color:var(--color-accent-teal-strong)}
  .mobile-time b{display:block;font-size:14px}.mobile-type-mark{width:5px;align-self:stretch;border-radius:999px;background:var(--color-accent-teal)}
  .mobile-type-mark.task{background:#7559C5}.mobile-type-mark.meeting{background:var(--color-accent-yellow)}.mobile-type-mark.event{background:var(--color-accent-teal)}.mobile-type-mark.checklist{background:var(--color-success)}
  .mobile-list-main{min-width:0}.mobile-list-main strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.mobile-list-main p{margin:5px 0 0;color:var(--color-text-secondary);font-size:11px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-chevron{width:18px;height:18px;color:var(--color-text-muted);fill:none;stroke:currentColor;stroke-width:2}
  .mobile-empty{padding:24px 16px;border:1px dashed var(--color-border-strong);border-radius:20px;background:var(--color-surface-secondary);text-align:center;color:var(--color-text-secondary)}
  .mobile-empty svg{width:34px;height:34px;margin-bottom:8px;fill:none;stroke:var(--color-accent-teal-strong);stroke-width:1.6}
  .mobile-alert{padding:12px 14px;border:1px solid color-mix(in srgb,var(--color-warning) 30%,var(--color-border));border-radius:16px;background:var(--color-warning-soft);font-size:12px;line-height:1.45}
  .mobile-alert+.mobile-alert{margin-top:8px}

  .mobile-segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-muted);margin:0 0 14px;overflow:auto}
  .mobile-segmented button{min-height:40px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:var(--color-text-secondary);font-size:12px;font-weight:900;white-space:nowrap}
  .mobile-segmented button.active{background:var(--color-surface-primary);color:var(--color-accent-teal-strong);box-shadow:0 4px 14px var(--color-shadow)}
  .mobile-agenda-nav{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:7px;align-items:center;margin-bottom:12px}
  .mobile-agenda-nav button{height:44px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-primary);color:var(--color-text-primary)}
  .mobile-agenda-date{min-width:0;text-align:center}.mobile-agenda-date strong{display:block;font-size:14px}.mobile-agenda-date span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:11px;text-transform:capitalize}
  .mobile-agenda-month-summary{margin:-2px 0 12px}

  .mobile-month{padding:11px 8px 12px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface-primary);box-shadow:0 9px 24px var(--color-shadow)}
  .mobile-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;width:100%;overflow:hidden}
  .mobile-month-dow{padding:6px 0;text-align:center;font-size:9px;font-weight:900;color:var(--color-text-muted);text-transform:uppercase}
  .mobile-month-day{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;min-width:0;border:0;border-radius:12px;background:transparent;color:var(--color-text-primary);font-size:12px;font-weight:800}
  .mobile-month-day.outside{opacity:.26}.mobile-month-day.today{box-shadow:inset 0 0 0 2px var(--color-accent-yellow)}.mobile-month-day.selected{background:var(--color-accent-teal-strong);color:#fff}.mobile-month-day.has-items:after{content:"";position:absolute;bottom:4px;width:4px;height:4px;border-radius:50%;background:var(--color-accent-teal)}.mobile-month-day.selected.has-items:after{background:var(--color-accent-yellow)}
  .mobile-day-heading{margin:15px 2px 9px;font-size:13px;color:var(--color-text-secondary);text-transform:capitalize}
  .mobile-week-strip{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));gap:6px;overflow-x:auto;padding:1px 0 8px;scrollbar-width:none}.mobile-week-strip::-webkit-scrollbar{display:none}
  .mobile-week-day{min-width:48px;padding:9px 5px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-primary);color:var(--color-text-secondary);text-align:center}
  .mobile-week-day span{display:block;font-size:9px;text-transform:uppercase}.mobile-week-day b{display:block;margin-top:4px;font-size:16px}.mobile-week-day small{display:block;min-height:12px;margin-top:3px;color:var(--color-accent-teal-strong);font-size:9px}.mobile-week-day.selected{background:var(--color-accent-teal-strong);color:#fff;border-color:transparent}.mobile-week-day.selected b,.mobile-week-day.selected small{color:#fff!important}

  .mobile-search-row{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:8px;margin-bottom:10px}
  .mobile-search{position:relative}.mobile-search svg{position:absolute;left:13px;top:50%;width:18px;height:18px;transform:translateY(-50%);fill:none;stroke:var(--color-text-muted);stroke-width:2}.mobile-search input{width:100%;height:46px;padding:0 12px 0 40px;border:1px solid var(--color-border);border-radius:15px;background:var(--color-surface-input);color:var(--color-text-primary);font-size:16px!important}.mobile-filter-button{height:46px;border:1px solid var(--color-border);border-radius:15px;background:var(--color-surface-primary);color:var(--color-text-heading)}
  .mobile-filter-panel{display:none;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 10px;padding:11px;border:1px solid var(--color-border);border-radius:17px;background:var(--color-surface-secondary)}.mobile-filter-panel.open{display:grid}.mobile-filter-panel select{width:100%;min-height:42px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-input);color:var(--color-text-primary);padding:0 9px;font-size:13px!important}
  .mobile-task-card{padding:14px;border:1px solid var(--color-border);border-radius:19px;background:var(--color-surface-primary);box-shadow:0 7px 20px var(--color-shadow)}
  .mobile-task-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:start}.mobile-task-top h3{margin:0;font-size:14px;line-height:1.35;text-transform:none!important;font-family:Inter,Arial,sans-serif!important}.mobile-task-menu{width:38px;height:38px;border:0;border-radius:12px;background:var(--color-surface-muted);color:var(--color-text-primary);font-size:20px;line-height:1}
  .mobile-task-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.mobile-chip{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:3px 8px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-secondary);color:var(--color-text-secondary);font-size:10px;font-weight:800}.mobile-chip.high{background:var(--color-danger-soft);color:var(--color-danger);border-color:color-mix(in srgb,var(--color-danger) 25%,transparent)}.mobile-chip.medium{background:var(--color-warning-soft);color:var(--color-warning)}.mobile-chip.low{background:var(--color-success-soft);color:var(--color-success)}
  .mobile-task-progress{margin-top:11px}.mobile-task-progress-head{display:flex;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:10px}.mobile-progress-track{height:5px;margin-top:6px;border-radius:999px;background:var(--color-surface-muted);overflow:hidden}.mobile-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--color-accent-teal),var(--color-accent-yellow))}
  .mobile-task-actions{display:flex;gap:7px;margin-top:11px}.mobile-task-actions button{min-height:40px;padding:0 11px;border-radius:12px;font-size:11px;font-weight:900}

  .mobile-chat-list{display:flex;flex-direction:column;gap:8px}.mobile-conversation-row{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:68px;padding:10px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface-primary);text-align:left;color:var(--color-text-primary)}
  .mobile-conversation-avatar{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;background:var(--color-accent-teal-soft);color:var(--color-accent-teal-strong);font-weight:900}.mobile-conversation-avatar.group{background:var(--color-accent-yellow-soft);color:var(--color-warning)}
  .mobile-conversation-main{min-width:0}.mobile-conversation-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.mobile-conversation-main span{display:block;margin-top:5px;color:var(--color-text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-conversation-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;color:var(--color-text-muted);font-size:9px}.mobile-unread-pill{display:flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--color-danger);color:#fff;font-size:9px;font-weight:900}
  #chat.active.mobile-chat-conversation{position:fixed!important;z-index:2100;inset:calc(var(--mobile-header-height) + env(safe-area-inset-top)) 0 0;display:flex!important;flex-direction:column;width:100%!important;max-width:none!important;margin:0!important;background:var(--color-page-background);overflow:hidden}
  .mobile-chat-head{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center;min-height:58px;padding:7px max(10px,env(safe-area-inset-right)) 7px max(10px,env(safe-area-inset-left));border-bottom:1px solid var(--color-border);background:var(--color-surface-primary)}
  .mobile-chat-head button{width:44px;height:44px;border:0;border-radius:14px;background:var(--color-surface-muted);color:var(--color-text-primary)}.mobile-chat-title{min-width:0}.mobile-chat-title strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.mobile-chat-title span{display:block;margin-top:3px;color:var(--color-text-muted);font-size:10px}
  .mobile-chat-messages{flex:1;min-height:0;overflow:auto;padding:12px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));background:var(--color-page-background);scroll-behavior:smooth;overscroll-behavior:contain}
  .mobile-chat-messages .msg{max-width:84%;margin:7px 0;padding:10px 12px;border-radius:17px 17px 17px 5px;background:var(--color-chat-other)!important;border:1px solid var(--color-border)!important;box-shadow:0 4px 12px var(--color-shadow)!important;color:var(--color-text-primary)!important}.mobile-chat-messages .msg.me{margin-left:auto;border-radius:17px 17px 5px 17px;background:var(--color-chat-self)!important}.mobile-chat-messages .msg small{font-size:9px;color:var(--color-text-muted)!important}
  .mobile-chat-composer{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px;padding:8px max(10px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));background:var(--color-surface-primary);border-top:1px solid var(--color-border)}
  .mobile-chat-composer input{width:100%;height:46px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface-input);color:var(--color-text-primary);padding:0 14px;font-size:16px!important}.mobile-chat-composer button{width:48px;height:46px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-teal-strong));color:#fff}.mobile-chat-composer svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2}

  .mobile-notification-card{display:grid;grid-template-columns:5px minmax(0,1fr) auto;gap:10px;padding:13px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface-primary);box-shadow:0 7px 20px var(--color-shadow)}.mobile-notification-card.read{opacity:.68}.mobile-notification-accent{border-radius:999px;background:var(--color-accent-teal)}.mobile-notification-card.thread .mobile-notification-accent{background:var(--color-accent-yellow)}.mobile-notification-main{min-width:0}.mobile-notification-origin{font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent-teal-strong)}.mobile-notification-main strong{display:block;margin-top:4px;font-size:13px;line-height:1.3}.mobile-notification-main p{margin:5px 0;color:var(--color-text-secondary);font-size:11px;line-height:1.4}.mobile-notification-meta{font-size:9px;color:var(--color-text-muted)}.mobile-notification-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.mobile-notification-dot{width:9px;height:9px;border-radius:50%;background:var(--color-danger)}

  .mobile-fab{display:flex;position:fixed;z-index:2150;right:max(18px,env(safe-area-inset-right));bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom) + 17px);align-items:center;justify-content:center;width:54px;height:54px;border:0;border-radius:18px;background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-teal-strong));color:#fff;box-shadow:0 13px 28px color-mix(in srgb,var(--color-accent-teal-strong) 35%,transparent)}
  .mobile-fab.hidden{display:none!important}

  body.mobile-shell-active .modal{z-index:3000!important;align-items:stretch!important;padding:0!important;background:var(--color-overlay)!important}
  body.mobile-shell-active .modal-card{width:100%!important;max-width:none!important;min-height:100vh!important;min-height:100dvh!important;max-height:100vh!important;max-height:100dvh!important;margin:0!important;padding:calc(14px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))!important;border:0!important;border-radius:0!important;overflow:auto!important;overscroll-behavior:contain!important;background:var(--color-surface-primary)!important}
  body.mobile-shell-active .modal-head{position:sticky;z-index:3;top:calc(-14px - env(safe-area-inset-top));margin:calc(-14px - env(safe-area-inset-top)) calc(-14px - env(safe-area-inset-right)) 14px calc(-14px - env(safe-area-inset-left));padding:calc(12px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 12px max(14px,env(safe-area-inset-left));background:color-mix(in srgb,var(--color-surface-primary) 95%,transparent);border-bottom:1px solid var(--color-border);backdrop-filter:blur(14px)}
  body.mobile-shell-active .modal-head h2{font-size:19px;text-transform:none!important;font-family:Inter,Arial,sans-serif!important}
  body.mobile-shell-active .formgrid,body.mobile-shell-active .formGrid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  body.mobile-shell-active .formgrid>.field,body.mobile-shell-active .formGrid>.field,body.mobile-shell-active .span2,body.mobile-shell-active .span3,body.mobile-shell-active .span4,body.mobile-shell-active .span6,body.mobile-shell-active .span8,body.mobile-shell-active .span12{grid-column:1/-1!important}
  body.mobile-shell-active .checklist-row{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;padding:11px!important}
  body.mobile-shell-active input,body.mobile-shell-active select,body.mobile-shell-active textarea{font-size:16px!important}
  body.mobile-shell-active .table{display:block!important;overflow-x:auto!important;max-width:100%!important}

  @supports not (height:100dvh){body.mobile-shell-active .main,body.mobile-shell-active .modal-card{min-height:100vh!important}.mobile-more-sheet{max-height:88vh}}
}

@media (max-width:370px){
  .mobile-header-brand-copy{display:none}.mobile-header-brand img{width:84px}.mobile-icon-button{width:42px}.mobile-more-grid{grid-template-columns:1fr}.mobile-kpi-card{min-height:111px;padding:13px}.mobile-nav-item{font-size:9px}
}

@media (orientation:landscape) and (max-height:520px) and (max-width:820px){
  :root{--mobile-header-height:52px;--mobile-nav-height:58px}.mobile-header-brand{height:52px}.mobile-header-brand img{height:31px}.mobile-nav-item{min-height:49px}.mobile-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mobile-kpi-card{min-height:100px}
}

@media (prefers-reduced-motion:reduce){
  .mobile-more-backdrop,.mobile-more-sheet,.mobile-bottom-nav,.mobile-list-card{transition:none!important;scroll-behavior:auto!important}
}

/* v1.0.15: documento de relatório A4 sem recortes do app shell. */
@page{size:A4 portrait;margin:12mm 10mm 14mm}
@media print{
  :root{color-scheme:light!important}
  html,body{
    width:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;
    margin:0!important;padding:0!important;background:#fff!important;color:#17363b!important;
    print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important
  }
  body:before,body:after,.login,.sidebar,.main>.top,.logo-bg,.modal,.toast,
  .mobile-app-header,.mobile-bottom-nav,.mobile-more-backdrop,.mobile-more-sheet,.mobile-fab,.no-print{display:none!important}
  body.mobile-shell-active .app:not(.hidden),.app:not(.hidden){
    display:block!important;width:auto!important;height:auto!important;min-height:0!important;
    overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important
  }
  body.mobile-shell-active .main,.main{
    display:block!important;width:auto!important;height:auto!important;min-height:0!important;max-width:none!important;
    overflow:visible!important;margin:0!important;padding:0!important;background:#fff!important
  }
  body.mobile-shell-active .main>.section,.main>.section{display:none!important}
  body.mobile-shell-active .main>#reports.section.active,.main>#reports.section.active{
    display:block!important;width:100%!important;max-width:none!important;margin:0!important;overflow:visible!important
  }
  #reportDocument,.report-document{display:block!important;width:100%!important;overflow:visible!important;color:#17363b!important;font-size:9pt;line-height:1.35}
  .report-print-header{
    display:flex!important;align-items:center;justify-content:space-between;gap:8mm;
    margin:0 0 5mm;padding:0 0 4mm;border-bottom:1.5pt solid #247e83;break-after:avoid-page
  }
  .report-print-header img{display:block!important;width:32mm!important;height:auto!important;object-fit:contain!important}
  .report-print-header div{text-align:right}.report-print-header p{margin:0 0 1mm;color:#4d6b70;font-size:8pt}
  .report-print-header h2{margin:0;color:#17363b;font-size:18pt;line-height:1.05}.report-print-header span{color:#247e83;font-weight:800}
  .report-period-banner{
    display:flex!important;margin:0 0 4mm!important;padding:2.5mm 3.5mm!important;border:1px solid #b9d9da!important;
    border-left:4px solid #247e83!important;border-radius:3mm!important;background:#eef8f8!important;break-after:avoid-page
  }
  .report-introduction,.report-conclusion{break-inside:avoid-page;page-break-inside:avoid}.report-introduction h2,.report-conclusion h2{break-after:avoid-page;page-break-after:avoid}
  body .impact-cards{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:3mm!important;
    margin:0 0 4mm!important;break-inside:avoid-page
  }
  .impact-cards .card{min-height:24mm!important;padding:3mm!important;text-align:left!important}
  .impact-cards .kpi{font-size:21pt!important;line-height:1!important;color:#247e83!important}
  .impact-cards .kpi-label{margin-top:2mm!important;font-size:7pt!important;color:#4d6b70!important}
  body .report-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3mm!important;
    margin:0 0 4mm!important;align-items:start!important
  }
  .report-block{margin:0 0 4mm!important}
  .card{
    background:#fff!important;color:#17363b!important;border:1px solid #c9dcdc!important;border-radius:3mm!important;
    box-shadow:none!important;padding:3.5mm!important;break-inside:avoid-page;page-break-inside:avoid
  }
  .card h2,.card h3{margin:0 0 2.5mm!important;color:#17363b!important;font-size:11pt!important;line-height:1.2!important}
  .notice{color:#526d72!important;font-size:7.5pt!important}.metric-row{padding:1.5mm 0!important;border-color:#d8e7e7!important}
  .metric-row b,.bar-value{color:#247e83!important}
  .chart{gap:1.8mm!important}.bar-row{grid-template-columns:31mm minmax(20mm,1fr) 12mm!important;gap:2mm!important;break-inside:avoid-page}
  .bar-label{font-size:7.5pt!important;color:#17363b!important;white-space:normal!important;overflow:visible!important}
  .bar-track{height:3mm!important;border-color:#c8dddd!important;background:#edf6f6!important}
  .bar-fill{background:#247e83!important}.bar-value{font-size:8pt!important;text-align:right!important}
  .additional-services,.report-closing{break-inside:auto!important;page-break-inside:auto!important}
  .table-scroll{display:block!important;width:100%!important;max-width:none!important;overflow:visible!important}
  body.mobile-shell-active table.table,body.mobile-shell-active table.compact-table,body.mobile-shell-active table.report-table,
  table.table,table.compact-table,table.report-table{
    display:table!important;width:100%!important;min-width:0!important;table-layout:auto!important;
    overflow:visible!important;border-collapse:collapse!important;border-spacing:0!important;font-size:7.4pt!important
  }
  .table thead{display:table-header-group!important}.table tbody{display:table-row-group!important}
  .table tr{display:table-row!important;break-inside:avoid-page;page-break-inside:avoid}
  .table th,.table td{
    display:table-cell!important;padding:2mm!important;color:#17363b!important;background:#fff!important;
    border:1px solid #cfdfdf!important;border-radius:0!important;vertical-align:top!important;text-align:left!important
  }
  .table th{background:#edf6f6!important;color:#315b60!important;font-size:6.8pt!important}
  body.mobile-shell-active .table .no-print,.table .no-print,.no-print{display:none!important}
  .print-only{display:block!important}
  .report-workload,.report-workload-details-print{break-inside:auto!important;page-break-inside:auto!important}
  .report-workload-details-print{break-before:auto!important;page-break-before:auto!important}
  .report-workload-details-print>h2{break-after:avoid-page;page-break-after:avoid}
  .workload-person-button{color:#17363b!important;text-decoration:none!important;pointer-events:none}
  .workload-categories{display:block!important;min-width:0!important}.workload-categories .pill{display:inline-block!important;margin:0 1mm 1mm 0!important}
  .workload-table,.workload-detail-table{min-width:0!important;font-size:6.8pt!important}
  .workload-table th:nth-child(4),.workload-table td:nth-child(4){width:42%}
  .print-person-detail{margin-top:4mm;break-inside:auto!important;page-break-inside:auto!important}
  .print-person-detail h3{break-after:avoid-page;page-break-after:avoid}
  .report-workload-details-print .table-scroll{margin-bottom:3mm}
  .event-service-list{min-width:0!important}.report-closing{break-before:auto;page-break-before:auto}
  .report-event-narratives{display:block!important;break-before:page;page-break-before:always}
  .report-section-heading{break-after:avoid-page;page-break-after:avoid;margin-bottom:4mm!important}
  .report-event-story{display:block!important;break-inside:avoid-page!important;page-break-inside:avoid!important;margin:0 0 6mm!important;padding:4mm!important}
  .report-event-story>header{display:flex!important;break-after:avoid-page;page-break-after:avoid;margin-bottom:3mm;padding-bottom:2.5mm;border-bottom:1px solid #c9dcdc}
  .report-event-number{min-width:9mm!important;height:9mm!important;border-radius:2mm!important;background:#e8f5f5!important;color:#247e83!important}
  .report-event-copy p{white-space:pre-line!important;line-height:1.45!important}
  .report-event-facts{display:flex!important;gap:2mm!important;flex-wrap:wrap!important;break-inside:avoid-page}.report-event-facts span{padding:1.5mm 2mm!important;border:1px solid #cfdfdf!important;border-radius:2mm!important;background:#f5f9f9!important}
  .report-story-services{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;break-inside:avoid-page}
  .report-photo-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:3mm!important;margin-top:3mm!important}
  .report-photo-grid figure{display:block!important;margin:0!important;border:1px solid #cfdfdf!important;border-radius:2mm!important;overflow:hidden!important;break-inside:avoid-page;page-break-inside:avoid;background:#fff!important}
  .report-photo-grid img{display:block!important;width:100%!important;height:50mm!important;object-fit:contain!important;image-orientation:from-image!important;background:#fff!important}
  .report-photo-grid figcaption{padding:1.5mm 2mm!important;font-size:6.5pt!important;color:#526d72!important;white-space:normal!important}
  .report-print-footer{
    display:flex!important;position:static!important;justify-content:space-between;gap:8mm;
    margin:2mm 0 0!important;padding-top:1.5mm;border-top:1px solid #c9dcdc;color:#526d72;font-size:7pt
  }
}
