/* [next]/internal/font/google/montserrat_3ee79a9.module.css [app-client] (css) */
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/ca55bb71b529573f-s.3q4n78m6muld7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/1361b9baaefe9807-s.1d_6dtvtn9g3_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/92eb00116dd31e6a-s.16nfeub7ja6ze.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/e1f600cb732239d9-s.1mvr14jy3vxq7.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../media/65341aea9fb91af5-s.p.1dqa_6e_ad4sj.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/ca55bb71b529573f-s.3q4n78m6muld7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/1361b9baaefe9807-s.1d_6dtvtn9g3_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/92eb00116dd31e6a-s.16nfeub7ja6ze.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/e1f600cb732239d9-s.1mvr14jy3vxq7.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../media/65341aea9fb91af5-s.p.1dqa_6e_ad4sj.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/ca55bb71b529573f-s.3q4n78m6muld7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/1361b9baaefe9807-s.1d_6dtvtn9g3_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/92eb00116dd31e6a-s.16nfeub7ja6ze.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/e1f600cb732239d9-s.1mvr14jy3vxq7.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../media/65341aea9fb91af5-s.p.1dqa_6e_ad4sj.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/ca55bb71b529573f-s.3q4n78m6muld7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/1361b9baaefe9807-s.1d_6dtvtn9g3_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/92eb00116dd31e6a-s.16nfeub7ja6ze.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/e1f600cb732239d9-s.1mvr14jy3vxq7.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../media/65341aea9fb91af5-s.p.1dqa_6e_ad4sj.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../media/ca55bb71b529573f-s.3q4n78m6muld7.woff2") format("woff2");
  unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../media/1361b9baaefe9807-s.1d_6dtvtn9g3_.woff2") format("woff2");
  unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../media/92eb00116dd31e6a-s.16nfeub7ja6ze.woff2") format("woff2");
  unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../media/e1f600cb732239d9-s.1mvr14jy3vxq7.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../media/65341aea9fb91af5-s.p.1dqa_6e_ad4sj.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Montserrat Fallback;
  src: local(Arial);
  ascent-override: 85.79%;
  descent-override: 22.25%;
  line-gap-override: 0.0%;
  size-adjust: 112.83%;
}

.montserrat_3ee79a9-module__Y35dnW__className {
  font-family: Montserrat, Montserrat Fallback;
  font-style: normal;
}

.montserrat_3ee79a9-module__Y35dnW__variable {
  --fonte-montserrat: "Montserrat", "Montserrat Fallback";
}

/* [project]/src/app/globals.css [app-client] (css) */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: block))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-border-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  }
}

@layer base, components;

