/* Agendirect V5 — visual-only refinement. Original UI functions and state keys preserved. */
.v5-brand-legacy{position:absolute!important;inline-size:1px!important;block-size:1px!important;overflow:hidden!important;clip-path:inset(50%)}
.brand-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.brand-copy .v5-brand-word{width:min(164px,39vw);max-height:39px;height:auto;object-fit:contain;object-position:left center;display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.12))}
.brand-mark{flex:none;background:linear-gradient(145deg,#181615,#2c261e);border-color:color-mix(in srgb,var(--primary) 25%,transparent)!important}
.brand-mark img,.dp15-sidebar-brand .brand-mark img{object-fit:contain!important;padding:3px}
.dp15-sidebar-brand strong.v5-brand-legacy{display:none!important}
.dp15-sidebar-brand .v5-brand-word{display:block;width:156px;height:auto;max-height:52px;object-fit:contain;object-position:left center}
.agendirect-splash-logo-shell img{object-fit:contain!important;padding:5px}
.agendirect-splash-brand{display:flex;justify-content:center;align-items:center;min-height:48px}
.agendirect-splash-brand img{display:block;width:min(250px,68vw);height:auto;max-height:70px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.15))}
.v5-appearance{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);border-radius:18px;padding:13px;margin:12px 0;display:grid;gap:9px}
.v5-appearance-title{font-size:12px;font-weight:850;color:var(--text)}
.v5-appearance-title span{display:block;font-size:10px;font-weight:500;color:var(--muted);margin-top:3px}
.v5-theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.v5-theme-option,.v5-mode-options button{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:11px;min-height:42px;padding:8px 6px;font-family:inherit;font-size:11px;font-weight:750;line-height:1.25;cursor:pointer}
.v5-theme-option.active,.v5-mode-options button.active{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 25%,transparent)}
.v5-mode-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.v5-menu-toggle{display:none;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:23px;line-height:1;color:var(--text)}
.v5-drawer,.v5-drawer-backdrop{display:none}
@media(min-width:900px){.dp15-sidebar{overflow-y:auto;gap:8px}.dp15-sidebar .v5-appearance{margin-top:auto}.dp15-sidebar-bottom{margin-top:0!important}.dp15-sidebar-brand{gap:9px}.dp15-sidebar-brand .brand-mark{width:40px;height:40px}}
@media(max-width:899px){
 .v5-menu-toggle{display:flex}
 .topbar-inner{gap:7px}
 .topbar .brand{gap:7px;min-width:0}
 .topbar .brand-mark{width:37px;height:37px;border-radius:11px}
 .topbar .brand-copy .v5-brand-word{width:min(148px,36vw);max-height:34px}
 .topbar .brand-copy small{font-size:10px;max-width:150px}
 .topbar .top-actions{margin-left:auto;gap:3px}
 .topbar .top-actions .icon-btn{width:39px;height:39px;font-size:16px;border-radius:12px}
 .topbar .top-actions a[href="/#/automation"],.topbar .top-actions a[href="/#/settings"]{display:none}
 .v5-drawer-backdrop{display:block;position:fixed;inset:0;background:rgba(12,12,12,.57);opacity:0;visibility:hidden;transition:opacity .19s ease,visibility .19s;z-index:79}
 .v5-drawer{display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:min(340px,88vw);max-width:100vw;z-index:80;transform:translateX(-110%);transition:transform .2s ease;background:var(--surface);border-right:1px solid var(--line);color:var(--text);padding:calc(16px + var(--safe-top)) 16px max(18px,var(--safe-bottom));overflow-y:auto;overscroll-behavior:contain;box-shadow:15px 0 45px rgba(0,0,0,.14)}
 .v5-drawer-open .v5-drawer{transform:translateX(0)}
 .v5-drawer-open .v5-drawer-backdrop{opacity:1;visibility:visible}
 .v5-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px}
 .v5-drawer-head img{width:190px;max-width:70%;height:80px;max-height:80px;object-fit:contain;object-position:left center}
 .v5-drawer-close{border:1px solid var(--line);background:var(--surface-secondary);color:var(--text);width:42px;height:42px;min-width:42px;border-radius:12px;font-size:26px;line-height:1}
 .v5-drawer-business{font-size:11px;color:var(--muted);margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
 .v5-drawer-links{display:grid;grid-template-columns:1fr 1fr;gap:6px}
 .v5-drawer-link{min-height:49px;display:flex;align-items:center;gap:7px;padding:10px 8px;border:1px solid transparent;border-radius:12px;color:var(--text);font-size:11px;line-height:1.2;font-weight:750;text-decoration:none;background:color-mix(in srgb,var(--surface-secondary) 50%,var(--surface))}
 .v5-drawer-link svg{width:19px;height:19px;flex:none;color:var(--primary)}
 .v5-drawer-link.active{border-color:color-mix(in srgb,var(--primary) 34%,transparent);background:color-mix(in srgb,var(--primary) 13%,var(--surface))}
 .v5-drawer .v5-appearance{margin-top:14px}
}
@media(max-width:365px){.topbar .brand-mark{display:none}.topbar .brand-copy .v5-brand-word{width:min(137px,39vw)}.topbar .top-actions .icon-btn{width:36px;height:36px}}
html[data-mode="dark"] .v5-drawer{background:var(--surface)}
.v5-theme-option:focus-visible,.v5-mode-options button:focus-visible,.v5-drawer-link:focus-visible,.v5-menu-toggle:focus-visible,.v5-drawer-close:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.v5-drawer,.v5-drawer-backdrop{transition:none}}

