:root {
  --sidebar: #0b3158;
  --sidebar-deep: #072640;
  --accent: #1473e6;
  --accent-rgb: 20, 115, 230;
  --positive: #18864b;
  --warning: #d97706;
  --negative: #c83d4b;
  --ink: #172433;
  --muted: #667482;
  --line: #dce3e8;
  --surface: #ffffff;
  --canvas: #f3f6f8;
  --notice-height: 38px;
  --sidebar-width: 252px;
  --shadow: 0 10px 28px rgba(15, 39, 61, .08);
}

body[data-demo="petshop"] { --sidebar: #083e70; --sidebar-deep: #062e55; --accent: #1778ec; --accent-rgb: 23, 120, 236; }
body[data-demo="parking"] { --sidebar: #102f50; --sidebar-deep: #0a243e; --accent: #1776d2; --accent-rgb: 23, 118, 210; }
body[data-demo="mei"] { --sidebar: #0d5638; --sidebar-deep: #093d29; --accent: #188557; --accent-rgb: 24, 133, 87; }
body[data-demo="enterprise"] { --sidebar: #082b53; --sidebar-deep: #061f3c; --accent: #087e8b; --accent-rgb: 8, 126, 139; }
body[data-demo="finance"] { --sidebar: #15243c; --sidebar-deep: #0c1728; --accent: #5369dc; --accent-rgb: 83, 105, 220; --canvas: #f3f5f8; }

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--canvas); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button, select { cursor: pointer; }
a { color: inherit; text-decoration: none; }
.skip-link { position: fixed; top: 5px; left: 10px; z-index: 999; transform: translateY(-150%); padding: 7px 12px; border-radius: 7px; background: #fff; color: #10263b; font-size: .82rem; font-weight: 800; box-shadow: var(--shadow); }
.skip-link:focus { transform: none; }
button:focus-visible, a:focus-visible, select:focus-visible, input:focus-visible { outline: 3px solid rgba(var(--accent-rgb), .32); outline-offset: 2px; }

.demo-notice { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; height: var(--notice-height); align-items: center; justify-content: center; gap: 28px; padding: 0 18px; background: #f0d993; color: #18293a; font-size: .76rem; }
.demo-notice strong { font-weight: 900; }
.demo-notice a { border-bottom: 1px solid currentColor; font-weight: 800; }
.demo-notice a:hover { border-color: transparent; }

.demo-shell { min-height: 100dvh; padding-top: var(--notice-height); }
.demo-sidebar { position: fixed; top: var(--notice-height); bottom: 0; left: 0; z-index: 80; display: flex; width: var(--sidebar-width); flex-direction: column; overflow-y: auto; background: linear-gradient(180deg, var(--sidebar), var(--sidebar-deep)); color: #fff; }
.demo-brand { display: flex; min-height: 92px; align-items: center; gap: 12px; padding: 18px 20px; border-bottom: 1px solid rgba(255,255,255,.1); }
.demo-brand-mark { display: grid; width: 45px; height: 45px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 11px; background: rgba(255,255,255,.11); color: #fff; font-size: .84rem; font-weight: 950; letter-spacing: -.02em; }
.demo-brand > span:last-child { min-width: 0; }
.demo-brand strong, .demo-brand small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.demo-brand strong { font-size: .96rem; line-height: 1.25; }
.demo-brand small { margin-top: 3px; color: rgba(255,255,255,.67); font-size: .7rem; }
.demo-nav { display: grid; gap: 5px; padding: 18px 12px; }
.demo-nav button { display: grid; width: 100%; min-height: 45px; grid-template-columns: 31px minmax(0, 1fr); gap: 10px; align-items: center; padding: 8px 12px; border: 1px solid transparent; border-radius: 9px; background: transparent; color: rgba(255,255,255,.77); text-align: left; font-size: .84rem; font-weight: 680; }
.demo-nav button:hover { background: rgba(255,255,255,.07); color: #fff; }
.demo-nav button.is-active { border-color: rgba(255,255,255,.11); background: var(--accent); color: #fff; box-shadow: 0 8px 18px rgba(0,0,0,.13); }
.nav-symbol { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 8px; background: rgba(255,255,255,.08); font-size: .7rem; font-weight: 900; letter-spacing: .01em; }
.demo-nav button.is-active .nav-symbol { background: rgba(255,255,255,.16); }
.demo-sidebar-footer { display: grid; gap: 2px; margin-top: auto; padding: 18px 20px 22px; border-top: 1px solid rgba(255,255,255,.09); }
.demo-sidebar-footer span { color: rgba(255,255,255,.55); font-size: .68rem; }
.demo-sidebar-footer strong { font-size: .78rem; }

.sidebar-overlay { display: none; }
.demo-main { min-height: calc(100dvh - var(--notice-height)); margin-left: var(--sidebar-width); }
.demo-topbar { position: sticky; top: var(--notice-height); z-index: 50; display: flex; min-height: 92px; align-items: center; gap: 18px; padding: 16px 28px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.94); backdrop-filter: blur(10px); }
.menu-button { display: none; width: 42px; height: 42px; flex: 0 0 auto; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--ink); font-size: 1.15rem; }
.page-heading { min-width: 0; }
.page-heading p { margin: 0 0 2px; color: var(--accent); font-size: .69rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.page-heading h1 { margin: 0; overflow: hidden; color: var(--ink); font-size: clamp(1.35rem, 2.5vw, 1.85rem); line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.profile-chip { display: flex; align-items: center; gap: 9px; margin-left: auto; }
.profile-chip > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: rgba(var(--accent-rgb), .12); color: var(--accent); font-size: .72rem; font-weight: 900; }
.profile-chip strong, .profile-chip small { display: block; }
.profile-chip strong { font-size: .75rem; }
.profile-chip small { color: var(--muted); font-size: .66rem; }

.demo-workspace { width: min(100%, 1500px); margin-inline: auto; padding: 22px 26px 38px; }
.workspace-toolbar { display: grid; grid-template-columns: repeat(2, minmax(150px, 190px)) minmax(220px, 1fr) auto; gap: 10px; align-items: end; margin-bottom: 18px; }
.workspace-toolbar label { display: grid; gap: 5px; min-width: 0; }
.workspace-toolbar label[hidden] { display: none; }
.workspace-toolbar label > span { color: var(--muted); font-size: .69rem; font-weight: 780; letter-spacing: .035em; }
.workspace-toolbar select, .workspace-toolbar input { width: 100%; height: 43px; border: 1px solid #d4dde3; border-radius: 9px; background: #fff; color: var(--ink); font-size: .8rem; }
.workspace-toolbar select { padding: 0 34px 0 11px; }
.workspace-toolbar input { padding: 0 12px; }
.workspace-toolbar input::placeholder { color: #9ba6af; }
.toolbar-action { height: 43px; padding: 0 15px; border: 1px solid rgba(var(--accent-rgb), .24); border-radius: 9px; background: rgba(var(--accent-rgb), .08); color: var(--accent); font-size: .78rem; font-weight: 820; }
.toolbar-action:hover { background: var(--accent); color: #fff; }

.module-intro { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 3px 0 16px; }
.module-intro h2 { margin: 0 0 4px; color: var(--ink); font-size: clamp(1.18rem, 2.3vw, 1.55rem); }
.module-intro p { margin: 0; color: var(--muted); font-size: .82rem; }
.module-state { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; color: var(--positive); font-size: .72rem; font-weight: 780; }
.module-state::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px rgba(24,134,75,.1); }

.kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.kpi-card { min-width: 0; padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); box-shadow: 0 3px 12px rgba(17,45,68,.035); }
.kpi-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.kpi-label { overflow: hidden; color: var(--muted); font-size: .72rem; font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.kpi-icon { display: grid; width: 31px; height: 31px; flex: 0 0 auto; place-items: center; border-radius: 9px; background: rgba(var(--accent-rgb), .1); color: var(--accent); font-size: .65rem; font-weight: 900; }
.kpi-value { display: block; margin-top: 12px; color: var(--ink); font-size: clamp(1.32rem, 2.5vw, 1.8rem); font-weight: 830; line-height: 1.05; letter-spacing: -.035em; white-space: nowrap; }
.kpi-change { display: block; margin-top: 7px; color: var(--positive); font-size: .67rem; font-weight: 750; }
.kpi-change.is-warning { color: var(--warning); }
.kpi-change.is-negative { color: var(--negative); }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(270px, .55fr); gap: 14px; margin-bottom: 14px; }
.panel { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); box-shadow: 0 3px 12px rgba(17,45,68,.035); }
.panel-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 17px 5px; }
.panel-header h3 { margin: 0; color: var(--ink); font-size: .88rem; }
.panel-header span { color: var(--muted); font-size: .67rem; }
.chart-wrap { min-height: 235px; padding: 8px 14px 13px; }
.line-chart { display: block; width: 100%; height: 235px; overflow: visible; }
.chart-grid-line { stroke: #e7ecef; stroke-width: 1; }
.chart-axis-label { fill: #7c8994; font-size: 11px; }
.chart-area { fill: rgba(var(--accent-rgb), .1); }
.chart-line { fill: none; stroke: var(--accent); stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.chart-dot { fill: #fff; stroke: var(--accent); stroke-width: 2.2; }
.chart-line.is-secondary { stroke: #df8b2e; }
.chart-dot.is-secondary { stroke: #df8b2e; }
.chart-legend { display: flex; flex-wrap: wrap; gap: 14px; padding: 0 18px 15px; color: var(--muted); font-size: .68rem; }
.chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.chart-legend i { width: 16px; height: 3px; border-radius: 99px; background: var(--accent); }
.chart-legend i.is-secondary { background: #df8b2e; }
.distribution { display: grid; min-height: 280px; place-items: center; align-content: center; gap: 20px; padding: 20px; }
.donut { position: relative; display: grid; width: 150px; height: 150px; place-items: center; border-radius: 50%; background: conic-gradient(var(--accent) 0 46%, #2bb47a 46% 72%, #f0ad36 72% 88%, #8b67cf 88% 100%); }
.donut::after { content: ""; position: absolute; width: 88px; height: 88px; border-radius: 50%; background: #fff; }
.donut strong, .donut small { position: relative; z-index: 1; grid-area: 1 / 1; }
.donut strong { align-self: center; margin-top: -11px; font-size: 1.45rem; line-height: 1; }
.donut small { align-self: center; margin-top: 25px; color: var(--muted); font-size: .65rem; }
.distribution-list { display: grid; width: 100%; gap: 7px; }
.distribution-list span { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted); font-size: .69rem; }
.distribution-list i { width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: var(--accent); }
.distribution-list b { margin-left: auto; color: var(--ink); }

.summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.summary-card { padding: 16px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.summary-card span { display: block; color: var(--muted); font-size: .71rem; }
.summary-card strong { display: block; margin-top: 7px; font-size: 1.25rem; letter-spacing: -.025em; }
.summary-card small { display: block; margin-top: 4px; color: var(--positive); font-size: .66rem; }

.executive-panel { margin-bottom: 14px; }
.executive-panel .panel-header { padding-bottom: 12px; border-bottom: 1px solid #edf1f3; }
.executive-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.executive-item { position: relative; min-width: 0; padding: 14px 17px 16px; border-right: 1px solid #edf1f3; }
.executive-item:last-child { border-right: 0; }
.executive-item::before { content: ""; position: absolute; top: 0; left: 17px; width: 34px; height: 3px; border-radius: 999px; background: var(--accent); }
.executive-item.is-warning::before { background: var(--warning); }
.executive-item.is-info::before { background: #4c78c2; }
.executive-item-label { display: block; overflow: hidden; color: var(--muted); font-size: .68rem; font-weight: 730; text-overflow: ellipsis; white-space: nowrap; }
.executive-item strong { display: block; margin-top: 7px; color: var(--ink); font-size: 1.18rem; letter-spacing: -.025em; line-height: 1.1; }
.executive-item-footer { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 7px; }
.executive-item-footer small { overflow: hidden; color: var(--muted); font-size: .63rem; text-overflow: ellipsis; white-space: nowrap; }
.executive-status { flex: 0 0 auto; padding: 3px 6px; border-radius: 999px; background: #e9f6ee; color: #147441; font-size: .58rem; font-weight: 850; text-transform: uppercase; }
.executive-status.is-warning { background: #fff4df; color: #a75e00; }
.executive-status.is-info { background: #e9f2fc; color: #1766ad; }

.table-panel { overflow: hidden; }
.table-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 17px; border-bottom: 1px solid var(--line); }
.table-tools h3 { margin: 0; font-size: .9rem; }
.table-tools span { color: var(--muted); font-size: .69rem; }
.table-scroll { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; font-size: .75rem; }
.data-table th { padding: 11px 13px; border-bottom: 1px solid var(--line); background: #f7f9fa; color: #697783; font-size: .66rem; font-weight: 820; letter-spacing: .025em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.data-table td { max-width: 300px; padding: 12px 13px; border-bottom: 1px solid #e9edf0; color: #354351; vertical-align: middle; }
.data-table tbody tr:last-child td { border-bottom: 0; }
.data-table tbody tr:hover { background: #fafcfd; }
.cell-main { display: block; color: var(--ink); font-weight: 760; }
.cell-sub { display: block; margin-top: 2px; color: var(--muted); font-size: .66rem; }
.status { display: inline-flex; align-items: center; padding: 4px 8px; border-radius: 999px; background: #e9f6ee; color: #147441; font-size: .65rem; font-weight: 800; white-space: nowrap; }
.status.is-warning { background: #fff4df; color: #a75e00; }
.status.is-negative { background: #fdecef; color: #b72d3d; }
.status.is-info { background: #e9f2fc; color: #1766ad; }
.empty-state { display: grid; min-height: 190px; place-items: center; padding: 26px; color: var(--muted); text-align: center; }
.empty-state strong { display: block; margin-bottom: 5px; color: var(--ink); }

.demo-toast { position: fixed; right: 20px; bottom: 20px; z-index: 150; max-width: min(380px, calc(100% - 40px)); transform: translateY(18px); padding: 12px 15px; border-radius: 9px; background: #13283a; color: #fff; box-shadow: 0 16px 40px rgba(0,0,0,.2); font-size: .76rem; opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
.demo-toast.is-visible { transform: none; opacity: 1; }

/* ============================================
   PET SHOP — Central operacional
   ============================================ */

@media (min-width: 861px) {
  body[data-demo="petshop"] .demo-sidebar { right: 0; bottom: auto; width: auto; height: 82px; flex-direction: row; overflow: hidden; background: linear-gradient(105deg, #082b4c 0%, #0a3e6f 55%, #0d4b7f 100%); box-shadow: 0 9px 24px rgba(6,31,56,.16); }
  body[data-demo="petshop"] .demo-brand { width: 245px; min-height: 82px; flex: 0 0 auto; padding: 12px 20px; border-right: 1px solid rgba(255,255,255,.1); border-bottom: 0; }
  body[data-demo="petshop"] .demo-brand-mark { width: 42px; height: 42px; border-radius: 13px; background: linear-gradient(145deg, #55d6b1, #22b691); color: #052f42; box-shadow: 0 8px 18px rgba(17,207,156,.22); }
  body[data-demo="petshop"] .demo-nav { display: flex; min-width: 0; flex: 1; align-items: center; gap: 5px; overflow-x: auto; padding: 11px 14px; scrollbar-width: thin; }
  body[data-demo="petshop"] .demo-nav button { display: flex; width: auto; min-width: max-content; min-height: 46px; grid-template-columns: none; gap: 7px; padding: 7px 11px; color: rgba(255,255,255,.73); font-size: .74rem; }
  body[data-demo="petshop"] .demo-nav button.is-active { border-color: rgba(255,255,255,.9); background: #fff; color: #0a4777; box-shadow: 0 8px 20px rgba(2,22,41,.18); }
  body[data-demo="petshop"] .nav-symbol { width: 27px; height: 27px; border-radius: 9px; font-size: .61rem; }
  body[data-demo="petshop"] .demo-nav button.is-active .nav-symbol { background: #e6f3ff; color: #1169ad; }
  body[data-demo="petshop"] .demo-sidebar-footer { display: none; }
  body[data-demo="petshop"] .demo-main { margin-left: 0; padding-top: 82px; }
  body[data-demo="petshop"] .demo-topbar { top: calc(var(--notice-height) + 82px); min-height: 78px; padding-block: 12px; }
}

body[data-demo="petshop"] { --canvas: #f4f7fb; --line: #dce5ed; }
body[data-demo="petshop"] .demo-workspace { width: min(100%, 1440px); }
body[data-demo="petshop"] .demo-topbar { border-bottom-color: #dfe8ef; box-shadow: 0 5px 18px rgba(13,55,88,.045); }
body[data-demo="petshop"] .profile-chip > span { background: #e7f8f3; color: #087d61; }
body[data-demo="petshop"] .toolbar-action { border-color: #cadff1; background: #edf6fd; }
@media (min-width: 861px) {
  body[data-demo="petshop"] .workspace-toolbar[data-view="agenda"],
  body[data-demo="petshop"] .workspace-toolbar[data-view="clientes"],
  body[data-demo="petshop"] .workspace-toolbar[data-view="estoque"] { grid-template-columns: minmax(160px, 190px) minmax(260px, 1fr) auto; }
}

.pet-dashboard { display: grid; gap: 14px; }
.pet-intro { margin-bottom: 2px; }
.pet-intro h2 { font-size: clamp(1.32rem, 2.2vw, 1.72rem); }

/* NOVO: card Pet do Dia */
.pet-hero {
  position: relative;
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  overflow: hidden;
  padding: 18px 22px;
  border: 1px solid #dbe9e5;
  border-radius: 16px;
  background: radial-gradient(circle at 95% 0%, rgba(46,196,182,.14), transparent 38%), linear-gradient(120deg, #ffffff, #f2fbf8);
  box-shadow: 0 8px 22px rgba(15,53,82,.06);
}
.pet-hero::after {
  content: "";
  position: absolute;
  right: -60px;
  bottom: -80px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: rgba(46,196,182,.05);
  pointer-events: none;
}
.pet-hero-avatar {
  position: relative;
  z-index: 1;
  display: grid;
  width: 68px;
  height: 68px;
  place-items: center;
  border: 6px solid #fff;
  border-radius: 22px;
  background: linear-gradient(145deg, #2e9cd6, #2ec4b6);
  color: #fff;
  font-size: 1.4rem;
  font-weight: 900;
  letter-spacing: -.02em;
  box-shadow: 0 8px 20px rgba(20,120,150,.22);
}
.pet-hero-info { position: relative; z-index: 1; min-width: 0; }
.pet-hero-info > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #16885e;
  font-size: .62rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pet-hero-info > span::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #2ec4b6;
  box-shadow: 0 0 0 4px rgba(46,196,182,.18);
}
.pet-hero-info h3 {
  margin: 4px 0 2px;
  color: #183f5b;
  font-size: 1.18rem;
  letter-spacing: -.02em;
}
.pet-hero-info p {
  margin: 0;
  color: #6d7f8c;
  font-size: .72rem;
}
.pet-hero-action {
  position: relative;
  z-index: 1;
  display: inline-flex;
  height: 40px;
  align-items: center;
  padding: 0 18px;
  border: 0;
  border-radius: 10px;
  background: #0d775d;
  color: #fff;
  font-size: .7rem;
  font-weight: 850;
}
.pet-hero-action:hover { background: #0a5d47; }

/* NOVO: mini-calendário 7 dias */
.pet-week {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(15,53,82,.045);
}
.pet-week-day {
  position: relative;
  display: grid;
  gap: 2px;
  place-items: center;
  min-height: 82px;
  padding: 11px 6px;
  border: 0;
  border-right: 1px solid #e8eef2;
  background: #fff;
  color: #6e7f8d;
  text-align: center;
}
.pet-week-day:last-child { border-right: 0; }
.pet-week-day:hover { background: #f6faff; }
.pet-week-day.is-today {
  background: linear-gradient(145deg, #0b477b, #1476ae);
  color: #fff;
}
.pet-week-day.is-today::after {
  content: "";
  position: absolute;
  right: 20%;
  bottom: 0;
  left: 20%;
  height: 4px;
  border-radius: 4px 4px 0 0;
  background: #5ee0bb;
}
.pet-week-day > span {
  font-size: .58rem;
  font-weight: 820;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.pet-week-day > strong {
  font-size: 1.12rem;
  line-height: 1;
  letter-spacing: -.02em;
}
.pet-week-day > small {
  color: inherit;
  font-size: .53rem;
  font-weight: 700;
  opacity: .78;
}

/* NOVO: KPIs com contexto comparativo */
.pet-kpi-context {
  display: grid;
  gap: 3px;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px dashed #e5ecf1;
  font-size: .62rem;
  color: #7b8a97;
}
.pet-kpi-context span { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.pet-kpi-context b { color: #2d4859; font-weight: 800; }
.pet-kpi-context b.is-positive { color: #16885e; }
.pet-kpi-context b.is-warning { color: #b37519; }

.pet-command {
  position: relative;
  display: grid;
  min-height: 220px;
  grid-template-columns: minmax(260px, 1.05fr) 172px minmax(390px, 1.3fr);
  gap: 28px;
  align-items: center;
  overflow: hidden;
  padding: 27px 30px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 20px;
  background: radial-gradient(circle at 75% 0%, rgba(75,155,234,.34), transparent 35%), linear-gradient(118deg, #072d50 0%, #0b477b 58%, #12649a 100%);
  color: #fff;
  box-shadow: 0 18px 42px rgba(7,45,80,.18);
}
.pet-command::before {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -170px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
  box-shadow: 0 0 0 40px rgba(255,255,255,.025), 0 0 0 80px rgba(255,255,255,.02);
  pointer-events: none;
}
.pet-command-copy, .pet-gauge, .pet-command-stats { position: relative; z-index: 1; }
.pet-live {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #aeead8;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.pet-live i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #59e1b9;
  box-shadow: 0 0 0 5px rgba(89,225,185,.12);
}
.pet-command-copy h2 {
  margin: 12px 0 5px;
  font-size: clamp(1.85rem, 3vw, 2.65rem);
  line-height: 1.02;
  letter-spacing: -.045em;
}
.pet-command-copy p { margin: 0; color: rgba(255,255,255,.72); font-size: .82rem; }
.pet-command-copy p strong { color: #fff; }
.pet-date {
  display: inline-flex;
  margin-top: 17px;
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: rgba(255,255,255,.8);
  font-size: .65rem;
  text-transform: capitalize;
}

/* Gauge aprimorado com anel externo */
.pet-gauge {
  position: relative;
  display: grid;
  width: 148px;
  height: 148px;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(#5de0bb 0 88%, rgba(255,255,255,.13) 88% 100%);
  box-shadow: 0 0 0 9px rgba(255,255,255,.035);
}
.pet-gauge::before {
  content: "";
  position: absolute;
  inset: -14px;
  border: 2px dashed rgba(94,224,187,.32);
  border-radius: 50%;
  pointer-events: none;
}
.pet-gauge::after {
  content: "";
  position: absolute;
  width: 115px;
  height: 115px;
  border-radius: 50%;
  background: #0c4776;
  box-shadow: inset 0 0 22px rgba(2,25,47,.3);
}
.pet-gauge div { position: relative; z-index: 1; display: grid; text-align: center; }
.pet-gauge strong { font-size: 2rem; line-height: 1; letter-spacing: -.05em; }
.pet-gauge span { margin-top: 5px; color: #bce9dc; font-size: .62rem; font-weight: 780; text-transform: uppercase; }

.pet-command-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 15px;
  background: rgba(3,28,52,.25);
  backdrop-filter: blur(9px);
}
.pet-command-stats article {
  min-width: 0;
  padding: 18px 16px;
  border-right: 1px solid rgba(255,255,255,.1);
}
.pet-command-stats article:last-child { border-right: 0; }
.pet-command-stats span, .pet-command-stats small { display: block; }
.pet-command-stats span {
  overflow: hidden;
  color: rgba(255,255,255,.63);
  font-size: .64rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-command-stats strong {
  display: block;
  margin: 8px 0 5px;
  font-size: 1.7rem;
  line-height: 1;
  letter-spacing: -.04em;
}
.pet-command-stats small { color: #95e2cc; font-size: .59rem; white-space: nowrap; }

.pet-primary-grid, .pet-secondary-grid { display: grid; gap: 14px; }
.pet-primary-grid { grid-template-columns: minmax(0, 1.48fr) minmax(300px, .72fr); }
.pet-secondary-grid { grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr); }
.pet-dashboard .panel { border-radius: 16px; box-shadow: 0 7px 22px rgba(15,53,82,.055); }
.pet-panel-heading {
  display: flex;
  min-height: 67px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 17px;
  border-bottom: 1px solid #e5ecf1;
}
.pet-panel-heading > div { min-width: 0; }
.pet-panel-heading span {
  display: block;
  margin-bottom: 2px;
  color: #168c72;
  font-size: .61rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.pet-panel-heading h3 { margin: 0; font-size: .92rem; }
.pet-panel-heading > b {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef6fc;
  color: #236995;
  font-size: .63rem;
}

.pet-schedule { padding: 5px 16px 10px; }
.pet-appointment {
  position: relative;
  display: grid;
  min-height: 65px;
  grid-template-columns: 50px 38px minmax(140px, 1.15fr) minmax(130px, 1fr) auto;
  gap: 11px;
  align-items: center;
  border-bottom: 1px solid #edf1f4;
  transition: background .12s ease;
}
.pet-appointment:last-child { border-bottom: 0; }
.pet-appointment:hover { background: #f8fbfe; }
.pet-appointment::before {
  content: "";
  position: absolute;
  left: 48px;
  top: 0;
  bottom: 0;
  width: 1px;
  background: #e6edf2;
}
.pet-appointment time { color: #173c5c; font-size: .72rem; font-weight: 880; }
.pet-avatar {
  position: relative;
  z-index: 1;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 3px solid #fff;
  border-radius: 12px;
  background: #e3f3ff;
  color: #176ba5;
  box-shadow: 0 0 0 1px #d5e5f0;
  font-size: .62rem;
  font-weight: 900;
}

/* Raça abaixo do nome do pet */
.pet-appointment-name, .pet-appointment-service { min-width: 0; }
.pet-appointment-name strong, .pet-appointment-name small,
.pet-appointment-service strong, .pet-appointment-service small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-appointment-name strong, .pet-appointment-service strong { color: #20394e; font-size: .72rem; }
.pet-appointment-name small, .pet-appointment-service small { margin-top: 2px; color: #7d8a95; font-size: .61rem; }
.pet-appointment-breed {
  display: inline-block;
  margin-top: 3px;
  padding: 1px 6px;
  border-radius: 4px;
  background: #eef6fc;
  color: #236995;
  font-size: .53rem;
  font-weight: 780;
  letter-spacing: .01em;
}

.pet-empty {
  display: grid;
  min-height: 255px;
  place-content: center;
  gap: 4px;
  color: var(--muted);
  text-align: center;
  font-size: .72rem;
}
.pet-empty strong { color: var(--ink); font-size: .82rem; }

.pet-service-list { display: grid; gap: 16px; padding: 18px 18px 15px; }
.pet-service-row {
  display: grid;
  grid-template-columns: minmax(115px, 1fr) minmax(80px, 1fr) 34px;
  gap: 10px;
  align-items: center;
}
.pet-service-row > div:first-child span, .pet-service-row > div:first-child strong { display: block; }
.pet-service-row > div:first-child span { color: #263f54; font-size: .68rem; font-weight: 760; }
.pet-service-row > div:first-child strong { margin-top: 2px; color: #8a969f; font-size: .57rem; font-weight: 650; }
.pet-service-row > b { color: #516476; font-size: .64rem; text-align: right; }
.pet-progress { height: 7px; overflow: hidden; border-radius: 999px; background: #edf2f5; }
.pet-progress i { display: block; height: 100%; border-radius: inherit; background: #2777d3; }
.pet-progress i.is-mint { background: #35ba92; }
.pet-progress i.is-violet { background: #8364d9; }
.pet-progress i.is-coral { background: #f07b69; }
.pet-service-insight {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: end;
  margin: 0 17px 16px;
  padding: 12px 13px;
  border-radius: 11px;
  background: linear-gradient(110deg, #eef8f5, #f5fbf9);
}
.pet-service-insight span { color: #477166; font-size: .63rem; font-weight: 740; }
.pet-service-insight strong { grid-row: 2; color: #126e58; font-size: 1.14rem; }
.pet-service-insight small { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #178a6d; font-size: .59rem; font-weight: 780; }

.pet-revenue-chart { display: flex; height: 186px; align-items: stretch; gap: clamp(8px, 2vw, 22px); padding: 23px 25px 12px; }
.pet-revenue-column { display: grid; min-width: 0; flex: 1; grid-template-rows: 20px 1fr 18px; gap: 4px; text-align: center; }
.pet-revenue-column > span { overflow: hidden; color: #71808d; font-size: .55rem; font-weight: 680; text-overflow: ellipsis; white-space: nowrap; }
.pet-revenue-column > div {
  position: relative;
  display: flex;
  align-items: end;
  justify-content: center;
  overflow: hidden;
  border-radius: 8px 8px 3px 3px;
  background: linear-gradient(180deg, #f6f9fb, #edf3f7);
}
.pet-revenue-column i {
  display: block;
  width: min(58%, 38px);
  border-radius: 7px 7px 2px 2px;
  background: linear-gradient(180deg, #2c8de2, #1468b0);
  box-shadow: 0 7px 12px rgba(23,120,236,.18);
}
.pet-revenue-column:nth-child(6) i {
  background: linear-gradient(180deg, #59d3b0, #169575);
  box-shadow: 0 7px 12px rgba(22,149,117,.2);
}
.pet-revenue-column small { color: #536676; font-size: .61rem; font-weight: 760; }
.pet-revenue-footer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid #e9eef2; }
.pet-revenue-footer > span { padding: 11px 16px 13px; border-right: 1px solid #e9eef2; }
.pet-revenue-footer > span:last-child { border-right: 0; }
.pet-revenue-footer small, .pet-revenue-footer strong { display: block; }
.pet-revenue-footer small { color: #87939d; font-size: .58rem; }
.pet-revenue-footer strong { margin-top: 3px; color: #244157; font-size: .7rem; }

/* Gráfico de linha do Pet Shop */
.pet-chart-line { padding: 8px 14px 13px; }
.pet-chart-line svg { display: block; width: 100%; height: 235px; overflow: visible; }

/* Alertas priorizados */
.pet-alert-list { display: grid; gap: 10px; padding: 13px; }
.pet-alert {
  position: relative;
  display: grid;
  min-height: 72px;
  grid-template-columns: 40px 1fr 20px;
  gap: 11px;
  align-items: center;
  padding: 11px 13px 11px 15px;
  border: 1px solid #e6edf2;
  border-left: 3px solid #dca52c;
  border-radius: 11px;
  background: #fffdf8;
}
.pet-alert.is-negative { border-left-color: #df6170; background: #fffafb; }
.pet-alert.is-info { border-left-color: #438bd0; background: #fafdff; }
.pet-alert-priority {
  position: absolute;
  top: 7px;
  right: 8px;
  display: grid;
  width: 18px;
  height: 18px;
  place-items: center;
  border-radius: 50%;
  background: #fdecef;
  color: #b52e3f;
  font-size: .55rem;
  font-weight: 900;
}
.pet-alert.is-warning .pet-alert-priority { background: #fff2d5; color: #9b6812; }
.pet-alert.is-info .pet-alert-priority { background: #e9f3fc; color: #256fae; }
.pet-alert-symbol {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 10px;
  background: #fff2d5;
  color: #9b6812;
  font-size: .58rem;
  font-weight: 900;
}
.pet-alert.is-negative .pet-alert-symbol { background: #fdecef; color: #b52e3f; }
.pet-alert.is-info .pet-alert-symbol { background: #e9f3fc; color: #256fae; }
.pet-alert small, .pet-alert strong, .pet-alert p { display: block; margin: 0; }
.pet-alert small { color: #89949d; font-size: .55rem; font-weight: 750; text-transform: uppercase; letter-spacing: .03em; }
.pet-alert strong { margin-top: 2px; color: #263f54; font-size: .74rem; }
.pet-alert p { margin-top: 3px; color: #7b8994; font-size: .6rem; }
.pet-alert-arrow { color: #90a0ac; font-size: .86rem; }

/* Telas internas do Pet Shop */
.pet-screen { display: grid; gap: 14px; }
.pet-screen .module-intro { margin-bottom: 1px; }
.pet-day-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(15,53,82,.045);
}
.pet-day {
  position: relative;
  display: grid;
  gap: 1px;
  place-items: center;
  min-height: 74px;
  padding: 8px;
  border: 0;
  border-right: 1px solid #e8eef2;
  background: #fff;
  color: #6e7f8d;
}
.pet-day:last-child { border-right: 0; }
.pet-day:hover { background: #f6faff; }
.pet-day.is-active { background: linear-gradient(145deg, #0b477b, #1476ae); color: #fff; }
.pet-day.is-active::after {
  content: "";
  position: absolute;
  right: 16%;
  bottom: 0;
  left: 16%;
  height: 4px;
  border-radius: 4px 4px 0 0;
  background: #5ee0bb;
}
.pet-day span { font-size: .62rem; font-weight: 780; text-transform: uppercase; }
.pet-day strong { font-size: 1.08rem; line-height: 1.1; }
.pet-day small { color: inherit; font-size: .56rem; opacity: .72; }

.pet-agenda-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 14px; align-items: start; }
.pet-agenda-board, .pet-day-cash { border-radius: 16px; }
.pet-agenda-list { padding: 4px 16px 9px; }
.pet-agenda-entry {
  display: grid;
  min-height: 72px;
  grid-template-columns: 55px 39px minmax(110px, .9fr) minmax(135px, 1.15fr) auto 82px 70px;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid #ebf0f3;
  transition: background .12s ease;
}
.pet-agenda-entry:last-child { border-bottom: 0; }
.pet-agenda-entry:hover { background: #f8fbfe; }
.pet-agenda-time strong, .pet-agenda-time span,
.pet-agenda-pet strong, .pet-agenda-pet small,
.pet-agenda-service strong, .pet-agenda-service small,
.pet-agenda-charge strong, .pet-agenda-charge small { display: block; }
.pet-agenda-time strong { color: #153c5d; font-size: .76rem; }
.pet-agenda-time span { margin-top: 2px; color: #96a1aa; font-size: .52rem; text-transform: uppercase; }
.pet-avatar.is-large { width: 36px; height: 36px; border-radius: 12px; }
.pet-agenda-pet, .pet-agenda-service { min-width: 0; }
.pet-agenda-pet strong, .pet-agenda-service strong {
  overflow: hidden;
  color: #253f54;
  font-size: .69rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-agenda-pet small, .pet-agenda-service small {
  overflow: hidden;
  margin-top: 2px;
  color: #84919b;
  font-size: .59rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-agenda-charge { text-align: right; }
.pet-agenda-charge strong { color: #163b58; font-size: .68rem; }
.pet-agenda-charge small { margin-top: 2px; color: #85929c; font-size: .55rem; }
.pet-receive-button, .pet-paid {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  font-size: .58rem;
  font-weight: 850;
  white-space: nowrap;
}
.pet-receive-button { border: 1px solid #a9d9cc; background: #ecf9f5; color: #0c765c; }
.pet-receive-button:hover { background: #159474; color: #fff; }
.pet-paid { color: #16805f; }

.pet-day-cash { overflow: hidden; background: #fff; }
.pet-cash-hero {
  padding: 22px 21px 19px;
  background: radial-gradient(circle at 100% 0, rgba(71,214,175,.28), transparent 42%), linear-gradient(135deg, #072f51, #0b527f);
  color: #fff;
}
.pet-cash-hero span, .pet-cash-hero small { display: block; }
.pet-cash-hero span { color: #a6d5ec; font-size: .64rem; font-weight: 760; text-transform: uppercase; }
.pet-cash-hero strong { display: block; margin: 8px 0 4px; font-size: 1.75rem; letter-spacing: -.045em; }
.pet-cash-hero small { color: rgba(255,255,255,.65); font-size: .59rem; }
.pet-cash-split { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid #e8eef2; }
.pet-cash-split > span { padding: 13px 17px; border-right: 1px solid #e8eef2; }
.pet-cash-split > span:last-child { border-right: 0; }
.pet-cash-split small, .pet-cash-split strong { display: block; }
.pet-cash-split small { color: #87939d; font-size: .56rem; }
.pet-cash-split strong { margin-top: 3px; color: #25435a; font-size: .78rem; }
.pet-payment-breakdown { display: grid; gap: 11px; padding: 16px 18px 13px; }
.pet-payment-breakdown h3 { margin: 0 0 2px; font-size: .72rem; }
.pet-payment-line { display: grid; grid-template-columns: 80px 1fr 30px; gap: 8px; align-items: center; }
.pet-payment-line > span { display: flex; align-items: center; gap: 6px; color: #657786; font-size: .59rem; }
.pet-payment-line > span i { width: 7px; height: 7px; border-radius: 50%; background: #35b78f; }
.pet-payment-line > strong { grid-column: 2 / 4; grid-row: 1; color: #29475e; font-size: .63rem; text-align: right; }
.pet-payment-line > div { height: 5px; overflow: hidden; border-radius: 999px; background: #edf2f5; }
.pet-payment-line > div i { display: block; height: 100%; border-radius: inherit; background: #35b78f; }
.pet-payment-line small { color: #87949e; font-size: .54rem; text-align: right; }
.pet-payment-line i.is-cobalt { background: #348bd5; }
.pet-payment-line i.is-amber { background: #e4a43a; }
.pet-product-sales { margin: 0 17px 13px; padding: 11px 12px; border-radius: 10px; background: #f0f7fd; }
.pet-product-sales span, .pet-product-sales small { display: block; color: #718797; font-size: .57rem; }
.pet-product-sales strong { display: block; margin: 3px 0; color: #1e628e; font-size: .88rem; }
.pet-cash-button {
  width: calc(100% - 34px);
  height: 38px;
  margin: 0 17px 17px;
  border: 0;
  border-radius: 9px;
  background: #0d755d;
  color: #fff;
  font-size: .66rem;
  font-weight: 820;
}

.pet-client-layout { display: grid; grid-template-columns: 285px minmax(0, 1fr); gap: 14px; align-items: start; }
.pet-client-directory, .pet-profile { border-radius: 16px; }
.pet-directory-head { padding: 18px; border-bottom: 1px solid #e7edf1; background: linear-gradient(150deg, #f5fbff, #eef8f6); }
.pet-directory-head span, .pet-directory-head small { display: block; color: #718490; font-size: .59rem; }
.pet-directory-head strong { display: block; margin: 4px 0 2px; color: #183f5c; font-size: 1.27rem; }
.pet-client-list { padding: 8px; }
.pet-client-card {
  display: grid;
  width: 100%;
  grid-template-columns: 40px minmax(0, 1fr) 14px;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: #253f54;
  text-align: left;
  transition: background .12s ease;
}
.pet-client-card:hover { background: #f5f9fc; }
.pet-client-card.is-active { background: #eaf5fd; box-shadow: inset 3px 0 #1778bd; }
.pet-client-card > span:nth-child(2) { min-width: 0; }
.pet-client-card strong, .pet-client-card small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-client-card strong { font-size: .7rem; }
.pet-client-card small { margin-top: 2px; color: #7d8b96; font-size: .56rem; }
.pet-client-card i { color: #92a2ad; font-style: normal; }
.pet-directory-action {
  width: calc(100% - 16px);
  height: 38px;
  margin: 0 8px 8px;
  border: 1px dashed #9fc9e5;
  border-radius: 10px;
  background: #f8fcff;
  color: #206c9b;
  font-size: .63rem;
  font-weight: 800;
}
.pet-client-empty { padding: 25px 12px; color: #7c8994; font-size: .68rem; text-align: center; }
.pet-client-empty.is-page { display: grid; min-height: 260px; place-items: center; }
.pet-profile { overflow: hidden; }
.pet-profile-header {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 22px 24px;
  background: radial-gradient(circle at 85% 10%, rgba(54,183,145,.16), transparent 28%), linear-gradient(115deg, #eff8ff, #f3fbf8);
}
.pet-profile-avatar {
  display: grid;
  width: 72px;
  height: 72px;
  place-items: center;
  border: 6px solid rgba(255,255,255,.8);
  border-radius: 23px;
  background: linear-gradient(145deg, #217fc2, #45c2a0);
  color: #fff;
  box-shadow: 0 10px 24px rgba(21,99,147,.17);
  font-size: 1.05rem;
  font-weight: 900;
}
.pet-profile-header > div > span { color: #178167; font-size: .59rem; font-weight: 840; letter-spacing: .08em; text-transform: uppercase; }
.pet-profile-header h3 { margin: 3px 0 1px; color: #173c58; font-size: 1.55rem; letter-spacing: -.035em; }
.pet-profile-header p { margin: 0; color: #72828e; font-size: .68rem; }
.pet-profile-header button {
  height: 34px;
  padding: 0 12px;
  border: 1px solid #bed8e9;
  border-radius: 9px;
  background: rgba(255,255,255,.7);
  color: #236b97;
  font-size: .61rem;
  font-weight: 800;
}
.pet-profile-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #e7edf1; }
.pet-profile-facts article { padding: 15px 20px; border-right: 1px solid #e7edf1; }
.pet-profile-facts article:last-child { border-right: 0; }
.pet-profile-facts span, .pet-profile-facts small { display: block; color: #85929c; font-size: .57rem; }
.pet-profile-facts strong { display: block; margin: 4px 0 2px; color: #263f53; font-size: .73rem; }
.pet-profile-grid { display: grid; grid-template-columns: minmax(240px, .85fr) minmax(300px, 1.15fr); gap: 12px; padding: 16px; }
.pet-care-note, .pet-vaccine-panel { border: 1px solid #e4ebef; border-radius: 12px; }
.pet-care-note { padding: 17px; background: #fffaf2; }
.pet-care-note > span { color: #aa711c; font-size: .57rem; font-weight: 840; text-transform: uppercase; }
.pet-care-note > strong { display: block; margin-top: 8px; color: #5d4724; font-size: .78rem; }
.pet-care-note p { margin: 6px 0 13px; color: #86765c; font-size: .62rem; }
.pet-care-note button { padding: 0; border: 0; background: transparent; color: #9a6517; font-size: .61rem; font-weight: 820; }
.pet-vaccine-panel { overflow: hidden; }
.pet-vaccine-panel > div { display: flex; align-items: center; justify-content: space-between; padding: 11px 13px; border-bottom: 1px solid #e8eef2; background: #f8fafb; }
.pet-vaccine-panel > div span { color: #334f64; font-size: .65rem; font-weight: 820; }
.pet-vaccine-panel > div b { color: #88959f; font-size: .55rem; }
.pet-vaccine { display: grid; grid-template-columns: 27px 1fr auto; gap: 9px; align-items: center; padding: 9px 12px; border-bottom: 1px solid #edf1f3; }
.pet-vaccine:last-child { border-bottom: 0; }
.pet-vaccine > span { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: #e8f7f2; color: #178163; font-size: .57rem; font-weight: 900; }
.pet-vaccine > span.is-next { background: #fff2d9; color: #a66a0c; }
.pet-vaccine strong, .pet-vaccine small { display: block; }
.pet-vaccine strong { color: #2c465a; font-size: .64rem; }
.pet-vaccine small { color: #8a969f; font-size: .54rem; }
.pet-vaccine > b { padding: 3px 7px; border-radius: 999px; background: #e9f7f2; color: #16785d; font-size: .52rem; }
.pet-vaccine > b.is-next { background: #fff2d9; color: #a66a0c; }
.pet-relationship {
  display: grid;
  grid-template-columns: 1.2fr .8fr .8fr auto;
  gap: 10px;
  align-items: center;
  padding: 14px 18px;
  border-top: 1px solid #e7edf1;
  background: #fafcfd;
}
.pet-relationship small, .pet-relationship strong { display: block; }
.pet-relationship small { color: #8a969f; font-size: .53rem; }
.pet-relationship strong { margin-top: 2px; color: #2e485d; font-size: .65rem; }
.pet-relationship button {
  height: 34px;
  padding: 0 12px;
  border: 0;
  border-radius: 9px;
  background: #0c775e;
  color: #fff;
  font-size: .59rem;
  font-weight: 800;
}

.pet-stock-ribbon {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dbe5eb;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(15,53,82,.045);
}
.pet-stock-ribbon article { position: relative; padding: 16px 18px; border-right: 1px solid #e5ecef; }
.pet-stock-ribbon article:last-child { border-right: 0; }
.pet-stock-ribbon article::before {
  content: "";
  position: absolute;
  top: 0;
  right: 18px;
  left: 18px;
  height: 3px;
  border-radius: 0 0 5px 5px;
  background: #2d8dd6;
}
.pet-stock-ribbon article:nth-child(2)::before { background: #38b88f; }
.pet-stock-ribbon article:nth-child(4)::before { background: #8166d3; }
.pet-stock-ribbon article.is-alert::before { background: #dc5b6c; }
.pet-stock-ribbon span, .pet-stock-ribbon small { display: block; color: #81909b; font-size: .57rem; }
.pet-stock-ribbon strong { display: block; margin: 5px 0 3px; color: #254258; font-size: 1.08rem; }
.pet-stock-ribbon article.is-alert strong { color: #b33448; }
.pet-stock-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.pet-stock-toolbar > div { display: flex; gap: 6px; overflow-x: auto; }
.pet-stock-toolbar button {
  min-height: 33px;
  padding: 0 11px;
  border: 1px solid #d4e0e7;
  border-radius: 999px;
  background: #fff;
  color: #627684;
  font-size: .59rem;
  font-weight: 760;
  white-space: nowrap;
}
.pet-stock-toolbar button.is-active { border-color: #1676b6; background: #1676b6; color: #fff; }
.pet-stock-toolbar > span { display: flex; flex: 0 0 auto; align-items: center; gap: 7px; color: #b23d4e; font-size: .6rem; font-weight: 760; }
.pet-stock-toolbar > span i { width: 7px; height: 7px; border-radius: 50%; background: #dc5b6c; box-shadow: 0 0 0 4px rgba(220,91,108,.1); }
.pet-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.pet-product-card {
  position: relative;
  display: grid;
  overflow: hidden;
  padding: 15px;
  border: 1px solid #dfe7ec;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(15,53,82,.045);
  transition: box-shadow .15s ease, transform .15s ease;
}
.pet-product-card:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(15,53,82,.08); }
.pet-product-card::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 4px; background: #35ae89; }
.pet-product-card.is-warning::before { background: #e2a039; }
.pet-product-card.is-negative::before { background: #db5b6d; }
.pet-product-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.pet-product-top span { padding: 3px 7px; border-radius: 999px; background: #edf5fb; color: #276c98; font-size: .52rem; font-weight: 780; }
.pet-product-top small { color: #9aa5ad; font-size: .52rem; }
.pet-product-symbol {
  display: grid;
  width: 43px;
  height: 43px;
  place-items: center;
  margin-top: 13px;
  border-radius: 13px;
  background: linear-gradient(145deg, #eaf5fd, #e8f8f3);
  color: #197399;
  font-size: .66rem;
  font-weight: 900;
}
.pet-product-card h3 { min-height: 2.6em; margin: 9px 0 10px; color: #29445a; font-size: .73rem; }
.pet-stock-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #7b8994; font-size: .57rem; }
.pet-stock-label strong { color: #304c61; font-size: .62rem; }
.pet-stock-meter { height: 6px; margin: 6px 0 13px; overflow: hidden; border-radius: 999px; background: #edf2f4; }
.pet-stock-meter i { display: block; height: 100%; border-radius: inherit; background: #35ae89; }
.pet-product-card.is-warning .pet-stock-meter i { background: #e2a039; }
.pet-product-card.is-negative .pet-stock-meter i { background: #db5b6d; }
.pet-product-values { display: grid; grid-template-columns: repeat(3, 1fr); padding: 10px 0; border-block: 1px solid #edf1f3; }
.pet-product-values span { padding-inline: 8px; border-right: 1px solid #edf1f3; }
.pet-product-values span:first-child { padding-left: 0; }
.pet-product-values span:last-child { padding-right: 0; border-right: 0; }
.pet-product-values small, .pet-product-values strong { display: block; }
.pet-product-values small { color: #8c98a1; font-size: .51rem; }
.pet-product-values strong { margin-top: 2px; color: #304c61; font-size: .61rem; }
.pet-product-card > button {
  height: 34px;
  margin-top: 11px;
  border: 0;
  border-radius: 8px;
  background: #eff6fa;
  color: #256b95;
  font-size: .57rem;
  font-weight: 800;
}
.pet-product-card.is-negative > button { background: #fceef0; color: #b23849; }

.pet-register-hero {
  display: grid;
  grid-template-columns: minmax(230px, .8fr) minmax(420px, 1.4fr) auto;
  gap: 25px;
  align-items: center;
  overflow: hidden;
  padding: 24px 26px;
  border-radius: 18px;
  background: radial-gradient(circle at 88% -20%, rgba(114,94,211,.34), transparent 34%), linear-gradient(120deg, #103852, #0e665f);
  color: #fff;
  box-shadow: 0 16px 36px rgba(9,59,67,.16);
}
.pet-register-hero > div:first-child > span, .pet-register-hero > div:first-child > small { display: block; color: rgba(255,255,255,.67); font-size: .61rem; }
.pet-register-hero > div:first-child > strong { display: block; margin: 7px 0 4px; font-size: clamp(1.45rem, 2.4vw, 2rem); letter-spacing: -.045em; }
.pet-register-split {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 13px;
  background: rgba(4,35,44,.2);
}
.pet-register-split article { padding: 13px 14px; border-right: 1px solid rgba(255,255,255,.1); }
.pet-register-split article:last-child { border-right: 0; }
.pet-register-split span, .pet-register-split small { display: block; color: rgba(255,255,255,.63); font-size: .54rem; }
.pet-register-split strong { display: block; margin: 4px 0 2px; font-size: .81rem; }
.pet-register-hero > button {
  height: 39px;
  padding: 0 15px;
  border: 1px solid rgba(255,255,255,.26);
  border-radius: 10px;
  background: #fff;
  color: #0d665d;
  font-size: .63rem;
  font-weight: 840;
}
.pet-cash-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) 350px; gap: 14px; align-items: start; }
.pet-transaction-list { padding: 3px 16px 6px; }
.pet-transaction {
  display: grid;
  min-height: 62px;
  grid-template-columns: 42px 34px minmax(170px, 1fr) 85px auto;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid #ebf0f3;
}
.pet-transaction:last-child { border-bottom: 0; }
.pet-transaction time { color: #71818e; font-size: .6rem; font-weight: 750; }
.pet-transaction-icon {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 10px;
  background: #e8f7f2;
  color: #13765c;
  font-size: .55rem;
  font-weight: 900;
}
.pet-transaction-icon.is-product { background: #eeeafd; color: #6548b8; }
.pet-transaction > div { min-width: 0; }
.pet-transaction > div strong, .pet-transaction > div small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-transaction > div strong { color: #29445a; font-size: .66rem; }
.pet-transaction > div small { margin-top: 2px; color: #87939d; font-size: .55rem; }
.pet-transaction > b { color: #28475e; font-size: .67rem; text-align: right; }
.pet-list-footer {
  width: 100%;
  height: 40px;
  border: 0;
  border-top: 1px solid #e8eef2;
  background: #fafcfd;
  color: #247297;
  font-size: .59rem;
  font-weight: 800;
}
.pet-cash-sidebar { display: grid; gap: 14px; }
.pet-method-stack {
  display: flex;
  height: 12px;
  overflow: hidden;
  margin: 17px 17px 14px;
  border-radius: 999px;
  background: #edf2f4;
}
.pet-method-stack i { display: block; height: 100%; background: #35b68e; }
.pet-method-stack i.is-violet { background: #8062d1; }
.pet-method-stack i.is-cobalt { background: #3287ce; }
.pet-method-stack i.is-amber { background: #e4a23a; }
.pet-method-list { display: grid; gap: 8px; padding: 0 18px 17px; }
.pet-method-row { display: grid; grid-template-columns: 1fr auto 34px; gap: 8px; align-items: center; }
.pet-method-row span { display: flex; align-items: center; gap: 7px; color: #647684; font-size: .59rem; }
.pet-method-row span i { width: 8px; height: 8px; border-radius: 3px; background: #35b68e; }
.pet-method-row span i.is-violet { background: #8062d1; }
.pet-method-row span i.is-cobalt { background: #3287ce; }
.pet-method-row span i.is-amber { background: #e4a23a; }
.pet-method-row strong { color: #29475e; font-size: .63rem; }
.pet-method-row small { color: #89969f; font-size: .54rem; text-align: right; }
.pet-closing-card { padding: 17px; background: linear-gradient(145deg, #fff, #f7fbfa); }
.pet-closing-card > span { color: #13765c; font-size: .57rem; font-weight: 840; letter-spacing: .07em; text-transform: uppercase; }
.pet-closing-card > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 0;
  border-bottom: 1px solid #e8eeec;
}
.pet-closing-card > div strong { color: #697a86; font-size: .59rem; }
.pet-closing-card > div b { color: #29475b; font-size: .67rem; }
.pet-closing-card p { display: flex; align-items: center; gap: 7px; margin: 12px 0; color: #5d746e; font-size: .57rem; }
.pet-closing-card p i { width: 7px; height: 7px; border-radius: 50%; background: #32af87; }
.pet-closing-card button {
  width: 100%;
  height: 36px;
  border: 0;
  border-radius: 8px;
  background: #0f765e;
  color: #fff;
  font-size: .59rem;
  font-weight: 820;
}

.pet-report-hero {
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(470px, 1.2fr);
  gap: 30px;
  align-items: center;
  padding: 25px 28px;
  border: 1px solid #dce7ed;
  border-radius: 18px;
  background: radial-gradient(circle at 12% 10%, rgba(56,181,143,.16), transparent 30%), linear-gradient(120deg, #f4fbf9, #f1f7fd);
  box-shadow: 0 10px 28px rgba(15,53,82,.06);
}
.pet-report-hero > div:first-child > span { color: #138065; font-size: .6rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.pet-report-hero h3 { margin: 7px 0 5px; color: #183f5b; font-size: clamp(1.25rem, 2.3vw, 1.8rem); line-height: 1.14; letter-spacing: -.035em; }
.pet-report-hero p { margin: 0; color: #6d7f8c; font-size: .68rem; }
.pet-report-hero > div:last-child {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dfe8ed;
  border-radius: 13px;
  background: rgba(255,255,255,.72);
}
.pet-report-hero article { padding: 15px; border-right: 1px solid #e2e9ed; }
.pet-report-hero article:last-child { border-right: 0; }
.pet-report-hero article span, .pet-report-hero article small { display: block; color: #7c8c97; font-size: .54rem; }
.pet-report-hero article strong { display: block; margin: 5px 0 2px; color: #126d57; font-size: 1.15rem; }
.pet-analytics-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(420px, 1.15fr); gap: 14px; }
.pet-team-list { padding: 5px 17px 10px; }
.pet-team-row {
  display: grid;
  min-height: 59px;
  grid-template-columns: 25px minmax(110px, 1fr) minmax(80px, 1fr) 68px;
  gap: 9px;
  align-items: center;
  border-bottom: 1px solid #ebf0f3;
}
.pet-team-row:last-child { border-bottom: 0; }
.pet-team-row > span {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 8px;
  background: #edf5fa;
  color: #347092;
  font-size: .57rem;
  font-weight: 850;
}
.pet-team-row strong, .pet-team-row small { display: block; }
.pet-team-row strong { color: #29465b; font-size: .64rem; }
.pet-team-row small { color: #89969f; font-size: .53rem; }
.pet-team-meter { height: 6px; overflow: hidden; border-radius: 999px; background: #edf2f4; }
.pet-team-meter i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2786c9, #42ba96); }
.pet-team-row > b { color: #2d4b61; font-size: .61rem; text-align: right; }
.pet-heatmap { display: grid; gap: 5px; padding: 13px 16px 6px; }
.pet-heatmap-head, .pet-heatmap-row { display: grid; grid-template-columns: 36px repeat(6, minmax(35px, 1fr)); gap: 5px; align-items: center; }
.pet-heatmap-head b { color: #83919b; font-size: .51rem; text-align: center; }
.pet-heatmap-row strong { color: #6d7f8c; font-size: .53rem; }
.pet-heatmap-row span {
  display: grid;
  min-height: 31px;
  place-items: center;
  border-radius: 6px;
  background: rgba(20,129,110,var(--heat));
  color: #fff;
  text-shadow: 0 1px 2px rgba(6,47,42,.28);
  font-size: .51rem;
  font-weight: 800;
}
.pet-heatmap-legend { display: flex; align-items: center; justify-content: flex-end; gap: 7px; padding: 5px 16px 13px; color: #8a969f; font-size: .5rem; }
.pet-heatmap-legend i { width: 75px; height: 6px; border-radius: 999px; background: linear-gradient(90deg, rgba(20,129,110,.25), rgba(20,129,110,.96)); }
.pet-report-library {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 18px;
  border: 1px solid #dce5eb;
  border-radius: 16px;
  background: #fff;
}
.pet-report-library > div:first-child span { color: #168168; font-size: .58rem; font-weight: 840; text-transform: uppercase; }
.pet-report-library > div:first-child h3 { margin: 5px 0 0; color: #29465b; font-size: .92rem; }
.pet-report-library > div:last-child { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.pet-report-card {
  display: grid;
  grid-template-columns: 34px 1fr 24px;
  gap: 9px;
  align-items: center;
  padding: 11px;
  border: 1px solid #e1e8ed;
  border-radius: 11px;
  background: #fbfcfd;
}
.pet-report-card > span {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 9px;
  background: #eaf4fb;
  color: #27729d;
  font-size: .54rem;
  font-weight: 900;
}
.pet-report-card > div { min-width: 0; }
.pet-report-card small, .pet-report-card strong, .pet-report-card p {
  display: block;
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.pet-report-card small { color: #188068; font-size: .49rem; font-weight: 800; text-transform: uppercase; }
.pet-report-card strong { margin-top: 2px; color: #2d485c; font-size: .59rem; }
.pet-report-card p { margin-top: 2px; color: #87949e; font-size: .51rem; }
.pet-report-card button { width: 24px; height: 24px; border: 0; border-radius: 8px; background: #edf4f7; color: #357393; }

/* ============================================
   CONTROLE FINANCEIRO
   ============================================ */

body[data-demo="finance"] .demo-sidebar { border-right: 1px solid rgba(255,255,255,.04); box-shadow: 8px 0 30px rgba(10,22,39,.08); }
body[data-demo="finance"] .demo-brand { min-height: 104px; }
body[data-demo="finance"] .demo-brand-mark { border-color: rgba(255,255,255,.08); border-radius: 14px; background: linear-gradient(145deg, #6e7fec, #4058cc); box-shadow: 0 10px 24px rgba(42,61,158,.32); }
body[data-demo="finance"] .demo-nav { gap: 7px; padding-top: 22px; }
body[data-demo="finance"] .demo-nav button { min-height: 48px; border-radius: 11px; color: rgba(255,255,255,.68); }
body[data-demo="finance"] .demo-nav button.is-active { border-color: rgba(133,149,237,.26); background: linear-gradient(100deg, rgba(91,111,222,.95), rgba(72,91,199,.95)); box-shadow: 0 10px 22px rgba(5,13,28,.23); }
body[data-demo="finance"] .nav-symbol { background: rgba(255,255,255,.06); }
body[data-demo="finance"] .demo-topbar { min-height: 82px; border-bottom-color: #e1e5eb; box-shadow: 0 5px 18px rgba(18,32,52,.035); }
body[data-demo="finance"] .profile-chip > span { border-radius: 12px; background: #eceffd; color: #4c62d0; }
body[data-demo="finance"] .demo-workspace { width: min(100%, 1480px); }
body[data-demo="finance"] .toolbar-action { border-color: #ced4f3; background: #f0f2ff; color: #475dcc; }
body[data-demo="finance"] .toolbar-action:hover { background: #5065d2; color: #fff; }
@media (min-width: 861px) {
  body[data-demo="finance"] .workspace-toolbar[data-view="cadastros"] { grid-template-columns: minmax(170px, 200px) minmax(260px, 1fr) auto; }
}

.fin-screen { display: grid; gap: 14px; }
.fin-screen .module-intro { margin-bottom: 1px; }
.fin-screen .panel { border-color: #dde3e9; border-radius: 15px; box-shadow: 0 6px 20px rgba(22,37,59,.045); }
.fin-panel-title {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 13px 17px;
  border-bottom: 1px solid #e7ebef;
}
.fin-panel-title > div { min-width: 0; }
.fin-panel-title span {
  display: block;
  margin-bottom: 2px;
  color: #6375d6;
  font-size: .59rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.fin-panel-title h3 { margin: 0; color: #233348; font-size: .91rem; }
.fin-panel-title > b {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 8px;
  background: #f0f2f8;
  color: #687585;
  font-size: .57rem;
}
.fin-empty { display: grid; min-height: 170px; place-items: center; padding: 20px; color: #84909c; font-size: .68rem; text-align: center; }
.fin-empty.is-page { grid-column: 1 / -1; min-height: 260px; border: 1px solid #dfe5ea; border-radius: 14px; background: #fff; }

.fin-balance-hero {
  position: relative;
  display: grid;
  min-height: 190px;
  grid-template-columns: minmax(300px, 1fr) minmax(280px, .8fr) 150px;
  gap: 28px;
  align-items: center;
  overflow: hidden;
  padding: 27px 30px;
  border-radius: 19px;
  background: radial-gradient(circle at 86% -25%, rgba(107,126,235,.45), transparent 34%), linear-gradient(118deg, #101f35, #182e4b 58%, #243b61);
  color: #fff;
  box-shadow: 0 18px 40px rgba(15,31,54,.18);
}
.fin-balance-hero::after {
  content: "";
  position: absolute;
  right: 22%;
  bottom: -120px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 50%;
  box-shadow: 0 0 0 35px rgba(255,255,255,.018), 0 0 0 70px rgba(255,255,255,.012);
}
.fin-balance-copy, .fin-balance-projection, .fin-health-seal { position: relative; z-index: 1; }
.fin-balance-copy > span, .fin-balance-projection > span { color: rgba(255,255,255,.63); font-size: .64rem; font-weight: 760; letter-spacing: .04em; }
.fin-balance-copy > strong { display: block; margin: 8px 0 3px; font-size: clamp(2rem, 3.7vw, 3rem); line-height: 1; letter-spacing: -.055em; }
.fin-balance-copy > p { margin: 0; color: rgba(255,255,255,.6); font-size: .66rem; }
.fin-balance-copy > div { display: flex; align-items: center; gap: 7px; margin-top: 14px; }
.fin-balance-copy > div b { padding: 4px 7px; border-radius: 999px; background: rgba(69,204,147,.14); color: #7ee3b8; font-size: .6rem; }
.fin-balance-copy > div small { color: rgba(255,255,255,.58); font-size: .57rem; }
.fin-balance-projection { padding: 18px; border: 1px solid rgba(255,255,255,.11); border-radius: 14px; background: rgba(7,17,32,.22); backdrop-filter: blur(8px); }
.fin-balance-projection > strong { display: block; margin: 6px 0 12px; font-size: 1.38rem; letter-spacing: -.035em; }
.fin-projection-track { height: 7px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.12); }
.fin-projection-track i { display: block; width: 78%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #6d80ec, #65d2aa); }
.fin-balance-projection > small { display: block; margin-top: 8px; color: #aeb8cd; font-size: .56rem; }
.fin-health-seal {
  display: grid;
  width: 126px;
  height: 126px;
  place-items: center;
  place-content: center;
  justify-self: end;
  border: 1px solid rgba(119,223,180,.3);
  border-radius: 50%;
  background: rgba(31,180,121,.09);
  box-shadow: inset 0 0 0 9px rgba(255,255,255,.025);
  text-align: center;
}
.fin-health-seal span, .fin-health-seal small { color: #9eb8b2; font-size: .51rem; text-transform: uppercase; }
.fin-health-seal strong { margin: 2px 0; color: #74ddb2; font-size: 2rem; line-height: 1; }
.fin-metric-ribbon { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: hidden; border: 1px solid #dce2e8; border-radius: 14px; background: #fff; }
.fin-metric-ribbon article { position: relative; padding: 15px 18px; border-right: 1px solid #e7ebef; }
.fin-metric-ribbon article:last-child { border-right: 0; }
.fin-metric-ribbon article::before {
  content: "";
  position: absolute;
  top: 0;
  right: 18px;
  left: 18px;
  height: 3px;
  border-radius: 0 0 5px 5px;
  background: #566cdb;
}
.fin-metric-ribbon article:nth-child(2)::before { background: #df6b79; }
.fin-metric-ribbon article:nth-child(3)::before { background: #34a97d; }
.fin-metric-ribbon article:nth-child(4)::before { background: #d99a36; }
.fin-metric-ribbon span, .fin-metric-ribbon small { display: block; color: #84909b; font-size: .56rem; }
.fin-metric-ribbon strong { display: block; margin: 5px 0 2px; color: #26374b; font-size: 1.05rem; }
.fin-dashboard-grid, .fin-dashboard-bottom { display: grid; gap: 14px; }
.fin-dashboard-grid { grid-template-columns: minmax(0, 1.25fr) minmax(360px, .75fr); }
.fin-dashboard-bottom { grid-template-columns: minmax(0, 1.2fr) minmax(350px, .8fr); }
.fin-cash-bridge { display: grid; height: 225px; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; align-items: end; padding: 20px 20px 15px; }
.fin-bridge-step { display: grid; height: 100%; grid-template-rows: 20px 24px 1fr; align-items: end; text-align: center; }
.fin-bridge-step > span { color: #7b8895; font-size: .57rem; }
.fin-bridge-step > strong { overflow: hidden; color: #2c4055; font-size: .66rem; text-overflow: ellipsis; white-space: nowrap; }
.fin-bridge-step > div { display: flex; align-items: end; justify-content: center; border-bottom: 1px solid #dfe5e9; }
.fin-bridge-step i { display: block; width: min(68%, 58px); border-radius: 7px 7px 2px 2px; background: linear-gradient(180deg, #7788ea, #5369d9); }
.fin-bridge-step.is-positive i { background: linear-gradient(180deg, #5bc69d, #29946d); }
.fin-bridge-step.is-negative i { background: linear-gradient(180deg, #ed8b95, #ce5665); }
.fin-bridge-step.is-result i { background: linear-gradient(180deg, #385370, #1a304a); }
.fin-deadline-list { padding: 4px 14px; }
.fin-deadline {
  display: grid;
  min-height: 63px;
  grid-template-columns: 45px 28px minmax(110px, 1fr) 82px auto;
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid #ebeff2;
}
.fin-deadline:last-child { border-bottom: 0; }
.fin-deadline time { color: #72808d; font-size: .57rem; font-weight: 760; }
.fin-direction {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 8px;
  background: #fcecef;
  color: #bf4051;
  font-size: .7rem;
}
.fin-direction.is-in { background: #e9f7f1; color: #21815f; }
.fin-deadline > div { min-width: 0; }
.fin-deadline > div strong, .fin-deadline > div small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-deadline > div strong { color: #2a3d51; font-size: .62rem; }
.fin-deadline > div small { color: #89949e; font-size: .52rem; }
.fin-deadline > b { color: #30465a; font-size: .62rem; text-align: right; }
.fin-agenda-panel > button {
  width: 100%;
  height: 39px;
  border: 0;
  border-top: 1px solid #e8ecef;
  background: #fafbfc;
  color: #5268d2;
  font-size: .58rem;
  font-weight: 800;
}
.fin-dre-mini { display: grid; gap: 10px; padding: 15px 17px 17px; }
.fin-dre-row { display: grid; grid-template-columns: 125px minmax(100px, 1fr) 95px 34px; gap: 9px; align-items: center; }
.fin-dre-row > span { color: #637282; font-size: .58rem; }
.fin-dre-row > div { height: 6px; overflow: hidden; border-radius: 999px; background: #edf0f3; }
.fin-dre-row > div i { display: block; height: 100%; border-radius: inherit; background: #5a70dc; }
.fin-dre-row > div i.is-negative { background: #d86977; }
.fin-dre-row > strong { color: #2c4054; font-size: .63rem; text-align: right; }
.fin-dre-row > small { color: #87939e; font-size: .53rem; text-align: right; }
.fin-dre-row.is-result { padding-top: 9px; border-top: 1px solid #e4e9ed; }
.fin-dre-row.is-result > span, .fin-dre-row.is-result > strong { color: #20815f; font-weight: 850; }
.fin-insight-list { display: grid; padding: 7px 15px 11px; }
.fin-insight {
  display: grid;
  min-height: 57px;
  grid-template-columns: 7px 1fr;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid #ebeff2;
}
.fin-insight:last-child { border-bottom: 0; }
.fin-insight > span { width: 7px; height: 34px; border-radius: 999px; background: #45ad84; }
.fin-insight.is-info > span { background: #687ade; }
.fin-insight small, .fin-insight strong, .fin-insight p { display: inline; margin: 0; }
.fin-insight small { color: #788692; font-size: .57rem; }
.fin-insight strong { float: right; color: #2e4357; font-size: .68rem; }
.fin-insight p { display: block; margin-top: 2px; color: #94a0a9; font-size: .52rem; }

.fin-entry-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; overflow: hidden; border: 1px solid #dce3e9; border-radius: 14px; background: #fff; }
.fin-entry-summary > div { padding: 14px 18px; border-right: 1px solid #e6ebef; }
.fin-entry-summary span, .fin-entry-summary small { display: block; color: #87939e; font-size: .55rem; }
.fin-entry-summary strong { display: block; margin: 4px 0 2px; color: #293d51; font-size: .95rem; }
.fin-entry-summary > div:nth-child(1) strong, .fin-entry-summary > div:nth-child(3) strong { color: #23805f; }
.fin-entry-summary > button { min-width: 145px; border: 0; background: #5065cf; color: #fff; font-size: .62rem; font-weight: 820; }
.fin-ledger-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 14px; align-items: start; }
.fin-ledger-filters, .fin-partner-toolbar {
  display: flex;
  min-height: 57px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 15px;
  border-bottom: 1px solid #e6eaee;
}
.fin-ledger-filters > div, .fin-partner-toolbar > div { display: flex; gap: 5px; }
.fin-ledger-filters button, .fin-partner-toolbar button {
  height: 31px;
  padding: 0 10px;
  border: 1px solid #d8dfe5;
  border-radius: 8px;
  background: #fff;
  color: #6d7b88;
  font-size: .55rem;
  font-weight: 760;
}
.fin-ledger-filters button.is-active, .fin-partner-toolbar button.is-active { border-color: #566bd6; background: #566bd6; color: #fff; }
.fin-ledger-filters > span, .fin-partner-toolbar > span { color: #8a959f; font-size: .55rem; }
.fin-ledger-list { padding: 2px 15px 8px; }
.fin-ledger-entry {
  display: grid;
  min-height: 62px;
  grid-template-columns: 48px 30px minmax(150px, 1fr) 115px 92px auto;
  gap: 9px;
  align-items: center;
  border-bottom: 1px solid #ebeff2;
}
.fin-ledger-entry:last-child { border-bottom: 0; }
.fin-ledger-entry time strong, .fin-ledger-entry time small, .fin-entry-main strong, .fin-entry-main small { display: block; }
.fin-ledger-entry time strong { color: #657482; font-size: .55rem; }
.fin-ledger-entry time small { color: #96a0a8; font-size: .5rem; }
.fin-entry-symbol { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 8px; background: #e9f7f1; color: #23805f; font-size: .65rem; }
.fin-entry-symbol.is-debit { background: #fcecef; color: #be4051; }
.fin-entry-main { min-width: 0; }
.fin-entry-main strong, .fin-entry-main small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-entry-main strong { color: #293e52; font-size: .62rem; }
.fin-entry-main small { color: #89959e; font-size: .52rem; }
.fin-account-tag {
  overflow: hidden;
  padding: 4px 6px;
  border-radius: 6px;
  background: #f1f3f7;
  color: #667484;
  font-size: .52rem;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-ledger-entry > b { color: #29805f; font-size: .61rem; text-align: right; }
.fin-ledger-entry > b.is-debit { color: #bd4050; }
.fin-allocation-list { display: grid; gap: 13px; padding: 16px 17px; }
.fin-allocation-list article { display: grid; grid-template-columns: 1fr auto; gap: 4px 8px; align-items: center; }
.fin-allocation-list span, .fin-allocation-list small { color: #748390; font-size: .55rem; }
.fin-allocation-list strong { color: #30465a; font-size: .61rem; }
.fin-allocation-list article > div { height: 6px; overflow: hidden; border-radius: 999px; background: #edf1f3; }
.fin-allocation-list article > div i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #5d70d8, #8090e7); }
.fin-allocation-list small { text-align: right; }
.fin-reconcile-note { margin: 0 15px 15px; padding: 13px; border-radius: 10px; background: #eef8f4; }
.fin-reconcile-note span, .fin-reconcile-note small { display: block; color: #648176; font-size: .54rem; }
.fin-reconcile-note strong { display: block; margin: 3px 0; color: #1c7658; font-size: 1.05rem; }

.fin-approval-ribbon { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; overflow: hidden; border: 1px solid #dce3e8; border-radius: 14px; background: #fff; }
.fin-approval-ribbon article { padding: 14px 17px; border-right: 1px solid #e5eaee; }
.fin-approval-ribbon span, .fin-approval-ribbon strong { display: block; }
.fin-approval-ribbon span { color: #84919c; font-size: .56rem; }
.fin-approval-ribbon strong { margin-top: 4px; color: #2d4155; font-size: .84rem; }
.fin-approval-ribbon article.is-attention strong { color: #be4051; }
.fin-approval-ribbon button { min-width: 170px; border: 0; background: #5368d4; color: #fff; font-size: .6rem; font-weight: 820; }
.fin-payable-board { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: start; }
.fin-payable-column { overflow: hidden; border: 1px solid #dfe4e9; border-radius: 14px; background: #eef1f4; }
.fin-payable-column > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 13px 14px;
  border-top: 4px solid #7281d8;
  border-bottom: 1px solid #dfe4e9;
  background: #fff;
}
.fin-payable-column.is-danger > header { border-top-color: #d65b6a; }
.fin-payable-column.is-warning > header { border-top-color: #dfa03d; }
.fin-payable-column header span, .fin-payable-column header small { display: block; }
.fin-payable-column header span { color: #33485b; font-size: .67rem; font-weight: 820; }
.fin-payable-column header small { color: #8c98a1; font-size: .52rem; }
.fin-payable-column header strong { color: #2d4154; font-size: .7rem; }
.fin-payable-column > div { display: grid; gap: 9px; padding: 10px; }
.fin-payable-card { padding: 13px; border: 1px solid #e0e5e9; border-radius: 11px; background: #fff; box-shadow: 0 4px 12px rgba(24,40,59,.035); }
.fin-payable-card > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.fin-payable-card time, .fin-payable-card > div span {
  padding: 3px 6px;
  border-radius: 6px;
  background: #f1f3f6;
  color: #697886;
  font-size: .51rem;
  font-weight: 760;
}
.fin-payable-card h4 { margin: 10px 0 2px; color: #293e51; font-size: .68rem; }
.fin-payable-card p { margin: 0; color: #89959e; font-size: .54rem; }
.fin-payable-card > strong { display: block; margin-top: 11px; color: #2a3e51; font-size: .85rem; }
.fin-payable-card > button {
  width: 100%;
  height: 31px;
  margin-top: 10px;
  border: 0;
  border-radius: 7px;
  background: #f0f2fa;
  color: #5669cb;
  font-size: .54rem;
  font-weight: 800;
}
.fin-column-empty { display: grid; min-height: 100px; place-items: center; color: #8c98a1; font-size: .57rem; }

.fin-collection-hero { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; overflow: hidden; border-radius: 16px; background: linear-gradient(115deg, #17283f, #283e5f); color: #fff; box-shadow: 0 13px 30px rgba(20,36,59,.14); }
.fin-collection-hero > div { padding: 18px 20px; border-right: 1px solid rgba(255,255,255,.09); }
.fin-collection-hero span, .fin-collection-hero small { display: block; color: rgba(255,255,255,.6); font-size: .55rem; }
.fin-collection-hero strong { display: block; margin: 5px 0 2px; font-size: 1.05rem; }
.fin-collection-hero > button { min-width: 150px; border: 0; background: #6679df; color: #fff; font-size: .59rem; font-weight: 820; }
.fin-receivable-pipeline { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.fin-pipeline-stage { overflow: hidden; border: 1px solid #dde3e8; border-radius: 13px; background: #f0f2f5; }
.fin-pipeline-stage > header { padding: 13px; border-top: 4px solid #9aa5ae; border-bottom: 1px solid #e1e6ea; background: #fff; }
.fin-pipeline-stage.is-info > header { border-top-color: #5d71d9; }
.fin-pipeline-stage.is-danger > header { border-top-color: #d75c6c; }
.fin-pipeline-stage.is-positive > header { border-top-color: #36a77c; }
.fin-pipeline-stage header span, .fin-pipeline-stage header strong, .fin-pipeline-stage header small { display: block; }
.fin-pipeline-stage header span { color: #6f7d8a; font-size: .55rem; font-weight: 780; text-transform: uppercase; }
.fin-pipeline-stage header strong { margin: 4px 0 2px; color: #293f53; font-size: .84rem; }
.fin-pipeline-stage header small { color: #919ba3; font-size: .51rem; }
.fin-pipeline-stage > div { display: grid; gap: 8px; padding: 9px; }
.fin-receivable-card { display: grid; grid-template-columns: 1fr auto; gap: 6px 8px; padding: 11px; border: 1px solid #e1e6ea; border-radius: 10px; background: #fff; }
.fin-receivable-card > div { display: flex; min-width: 0; align-items: center; gap: 7px; }
.fin-receivable-card > div span {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 8px;
  background: #eef1fa;
  color: #586cca;
  font-size: .49rem;
  font-weight: 850;
}
.fin-receivable-card > div strong {
  overflow: hidden;
  color: #30465a;
  font-size: .59rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-receivable-card > b { color: #2b4256; font-size: .61rem; }
.fin-receivable-card > small { align-self: center; color: #8c98a1; font-size: .51rem; }
.fin-receivable-card > button {
  justify-self: end;
  padding: 3px 7px;
  border: 0;
  border-radius: 6px;
  background: #eef1fa;
  color: #5669c8;
  font-size: .5rem;
  font-weight: 800;
}
.fin-aging-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 15px 17px 18px; }
.fin-aging-grid article { padding: 0 14px; border-right: 1px solid #e7ebef; }
.fin-aging-grid article:first-child { padding-left: 0; }
.fin-aging-grid article:last-child { padding-right: 0; border-right: 0; }
.fin-aging-grid span, .fin-aging-grid small { display: block; color: #84919b; font-size: .53rem; }
.fin-aging-grid strong { display: block; margin: 4px 0 7px; color: #2a4054; font-size: .72rem; }
.fin-aging-grid article > div { height: 6px; overflow: hidden; margin-bottom: 5px; border-radius: 999px; background: #edf1f3; }
.fin-aging-grid article > div i { display: block; height: 100%; border-radius: inherit; background: #687ade; }
.fin-aging-grid article:nth-child(n+2) > div i { background: #d86574; }

.fin-bank-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.fin-bank-card {
  position: relative;
  overflow: hidden;
  padding: 17px 18px;
  border: 1px solid #dce3e8;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(22,37,59,.04);
}
.fin-bank-card::after {
  content: "";
  position: absolute;
  top: -24px;
  right: -24px;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  background: rgba(88,108,216,.08);
}
.fin-bank-card > div { display: flex; align-items: center; gap: 8px; }
.fin-bank-card > div span {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 9px;
  background: #edf0fc;
  color: #5367cc;
  font-size: .53rem;
  font-weight: 900;
}
.fin-bank-card > div small { color: #6d7c89; font-size: .59rem; font-weight: 760; }
.fin-bank-card > strong { display: block; margin: 13px 0 3px; color: #243a4e; font-size: 1.25rem; }
.fin-bank-card p { margin: 0; color: #8a969f; font-size: .53rem; }
.fin-bank-card p b { color: #23805f; }
.fin-bank-card > button {
  position: absolute;
  right: 15px;
  bottom: 15px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #566bce;
  font-size: .54rem;
  font-weight: 800;
}
.fin-bank-card.is-secondary > div span { background: #e9f7f2; color: #27805f; }
.fin-bank-card.is-investment > div span { background: #fff3df; color: #a86a10; }
.fin-cashflow-layout { display: grid; grid-template-columns: minmax(0, 1fr) 315px; gap: 14px; align-items: start; }
.fin-chart-key { display: flex; gap: 11px; }
.fin-chart-key span { display: flex; align-items: center; gap: 5px; color: #7d8994; font-size: .53rem; text-transform: none; }
.fin-chart-key i { width: 8px; height: 8px; border-radius: 2px; background: #43aa80; }
.fin-chart-key i.is-out { background: #d76573; }
.fin-forecast-chart { display: flex; height: 245px; gap: clamp(8px, 1.7vw, 20px); padding: 20px 22px 12px; }
.fin-forecast-day { display: grid; min-width: 0; flex: 1; grid-template-rows: 1fr 17px 15px 17px; text-align: center; }
.fin-forecast-bars { display: flex; align-items: end; justify-content: center; gap: 4px; border-bottom: 1px solid #dfe4e8; }
.fin-forecast-bars i { display: block; width: min(30%, 18px); border-radius: 5px 5px 1px 1px; background: #42aa80; }
.fin-forecast-bars i.is-out { background: #d66573; }
.fin-forecast-day > strong { color: #30465a; font-size: .58rem; }
.fin-forecast-day > small { color: #89959e; font-size: .5rem; }
.fin-forecast-day > span {
  overflow: hidden;
  color: #687684;
  font-size: .49rem;
  font-weight: 730;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-forecast-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid #e6eaee; }
.fin-forecast-summary > span { padding: 11px 14px; border-right: 1px solid #e6eaee; }
.fin-forecast-summary > span:last-child { border-right: 0; }
.fin-forecast-summary small, .fin-forecast-summary strong { display: block; }
.fin-forecast-summary small { color: #89959e; font-size: .51rem; }
.fin-forecast-summary strong { margin-top: 3px; color: #2c4256; font-size: .62rem; }
.fin-reconciliation-panel > div:nth-child(2) { padding: 5px 14px; }
.fin-reconciliation {
  display: grid;
  min-height: 58px;
  grid-template-columns: 29px 1fr auto;
  gap: 9px;
  align-items: center;
  border-bottom: 1px solid #e9edf0;
}
.fin-reconciliation:last-child { border-bottom: 0; }
.fin-reconciliation > span {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 8px;
  background: #e9f7f1;
  color: #23805f;
  font-size: .58rem;
  font-weight: 900;
}
.fin-reconciliation > span.is-warning { background: #fff2dd; color: #a86b12; }
.fin-reconciliation strong, .fin-reconciliation small { display: block; }
.fin-reconciliation strong { color: #30465a; font-size: .61rem; }
.fin-reconciliation small { color: #8b969f; font-size: .51rem; }
.fin-reconciliation > b { color: #23805f; font-size: .53rem; }
.fin-reconciliation > b.is-warning { color: #a86b12; }
.fin-reconciliation-panel > button {
  width: calc(100% - 28px);
  height: 35px;
  margin: 5px 14px 14px;
  border: 0;
  border-radius: 8px;
  background: #5368cf;
  color: #fff;
  font-size: .56rem;
  font-weight: 800;
}

.fin-dre-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) 360px; gap: 14px; align-items: start; }
.fin-statement-lines { padding: 8px 17px 13px; }
.fin-statement-line {
  display: grid;
  min-height: 48px;
  grid-template-columns: minmax(145px, .9fr) minmax(120px, 1fr) 110px 38px;
  gap: 11px;
  align-items: center;
  border-bottom: 1px solid #edf0f2;
}
.fin-statement-line > span { color: #657482; font-size: .61rem; }
.fin-statement-line > div { height: 6px; overflow: hidden; border-radius: 999px; background: #edf1f3; }
.fin-statement-line > div i { display: block; height: 100%; border-radius: inherit; background: #6376d8; }
.fin-statement-line.is-cost > div i, .fin-statement-line.is-deduction > div i { background: #d76a77; }
.fin-statement-line > strong { color: #30465a; font-size: .65rem; text-align: right; }
.fin-statement-line > small { color: #89959f; font-size: .53rem; text-align: right; }
.fin-statement-line.is-subtotal { margin-top: -1px; border-block: 1px solid #dfe4e8; background: #f8f9fb; }
.fin-statement-line.is-subtotal > span, .fin-statement-line.is-subtotal > strong { font-weight: 840; }
.fin-statement-line.is-result { margin-top: 7px; padding-inline: 9px; border: 0; border-radius: 9px; background: #eaf7f2; }
.fin-statement-line.is-result > span, .fin-statement-line.is-result > strong { color: #1d7758; font-weight: 900; }
.fin-statement-line.is-result > div { background: rgba(35,128,95,.12); }
.fin-statement-line.is-result > div i { background: #2a986f; }
.fin-margin-column { display: grid; gap: 14px; }
.fin-margin-list { display: grid; gap: 14px; padding: 17px; }
.fin-margin-list article { display: grid; grid-template-columns: 1fr auto; gap: 5px 8px; }
.fin-margin-list span, .fin-margin-list small { color: #74828f; font-size: .56rem; }
.fin-margin-list strong { color: #283e52; font-size: .68rem; }
.fin-margin-list article > div { height: 7px; overflow: hidden; border-radius: 999px; background: #edf0f3; }
.fin-margin-list article > div i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #596ed5, #4dad89); }
.fin-margin-list small { color: #24805f; text-align: right; }
.fin-unit-result > div:last-child { padding: 4px 15px 10px; }
.fin-unit-result article { display: grid; grid-template-columns: 1fr auto; gap: 2px 8px; padding: 10px 0; border-bottom: 1px solid #e9edf0; }
.fin-unit-result article:last-child { border-bottom: 0; }
.fin-unit-result span { color: #637382; font-size: .59rem; }
.fin-unit-result strong { color: #2d4357; font-size: .62rem; }
.fin-unit-result b { grid-column: 1 / -1; color: #8a969f; font-size: .51rem; font-weight: 650; }

.fin-partner-ribbon { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; overflow: hidden; border: 1px solid #dce3e8; border-radius: 14px; background: #fff; }
.fin-partner-ribbon article { padding: 14px 18px; border-right: 1px solid #e6eaee; }
.fin-partner-ribbon span, .fin-partner-ribbon small { display: block; color: #86929c; font-size: .55rem; }
.fin-partner-ribbon strong { display: block; margin: 4px 0 2px; color: #2a4053; font-size: 1rem; }
.fin-partner-ribbon button { min-width: 145px; border: 0; background: #5267d0; color: #fff; font-size: .59rem; font-weight: 820; }
.fin-partner-toolbar { padding-inline: 0; border: 0; }
.fin-partner-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
.fin-partner-card { overflow: hidden; border: 1px solid #dde4e9; border-radius: 14px; background: #fff; box-shadow: 0 5px 17px rgba(22,37,59,.04); }
.fin-partner-card header { display: grid; grid-template-columns: 42px 1fr auto; gap: 10px; align-items: center; padding: 14px; border-bottom: 1px solid #e8ecef; }
.fin-partner-card header > span {
  display: grid;
  width: 39px;
  height: 39px;
  place-items: center;
  border-radius: 11px;
  background: linear-gradient(145deg, #eef0fd, #e8edf9);
  color: #5165ca;
  font-size: .59rem;
  font-weight: 900;
}
.fin-partner-card header > div { min-width: 0; }
.fin-partner-card header small, .fin-partner-card header h3 {
  display: block;
  overflow: hidden;
  margin: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fin-partner-card header small { color: #87949e; font-size: .5rem; text-transform: uppercase; }
.fin-partner-card header h3 { margin-top: 3px; color: #2d4357; font-size: .66rem; }
.fin-partner-card header > b { padding: 3px 6px; border-radius: 999px; background: #e9f7f1; color: #23805f; font-size: .5rem; }
.fin-partner-card header > b.is-warning { background: #fff2dd; color: #a76b11; }
.fin-partner-body { display: grid; grid-template-columns: 1fr 1fr 64px; gap: 10px; align-items: center; padding: 15px; }
.fin-partner-body > span small, .fin-partner-body > span strong { display: block; }
.fin-partner-body > span small { color: #89959e; font-size: .51rem; }
.fin-partner-body > span strong { margin-top: 3px; color: #30465a; font-size: .63rem; }
.fin-score {
  display: grid;
  width: 57px;
  height: 57px;
  place-items: center;
  place-content: center;
  border-radius: 50%;
  background: conic-gradient(#5c70d6 var(--score), #e9edf1 0);
  box-shadow: inset 0 0 0 8px #fff;
}
.fin-score strong { font-size: .68rem; line-height: 1; }
.fin-score small { color: #88949e; font-size: .46rem; }
.fin-partner-card footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 14px;
  border-top: 1px solid #e8ecef;
  background: #fafbfc;
}
.fin-partner-card footer span { color: #8d98a1; font-size: .5rem; }
.fin-partner-card footer button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #5369ce;
  font-size: .52rem;
  font-weight: 800;
}

.sheet-tabs { display: none; }

/* ============================================
   PARKING — Estacionamento Modelo 180
   ============================================ */

body[data-demo="parking"] {
  --park-amber: #F2A93B;
  --park-green: #2EC4B6;
  --park-red: #C83D4B;
  --park-blue: #1776D2;
  --park-purple: #7A4FCB;
  --park-teal: #2C8DA8;
}

body[data-demo="parking"] .park-live {
  position: relative;
  overflow: hidden;
  margin-bottom: 14px;
  padding: 20px 22px;
  border-radius: 14px;
  background: radial-gradient(circle at 92% -20%, rgba(46,196,182,.28), transparent 38%), linear-gradient(118deg, #0F2A4A 0%, #133F6B 58%, #0E5E82 100%);
  color: #fff;
  box-shadow: 0 14px 32px rgba(16,47,80,.18);
}
body[data-demo="parking"] .park-live::after {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -140px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(255,255,255,.02), 0 0 0 68px rgba(255,255,255,.015);
  pointer-events: none;
}
body[data-demo="parking"] .park-live-head {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}
body[data-demo="parking"] .park-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #B6EDE3;
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
body[data-demo="parking"] .park-live-badge i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #5DE0BB;
  box-shadow: 0 0 0 5px rgba(93,224,187,.14);
  animation: park-pulse 1.8s ease-in-out infinite;
}
@keyframes park-pulse {
  0%, 100% { box-shadow: 0 0 0 5px rgba(93,224,187,.14); }
  50% { box-shadow: 0 0 0 9px rgba(93,224,187,.05); }
}
body[data-demo="parking"] .park-live-clock { font-size: 1.05rem; font-weight: 900; letter-spacing: -.02em; color: #fff; }
body[data-demo="parking"] .park-live-body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(240px, .65fr);
  gap: 22px;
  align-items: center;
}
body[data-demo="parking"] .park-live-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 13px;
  background: rgba(4,26,48,.24);
}
body[data-demo="parking"] .park-live-stats article {
  min-width: 0;
  padding: 15px 14px;
  border-right: 1px solid rgba(255,255,255,.1);
}
body[data-demo="parking"] .park-live-stats article:last-child { border-right: 0; }
body[data-demo="parking"] .park-live-stats span,
body[data-demo="parking"] .park-live-stats small {
  display: block;
  color: rgba(255,255,255,.65);
  font-size: .62rem;
  font-weight: 720;
}
body[data-demo="parking"] .park-live-stats strong {
  display: block;
  margin: 7px 0 4px;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: -.035em;
}
body[data-demo="parking"] .park-live-stats small { color: #93DCCE; font-size: .58rem; }
body[data-demo="parking"] .park-live-meter { min-width: 0; }
body[data-demo="parking"] .park-live-bar {
  position: relative;
  height: 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  overflow: visible;
}
body[data-demo="parking"] .park-live-bar i {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, #1776D2, #2EC4B6);
  box-shadow: 0 0 18px rgba(46,196,182,.45);
}
body[data-demo="parking"] .park-live-bar b {
  position: absolute;
  top: -20px;
  transform: translateX(-50%);
  color: #fff;
  font-size: .68rem;
  font-weight: 900;
}
body[data-demo="parking"] .park-live-legend { display: flex; gap: 16px; margin-top: 10px; color: rgba(255,255,255,.7); font-size: .62rem; }
body[data-demo="parking"] .park-live-legend span { display: inline-flex; align-items: center; gap: 6px; }
body[data-demo="parking"] .park-live-legend i { width: 10px; height: 10px; border-radius: 3px; background: linear-gradient(90deg, #1776D2, #2EC4B6); }
body[data-demo="parking"] .park-live-legend i.is-free { background: rgba(255,255,255,.3); }

body[data-demo="parking"] .park-ticket {
  overflow: hidden;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(17,45,68,.04);
}
body[data-demo="parking"] .park-ticket > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 18px;
  border-bottom: 1px solid #EDF1F3;
  background: linear-gradient(120deg, #F2F9FF, #F1FBF8);
}
body[data-demo="parking"] .park-ticket > header span {
  display: block;
  color: #168C72;
  font-size: .58rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
body[data-demo="parking"] .park-ticket > header h3 { margin: 3px 0 0; color: #173C5C; font-size: 1rem; }
body[data-demo="parking"] .park-ticket > header b {
  color: #2B5675;
  font-size: .72rem;
  font-weight: 800;
  padding: 6px 10px;
  border: 1px solid #C7DDF0;
  border-radius: 8px;
  background: #fff;
}
body[data-demo="parking"] .park-ticket-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 22px; padding: 20px 22px; }
body[data-demo="parking"] .park-ticket-fields { display: grid; gap: 12px; align-content: start; }
body[data-demo="parking"] .park-ticket-fields > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #E4EBEF;
  border-radius: 9px;
  background: #FAFCFD;
}
body[data-demo="parking"] .park-ticket-fields span { color: #7B8A97; font-size: .62rem; font-weight: 750; }
body[data-demo="parking"] .park-ticket-fields strong { color: #223A50; font-size: .74rem; font-weight: 800; }
body[data-demo="parking"] .park-ticket-calc { display: grid; gap: 9px; padding: 16px 18px; border: 1px solid #E4EBEF; border-radius: 11px; background: #FBFDFE; }
body[data-demo="parking"] .park-ticket-calc > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px dashed #E5EBEF;
}
body[data-demo="parking"] .park-ticket-calc > div:last-child { padding-bottom: 0; border-bottom: 0; }
body[data-demo="parking"] .park-ticket-calc span { color: #697987; font-size: .66rem; }
body[data-demo="parking"] .park-ticket-calc strong { color: #223A50; font-size: .74rem; font-weight: 800; }
body[data-demo="parking"] .park-ticket-total {
  margin-top: 4px;
  padding: 12px 14px !important;
  border: 0 !important;
  border-radius: 10px;
  background: linear-gradient(105deg, #2EC4B6, #1DA894);
  color: #fff;
}
body[data-demo="parking"] .park-ticket-total span { color: rgba(255,255,255,.92) !important; font-weight: 800; }
body[data-demo="parking"] .park-ticket-total strong { color: #fff !important; font-size: 1.15rem !important; letter-spacing: -.02em; }
body[data-demo="parking"] .park-ticket-action {
  display: block;
  width: calc(100% - 44px);
  height: 42px;
  margin: 0 22px 20px;
  border: 0;
  border-radius: 10px;
  background: #102F50;
  color: #fff;
  font-size: .74rem;
  font-weight: 850;
}
body[data-demo="parking"] .park-ticket-action:hover { background: #0A243E; }

body[data-demo="parking"] .park-member-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
body[data-demo="parking"] .park-member {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(17,45,68,.035);
  transition: box-shadow .15s ease, transform .15s ease;
}
body[data-demo="parking"] .park-member:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(17,45,68,.08); }
body[data-demo="parking"] .park-member header {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  gap: 11px;
  align-items: center;
  padding: 13px 15px;
  border-bottom: 1px solid #EDF1F3;
}
body[data-demo="parking"] .park-member-avatar {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 11px;
  background: linear-gradient(145deg, #EAF4FB, #E9F7F2);
  color: #1776D2;
  font-size: .68rem;
  font-weight: 900;
}
body[data-demo="parking"] .park-member header > div { min-width: 0; }
body[data-demo="parking"] .park-member header strong,
body[data-demo="parking"] .park-member header small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body[data-demo="parking"] .park-member header strong { color: #223A50; font-size: .78rem; }
body[data-demo="parking"] .park-member header small { margin-top: 2px; color: #7B8A97; font-size: .61rem; }
body[data-demo="parking"] .park-member-body {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 13px 15px;
  gap: 10px;
}
body[data-demo="parking"] .park-member-body > span { min-width: 0; }
body[data-demo="parking"] .park-member-body small,
body[data-demo="parking"] .park-member-body strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body[data-demo="parking"] .park-member-body small { color: #87949E; font-size: .55rem; text-transform: uppercase; letter-spacing: .03em; }
body[data-demo="parking"] .park-member-body strong { margin-top: 3px; color: #2D4859; font-size: .68rem; }
body[data-demo="parking"] .park-member > button {
  width: 100%;
  height: 38px;
  border: 0;
  border-top: 1px solid #EDF1F3;
  background: #FAFCFD;
  color: #1776D2;
  font-size: .64rem;
  font-weight: 820;
}
body[data-demo="parking"] .park-member > button:hover { background: #EAF4FB; }

body[data-demo="parking"] .park-map {
  overflow: hidden;
  margin-bottom: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(17,45,68,.04);
}
body[data-demo="parking"] .park-map > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 15px 18px;
  border-bottom: 1px solid #EDF1F3;
  background: linear-gradient(120deg, #0F2A4A, #14466F);
  color: #fff;
}
body[data-demo="parking"] .park-map > header span { display: block; color: #8FC7B8; font-size: .58rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
body[data-demo="parking"] .park-map > header h3 { margin: 3px 0 0; font-size: 1rem; letter-spacing: -.02em; }
body[data-demo="parking"] .park-map > header b {
  padding: 5px 10px;
  border-radius: 999px;
  background: rgba(46,196,182,.16);
  color: #7DE0CB;
  font-size: .6rem;
  font-weight: 850;
}
body[data-demo="parking"] .park-map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  padding: 12px 18px;
  border-bottom: 1px solid #EDF1F3;
  background: #FBFDFE;
  color: #667482;
  font-size: .62rem;
}
body[data-demo="parking"] .park-map-legend span { display: inline-flex; align-items: center; gap: 6px; }
body[data-demo="parking"] .park-map-legend i { width: 11px; height: 11px; border-radius: 3px; display: inline-block; }
body[data-demo="parking"] .park-map-legend i.is-livre { background: #E6EBEF; border: 1px solid #CBD5DC; }
body[data-demo="parking"] .park-map-legend i.is-avulso { background: #1776D2; }
body[data-demo="parking"] .park-map-legend i.is-mensalista { background: #2EC4B6; }
body[data-demo="parking"] .park-map-legend i.is-reservada { background: #F2A93B; }
body[data-demo="parking"] .park-map-legend i.is-pcd { background: #7A4FCB; }
body[data-demo="parking"] .park-map-legend i.is-idoso { background: #2C8DA8; }
body[data-demo="parking"] .park-map-legend i.is-blocked { background: #C83D4B; }

body[data-demo="parking"] .park-map-grid {
  display: grid;
  grid-template-columns: repeat(18, minmax(0, 1fr));
  gap: 4px;
  padding: 16px 18px;
  background: repeating-linear-gradient(135deg, #F8FAFB 0 12px, #F3F6F8 12px 24px);
}
body[data-demo="parking"] .park-space {
  display: grid;
  min-height: 34px;
  place-items: center;
  border-radius: 4px;
  font-size: .55rem;
  font-weight: 850;
  letter-spacing: -.01em;
  cursor: help;
  transition: transform .12s ease;
}
body[data-demo="parking"] .park-space:hover { transform: scale(1.08); z-index: 2; }
body[data-demo="parking"] .park-space.is-livre { background: #E6EBEF; color: #667482; border: 1px solid #D2DBE1; }
body[data-demo="parking"] .park-space.is-avulso { background: #1776D2; color: #fff; }
body[data-demo="parking"] .park-space.is-mensalista { background: #2EC4B6; color: #073D36; }
body[data-demo="parking"] .park-space.is-reservada { background: #F2A93B; color: #4A2C03; }
body[data-demo="parking"] .park-space.is-pcd { background: #7A4FCB; color: #fff; box-shadow: inset 0 0 0 2px rgba(255,255,255,.45); }
body[data-demo="parking"] .park-space.is-idoso { background: #2C8DA8; color: #fff; box-shadow: inset 0 0 0 2px rgba(255,255,255,.45); }
body[data-demo="parking"] .park-space.is-blocked { background: #C83D4B; color: #fff; }

body[data-demo="parking"] .park-shift-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
body[data-demo="parking"] .park-shift {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(17,45,68,.035);
}
body[data-demo="parking"] .park-shift header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid #EDF1F3;
  background: linear-gradient(120deg, #F4F9FD, #F2FBF8);
}
body[data-demo="parking"] .park-shift header span {
  display: block;
  color: #1776D2;
  font-size: .57rem;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
body[data-demo="parking"] .park-shift header strong { display: block; margin-top: 2px; color: #223A50; font-size: .88rem; }
body[data-demo="parking"] .park-shift header small { display: block; margin-top: 2px; color: #7B8A97; font-size: .6rem; }
body[data-demo="parking"] .park-shift header > b { color: #168C72; font-size: .88rem; font-weight: 900; letter-spacing: -.02em; }
body[data-demo="parking"] .park-shift-body {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 13px 16px;
  gap: 10px;
}
body[data-demo="parking"] .park-shift-body > span { min-width: 0; }
body[data-demo="parking"] .park-shift-body small,
body[data-demo="parking"] .park-shift-body strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
body[data-demo="parking"] .park-shift-body small { color: #87949E; font-size: .55rem; text-transform: uppercase; letter-spacing: .03em; }
body[data-demo="parking"] .park-shift-body strong { margin-top: 3px; color: #2D4859; font-size: .7rem; }
body[data-demo="parking"] .park-shift > button {
  width: 100%;
  height: 36px;
  border: 0;
  border-top: 1px solid #EDF1F3;
  background: #FAFCFD;
  color: #1776D2;
  font-size: .62rem;
  font-weight: 820;
}
body[data-demo="parking"] .park-shift > button:hover { background: #EAF4FB; }

body[data-demo="parking"] .park-highlights { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
body[data-demo="parking"] .park-highlight {
  position: relative;
  overflow: hidden;
  padding: 15px 16px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 4px 14px rgba(17,45,68,.035);
}
body[data-demo="parking"] .park-highlight::before {
  content: "";
  position: absolute;
  top: 0;
  left: 16px;
  right: 16px;
  height: 3px;
  border-radius: 0 0 6px 6px;
  background: #1776D2;
}
body[data-demo="parking"] .park-highlight.is-info::before { background: #2EC4B6; }
body[data-demo="parking"] .park-highlight.is-warning::before { background: #F2A93B; }
body[data-demo="parking"] .park-highlight > span { display: block; color: #87949E; font-size: .6rem; font-weight: 780; text-transform: uppercase; letter-spacing: .04em; }
body[data-demo="parking"] .park-highlight > strong { display: block; margin: 6px 0 3px; color: #223A50; font-size: 1.15rem; letter-spacing: -.02em; }
body[data-demo="parking"] .park-highlight > small { color: #697987; font-size: .6rem; }

/* ============================================
   RESPONSIVIDADE
   ============================================ */

@media (max-width: 1180px) {
  :root { --sidebar-width: 224px; }
  .workspace-toolbar { grid-template-columns: repeat(2, minmax(125px, 155px)) minmax(180px, 1fr) auto; }
  .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .executive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .executive-item:nth-child(2) { border-right: 0; }
  .executive-item:nth-child(-n+2) { border-bottom: 1px solid #edf1f3; }
  .pet-command { grid-template-columns: minmax(220px, .85fr) 140px minmax(330px, 1.2fr); gap: 20px; padding-inline: 23px; }
  .pet-gauge { width: 130px; height: 130px; }
  .pet-gauge::after { width: 100px; height: 100px; }
  .pet-command-stats article { padding-inline: 12px; }
  .pet-primary-grid { grid-template-columns: minmax(0, 1.35fr) minmax(280px, .75fr); }
  .pet-secondary-grid { grid-template-columns: minmax(0, 1.25fr) minmax(290px, .75fr); }
  .pet-agenda-layout { grid-template-columns: minmax(0, 1fr) 300px; }
  .pet-agenda-entry { grid-template-columns: 50px 36px minmax(100px, .8fr) minmax(120px, 1fr) 78px 75px 64px; gap: 8px; }
  .pet-client-layout { grid-template-columns: 250px minmax(0, 1fr); }
  .pet-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pet-register-hero { grid-template-columns: minmax(210px, .75fr) minmax(390px, 1.25fr); }
  .pet-register-hero > button { grid-column: 1 / -1; justify-self: end; margin-top: -8px; }
  .pet-cash-layout { grid-template-columns: minmax(0, 1fr) 315px; }
  .pet-report-hero { grid-template-columns: minmax(230px, .75fr) minmax(420px, 1.25fr); }
  .pet-analytics-grid { grid-template-columns: minmax(0, .8fr) minmax(390px, 1.2fr); }
  .pet-report-library { grid-template-columns: 190px minmax(0, 1fr); }
  .fin-balance-hero { grid-template-columns: minmax(260px, 1fr) minmax(250px, .8fr) 120px; gap: 20px; padding-inline: 24px; }
  .fin-health-seal { width: 110px; height: 110px; }
  .fin-dashboard-grid { grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr); }
  .fin-dashboard-bottom { grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr); }
  .fin-ledger-layout { grid-template-columns: minmax(0, 1fr) 285px; }
  .fin-ledger-entry { grid-template-columns: 45px 28px minmax(130px, 1fr) 92px 84px auto; gap: 7px; }
  .fin-receivable-pipeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fin-cashflow-layout { grid-template-columns: minmax(0, 1fr) 285px; }
  .fin-dre-layout { grid-template-columns: minmax(0, 1.3fr) 310px; }
  .fin-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-demo="parking"] .park-live-body { grid-template-columns: 1fr; gap: 18px; }
  body[data-demo="parking"] .park-live-stats article { padding: 13px 10px; }
  body[data-demo="parking"] .park-live-stats strong { font-size: 1.3rem; }
  body[data-demo="parking"] .park-ticket-grid { grid-template-columns: 1fr; gap: 16px; }
  body[data-demo="parking"] .park-shift-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-demo="parking"] .park-highlights { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pet-week { grid-template-columns: repeat(7, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
  :root { --notice-height: 48px; }
  body.menu-open { overflow: hidden; }
  .demo-notice { justify-content: space-between; gap: 12px; font-size: .68rem; }
  .demo-notice span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .demo-notice a { flex: 0 0 auto; }
  .demo-sidebar { width: min(310px, calc(100% - 44px)); transform: translateX(-105%); box-shadow: 18px 0 48px rgba(0,0,0,.22); transition: transform .22s ease; }
  .demo-sidebar.is-open { transform: none; }
  .sidebar-overlay { position: fixed; inset: var(--notice-height) 0 0; z-index: 70; display: block; border: 0; background: rgba(5,18,29,.5); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
  .sidebar-overlay.is-visible { opacity: 1; pointer-events: auto; }
  .demo-main { margin-left: 0; }
  .demo-topbar { min-height: 78px; padding: 12px 18px; }
  .menu-button { display: grid; place-items: center; }
  .profile-chip div { display: none; }
  .demo-workspace { padding: 18px 18px 32px; }
  .workspace-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-field { grid-column: 1 / -1; }
  .toolbar-action { grid-column: auto; justify-self: stretch; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .distribution { grid-template-columns: 160px minmax(180px, 1fr); min-height: 220px; }
  .pet-command { grid-template-columns: minmax(0, 1fr) 130px; gap: 18px; padding: 22px; }
  .pet-command-stats { grid-column: 1 / -1; }
  .pet-gauge { width: 122px; height: 122px; justify-self: end; }
  .pet-gauge::after { width: 94px; height: 94px; }
  .pet-primary-grid, .pet-secondary-grid { grid-template-columns: 1fr; }
  .pet-agenda-layout, .pet-client-layout, .pet-cash-layout, .pet-analytics-grid, .pet-report-hero, .pet-report-library { grid-template-columns: 1fr; }
  .pet-day-cash { display: grid; grid-template-columns: 1fr 1fr; }
  .pet-cash-hero { grid-row: 1 / 3; }
  .pet-cash-split { border-bottom: 0; }
  .pet-payment-breakdown { border-left: 1px solid #e8eef2; }
  .pet-product-sales { grid-column: 1; margin-top: 13px; }
  .pet-cash-button { grid-column: 2; align-self: end; }
  .pet-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pet-register-hero { grid-template-columns: 1fr; }
  .pet-register-hero > button { grid-column: auto; justify-self: stretch; margin-top: 0; }
  .pet-report-library > div:last-child { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pet-hero { grid-template-columns: 68px 1fr; gap: 14px; padding: 15px 17px; }
  .pet-hero-avatar { width: 60px; height: 60px; border-width: 5px; border-radius: 18px; }
  .pet-hero-action { grid-column: 1 / -1; justify-self: stretch; }
  .pet-week { grid-template-columns: repeat(7, 72px); overflow-x: auto; justify-content: start; }
  .fin-balance-hero { grid-template-columns: minmax(0, 1fr) 130px; }
  .fin-balance-projection { grid-column: 1; grid-row: 2; }
  .fin-health-seal { grid-column: 2; grid-row: 1 / 3; }
  .fin-metric-ribbon { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fin-metric-ribbon article:nth-child(2) { border-right: 0; }
  .fin-metric-ribbon article:nth-child(-n+2) { border-bottom: 1px solid #e7ebef; }
  .fin-dashboard-grid, .fin-dashboard-bottom, .fin-ledger-layout, .fin-cashflow-layout, .fin-dre-layout { grid-template-columns: 1fr; }
  .fin-entry-summary, .fin-approval-ribbon, .fin-collection-hero, .fin-partner-ribbon { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fin-entry-summary > button, .fin-approval-ribbon > button, .fin-collection-hero > button, .fin-partner-ribbon > button { grid-column: 1 / -1; min-height: 40px; }
  .fin-payable-board { grid-template-columns: repeat(3, minmax(250px, 1fr)); overflow-x: auto; padding-bottom: 4px; }
  .fin-receivable-pipeline { grid-template-columns: repeat(4, minmax(240px, 1fr)); overflow-x: auto; padding-bottom: 4px; }
  .fin-bank-grid { grid-template-columns: repeat(3, minmax(220px, 1fr)); overflow-x: auto; padding-bottom: 4px; }
  .fin-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-demo="parking"] .park-member-grid { grid-template-columns: 1fr; }
  body[data-demo="parking"] .park-map-grid { overflow-x: auto; grid-template-columns: repeat(18, 44px); }
  body[data-demo="parking"] .park-shift-grid { grid-template-columns: 1fr; }
}

@media (max-width: 580px) {
  .demo-notice { padding: 0 10px; }
  .demo-notice span { max-width: 62%; }
  .demo-topbar { min-height: 72px; padding: 10px 12px; }
  .page-heading p { display: none; }
  .page-heading h1 { font-size: 1.18rem; }
  .profile-chip > span { width: 34px; height: 34px; }
  .demo-workspace { padding: 14px 12px 28px; }
  .workspace-toolbar { grid-template-columns: 1fr 1fr; gap: 8px; }
  .workspace-toolbar label > span { font-size: .64rem; }
  .workspace-toolbar select, .workspace-toolbar input, .toolbar-action { height: 41px; font-size: .74rem; }
  .search-field { grid-column: 1 / -1; }
  .toolbar-action { grid-column: 1 / -1; }
  .module-intro { align-items: start; }
  .module-intro p { font-size: .76rem; }
  .module-state { display: none; }
  .kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .kpi-card { padding: 13px; }
  .kpi-label { font-size: .66rem; }
  .kpi-icon { width: 27px; height: 27px; }
  .kpi-value { margin-top: 9px; font-size: 1.18rem; }
  .dashboard-grid, .summary-grid { grid-template-columns: 1fr; gap: 9px; }
  .executive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .executive-item { padding: 13px 12px 14px; }
  .executive-item:nth-child(odd) { border-right: 1px solid #edf1f3; }
  .executive-item:nth-child(even) { border-right: 0; }
  .executive-item:nth-child(-n+2) { border-bottom: 1px solid #edf1f3; }
  .executive-item:nth-child(n+3) { border-bottom: 0; }
  .executive-item::before { left: 12px; }
  .executive-item-label { min-height: 2.6em; white-space: normal; }
  .executive-item strong { font-size: 1.05rem; }
  .executive-item-footer { align-items: flex-start; flex-direction: column; gap: 5px; }
  .executive-item-footer small { white-space: normal; line-height: 1.3; }
  .panel-header { padding-inline: 13px; }
  .chart-wrap { min-height: 200px; padding-inline: 8px; }
  .line-chart { height: 200px; }
  .distribution { grid-template-columns: 1fr; }
  .donut { width: 132px; height: 132px; }
  .donut::after { width: 78px; height: 78px; }
  .data-table { min-width: 640px; }
  .table-tools { align-items: start; padding: 13px; }
  .pet-dashboard { gap: 10px; }
  .pet-intro { margin-top: 0; }
  .pet-command { min-height: 0; grid-template-columns: minmax(0, 1fr) 102px; gap: 13px; padding: 18px 15px; border-radius: 15px; }
  .pet-command-copy h2 { margin-top: 10px; font-size: 1.65rem; }
  .pet-command-copy p { font-size: .71rem; }
  .pet-date { margin-top: 12px; font-size: .58rem; }
  .pet-gauge { width: 98px; height: 98px; }
  .pet-gauge::after { width: 76px; height: 76px; }
  .pet-gauge strong { font-size: 1.42rem; }
  .pet-gauge span { margin-top: 2px; font-size: .51rem; }
  .pet-command-stats { grid-column: 1 / -1; }
  .pet-command-stats article { padding: 12px 8px; }
  .pet-command-stats span { font-size: .55rem; }
  .pet-command-stats strong { margin-block: 5px 3px; font-size: 1.25rem; }
  .pet-command-stats small { overflow: hidden; font-size: .5rem; text-overflow: ellipsis; }
  .pet-panel-heading { min-height: 61px; padding-inline: 13px; }
  .pet-appointment { grid-template-columns: 43px 34px minmax(105px, 1fr) auto; gap: 8px; }
  .pet-appointment::before { left: 41px; }
  .pet-appointment-service { display: none; }
  .pet-appointment .status { padding-inline: 6px; font-size: .56rem; }
  .pet-service-row { grid-template-columns: minmax(100px, 1fr) minmax(70px, 1fr) 31px; }
  .pet-revenue-chart { height: 170px; gap: 6px; padding-inline: 12px; }
  .pet-revenue-column > span { display: none; }
  .pet-revenue-column { grid-template-rows: 1fr 18px; }
  .pet-revenue-footer > span { padding-inline: 10px; }
  .pet-day-strip { grid-template-columns: repeat(6, 72px); overflow-x: auto; justify-content: start; }
  .pet-day { min-height: 66px; }
  .pet-agenda-list { padding-inline: 10px; }
  .pet-agenda-entry { grid-template-columns: 43px 34px minmax(92px, 1fr) 64px 58px; gap: 7px; }
  .pet-agenda-service, .pet-agenda-entry > .status { display: none; }
  .pet-agenda-charge { text-align: right; }
  .pet-receive-button, .pet-paid { font-size: .53rem; }
  .pet-day-cash { display: block; }
  .pet-cash-hero { grid-row: auto; }
  .pet-payment-breakdown { border-left: 0; }
  .pet-product-sales, .pet-cash-button { grid-column: auto; }
  .pet-profile-header { grid-template-columns: 58px 1fr; gap: 12px; padding: 17px; }
  .pet-profile-avatar { width: 55px; height: 55px; border-width: 4px; border-radius: 18px; }
  .pet-profile-header button { grid-column: 1 / -1; }
  .pet-profile-facts { grid-template-columns: 1fr; }
  .pet-profile-facts article { padding: 11px 15px; border-right: 0; border-bottom: 1px solid #e7edf1; }
  .pet-profile-facts article:last-child { border-bottom: 0; }
  .pet-profile-grid { grid-template-columns: 1fr; padding: 11px; }
  .pet-relationship { grid-template-columns: 1fr 1fr; }
  .pet-relationship button { grid-column: 1 / -1; }
  .pet-stock-ribbon { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pet-stock-ribbon article:nth-child(2) { border-right: 0; }
  .pet-stock-ribbon article:nth-child(-n+2) { border-bottom: 1px solid #e5ecef; }
  .pet-product-grid { grid-template-columns: 1fr; }
  .pet-stock-toolbar { align-items: flex-start; flex-direction: column; }
  .pet-stock-toolbar > div { width: 100%; }
  .pet-register-hero { gap: 15px; padding: 20px 17px; }
  .pet-register-split article { padding: 11px 8px; }
  .pet-register-split strong { font-size: .7rem; }
  .pet-transaction-list { padding-inline: 10px; }
  .pet-transaction { grid-template-columns: 37px 31px minmax(100px, 1fr) 68px; gap: 7px; }
  .pet-transaction > .status { display: none; }
  .pet-report-hero { gap: 17px; padding: 20px 17px; }
  .pet-report-hero > div:last-child { grid-template-columns: 1fr; }
  .pet-report-hero article { padding: 11px 13px; border-right: 0; border-bottom: 1px solid #e2e9ed; }
  .pet-report-hero article:last-child { border-bottom: 0; }
  .pet-team-row { grid-template-columns: 24px minmax(90px, 1fr) 60px; }
  .pet-team-meter { display: none; }
  .pet-heatmap { overflow-x: auto; }
  .pet-heatmap-head, .pet-heatmap-row { min-width: 390px; }
  .pet-report-library { padding: 15px; }
  .pet-report-library > div:last-child { grid-template-columns: 1fr; }
  .pet-hero { grid-template-columns: 1fr; padding: 15px; }
  .pet-hero-avatar { width: 56px; height: 56px; font-size: 1.15rem; }
  .pet-hero-info h3 { font-size: 1.02rem; }
  .pet-week { grid-template-columns: repeat(7, 60px); }
  .pet-week-day { min-height: 72px; padding: 8px 4px; }
  .pet-week-day > strong { font-size: .98rem; }
  .fin-balance-hero { grid-template-columns: 1fr; gap: 15px; padding: 21px 18px; }
  .fin-balance-copy > strong { font-size: 2rem; }
  .fin-balance-projection, .fin-health-seal { grid-column: auto; grid-row: auto; }
  .fin-health-seal { width: 96px; height: 96px; justify-self: start; }
  .fin-health-seal strong { font-size: 1.55rem; }
  .fin-metric-ribbon article { padding: 13px 12px; }
  .fin-metric-ribbon strong { font-size: .88rem; }
  .fin-cash-bridge { height: 205px; gap: 7px; padding-inline: 10px; }
  .fin-bridge-step > strong { font-size: .52rem; }
  .fin-deadline { grid-template-columns: 38px 27px minmax(100px, 1fr) 70px; }
  .fin-deadline > .status { display: none; }
  .fin-dre-row { grid-template-columns: 105px 1fr 75px; }
  .fin-dre-row > small { display: none; }
  .fin-entry-summary, .fin-approval-ribbon, .fin-collection-hero, .fin-partner-ribbon { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fin-entry-summary > div { padding: 12px; }
  .fin-entry-summary > div:nth-child(2) { border-right: 0; }
  .fin-entry-summary > div:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid #e6ebef; }
  .fin-ledger-filters { align-items: flex-start; flex-direction: column; }
  .fin-ledger-entry { grid-template-columns: 40px 27px minmax(100px, 1fr) 82px; }
  .fin-account-tag, .fin-ledger-entry > .status { display: none; }
  .fin-approval-ribbon article:nth-child(2) { border-right: 0; }
  .fin-approval-ribbon article:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid #e5eaee; }
  .fin-payable-board { grid-template-columns: repeat(3, minmax(235px, 1fr)); }
  .fin-collection-hero > div { padding: 14px 12px; }
  .fin-collection-hero > div:nth-child(2) { border-right: 0; }
  .fin-collection-hero > div:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid rgba(255,255,255,.09); }
  .fin-aging-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 0; }
  .fin-aging-grid article:nth-child(2) { border-right: 0; }
  .fin-aging-grid article:nth-child(3) { padding-left: 0; }
  .fin-bank-grid { grid-template-columns: 1fr; overflow: visible; }
  .fin-forecast-chart { min-width: 520px; height: 225px; padding-inline: 14px; }
  .fin-forecast-panel { overflow-x: auto; }
  .fin-forecast-panel .fin-panel-title, .fin-forecast-panel .fin-forecast-summary { position: sticky; left: 0; min-width: calc(100vw - 24px); }
  .fin-forecast-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fin-forecast-summary > span:nth-child(2) { border-right: 0; }
  .fin-forecast-summary > span:nth-child(-n+2) { border-bottom: 1px solid #e6eaee; }
  .fin-statement-lines { padding-inline: 11px; }
  .fin-statement-line { grid-template-columns: minmax(115px, 1fr) 93px 31px; gap: 7px; }
  .fin-statement-line > div { display: none; }
  .fin-partner-ribbon article:nth-child(2) { border-right: 0; }
  .fin-partner-ribbon article:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid #e6eaee; }
  .fin-partner-toolbar { align-items: flex-start; flex-direction: column; }
  .fin-partner-grid { grid-template-columns: 1fr; }
  body[data-demo="parking"] .park-live { padding: 16px 15px; }
  body[data-demo="parking"] .park-live-head { flex-wrap: wrap; gap: 8px; }
  body[data-demo="parking"] .park-live-clock { font-size: .92rem; }
  body[data-demo="parking"] .park-live-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-demo="parking"] .park-live-stats article:nth-child(2) { border-right: 0; }
  body[data-demo="parking"] .park-live-stats article:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.1); }
  body[data-demo="parking"] .park-live-stats strong { font-size: 1.15rem; }
  body[data-demo="parking"] .park-ticket > header { flex-wrap: wrap; padding: 13px; }
  body[data-demo="parking"] .park-ticket > header b { font-size: .65rem; }
  body[data-demo="parking"] .park-ticket-grid { padding: 15px 13px; }
  body[data-demo="parking"] .park-ticket-action { width: calc(100% - 26px); margin: 0 13px 15px; }
  body[data-demo="parking"] .park-member-body { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-demo="parking"] .park-map-legend { padding: 10px 13px; font-size: .58rem; gap: 10px; }
  body[data-demo="parking"] .park-map-grid { padding: 12px 13px; gap: 3px; grid-template-columns: repeat(18, 38px); }
  body[data-demo="parking"] .park-space { min-height: 30px; font-size: .5rem; }
  body[data-demo="parking"] .park-highlights { grid-template-columns: 1fr; }
  body[data-demo="parking"] .park-shift header { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .001ms !important; animation-duration: .001ms !important; }
}

/* ============================================
   PET SHOP — expansão operacional v20260915-2
   Escopo exclusivo do Pet Shop
   ============================================ */
body[data-demo="petshop"] .pet-management-ribbon {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid #dce6ec;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(15,53,82,.045);
}
body[data-demo="petshop"] .pet-management-ribbon article { position: relative; min-width: 0; padding: 14px 16px; border-right: 1px solid #e8eef2; }
body[data-demo="petshop"] .pet-management-ribbon article:last-child { border-right: 0; }
body[data-demo="petshop"] .pet-management-ribbon article::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: #2e9cd6; opacity: .75; }
body[data-demo="petshop"] .pet-management-ribbon article:nth-child(2)::before { background: #8364d9; }
body[data-demo="petshop"] .pet-management-ribbon article:nth-child(3)::before { background: #2eb88c; }
body[data-demo="petshop"] .pet-management-ribbon article:nth-child(4)::before { background: #16765c; }
body[data-demo="petshop"] .pet-management-ribbon article.is-attention::before { background: #d97706; }
body[data-demo="petshop"] .pet-management-ribbon span,
body[data-demo="petshop"] .pet-management-ribbon small { display: block; overflow: hidden; color: #84929d; font-size: .55rem; text-overflow: ellipsis; white-space: nowrap; }
body[data-demo="petshop"] .pet-management-ribbon strong { display: block; margin: 5px 0 2px; color: #264258; font-size: 1rem; letter-spacing: -.025em; }
body[data-demo="petshop"] .pet-management-ribbon article.is-attention strong { color: #a7660d; }

body[data-demo="petshop"] .pet-grooming-screen { --groom-green: #1c8a6b; --groom-blue: #176fa8; }
body[data-demo="petshop"] .pet-groom-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(260px, .9fr) minmax(480px, 1.4fr) auto;
  gap: 24px;
  align-items: center;
  overflow: hidden;
  padding: 23px 25px;
  border-radius: 18px;
  background: radial-gradient(circle at 88% -25%, rgba(85,214,177,.34), transparent 36%), linear-gradient(118deg, #082f4d, #0a5270 55%, #117764);
  color: #fff;
  box-shadow: 0 16px 36px rgba(7,50,67,.17);
}
body[data-demo="petshop"] .pet-groom-hero > div:first-child { position: relative; z-index: 1; }
body[data-demo="petshop"] .pet-groom-hero > div:first-child > span { color: #91e2cb; font-size: .58rem; font-weight: 900; letter-spacing: .09em; }
body[data-demo="petshop"] .pet-groom-hero h3 { margin: 5px 0 3px; font-size: clamp(1.35rem,2.3vw,1.9rem); letter-spacing: -.04em; }
body[data-demo="petshop"] .pet-groom-hero p { margin: 0; color: rgba(255,255,255,.68); font-size: .65rem; }
body[data-demo="petshop"] .pet-groom-hero-stats { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 13px; background: rgba(3,35,48,.24); }
body[data-demo="petshop"] .pet-groom-hero-stats article { padding: 13px 12px; border-right: 1px solid rgba(255,255,255,.1); }
body[data-demo="petshop"] .pet-groom-hero-stats article:last-child { border-right: 0; }
body[data-demo="petshop"] .pet-groom-hero-stats small { display: block; color: rgba(255,255,255,.58); font-size: .51rem; }
body[data-demo="petshop"] .pet-groom-hero-stats strong { display: block; margin-top: 4px; font-size: .88rem; }
body[data-demo="petshop"] .pet-groom-hero > button { position: relative; z-index: 1; height: 39px; padding: 0 14px; border: 1px solid rgba(255,255,255,.25); border-radius: 10px; background: #fff; color: #0d695b; font-size: .61rem; font-weight: 850; }

body[data-demo="petshop"] .pet-flow-board { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); overflow: hidden; border: 1px solid #dbe5eb; border-radius: 14px; background: #fff; box-shadow: 0 5px 18px rgba(15,53,82,.04); }
body[data-demo="petshop"] .pet-flow-stage { position: relative; min-width: 0; padding: 13px 11px; border-right: 1px solid #e7edf1; }
body[data-demo="petshop"] .pet-flow-stage:last-child { border-right: 0; }
body[data-demo="petshop"] .pet-flow-stage::before { content: ""; position: absolute; top: 0; right: 10px; left: 10px; height: 3px; border-radius: 0 0 5px 5px; background: #3189ca; }
body[data-demo="petshop"] .pet-flow-stage.is-warning::before { background: #dda13f; }
body[data-demo="petshop"] .pet-flow-stage.is-positive::before { background: #35ad87; }
body[data-demo="petshop"] .pet-flow-stage span,
body[data-demo="petshop"] .pet-flow-stage small { display: block; overflow: hidden; color: #82909b; font-size: .52rem; text-overflow: ellipsis; white-space: nowrap; }
body[data-demo="petshop"] .pet-flow-stage strong { display: block; margin: 4px 0 1px; color: #29465b; font-size: 1.08rem; }

body[data-demo="petshop"] .pet-groom-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 14px; align-items: start; }
body[data-demo="petshop"] .pet-section-heading { display: flex; min-height: 53px; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
body[data-demo="petshop"] .pet-section-heading span { display: block; color: #18816a; font-size: .54rem; font-weight: 880; letter-spacing: .08em; }
body[data-demo="petshop"] .pet-section-heading h3 { margin: 2px 0 0; color: #29455a; font-size: .9rem; }
body[data-demo="petshop"] .pet-section-heading b { color: #758590; font-size: .57rem; }
body[data-demo="petshop"] .pet-section-heading > button { height: 32px; padding: 0 10px; border: 1px solid #cce0eb; border-radius: 8px; background: #fff; color: #216c96; font-size: .56rem; font-weight: 800; }
body[data-demo="petshop"] .pet-groom-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
body[data-demo="petshop"] .pet-groom-job { position: relative; overflow: hidden; border: 1px solid #dfe7ec; border-radius: 14px; background: #fff; box-shadow: 0 5px 17px rgba(15,53,82,.04); }
body[data-demo="petshop"] .pet-groom-job::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: #3189ca; }
body[data-demo="petshop"] .pet-groom-job.is-warning::before { background: #dfa13c; }
body[data-demo="petshop"] .pet-groom-job.is-positive::before { background: #35ac87; }
body[data-demo="petshop"] .pet-groom-job header { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 12px 13px; border-bottom: 1px solid #eaf0f3; background: #fbfdfe; }
body[data-demo="petshop"] .pet-groom-job header > div { min-width: 0; }
body[data-demo="petshop"] .pet-groom-job header small,
body[data-demo="petshop"] .pet-groom-job header h3,
body[data-demo="petshop"] .pet-groom-job header p { display: block; overflow: hidden; margin: 0; text-overflow: ellipsis; white-space: nowrap; }
body[data-demo="petshop"] .pet-groom-job header small { color: #8b98a1; font-size: .49rem; }
body[data-demo="petshop"] .pet-groom-job header h3 { margin-top: 1px; color: #29445a; font-size: .72rem; }
body[data-demo="petshop"] .pet-groom-job header p { margin-top: 1px; color: #7e8c96; font-size: .53rem; }
body[data-demo="petshop"] .pet-groom-job-body { display: grid; grid-template-columns: 1.25fr 1fr .65fr .65fr; gap: 7px; padding: 11px 13px; }
body[data-demo="petshop"] .pet-groom-job-body span { min-width: 0; }
body[data-demo="petshop"] .pet-groom-job-body small,
body[data-demo="petshop"] .pet-groom-job-body strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body[data-demo="petshop"] .pet-groom-job-body small { color: #909ba4; font-size: .48rem; }
body[data-demo="petshop"] .pet-groom-job-body strong { margin-top: 2px; color: #40586a; font-size: .55rem; }
body[data-demo="petshop"] .pet-groom-alert { display: flex; align-items: center; justify-content: space-between; gap: 9px; margin: 0 13px 10px; padding: 7px 9px; border-radius: 8px; background: #fff8e9; }
body[data-demo="petshop"] .pet-groom-alert span { color: #9b6b1c; font-size: .49rem; font-weight: 800; text-transform: uppercase; }
body[data-demo="petshop"] .pet-groom-alert strong { overflow: hidden; color: #765623; font-size: .53rem; text-overflow: ellipsis; white-space: nowrap; }
body[data-demo="petshop"] .pet-groom-job footer { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: 10px; align-items: center; padding: 10px 13px; border-top: 1px solid #eaf0f3; }
body[data-demo="petshop"] .pet-groom-job footer small,
body[data-demo="petshop"] .pet-groom-job footer strong { display: block; }
body[data-demo="petshop"] .pet-groom-job footer small { color: #909ba4; font-size: .47rem; }
body[data-demo="petshop"] .pet-groom-job footer strong { color: #52697a; font-size: .53rem; }
body[data-demo="petshop"] .pet-groom-job footer > b { color: #1d795f; font-size: .65rem; }
body[data-demo="petshop"] .pet-groom-job footer > button { height: 29px; padding: 0 8px; border: 0; border-radius: 7px; background: #edf6fb; color: #256f99; font-size: .51rem; font-weight: 800; }
body[data-demo="petshop"] .pet-groom-sidebar { display: grid; gap: 12px; }
body[data-demo="petshop"] .pet-supply-list,
body[data-demo="petshop"] .pet-commission-list { padding: 4px 14px 9px; }
body[data-demo="petshop"] .pet-supply-row { display: grid; min-height: 57px; grid-template-columns: minmax(0,1fr) auto 58px; gap: 8px; align-items: center; border-bottom: 1px solid #ebf0f3; }
body[data-demo="petshop"] .pet-supply-row:last-child { border-bottom: 0; }
body[data-demo="petshop"] .pet-supply-row strong,
body[data-demo="petshop"] .pet-supply-row small { display: block; }
body[data-demo="petshop"] .pet-supply-row strong { color: #334f62; font-size: .57rem; }
body[data-demo="petshop"] .pet-supply-row small { color: #909ba3; font-size: .48rem; }
body[data-demo="petshop"] .pet-supply-row > b { color: #2b765f; font-size: .56rem; }
body[data-demo="petshop"] .pet-supply-row > span { padding: 3px 5px; border-radius: 999px; background: #fff3de; color: #a46b13; font-size: .47rem; text-align: center; }
body[data-demo="petshop"] .pet-commission-head,
body[data-demo="petshop"] .pet-commission-row { display: grid; grid-template-columns: minmax(0,1fr) 67px 67px; gap: 8px; align-items: center; }
body[data-demo="petshop"] .pet-commission-head { padding: 7px 0; color: #8c98a1; font-size: .47rem; text-transform: uppercase; }
body[data-demo="petshop"] .pet-commission-head span:not(:first-child) { text-align: right; }
body[data-demo="petshop"] .pet-commission-row { min-height: 52px; border-top: 1px solid #edf1f3; }
body[data-demo="petshop"] .pet-commission-row strong,
body[data-demo="petshop"] .pet-commission-row small { display: block; }
body[data-demo="petshop"] .pet-commission-row strong { color: #324d61; font-size: .56rem; }
body[data-demo="petshop"] .pet-commission-row small { color: #8e9aa3; font-size: .48rem; }
body[data-demo="petshop"] .pet-commission-row > span,
body[data-demo="petshop"] .pet-commission-row > b { color: #465f72; font-size: .54rem; text-align: right; }
body[data-demo="petshop"] .pet-commission-row > b { color: #1a7d61; }
body[data-demo="petshop"] .pet-package-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
body[data-demo="petshop"] .pet-package-card { display: grid; grid-template-columns: 1fr 1fr; gap: 9px 14px; padding: 15px 16px; border: 1px solid #dfe7ec; border-radius: 13px; background: linear-gradient(145deg,#fff,#f8fcfb); box-shadow: 0 4px 15px rgba(15,53,82,.035); }
body[data-demo="petshop"] .pet-package-card > span,
body[data-demo="petshop"] .pet-package-card h3,
body[data-demo="petshop"] .pet-package-card footer { grid-column: 1 / -1; }
body[data-demo="petshop"] .pet-package-card > span { color: #19816a; font-size: .49rem; font-weight: 850; letter-spacing: .08em; }
body[data-demo="petshop"] .pet-package-card h3 { margin: -5px 0 1px; color: #29465a; font-size: .73rem; }
body[data-demo="petshop"] .pet-package-card small,
body[data-demo="petshop"] .pet-package-card strong { display: block; }
body[data-demo="petshop"] .pet-package-card small { color: #8d99a2; font-size: .48rem; }
body[data-demo="petshop"] .pet-package-card strong { margin-top: 2px; color: #385368; font-size: .6rem; }
body[data-demo="petshop"] .pet-package-card footer { padding-top: 8px; border-top: 1px solid #e9efed; color: #18775f; font-size: .61rem; font-weight: 850; }
body[data-demo="petshop"] .pet-whatsapp-strip { display: grid; grid-template-columns: minmax(260px,1fr) minmax(430px,1.35fr) auto; gap: 20px; align-items: center; padding: 19px 21px; border: 1px solid #d9e9e3; border-radius: 15px; background: linear-gradient(110deg,#effaf6,#f7fcfa); }
body[data-demo="petshop"] .pet-whatsapp-strip > div:first-child > span { color: #197b63; font-size: .5rem; font-weight: 900; letter-spacing: .08em; }
body[data-demo="petshop"] .pet-whatsapp-strip h3 { margin: 3px 0; color: #29475b; font-size: .82rem; }
body[data-demo="petshop"] .pet-whatsapp-strip p { margin: 0; color: #758790; font-size: .55rem; }
body[data-demo="petshop"] .pet-whatsapp-strip > div:nth-child(2) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow: hidden; border: 1px solid #dfe9e5; border-radius: 10px; background: rgba(255,255,255,.72); }
body[data-demo="petshop"] .pet-whatsapp-strip article { padding: 10px 11px; border-right: 1px solid #e5ece9; }
body[data-demo="petshop"] .pet-whatsapp-strip article:last-child { border-right: 0; }
body[data-demo="petshop"] .pet-whatsapp-strip small { display: block; color: #82918e; font-size: .47rem; }
body[data-demo="petshop"] .pet-whatsapp-strip strong { display: block; margin-top: 2px; color: #217760; font-size: .7rem; }
body[data-demo="petshop"] .pet-whatsapp-strip > button { height: 36px; padding: 0 12px; border: 0; border-radius: 9px; background: #15765d; color: #fff; font-size: .55rem; font-weight: 820; }

@media (max-width: 1180px) {
  body[data-demo="petshop"] .pet-management-ribbon { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body[data-demo="petshop"] .pet-management-ribbon article:nth-child(3) { border-right: 0; }
  body[data-demo="petshop"] .pet-groom-hero { grid-template-columns: 1fr; gap: 15px; }
  body[data-demo="petshop"] .pet-groom-hero-stats { max-width: 720px; }
  body[data-demo="petshop"] .pet-groom-hero > button { justify-self: start; }
  body[data-demo="petshop"] .pet-flow-board { grid-template-columns: repeat(4,minmax(0,1fr)); }
  body[data-demo="petshop"] .pet-groom-grid { grid-template-columns: 1fr; }
  body[data-demo="petshop"] .pet-whatsapp-strip { grid-template-columns: 1fr; }
  body[data-demo="petshop"] .pet-whatsapp-strip > button { justify-self: start; }
}
@media (max-width: 860px) {
  body[data-demo="petshop"] .pet-management-ribbon { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body[data-demo="petshop"] .pet-management-ribbon article { border-bottom: 1px solid #e8eef2; }
  body[data-demo="petshop"] .pet-groom-layout { grid-template-columns: 1fr; }
  body[data-demo="petshop"] .pet-package-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  body[data-demo="petshop"] .pet-management-ribbon { grid-template-columns: 1fr 1fr; }
  body[data-demo="petshop"] .pet-groom-hero-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body[data-demo="petshop"] .pet-flow-board { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body[data-demo="petshop"] .pet-groom-job-body { grid-template-columns: 1fr 1fr; }
  body[data-demo="petshop"] .pet-groom-job footer { grid-template-columns: 1fr auto; }
  body[data-demo="petshop"] .pet-groom-job footer > button { grid-column: 1 / -1; }
  body[data-demo="petshop"] .pet-whatsapp-strip > div:nth-child(2) { grid-template-columns: 1fr; }
  body[data-demo="petshop"] .pet-whatsapp-strip article { border-right: 0; border-bottom: 1px solid #e5ece9; }
  body[data-demo="petshop"] .pet-whatsapp-strip article:last-child { border-bottom: 0; }
}

/* ============================================
   PARKING — Central de gestão e operação v20260915-4
   Escopo exclusivo do estacionamento
   ============================================ */
body[data-demo="parking"] {
  --park-navy: #102f50;
  --park-blue: #1776d2;
  --park-teal: #2ec4b6;
  --park-amber: #f2a93b;
  --park-red: #c83d4b;
  --park-soft: #f4f8fb;
}
body[data-demo="parking"] .demo-nav { gap: 3px; padding-top: 10px; }
body[data-demo="parking"] .demo-nav-section {
  display: block;
  margin: 8px 11px 2px;
  color: rgba(255,255,255,.42);
  font-size: .55rem;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
body[data-demo="parking"] .demo-nav button { min-height: 40px; }
body[data-demo="parking"] .demo-nav button.is-active { box-shadow: 0 7px 18px rgba(2,18,32,.16); }
body[data-demo="parking"] .workspace-toolbar[data-view="patio"],
body[data-demo="parking"] .workspace-toolbar[data-view="movimentacao"],
body[data-demo="parking"] .workspace-toolbar[data-view="mensalistas"],
body[data-demo="parking"] .workspace-toolbar[data-view="tarifas"],
body[data-demo="parking"] .workspace-toolbar[data-view="financeiro"],
body[data-demo="parking"] .workspace-toolbar[data-view="administracao"] { grid-template-columns: minmax(280px, 1fr) auto; }
body[data-demo="parking"] .park-screen { display: grid; gap: 14px; }
body[data-demo="parking"] .park-operation-hero {
  display: grid;
  grid-template-columns: minmax(220px,.7fr) minmax(360px,1.3fr) auto;
  gap: 24px;
  align-items: center;
  padding: 22px 24px;
  border-radius: 16px;
  background: linear-gradient(118deg, #0d2947, #124b76 70%, #116f79);
  color: #fff;
  box-shadow: 0 14px 32px rgba(16,47,80,.16);
}
body[data-demo="parking"] .park-operation-hero > div:first-child > span,
body[data-demo="parking"] .park-operation-hero > div:first-child > p { display:block; margin:0; color:rgba(255,255,255,.68); font-size:.65rem; }
body[data-demo="parking"] .park-operation-hero > div:first-child > strong { display:block; margin:5px 0 4px; font-size:2.25rem; line-height:1; letter-spacing:-.05em; }
body[data-demo="parking"] .park-operation-hero > div:first-child > strong small { font-size:.82rem; color:rgba(255,255,255,.65); letter-spacing:0; }
body[data-demo="parking"] .park-occupancy > div { height:10px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.14); }
body[data-demo="parking"] .park-occupancy > div i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#1776d2,#2ec4b6); }
body[data-demo="parking"] .park-occupancy { display:grid; grid-template-columns:repeat(4,1fr); gap:8px 12px; }
body[data-demo="parking"] .park-occupancy > div { grid-column:1/-1; }
body[data-demo="parking"] .park-occupancy > span { color:rgba(255,255,255,.76); font-size:.61rem; }
body[data-demo="parking"] .park-hero-actions, body[data-demo="parking"] .park-patio-actions, body[data-demo="parking"] .park-cash-actions { display:flex; flex-wrap:wrap; gap:8px; }
body[data-demo="parking"] .park-hero-actions { justify-content:flex-end; }
body[data-demo="parking"] .park-action {
  min-height:38px;
  padding:0 14px;
  border:1px solid #cbd9e4;
  border-radius:9px;
  background:#fff;
  color:#24445f;
  font-size:.66rem;
  font-weight:850;
}
body[data-demo="parking"] .park-action:hover { background:#edf5fb; }
body[data-demo="parking"] .park-action.is-primary { border-color:#1776d2; background:#1776d2; color:#fff; }
body[data-demo="parking"] .park-action.is-primary:hover { background:#0f63b5; }
body[data-demo="parking"] .park-action.is-ghost { border-color:rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; }
body[data-demo="parking"] .park-management-ribbon {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden;
  border:1px solid var(--line); border-radius:13px; background:#fff;
}
body[data-demo="parking"] .park-management-ribbon article { padding:13px 16px; border-right:1px solid #e9eef2; }
body[data-demo="parking"] .park-management-ribbon article:last-child { border-right:0; }
body[data-demo="parking"] .park-management-ribbon span, body[data-demo="parking"] .park-management-ribbon small { display:block; color:#82909b; font-size:.55rem; }
body[data-demo="parking"] .park-management-ribbon strong { display:block; margin:4px 0 2px; color:#29445a; font-size:.92rem; }
body[data-demo="parking"] .park-management-ribbon article.is-attention strong { color:#b73749; }
body[data-demo="parking"] .park-dashboard-bottom { display:grid; grid-template-columns:330px minmax(0,1fr); gap:14px; align-items:start; }
body[data-demo="parking"] .park-alert-list { display:grid; gap:0; padding:4px 14px 9px; }
body[data-demo="parking"] .park-alert { padding:10px 0; border-bottom:1px solid #edf1f3; }
body[data-demo="parking"] .park-alert:last-child { border-bottom:0; }
body[data-demo="parking"] .park-alert span, body[data-demo="parking"] .park-alert strong, body[data-demo="parking"] .park-alert small { display:block; }
body[data-demo="parking"] .park-alert span { color:#8a969f; font-size:.5rem; font-weight:850; text-transform:uppercase; }
body[data-demo="parking"] .park-alert strong { margin:2px 0; color:#2a4459; font-size:.64rem; }
body[data-demo="parking"] .park-alert small { color:#87949e; font-size:.54rem; }
body[data-demo="parking"] .park-alert.is-negative span { color:#b73749; }
body[data-demo="parking"] .park-alert.is-warning span { color:#a56d15; }
body[data-demo="parking"] .park-alert.is-info span { color:#1766ad; }
body[data-demo="parking"] .park-key-0 { background:#1776d2 !important; } body[data-demo="parking"] .park-key-1 { background:#2ec4b6 !important; } body[data-demo="parking"] .park-key-2 { background:#f2a93b !important; } body[data-demo="parking"] .park-key-3 { background:#7a4fcb !important; }
body[data-demo="parking"] .park-donut { background:conic-gradient(#1776d2 0 68%,#2ec4b6 68% 92%,#f2a93b 92% 98%,#7a4fcb 98% 100%); }

body[data-demo="parking"] .park-patio-head {
  display:grid; grid-template-columns:210px minmax(250px,1fr) minmax(330px,1.2fr) auto; gap:22px; align-items:center;
  padding:18px 20px; border:1px solid #d9e3ea; border-radius:15px; background:#fff; box-shadow:0 6px 20px rgba(17,45,68,.045);
}
body[data-demo="parking"] .park-patio-head > div:first-child span, body[data-demo="parking"] .park-patio-head > div:first-child small { display:block; color:#80909c; font-size:.57rem; }
body[data-demo="parking"] .park-patio-head > div:first-child strong { display:block; margin:3px 0; color:#173c5c; font-size:1.65rem; letter-spacing:-.04em; }
body[data-demo="parking"] .park-patio-meter { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:center; }
body[data-demo="parking"] .park-patio-meter > div { height:9px; overflow:hidden; border-radius:999px; background:#edf2f5; }
body[data-demo="parking"] .park-patio-meter i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#1776d2,#2ec4b6); }
body[data-demo="parking"] .park-patio-meter b { color:#1766ad; font-size:.72rem; }
body[data-demo="parking"] .park-patio-mini { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid #e1e8ed; border-radius:10px; }
body[data-demo="parking"] .park-patio-mini span { padding:9px 10px; border-right:1px solid #e7edf1; }
body[data-demo="parking"] .park-patio-mini span:last-child { border-right:0; }
body[data-demo="parking"] .park-patio-mini small, body[data-demo="parking"] .park-patio-mini strong { display:block; }
body[data-demo="parking"] .park-patio-mini small { color:#88949e; font-size:.49rem; }
body[data-demo="parking"] .park-patio-mini strong { margin-top:2px; color:#28475e; font-size:.69rem; }
body[data-demo="parking"] .park-filter-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
body[data-demo="parking"] .park-filter-row > div { display:flex; gap:5px; overflow-x:auto; }
body[data-demo="parking"] .park-filter-row button { min-height:32px; padding:0 10px; border:1px solid #d8e1e7; border-radius:999px; background:#fff; color:#677986; font-size:.55rem; font-weight:780; white-space:nowrap; }
body[data-demo="parking"] .park-filter-row button.is-active { border-color:#1776d2; background:#1776d2; color:#fff; }
body[data-demo="parking"] .park-filter-row > span { color:#89959f; font-size:.55rem; white-space:nowrap; }
body[data-demo="parking"] .park-plate { display:block; color:#173c5c; letter-spacing:.03em; }
body[data-demo="parking"] .park-inline-action { min-height:28px; padding:0 9px; border:0; border-radius:7px; background:#eaf4fb; color:#1766ad; font-size:.54rem; font-weight:850; }
body[data-demo="parking"] .park-inline-action:hover { background:#1776d2; color:#fff; }
body[data-demo="parking"] .park-patio-table .data-table { min-width:1120px; }

body[data-demo="parking"] .park-flow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
body[data-demo="parking"] .park-flow-grid article { display:grid; align-content:start; min-height:190px; padding:17px; border:1px solid #dde5ea; border-radius:13px; background:#fff; box-shadow:0 4px 14px rgba(17,45,68,.035); }
body[data-demo="parking"] .park-flow-grid article > span { color:#1776d2; font-size:.55rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
body[data-demo="parking"] .park-flow-grid article > strong { display:block; margin:7px 0 5px; color:#243f55; font-size:.76rem; }
body[data-demo="parking"] .park-flow-grid article > p { margin:0 0 14px; color:#7b8994; font-size:.61rem; }
body[data-demo="parking"] .park-flow-grid article .park-action { margin-top:auto; justify-self:start; }

body[data-demo="parking"] .park-member-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid #dce4ea; border-radius:13px; background:#fff; }
body[data-demo="parking"] .park-member-summary article { padding:14px 17px; border-right:1px solid #e7edf1; }
body[data-demo="parking"] .park-member-summary article:last-child { border-right:0; }
body[data-demo="parking"] .park-member-summary span, body[data-demo="parking"] .park-member-summary small { display:block; color:#84919b; font-size:.55rem; }
body[data-demo="parking"] .park-member-summary strong { display:block; margin:4px 0 2px; color:#29445a; font-size:1rem; }
body[data-demo="parking"] .park-member-summary .is-negative strong { color:#bd3f50; } body[data-demo="parking"] .park-member-summary .is-warning strong { color:#a86b12; }
body[data-demo="parking"] .park-member-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; }
body[data-demo="parking"] .park-member-toolbar > div { display:flex; gap:5px; overflow-x:auto; }
body[data-demo="parking"] .park-member-toolbar > div button { height:32px; padding:0 10px; border:1px solid #d8e1e7; border-radius:8px; background:#fff; color:#6b7b88; font-size:.54rem; font-weight:770; white-space:nowrap; }
body[data-demo="parking"] .park-member-toolbar > div button.is-active { border-color:#1776d2; background:#1776d2; color:#fff; }
body[data-demo="parking"] .park-member-grid-v2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
body[data-demo="parking"] .park-member-v2 { overflow:hidden; border:1px solid #dce4e9; border-radius:13px; background:#fff; box-shadow:0 4px 14px rgba(17,45,68,.035); }
body[data-demo="parking"] .park-member-v2::before { content:""; display:block; height:3px; background:#2eaa80; }
body[data-demo="parking"] .park-member-v2.is-negative::before { background:#c83d4b; } body[data-demo="parking"] .park-member-v2.is-warning::before { background:#f2a93b; }
body[data-demo="parking"] .park-member-v2 header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 15px; border-bottom:1px solid #ebeff2; }
body[data-demo="parking"] .park-member-v2 header div { min-width:0; }
body[data-demo="parking"] .park-member-v2 header span:first-child, body[data-demo="parking"] .park-member-v2 header small { display:block; color:#8b97a0; font-size:.5rem; }
body[data-demo="parking"] .park-member-v2 header h3 { margin:2px 0; color:#29445a; font-size:.72rem; }
body[data-demo="parking"] .park-member-v2-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; padding:14px 15px; }
body[data-demo="parking"] .park-member-v2-body span.is-wide { grid-column:1/-1; }
body[data-demo="parking"] .park-member-v2-body small, body[data-demo="parking"] .park-member-v2-body strong { display:block; }
body[data-demo="parking"] .park-member-v2-body small { color:#89959f; font-size:.5rem; text-transform:uppercase; }
body[data-demo="parking"] .park-member-v2-body strong { margin-top:2px; color:#304b60; font-size:.61rem; }
body[data-demo="parking"] .park-member-v2 footer { display:flex; gap:8px; padding:10px 15px; border-top:1px solid #ebeff2; background:#fafcfd; }
body[data-demo="parking"] .park-member-v2 footer button { border:0; background:transparent; color:#1766ad; font-size:.53rem; font-weight:820; }

body[data-demo="parking"] .park-rate-note { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; border-radius:13px; background:linear-gradient(110deg,#eef7fd,#f0faf7); border:1px solid #d9e7ec; }
body[data-demo="parking"] .park-rate-note span, body[data-demo="parking"] .park-rate-note strong { display:block; }
body[data-demo="parking"] .park-rate-note span { color:#168c72; font-size:.55rem; font-weight:850; text-transform:uppercase; }
body[data-demo="parking"] .park-rate-note strong { margin-top:3px; color:#29465b; font-size:.67rem; }
body[data-demo="parking"] .park-rate-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
body[data-demo="parking"] .park-rate-card { overflow:hidden; border:1px solid #dce4e9; border-radius:13px; background:#fff; }
body[data-demo="parking"] .park-rate-card header { display:grid; grid-template-columns:1fr auto; gap:2px 8px; padding:13px 15px; border-bottom:1px solid #e9eef2; background:#fafcfd; }
body[data-demo="parking"] .park-rate-card header span { color:#1776d2; font-size:.5rem; font-weight:850; text-transform:uppercase; }
body[data-demo="parking"] .park-rate-card header h3 { grid-column:1; margin:0; color:#29445a; font-size:.7rem; }
body[data-demo="parking"] .park-rate-card header b { grid-column:2; grid-row:1/3; align-self:center; }
body[data-demo="parking"] .park-rate-card > div { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); padding:14px 15px; }
body[data-demo="parking"] .park-rate-card > div span { padding:0 8px; border-right:1px solid #edf0f2; }
body[data-demo="parking"] .park-rate-card > div span:first-child { padding-left:0; } body[data-demo="parking"] .park-rate-card > div span:last-child { border-right:0; }
body[data-demo="parking"] .park-rate-card small, body[data-demo="parking"] .park-rate-card strong { display:block; }
body[data-demo="parking"] .park-rate-card small { color:#89959f; font-size:.48rem; } body[data-demo="parking"] .park-rate-card strong { margin-top:2px; color:#304b60; font-size:.58rem; }
body[data-demo="parking"] .park-rate-card > button { width:100%; height:36px; border:0; border-top:1px solid #e9eef2; background:#fafcfd; color:#1766ad; font-size:.55rem; font-weight:820; }
body[data-demo="parking"] .park-feature-tags { display:flex; flex-wrap:wrap; gap:7px; padding:14px 16px 17px; }
body[data-demo="parking"] .park-feature-tags span { padding:6px 9px; border-radius:999px; background:#eef5fa; color:#557083; font-size:.54rem; font-weight:730; }

body[data-demo="parking"] .park-cash-hero { display:grid; grid-template-columns:minmax(240px,.8fr) minmax(420px,1.4fr) minmax(180px,.7fr); gap:0; overflow:hidden; border-radius:15px; background:linear-gradient(115deg,#102f50,#174c72); color:#fff; }
body[data-demo="parking"] .park-cash-hero > div:first-child, body[data-demo="parking"] .park-cash-hero > article { padding:19px 20px; }
body[data-demo="parking"] .park-cash-hero > div:first-child span, body[data-demo="parking"] .park-cash-hero > div:first-child small, body[data-demo="parking"] .park-cash-hero article span, body[data-demo="parking"] .park-cash-hero article small { display:block; color:rgba(255,255,255,.65); font-size:.55rem; }
body[data-demo="parking"] .park-cash-hero > div:first-child strong, body[data-demo="parking"] .park-cash-hero article strong { display:block; margin:4px 0 2px; font-size:1.15rem; }
body[data-demo="parking"] .park-cash-hero > div:nth-child(2) { display:grid; grid-template-columns:repeat(4,1fr); border-inline:1px solid rgba(255,255,255,.1); }
body[data-demo="parking"] .park-cash-hero > div:nth-child(2) span { padding:19px 12px; border-right:1px solid rgba(255,255,255,.08); }
body[data-demo="parking"] .park-cash-hero > div:nth-child(2) span:last-child { border-right:0; }
body[data-demo="parking"] .park-cash-hero > div:nth-child(2) small, body[data-demo="parking"] .park-cash-hero > div:nth-child(2) strong { display:block; }
body[data-demo="parking"] .park-cash-hero > div:nth-child(2) small { color:rgba(255,255,255,.55); font-size:.49rem; } body[data-demo="parking"] .park-cash-hero > div:nth-child(2) strong { margin-top:3px; font-size:.63rem; }
body[data-demo="parking"] .park-cash-actions { justify-content:flex-end; }
body[data-demo="parking"] .park-cash-layout-v2 { display:grid; grid-template-columns:minmax(0,1.35fr) 340px; gap:14px; align-items:start; }
body[data-demo="parking"] .park-cash-movements { padding:3px 15px 8px; }
body[data-demo="parking"] .park-cash-movement { display:grid; min-height:58px; grid-template-columns:45px minmax(150px,1fr) 90px auto; gap:10px; align-items:center; border-bottom:1px solid #ebeff2; }
body[data-demo="parking"] .park-cash-movement:last-child { border-bottom:0; }
body[data-demo="parking"] .park-cash-movement time { color:#71818e; font-size:.56rem; font-weight:760; }
body[data-demo="parking"] .park-cash-movement div strong, body[data-demo="parking"] .park-cash-movement div small { display:block; } body[data-demo="parking"] .park-cash-movement div strong { color:#29445a; font-size:.61rem; } body[data-demo="parking"] .park-cash-movement div small { color:#89959f; font-size:.51rem; }
body[data-demo="parking"] .park-cash-movement > b { color:#25805f; font-size:.62rem; text-align:right; } body[data-demo="parking"] .park-cash-movement > b.is-negative { color:#bd3f50; }
body[data-demo="parking"] .park-close-preview > div:nth-child(2) { padding:6px 16px 10px; }
body[data-demo="parking"] .park-close-preview > div:nth-child(2) span { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 0; border-bottom:1px solid #e9edf0; color:#6f7f8b; font-size:.58rem; }
body[data-demo="parking"] .park-close-preview > div:nth-child(2) strong { color:#29445a; }
body[data-demo="parking"] .park-close-preview > div:nth-child(2) .is-difference strong { color:#c83d4b; }
body[data-demo="parking"] .park-close-preview p { margin:0 16px 16px; padding:10px; border-radius:8px; background:#fff4df; color:#82601f; font-size:.53rem; }

body[data-demo="parking"] .park-report-filters { display:flex; align-items:center; gap:16px; padding:13px 15px; border:1px solid #dce4e9; border-radius:12px; background:#fff; }
body[data-demo="parking"] .park-report-filters > span { color:#1776d2; font-size:.55rem; font-weight:850; white-space:nowrap; }
body[data-demo="parking"] .park-report-filters > div { display:flex; flex-wrap:wrap; gap:6px; }
body[data-demo="parking"] .park-report-filters b { padding:5px 8px; border-radius:7px; background:#f0f4f7; color:#687986; font-size:.51rem; }
body[data-demo="parking"] .park-report-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
body[data-demo="parking"] .park-report-grid article { padding:14px; border:1px solid #dce4e9; border-radius:12px; background:#fff; }
body[data-demo="parking"] .park-report-grid span, body[data-demo="parking"] .park-report-grid small { display:block; color:#85929c; font-size:.52rem; }
body[data-demo="parking"] .park-report-grid strong { display:block; margin:4px 0 2px; color:#29445a; font-size:.9rem; }
body[data-demo="parking"] .park-report-grid button { margin-top:10px; padding:0; border:0; background:transparent; color:#1766ad; font-size:.52rem; font-weight:820; }

body[data-demo="parking"] .park-admin-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
body[data-demo="parking"] .park-role-list { display:grid; grid-template-columns:repeat(2,1fr); gap:0; padding:5px 15px 12px; }
body[data-demo="parking"] .park-role-list span { padding:10px; border-bottom:1px solid #edf0f2; }
body[data-demo="parking"] .park-role-list strong, body[data-demo="parking"] .park-role-list small { display:block; } body[data-demo="parking"] .park-role-list strong { color:#29445a; font-size:.61rem; } body[data-demo="parking"] .park-role-list small { color:#8b97a0; font-size:.51rem; }
body[data-demo="parking"] .park-unit-card { padding:15px 17px 18px; } body[data-demo="parking"] .park-unit-card strong, body[data-demo="parking"] .park-unit-card span, body[data-demo="parking"] .park-unit-card small { display:block; } body[data-demo="parking"] .park-unit-card strong { color:#29445a; font-size:.72rem; } body[data-demo="parking"] .park-unit-card span { margin-top:6px; color:#5f7281; font-size:.59rem; } body[data-demo="parking"] .park-unit-card small { margin-top:4px; color:#8a969f; font-size:.51rem; }
body[data-demo="parking"] .park-agreement-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:14px 16px 17px; }
body[data-demo="parking"] .park-agreement-grid article { position:relative; padding:12px; border:1px solid #e2e8ec; border-radius:10px; background:#fbfcfd; }
body[data-demo="parking"] .park-agreement-grid article > span, body[data-demo="parking"] .park-agreement-grid article > small { display:block; color:#88959f; font-size:.5rem; } body[data-demo="parking"] .park-agreement-grid article > strong { display:block; margin:3px 0; color:#29445a; font-size:.61rem; } body[data-demo="parking"] .park-agreement-grid article > b { position:absolute; top:10px; right:10px; }
body[data-demo="parking"] .park-audit-list, body[data-demo="parking"] .park-integration-list { padding:4px 15px 10px; }
body[data-demo="parking"] .park-audit-row { display:grid; grid-template-columns:45px 1fr; gap:10px; padding:10px 0; border-bottom:1px solid #edf0f2; } body[data-demo="parking"] .park-audit-row time { color:#71818e; font-size:.54rem; font-weight:800; } body[data-demo="parking"] .park-audit-row strong, body[data-demo="parking"] .park-audit-row span, body[data-demo="parking"] .park-audit-row small { display:block; } body[data-demo="parking"] .park-audit-row strong { color:#29445a; font-size:.59rem; } body[data-demo="parking"] .park-audit-row span { color:#637684; font-size:.54rem; } body[data-demo="parking"] .park-audit-row small { color:#929ca4; font-size:.49rem; }
body[data-demo="parking"] .park-integration { display:grid; min-height:54px; grid-template-columns:30px 1fr auto; gap:9px; align-items:center; border-bottom:1px solid #edf0f2; } body[data-demo="parking"] .park-integration > span { display:grid; width:28px; height:28px; place-items:center; border-radius:8px; background:#eaf4fb; color:#1766ad; font-size:.49rem; font-weight:900; } body[data-demo="parking"] .park-integration strong, body[data-demo="parking"] .park-integration small { display:block; } body[data-demo="parking"] .park-integration strong { color:#29445a; font-size:.58rem; } body[data-demo="parking"] .park-integration small { color:#8a969f; font-size:.49rem; } body[data-demo="parking"] .park-integration b { color:#168c72; font-size:.49rem; }
body[data-demo="parking"] .park-offline-note { padding:12px 14px; border:1px dashed #cfdde5; border-radius:10px; background:#f8fbfd; } body[data-demo="parking"] .park-offline-note strong, body[data-demo="parking"] .park-offline-note span { display:block; } body[data-demo="parking"] .park-offline-note strong { color:#29445a; font-size:.61rem; } body[data-demo="parking"] .park-offline-note span { margin-top:2px; color:#7f8e99; font-size:.53rem; }

body[data-demo="parking"] .park-modal-backdrop { position:fixed; inset:0; z-index:220; display:grid; place-items:center; padding:20px; background:rgba(7,24,39,.48); backdrop-filter:blur(4px); }
body[data-demo="parking"] .park-modal { width:min(620px,100%); overflow:hidden; border-radius:15px; background:#fff; box-shadow:0 28px 70px rgba(5,24,42,.28); }
body[data-demo="parking"] .park-modal header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-bottom:1px solid #e5ebef; }
body[data-demo="parking"] .park-modal header span { color:#1776d2; font-size:.52rem; font-weight:850; text-transform:uppercase; } body[data-demo="parking"] .park-modal header h3 { margin:2px 0 0; color:#29445a; font-size:.9rem; }
body[data-demo="parking"] .park-modal header > button { width:31px; height:31px; border:0; border-radius:8px; background:#eef3f6; color:#526777; font-size:1rem; }
body[data-demo="parking"] .park-modal form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:17px 18px 18px; }
body[data-demo="parking"] .park-modal label { display:grid; gap:5px; } body[data-demo="parking"] .park-modal label.is-wide { grid-column:1/-1; } body[data-demo="parking"] .park-modal label span { color:#687a88; font-size:.55rem; font-weight:760; }
body[data-demo="parking"] .park-modal input, body[data-demo="parking"] .park-modal select { width:100%; height:39px; padding:0 10px; border:1px solid #d6e0e6; border-radius:8px; background:#fff; color:#29445a; font-size:.65rem; }
body[data-demo="parking"] .park-modal-member, body[data-demo="parking"] .park-exit-preview { grid-column:1/-1; }
body[data-demo="parking"] .park-modal-member { padding:11px 12px; border-radius:9px; background:#eef7fd; } body[data-demo="parking"] .park-modal-member strong, body[data-demo="parking"] .park-modal-member span { display:block; } body[data-demo="parking"] .park-modal-member strong { color:#1766ad; font-size:.59rem; } body[data-demo="parking"] .park-modal-member span { margin-top:2px; color:#617786; font-size:.53rem; }
body[data-demo="parking"] .park-exit-preview { display:grid; grid-template-columns:repeat(4,1fr); overflow:hidden; border:1px solid #e1e8ed; border-radius:9px; background:#fafcfd; } body[data-demo="parking"] .park-exit-preview span { padding:10px; border-right:1px solid #e6ecef; } body[data-demo="parking"] .park-exit-preview span:last-child { border-right:0; } body[data-demo="parking"] .park-exit-preview small, body[data-demo="parking"] .park-exit-preview strong { display:block; } body[data-demo="parking"] .park-exit-preview small { color:#8b97a0; font-size:.48rem; } body[data-demo="parking"] .park-exit-preview strong { margin-top:2px; color:#29445a; font-size:.61rem; }
body[data-demo="parking"] .park-modal footer { grid-column:1/-1; display:flex; justify-content:flex-end; gap:8px; padding-top:5px; } body[data-demo="parking"] .park-modal footer button { min-height:36px; padding:0 13px; border:1px solid #d5dfe5; border-radius:8px; background:#fff; color:#607483; font-size:.59rem; font-weight:820; } body[data-demo="parking"] .park-modal footer button.is-primary { border-color:#1776d2; background:#1776d2; color:#fff; }

@media (max-width: 1180px) {
  body[data-demo="parking"] .park-operation-hero { grid-template-columns:1fr 1fr; }
  body[data-demo="parking"] .park-hero-actions { grid-column:1/-1; justify-content:flex-start; }
  body[data-demo="parking"] .park-patio-head { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="parking"] .park-patio-actions { justify-content:flex-end; }
  body[data-demo="parking"] .park-dashboard-bottom { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-report-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="parking"] .park-cash-hero { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-cash-hero > div:nth-child(2) { border:0; border-block:1px solid rgba(255,255,255,.1); }
}
@media (max-width: 860px) {
  body[data-demo="parking"] .demo-nav-section { margin-top:12px; }
  body[data-demo="parking"] .workspace-toolbar[data-view] { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-operation-hero, body[data-demo="parking"] .park-patio-head, body[data-demo="parking"] .park-flow-grid, body[data-demo="parking"] .park-member-grid-v2, body[data-demo="parking"] .park-rate-grid, body[data-demo="parking"] .park-admin-grid, body[data-demo="parking"] .park-cash-layout-v2 { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-management-ribbon, body[data-demo="parking"] .park-member-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="parking"] .park-management-ribbon article:nth-child(2), body[data-demo="parking"] .park-member-summary article:nth-child(2) { border-right:0; }
  body[data-demo="parking"] .park-patio-mini { grid-template-columns:repeat(2,1fr); }
  body[data-demo="parking"] .park-patio-mini span:nth-child(2) { border-right:0; }
  body[data-demo="parking"] .park-filter-row, body[data-demo="parking"] .park-member-toolbar, body[data-demo="parking"] .park-rate-note { align-items:flex-start; flex-direction:column; }
  body[data-demo="parking"] .park-filter-row > span { white-space:normal; }
  body[data-demo="parking"] .park-rate-card > div { grid-template-columns:repeat(2,1fr); gap:10px; }
  body[data-demo="parking"] .park-rate-card > div span { padding:0; border:0; }
  body[data-demo="parking"] .park-agreement-grid { grid-template-columns:1fr; }
}
@media (max-width: 560px) {
  body[data-demo="parking"] .park-operation-hero { padding:17px; }
  body[data-demo="parking"] .park-occupancy { grid-template-columns:repeat(2,1fr); }
  body[data-demo="parking"] .park-management-ribbon, body[data-demo="parking"] .park-member-summary, body[data-demo="parking"] .park-report-grid { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-management-ribbon article, body[data-demo="parking"] .park-member-summary article { border-right:0; border-bottom:1px solid #e9eef2; }
  body[data-demo="parking"] .park-member-v2-body, body[data-demo="parking"] .park-role-list { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-member-v2-body span.is-wide { grid-column:auto; }
  body[data-demo="parking"] .park-cash-hero > div:nth-child(2) { grid-template-columns:repeat(2,1fr); }
  body[data-demo="parking"] .park-cash-movement { grid-template-columns:42px 1fr auto; }
  body[data-demo="parking"] .park-cash-movement .status { grid-column:2/-1; justify-self:start; }
  body[data-demo="parking"] .park-modal form { grid-template-columns:1fr; }
  body[data-demo="parking"] .park-modal label.is-wide, body[data-demo="parking"] .park-modal-member, body[data-demo="parking"] .park-exit-preview, body[data-demo="parking"] .park-modal footer { grid-column:auto; }
  body[data-demo="parking"] .park-exit-preview { grid-template-columns:repeat(2,1fr); }
}


/* ============================================
   FINANCEIRO MEI — evolução simples v20260915-5
   Escopo exclusivo do Financeiro MEI
   ============================================ */
body[data-demo="mei"] { --canvas:#f5f8f6; --line:#dce6df; }
body[data-demo="mei"] .demo-workspace { width:min(100%,1420px); }
body[data-demo="mei"] .demo-nav-section { display:block; padding:12px 12px 3px; color:rgba(255,255,255,.42); font-size:.58rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
body[data-demo="mei"] .demo-nav-section:first-child { padding-top:4px; }
body[data-demo="mei"] .demo-topbar { border-bottom-color:#dbe6df; box-shadow:0 4px 14px rgba(20,71,47,.04); }
body[data-demo="mei"] .profile-chip > span { background:#e8f5ee; color:#16704a; }
body[data-demo="mei"] .workspace-toolbar { grid-template-columns:minmax(155px,185px) minmax(240px,1fr) auto; }
body[data-demo="mei"] .workspace-toolbar label:has(#unitFilter) { display:none; }
body[data-demo="mei"] .toolbar-action { border-color:#c8ded0; background:#edf7f1; color:#126c46; }
body[data-demo="mei"] .toolbar-action:hover { background:#188557; color:#fff; }

body[data-demo="mei"] .mei-screen { display:grid; gap:14px; }
body[data-demo="mei"] .mei-screen .module-intro { margin-bottom:0; }
body[data-demo="mei"] .mei-action-strip {
  display:flex; align-items:center; justify-content:space-between; gap:18px; padding:16px 18px;
  border:1px solid #dbe7df; border-radius:14px; background:linear-gradient(120deg,#fff,#f4faf6); box-shadow:0 5px 18px rgba(20,71,47,.04);
}
body[data-demo="mei"] .mei-action-strip > div:first-child span { display:block; color:#188557; font-size:.6rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
body[data-demo="mei"] .mei-action-strip > div:first-child strong { display:block; margin-top:3px; color:#253d30; font-size:.78rem; }
body[data-demo="mei"] .mei-action-strip > div:last-child, body[data-demo="mei"] .mei-inline-actions { display:flex; flex-wrap:wrap; gap:8px; }
body[data-demo="mei"] .mei-quick-action,
body[data-demo="mei"] .mei-primary-button,
body[data-demo="mei"] .mei-secondary-button {
  min-height:38px; padding:0 13px; border:1px solid #c9ddd0; border-radius:9px; background:#f7fbf8; color:#176b48; font-size:.66rem; font-weight:850;
}
body[data-demo="mei"] .mei-quick-action:hover, body[data-demo="mei"] .mei-secondary-button:hover { background:#e8f5ed; }
body[data-demo="mei"] .mei-quick-action.is-primary, body[data-demo="mei"] .mei-primary-button { border-color:#188557; background:#188557; color:#fff; }
body[data-demo="mei"] .mei-quick-action.is-primary:hover, body[data-demo="mei"] .mei-primary-button:hover { background:#0f6a43; }
body[data-demo="mei"] .mei-inline-actions { justify-content:flex-end; }

body[data-demo="mei"] .mei-kpi-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; }
body[data-demo="mei"] .mei-kpi { min-width:0; padding:15px; border:1px solid #dfe8e2; border-radius:12px; background:#fff; box-shadow:0 3px 12px rgba(20,71,47,.035); }
body[data-demo="mei"] .mei-kpi > div { display:flex; align-items:center; justify-content:space-between; gap:8px; }
body[data-demo="mei"] .mei-kpi span { color:#738278; font-size:.62rem; font-weight:740; }
body[data-demo="mei"] .mei-kpi b { display:grid; width:27px; height:27px; place-items:center; border-radius:8px; background:#ebf6ef; color:#188557; font-size:.55rem; }
body[data-demo="mei"] .mei-kpi > strong { display:block; margin-top:11px; overflow:hidden; color:#20372b; font-size:1.23rem; line-height:1.05; letter-spacing:-.03em; text-overflow:ellipsis; white-space:nowrap; }
body[data-demo="mei"] .mei-kpi > small { display:block; margin-top:6px; color:#809087; font-size:.57rem; }
body[data-demo="mei"] .mei-kpi.is-positive { border-top:3px solid #2ca56c; }
body[data-demo="mei"] .mei-kpi.is-warning { border-top:3px solid #d6a02b; }
body[data-demo="mei"] .mei-kpi.is-negative { border-top:3px solid #c84a58; }

body[data-demo="mei"] .mei-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:14px; }
body[data-demo="mei"] .mei-dashboard-grid.is-bottom { grid-template-columns:minmax(0,1.2fr) minmax(310px,.8fr); }
body[data-demo="mei"] .mei-next-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid #e7eee9; }
body[data-demo="mei"] .mei-next-summary article { padding:14px 17px; border-right:1px solid #e7eee9; }
body[data-demo="mei"] .mei-next-summary article:last-child { border-right:0; }
body[data-demo="mei"] .mei-next-summary span, body[data-demo="mei"] .mei-next-summary strong { display:block; }
body[data-demo="mei"] .mei-next-summary span { color:#7a8980; font-size:.59rem; }
body[data-demo="mei"] .mei-next-summary strong { margin-top:4px; color:#263f32; font-size:.88rem; }
body[data-demo="mei"] .mei-next-summary .is-positive strong { color:#168557; }
body[data-demo="mei"] .mei-next-summary .is-negative strong { color:#b83a48; }
body[data-demo="mei"] .mei-deadline-list { display:grid; padding:5px 14px 10px; }
body[data-demo="mei"] .mei-deadline { display:grid; width:100%; min-height:55px; grid-template-columns:58px minmax(0,1fr) auto; gap:10px; align-items:center; padding:8px 3px; border:0; border-bottom:1px solid #edf1ee; background:transparent; text-align:left; }
body[data-demo="mei"] .mei-deadline:last-child { border-bottom:0; }
body[data-demo="mei"] .mei-deadline:hover { background:#f8fbf9; }
body[data-demo="mei"] .mei-deadline time { color:#6e7d74; font-size:.59rem; font-weight:800; }
body[data-demo="mei"] .mei-deadline strong, body[data-demo="mei"] .mei-deadline small { display:block; }
body[data-demo="mei"] .mei-deadline strong { color:#294033; font-size:.68rem; }
body[data-demo="mei"] .mei-deadline small { margin-top:2px; color:#8a978f; font-size:.54rem; }
body[data-demo="mei"] .mei-deadline > b { font-size:.64rem; }
body[data-demo="mei"] .mei-deadline > b.is-positive { color:#178557; }
body[data-demo="mei"] .mei-deadline > b.is-warning { color:#a36d14; }
body[data-demo="mei"] .mei-deadline > b.is-negative { color:#b53645; }

body[data-demo="mei"] .mei-health-card { overflow:hidden; }
body[data-demo="mei"] .mei-health-card.is-positive { border-top:3px solid #2ba56b; }
body[data-demo="mei"] .mei-health-card.is-warning { border-top:3px solid #d3a033; }
body[data-demo="mei"] .mei-health-body { padding:18px; }
body[data-demo="mei"] .mei-health-badge { display:inline-flex; padding:4px 9px; border-radius:999px; background:#e7f6ed; color:#147649; font-size:.58rem; font-weight:900; text-transform:uppercase; }
body[data-demo="mei"] .mei-health-body > strong { display:block; margin-top:12px; color:#244033; font-size:.95rem; line-height:1.35; }
body[data-demo="mei"] .mei-health-body p { margin:8px 0 14px; color:#708078; font-size:.66rem; line-height:1.55; }
body[data-demo="mei"] .mei-health-body > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 12px; border-radius:9px; background:#f4f8f5; }
body[data-demo="mei"] .mei-health-body > div span { color:#718077; font-size:.59rem; }
body[data-demo="mei"] .mei-health-body > div b { color:#1b6040; font-size:.76rem; }

body[data-demo="mei"] .mei-alert-list { display:grid; gap:7px; padding:10px 13px 13px; }
body[data-demo="mei"] .mei-alert { display:grid; width:100%; grid-template-columns:72px minmax(0,1fr) auto; gap:9px; align-items:center; padding:10px 11px; border:1px solid #e3eae5; border-left:3px solid #4b83c5; border-radius:9px; background:#fff; text-align:left; }
body[data-demo="mei"] .mei-alert.is-warning { border-left-color:#d19a2c; background:#fffdf8; }
body[data-demo="mei"] .mei-alert.is-negative { border-left-color:#c84a58; background:#fffafb; }
body[data-demo="mei"] .mei-alert > span { color:#74827a; font-size:.54rem; font-weight:850; text-transform:uppercase; }
body[data-demo="mei"] .mei-alert strong, body[data-demo="mei"] .mei-alert small { display:block; }
body[data-demo="mei"] .mei-alert strong { color:#293f33; font-size:.66rem; }
body[data-demo="mei"] .mei-alert small { margin-top:2px; color:#849188; font-size:.54rem; }
body[data-demo="mei"] .mei-alert i { color:#8a9990; font-style:normal; }
body[data-demo="mei"] .mei-limit-body { padding:18px; }
body[data-demo="mei"] .mei-limit-body > strong { display:block; color:#1d3d2d; font-size:1.55rem; letter-spacing:-.04em; }
body[data-demo="mei"] .mei-limit-body > small { color:#7c8b82; font-size:.6rem; }
body[data-demo="mei"] .mei-limit-track { height:10px; margin:15px 0 9px; overflow:hidden; border-radius:999px; background:#e6eee8; }
body[data-demo="mei"] .mei-limit-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#168557,#5bbd7e); }
body[data-demo="mei"] .mei-limit-body > div:not(.mei-limit-track) { display:flex; justify-content:space-between; gap:10px; color:#6d7d73; font-size:.58rem; }
body[data-demo="mei"] .mei-limit-body > div b { color:#2b523b; }
body[data-demo="mei"] .mei-limit-body button, body[data-demo="mei"] .mei-das-card button, body[data-demo="mei"] .mei-dasn button, body[data-demo="mei"] .mei-reconcile-hero button, body[data-demo="mei"] .mei-accountant-package button {
  height:37px; margin-top:14px; padding:0 13px; border:0; border-radius:9px; background:#188557; color:#fff; font-size:.63rem; font-weight:850;
}

body[data-demo="mei"] .mei-money-positive { color:#168557; }
body[data-demo="mei"] .mei-money-negative { color:#b83c49; }
body[data-demo="mei"] .mei-simple-list { display:grid; padding:6px 15px 12px; }
body[data-demo="mei"] .mei-simple-list article { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; padding:10px 0; border-bottom:1px solid #edf1ee; }
body[data-demo="mei"] .mei-simple-list article:last-child { border-bottom:0; }
body[data-demo="mei"] .mei-simple-list span { color:#30483a; font-size:.67rem; font-weight:760; }
body[data-demo="mei"] .mei-simple-list strong { color:#1f6241; font-size:.67rem; }
body[data-demo="mei"] .mei-simple-list small { grid-column:1/-1; color:#829087; font-size:.55rem; }
body[data-demo="mei"] .mei-two-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }

body[data-demo="mei"] .mei-summary-ribbon { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; border:1px solid #dfe8e2; border-radius:12px; background:#fff; }
body[data-demo="mei"] .mei-summary-ribbon article { padding:14px 16px; border-right:1px solid #e9efeb; }
body[data-demo="mei"] .mei-summary-ribbon article:last-child { border-right:0; }
body[data-demo="mei"] .mei-summary-ribbon span, body[data-demo="mei"] .mei-summary-ribbon strong, body[data-demo="mei"] .mei-summary-ribbon small { display:block; }
body[data-demo="mei"] .mei-summary-ribbon span { color:#79877f; font-size:.58rem; }
body[data-demo="mei"] .mei-summary-ribbon strong { margin:4px 0 3px; color:#273f32; font-size:1.02rem; }
body[data-demo="mei"] .mei-summary-ribbon small { color:#8a978f; font-size:.53rem; }
body[data-demo="mei"] .mei-summary-ribbon .is-negative strong { color:#b53645; }
body[data-demo="mei"] .mei-summary-ribbon .is-warning strong { color:#a56d13; }
body[data-demo="mei"] .mei-due-group { overflow:hidden; border:1px solid #dfe8e2; border-radius:12px; background:#fff; }
body[data-demo="mei"] .mei-due-group > header { display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-bottom:1px solid #e8efea; background:#f9fbfa; }
body[data-demo="mei"] .mei-due-group h3 { margin:0; font-size:.76rem; }
body[data-demo="mei"] .mei-due-group header span { color:#819087; font-size:.56rem; }
body[data-demo="mei"] .mei-due-row { display:grid; grid-template-columns:minmax(170px,1fr) 92px 95px auto 118px; gap:10px; align-items:center; min-height:61px; padding:9px 16px; border-bottom:1px solid #edf1ee; }
body[data-demo="mei"] .mei-due-row:last-child { border-bottom:0; }
body[data-demo="mei"] .mei-due-row > div { min-width:0; }
body[data-demo="mei"] .mei-due-row > div strong, body[data-demo="mei"] .mei-due-row > div small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body[data-demo="mei"] .mei-due-row > div strong { color:#2a4235; font-size:.67rem; }
body[data-demo="mei"] .mei-due-row > div small { color:#87948c; font-size:.54rem; }
body[data-demo="mei"] .mei-due-row time { color:#6d7e74; font-size:.58rem; }
body[data-demo="mei"] .mei-due-row > b { color:#243e30; font-size:.67rem; text-align:right; }
body[data-demo="mei"] .mei-due-row > button { min-height:30px; border:1px solid #c8ded0; border-radius:8px; background:#f0f8f3; color:#176b48; font-size:.56rem; font-weight:820; }

body[data-demo="mei"] .mei-cash-hero { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border-radius:14px; background:linear-gradient(120deg,#0b4e33,#176f4b); color:#fff; box-shadow:0 12px 28px rgba(13,86,56,.15); }
body[data-demo="mei"] .mei-cash-hero article { padding:18px; border-right:1px solid rgba(255,255,255,.1); }
body[data-demo="mei"] .mei-cash-hero article:last-child { border-right:0; }
body[data-demo="mei"] .mei-cash-hero span, body[data-demo="mei"] .mei-cash-hero strong, body[data-demo="mei"] .mei-cash-hero small { display:block; }
body[data-demo="mei"] .mei-cash-hero span { color:#b6ddca; font-size:.57rem; }
body[data-demo="mei"] .mei-cash-hero strong { margin:5px 0 4px; font-size:1.05rem; }
body[data-demo="mei"] .mei-cash-hero small { color:rgba(255,255,255,.6); font-size:.52rem; }
body[data-demo="mei"] .mei-segmented { display:inline-flex; justify-self:start; overflow:hidden; border:1px solid #d6e3da; border-radius:9px; background:#fff; }
body[data-demo="mei"] .mei-segmented button { min-height:34px; padding:0 12px; border:0; border-right:1px solid #e1e9e3; background:#fff; color:#687a6f; font-size:.59rem; font-weight:800; }
body[data-demo="mei"] .mei-segmented button:last-child { border-right:0; }
body[data-demo="mei"] .mei-segmented button.is-active { background:#188557; color:#fff; }
body[data-demo="mei"] .mei-help-box { display:flex; align-items:flex-start; gap:11px; padding:13px 15px; border:1px solid #dce8e0; border-radius:11px; background:#f7fbf8; }
body[data-demo="mei"] .mei-help-box > b { display:grid; width:26px; height:26px; flex:0 0 auto; place-items:center; border-radius:50%; background:#e2f2e8; color:#16704a; }
body[data-demo="mei"] .mei-help-box strong { color:#294033; font-size:.67rem; }
body[data-demo="mei"] .mei-help-box p { margin:3px 0 0; color:#7b8a81; font-size:.58rem; }

body[data-demo="mei"] .mei-mei-hero { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr); overflow:hidden; border:1px solid #dbe8df; border-radius:15px; background:#fff; box-shadow:0 6px 20px rgba(20,71,47,.045); }
body[data-demo="mei"] .mei-mei-hero > div { padding:22px; }
body[data-demo="mei"] .mei-mei-hero > div > span, body[data-demo="mei"] .mei-mei-hero > div > strong, body[data-demo="mei"] .mei-mei-hero > div > small { display:block; }
body[data-demo="mei"] .mei-mei-hero > div > span { color:#188557; font-size:.61rem; font-weight:850; text-transform:uppercase; }
body[data-demo="mei"] .mei-mei-hero > div > strong { margin:7px 0 2px; color:#203c2d; font-size:2rem; letter-spacing:-.05em; }
body[data-demo="mei"] .mei-mei-hero > div > small { color:#819087; font-size:.59rem; }
body[data-demo="mei"] .mei-mei-hero footer { display:flex; justify-content:space-between; gap:14px; color:#66776c; font-size:.58rem; }
body[data-demo="mei"] .mei-mei-hero footer b { color:#1f6844; }
body[data-demo="mei"] .mei-mei-hero > aside { display:grid; align-content:center; gap:6px; padding:22px; border-left:1px solid #e0e9e3; background:#f4faf6; }
body[data-demo="mei"] .mei-mei-hero > aside span { color:#188557; font-size:.57rem; font-weight:900; text-transform:uppercase; }
body[data-demo="mei"] .mei-mei-hero > aside strong { color:#284535; font-size:.78rem; line-height:1.4; }
body[data-demo="mei"] .mei-mei-hero > aside small { color:#7c8b82; font-size:.56rem; }
body[data-demo="mei"] .mei-projection { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
body[data-demo="mei"] .mei-projection article { padding:14px 17px; border-right:1px solid #e8efea; border-bottom:1px solid #e8efea; }
body[data-demo="mei"] .mei-projection article:nth-child(even) { border-right:0; }
body[data-demo="mei"] .mei-projection span, body[data-demo="mei"] .mei-projection strong { display:block; }
body[data-demo="mei"] .mei-projection span { color:#7f8d84; font-size:.56rem; }
body[data-demo="mei"] .mei-projection strong { margin-top:4px; color:#294234; font-size:.82rem; }
body[data-demo="mei"] .mei-note { margin:0; padding:12px 17px; color:#718178; font-size:.58rem; line-height:1.55; }
body[data-demo="mei"] .mei-das-card > div:not(.panel-header) { display:flex; justify-content:space-between; gap:10px; padding:10px 17px; border-bottom:1px solid #edf1ee; }
body[data-demo="mei"] .mei-das-card > div span { color:#79887f; font-size:.58rem; }
body[data-demo="mei"] .mei-das-card > div strong { color:#2b4436; font-size:.67rem; }
body[data-demo="mei"] .mei-das-card button { margin:14px 17px 17px; }
body[data-demo="mei"] .mei-das-history { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:7px; padding:15px; }
body[data-demo="mei"] .mei-das-history span { display:grid; min-height:54px; place-content:center; border:1px solid #dfe8e2; border-radius:9px; background:#f8fbf9; text-align:center; }
body[data-demo="mei"] .mei-das-history .is-paid { background:#edf8f1; border-color:#cbe5d4; }
body[data-demo="mei"] .mei-das-history .is-pending { background:#fff8e8; border-color:#ead9a8; }
body[data-demo="mei"] .mei-das-history b { color:#2b4336; font-size:.62rem; }
body[data-demo="mei"] .mei-das-history small { color:#7b8981; font-size:.5rem; }
body[data-demo="mei"] .mei-dasn-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
body[data-demo="mei"] .mei-dasn-grid article { padding:15px 17px; border-right:1px solid #e8efea; }
body[data-demo="mei"] .mei-dasn-grid article:last-child { border-right:0; }
body[data-demo="mei"] .mei-dasn-grid span, body[data-demo="mei"] .mei-dasn-grid strong { display:block; }
body[data-demo="mei"] .mei-dasn-grid span { color:#7e8c83; font-size:.56rem; }
body[data-demo="mei"] .mei-dasn-grid strong { margin-top:4px; color:#294234; font-size:.79rem; }
body[data-demo="mei"] .mei-dasn footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 17px; border-top:1px solid #e9efeb; }
body[data-demo="mei"] .mei-dasn footer p { margin:0; color:#7d8b83; font-size:.56rem; }
body[data-demo="mei"] .mei-dasn footer button { margin:0; }

body[data-demo="mei"] .mei-result-hero { display:grid; grid-template-columns:minmax(0,1fr) 310px; overflow:hidden; border-radius:15px; background:linear-gradient(120deg,#0b4d33,#18764f); color:#fff; }
body[data-demo="mei"] .mei-result-hero > div { padding:24px; }
body[data-demo="mei"] .mei-result-hero > div span, body[data-demo="mei"] .mei-result-hero > div strong, body[data-demo="mei"] .mei-result-hero > div small { display:block; }
body[data-demo="mei"] .mei-result-hero > div span { color:#bce1cd; font-size:.6rem; text-transform:uppercase; }
body[data-demo="mei"] .mei-result-hero > div strong { margin:6px 0 7px; font-size:2rem; letter-spacing:-.05em; }
body[data-demo="mei"] .mei-result-hero > div p { margin:0 0 5px; color:#d9eee1; font-size:.68rem; }
body[data-demo="mei"] .mei-result-hero > div small { color:#a8d3b9; font-size:.56rem; }
body[data-demo="mei"] .mei-result-hero > aside { display:flex; align-items:flex-start; gap:10px; padding:22px; background:rgba(0,0,0,.08); }
body[data-demo="mei"] .mei-result-hero > aside b { display:grid; width:27px; height:27px; flex:0 0 auto; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:50%; }
body[data-demo="mei"] .mei-result-hero > aside p { margin:2px 0 0; color:#d5e8dc; font-size:.59rem; line-height:1.5; }
body[data-demo="mei"] .mei-result-line { display:flex; justify-content:space-between; gap:14px; padding:14px 18px; border-bottom:1px solid #e9efeb; }
body[data-demo="mei"] .mei-result-line:last-child { border-bottom:0; background:#f4faf6; }
body[data-demo="mei"] .mei-result-line span { color:#65766c; font-size:.67rem; }
body[data-demo="mei"] .mei-result-line strong { font-size:.74rem; }
body[data-demo="mei"] .mei-result-line.is-positive strong { color:#168557; }
body[data-demo="mei"] .mei-result-line.is-negative strong { color:#b53d49; }
body[data-demo="mei"] .mei-month-close { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
body[data-demo="mei"] .mei-month-close article { padding:14px 15px; border:1px solid #dfe8e2; border-radius:11px; background:#fff; }
body[data-demo="mei"] .mei-month-close span, body[data-demo="mei"] .mei-month-close strong { display:block; }
body[data-demo="mei"] .mei-month-close span { color:#7d8b83; font-size:.56rem; }
body[data-demo="mei"] .mei-month-close strong { margin-top:4px; color:#294234; font-size:.78rem; }

body[data-demo="mei"] .mei-reconcile-hero { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; overflow:hidden; border:1px solid #dfe8e2; border-radius:12px; background:#fff; }
body[data-demo="mei"] .mei-reconcile-hero article { padding:15px 17px; border-right:1px solid #e8efea; }
body[data-demo="mei"] .mei-reconcile-hero span, body[data-demo="mei"] .mei-reconcile-hero strong, body[data-demo="mei"] .mei-reconcile-hero small { display:block; }
body[data-demo="mei"] .mei-reconcile-hero span { color:#7d8b82; font-size:.55rem; }
body[data-demo="mei"] .mei-reconcile-hero strong { margin:4px 0 2px; color:#294234; font-size:1.1rem; }
body[data-demo="mei"] .mei-reconcile-hero small { color:#8a978f; font-size:.51rem; }
body[data-demo="mei"] .mei-reconcile-hero .is-warning strong { color:#a76f15; }
body[data-demo="mei"] .mei-reconcile-hero .is-negative strong { color:#b53946; }
body[data-demo="mei"] .mei-reconcile-hero button { align-self:center; margin:0 15px; }
body[data-demo="mei"] .mei-report-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; padding:14px; }
body[data-demo="mei"] .mei-report-grid button { min-height:90px; padding:12px; border:1px solid #dfe8e2; border-radius:10px; background:#fafcfb; text-align:left; }
body[data-demo="mei"] .mei-report-grid button:hover { background:#f1f8f4; border-color:#c9ded0; }
body[data-demo="mei"] .mei-report-grid span, body[data-demo="mei"] .mei-report-grid strong, body[data-demo="mei"] .mei-report-grid small { display:block; }
body[data-demo="mei"] .mei-report-grid span { color:#188557; font-size:.51rem; font-weight:850; text-transform:uppercase; }
body[data-demo="mei"] .mei-report-grid strong { margin-top:5px; color:#2b4235; font-size:.66rem; }
body[data-demo="mei"] .mei-report-grid small { margin-top:3px; color:#849188; font-size:.52rem; }
body[data-demo="mei"] .mei-accountant-package { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 19px; border:1px solid #cfe2d5; border-radius:12px; background:linear-gradient(120deg,#eef8f2,#f8fcfa); }
body[data-demo="mei"] .mei-accountant-package span, body[data-demo="mei"] .mei-accountant-package strong, body[data-demo="mei"] .mei-accountant-package small { display:block; }
body[data-demo="mei"] .mei-accountant-package span { color:#188557; font-size:.56rem; font-weight:850; text-transform:uppercase; }
body[data-demo="mei"] .mei-accountant-package strong { margin-top:3px; color:#2a4435; font-size:.72rem; }
body[data-demo="mei"] .mei-accountant-package small { margin-top:3px; color:#7d8c83; font-size:.54rem; }
body[data-demo="mei"] .mei-accountant-package button { flex:0 0 auto; margin:0; }

body[data-demo="mei"] .mei-modal-backdrop { position:fixed; inset:0; z-index:220; display:grid; place-items:center; padding:20px; background:rgba(13,34,23,.48); backdrop-filter:blur(3px); }
body[data-demo="mei"] .mei-modal { width:min(620px,100%); max-height:calc(100dvh - 40px); overflow:auto; border-radius:15px; background:#fff; box-shadow:0 30px 80px rgba(0,0,0,.24); }
body[data-demo="mei"] .mei-modal > header { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:17px 19px; border-bottom:1px solid #e4ebe6; }
body[data-demo="mei"] .mei-modal > header span { display:block; color:#188557; font-size:.55rem; font-weight:900; text-transform:uppercase; }
body[data-demo="mei"] .mei-modal > header h3 { margin:2px 0 0; font-size:.96rem; }
body[data-demo="mei"] .mei-modal > header button { width:32px; height:32px; border:0; border-radius:8px; background:#f1f5f2; color:#506259; font-size:1.1rem; }
body[data-demo="mei"] .mei-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:18px 19px; }
body[data-demo="mei"] .mei-form label { display:grid; gap:5px; }
body[data-demo="mei"] .mei-form label > span { color:#687a70; font-size:.57rem; font-weight:800; }
body[data-demo="mei"] .mei-form input, body[data-demo="mei"] .mei-form select { width:100%; height:40px; border:1px solid #d5e1d9; border-radius:8px; background:#fff; padding:0 10px; color:#2b4034; font-size:.7rem; }
body[data-demo="mei"] .mei-form-extra { grid-column:1/-1; border:1px solid #e1e9e4; border-radius:9px; background:#fafcfb; }
body[data-demo="mei"] .mei-form-extra summary { padding:10px 12px; color:#51655a; font-size:.61rem; font-weight:800; cursor:pointer; }
body[data-demo="mei"] .mei-form-extra > div { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:0 12px 12px; }
body[data-demo="mei"] .mei-form footer { grid-column:1/-1; display:flex; justify-content:flex-end; gap:8px; padding-top:4px; }

@media (max-width:1200px) {
  body[data-demo="mei"] .mei-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-demo="mei"] .mei-report-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="mei"] .mei-cash-hero { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="mei"] .mei-cash-hero article:nth-child(2) { border-right:0; }
  body[data-demo="mei"] .mei-cash-hero article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.1); }
}
@media (max-width:860px) {
  body[data-demo="mei"] .demo-nav-section { margin-top:10px; }
  body[data-demo="mei"] .workspace-toolbar { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-action-strip, body[data-demo="mei"] .mei-accountant-package { align-items:flex-start; flex-direction:column; }
  body[data-demo="mei"] .mei-dashboard-grid, body[data-demo="mei"] .mei-dashboard-grid.is-bottom, body[data-demo="mei"] .mei-two-columns, body[data-demo="mei"] .mei-mei-hero, body[data-demo="mei"] .mei-result-hero { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-mei-hero > aside { border-top:1px solid #e0e9e3; border-left:0; }
  body[data-demo="mei"] .mei-result-hero > aside { min-height:110px; }
  body[data-demo="mei"] .mei-due-row { grid-template-columns:minmax(150px,1fr) 90px auto; }
  body[data-demo="mei"] .mei-due-row .status, body[data-demo="mei"] .mei-due-row > button { grid-column:2/-1; justify-self:start; }
  body[data-demo="mei"] .mei-reconcile-hero { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-demo="mei"] .mei-reconcile-hero button { grid-column:1/-1; justify-self:start; margin:12px 15px; }
  body[data-demo="mei"] .mei-month-close { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  body[data-demo="mei"] .mei-kpi-grid, body[data-demo="mei"] .mei-summary-ribbon, body[data-demo="mei"] .mei-next-summary, body[data-demo="mei"] .mei-cash-hero, body[data-demo="mei"] .mei-dasn-grid, body[data-demo="mei"] .mei-month-close, body[data-demo="mei"] .mei-reconcile-hero { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-summary-ribbon article, body[data-demo="mei"] .mei-next-summary article, body[data-demo="mei"] .mei-cash-hero article, body[data-demo="mei"] .mei-dasn-grid article, body[data-demo="mei"] .mei-reconcile-hero article { border-right:0; border-bottom:1px solid #e8efea; }
  body[data-demo="mei"] .mei-das-history { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-demo="mei"] .mei-report-grid { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-form { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-form-extra, body[data-demo="mei"] .mei-form footer { grid-column:auto; }
  body[data-demo="mei"] .mei-form-extra > div { grid-template-columns:1fr; }
  body[data-demo="mei"] .mei-dasn footer { align-items:flex-start; flex-direction:column; }
}


/* ============================================
   GESTÃO EMPRESARIAL — governança e integração v20260915-6
   Escopo exclusivo do sistema empresarial
   ============================================ */
body[data-demo="enterprise"] { --canvas:#f3f6f8; --line:#dbe4ea; }

body[data-demo="enterprise"] .ent-top-approval { margin-left:auto; height:36px; padding:0 11px; border:1px solid #cfe0e4; border-radius:9px; background:#eef7f8; color:#087e8b; font-size:.58rem; font-weight:850; }
body[data-demo="enterprise"] .ent-top-approval:hover { background:#087e8b; color:#fff; }
body[data-demo="enterprise"] .ent-top-approval + .profile-chip { margin-left:0; }
body[data-demo="enterprise"] .demo-nav-section { display:block; padding:12px 12px 3px; color:rgba(255,255,255,.42); font-size:.58rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
body[data-demo="enterprise"] .demo-nav-section:first-child { padding-top:4px; }
body[data-demo="enterprise"] .ent-screen { display:grid; gap:14px; }
body[data-demo="enterprise"] .ent-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
body[data-demo="enterprise"] .ent-kpi { padding:16px 17px; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 4px 14px rgba(12,43,70,.035); }
body[data-demo="enterprise"] .ent-kpi > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }
body[data-demo="enterprise"] .ent-kpi span { color:#71808c; font-size:.66rem; font-weight:760; }
body[data-demo="enterprise"] .ent-kpi b { display:grid; width:28px; height:28px; place-items:center; border-radius:8px; background:#e7f4f5; color:#087e8b; font-size:.58rem; }
body[data-demo="enterprise"] .ent-kpi strong { display:block; margin-top:11px; color:#17334b; font-size:1.45rem; line-height:1.05; letter-spacing:-.035em; }
body[data-demo="enterprise"] .ent-kpi small { display:block; margin-top:6px; color:#18864b; font-size:.59rem; font-weight:740; }
body[data-demo="enterprise"] .ent-kpi small.is-warning { color:#b46f0b; }

body[data-demo="enterprise"] .ent-profile-bar { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 17px; border:1px solid #d6e3e7; border-radius:12px; background:linear-gradient(115deg,#f5fbfc,#fff); }
body[data-demo="enterprise"] .ent-profile-bar > div:first-child span, body[data-demo="enterprise"] .ent-profile-bar > div:first-child strong, body[data-demo="enterprise"] .ent-profile-bar > div:first-child small { display:block; }
body[data-demo="enterprise"] .ent-profile-bar > div:first-child span { color:#087e8b; font-size:.55rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-profile-bar > div:first-child strong { margin-top:2px; color:#17364d; font-size:.82rem; }
body[data-demo="enterprise"] .ent-profile-bar > div:first-child small { margin-top:2px; color:#73818b; font-size:.58rem; }
body[data-demo="enterprise"] .ent-profile-switch { display:flex; flex-wrap:wrap; gap:6px; }
body[data-demo="enterprise"] .ent-profile-switch button { height:34px; padding:0 11px; border:1px solid #d4e1e6; border-radius:8px; background:#fff; color:#526775; font-size:.6rem; font-weight:800; }
body[data-demo="enterprise"] .ent-profile-switch button.is-active { border-color:#087e8b; background:#087e8b; color:#fff; }

body[data-demo="enterprise"] .ent-central { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#fff; }
body[data-demo="enterprise"] .ent-central button { position:relative; min-width:0; min-height:92px; padding:13px 12px; border:0; border-right:1px solid #e7edf0; background:#fff; text-align:left; }
body[data-demo="enterprise"] .ent-central button:last-child { border-right:0; }
body[data-demo="enterprise"] .ent-central button:hover { background:#f6fafb; }
body[data-demo="enterprise"] .ent-central span, body[data-demo="enterprise"] .ent-central strong, body[data-demo="enterprise"] .ent-central small { display:block; }
body[data-demo="enterprise"] .ent-central span { color:#087e8b; font-size:.49rem; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
body[data-demo="enterprise"] .ent-central strong { margin:5px 0 2px; color:#19374e; font-size:1.05rem; }
body[data-demo="enterprise"] .ent-central small { color:#7b8993; font-size:.52rem; }
body[data-demo="enterprise"] .ent-central i { position:absolute; right:9px; bottom:9px; color:#9babb5; font-style:normal; font-size:.7rem; }

body[data-demo="enterprise"] .ent-dashboard-grid, body[data-demo="enterprise"] .ent-two-columns { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:14px; align-items:start; }
body[data-demo="enterprise"] .ent-two-columns.is-wide { grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr); }
body[data-demo="enterprise"] .ent-budget-card { overflow:hidden; }
body[data-demo="enterprise"] .ent-budget-card > header { padding:18px 18px 14px; background:linear-gradient(120deg,#0b355a,#0a5c6a); color:#fff; }
body[data-demo="enterprise"] .ent-budget-card > header span, body[data-demo="enterprise"] .ent-budget-card > header strong, body[data-demo="enterprise"] .ent-budget-card > header small { display:block; }
body[data-demo="enterprise"] .ent-budget-card > header span { color:#9ed8de; font-size:.55rem; font-weight:850; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-budget-card > header strong { margin-top:5px; font-size:1.55rem; letter-spacing:-.035em; }
body[data-demo="enterprise"] .ent-budget-card > header small { margin-top:3px; color:rgba(255,255,255,.65); font-size:.55rem; }
body[data-demo="enterprise"] .ent-budget-progress { height:7px; overflow:hidden; border-radius:999px; background:#e9eef1; }
body[data-demo="enterprise"] .ent-budget-card > .ent-budget-progress { margin:16px 18px 5px; }
body[data-demo="enterprise"] .ent-budget-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#087e8b,#39b69f); }
body[data-demo="enterprise"] .ent-budget-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:8px 18px 13px; gap:9px; }
body[data-demo="enterprise"] .ent-budget-grid span { padding:9px 10px; border:1px solid #e5ebee; border-radius:8px; background:#fafcfd; }
body[data-demo="enterprise"] .ent-budget-grid small, body[data-demo="enterprise"] .ent-budget-grid strong { display:block; }
body[data-demo="enterprise"] .ent-budget-grid small { color:#7e8b95; font-size:.51rem; }
body[data-demo="enterprise"] .ent-budget-grid strong { margin-top:2px; color:#2e485b; font-size:.67rem; }
body[data-demo="enterprise"] .ent-link { width:100%; min-height:37px; padding:0 18px; border:0; border-top:1px solid #e6ecef; background:#fbfcfd; color:#087e8b; text-align:left; font-size:.58rem; font-weight:850; }
body[data-demo="enterprise"] .ent-link:hover { background:#eef7f7; }

body[data-demo="enterprise"] .ent-approval-summary, body[data-demo="enterprise"] .ent-stock-ribbon, body[data-demo="enterprise"] .ent-finance-hero, body[data-demo="enterprise"] .ent-budget-hero { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#fff; }
body[data-demo="enterprise"] .ent-approval-summary article, body[data-demo="enterprise"] .ent-stock-ribbon article, body[data-demo="enterprise"] .ent-finance-hero article, body[data-demo="enterprise"] .ent-budget-hero > div { padding:15px 17px; border-right:1px solid #e7edef; }
body[data-demo="enterprise"] .ent-approval-summary article:last-child, body[data-demo="enterprise"] .ent-stock-ribbon article:last-child, body[data-demo="enterprise"] .ent-finance-hero article:last-child, body[data-demo="enterprise"] .ent-budget-hero > div:last-child { border-right:0; }
body[data-demo="enterprise"] .ent-approval-summary span, body[data-demo="enterprise"] .ent-stock-ribbon span, body[data-demo="enterprise"] .ent-finance-hero span, body[data-demo="enterprise"] .ent-budget-hero span { display:block; color:#7b8993; font-size:.55rem; }
body[data-demo="enterprise"] .ent-approval-summary strong, body[data-demo="enterprise"] .ent-stock-ribbon strong, body[data-demo="enterprise"] .ent-finance-hero strong, body[data-demo="enterprise"] .ent-budget-hero strong { display:block; margin:4px 0 2px; color:#1e3c53; font-size:1.12rem; letter-spacing:-.02em; }
body[data-demo="enterprise"] .ent-approval-summary small, body[data-demo="enterprise"] .ent-stock-ribbon small, body[data-demo="enterprise"] .ent-finance-hero small, body[data-demo="enterprise"] .ent-budget-hero small { display:block; color:#87949d; font-size:.52rem; }

body[data-demo="enterprise"] .ent-approval-list { display:grid; gap:10px; }
body[data-demo="enterprise"] .ent-approval-card { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 4px 14px rgba(12,43,70,.03); }
body[data-demo="enterprise"] .ent-approval-card > header { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 15px; border-bottom:1px solid #e8edef; background:#fbfcfd; }
body[data-demo="enterprise"] .ent-approval-card > header span:first-child { display:block; color:#087e8b; font-size:.51rem; font-weight:850; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-approval-card h3 { margin:2px 0 0; font-size:.85rem; }
body[data-demo="enterprise"] .ent-approval-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:13px 15px 6px; }
body[data-demo="enterprise"] .ent-approval-meta span { min-width:0; }
body[data-demo="enterprise"] .ent-approval-meta small, body[data-demo="enterprise"] .ent-approval-meta strong { display:block; }
body[data-demo="enterprise"] .ent-approval-meta small { color:#88959e; font-size:.49rem; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-approval-meta strong { margin-top:2px; overflow:hidden; color:#30495c; font-size:.61rem; text-overflow:ellipsis; white-space:nowrap; }
body[data-demo="enterprise"] .ent-approval-card > p { margin:7px 15px 10px; color:#657681; font-size:.61rem; }
body[data-demo="enterprise"] .ent-docs { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:0 15px 12px; padding:9px 10px; border:1px dashed #ccdbe1; border-radius:8px; background:#f8fbfc; }
body[data-demo="enterprise"] .ent-docs span { color:#7f8d96; font-size:.5rem; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-docs strong { color:#39556a; font-size:.58rem; }
body[data-demo="enterprise"] .ent-approval-card > footer { display:flex; flex-wrap:wrap; gap:7px; padding:10px 15px 14px; border-top:1px solid #edf1f3; }
body[data-demo="enterprise"] .ent-approval-card > footer small { color:#7b8993; font-size:.55rem; }
body[data-demo="enterprise"] .ent-button { min-height:34px; padding:0 11px; border:1px solid #cfdbe0; border-radius:8px; background:#fff; color:#3b5569; font-size:.56rem; font-weight:850; }
body[data-demo="enterprise"] .ent-button.is-positive { border-color:#b7dbc8; background:#eef8f2; color:#197347; }
body[data-demo="enterprise"] .ent-button.is-warning { border-color:#efd6a7; background:#fff8e9; color:#a36a0e; }
body[data-demo="enterprise"] .ent-button.is-danger { border-color:#efc6cb; background:#fff1f3; color:#ac3443; }
body[data-demo="enterprise"] .ent-button.is-primary { border-color:#087e8b; background:#087e8b; color:#fff; }
body[data-demo="enterprise"] .ent-rules > div { display:grid; gap:2px; padding:12px 15px; border-bottom:1px solid #edf1f3; }
body[data-demo="enterprise"] .ent-rules > div span { color:#71818d; font-size:.55rem; }
body[data-demo="enterprise"] .ent-rules > div strong { color:#29465b; font-size:.62rem; }
body[data-demo="enterprise"] .ent-rules > p { margin:0; padding:14px 15px; color:#71808a; font-size:.56rem; background:#fafcfd; }

body[data-demo="enterprise"] .ent-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); overflow:hidden; border:1px solid #d7e3e8; border-radius:12px; background:#fff; }
body[data-demo="enterprise"] .ent-flow.is-purchase { grid-template-columns:repeat(7,minmax(0,1fr)); }
body[data-demo="enterprise"] .ent-flow article { position:relative; min-height:105px; padding:14px 11px 12px 36px; border-right:1px solid #e7edef; }
body[data-demo="enterprise"] .ent-flow article:last-child { border-right:0; }
body[data-demo="enterprise"] .ent-flow article b { position:absolute; top:14px; left:11px; display:grid; width:18px; height:18px; place-items:center; border-radius:50%; background:#e8eff3; color:#647681; font-size:.49rem; }
body[data-demo="enterprise"] .ent-flow article.is-done b { background:#dff3e8; color:#197347; }
body[data-demo="enterprise"] .ent-flow article.is-current { background:#f2f9fa; box-shadow:inset 0 -3px #087e8b; }
body[data-demo="enterprise"] .ent-flow span, body[data-demo="enterprise"] .ent-flow strong, body[data-demo="enterprise"] .ent-flow small { display:block; }
body[data-demo="enterprise"] .ent-flow span { color:#71808a; font-size:.5rem; text-transform:uppercase; font-weight:800; }
body[data-demo="enterprise"] .ent-flow strong { margin-top:5px; color:#234258; font-size:.65rem; }
body[data-demo="enterprise"] .ent-flow small { margin-top:3px; color:#87949d; font-size:.5rem; }

body[data-demo="enterprise"] .ent-credit-panel { overflow:hidden; }
body[data-demo="enterprise"] .ent-credit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:14px; }
body[data-demo="enterprise"] .ent-credit-grid article { position:relative; padding:13px; border:1px solid #e0e7ea; border-radius:9px; background:#fbfcfd; }
body[data-demo="enterprise"] .ent-credit-grid article > span, body[data-demo="enterprise"] .ent-credit-grid article > strong, body[data-demo="enterprise"] .ent-credit-grid article > small { display:block; }
body[data-demo="enterprise"] .ent-credit-grid article > span { color:#29465a; font-size:.65rem; font-weight:850; }
body[data-demo="enterprise"] .ent-credit-grid article > small { margin-top:4px; color:#7c8992; font-size:.51rem; }
body[data-demo="enterprise"] .ent-credit-grid article > strong { margin:2px 0; color:#19384f; font-size:.78rem; }
body[data-demo="enterprise"] .ent-credit-grid em { margin-top:8px; font-style:normal; }

body[data-demo="enterprise"] .ent-request-card, body[data-demo="enterprise"] .ent-process-note { overflow:hidden; }
body[data-demo="enterprise"] .ent-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding:14px 15px 7px; }
body[data-demo="enterprise"] .ent-detail-grid span { padding:9px 10px; border:1px solid #e5ebee; border-radius:8px; background:#fbfcfd; }
body[data-demo="enterprise"] .ent-detail-grid small, body[data-demo="enterprise"] .ent-detail-grid strong { display:block; }
body[data-demo="enterprise"] .ent-detail-grid small { color:#89959d; font-size:.48rem; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-detail-grid strong { margin-top:2px; color:#304b5e; font-size:.61rem; }
body[data-demo="enterprise"] .ent-request-card > p { margin:8px 15px 15px; color:#687985; font-size:.58rem; }
body[data-demo="enterprise"] .ent-process-note ul { margin:0; padding:13px 18px 17px 34px; color:#617481; font-size:.6rem; }
body[data-demo="enterprise"] .ent-process-note li + li { margin-top:7px; }

body[data-demo="enterprise"] .ent-quote-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:14px; }
body[data-demo="enterprise"] .ent-quote-grid article { overflow:hidden; border:1px solid #dfe7ea; border-radius:10px; background:#fff; }
body[data-demo="enterprise"] .ent-quote-grid article.is-selected { border-color:#76b8bd; box-shadow:inset 0 0 0 1px #76b8bd; }
body[data-demo="enterprise"] .ent-quote-grid header { padding:12px 13px; border-bottom:1px solid #edf1f3; background:#fafcfd; }
body[data-demo="enterprise"] .ent-quote-grid header span, body[data-demo="enterprise"] .ent-quote-grid header strong { display:block; }
body[data-demo="enterprise"] .ent-quote-grid header span { color:#087e8b; font-size:.47rem; font-weight:850; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-quote-grid header strong { margin-top:2px; color:#29465b; font-size:.65rem; }
body[data-demo="enterprise"] .ent-quote-grid article > div { display:flex; justify-content:space-between; gap:10px; padding:8px 13px; border-bottom:1px solid #f0f2f4; }
body[data-demo="enterprise"] .ent-quote-grid article > div small { color:#84919a; font-size:.5rem; }
body[data-demo="enterprise"] .ent-quote-grid article > div b { color:#385267; font-size:.56rem; }
body[data-demo="enterprise"] .ent-quote-grid footer { padding:11px 13px; background:#f8fbfc; }
body[data-demo="enterprise"] .ent-quote-grid footer strong, body[data-demo="enterprise"] .ent-quote-grid footer small { display:block; }
body[data-demo="enterprise"] .ent-quote-grid footer strong { color:#173c53; font-size:.65rem; }
body[data-demo="enterprise"] .ent-quote-grid footer small { margin-top:2px; color:#81909a; font-size:.5rem; }

body[data-demo="enterprise"] .ent-cash-modes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
body[data-demo="enterprise"] .ent-cash-modes article { padding:13px 15px; border:1px solid #dfe7ea; border-radius:10px; background:#fff; }
body[data-demo="enterprise"] .ent-cash-modes span, body[data-demo="enterprise"] .ent-cash-modes strong, body[data-demo="enterprise"] .ent-cash-modes small { display:block; }
body[data-demo="enterprise"] .ent-cash-modes span { color:#7c8992; font-size:.52rem; }
body[data-demo="enterprise"] .ent-cash-modes strong { margin:4px 0 2px; color:#1f3d53; font-size:.9rem; }
body[data-demo="enterprise"] .ent-cash-modes small { color:#89969e; font-size:.5rem; }
body[data-demo="enterprise"] .ent-close { overflow:hidden; }
body[data-demo="enterprise"] .ent-close-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:12px 14px; gap:9px; }
body[data-demo="enterprise"] .ent-close-grid > span { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:9px 10px; border:1px solid #e4eaed; border-radius:8px; background:#fafcfd; }
body[data-demo="enterprise"] .ent-close-grid > span > strong { color:#3a5365; font-size:.55rem; }
body[data-demo="enterprise"] .ent-close-grid em { font-style:normal; }
body[data-demo="enterprise"] .ent-close footer { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:12px 14px; border-top:1px solid #e8edef; background:#fafcfd; }
body[data-demo="enterprise"] .ent-close footer p { margin:0; color:#71808a; font-size:.55rem; }

body[data-demo="enterprise"] .ent-budget-centers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body[data-demo="enterprise"] .ent-budget-centers article { overflow:hidden; border:1px solid #dfe7ea; border-radius:11px; background:#fff; }
body[data-demo="enterprise"] .ent-budget-centers header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px 9px; }
body[data-demo="enterprise"] .ent-budget-centers header span, body[data-demo="enterprise"] .ent-budget-centers header strong { display:block; }
body[data-demo="enterprise"] .ent-budget-centers header span { color:#84919a; font-size:.48rem; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-budget-centers header strong { margin-top:2px; color:#2d485c; font-size:.66rem; }
body[data-demo="enterprise"] .ent-budget-centers .ent-budget-progress { margin:0 14px 10px; }
body[data-demo="enterprise"] .ent-budget-mini { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; border-top:1px solid #edf1f3; background:#edf1f3; }
body[data-demo="enterprise"] .ent-budget-mini span { padding:9px 10px; background:#fff; }
body[data-demo="enterprise"] .ent-budget-mini small, body[data-demo="enterprise"] .ent-budget-mini b { display:block; }
body[data-demo="enterprise"] .ent-budget-mini small { color:#8a969e; font-size:.47rem; }
body[data-demo="enterprise"] .ent-budget-mini b { margin-top:2px; color:#345064; font-size:.55rem; }
body[data-demo="enterprise"] .ent-dre { overflow:hidden; }
body[data-demo="enterprise"] .ent-dre > button { display:grid; width:100%; grid-template-columns:minmax(180px,1fr) 130px 120px auto; gap:12px; align-items:center; min-height:51px; padding:8px 15px; border:0; border-bottom:1px solid #edf1f3; background:#fff; text-align:left; }
body[data-demo="enterprise"] .ent-dre > button:hover { background:#f8fbfc; }
body[data-demo="enterprise"] .ent-dre > button:last-child { border-bottom:0; }
body[data-demo="enterprise"] .ent-dre > button > span { color:#314b5e; font-size:.62rem; font-weight:800; }
body[data-demo="enterprise"] .ent-dre > button > strong { color:#183c52; font-size:.67rem; text-align:right; }
body[data-demo="enterprise"] .ent-dre > button > strong.is-negative { color:#a84854; }
body[data-demo="enterprise"] .ent-dre > button > small { color:#84919a; font-size:.5rem; text-align:right; }
body[data-demo="enterprise"] .ent-dre em { font-style:normal; }

body[data-demo="enterprise"] .ent-rbac { overflow:hidden; }
body[data-demo="enterprise"] .ent-role-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; padding:14px; }
body[data-demo="enterprise"] .ent-role-grid article { padding:12px; border:1px solid #e0e7ea; border-radius:9px; background:#fbfcfd; }
body[data-demo="enterprise"] .ent-role-grid span, body[data-demo="enterprise"] .ent-role-grid strong, body[data-demo="enterprise"] .ent-role-grid small { display:block; }
body[data-demo="enterprise"] .ent-role-grid span { color:#087e8b; font-size:.53rem; font-weight:850; text-transform:uppercase; }
body[data-demo="enterprise"] .ent-role-grid strong { margin-top:4px; color:#314d61; font-size:.59rem; }
body[data-demo="enterprise"] .ent-role-grid small { margin-top:5px; color:#839098; font-size:.49rem; }
body[data-demo="enterprise"] .ent-rbac > footer { padding:11px 14px; border-top:1px solid #e7edef; color:#6f808b; background:#fafcfd; font-size:.54rem; }
body[data-demo="enterprise"] .ent-integrations { overflow:hidden; }
body[data-demo="enterprise"] .ent-integration-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:14px; }
body[data-demo="enterprise"] .ent-integration-grid article { display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:10px; align-items:center; padding:10px 11px; border:1px solid #e0e7ea; border-radius:9px; background:#fbfcfd; }
body[data-demo="enterprise"] .ent-integration-grid article > b { display:grid; width:34px; height:34px; place-items:center; border-radius:9px; background:#e8f4f5; color:#087e8b; font-size:.55rem; }
body[data-demo="enterprise"] .ent-integration-grid article strong, body[data-demo="enterprise"] .ent-integration-grid article small { display:block; }
body[data-demo="enterprise"] .ent-integration-grid article strong { color:#2f4b5e; font-size:.6rem; }
body[data-demo="enterprise"] .ent-integration-grid article small { margin-top:2px; color:#84919a; font-size:.49rem; }

@media (max-width:1200px) {
  body[data-demo="enterprise"] .ent-central { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-central button:nth-child(4) { border-right:0; }
  body[data-demo="enterprise"] .ent-central button:nth-child(n+5) { border-top:1px solid #e7edef; }
  body[data-demo="enterprise"] .ent-flow.is-purchase { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-flow.is-purchase article:nth-child(4) { border-right:0; }
  body[data-demo="enterprise"] .ent-flow.is-purchase article:nth-child(n+5) { border-top:1px solid #e7edef; }
}
@media (max-width:980px) {
  body[data-demo="enterprise"] .ent-kpi-grid, body[data-demo="enterprise"] .ent-approval-summary, body[data-demo="enterprise"] .ent-stock-ribbon, body[data-demo="enterprise"] .ent-finance-hero, body[data-demo="enterprise"] .ent-budget-hero { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-dashboard-grid, body[data-demo="enterprise"] .ent-two-columns, body[data-demo="enterprise"] .ent-two-columns.is-wide { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-quote-grid, body[data-demo="enterprise"] .ent-role-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-credit-grid { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-flow article:nth-child(3) { border-right:0; }
}
@media (max-width:860px) {
  body[data-demo="enterprise"] .demo-nav-section { margin-top:10px; }
  body[data-demo="enterprise"] .workspace-toolbar { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-profile-bar { align-items:flex-start; flex-direction:column; }
  body[data-demo="enterprise"] .ent-central { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-central button:nth-child(even) { border-right:0; }
  body[data-demo="enterprise"] .ent-central button:nth-child(n+3) { border-top:1px solid #e7edef; }
  body[data-demo="enterprise"] .ent-approval-meta { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-detail-grid, body[data-demo="enterprise"] .ent-budget-centers, body[data-demo="enterprise"] .ent-integration-grid { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-close-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-dre > button { grid-template-columns:minmax(150px,1fr) 120px auto; }
  body[data-demo="enterprise"] .ent-dre > button > small { display:none; }
}
@media (max-width:560px) {
  body[data-demo="enterprise"] .ent-kpi-grid, body[data-demo="enterprise"] .ent-approval-summary, body[data-demo="enterprise"] .ent-stock-ribbon, body[data-demo="enterprise"] .ent-finance-hero, body[data-demo="enterprise"] .ent-budget-hero, body[data-demo="enterprise"] .ent-cash-modes { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-profile-switch { display:grid; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-profile-switch button { width:100%; }
  body[data-demo="enterprise"] .ent-flow, body[data-demo="enterprise"] .ent-flow.is-purchase { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-flow article { min-height:82px; border-right:0; border-bottom:1px solid #e7edef; }
  body[data-demo="enterprise"] .ent-flow article:last-child { border-bottom:0; }
  body[data-demo="enterprise"] .ent-quote-grid, body[data-demo="enterprise"] .ent-role-grid { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-budget-mini { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-demo="enterprise"] .ent-close-grid { grid-template-columns:1fr; }
  body[data-demo="enterprise"] .ent-close footer { align-items:flex-start; flex-direction:column; }
  body[data-demo="enterprise"] .ent-dre > button { grid-template-columns:1fr auto; }
  body[data-demo="enterprise"] .ent-dre > button > small, body[data-demo="enterprise"] .ent-dre > button > em { display:none; }
  body[data-demo="enterprise"] .ent-integration-grid article { grid-template-columns:34px minmax(0,1fr); }
  body[data-demo="enterprise"] .ent-integration-grid article > .status { grid-column:2; justify-self:start; }
}


/* ============================================
   CONTROLE FINANCEIRO EMPRESARIAL — v20260915-7
   Tesouraria + Planejamento + Controladoria
   Escopo exclusivo body[data-demo="finance"]
   ============================================ */
body[data-demo="finance"] .demo-brand { min-height: 112px; }
body[data-demo="finance"] .demo-brand small { max-width: 150px; line-height: 1.2; }
body[data-demo="finance"] .demo-nav-section { display:block; margin:14px 12px 3px; color:rgba(255,255,255,.38); font-size:.53rem; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
body[data-demo="finance"] .demo-nav-section:first-child { margin-top:4px; }
body[data-demo="finance"] .demo-nav { gap:4px; padding-top:12px; }
body[data-demo="finance"] .demo-nav button { min-height:42px; }
body[data-demo="finance"] .fin-pro-dashboard, body[data-demo="finance"] .fin-screen { gap:14px; }
body[data-demo="finance"] .fin-pro-cockpit { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
body[data-demo="finance"] .fin-pro-kpi { position:relative; min-width:0; padding:15px 16px; border:1px solid #e0e5eb; border-radius:14px; background:#fff; box-shadow:0 5px 16px rgba(22,37,59,.035); }
body[data-demo="finance"] .fin-pro-kpi::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; border-radius:14px 0 0 14px; background:#6878df; }
body[data-demo="finance"] .fin-pro-kpi.is-positive::before { background:#22986c; } body[data-demo="finance"] .fin-pro-kpi.is-warning::before { background:#d78a22; } body[data-demo="finance"] .fin-pro-kpi.is-negative::before { background:#c84a58; } body[data-demo="finance"] .fin-pro-kpi.is-budget::before { background:#7455be; }
body[data-demo="finance"] .fin-pro-kpi span, body[data-demo="finance"] .fin-pro-kpi small { display:block; color:#748190; font-size:.61rem; }
body[data-demo="finance"] .fin-pro-kpi span { font-weight:800; text-transform:uppercase; letter-spacing:.035em; }
body[data-demo="finance"] .fin-pro-kpi strong { display:block; margin:5px 0 2px; color:#26364a; font-size:1.16rem; letter-spacing:-.025em; }
body[data-demo="finance"] .fin-pro-dashboard-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr); gap:14px; }
body[data-demo="finance"] .fin-pro-account-list { display:grid; gap:0; padding:4px 16px; }
body[data-demo="finance"] .fin-pro-account { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:14px; padding:11px 0; border-bottom:1px solid #edf0f3; }
body[data-demo="finance"] .fin-pro-account:last-child { border-bottom:0; }
body[data-demo="finance"] .fin-pro-account > div { display:flex; align-items:center; gap:10px; min-width:0; }
body[data-demo="finance"] .fin-pro-account > div > span { display:grid; width:34px; height:34px; place-items:center; flex:0 0 34px; border-radius:10px; background:#eef1ff; color:#5369d3; font-size:.58rem; font-weight:900; }
body[data-demo="finance"] .fin-pro-account p { min-width:0; margin:0; } body[data-demo="finance"] .fin-pro-account p strong, body[data-demo="finance"] .fin-pro-account p small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body[data-demo="finance"] .fin-pro-account p strong { color:#2a394d; font-size:.72rem; } body[data-demo="finance"] .fin-pro-account p small { color:#86919d; font-size:.57rem; }
body[data-demo="finance"] .fin-pro-account > b { color:#26364a; font-size:.74rem; }
body[data-demo="finance"] .fin-pro-button { margin:9px 16px 15px; min-height:36px; padding:0 13px; border:1px solid #d5dbf4; border-radius:9px; background:#f3f5ff; color:#5063c5; font-size:.62rem; font-weight:850; }
body[data-demo="finance"] .fin-pro-button:hover { background:#5369d3; color:#fff; }
body[data-demo="finance"] .fin-pro-horizon { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:7px; padding:15px; }
body[data-demo="finance"] .fin-pro-horizon article { min-width:0; padding:11px; border:1px solid #e6e9ee; border-radius:11px; background:#fafbfd; }
body[data-demo="finance"] .fin-pro-horizon article.is-focus { border-color:#cfd5f6; background:#f2f4ff; }
body[data-demo="finance"] .fin-pro-horizon span, body[data-demo="finance"] .fin-pro-horizon small { display:block; color:#7d8996; font-size:.54rem; }
body[data-demo="finance"] .fin-pro-horizon strong { display:block; margin:3px 0; color:#2c3a4e; font-size:.72rem; }
body[data-demo="finance"] .fin-pro-horizon.is-wide { margin:0; padding:0; grid-template-columns:repeat(5,minmax(0,1fr)); }
body[data-demo="finance"] .fin-pro-alerts { display:grid; gap:7px; padding:12px 15px 15px; }
body[data-demo="finance"] .fin-pro-alert { display:grid; grid-template-columns:80px minmax(0,1fr) auto 18px; align-items:center; gap:10px; min-height:48px; padding:8px 10px; border:1px solid #e7eaee; border-radius:10px; background:#fbfcfd; text-align:left; }
body[data-demo="finance"] .fin-pro-alert:hover { border-color:#ccd4f2; background:#f5f7ff; }
body[data-demo="finance"] .fin-pro-alert span { color:#7a8794; font-size:.53rem; font-weight:800; text-transform:uppercase; } body[data-demo="finance"] .fin-pro-alert strong { color:#2d3b4e; font-size:.65rem; } body[data-demo="finance"] .fin-pro-alert small { color:#6f7d8a; font-size:.57rem; }
body[data-demo="finance"] .fin-pro-budget-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; padding:15px 15px 10px; }
body[data-demo="finance"] .fin-pro-budget-strip article { padding:10px; border:1px solid #e6e9ee; border-radius:10px; background:#fafbfd; }
body[data-demo="finance"] .fin-pro-budget-strip span { display:block; color:#7c8895; font-size:.53rem; } body[data-demo="finance"] .fin-pro-budget-strip strong { display:block; margin-top:2px; color:#29394d; font-size:.69rem; }
body[data-demo="finance"] .fin-pro-budget-track { height:7px; margin:4px 15px 8px; overflow:hidden; border-radius:999px; background:#e9ecf1; }
body[data-demo="finance"] .fin-pro-budget-track i { display:block; height:100%; border-radius:999px; background:#6376da; } body[data-demo="finance"] .fin-pro-budget-track i.is-warning { background:#d59633; } body[data-demo="finance"] .fin-pro-budget-track i.is-over { background:#c94b58; }
body[data-demo="finance"] .fin-treasury-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
body[data-demo="finance"] .fin-treasury-card { min-width:0; padding:14px; border:1px solid #dfe4ea; border-radius:14px; background:#fff; box-shadow:0 5px 16px rgba(20,34,54,.035); }
body[data-demo="finance"] .fin-treasury-card header { display:grid; grid-template-columns:32px minmax(0,1fr) auto; align-items:center; gap:8px; }
body[data-demo="finance"] .fin-treasury-card header > span { display:grid; width:32px; height:32px; place-items:center; border-radius:9px; background:#eef1ff; color:#5267ce; font-size:.55rem; font-weight:900; }
body[data-demo="finance"] .fin-treasury-card header h3 { margin:1px 0 0; color:#2b394b; font-size:.72rem; } body[data-demo="finance"] .fin-treasury-card header small { display:block; color:#87929e; font-size:.51rem; }
body[data-demo="finance"] .fin-treasury-card > strong { display:block; margin:14px 0 2px; color:#26364a; font-size:1.1rem; } body[data-demo="finance"] .fin-treasury-card > p { min-height:34px; margin:0; color:#7d8995; font-size:.56rem; }
body[data-demo="finance"] .fin-treasury-card footer { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:10px; padding-top:9px; border-top:1px solid #edf0f3; }
body[data-demo="finance"] .fin-treasury-card footer small { color:#88939e; font-size:.5rem; } body[data-demo="finance"] .fin-treasury-card footer button { border:0; background:transparent; color:#566ad0; font-size:.55rem; font-weight:800; }
body[data-demo="finance"] .fin-pro-note { margin:10px 15px 15px; color:#7c8794; font-size:.59rem; }
body[data-demo="finance"] .fin-pro-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
body[data-demo="finance"] .fin-pro-summary article { padding:14px 15px; border:1px solid #dfe4ea; border-radius:13px; background:#fff; }
body[data-demo="finance"] .fin-pro-summary span, body[data-demo="finance"] .fin-pro-summary small { display:block; color:#7b8794; font-size:.56rem; } body[data-demo="finance"] .fin-pro-summary strong { display:block; margin:4px 0 2px; color:#2c394c; font-size:.92rem; }
body[data-demo="finance"] .fin-pro-summary article.is-negative strong { color:#ba4050; }
body[data-demo="finance"] .fin-aging-six { grid-template-columns:repeat(6,minmax(0,1fr)); }
body[data-demo="finance"] .fin-aging-card { min-width:0; padding:12px; border:1px solid #e2e6eb; border-radius:11px; background:#fafbfd; text-align:left; }
body[data-demo="finance"] .fin-aging-card:hover { transform:translateY(-1px); border-color:#ccd4f2; }
body[data-demo="finance"] .fin-aging-card span, body[data-demo="finance"] .fin-aging-card small { display:block; color:#7e8a96; font-size:.53rem; } body[data-demo="finance"] .fin-aging-card strong { display:block; margin:4px 0 2px; color:#29394d; font-size:.73rem; }
body[data-demo="finance"] .fin-aging-card.is-negative { background:#fff8f8; border-color:#efd9dd; } body[data-demo="finance"] .fin-aging-card.is-warning { background:#fffaf2; border-color:#f0e1c4; }
body[data-demo="finance"] .fin-reconcile-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) auto; gap:9px; }
body[data-demo="finance"] .fin-reconcile-summary article { padding:13px 14px; border:1px solid #dfe4ea; border-radius:12px; background:#fff; } body[data-demo="finance"] .fin-reconcile-summary article.is-warning { border-color:#eadbbf; background:#fffbf4; }
body[data-demo="finance"] .fin-reconcile-summary span { display:block; color:#7f8a96; font-size:.54rem; } body[data-demo="finance"] .fin-reconcile-summary strong { display:block; margin-top:3px; color:#29394c; font-size:.9rem; }
body[data-demo="finance"] .fin-reconcile-summary > button { min-width:125px; border:0; border-radius:11px; background:#5369d3; color:#fff; font-size:.64rem; font-weight:850; }
body[data-demo="finance"] .is-fin-positive { color:#1e8f64 !important; } body[data-demo="finance"] .is-fin-negative { color:#bf4451 !important; }
body[data-demo="finance"] .fin-inline-action { border:1px solid #d8def4; border-radius:8px; background:#f4f6ff; color:#5368cc; font-size:.55rem; font-weight:800; padding:5px 8px; }
body[data-demo="finance"] .fin-pro-callout { padding:14px 16px; border:1px solid #d9def4; border-radius:13px; background:#f7f8ff; } body[data-demo="finance"] .fin-pro-callout strong { color:#33455d; font-size:.69rem; } body[data-demo="finance"] .fin-pro-callout p { margin:3px 0 0; color:#758291; font-size:.59rem; }
body[data-demo="finance"] .fin-scenario-bar { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:11px 14px; border:1px solid #dfe4ea; border-radius:13px; background:#fff; }
body[data-demo="finance"] .fin-scenario-bar > div { display:flex; align-items:center; gap:6px; } body[data-demo="finance"] .fin-scenario-bar > div > span { margin-right:4px; color:#7e8996; font-size:.57rem; font-weight:800; }
body[data-demo="finance"] .fin-scenario-bar button { min-height:31px; padding:0 10px; border:1px solid #dfe4ea; border-radius:8px; background:#fafbfd; color:#667381; font-size:.57rem; font-weight:800; } body[data-demo="finance"] .fin-scenario-bar button.is-active { border-color:#5369d3; background:#5369d3; color:#fff; }
body[data-demo="finance"] .fin-scenario-bar p { margin:0; color:#7b8793; font-size:.57rem; }
body[data-demo="finance"] .fin-week-head, body[data-demo="finance"] .fin-week-row { display:grid; grid-template-columns:34px minmax(120px,1fr) repeat(4,minmax(100px,.7fr)); gap:8px; align-items:center; }
body[data-demo="finance"] .fin-week-head { padding:9px 14px; border-bottom:1px solid #e6eaee; background:#fafbfd; color:#7b8793; font-size:.51rem; font-weight:850; text-transform:uppercase; }
body[data-demo="finance"] .fin-week-row { padding:9px 14px; border-bottom:1px solid #edf0f3; color:#4e5b69; font-size:.59rem; }
body[data-demo="finance"] .fin-week-row:last-child { border-bottom:0; } body[data-demo="finance"] .fin-week-row.is-risk { background:#fff8f8; }
body[data-demo="finance"] .fin-week-row > span { display:grid; width:24px; height:24px; place-items:center; border-radius:7px; background:#eef1f5; color:#6d7985; font-weight:850; }
body[data-demo="finance"] .fin-week-row div strong, body[data-demo="finance"] .fin-week-row div small { display:block; } body[data-demo="finance"] .fin-week-row div strong { color:#344356; font-size:.61rem; } body[data-demo="finance"] .fin-week-row div small { color:#87929c; font-size:.49rem; }
body[data-demo="finance"] .fin-budget-centers { display:grid; gap:11px; padding:14px 15px; } body[data-demo="finance"] .fin-budget-centers article > div:first-child { display:flex; justify-content:space-between; align-items:center; gap:12px; } body[data-demo="finance"] .fin-budget-centers span { color:#4d5a68; font-size:.62rem; font-weight:800; } body[data-demo="finance"] .fin-budget-centers b { color:#5265c8; font-size:.6rem; } body[data-demo="finance"] .fin-budget-centers small { display:block; margin:4px 15px 0; color:#87929c; font-size:.51rem; }
body[data-demo="finance"] .fin-pro-risk { border-color:#ecd8b4 !important; background:#fffaf2; } body[data-demo="finance"] .fin-pro-risk > strong { display:block; padding:16px 16px 0; color:#9a681d; font-size:.78rem; } body[data-demo="finance"] .fin-pro-risk > p { margin:6px 16px 16px; color:#836f51; font-size:.6rem; }
body[data-demo="finance"] .fin-allocation-pro { display:grid; gap:0; padding:4px 15px 12px; } body[data-demo="finance"] .fin-allocation-pro article { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid #edf0f3; } body[data-demo="finance"] .fin-allocation-pro article:last-child { border-bottom:0; } body[data-demo="finance"] .fin-allocation-pro strong, body[data-demo="finance"] .fin-allocation-pro small { display:block; } body[data-demo="finance"] .fin-allocation-pro strong { color:#344355; font-size:.62rem; } body[data-demo="finance"] .fin-allocation-pro small { color:#87929c; font-size:.51rem; } body[data-demo="finance"] .fin-allocation-pro b { color:#2e3c4f; font-size:.61rem; }
body[data-demo="finance"] .fin-close-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:14px 15px; } body[data-demo="finance"] .fin-close-grid article { display:flex; align-items:center; gap:9px; padding:10px; border:1px solid #e5e9ed; border-radius:10px; background:#fafbfd; } body[data-demo="finance"] .fin-close-grid article > span { display:grid; width:25px; height:25px; place-items:center; border-radius:8px; font-weight:900; } body[data-demo="finance"] .fin-close-grid .is-done { background:#e8f6f0; color:#19865d; } body[data-demo="finance"] .fin-close-grid .is-pending { background:#fff3df; color:#b7771e; } body[data-demo="finance"] .fin-close-grid strong, body[data-demo="finance"] .fin-close-grid small { display:block; } body[data-demo="finance"] .fin-close-grid strong { color:#344356; font-size:.6rem; } body[data-demo="finance"] .fin-close-grid small { color:#87929c; font-size:.5rem; }
body[data-demo="finance"] .fin-pro-dimensions { display:flex; flex-wrap:wrap; gap:7px; padding:14px; } body[data-demo="finance"] .fin-pro-dimensions span { padding:6px 8px; border:1px solid #e0e5ea; border-radius:999px; background:#fafbfd; color:#687584; font-size:.53rem; font-weight:800; }
body[data-demo="finance"] .fin-simple-approval article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 15px; border-bottom:1px solid #edf0f3; } body[data-demo="finance"] .fin-simple-approval span { color:#7a8693; font-size:.57rem; } body[data-demo="finance"] .fin-simple-approval strong { color:#344255; font-size:.62rem; } body[data-demo="finance"] .fin-simple-approval p { margin:12px 15px 15px; color:#7c8894; font-size:.57rem; }
body[data-demo="finance"] .fin-audit-list { display:grid; gap:0; padding:4px 15px 12px; } body[data-demo="finance"] .fin-audit-list article { display:grid; grid-template-columns:85px minmax(0,1fr) auto; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid #edf0f3; } body[data-demo="finance"] .fin-audit-list time { color:#7f8a96; font-size:.52rem; } body[data-demo="finance"] .fin-audit-list strong, body[data-demo="finance"] .fin-audit-list small { display:block; } body[data-demo="finance"] .fin-audit-list strong { color:#344356; font-size:.61rem; } body[data-demo="finance"] .fin-audit-list small { color:#87929c; font-size:.5rem; } body[data-demo="finance"] .fin-audit-list b { color:#344356; font-size:.59rem; }
body[data-demo="finance"] .fin-accounting-pack { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 20px; border:1px solid #d9def4; border-radius:14px; background:linear-gradient(115deg,#f7f8ff,#f4f7fb); } body[data-demo="finance"] .fin-accounting-pack span { color:#5d70cd; font-size:.56rem; font-weight:850; text-transform:uppercase; letter-spacing:.08em; } body[data-demo="finance"] .fin-accounting-pack h3 { margin:4px 0; color:#2e3d51; font-size:.9rem; } body[data-demo="finance"] .fin-accounting-pack p { margin:0; color:#7b8794; font-size:.59rem; } body[data-demo="finance"] .fin-accounting-pack button { min-height:38px; padding:0 14px; border:0; border-radius:9px; background:#5369d3; color:#fff; font-size:.6rem; font-weight:850; white-space:nowrap; }
@media (max-width:1180px) { body[data-demo="finance"] .fin-pro-cockpit { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-demo="finance"] .fin-treasury-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } body[data-demo="finance"] .fin-aging-six { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:900px) { body[data-demo="finance"] .fin-pro-dashboard-grid { grid-template-columns:1fr; } body[data-demo="finance"] .fin-treasury-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-demo="finance"] .fin-pro-summary, body[data-demo="finance"] .fin-reconcile-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-demo="finance"] .fin-reconcile-summary > button { min-height:44px; } body[data-demo="finance"] .fin-week-head { display:none; } body[data-demo="finance"] .fin-week-row { grid-template-columns:32px minmax(120px,1fr) repeat(2,minmax(90px,.7fr)); } body[data-demo="finance"] .fin-week-row > b:nth-of-type(1), body[data-demo="finance"] .fin-week-row > b:nth-of-type(2) { display:none; } }
@media (max-width:620px) { body[data-demo="finance"] .fin-pro-cockpit, body[data-demo="finance"] .fin-treasury-grid, body[data-demo="finance"] .fin-pro-summary, body[data-demo="finance"] .fin-reconcile-summary { grid-template-columns:1fr; } body[data-demo="finance"] .fin-pro-horizon, body[data-demo="finance"] .fin-pro-horizon.is-wide { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-demo="finance"] .fin-pro-horizon article:last-child { grid-column:1/-1; } body[data-demo="finance"] .fin-aging-six { grid-template-columns:repeat(2,minmax(0,1fr)); } body[data-demo="finance"] .fin-close-grid { grid-template-columns:1fr; } body[data-demo="finance"] .fin-scenario-bar, body[data-demo="finance"] .fin-accounting-pack { align-items:flex-start; flex-direction:column; } body[data-demo="finance"] .fin-accounting-pack button { width:100%; } body[data-demo="finance"] .fin-week-row { grid-template-columns:28px minmax(100px,1fr) minmax(95px,.8fr); } body[data-demo="finance"] .fin-week-row > b, body[data-demo="finance"] .fin-week-row > strong { display:none; } body[data-demo="finance"] .fin-week-row > strong:last-child { display:block; } }