@layer utilities {
  .sticky {
    position: sticky;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-flex {
    display: inline-flex;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
}

:root {
  --bg: #fff;
  --sidebar: #f7f8fa;
  --surface: #fff;
  --surface-2: #f4f5f7;
  --surface-3: #eceef1;
  --line: #e3e6eb;
  --line-2: #eef0f3;
  --ink: #1c2330;
  --text-2: #5f6166;
  --text-3: #8e9197;
  --brand: #4372b8;
  --brand-strong: #2f5694;
  --brand-soft: #eaf0f9;
  --brand-line: #bccde8;
  --accent: #5cbf90;
  --btn: #4372b8;
  --btn-hover: #2f5694;
  --on-btn: #fff;
  --ok: #2e8a5e;
  --ok-soft: #e6f4ec;
  --ok-line: #a9d9bf;
  --warn: #8a5a00;
  --warn-soft: #fcf1da;
  --warn-line: #e6c27a;
  --err: #b03a2e;
  --err-soft: #fbeae7;
  --err-line: #edb5ad;
  --neutral: #5f6166;
  --neutral-soft: #edeef0;
  --focus: #4372b8;
  --toast-bg: #1c2330;
  --toast-ink: #fff;
  --paper: #fff;
  --paper-ink: #1f2228;
  --paper-2: #55585e;
  --paper-line: #d9dce1;
  --paper-soft: #f5f6f8;
  --wa-head: #075e54;
  --wa-head-ink: #fff;
  --wa-bg: #ece5dd;
  --wa-in: #fff;
  --wa-out: #dcf8c6;
  --wa-ink: #111;
  --logo-blue: #4372b8;
  --logo-green: #5cbf90;
  --shadow: 0 1px 2px #1c23300d, 0 6px 18px #1c23300d;
  --chart-dot: #4372b8;
  --chart-off: #b6b9bf;
  --chart-axis: #d5d9df;
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #12161d;
    --sidebar: #161b23;
    --surface: #1a1f28;
    --surface-2: #20262f;
    --surface-3: #282f3a;
    --line: #2e3541;
    --line-2: #262c36;
    --ink: #e7ebf1;
    --text-2: #a9b0bc;
    --text-3: #7f8895;
    --brand: #7fa3dc;
    --brand-strong: #a3bee8;
    --brand-soft: #1e2a3d;
    --brand-line: #34507a;
    --accent: #5cbf90;
    --btn: #4372b8;
    --btn-hover: #5582c6;
    --on-btn: #fff;
    --ok: #6ccb9c;
    --ok-soft: #173126;
    --ok-line: #2c5c45;
    --warn: #e8be6a;
    --warn-soft: #33290f;
    --warn-line: #6a5420;
    --err: #f2928a;
    --err-soft: #3a1e1c;
    --err-line: #6e3530;
    --neutral: #b3b9c4;
    --neutral-soft: #2a303a;
    --focus: #8fb0e3;
    --toast-bg: #e7ebf1;
    --toast-ink: #12161d;
    --paper: #f3f4f6;
    --paper-ink: #1f2228;
    --paper-2: #55585e;
    --paper-line: #d2d6dc;
    --paper-soft: #e8eaee;
    --wa-head: #1f2c34;
    --wa-head-ink: #e9edef;
    --wa-bg: #0b141a;
    --wa-in: #202c33;
    --wa-out: #005c4b;
    --wa-ink: #e9edef;
    --logo-blue: #6f97d6;
    --logo-green: #5cbf90;
    --shadow: 0 1px 2px #0000004d, 0 6px 18px #00000040;
    --chart-dot: #7fa3dc;
    --chart-off: #5e6672;
    --chart-axis: #3a424e;
    --lightningcss-light: ;
    --lightningcss-dark: initial;
    color-scheme: dark;
  }
}

:root[data-theme="dark"] {
  --bg: #12161d;
  --sidebar: #161b23;
  --surface: #1a1f28;
  --surface-2: #20262f;
  --surface-3: #282f3a;
  --line: #2e3541;
  --line-2: #262c36;
  --ink: #e7ebf1;
  --text-2: #a9b0bc;
  --text-3: #7f8895;
  --brand: #7fa3dc;
  --brand-strong: #a3bee8;
  --brand-soft: #1e2a3d;
  --brand-line: #34507a;
  --accent: #5cbf90;
  --btn: #4372b8;
  --btn-hover: #5582c6;
  --on-btn: #fff;
  --ok: #6ccb9c;
  --ok-soft: #173126;
  --ok-line: #2c5c45;
  --warn: #e8be6a;
  --warn-soft: #33290f;
  --warn-line: #6a5420;
  --err: #f2928a;
  --err-soft: #3a1e1c;
  --err-line: #6e3530;
  --neutral: #b3b9c4;
  --neutral-soft: #2a303a;
  --focus: #8fb0e3;
  --toast-bg: #e7ebf1;
  --toast-ink: #12161d;
  --paper: #f3f4f6;
  --paper-ink: #1f2228;
  --paper-2: #55585e;
  --paper-line: #d2d6dc;
  --paper-soft: #e8eaee;
  --wa-head: #1f2c34;
  --wa-head-ink: #e9edef;
  --wa-bg: #0b141a;
  --wa-in: #202c33;
  --wa-out: #005c4b;
  --wa-ink: #e9edef;
  --logo-blue: #6f97d6;
  --logo-green: #5cbf90;
  --shadow: 0 1px 2px #0000004d, 0 6px 18px #00000040;
  --chart-dot: #7fa3dc;
  --chart-off: #5e6672;
  --chart-axis: #3a424e;
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

html, body {
  height: 100%;
}

body {
  background: var(--bg);
  color: var(--ink);
  font-family: var(--fonte-montserrat), Montserrat, "Segoe UI", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-variant-numeric: tabular-nums;
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

h1, h2, h3, h4, p, ul, ol, dl, dd, figure {
  margin: 0;
}

ul, ol {
  padding: 0;
  list-style: none;
}

a {
  color: var(--brand);
  text-decoration: none;
}

button, input, select, textarea {
  font: inherit;
  color: inherit;
}

button {
  cursor: pointer;
}

[hidden] {
  display: none !important;
}

:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
  border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {
  * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

.i {
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.i.sm {
  width: 14px;
  height: 14px;
}

.i.lg {
  width: 22px;
  height: 22px;
}

.muted {
  color: var(--text-2);
}

.faint {
  color: var(--text-3);
}

.num {
  text-align: right;
  white-space: nowrap;
}

.nowrap {
  white-space: nowrap;
}

.strong {
  color: var(--ink);
  font-weight: 700;
}

.sr {
  clip: rect(0 0 0 0);
  white-space: nowrap;
  width: 1px;
  height: 1px;
  position: absolute;
  overflow: hidden;
}

.shell {
  grid-template-columns: 248px minmax(0, 1fr);
  min-height: 100%;
  display: grid;
}

.shell.publico {
  grid-template-columns: minmax(0, 1fr);
}

.side {
  background: var(--sidebar);
  border-right: 1px solid var(--line);
  min-width: 0;
}

.side-in {
  flex-direction: column;
  gap: 18px;
  padding: 20px 14px 18px;
  display: flex;
  position: sticky;
  top: 0;
}

.brand {
  color: var(--ink);
  align-items: center;
  gap: 10px;
  padding: 0 8px;
  display: flex;
}

.brand svg {
  width: 34px;
  height: auto;
}

.brand b {
  letter-spacing: -.01em;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.1;
  display: block;
}

.brand span {
  color: var(--text-2);
  letter-spacing: .02em;
  font-size: 11px;
  font-weight: 600;
}

.org {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 8px;
  margin: 0 8px;
  padding: 10px 12px;
}

.org small {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-3);
  font-size: 10.5px;
  font-weight: 700;
  display: block;
}

.org b {
  margin-top: 2px;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.35;
  display: block;
}

.nav {
  flex-direction: column;
  gap: 2px;
  display: flex;
}

.nav a {
  color: var(--text-2);
  border-radius: 8px;
  align-items: center;
  gap: 11px;
  padding: 9px 12px;
  font-size: 13.5px;
  font-weight: 500;
  display: flex;
}

.nav a:hover {
  background: var(--surface-3);
  color: var(--ink);
}

.nav a.on {
  background: var(--brand-soft);
  color: var(--brand-strong);
  font-weight: 700;
}

.nav .badge {
  background: var(--warn-soft);
  color: var(--warn);
  border-radius: 99px;
  margin-left: auto;
  padding: 1px 7px;
  font-size: 11px;
  font-weight: 700;
}

.side-foot {
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
  display: flex;
}

.user {
  border-top: 1px solid var(--line);
  align-items: center;
  gap: 10px;
  padding: 10px 8px;
  display: flex;
}

.avatar {
  background: var(--brand-soft);
  width: 32px;
  height: 32px;
  color: var(--brand-strong);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  font-size: 12px;
  font-weight: 800;
  display: grid;
}

.user b {
  font-size: 12.5px;
  font-weight: 700;
  display: block;
}

.user span {
  color: var(--text-2);
  font-size: 11.5px;
}

.demo {
  color: var(--text-2);
  background: var(--surface-2);
  border: 1px dashed var(--line);
  text-align: center;
  border-radius: 6px;
  margin: 0 8px;
  padding: 6px 9px;
  font-size: 11px;
  font-weight: 600;
}

.tema {
  border: 1px solid var(--line);
  color: var(--text-2);
  background: none;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin: 0 8px;
  padding: 6px 9px;
  font-size: 11.5px;
  font-weight: 600;
  display: flex;
}

.topbar {
  display: none;
}

.main {
  min-width: 0;
  padding-block: 24px 56px;
  padding-left: max(32px, env(safe-area-inset-left, 0px));
  padding-right: max(32px, env(safe-area-inset-right, 0px));
}

.shell.publico .main {
  padding: 0;
}

.vhead {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
  margin-bottom: 20px;
  display: flex;
}

.vhead > div:first-child {
  min-width: 0;
}

.crumbs {
  color: var(--text-2);
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  font-size: 12px;
  font-weight: 500;
  display: flex;
}

.crumbs a {
  color: var(--text-2);
}

.crumbs a:hover {
  color: var(--brand);
}

.crumbs .i {
  width: 12px;
  height: 12px;
  color: var(--text-3);
}

h1 {
  letter-spacing: -.015em;
  font-size: 24px;
  font-weight: 800;
  line-height: 1.25;
}

.sub {
  color: var(--text-2);
  margin-top: 4px;
  font-size: 13.5px;
}

.acts {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

h2 {
  letter-spacing: -.005em;
  font-size: 15px;
  font-weight: 700;
}

h3 {
  font-size: 13.5px;
  font-weight: 700;
}

.sec-h {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
  display: flex;
}

.sec-h .muted {
  font-size: 12.5px;
}

.label {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-3);
  font-size: 11px;
  font-weight: 700;
}

.trilho {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  gap: 0;
  margin-bottom: 22px;
  display: flex;
  overflow-x: auto;
}

.trilho a {
  color: var(--text-2);
  white-space: nowrap;
  border-right: 1px solid var(--line-2);
  flex: 1 0 auto;
  align-items: center;
  gap: 9px;
  padding: 10px 16px;
  font-size: 12.5px;
  font-weight: 600;
  display: flex;
}

.trilho a:last-child {
  border-right: 0;
}

.trilho a:hover {
  background: var(--surface-2);
}

.trilho .n {
  border: 1.5px solid var(--line);
  width: 22px;
  height: 22px;
  color: var(--text-3);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  font-size: 11px;
  font-weight: 800;
  display: grid;
}

.trilho a.feito .n {
  background: var(--ok-soft);
  border-color: var(--ok-line);
  color: var(--ok);
}

.trilho a.atual {
  color: var(--brand-strong);
  background: var(--brand-soft);
}

.trilho a.atual .n {
  background: var(--btn);
  border-color: var(--btn);
  color: var(--on-btn);
}

.btn {
  background: var(--btn);
  color: var(--on-btn);
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 7px;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
  display: inline-flex;
}

.btn:hover {
  background: var(--btn-hover);
}

.btn.sec {
  background: var(--surface);
  color: var(--brand-strong);
  border-color: var(--brand-line);
}

.btn.sec:hover {
  background: var(--brand-soft);
}

.btn.ghost {
  color: var(--text-2);
  border-color: var(--line);
  background: none;
}

.btn.ghost:hover {
  background: var(--surface-2);
  color: var(--ink);
}

.btn.sm {
  gap: 6px;
  padding: 5px 10px;
  font-size: 12px;
}

.btn.lg {
  padding: 11px 18px;
  font-size: 14px;
}

.link {
  color: var(--brand);
  background: none;
  border: 0;
  align-items: center;
  gap: 5px;
  padding: 0;
  font-size: 13px;
  font-weight: 600;
  display: inline-flex;
}

.link:hover {
  text-decoration: underline;
}

.field {
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  display: flex;
}

.field > label, .field > .flabel {
  color: var(--text-2);
  font-size: 12px;
  font-weight: 600;
}

.inp, select.inp, textarea.inp {
  border: 1px solid var(--line);
  background: var(--surface);
  width: 100%;
  color: var(--ink);
  border-radius: 7px;
  min-width: 0;
  padding: 8px 10px;
  font-size: 13.5px;
}

.inp:focus {
  outline: 2px solid var(--focus);
  outline-offset: 0;
  border-color: var(--focus);
}

textarea.inp {
  resize: vertical;
  line-height: 1.5;
}

.hint {
  color: var(--text-3);
  font-size: 11.5px;
}

.grid-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
  display: grid;
}

.grid-form .full {
  grid-column: 1 / -1;
}

.check {
  cursor: pointer;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: inline-flex;
}

.check input {
  width: 16px;
  height: 16px;
  accent-color: var(--btn);
  margin: 0;
}

.seg {
  border: 1px solid var(--line);
  background: var(--surface-2);
  border-radius: 8px;
  flex-wrap: wrap;
  gap: 2px;
  padding: 2px;
  display: inline-flex;
}

.seg button {
  color: var(--text-2);
  background: none;
  border: 0;
  border-radius: 6px;
  padding: 5px 12px;
  font-size: 12.5px;
  font-weight: 600;
}

.seg button[aria-pressed="true"], .seg button[aria-selected="true"] {
  background: var(--surface);
  color: var(--ink);
  box-shadow: var(--shadow);
}

.tabs {
  border-bottom: 1px solid var(--line);
  gap: 4px;
  margin-bottom: 16px;
  display: flex;
  overflow-x: auto;
}

.tabs button {
  color: var(--text-2);
  white-space: nowrap;
  background: none;
  border: 0;
  border-bottom: 2px solid #0000;
  margin-bottom: -1px;
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 600;
}

.tabs button[aria-selected="true"] {
  color: var(--brand-strong);
  border-bottom-color: var(--brand);
}

.switch {
  flex-shrink: 0;
  width: 34px;
  height: 20px;
  display: inline-block;
  position: relative;
}

.switch input {
  opacity: 0;
  cursor: pointer;
  margin: 0;
  position: absolute;
  inset: 0;
}

.switch span {
  background: var(--surface-3);
  border: 1px solid var(--line);
  pointer-events: none;
  border-radius: 99px;
  transition: background .15s;
  position: absolute;
  inset: 0;
}

.switch span:after {
  content: "";
  background: var(--text-3);
  border-radius: 50%;
  width: 14px;
  height: 14px;
  transition: transform .15s, background .15s;
  position: absolute;
  top: 2px;
  left: 2px;
}

.switch input:checked + span {
  background: var(--btn);
  border-color: var(--btn);
}

.switch input:checked + span:after {
  background: var(--on-btn);
  transform: translateX(14px);
}

.switch input:focus-visible + span {
  outline: 2px solid var(--focus);
  outline-offset: 2px;
}

.selo {
  white-space: nowrap;
  border: 1px solid #0000;
  border-radius: 5px;
  align-items: center;
  gap: 5px;
  padding: 3px 8px 3px 6px;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.35;
  display: inline-flex;
}

.selo .i {
  stroke-width: 2px;
  width: 13px;
  height: 13px;
}

.selo.ok {
  background: var(--ok-soft);
  color: var(--ok);
  border-color: var(--ok-line);
}

.selo.warn {
  background: var(--warn-soft);
  color: var(--warn);
  border-color: var(--warn-line);
}

.selo.err {
  background: var(--err-soft);
  color: var(--err);
  border-color: var(--err-line);
}

.selo.info {
  background: var(--brand-soft);
  color: var(--brand-strong);
  border-color: var(--brand-line);
}

.selo.neu {
  background: var(--neutral-soft);
  color: var(--neutral);
  border-color: var(--line);
}

.tag {
  background: var(--brand-soft);
  color: var(--brand-strong);
  white-space: nowrap;
  border-radius: 4px;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 700;
  display: inline-block;
}

.tag.alt {
  background: var(--ok-soft);
  color: var(--ok);
}

.tag.neu {
  background: var(--neutral-soft);
  color: var(--neutral);
}

.twrap {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  overflow-x: auto;
}

.tbl {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.tbl th {
  text-align: left;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--text-3);
  border-bottom: 1px solid var(--line);
  background: var(--surface-2);
  white-space: nowrap;
  padding: 10px 12px;
  font-size: 10.5px;
  font-weight: 700;
}

.tbl td {
  border-bottom: 1px solid var(--line-2);
  vertical-align: middle;
  padding: 10px 12px;
}

.tbl tbody tr:last-child td {
  border-bottom: 0;
}

.tbl th.num, .tbl td.num {
  text-align: right;
}

.tbl tr.go {
  cursor: pointer;
}

.tbl tr.go:hover td {
  background: var(--surface-2);
}

.tbl tr.go td:last-child .i {
  color: var(--text-3);
}

.tbl td .it {
  color: var(--ink);
  font-weight: 600;
}

.tbl td.it {
  min-width: 160px;
}

.tbl.compacta {
  font-size: 12.5px;
}

.tbl.compacta th {
  white-space: normal;
  vertical-align: bottom;
  padding: 9px 6px;
  line-height: 1.3;
}

.tbl.compacta td {
  padding: 8px 6px;
}

.tbl.compacta th:first-child, .tbl.compacta td:first-child {
  padding-left: 12px;
}

.tbl.compacta th:last-child, .tbl.compacta td:last-child {
  padding-right: 12px;
}

.tbl.compacta td.it {
  min-width: 150px;
}

.tbl td .meta {
  color: var(--text-3);
  margin-top: 1px;
  font-size: 11.5px;
  display: block;
}

.tbl tfoot td {
  background: var(--surface-2);
  border-top: 1px solid var(--line);
  font-weight: 700;
}

.tbl .low {
  background: var(--ok-soft);
  color: var(--ok);
  border-radius: 4px;
  padding: 2px 6px;
  font-weight: 700;
}

.tbl .off {
  color: var(--text-3);
  text-decoration: line-through;
}

.tbl .ref {
  color: var(--brand-strong);
  font-weight: 800;
}

.dot-none {
  color: var(--text-3);
}

.panel {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  padding: 16px 18px;
}

.panel.flat {
  background: var(--surface-2);
  border-color: #0000;
}

.split {
  grid-template-columns: minmax(0, 1fr) 340px;
  align-items: start;
  gap: 24px;
  display: grid;
}

.split.wide-side {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.split.half {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.split.doc {
  grid-template-columns: 340px minmax(0, 1fr);
}

.split.rel {
  grid-template-columns: minmax(0, 1fr) 360px;
}

.stack {
  flex-direction: column;
  gap: 22px;
  min-width: 0;
  display: flex;
}

.row {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.kpis {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  display: grid;
}

.kpi {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  min-width: 0;
  padding: 14px 16px;
}

.kpi b {
  letter-spacing: -.01em;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
  display: block;
}

.kpi span {
  color: var(--text-2);
  font-size: 12.5px;
  font-weight: 500;
}

.kpi.alerta b {
  color: var(--warn);
}

.kpi.destaque {
  background: var(--brand-soft);
  border-color: var(--brand-line);
}

.kpi.destaque b {
  color: var(--brand-strong);
}

.kpis.k5 {
  grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 1.6fr);
}

.checks.cols {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 28px;
  display: grid;
}

.checks.cols li {
  border-bottom: 0;
  border-top: 1px solid var(--line-2);
}

.topo-item {
  grid-template-columns: minmax(0, 1fr) 380px;
  align-items: stretch;
  gap: 16px;
  margin-bottom: 22px;
  display: grid;
}

.topo-item .stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.lista-at li {
  border-bottom: 1px solid var(--line-2);
  align-items: flex-start;
  gap: 12px;
  padding: 11px 0;
  display: flex;
}

.lista-at li:last-child {
  border-bottom: 0;
}

.lista-at .txt {
  flex: 1;
  min-width: 0;
}

.lista-at .txt b {
  font-size: 13px;
  font-weight: 600;
}

.lista-at .txt span {
  color: var(--text-2);
  font-size: 12px;
  display: block;
}

.checks li {
  border-bottom: 1px solid var(--line-2);
  align-items: flex-start;
  gap: 10px;
  padding: 8px 0;
  font-size: 13px;
  display: flex;
}

.checks li:last-child {
  border-bottom: 0;
}

.checks .ok {
  color: var(--ok);
}

.checks .warn {
  color: var(--warn);
}

.checks span {
  flex: 1;
  min-width: 0;
}

.checks small {
  color: var(--text-2);
  font-size: 11.5px;
  display: block;
}

.def {
  grid-template-columns: 140px minmax(0, 1fr);
  gap: 8px 14px;
  font-size: 13px;
  display: grid;
}

.def dt {
  color: var(--text-2);
  font-weight: 500;
}

.def dd {
  font-weight: 600;
}

.nota {
  color: var(--text-2);
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
  display: flex;
}

.nota .i {
  color: var(--text-3);
  margin-top: 1px;
}

.trail {
  color: var(--text-2);
  align-items: center;
  gap: 8px;
  font-size: 12px;
  display: flex;
}

.toast {
  left: 50%;
  bottom: calc(24px + env(safe-area-inset-bottom, 0px));
  background: var(--toast-bg);
  color: var(--toast-ink);
  z-index: 50;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  max-width: calc(100% - 32px);
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  display: flex;
  position: fixed;
  transform: translateX(-50%);
}

.barra-fixa {
  z-index: 5;
  background: var(--surface);
  border: 1px solid var(--line);
  padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  box-shadow: var(--shadow);
  border-radius: 10px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  display: flex;
  position: sticky;
  bottom: 0;
}

.barra-fixa b {
  font-size: 14px;
}

.stats {
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.stats div {
  background: var(--surface);
  padding: 10px 12px;
}

.stats small {
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--text-3);
  font-size: 10.5px;
  font-weight: 700;
  display: block;
}

.stats b {
  font-size: 16px;
  font-weight: 800;
}

.stats .sel {
  background: var(--brand-soft);
}

.stats .sel b {
  color: var(--brand-strong);
}

.metodo {
  border: 1px solid var(--brand-line);
  background: var(--brand-soft);
  border-radius: 10px;
  padding: 12px 14px;
}

.metodo b {
  color: var(--brand-strong);
}

.chart svg {
  width: 100%;
  height: auto;
  display: block;
}

.chart .ax {
  stroke: var(--chart-axis);
  stroke-width: 1.5px;
}

.chart .pt {
  fill: var(--surface);
  stroke: var(--chart-dot);
  stroke-width: 1.6px;
}

.chart .ptx {
  stroke: var(--chart-off);
  stroke-width: 1.6px;
}

.chart .med {
  stroke: var(--brand);
  stroke-width: 2px;
}

.chart .medp {
  fill: var(--brand);
}

.chart .mea {
  stroke: var(--ok);
  stroke-width: 1.6px;
  stroke-dasharray: 4 3;
}

.chart .teto {
  stroke: var(--err);
  stroke-width: 1.5px;
  stroke-dasharray: 4 4;
}

.chart text {
  font-family: var(--fonte-montserrat), Montserrat, "Segoe UI", system-ui, sans-serif;
  font-size: 10.5px;
  font-weight: 700;
}

.chart .tmed {
  fill: var(--brand);
}

.chart .tmea {
  fill: var(--ok);
}

.chart .tteto {
  fill: var(--err);
}

.chart .tax {
  fill: var(--text-3);
  font-weight: 500;
}

.fonte {
  text-align: center;
  background: var(--brand-soft);
  min-width: 0;
  color: var(--brand-strong);
  border-radius: 4px;
  padding: 2px 7px;
  font-size: 11px;
  font-weight: 700;
  display: inline-block;
}

.fonte.forn {
  background: var(--ok-soft);
  color: var(--ok);
}

tr.descartado td {
  color: var(--text-3);
}

tr.descartado .fonte {
  background: var(--neutral-soft);
  color: var(--text-3);
}

tr.descartado .preco {
  text-decoration: line-through;
}

.motivo {
  color: var(--err);
  margin-top: 2px;
  font-size: 11.5px;
  font-weight: 600;
  display: block;
}

.emp {
  border-bottom: 1px solid var(--line-2);
  grid-template-columns: 28px minmax(0, 1.3fr) minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 16px 18px;
  display: grid;
}

.emp:last-child {
  border-bottom: 0;
}

.emp.sel {
  background: var(--brand-soft);
}

.emp h3 {
  font-size: 14px;
}

.emp .por {
  color: var(--text-2);
  flex-direction: column;
  gap: 3px;
  margin-top: 4px;
  font-size: 12px;
  display: flex;
}

.contato {
  align-items: flex-start;
  gap: 7px;
  margin-bottom: 4px;
  font-size: 12.5px;
  display: flex;
}

.contato .i {
  width: 14px;
  height: 14px;
  color: var(--text-3);
  margin-top: 2px;
}

.contato small {
  color: var(--text-3);
  font-size: 11px;
  display: block;
}

.okline {
  align-items: center;
  gap: 6px;
  margin-bottom: 4px;
  font-size: 12px;
  display: flex;
}

.okline .i {
  width: 14px;
  height: 14px;
  color: var(--ok);
  stroke-width: 2px;
}

.okline.warn .i {
  color: var(--warn);
}

.filtros {
  flex-wrap: wrap;
  align-items: end;
  gap: 14px;
  margin-bottom: 14px;
  display: flex;
}

.tl {
  align-items: center;
  gap: 0;
  min-width: 0;
  display: flex;
}

.tl .st {
  width: 92px;
  color: var(--text-3);
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  display: flex;
  position: relative;
}

.tl .st:before {
  content: "";
  background: var(--line);
  z-index: 0;
  width: 100%;
  height: 2px;
  position: absolute;
  top: 8px;
  right: 50%;
}

.tl .st:first-child:before {
  display: none;
}

.tl .st .d {
  border: 2px solid var(--line);
  background: var(--surface);
  z-index: 1;
  border-radius: 50%;
  place-items: center;
  width: 18px;
  height: 18px;
  display: grid;
}

.tl .st.f {
  color: var(--ink);
  font-weight: 600;
}

.tl .st.f .d {
  background: var(--ok);
  border-color: var(--ok);
}

.tl .st.f:before {
  background: var(--ok);
}

.tl .st.x {
  color: var(--err);
  font-weight: 600;
}

.tl .st.x .d {
  border-color: var(--err);
  background: var(--err-soft);
}

.tl .st small {
  color: var(--text-3);
  font-size: 10.5px;
  font-weight: 500;
}

.carta {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  overflow: hidden;
}

.carta-h {
  border-bottom: 1px solid var(--line-2);
  background: var(--surface-2);
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 4px 10px;
  padding: 12px 16px;
  font-size: 12.5px;
  display: grid;
}

.carta-h span {
  color: var(--text-3);
}

.carta-b {
  flex-direction: column;
  gap: 10px;
  padding: 16px 18px;
  font-size: 13px;
  line-height: 1.6;
  display: flex;
}

.carta-b .lnk {
  background: var(--btn);
  color: var(--on-btn);
  border-radius: 6px;
  align-self: flex-start;
  padding: 8px 14px;
  font-size: 12.5px;
  font-weight: 700;
  display: inline-block;
}

.wa {
  border: 1px solid var(--line);
  border-radius: 14px;
  max-width: 380px;
  overflow: hidden;
}

.wa-h {
  background: var(--wa-head);
  color: var(--wa-head-ink);
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  font-size: 13px;
  display: flex;
}

.wa-h b {
  font-weight: 700;
  display: block;
}

.wa-h small {
  opacity: .8;
  font-size: 11px;
}

.wa-av {
  background: var(--paper);
  border-radius: 50%;
  place-items: center;
  width: 32px;
  height: 32px;
  display: grid;
}

.wa-av svg {
  width: 22px;
  height: auto;
}

.wa-b {
  background: var(--wa-bg);
  flex-direction: column;
  gap: 8px;
  padding: 14px 12px;
  display: flex;
}

.msg {
  background: var(--wa-in);
  color: var(--wa-ink);
  border-radius: 0 8px 8px;
  max-width: 92%;
  padding: 8px 10px 6px;
  font-size: 12.5px;
  line-height: 1.5;
}

.msg.out {
  background: var(--wa-out);
  border-top-left-radius: 8px;
  border-top-right-radius: 0;
  align-self: flex-end;
}

.msg b {
  color: inherit;
}

.msg .t {
  text-align: right;
  opacity: .6;
  font-size: 10px;
  display: block;
}

.msg .card {
  border-left: 3px solid var(--brand);
  background: var(--surface-2);
  color: var(--ink);
  border-radius: 4px;
  margin-top: 6px;
  padding: 5px 8px;
  display: block;
}

.papel {
  background: var(--paper);
  color: var(--paper-ink);
  border: 1px solid var(--paper-line);
  box-shadow: var(--shadow);
  border-radius: 4px;
  min-width: 0;
  max-width: 820px;
  padding: 40px 44px;
  font-size: 12px;
  line-height: 1.5;
  overflow-x: auto;
}

.papel h2, .papel h3, .papel b {
  color: var(--paper-ink);
}

.papel .pcab {
  border-bottom: 1px solid var(--paper-line);
  align-items: center;
  gap: 14px;
  padding-bottom: 14px;
  display: flex;
}

.papel .brasao {
  border: 1.5px solid var(--paper-line);
  width: 44px;
  height: 44px;
  color: var(--paper-2);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.papel .ptit {
  text-align: center;
  letter-spacing: .02em;
  margin: 18px 0 2px;
  font-size: 14px;
  font-weight: 800;
}

.papel .psub {
  text-align: center;
  color: var(--paper-2);
  margin-bottom: 16px;
  font-size: 11px;
}

.papel .pmeta {
  color: var(--paper-2);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px 20px;
  margin-bottom: 16px;
  font-size: 11.5px;
  display: grid;
}

.papel .psec {
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 18px 0 6px;
  font-size: 11px;
  font-weight: 800;
}

.papel table {
  border-collapse: collapse;
  width: 100%;
  font-size: 11px;
}

.papel th {
  text-align: left;
  border-bottom: 1px solid var(--paper-2);
  padding: 4px 6px;
  font-weight: 700;
}

.papel td {
  border-bottom: 1px solid var(--paper-line);
  color: var(--paper-ink);
  overflow-wrap: anywhere;
  padding: 4px 6px;
}

.papel td.num, .papel th.num {
  text-align: right;
}

.papel tr.x td {
  color: var(--paper-2);
}

.papel tr.x td.num {
  text-decoration: line-through;
}

.papel .calc {
  background: var(--paper-soft);
  border-radius: 3px;
  padding: 10px 12px;
  font-size: 11.5px;
}

.papel .refb {
  border: 1.5px solid var(--paper-ink);
  border-radius: 3px;
  justify-content: space-between;
  align-items: center;
  margin-top: 8px;
  padding: 8px 12px;
  font-size: 12px;
  display: flex;
}

.papel .refb b {
  font-size: 15px;
}

.papel .assin {
  align-items: flex-end;
  gap: 24px;
  margin-top: 28px;
  display: flex;
}

.papel .sig {
  text-align: center;
  color: var(--paper-2);
  flex: 1;
  font-size: 10.5px;
}

.papel .sig div {
  border-top: 1px solid var(--paper-ink);
  margin-bottom: 4px;
}

.papel .qr {
  text-align: center;
  width: 112px;
  color: var(--paper-2);
  font-size: 9.5px;
}

.papel .qr svg {
  width: 80px;
  height: 80px;
  margin: 0 auto 4px;
  display: block;
}

.papel .aviso {
  border-top: 1px solid var(--paper-line);
  color: var(--paper-2);
  margin-top: 18px;
  padding-top: 8px;
  font-size: 10.5px;
}

.pub-top {
  border-bottom: 1px solid var(--line);
  background: var(--surface);
}

.pub-in {
  max-width: 1040px;
  padding-block: 18px;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
  margin: 0 auto;
}

.pub-top .pub-in {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.pub-org {
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.pub-org .brasao {
  border: 1.5px solid var(--line);
  width: 40px;
  height: 40px;
  color: var(--text-2);
  border-radius: 50%;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.pub-org b {
  font-size: 14px;
  display: block;
}

.pub-org span {
  color: var(--text-2);
  font-size: 12px;
}

.pub-por {
  color: var(--text-3);
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  font-weight: 600;
  display: flex;
}

.pub-por svg {
  width: 26px;
  height: auto;
}

.pub-body {
  padding-block: 28px 56px;
}

.pitem {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 10px;
  flex-direction: column;
  gap: 14px;
  padding: 16px 18px;
  display: flex;
}

.pitem-h {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  display: flex;
}

.pitem-h h3 {
  font-size: 14.5px;
}

.pitem-g {
  grid-template-columns: 1.1fr 1fr 1fr 1fr .9fr;
  gap: 12px;
  display: grid;
}

.ptotal {
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  font-size: 13px;
  display: flex;
}

.ptotal b {
  font-size: 15px;
}

.anexo {
  border: 1.5px dashed var(--brand-line);
  background: var(--surface);
  border-radius: 10px;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  display: flex;
}

.anexo .i {
  color: var(--brand);
}

.anexo > div {
  flex: 200px;
  min-width: 0;
}

.anexo > .anexo-acao {
  flex-wrap: wrap;
  flex: none;
  align-items: center;
  gap: 10px;
  display: flex;
}

.grid-form.g3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.verif {
  text-align: left;
  max-width: 560px;
  margin: 0 auto;
}

.autentico {
  border: 1px solid var(--ok-line);
  background: var(--ok-soft);
  color: var(--ok);
  border-radius: 10px;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  font-size: 14px;
  font-weight: 700;
  display: flex;
}

.login {
  min-height: 100%;
  padding-block: 40px;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
  background: var(--surface-2);
  place-items: center;
  display: grid;
}

.login-box {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 12px;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  max-width: 400px;
  padding: 32px 28px;
  display: flex;
}

.busca {
  border: 1.5px solid var(--brand-line);
  background: var(--surface);
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  padding: 6px 6px 6px 16px;
  display: flex;
}

.busca .i {
  color: var(--text-3);
}

.busca input {
  min-width: 0;
  color: var(--ink);
  background: none;
  border: 0;
  flex: 1;
  padding: 8px 0;
  font-size: 17px;
  font-weight: 500;
}

.busca input:focus {
  outline: none;
}

.busca:focus-within {
  outline: 2px solid var(--focus);
  outline-offset: 1px;
}

.res-h {
  background: var(--line);
  border: 1px solid var(--line);
  border-radius: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.res-h div {
  background: var(--surface);
  padding: 12px 14px;
}

.res-h small {
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--text-3);
  font-size: 10.5px;
  font-weight: 700;
  display: block;
}

.res-h b {
  font-size: 18px;
  font-weight: 800;
}

.res-h .sel {
  background: var(--brand-soft);
}

.res-h .sel b {
  color: var(--brand-strong);
}

.doc-li {
  border-bottom: 1px solid var(--line-2);
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  display: flex;
}

.doc-li:last-child {
  border-bottom: 0;
}

.doc-li .txt {
  flex: 1;
  min-width: 0;
}

.doc-li .txt b {
  font-size: 13px;
  font-weight: 600;
  display: block;
}

.doc-li .txt span {
  color: var(--text-3);
  font-size: 11.5px;
}

.doc-li.on {
  background: var(--brand-soft);
}

@media (max-width: 1180px) {
  .split, .split.wide-side, .split.half, .split.doc, .split.rel, .topo-item {
    grid-template-columns: minmax(0, 1fr);
  }

  .checks.cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .emp {
    grid-template-columns: 28px minmax(0, 1fr) minmax(0, 1fr);
  }

  .emp > :last-child {
    grid-column: 2 / -1;
  }
}

@media (max-width: 900px) {
  .shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .side {
    border-right: 0;
    border-bottom: 1px solid var(--line);
    z-index: 20;
    position: sticky;
    top: 0;
  }

  .side-in {
    padding: 10px max(16px, env(safe-area-inset-right, 0px)) 10px max(16px, env(safe-area-inset-left, 0px));
    gap: 12px;
    position: static;
  }

  .topbar {
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    display: flex;
  }

  .side-in > .brand {
    display: none;
  }

  .side-menu {
    flex-direction: column;
    gap: 12px;
    display: flex;
  }

  .main {
    padding-block: 18px 48px;
    padding-left: max(16px, env(safe-area-inset-left, 0px));
    padding-right: max(16px, env(safe-area-inset-right, 0px));
  }

  .kpis, .kpis.k5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kpis.k5 .kpi:last-child {
    grid-column: 1 / -1;
  }

  .kpi b {
    font-size: 24px;
  }

  .checks.cols {
    grid-template-columns: minmax(0, 1fr);
  }

  .topo-item .stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .res-h, .stats, .pitem-g {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .papel {
    padding: 24px 18px;
  }

  .papel .pmeta {
    grid-template-columns: minmax(0, 1fr);
  }

  .emp {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .emp > :nth-child(n+3) {
    grid-column: 2 / -1;
  }

  h1 {
    font-size: 21px;
  }

  .lista-at li {
    flex-wrap: wrap;
  }

  .lista-at li .btn {
    margin-left: auto;
  }

  .lista-at .txt {
    flex-basis: 100%;
    order: 3;
  }

  .tbl td .it, .tbl td .meta {
    min-width: 180px;
    display: block;
  }

  .grid-form.g3 {
    grid-template-columns: minmax(0, 1fr);
  }

  .anexo {
    align-items: flex-start;
  }

  .anexo > .anexo-txt {
    flex: calc(100% - 40px);
  }

  .anexo > .anexo-acao {
    flex: 100%;
    padding-left: 34px;
  }
}

@media (min-width: 901px) {
  .side-menu {
    flex-direction: column;
    gap: 18px;
    display: flex !important;
  }

  .topbar {
    display: none !important;
  }
}

.shell.publico .main, .shell.publico .view, .shell.publico .login {
  min-height: 100vh;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

/*# sourceMappingURL=%5Broot-of-the-server%5D__1gkzzutdski5u._.css.map*/