/* V5.1 Premium copy/readability/accessibility pass — 2026-11-07 */
.v5-appearance-title{font-size:14px;font-weight:800;line-height:1.3}
.v5-appearance-title span{font-size:12px;font-weight:500;line-height:1.4;margin-top:4px}
.v5-theme-option,.v5-mode-options button{min-height:46px;font-size:13px;font-weight:700;line-height:1.32;padding:9px 7px;overflow-wrap:break-word}
.dp15-sidebar-bottom small{font-size:11px;line-height:1.45}
.auth-entry-card .brand-copy small{font-size:11px;line-height:1.35;white-space:normal;overflow:visible;text-overflow:clip}
@media(max-width:899px){
 .v5-drawer-link{min-height:54px;padding:10px;font-size:12.5px;font-weight:720;line-height:1.3;overflow-wrap:break-word}
 .v5-drawer-business{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
 .v5-drawer-head img{height:auto;max-height:67px}
 .topbar .brand-copy small{font-size:11px}
}
@media(max-width:360px){
 .v5-drawer-links{gap:7px}
 .v5-drawer-link{font-size:12px;padding:9px 7px}
}

/* V5.2 — Premium real: visual coordination for theme-colored header.
   Presentation-only: theme keys, metallic brand artwork, routes and core state remain unchanged.
   Header stays deep for contrast in both light and dark palettes. */
html[data-theme="signature"]{--v52-header-start:#25190f;--v52-header-mid:#50331c;--v52-header-end:#28180e}
html[data-theme="ink"]{--v52-header-start:#2b1a1a;--v52-header-mid:#703c30;--v52-header-end:#301c1c}
html[data-theme="pulse"]{--v52-header-start:#0a213b;--v52-header-mid:#194b83;--v52-header-end:#0c274a}
html[data-theme="nature"]{--v52-header-start:#102b22;--v52-header-mid:#2b5c43;--v52-header-end:#112d23}
@media(max-width:959px){
 html .dp15-shell .topbar{background:linear-gradient(115deg,var(--v52-header-start,#25190f),var(--v52-header-mid,#50331c) 55%,var(--v52-header-end,#28180e));border-bottom:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:none;backdrop-filter:none}
 html .dp15-shell .topbar-inner,html[data-mode="dark"] .dp15-shell .topbar-inner{background:rgba(8,10,13,.16);border-color:rgba(255,255,255,.23);box-shadow:0 5px 16px rgba(0,0,0,.13)}
 html .dp15-shell .topbar .brand-copy small{color:#f4e9db;opacity:.93;text-shadow:0 1px 2px rgba(0,0,0,.3)}
 html .dp15-shell .topbar .v5-brand-word{filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}
 html .dp15-shell .topbar .v5-menu-toggle,
 html .dp15-shell .topbar .top-actions .icon-btn,
 html[data-mode="dark"] .dp15-shell .topbar .top-actions .icon-btn{
   color:#fffaf4;background:rgba(9,12,18,.25);border-color:rgba(255,255,255,.24);
   box-shadow:0 3px 9px rgba(0,0,0,.15)
 }
 html .dp15-shell .topbar .v5-menu-toggle:focus-visible,
 html .dp15-shell .topbar .top-actions .icon-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
}

/* V5.4 - Abertura e agenda: usabilidade do calendário e primeiro horário visível.
   Apenas apresentação; nenhuma alteração de disponibilidade ou gravação. */
.b48-calendar-control .btn{min-height:48px;min-width:180px;justify-content:center;gap:8px}
.b48-calendar-control [aria-expanded="true"]{background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));box-shadow:none}
.b54-calendar-footer{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;border-radius:13px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--text);font-size:13px;font-weight:800;cursor:pointer}
.b54-calendar-footer{width:100%;margin-top:12px}
.b54-calendar-footer:focus-visible,.b48-calendar-control .btn:focus-visible{outline:3px solid var(--primary);outline-offset:2px}
/* O primeiro slot fica abaixo do recorte arredondado. 30px também preserva a área
   clicável de +/- 15 min do horário inicial, sem mudar cálculos do calendário. */
.b33-agenda-hero .dp17-timeline{margin-top:31px}
.b33-agenda-hero .dp17-timeline-shell{scroll-padding-top:31px}

/* V5.5: duração pontual por atendimento — toque confortável no celular. */
.v55-duration {padding:14px 16px;border:1px solid var(--line, #dfd7c9);border-radius:18px;background:var(--card, #fffaf3);}
.v55-duration-controls {display:grid;grid-template-columns:minmax(78px,1fr) minmax(75px,100px) minmax(78px,1fr);align-items:center;gap:8px;margin-top:8px;}
.v55-duration-controls .btn {white-space:nowrap;padding:12px 6px;min-height:44px;}
.v55-duration-controls .input{text-align:center;min-width:0;font-variant-numeric:tabular-nums;min-height:44px;}
.v55-duration .row.space{gap:10px;align-items:flex-start;flex-wrap:wrap;margin-top:7px;}
@media(max-width:360px){.v55-duration-controls{grid-template-columns:1fr 75px 1fr;gap:5px}.v55-duration-controls .btn{font-size:.86rem}}

/* V5.6 • Navegação consistente — mesmo alinhamento para botões e links.
   Escopo: listas de navegação da página Mais, não listas de clientes/agendamentos. */
.more-section .card.list > :is(a, button).list-item,
.more-tools-list > :is(a, button).list-item,
.more-logout > :is(a, button).list-item {
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 18px;
  gap:12px;
  align-items:center;
  justify-content:stretch;
  width:100%;
  min-height:76px;
  padding:14px 16px;
  text-align:center;
  font-family:inherit;
  font-size:inherit;
  line-height:1.3;
  color:var(--text);
  text-decoration:none;
  cursor:pointer;
}
.more-section .card.list > :is(a, button).list-item > .avatar,
.more-tools-list > :is(a, button).list-item > .avatar,
.more-logout > :is(a, button).list-item > .avatar {
  width:44px;height:44px;min-width:44px;
  justify-self:start;
  grid-column:1;
}
.more-section .card.list > :is(a, button).list-item > .grow,
.more-tools-list > :is(a, button).list-item > .grow,
.more-logout > :is(a, button).list-item > .grow {
  grid-column:2;
  min-width:0;
  width:100%;
  text-align:center;
}
.more-section .card.list > :is(a, button).list-item > .grow strong,
.more-tools-list > :is(a, button).list-item > .grow strong,
.more-logout > :is(a, button).list-item > .grow strong {
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:break-word;
  line-height:1.25;
}
.more-section .card.list > :is(a, button).list-item > .grow small,
.more-tools-list > :is(a, button).list-item > .grow small,
.more-logout > :is(a, button).list-item > .grow small {
  display:block;
  white-space:normal;
  overflow-wrap:break-word;
  line-height:1.4;
}
.more-section .card.list > :is(a, button).list-item:focus-visible,
.more-tools-list > :is(a, button).list-item:focus-visible,
.more-logout > :is(a, button).list-item:focus-visible {
  outline:3px solid var(--primary);
  outline-offset:-3px;
  position:relative;
  z-index:1;
}
@media (max-width:360px){
  .more-section .card.list > :is(a, button).list-item,
  .more-tools-list > :is(a, button).list-item,
  .more-logout > :is(a, button).list-item {
    grid-template-columns:42px minmax(0,1fr) 16px;
    column-gap:8px;
    padding:12px 10px;
  }
  .more-section .card.list > :is(a, button).list-item > .avatar,
  .more-tools-list > :is(a, button).list-item > .avatar,
  .more-logout > :is(a, button).list-item > .avatar {width:40px;height:40px;min-width:40px;}
}

/* V5.8: tactile duration picker, native-feeling but consistent on Android/iOS PWA. */
.v58-duration-picker-launch{margin-top:9px;width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line,#c5a96e);border-radius:14px;background:var(--card,#fffaf1);color:var(--text,#2b241f);font:inherit;font-weight:650;cursor:pointer}
.v58-duration-picker-launch span{font-size:22px;line-height:1}
.v58-wheel-backdrop{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.62);display:flex;justify-content:center;align-items:flex-end;padding:12px 12px max(12px,env(safe-area-inset-bottom))}
.v58-wheel-sheet{width:min(100%,480px);border-radius:24px;background:var(--card,#fffaf1);color:var(--text,#24201a);padding:20px 18px;box-shadow:0 12px 60px rgba(0,0,0,.35);outline:none}
.v58-wheel-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.v58-wheel-head strong{display:block;font-size:1.15rem}.v58-wheel-head small{display:block;color:var(--muted,#736c62);margin-top:3px}.v58-wheel-x{border:0;background:transparent;color:inherit;font-size:30px;min-width:40px;min-height:40px}
.v58-wheel-columns{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:end;gap:9px;margin:16px 0 10px}.v58-wheel-group{text-align:center;min-width:0}.v58-wheel-group>strong{display:block;margin-bottom:8px;color:var(--muted,#736c62);font-size:.9rem}.v58-wheel-separator{align-self:center;text-align:center;font-size:30px;font-weight:700}
.v58-wheel-list{height:240px;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;padding:96px 0;box-sizing:border-box;border-radius:16px;background:var(--surface,#f4eee2);touch-action:pan-y;position:relative}.v58-wheel-list::-webkit-scrollbar{display:none}.v58-wheel-list button{display:flex;align-items:center;justify-content:center;scroll-snap-align:center;width:100%;height:48px;border:0;background:transparent;color:var(--muted,#736c62);font:inherit;font-size:23px;font-variant-numeric:tabular-nums;cursor:pointer}.v58-wheel-list button.selected{font-size:29px;font-weight:800;color:var(--text,#24190e);background:color-mix(in srgb,var(--accent,#b88c38) 18%,transparent);border-radius:12px}
.v58-wheel-note{font-size:.85rem;color:var(--muted,#736c62);margin:12px 0}.v58-wheel-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.v58-wheel-actions .btn{min-height:48px}
/* V5.9 • Duration wheel must fit compact Android and iPhone viewports. */
.v58-wheel-backdrop{box-sizing:border-box;max-width:100vw;overflow-x:hidden}
.v58-wheel-sheet{width:100%;max-width:480px;min-width:0;box-sizing:border-box}
.v58-wheel-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.v58-wheel-actions .btn{min-width:0;white-space:normal;padding-inline:9px;line-height:1.2}
@media(max-width:360px){.v58-wheel-sheet{padding:16px 12px;border-radius:20px}.v58-wheel-head strong{font-size:1.04rem}.v58-wheel-head small{font-size:.79rem}.v58-wheel-columns{gap:6px}.v58-wheel-actions .btn{font-size:.9rem}}


/* V5.9.1 — EMERGENCY PREMIUM: duration control inherits both light and dark themes.
   CSS-only fix. No appointment rules, user data or theme names changed. */
.v55-duration{
  background:var(--surface);color:var(--text);
  border-color:color-mix(in srgb,var(--primary) 22%,var(--border));
}
.v55-duration > label{color:var(--text);font-size:13px;line-height:1.35}
.v55-duration .v55-duration-controls .btn-soft{
  background:var(--surface-secondary);color:var(--text);
  border:1px solid var(--border);
}
.v55-duration .v55-duration-controls .input{
  background:var(--input-background);color:var(--text);border-color:var(--border);
}
.v55-duration .v58-duration-picker-launch{
  background:var(--surface-secondary);color:var(--text);
  border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));
}
.v55-duration .note,.v55-duration [data-v55-summary]{color:var(--muted)}
.v55-duration [data-v55-reset]{color:var(--primary);background:var(--surface-secondary);border-color:var(--border)}
.v58-wheel-sheet{background:var(--surface);color:var(--text);border:1px solid var(--border)}
.v58-wheel-list{background:var(--surface-secondary)}
.v58-wheel-head small,.v58-wheel-note,.v58-wheel-group>strong{color:var(--muted)}
.v58-wheel-list button.selected{color:var(--text)}
.v55-duration button:focus-visible,.v58-wheel-sheet button:focus-visible{
  outline:3px solid var(--primary);outline-offset:2px;
}
html[data-mode="dark"] .v55-duration{
  background:color-mix(in srgb,var(--surface) 92%,var(--primary) 8%);
  border-color:color-mix(in srgb,var(--primary) 38%,var(--border));
  box-shadow:0 8px 24px rgba(0,0,0,.17);
}
html[data-mode="dark"] .v55-duration .v58-duration-picker-launch{
  background:color-mix(in srgb,var(--surface-secondary) 82%,var(--surface));
  border-color:color-mix(in srgb,var(--primary) 42%,var(--border));
}
html[data-mode="dark"] .v55-duration .v58-duration-picker-launch:hover{
  background:color-mix(in srgb,var(--primary) 13%,var(--surface));
}


/* V6.0 — instalação PWA com identidade oficial. Preserva temas, splash e navegação. */
.v6-install-entry,.v6-install-banner,.v6-install-more-card{box-sizing:border-box}
.v6-install-entry{display:flex;align-items:center;gap:11px;margin:16px 0 18px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 36%,var(--line));border-radius:17px;background:linear-gradient(128deg,color-mix(in srgb,var(--primary) 10%,var(--surface)) 0%,var(--surface) 85%);color:var(--text)}
.v6-install-entry-icon{display:grid;place-items:center;width:39px;height:39px;flex:none;border-radius:12px;background:linear-gradient(140deg,#2e271c,#44351f);color:#ecd39c}
.v6-install-entry-icon svg{width:20px;height:20px}
.v6-install-entry>div{flex:1;min-width:0}
.v6-install-entry strong,.v6-install-more-card strong{display:block;font-weight:850;font-size:13px;line-height:1.25;color:var(--text)}
.v6-install-entry small,.v6-install-more-card small{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:3px}
.v6-install-entry button,.v6-install-more-card button{border:0;border-radius:11px;flex:none;background:var(--primary);color:var(--primary-foreground);font-size:12px;font-weight:800;padding:10px 12px;min-height:43px}
.v6-install-top{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:42px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--text);border-radius:13px;padding:7px 10px;font-size:12px;font-weight:850}
.v6-install-top svg{width:19px;height:19px;flex:none;color:var(--primary)}
.v6-install-top span{white-space:nowrap}
.v6-install-banner{display:flex;align-items:center;gap:12px;max-width:900px;margin:12px auto 0;padding:10px 12px;border:1px solid rgba(230,188,112,.35);border-radius:16px;background:linear-gradient(112deg,#231b17,#44311e 58%,#29221b);box-shadow:0 12px 28px rgba(0,0,0,.14);color:#fff8ed}
.v6-install-banner-symbol{width:41px;height:41px;border-radius:12px;object-fit:contain;flex:none}
.v6-install-banner-text{flex:1;min-width:0}
.v6-install-banner-text strong{display:block;color:#fff9f0;font-weight:850;font-size:13px;line-height:1.35}
.v6-install-banner-text small{display:block;color:#e7d6be;font-size:11px;line-height:1.42;margin-top:2px}
.v6-install-banner-cta{border:1px solid #f4d895;border-radius:11px;color:#241b12;background:linear-gradient(120deg,#e1bb72,#f7dda2 55%,#c69a4e);padding:9px 13px;min-height:42px;font-weight:900;font-size:12px}
.v6-install-banner-dismiss{border:0;background:transparent;color:#efdab7;min-width:30px;min-height:42px;font-size:21px;border-radius:9px}
.v6-install-more-card{display:flex;align-items:center;gap:12px;padding:13px;margin:0 0 14px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));background:var(--surface);border-radius:17px;box-shadow:0 8px 23px rgba(0,0,0,.07)}
.v6-install-more-card img{width:43px;height:43px;object-fit:contain;flex:none;border-radius:12px}
.v6-install-more-card>div{flex:1;min-width:0}
.v6-install-backdrop{position:fixed;inset:0;z-index:11000;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:rgba(14,14,15,.68);backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center}
.v6-install-dialog{width:min(450px,100%);max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain;border-radius:24px;border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));background:var(--surface);color:var(--text);box-shadow:0 28px 100px rgba(0,0,0,.35)}
.v6-install-dialog-top{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;min-height:104px;background:linear-gradient(115deg,#191b20,#382a1d 61%,#222126);border-bottom:1px solid rgba(241,205,140,.18)}
.v6-install-dialog-brand{display:flex;align-items:center;gap:9px;min-width:0}
.v6-install-dialog-symbol{display:block;width:55px;height:55px;object-fit:contain;border-radius:14px;flex:none}
.v6-install-dialog-word{display:block;max-width:min(205px,54vw);max-height:54px;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.5))}
.v6-install-close{align-self:flex-start;border:1px solid rgba(255,255,255,.25);background:rgba(10,10,11,.35);color:#fff;width:39px;height:39px;flex:none;border-radius:12px;font-size:23px}
.v6-install-dialog-content{padding:21px 21px 23px}
.v6-install-eyebrow{display:inline-flex;font-size:11px;letter-spacing:.09em;font-weight:850;text-transform:uppercase;color:var(--primary)}
.v6-install-dialog-content h2{font:750 clamp(23px,5vw,28px)/1.18 var(--font-display);letter-spacing:-.035em;margin:10px 0 7px;color:var(--text)}
.v6-install-dialog-content>p{font-size:13px;line-height:1.55;color:var(--muted);margin:0}
.v6-install-steps{list-style:none;margin:19px 0;padding:0;display:grid;gap:9px}
.v6-install-steps li{display:flex;align-items:flex-start;gap:11px;color:var(--text);font-size:13px;line-height:1.4;padding:9px;border-radius:12px;background:color-mix(in srgb,var(--primary) 5%,var(--surface))}
.v6-install-step-number{display:grid;place-items:center;flex:none;width:27px;height:27px;border-radius:9px;color:#f6dfa9;background:#292017;font-weight:850;font-size:12px}
.v6-install-dialog-content .v6-install-browser-note{padding:12px 13px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-left:3px solid var(--primary);border-radius:10px;margin:11px 0 14px;color:var(--text)}
.v6-install-dialog-primary{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--primary);color:var(--primary-foreground);border:0;border-radius:13px;width:100%;min-height:50px;font-size:14px;font-weight:850}
.v6-install-dialog-primary svg{width:20px;height:20px}
.v6-install-dialog-secondary{display:block;margin:8px auto 0;background:transparent;color:var(--text);border:1px solid var(--line);border-radius:12px;width:100%;min-height:45px;font-weight:750}
.v6-install-dialog-content .v6-install-safety{text-align:center;font-size:11px;line-height:1.4;margin:14px 0 0}
.v6-install-entry button:focus-visible,.v6-install-top:focus-visible,.v6-install-banner button:focus-visible,.v6-install-more-card button:focus-visible,.v6-install-dialog button:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
@media(min-width:900px){.v6-install-banner{display:none}}
@media(max-width:899px){.v6-install-banner{margin:10px 13px 0}}
@media(max-width:650px){.v6-install-top{padding:7px;min-width:40px;min-height:40px}.v6-install-top span{display:none}.topbar .top-actions .v6-install-top{background:rgba(9,12,18,.25);color:#fff;border-color:rgba(255,255,255,.25)}.topbar .top-actions .v6-install-top svg{color:#f7daa0}}
@media(max-width:375px){.v6-install-banner{gap:8px}.v6-install-banner-symbol{width:35px;height:35px}.v6-install-banner-cta{padding:8px 10px}.v6-install-entry{gap:8px;padding:10px}.v6-install-entry-icon{width:34px;height:34px}.v6-install-entry button{padding:9px}}
@media(max-width:520px){.v6-install-backdrop{align-items:end;padding:0}.v6-install-dialog{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));border-radius:24px 24px 0 0;border-bottom:0}.v6-install-dialog-content{padding-bottom:calc(22px + env(safe-area-inset-bottom))}}
@media(display-mode:standalone){.v6-install-entry,.v6-install-banner,.v6-install-more-card,.v6-install-top{display:none!important}}
html.v6-install-complete .v6-install-entry,html.v6-install-complete .v6-install-banner,html.v6-install-complete .v6-install-more-card,html.v6-install-complete .v6-install-top{display:none!important}
@media(prefers-reduced-motion:reduce){.v6-install-backdrop,.v6-install-dialog{animation:none;transition:none}}

/* V7 Excellence R1: clear, accessible destructive-action identity confirmation. */
.v7-delete-google-check{margin-top:14px;padding:16px;border:1px solid var(--border,#d6d1c8);border-radius:16px;background:color-mix(in srgb,var(--surface,#fff) 90%,#bb9549 10%)}
.v7-delete-google-check strong{display:block;margin-bottom:4px;line-height:1.4}
.v7-delete-google-check .note{margin:5px 0 12px;line-height:1.55}
#v7-delete-google-host{min-height:40px;max-width:100%;overflow:hidden}
#v7-delete-google-status{margin:10px 0 0;min-height:18px}
.v7-connection-notice{display:flex;align-items:center;gap:12px;max-width:1100px;margin:10px auto;padding:12px 16px;border-radius:14px;border:1px solid color-mix(in srgb,#b57a19 34%,transparent);background:color-mix(in srgb,var(--surface,#fff) 84%,#d4a654 16%);color:var(--text,#24211d)}
.v7-connection-notice>span:first-child{font-size:27px;line-height:1;color:#ad7925;flex-shrink:0}
.v7-connection-notice>span:last-child{min-width:0}
.v7-connection-notice strong,.v7-connection-notice small{display:block;line-height:1.4}
.v7-connection-notice small{font-size:.82rem;opacity:.83;margin-top:2px}
@media(max-width:600px){.v7-connection-notice{margin:8px 12px;border-radius:12px;padding:10px 12px}}


/* V7 Excellence R3 — painel de duração dark premium.
   Escopo deliberadamente visual: preserva valores, +/-15 min, seletor e "Usar padrão".
   Todos os fundos acompanham as variáveis do tema; nada de branco fixo em modo escuro. */
.v55-duration {
  width:100%;max-width:100%;min-width:0;
  padding:14px 15px;border-radius:18px;
}
.v55-duration > label {font-size:14px;font-weight:780;letter-spacing:-.01em}
.v55-duration-controls {
  grid-template-columns:minmax(0,1fr) minmax(68px,90px) minmax(0,1fr);
  gap:8px;margin-top:10px;
}
.v55-duration-controls .btn {
  min-width:0;min-height:46px;padding:9px 4px;
  font-size:clamp(.82rem,3.5vw,.98rem);line-height:1.2;
}
.v55-duration-controls .input {
  min-height:46px;padding-inline:5px;font-weight:720;
  font-variant-numeric:tabular-nums;
}
.v55-duration .v58-duration-picker-launch {
  min-height:47px;margin-top:12px;padding:10px 9px;
  line-height:1.25;text-wrap:balance;
}
.v55-duration .row.space {margin-top:11px;gap:10px;align-items:center}
.v55-duration [data-v55-summary] {font-size:.83rem;line-height:1.45}
.v55-duration [data-v55-reset] {min-height:42px;padding-inline:13px;font-weight:720}
@media(max-width:360px){
  .v55-duration{padding:12px}
  .v55-duration-controls{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);gap:6px}
  .v55-duration-controls .btn{font-size:.81rem}
}
html[data-mode="dark"] .v55-duration {
  background:color-mix(in srgb,var(--surface) 94%,#080808 6%);
  color:var(--text);
  border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 9px 23px rgba(0,0,0,.14);
}
html[data-mode="dark"] .v55-duration > label{color:var(--text)}
html[data-mode="dark"] .v55-duration .v55-duration-controls .btn-soft {
  color:var(--text);
  background:color-mix(in srgb,var(--surface) 80%,#080808 20%);
  border:1px solid color-mix(in srgb,var(--border) 80%,var(--primary) 20%);
  box-shadow:none;
}
html[data-mode="dark"] .v55-duration .v55-duration-controls .input {
  color:var(--text);
  background:color-mix(in srgb,var(--surface) 75%,#070707 25%);
  border:1px solid color-mix(in srgb,var(--border) 85%,var(--primary) 15%);
  box-shadow:none;
}
html[data-mode="dark"] .v55-duration .v58-duration-picker-launch {
  color:var(--text);
  background:color-mix(in srgb,var(--surface) 85%,#080808 15%);
  border:1px solid color-mix(in srgb,var(--primary) 29%,var(--border));
  box-shadow:none;
}
html[data-mode="dark"] .v55-duration .v58-duration-picker-launch:hover,
html[data-mode="dark"] .v55-duration .v58-duration-picker-launch:focus-visible {
  background:color-mix(in srgb,var(--primary) 9%,var(--surface));
}
html[data-mode="dark"] .v55-duration [data-v55-reset] {
  color:var(--primary);
  background:color-mix(in srgb,var(--surface) 86%,#080808 14%);
  border:1px solid color-mix(in srgb,var(--primary) 21%,var(--border));
}
html[data-mode="dark"] .v55-duration [data-v55-summary] {color:var(--muted)}
html[data-mode="dark"] .v58-wheel-sheet {
  color:var(--text);
  background:color-mix(in srgb,var(--surface) 96%,#080808 4%);
  border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));
}
html[data-mode="dark"] .v58-wheel-list {
  background:color-mix(in srgb,var(--surface) 81%,#080808 19%);
}
html[data-mode="dark"] .v58-wheel-list button.selected {
  color:var(--text);
  background:color-mix(in srgb,var(--primary) 16%,var(--surface));
}


/* V7 Excellence R3 — consistência premium do modo escuro em superfícies legadas.
   Conjuntos intencionais: desktop, avisos, calendário, faturamento e seletores.
   Fundo branco do QR Pix fica intacto por ser uma área de leitura, não um card decorativo.
   Nenhuma alteração de componentes, ações, dados, contratos ou lógica. */
html[data-mode="dark"] .dp17-timeline-note {
  color:var(--text);
  background:color-mix(in srgb,var(--warning) 12%,var(--surface));
  border-color:color-mix(in srgb,var(--warning) 30%,var(--border));
}
html[data-mode="dark"] .dp17-break {
  color:var(--text-secondary);
  background:repeating-linear-gradient(135deg,
    color-mix(in srgb,var(--surface-secondary) 80%,var(--surface)),
    color-mix(in srgb,var(--surface-secondary) 80%,var(--surface)) 7px,
    var(--surface) 7px,var(--surface) 14px);
  border-left-color:var(--muted);
}
html[data-mode="dark"] .dp17-payment-total,
html[data-mode="dark"] .dp16-price-card,
html[data-mode="dark"] .dp16-pix-panel,
html[data-mode="dark"] .dp16-key-row {
  color:var(--text);
  background:color-mix(in srgb,var(--surface) 88%,var(--surface-secondary) 12%);
  border-color:var(--border);
}
html[data-mode="dark"] .dp16-price-card strong,
html[data-mode="dark"] .dp16-price-card p,
html[data-mode="dark"] .dp16-price-card p b,
html[data-mode="dark"] .dp16-plan-copy h2 {
  color:var(--text);
}
html[data-mode="dark"] .dp16-price-card hr,
html[data-mode="dark"] .dp16-copy-mini {border-color:var(--border)}
html[data-mode="dark"] .dp16-copy-mini {color:var(--text-secondary)}
html[data-mode="dark"] .dp16-expiry-card,
html[data-mode="dark"] .dp16-expiry-card.is-trial {
  background:color-mix(in srgb,var(--surface) 90%,var(--surface-secondary) 10%);
  border-color:color-mix(in srgb,var(--warning) 25%,var(--border));
}
html[data-mode="dark"] .dp16-plan-copy li::before {
  color:var(--success);
  background:color-mix(in srgb,var(--success) 17%,var(--surface));
  box-shadow:0 0 0 3px var(--surface);
}
/* Ícone de status continua colorido, mas sem o fundo pastel claro em toda a tela. */
html[data-mode="dark"] .dp17-event-status {
  color:var(--success);
  background:color-mix(in srgb,var(--success) 15%,var(--surface));
}
html[data-mode="dark"] .dp17-event.waiting .dp17-event-status {
  color:var(--warning);
  background:color-mix(in srgb,var(--warning) 16%,var(--surface));
}
@media(min-width:900px){
  html[data-mode="dark"] .dp15-business-chip,
  html[data-mode="dark"] .dp15-agenda-main,
  html[data-mode="dark"] .dp15-rail-card,
  html[data-mode="dark"] .dp15-free-slots,
  html[data-mode="dark"] .dp15-timeline .appt-card,
  html[data-mode="dark"] .dp15-agenda-controls .agenda-period-nav .btn,
  html[data-mode="dark"] .dp15-cal-nav {
    color:var(--text);
    background:var(--surface);
    border-color:var(--border);
  }
  html[data-mode="dark"] .dp15-agenda-main,
  html[data-mode="dark"] .dp15-rail-card,
  html[data-mode="dark"] .dp15-free-slots {
    box-shadow:0 9px 24px rgba(0,0,0,.16);
  }
  html[data-mode="dark"] .dp15-timeline .time,
  html[data-mode="dark"] .dp15-cal-week span,
  html[data-mode="dark"] .dp15-cal-day,
  html[data-mode="dark"] .dp15-pro-row {color:var(--text-secondary)}
  html[data-mode="dark"] .dp15-cal-day:hover,
  html[data-mode="dark"] .dp15-pro-row:hover {
    background:var(--surface-secondary);
  }
  html[data-mode="dark"] .dp15-cal-day.active {
    color:var(--primary-foreground);
    background:var(--primary);
  }
  html[data-mode="dark"] .dp15-pro-row.active {color:var(--text);font-weight:800}
}


/* V7 Excellence R4 — revisão cruzada 4 temas x 2 modos — apenas estilo.
   As cores de cada tema continuam vindo do THEME_MAP e de applyTheme().
   Nenhum comportamento de calendário, WhatsApp, pagamento ou instalação é alterado. */
html[data-theme="signature"][data-mode="light"],html[data-theme="ink"][data-mode="light"],html[data-theme="pulse"][data-mode="light"],html[data-theme="nature"][data-mode="light"],html[data-theme="onyx"][data-mode="light"],html[data-theme="amethyst"][data-mode="light"]{
  --v7r4-surface-lift:color-mix(in srgb,var(--surface) 96%,var(--surface-secondary) 4%);
  --v7r4-surface-raised:color-mix(in srgb,var(--surface) 80%,var(--surface-secondary) 20%);
  --v7r4-hairline:color-mix(in srgb,var(--border) 88%,var(--primary) 12%);
  --v7r4-focus:var(--primary);
  --v7r4-shadow:0 10px 28px color-mix(in srgb,var(--text-primary) 8%,transparent);
}
html[data-theme="signature"][data-mode="dark"],html[data-theme="ink"][data-mode="dark"],html[data-theme="pulse"][data-mode="dark"],html[data-theme="nature"][data-mode="dark"],html[data-theme="onyx"][data-mode="dark"],html[data-theme="amethyst"][data-mode="dark"]{
  --v7r4-surface-lift:color-mix(in srgb,var(--surface) 91%,var(--surface-secondary) 9%);
  --v7r4-surface-raised:color-mix(in srgb,var(--surface) 76%,var(--surface-secondary) 24%);
  --v7r4-hairline:color-mix(in srgb,var(--border) 76%,var(--primary) 24%);
  --v7r4-focus:color-mix(in srgb,var(--primary) 85%,white 15%);
  --v7r4-shadow:0 12px 32px rgba(0,0,0,.24);
}
/* Document, cards, forms, and scheduling controls inherit the selected theme. */
html[data-theme] .v55-duration,
html[data-theme] .modal-card,
html[data-theme] .v7r2-invites,
html[data-theme] .v7r2-team-entry,
html[data-theme] .theme-card,
html[data-theme] .seg,
html[data-theme] .simple-details,
html[data-theme] .pix-panel,
html[data-theme] .finance-snapshot>div {
  background:var(--v7r4-surface-lift,var(--surface));
  color:var(--text);
  border:1px solid var(--v7r4-hairline,var(--border));
}
html[data-theme] .v55-duration-controls .btn-soft,
html[data-theme] .v55-duration .v58-duration-picker-launch,
html[data-theme] .v58-wheel-list button,
html[data-theme] .v5-theme-option,
html[data-theme] .v5-mode-options button {
  background:var(--v7r4-surface-raised,var(--surface-secondary));
  color:var(--text);
  border-color:var(--v7r4-hairline,var(--border));
}
html[data-theme] .v55-duration [data-v55-reset]{background:transparent;color:var(--primary);border:1px solid var(--v7r4-hairline,var(--border))}
html[data-theme] .v55-duration .v55-duration-controls .input,
html[data-theme] .input,html[data-theme] .select,html[data-theme] .textarea {
  background:var(--input-background);color:var(--text);border-color:var(--v7r4-hairline,var(--border));
}
html[data-theme] .v55-duration :is(button,input):focus-visible,
html[data-theme] .v58-wheel-sheet button:focus-visible,
html[data-theme] .modal-card :is(button,input,select,textarea):focus-visible,
html[data-theme] .b48-month-day:focus-visible,
html[data-theme] .dp15-shell :is(button,a):focus-visible {
  outline:2px solid var(--v7r4-focus,var(--primary));outline-offset:3px;
}
/* Desktop calendar: remove fixed cream/gold backgrounds also in light alternate themes. */
@media(min-width:960px){
 html[data-theme] body{background:var(--bg)}
 html[data-theme] .dp15-shell{background:linear-gradient(130deg,var(--bg),var(--surface-secondary))}
 html[data-theme] .dp15-sidebar{background:var(--surface);border-right-color:var(--v7r4-hairline,var(--border))}
 html[data-theme] .dp15-side-link:hover{background:var(--v7r4-surface-raised,var(--surface-secondary));color:var(--text)}
 html[data-theme] .dp15-side-link.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--text);box-shadow:inset 0 0 0 1px var(--v7r4-hairline,var(--border))}
 html[data-theme] .dp15-shell>.offline-core-status{background:var(--v7r4-surface-lift,var(--surface));border-bottom-color:var(--border)}
 html[data-theme] .dp15-business-chip,
 html[data-theme] .dp15-agenda-main,
 html[data-theme] .dp15-rail-card,
 html[data-theme] .dp15-free-slots{
   background:var(--v7r4-surface-lift,var(--surface));color:var(--text);border-color:var(--v7r4-hairline,var(--border));box-shadow:var(--v7r4-shadow);
 }
 html[data-theme] .dp15-agenda-controls .agenda-period-nav .btn,
 html[data-theme] .dp15-timeline .appt-card,
 html[data-theme] .dp15-agenda-controls .agenda-view-tabs .btn,
 html[data-theme] .dp15-cal-nav{
   background:var(--v7r4-surface-raised,var(--surface-secondary));color:var(--text);border-color:var(--v7r4-hairline,var(--border));
 }
 html[data-theme] .dp15-timeline .time{color:var(--text-secondary)}
}
/* Calendar feedback uses semantic status colors rather than fixed pale blue/orange/green. */
html[data-theme] .b48-month-day.booked,html[data-theme] .b48-legend i.booked{background:color-mix(in srgb,var(--info) 17%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--info) 25%,var(--border))}
html[data-theme] .b48-month-day.off,html[data-theme] .b48-legend i.off{background:color-mix(in srgb,var(--warning) 17%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--warning) 25%,var(--border))}
html[data-theme] .b48-month-day.free,html[data-theme] .b48-legend i.free{background:color-mix(in srgb,var(--success) 17%,var(--surface));color:var(--text);border-color:color-mix(in srgb,var(--success) 25%,var(--border))}
html[data-theme] .b48-month-day.selected{outline:2px solid var(--primary);outline-offset:1px}
/* Preserve pure white background exclusively where QR code scanning requires it. */
html[data-theme] .pix-qr{background:#fff}
@media(max-width:380px){html[data-theme] .v55-duration-controls{gap:6px}}
@media(prefers-reduced-motion:reduce){html[data-theme] .v7r2-team-entry,html[data-theme] .v55-duration{transition:none}}

/* V7 R5: visible challenge harmonizes with each theme without hiding security cues. */
#v7-public-turnstile:not([hidden]){display:flex;justify-content:flex-start;align-items:center;min-height:65px;margin-block:6px 12px;}
#v7-public-turnstile[hidden]{display:none!important;}


/* V7 R5 R2 — contraste da assinatura oficial no acesso.
   Mantém a arte original prata/dourado. A sombra segue o alfa da imagem,
   sem criar placa, borda retangular ou alterar estrutura/funcionalidades. */
html:not([data-mode="dark"]) .auth-entry-card .brand-copy .v5-brand-word{
  filter:contrast(1.16) saturate(1.08)
    drop-shadow(0 0.7px 0.6px rgba(33,26,20,.50))
    drop-shadow(0 1.7px 1.7px rgba(33,26,20,.27));
}
html[data-mode="dark"] .auth-entry-card .brand-copy .v5-brand-word{
  filter:contrast(1.12) saturate(1.06)
    drop-shadow(0 0.8px 0.8px rgba(255,252,246,.42))
    drop-shadow(0 1.8px 1.7px rgba(255,252,246,.22));
}


/* Agendirect V7 R5 — Premium Universal R2
   Visual only. Four themes and dark mode inherit their original tokens.
   Never mutate routes, forms, records, external integrations or status semantics. */
html[data-theme]{
 --agp-lift:color-mix(in srgb,var(--surface) 94%,var(--primary) 6%);
 --agp-edge:color-mix(in srgb,var(--border) 73%,var(--primary) 27%);
 --agp-muted-edge:color-mix(in srgb,var(--border) 85%,var(--primary) 15%);
 --agp-shadow:0 14px 36px color-mix(in srgb,var(--text-primary) 10%,transparent);
 --agp-focus:color-mix(in srgb,var(--primary) 18%,transparent);
}
html[data-mode="dark"]{
 --agp-lift:color-mix(in srgb,var(--surface) 88%,var(--surface-secondary) 12%);
 --agp-edge:color-mix(in srgb,var(--border) 68%,var(--primary) 32%);
 --agp-shadow:0 16px 40px rgba(0,0,0,.22);
 --agp-focus:color-mix(in srgb,var(--primary) 23%,transparent);
}
/* Elegant entry experience; official wordmark is never replaced. */
html[data-theme] .auth-entry-shell{
 background:radial-gradient(ellipse 580px 320px at 88% 0%,color-mix(in srgb,var(--primary2) 13%,transparent),transparent 75%),
 radial-gradient(ellipse 450px 350px at 2% 94%,color-mix(in srgb,var(--primary) 7%,transparent),transparent 80%),
 linear-gradient(150deg,var(--bg),var(--surface));
}
html[data-theme] .auth-entry-card{
 background:linear-gradient(155deg,var(--surface) 0%,var(--agp-lift) 100%);
 border:1px solid var(--agp-edge);border-radius:30px;
 box-shadow:var(--agp-shadow),inset 0 1px 0 color-mix(in srgb,var(--surface) 83%,white 17%);
 padding:clamp(22px,4.2vw,33px);
}
html[data-theme] .auth-entry-card>.brand{gap:13px;align-items:center}
html[data-theme] .auth-entry-card>.brand .brand-mark{
 border-radius:19px;width:50px;height:50px;
 box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 18%,transparent);
}
html[data-theme] .auth-entry-card .brand-copy .v5-brand-word{
 width:min(190px,49vw);max-height:47px;height:auto;
}
html[data-theme] .auth-entry-card .brand-copy small{
 font-size:11.5px;letter-spacing:.015em;color:var(--text-secondary);
}
html[data-theme] .auth-entry-card .auth-entry-copy{margin-top:27px}
html[data-theme] .auth-entry-card .auth-entry-title{
 font-size:clamp(30px,5.5vw,39px);line-height:1.07;
 font-weight:790;letter-spacing:-.044em;margin-bottom:9px;
}
html[data-theme] .auth-entry-card .auth-entry-copy .lead{
 color:var(--text-secondary);line-height:1.5;font-size:15px;
}
html[data-theme] .auth-entry-card .auth-tabs{
 padding:5px;gap:5px;border:1px solid var(--agp-muted-edge);
 border-radius:19px;background:color-mix(in srgb,var(--surface-secondary) 52%,var(--surface));
 box-shadow:inset 0 2px 5px color-mix(in srgb,var(--text-primary) 5%,transparent);
}
html[data-theme] .auth-entry-card .auth-tabs .btn{
 min-height:48px;padding:10px;border-radius:14px;box-shadow:none;
 font-size:14px;letter-spacing:-.015em;
}
html[data-theme] .auth-entry-card .auth-tabs .btn-primary{
 background:linear-gradient(137deg,var(--primary),color-mix(in srgb,var(--primary2) 77%,var(--primary)));
 color:var(--primary-foreground);
 box-shadow:0 6px 16px color-mix(in srgb,var(--primary) 21%,transparent);
}
html[data-theme] .auth-entry-card .auth-tabs .btn-soft{background:transparent;color:var(--text)}
html[data-theme] .auth-entry-card .auth-form{gap:13px}
html[data-theme] .auth-entry-card .field label{
 color:var(--text-secondary);font-size:12.5px;font-weight:750;letter-spacing:.005em;
}
html[data-theme] .auth-entry-card :is(.input,.select,.textarea){
 min-height:54px;border-radius:16px;border:1px solid var(--agp-edge);
 background:var(--input-background);color:var(--text);
 box-shadow:inset 0 1px 3px color-mix(in srgb,var(--text-primary) 5%,transparent);
 transition:border-color .17s ease,box-shadow .17s ease,background .17s ease;
}
html[data-theme] .auth-entry-card :is(.input,.select,.textarea):focus{
 border-color:var(--primary);
 box-shadow:0 0 0 4px var(--agp-focus),inset 0 1px 2px color-mix(in srgb,var(--text-primary) 4%,transparent);
}
html[data-theme] .auth-entry-card .auth-submit{
 min-height:53px;border-radius:16px;font-weight:800;
 box-shadow:0 10px 23px color-mix(in srgb,var(--primary) 20%,transparent);
}
html[data-theme] .auth-entry-card .v6-install-entry{
 margin:20px 0 18px;padding:13px 13px 13px 12px;gap:12px;border-radius:19px;
 border:1px solid var(--agp-edge);
 background:linear-gradient(128deg,color-mix(in srgb,var(--surface-secondary) 55%,var(--surface)),var(--surface) 85%);
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface) 90%,white 10%),0 6px 20px color-mix(in srgb,var(--text-primary) 5%,transparent);
}
html[data-theme] .auth-entry-card .v6-install-entry-icon{width:43px;height:43px;border-radius:14px}
html[data-theme] .auth-entry-card .v6-install-entry strong{font-size:13px;font-weight:800;letter-spacing:-.015em}
html[data-theme] .auth-entry-card .v6-install-entry small{font-size:11.5px;line-height:1.4}
html[data-theme] .auth-entry-card .v6-install-entry button{
 min-height:43px;border-radius:13px;padding:10px 14px;
 background:linear-gradient(135deg,var(--primary),var(--primary2));color:var(--primary-foreground);
 box-shadow:0 5px 13px color-mix(in srgb,var(--primary) 17%,transparent);
}
html[data-theme] .auth-entry-card .auth-tagline{
 font-weight:780;letter-spacing:-.03em;font-size:20px;margin-top:24px;
}
html[data-theme] .auth-entry-card .auth-security-note{font-size:11.5px;margin-top:7px;line-height:1.5}
/* Keep Google activation status underneath its button, without horizontal overflow. */
html[data-theme] .auth-entry-card .google-signin{
 display:flex;flex-direction:column;align-items:stretch;gap:7px;
 width:100%;max-width:100%;height:auto;min-height:44px;
}
html[data-theme] .auth-entry-card .google-signin>.btn{width:100%;min-height:48px;border-radius:14px}
html[data-theme] .auth-entry-card .google-signin>small{
 display:block!important;width:100%;margin:0!important;
 text-align:center;color:var(--text-secondary);font-size:11px;line-height:1.4;
}
/* Premium interior: agenda, clients, services, finance, operations, settings. */
html[data-theme] .app{
 background:radial-gradient(ellipse 720px 420px at 100% 0%,color-mix(in srgb,var(--primary) 6%,transparent),transparent 78%),
 linear-gradient(170deg,var(--bg),color-mix(in srgb,var(--bg) 94%,var(--surface) 6%));
}
html[data-theme] .app .page-title h1{
 font-weight:780;letter-spacing:-.035em;line-height:1.12;font-size:clamp(27px,4.2vw,35px);
}
html[data-theme] .app .page-title p{color:var(--text-secondary);font-size:12.5px;line-height:1.5}
html[data-theme] .app .section-title{font-weight:780;letter-spacing:-.018em;line-height:1.25}
html[data-theme] .app :is(.card,.appt-card,.theme-card,.seg,.dp15-agenda-main,.dp15-rail-card,.dp15-free-slots){
 border-color:var(--agp-muted-edge);
 box-shadow:var(--agp-shadow),inset 0 1px 0 color-mix(in srgb,var(--surface) 83%,white 17%);
}
html[data-theme] .app :is(.card,.appt-card,.theme-card,.seg){border-radius:20px}
html[data-theme] .app .appt-card{
 border-left:4px solid var(--primary);padding:15px 16px;
 background:linear-gradient(125deg,var(--surface),var(--agp-lift));
}
html[data-theme] .app .appt-card h3{font-weight:790;letter-spacing:-.018em;font-size:14px}
html[data-theme] .app .appt-card p{line-height:1.5}
html[data-theme] .app .kpi{
 background:linear-gradient(145deg,var(--surface),var(--agp-lift));padding:17px;
}
html[data-theme] .app .kpi span{font-size:11.5px;font-weight:750;color:var(--text-secondary)}
html[data-theme] .app .kpi strong{
 font-size:clamp(23px,3vw,30px);font-weight:800;letter-spacing:-.04em;line-height:1.14;
}
html[data-theme] .app .list-item{border-color:var(--agp-muted-edge);transition:background .15s ease}
html[data-theme] .app .list-item .grow strong{font-weight:750;letter-spacing:-.015em}
html[data-theme] .app .list-item .grow small{color:var(--text-secondary)}
html[data-theme] .app .avatar{
 background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 15%,var(--surface)),var(--surface-secondary));
 border:1px solid var(--agp-muted-edge);
}
html[data-theme] .app .weekday-strip .day{
 border-color:var(--agp-muted-edge);border-radius:14px;
 background:var(--surface);min-height:55px;
 box-shadow:0 3px 10px color-mix(in srgb,var(--text-primary) 5%,transparent);
}
html[data-theme] .app .weekday-strip .day.active{
 background:linear-gradient(135deg,var(--dark),color-mix(in srgb,var(--dark) 80%,var(--primary) 20%));
 color:var(--nav-foreground);border-color:var(--dark);
 box-shadow:0 9px 20px color-mix(in srgb,var(--dark) 19%,transparent);
}
html[data-theme] .app .weekday-strip .day.active b{color:var(--nav-foreground)}
html[data-theme] .app .time{color:var(--text-secondary);font-weight:750}
html[data-theme] .app :is(.agenda-view-tabs,.agenda-period-nav) .btn{
 border-radius:13px;min-height:44px;
}
html[data-theme] .app :is(.btn-primary,.fab){
 background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary2) 82%,var(--primary)));
 color:var(--primary-foreground);
 box-shadow:0 9px 22px color-mix(in srgb,var(--primary) 20%,transparent);
}
html[data-theme] .app :is(.input,.select,.textarea){
 border-radius:15px;border-color:var(--agp-edge);
 box-shadow:inset 0 1px 2px color-mix(in srgb,var(--text-primary) 4%,transparent);
 transition:border-color .17s ease,box-shadow .17s ease;
}
html[data-theme] .app :is(.input,.select,.textarea):focus{
 border-color:var(--primary);box-shadow:0 0 0 4px var(--agp-focus);
}
html[data-theme] .app .field label{color:var(--text-secondary);font-weight:750;font-size:12.5px}
html[data-theme] .app .topbar .brand-copy .v5-brand-word{
 filter:contrast(1.13) saturate(1.06) drop-shadow(0 1px 1px rgba(255,255,255,.25))
 drop-shadow(0 2px 2px rgba(0,0,0,.4));
}
html[data-theme] .app .topbar-inner{border-radius:17px}
html[data-theme] .app .icon-btn{
 border-color:var(--agp-muted-edge);border-radius:14px;
 box-shadow:0 3px 10px color-mix(in srgb,var(--text-primary) 5%,transparent);
}
html[data-theme] .app .bottom-nav{
 border:1px solid var(--agp-edge);
 box-shadow:0 14px 36px color-mix(in srgb,var(--text-primary) 13%,transparent);
}
html[data-theme] .app .bottom-nav .nav-item{transition:background .15s ease,color .15s ease}
html[data-theme] .app .bottom-nav .nav-item.active{
 background:color-mix(in srgb,var(--primary) 13%,var(--surface));
 color:var(--primary);font-weight:850;
}
html[data-theme] .app .modal-card{
 background:linear-gradient(155deg,var(--surface),var(--agp-lift));
 border-color:var(--agp-edge);
 box-shadow:0 24px 68px color-mix(in srgb,var(--text-primary) 20%,transparent);
}
html[data-theme] .app .modal-card h2{font-weight:790;letter-spacing:-.035em}
html[data-theme] .app :is(.theme-card.selected,.seg.selected){
 border-color:var(--primary);
 box-shadow:0 0 0 3px var(--agp-focus),0 9px 22px color-mix(in srgb,var(--primary) 9%,transparent);
}
html[data-theme] .app .empty{line-height:1.55;color:var(--text-secondary)}
html[data-theme] .app .note{line-height:1.5;color:var(--text-secondary)}
html[data-theme] .app .banner{
 border:1px solid color-mix(in srgb,var(--primary2) 32%,transparent);border-radius:20px;
}
@media(hover:hover){
 html[data-theme] .app .list-item:hover{background:var(--agp-lift)}
 html[data-theme] .app :is(.btn-primary,.icon-btn):not(:disabled):hover{transform:translateY(-1px)}
}
html[data-theme] :is(.auth-entry-card,.app) :is(button,a,input,select,textarea):focus-visible{
 outline:2px solid var(--primary);outline-offset:3px;
}
@media(max-width:520px){
 html[data-theme] .auth-entry-card{padding:20px 18px;border-radius:27px}
 html[data-theme] .auth-entry-card .auth-entry-copy{margin-top:22px}
 html[data-theme] .auth-entry-card .auth-entry-title{font-size:clamp(30px,7vw,35px)}
 html[data-theme] .auth-entry-card .v6-install-entry{padding:11px;gap:9px}
 html[data-theme] .auth-entry-card .v6-install-entry-icon{width:38px;height:38px}
 html[data-theme] .auth-entry-card .v6-install-entry button{padding:9px 11px}
 html[data-theme] .app .page{padding-inline:15px}
 html[data-theme] .app .page-title h1{font-size:28px}
 html[data-theme] .app .kpi{padding:14px}
}
@media(prefers-reduced-motion:reduce){
 html[data-theme] .app :is(.list-item,.bottom-nav .nav-item,.input,.select,.textarea),
 html[data-theme] .auth-entry-card :is(.input,.select,.textarea){transition:none}
}


/* Staging-only, read-only app tour entry: visual affordance only, no auth bypass. */
.auth-entry-card .staging-demo-entry{
 display:flex;align-items:center;gap:12px;min-height:66px;
 margin:0 0 18px;padding:12px 14px;border-radius:18px;
 border:1px solid rgba(229,188,112,.52);
 background:linear-gradient(118deg,#211b16,#3f3021 64%,#6e502a);
 box-shadow:0 12px 27px rgba(43,32,19,.18),inset 0 1px 0 rgba(255,255,255,.13);
 text-decoration:none;color:#fff4e4;transition:transform .17s ease,box-shadow .17s ease;
}
.auth-entry-card .staging-demo-entry .staging-demo-glyph{
 width:39px;height:39px;flex:none;display:grid;place-items:center;
 border-radius:13px;border:1px solid rgba(248,211,145,.35);
 background:rgba(255,255,255,.08);color:#f5d28e;font-size:22px;
}
.auth-entry-card .staging-demo-entry>span:nth-child(2){display:block;flex:1;min-width:0}
.auth-entry-card .staging-demo-entry strong{
 display:block;color:#fff9ef;font-size:13px;line-height:1.24;font-weight:820;
}
.auth-entry-card .staging-demo-entry small{
 display:block;color:#e0ceaf;font-size:11px;line-height:1.43;margin-top:4px;
}
.auth-entry-card .staging-demo-entry .staging-demo-arrow{
 font-size:25px;color:#f5d28e;font-weight:600;
}
.auth-entry-card .staging-demo-entry:focus-visible{
 outline:3px solid var(--primary);outline-offset:4px;
}
@media(hover:hover){
 .auth-entry-card .staging-demo-entry:hover{
  transform:translateY(-1px);box-shadow:0 15px 31px rgba(43,32,19,.22);
 }
}
@media(max-width:400px){
 .auth-entry-card .staging-demo-entry{padding:11px;gap:10px}
 .auth-entry-card .staging-demo-entry small{font-size:10px}
}


/* AGENDIRECT APPROVED PREMIUM R3 — visual-only design system.
   Authorized on isolated staging repository. Real app structure and behavioral
   routing preserved. Each existing theme supplies its own palette tokens. */
html[data-theme]{
 --apr-chrome:var(--dark);
 --apr-chrome-text:var(--nav-foreground);
 --apr-edge:color-mix(in srgb,var(--primary2) 58%,transparent);
 --apr-ink:var(--text-primary);
 --apr-raised:linear-gradient(135deg,color-mix(in srgb,var(--primary2) 84%,var(--surface) 16%),var(--primary2));
 --apr-raised-text:#20170d;
 --apr-card-shadow:0 18px 42px color-mix(in srgb,var(--text-primary) 10%,transparent);
}
html[data-mode="dark"]{
 --apr-raised:linear-gradient(135deg,var(--primary2),var(--primary));
 --apr-raised-text:var(--primary-foreground);
 --apr-card-shadow:0 18px 42px rgba(0,0,0,.28);
}
/* Official application header. Brand image and menu behavior are unchanged. */
html[data-theme] .app:not(.demo-app) .topbar{
 background:var(--apr-chrome);
 border-bottom:1px solid var(--apr-edge);
 box-shadow:0 8px 24px color-mix(in srgb,var(--apr-chrome) 38%,transparent);
 backdrop-filter:none;
}
html[data-theme] .app:not(.demo-app) .topbar-inner{
 background:linear-gradient(120deg,color-mix(in srgb,var(--apr-chrome) 90%,var(--primary) 10%),var(--apr-chrome));
 border:1px solid var(--apr-edge);
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--primary2) 15%,transparent);
 border-radius:20px;
}
html[data-theme] .app:not(.demo-app) .topbar .brand-copy small{
 color:var(--apr-chrome-text);
 opacity:.88;
}
html[data-theme] .app:not(.demo-app) .topbar .icon-btn{
 background:color-mix(in srgb,var(--apr-chrome) 87%,var(--surface) 13%);
 border:1px solid var(--apr-edge);
 color:var(--apr-chrome-text);
 box-shadow:inset 0 1px 0 color-mix(in srgb,var(--primary2) 9%,transparent);
}
/* Real Meu Dia / Agenda, as approved: dark brown or theme's native dark tone,
   premium warm raised active tab. Never use generic browser buttons. */
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
 gap:5px;padding:5px;min-height:58px;
 border-radius:20px;border:1px solid var(--apr-edge);
 background:linear-gradient(115deg,var(--apr-chrome),color-mix(in srgb,var(--apr-chrome) 80%,var(--primary) 20%));
 box-shadow:0 12px 24px color-mix(in srgb,var(--apr-chrome) 16%,transparent),inset 0 1px 0 color-mix(in srgb,var(--primary2) 15%,transparent);
 margin:14px 0 21px;
}
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs button{
 min-height:48px;background:transparent;border:0;border-radius:15px;
 color:var(--apr-chrome-text);font-weight:840;
 font-family:inherit;font-size:15px;line-height:1.2;
 cursor:pointer;letter-spacing:-.015em;
}
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs button.active{
 background:var(--apr-raised);color:var(--apr-raised-text);
 border:1px solid color-mix(in srgb,var(--primary2) 77%,var(--primary) 23%);
 box-shadow:0 4px 13px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.27);
}
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs button:focus-visible{
 outline:2px solid var(--primary2);outline-offset:3px;
}
/* Premium surfaces mirror the approved real Meu Dia.
   In dark mode surfaces automatically invert using existing theme tokens. */
html[data-theme] .app:not(.demo-app) .myday-hero{
 border-radius:28px;border:1px solid color-mix(in srgb,var(--primary2) 32%,var(--border));
 background:linear-gradient(154deg,var(--surface),color-mix(in srgb,var(--surface) 92%,var(--primary2) 8%));
 box-shadow:var(--apr-card-shadow),inset 0 1px 0 color-mix(in srgb,var(--surface) 80%,white 20%);
 position:relative;overflow:hidden;
}
html[data-theme] .app:not(.demo-app) .myday-hero h2{
 font-weight:820;letter-spacing:-.038em;line-height:1.14;
}
html[data-theme] .app:not(.demo-app) .myday-hero .myday-eyebrow{
 font-weight:780;letter-spacing:.16em;
 color:var(--text-secondary);
}
html[data-theme] .app:not(.demo-app) .myday-hero-actions .btn{
 border-radius:17px;min-height:52px;font-weight:830;
}
html[data-theme] .app:not(.demo-app) .myday-hero-actions .btn-primary{
 background:var(--apr-raised);color:var(--apr-raised-text);
 border:1px solid color-mix(in srgb,var(--primary2) 69%,var(--border) 31%);
 box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 22%,transparent);
}
html[data-theme] .app:not(.demo-app) .myday-hero-actions .btn-soft{
 background:var(--surface-secondary);color:var(--text-primary);
 border:1px solid color-mix(in srgb,var(--primary2) 36%,var(--border));
}
html[data-theme] .app:not(.demo-app) .dp21-attention-card{
 border-radius:18px;border-color:color-mix(in srgb,var(--primary2) 26%,var(--border));
 box-shadow:0 8px 23px color-mix(in srgb,var(--text-primary) 6%,transparent);
}
/* Real bottom navigation keeps Agenda, Clientes, Novo, Financeiro, Mais. */
html[data-theme] .app:not(.demo-app) .bottom-nav{
 background:var(--apr-chrome);border:1px solid var(--apr-edge);
 border-radius:26px;box-shadow:0 13px 32px color-mix(in srgb,var(--apr-chrome) 27%,transparent);
 backdrop-filter:none;
}
html[data-theme] .app:not(.demo-app) .bottom-nav .nav-item{
 color:var(--apr-chrome-text);font-weight:770;
}
html[data-theme] .app:not(.demo-app) .bottom-nav .nav-item.active{
 background:color-mix(in srgb,var(--primary2) 22%,var(--apr-chrome));
 color:var(--primary2);
}
html[data-theme] .app:not(.demo-app) .bottom-nav .nav-item.center i{
 background:var(--apr-raised);color:var(--apr-raised-text);
 border:2px solid var(--primary2);
 box-shadow:0 8px 19px color-mix(in srgb,var(--primary2) 18%,transparent);
}
/* Preserve reduced-motion and keyboard accessibility. */
@media(max-width:520px){
 html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs{margin:13px 0 17px}
 html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs button{font-size:14px}
 html[data-theme] .app:not(.demo-app) .myday-hero{border-radius:23px;padding:22px}
}

/* R4 GRADIENT MATCH — user-approved mockup, isolated homologation only.
   Visual styles only. Reuses existing Signature/Ink/Pulse/Nature colors.
   Dark mode uses darker inverse surfaces, preserving each theme's accent.
   No forms, routing, auth, finance or data behavior changes. */
html[data-theme="signature"]{
 --r4-header:linear-gradient(120deg,#1d130d 0%,#2b1b11 35%,#4a2b18 72%,#6d441f 100%);
 --r4-track:linear-gradient(135deg,#23160e 0%,#342014 55%,#4a2c18 100%);
 --r4-tab:linear-gradient(135deg,#8f651f 0%,#b8842c 52%,#d7ae57 100%);
 --r4-button:linear-gradient(135deg,#9c7125 0%,#bf9037 48%,#d8b05a 100%);
}
html[data-theme="signature"][data-mode="dark"]{
 --r4-header:linear-gradient(120deg,#0f0a07 0%,#20150e 42%,#352113 76%,#4d3019 100%);
 --r4-track:linear-gradient(135deg,#110c08 0%,#23170f 55%,#3a2415 100%);
 --r4-tab:linear-gradient(135deg,#956c2e 0%,#bc8d3b 54%,#e3b966 100%);
 --r4-button:linear-gradient(135deg,#a57931 0%,#ca9d4d 48%,#e5c474 100%);
}
html[data-theme="ink"]{
 --r4-header:linear-gradient(120deg,#1b1716 0%,#312421 36%,#5c3328 72%,#8e5035 100%);
 --r4-track:linear-gradient(135deg,#241b19,#422821 55%,#63392b);
 --r4-tab:linear-gradient(135deg,#85452f,#b46e4d 52%,#d59471);
 --r4-button:linear-gradient(135deg,#8e4d33,#be7553 52%,#dda080);
}
html[data-theme="ink"][data-mode="dark"]{
 --r4-header:linear-gradient(120deg,#0e0d0d,#211917 42%,#41271f 78%,#63392a);
 --r4-track:linear-gradient(135deg,#110e0e,#291b18 55%,#493025);
 --r4-tab:linear-gradient(135deg,#99563a,#c47e5b 52%,#e2a182);
 --r4-button:linear-gradient(135deg,#a35d3f,#ce8967 52%,#e4b18c);
}
html[data-theme="pulse"]{
 --r4-header:linear-gradient(120deg,#111b2b 0%,#1a3055 38%,#244b83 75%,#3568b0 100%);
 --r4-track:linear-gradient(135deg,#13243a 0%,#1d3556 58%,#2c528b 100%);
 --r4-tab:linear-gradient(135deg,#75aeef 0%,#98c8fb 54%,#d0e5ff 100%);
 --r4-button:linear-gradient(135deg,#7dafed 0%,#a2cff9 52%,#d0e8ff 100%);
}
html[data-theme="pulse"][data-mode="dark"]{
 --r4-header:linear-gradient(120deg,#0b1320 0%,#162742 42%,#214578 78%,#2e5b99 100%);
 --r4-track:linear-gradient(135deg,#101927 0%,#192c49 55%,#294875 100%);
 --r4-tab:linear-gradient(135deg,#76adef 0%,#a3d0ff 52%,#d4eaff 100%);
 --r4-button:linear-gradient(135deg,#83b3f1 0%,#b0d5fc 52%,#e0f0ff 100%);
}
html[data-theme="nature"]{
 --r4-header:linear-gradient(120deg,#14221a,#21392c 36%,#31563c 75%,#6c7850);
 --r4-track:linear-gradient(135deg,#19291e,#2b4933 57%,#4f6744);
 --r4-tab:linear-gradient(135deg,#386546,#67956c 52%,#a9bd80);
 --r4-button:linear-gradient(135deg,#376545,#79a079 52%,#b3c78e);
}
html[data-theme="nature"][data-mode="dark"]{
 --r4-header:linear-gradient(120deg,#0b160e,#18291d 42%,#294832 79%,#4e6845);
 --r4-track:linear-gradient(135deg,#101b13,#233b2a 55%,#37533a);
 --r4-tab:linear-gradient(135deg,#5a8a63,#86b18b 52%,#c0d79f);
 --r4-button:linear-gradient(135deg,#578761,#90ba92 52%,#c8dfac);
}
/* Chrome: visible dark-to-rich accent gradient instead of a flat surface. */
html[data-theme] .app:not(.demo-app) .topbar{
 background:var(--r4-header);
}
html[data-theme] .app:not(.demo-app) .topbar-inner{
 background:var(--r4-header);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 9px 24px rgba(19,14,9,.18);
}
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs{
 background:var(--r4-track);
 border:1px solid color-mix(in srgb,var(--primary2) 35%,transparent);
 box-shadow:0 10px 24px rgba(31,20,13,.19),inset 0 1px 0 rgba(255,255,255,.10);
}
html[data-theme] .app:not(.demo-app) .dp21-agenda-tabs button.active{
 background:var(--r4-tab);
 color:#20170e;
 border:1px solid color-mix(in srgb,var(--primary2) 70%,transparent);
 box-shadow:0 7px 17px rgba(15,11,8,.27),inset 0 1px 0 rgba(255,255,255,.36);
 text-shadow:0 1px 0 rgba(255,255,255,.15);
}
html[data-theme] .app:not(.demo-app) .myday-hero-actions .btn-primary,
html[data-theme] .app:not(.demo-app) .btn-primary-premium{
 background:var(--r4-button);
 color:#20170e;
 border:1px solid color-mix(in srgb,var(--primary2) 77%,transparent);
 box-shadow:0 11px 24px color-mix(in srgb,var(--primary) 23%,transparent),inset 0 1px 0 rgba(255,255,255,.29);
}
/* Keeps approved card background light/cream in light mode; invert in dark. */
html[data-mode="dark"] .app:not(.demo-app) .myday-hero{
 background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 87%,var(--primary2) 13%));
}
html[data-theme] .app:not(.demo-app) .bottom-nav{
 background:var(--r4-track);
}
html[data-theme] .app:not(.demo-app) .bottom-nav .nav-item.center i{
 background:var(--r4-button);color:#20170e;
}


/* AGENDIRECT V7 R5 — FIVE PALETTES: ONYX + AMETHYST
   Staging-only visual layer. Signature, Ink and Pulse unchanged.
   Legacy 'nature' accounts render as Ametista via applyTheme; no account writes. */
html[data-theme="onyx"]{
 --v52-header-start:#091624;--v52-header-mid:#174363;--v52-header-end:#0c2134;
 --r4-header:linear-gradient(120deg,#091522 0%,#12283d 35%,#204a68 72%,#286b92 100%);
 --r4-track:linear-gradient(130deg,#0b1928 0%,#173047 57%,#234861 100%);
 --r4-tab:linear-gradient(135deg,#54add9 0%,#86d5f3 50%,#c9efff 100%);
 --r4-button:linear-gradient(135deg,#62bbe4 0%,#91d9f6 50%,#d0efff 100%);
}
html[data-theme="onyx"][data-mode="dark"]{
 --v52-header-start:#07111d;--v52-header-mid:#153750;--v52-header-end:#0a1929;
 --r4-header:linear-gradient(120deg,#07111d 0%,#0d2237 37%,#173f5e 76%,#206183 100%);
 --r4-track:linear-gradient(130deg,#08121e 0%,#11283e 58%,#1a3d56 100%);
 --r4-tab:linear-gradient(135deg,#60b7e4 0%,#a0e1fb 53%,#def5ff 100%);
 --r4-button:linear-gradient(135deg,#71c3e9 0%,#ade6fd 53%,#e4f7ff 100%);
}
html[data-theme="amethyst"]{
 --v52-header-start:#230c36;--v52-header-mid:#592078;--v52-header-end:#321046;
 --r4-header:linear-gradient(120deg,#240b34 0%,#3d1554 35%,#672582 73%,#9146ac 100%);
 --r4-track:linear-gradient(130deg,#2a0c3b 0%,#4d1a65 57%,#6d298b 100%);
 --r4-tab:linear-gradient(135deg,#a954cb 0%,#cb85e6 50%,#edc4f7 100%);
 --r4-button:linear-gradient(135deg,#9a3db7 0%,#bf74d8 52%,#e3b7ee 100%);
}
html[data-theme="amethyst"][data-mode="dark"]{
 --v52-header-start:#13091e;--v52-header-mid:#41175d;--v52-header-end:#1f0b2d;
 --r4-header:linear-gradient(120deg,#100819 0%,#261039 36%,#48205f 73%,#713692 100%);
 --r4-track:linear-gradient(130deg,#16091f 0%,#301243 58%,#55216e 100%);
 --r4-tab:linear-gradient(135deg,#ac65d1 0%,#d796ed 50%,#f3d5fb 100%);
 --r4-button:linear-gradient(135deg,#b46fd8 0%,#dda7f0 53%,#f1d4fa 100%);
}
/* Dark labels stay legible on pastel metallic active tabs. */
html[data-theme="onyx"] .app:not(.demo-app) .dp21-agenda-tabs button.active,
html[data-theme="amethyst"] .app:not(.demo-app) .dp21-agenda-tabs button.active,
html[data-theme="onyx"] .app:not(.demo-app) .myday-hero-actions .btn-primary,
html[data-theme="amethyst"] .app:not(.demo-app) .myday-hero-actions .btn-primary,
html[data-theme="onyx"] .app:not(.demo-app) .bottom-nav .nav-item.center i,
html[data-theme="amethyst"] .app:not(.demo-app) .bottom-nav .nav-item.center i{
 color:#170e21;
}
html[data-theme] .app .v5-theme-options{
 grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
html[data-theme] .app .v5-theme-option{min-height:46px}

/* V7 R5 APPROVED REAL AGENDA R1 — isolated homologation.
   Matches the approved demo's presentation with real tenant appointment data,
   without changing Meu Dia, database, Asaas, or agenda events. */
html[data-theme] .app:not(.demo-app) .v7r5-agenda-title{
 align-items:center;gap:12px;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-overline{
 display:block;margin:0 0 7px;font-size:.68rem;line-height:1.3;
 font-weight:850;letter-spacing:.16em;color:var(--primary);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-title h1{
 font-weight:860;letter-spacing:-.045em;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-head-actions{
 display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-new{
 max-width:176px;min-height:49px;padding:10px 15px;border-radius:16px;
 font-size:.84rem;font-weight:850;background:var(--r4-button);
 color:#20170e;border:1px solid color-mix(in srgb,var(--primary2) 64%,transparent);
 box-shadow:0 9px 18px color-mix(in srgb,var(--primary) 19%,transparent);
 white-space:normal;line-height:1.2;
}
html[data-theme] .app:not(.demo-app) .v7r5-approved-agenda{
 display:block;margin:8px 0 15px;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero{
 display:flex;align-items:center;justify-content:space-between;gap:14px;
 min-width:0;padding:25px;border-radius:25px;
 background:var(--r4-header);
 color:#fff7ed;border:1px solid color-mix(in srgb,var(--primary2) 35%,transparent);
 box-shadow:0 15px 34px color-mix(in srgb,var(--primary) 13%,transparent);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kicker{
 display:block;font-size:.68rem;font-weight:870;letter-spacing:.17em;
 color:color-mix(in srgb,var(--primary2) 78%,white);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero h2{
 margin:11px 0 7px;color:#fffaf3;
 font-size:clamp(1.4rem,4vw,2rem);letter-spacing:-.043em;
 line-height:1.14;font-weight:850;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero p{
 max-width:400px;margin:0;color:#ede6df;opacity:.95;
 font-size:.87rem;line-height:1.5;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-gem{
 display:grid;place-items:center;flex-shrink:0;
 width:69px;height:69px;border-radius:21px;
 border:1px solid color-mix(in srgb,var(--primary2) 52%,transparent);
 background:color-mix(in srgb,var(--primary2) 16%,transparent);
 color:color-mix(in srgb,var(--primary2) 78%,white);font-size:2.3rem;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpis{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:12px;margin:18px 0 23px;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi{
 display:flex;flex-direction:column;justify-content:center;gap:8px;
 min-width:0;min-height:131px;padding:17px 15px;border-radius:20px;
 border:1px solid color-mix(in srgb,var(--primary2) 32%,var(--border));
 background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 90%,var(--primary2) 10%));
 box-shadow:0 8px 25px color-mix(in srgb,var(--text-primary) 8%,transparent);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi span{
 font-size:.7rem;line-height:1.4;font-weight:800;letter-spacing:.018em;
 color:var(--text-secondary);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi strong{
 font-size:clamp(1.5rem,3vw,2.1rem);line-height:1.1;
 font-weight:880;letter-spacing:-.045em;color:var(--text-primary);
 overflow-wrap:anywhere;font-variant-numeric:tabular-nums;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi small{
 font-size:.7rem;line-height:1.38;color:var(--text-secondary);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-section-heading{
 display:flex;align-items:flex-end;justify-content:space-between;gap:10px;
 margin:11px 0 15px;
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-section-heading span{
 font-size:.69rem;letter-spacing:.14em;font-weight:880;color:var(--primary);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-section-heading h2{
 margin:6px 0 0;font-size:1.35rem;letter-spacing:-.035em;
 font-weight:840;color:var(--text-primary);
}
html[data-theme] .app:not(.demo-app) .v7r5-agenda-section-heading small{
 max-width:43%;text-align:right;font-size:.73rem;line-height:1.3;
 color:var(--text-secondary);
}
@media(max-width:560px){
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-title{align-items:flex-start;flex-wrap:wrap}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-head-actions{gap:6px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-new{font-size:.78rem;min-height:43px;max-width:145px;padding:9px 11px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero{padding:20px 17px;border-radius:22px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-gem{width:49px;height:49px;border-radius:14px;font-size:1.85rem}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero h2{font-size:1.5rem}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-hero p{font-size:.78rem}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpis{gap:8px;margin:14px 0 18px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi{padding:13px 9px;min-height:118px;border-radius:16px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi span{font-size:.58rem;letter-spacing:0}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi strong{font-size:1.45rem}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi small{font-size:.62rem}
}
@media(max-width:365px){
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi{padding:12px 7px}
 html[data-theme] .app:not(.demo-app) .v7r5-agenda-kpi strong{font-size:1.25rem}
}
@media(prefers-reduced-motion:reduce){
 html[data-theme] .app:not(.demo-app) .v7r5-approved-agenda *{transition:none}
}
/* ===== /V7 R5 APPROVED REAL AGENDA R1 ===== */
