/* Dashboard operacional do proprietário: primeiro o celular, depois a tela ampla. */
.owner-dashboard{min-width:0;display:grid;gap:18px;padding-bottom:28px}
.owner-dashboard>*{min-width:0}
.owner-abertura{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:2px 0 4px}
.owner-abertura h1{font-size:clamp(27px,4vw,40px);letter-spacing:-.05em;line-height:1.12;margin:0}
.owner-abertura p{color:var(--muted);font-size:14px;margin:7px 0 0}
.owner-acoes{display:flex;gap:8px;flex-wrap:wrap}
.owner-acoes .btn{min-height:44px}
.owner-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.owner-metrica{min-width:0;min-height:134px;padding:21px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.owner-metrica span{font-size:12px;font-weight:700;color:var(--muted)}
.owner-metrica strong{font-size:clamp(23px,2.5vw,31px);letter-spacing:-.045em;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:12px 0 auto}
.owner-metrica small{font-size:11px;color:var(--muted);line-height:1.35;margin-top:11px}
.owner-topo-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:16px;align-items:start}
.owner-coluna{display:grid;gap:16px;min-width:0}
.owner-painel{min-width:0;padding:23px}
.owner-painel h2,.owner-grafico h2{font-size:19px;line-height:1.2;letter-spacing:-.03em;margin:0}
.owner-secao-cab{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:16px}
.owner-secao-cab a,.owner-mais{font-size:12px;font-weight:700;color:#456651;text-decoration:none;white-space:normal}
.owner-secao-cab a:hover,.owner-mais:hover{text-decoration:underline}
.owner-timeline{border-left:1px solid #d9dfd6;margin-left:28px;padding-left:0}
.owner-evento{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:65px;padding:9px 0;border-bottom:1px solid var(--line);margin-left:-29px}
.owner-evento time{background:#fff;color:#425a48;font-weight:750;font-size:13px;font-variant-numeric:tabular-nums}
.owner-evento strong,.owner-evento small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-evento strong{font-size:13px}
.owner-evento small{font-size:11px;color:var(--muted);margin-top:2px}
.owner-status{font-size:11px;color:#4f6755;background:#f0f4ef;border-radius:20px;padding:5px 9px;white-space:nowrap}
.owner-mais{display:inline-block;margin-top:16px}
.owner-vazio{font-size:13px;color:var(--muted);margin:18px 0}
.owner-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:18px 0}
.owner-mini-stats>div{padding:14px;border:1px solid var(--line);background:#fafbf9;border-radius:11px;min-width:0}
.owner-mini-stats small,.owner-mini-stats strong{display:block}
.owner-mini-stats small{font-size:11px;color:var(--muted);line-height:1.35}
.owner-mini-stats strong{font-size:17px;letter-spacing:-.035em;margin-top:8px;overflow-wrap:anywhere}
.owner-muted{font-size:12px;color:var(--muted);line-height:1.5;margin:13px 0 0}
.owner-proximo{display:grid;gap:5px;margin:16px 0 0;font-size:13px}
.owner-proximo strong{font-size:16px}
.owner-proximo span{color:var(--muted)}
.owner-grafico{min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:23px;box-shadow:var(--shadow)}
.owner-grafico-filtros{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 15px}
.owner-grafico-filtros button{background:#f5f6f3;border:1px solid transparent;border-radius:8px;color:var(--ink-2);font:inherit;font-size:12px;font-weight:650;padding:9px 12px;min-height:40px;cursor:pointer}
.owner-grafico-filtros button.ativo{background:#e8eee7;border-color:#c8d6c9;color:#2e563c}
.owner-grafico-filtros button:focus-visible{outline:2px solid #6e9271}
.owner-grafico .graf-card{border:0;box-shadow:none;padding:4px 0;background:none}
.owner-grafico .graf-card h3{font-size:14px}
.owner-grafico .graf-sub{margin:2px 0 10px}
.owner-grafico .graf-linha{width:100%;max-width:100%;overflow:hidden;min-height:160px}
.owner-grafico .graf-linha circle{cursor:pointer}
.owner-grafico .graf-linha circle:focus-visible{outline:2px solid #34533e}
#owner-grafico-dica{font-size:12px;color:var(--muted);min-height:18px;margin:6px 0 0}
.owner-grafico .graf-linha circle{stroke:transparent;stroke-width:15px;paint-order:stroke;pointer-events:all}
.owner-graficos-menores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.owner-barras{display:grid;gap:10px;margin-top:18px}
.owner-barra{display:grid;grid-template-columns:minmax(42px,90px) minmax(0,1fr) 34px;align-items:center;gap:10px;min-width:0}
.owner-barra>span{font-size:12px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-barra strong{font-size:12px;text-align:right;font-variant-numeric:tabular-nums}
.owner-barra-track{height:8px;border-radius:8px;background:#edf0eb;overflow:hidden}
.owner-barra-track>span{display:block;height:100%;background:#718b73;border-radius:8px}
.owner-equipe{display:grid;margin-top:12px}
.owner-equipe-linha{display:grid;grid-template-columns:minmax(0,1.1fr) 95px 95px 90px;gap:9px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:12px}
.owner-equipe-linha>*{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-equipe-linha b{font-variant-numeric:tabular-nums;text-align:right}
.owner-equipe-linha small{color:var(--muted);text-align:right}
.owner-clientes{display:flex;align-items:center;gap:25px;margin:16px 0}
.owner-donut{width:138px;height:138px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle,#fff 57%,transparent 58%),conic-gradient(#5a785e var(--parte),#e8ede7 0)}
.owner-donut strong{font-size:31px;letter-spacing:-.04em}
.owner-donut span{font-size:11px;color:var(--muted)}
.owner-clientes p{font-size:13px;white-space:nowrap;margin:9px 0}
.owner-alertas{display:grid;margin-top:13px}
.owner-alertas a{display:grid;grid-template-columns:28px 1fr 14px;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink-2);text-decoration:none;font-size:13px}
.owner-alertas a strong{color:#8b673b}
.owner-rodape{font-size:11px;color:var(--muted);line-height:1.5;margin:0 2px}
.owner-walkaround{display:flex;align-items:center;justify-content:space-between;gap:20px}.owner-walkaround .btn{flex:none;min-height:44px}

/* Navegação lateral somente no painel do dono em telas grandes. */
.owner-sidebar{display:none}
@media(min-width:1024px){
  body.owner-layout #tela-app{padding-left:232px}
  body.owner-layout .owner-sidebar{position:fixed;inset:0 auto 0 0;width:232px;z-index:30;display:flex;flex-direction:column;background:#202722;color:#f5f7f2;padding:21px 14px 16px;overflow-y:auto}
  body.owner-layout .topo{position:relative}
  body.owner-layout .abas{display:none}
  body.owner-layout .conteudo{max-width:1510px;padding:30px clamp(22px,3vw,44px) 72px}
  body.owner-layout .topo-conteudo{max-width:1510px;padding:16px clamp(22px,3vw,44px)}
  .owner-side-brand{display:flex;align-items:center;gap:11px;padding:7px 9px 24px;border-bottom:1px solid #39463c;min-width:0}
  .owner-side-monograma{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:11px;background:#d6c19a;color:#202722;font-weight:800}
  .owner-side-brand>div{min-width:0}.owner-side-brand strong{display:block;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-side-brand small{display:block;color:#a9b9aa;font-size:9px;letter-spacing:.09em;margin-top:3px}
  .owner-sidebar nav{display:grid;gap:3px;padding:19px 0}
  .owner-sidebar nav a{display:block;padding:10px 13px;border-radius:9px;text-decoration:none;color:#c6d0c5;font-size:13px;font-weight:600}
  .owner-sidebar nav a:hover,.owner-sidebar nav a.ativo{background:#34483a;color:#fff}
  .owner-side-footer{margin-top:auto;padding:15px 9px 0;border-top:1px solid #39463c;display:grid;gap:10px;min-width:0}
  .owner-side-status{font-size:11px;color:#d6c19a}
  .owner-side-footer a{font-size:11px;color:#c6d0c5;overflow-wrap:anywhere}
}
@media(min-width:820px) and (max-width:1023px){.owner-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-topo-grid{grid-template-columns:1fr}}
@media(max-width:819px){.owner-abertura{align-items:start}.owner-topo-grid,.owner-graficos-menores{grid-template-columns:1fr}.owner-dashboard{gap:13px}.owner-painel,.owner-grafico{padding:19px}.owner-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.owner-metrica{min-height:116px;padding:16px}.owner-metrica strong{font-size:23px}}
@media(max-width:560px){
  .owner-abertura{display:block}.owner-abertura p{font-size:13px}.owner-acoes{margin-top:15px}.owner-acoes .btn{flex:1;text-align:center}
  .owner-kpis{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;padding-bottom:5px;scrollbar-width:thin}
  .owner-metrica{flex:0 0 min(72vw,225px);scroll-snap-align:start}
  .owner-grafico-filtros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.owner-grafico-filtros button{padding:7px;font-size:11px}
  .owner-evento{grid-template-columns:51px minmax(0,1fr);gap:7px}.owner-status{grid-column:2;justify-self:start;margin-top:-4px}
  .owner-equipe-linha{grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:13px 0}.owner-equipe-linha span,.owner-equipe-linha small{text-align:left}.owner-equipe-linha b{text-align:right;grid-column:2;grid-row:1}
  .owner-clientes{gap:17px}.owner-donut{width:118px;height:118px}.owner-donut strong{font-size:26px}
  .owner-mini-stats strong{font-size:15px}
  .owner-walkaround{display:grid}.owner-walkaround .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.owner-kpis{scroll-behavior:auto}}
