
      :root {
        --ink: #181128;
        --muted: #716b85;
        --line: #e9e5f0;
        --paper: #fbfbfe;
        --card: #ffffff;
        --purple: #5d0ac8;
        --purple2: #34006e;
        --pink: #ed007d;
        --pink2: #fd3d92;
        --green: #159b67;
        --orange: #e9850e;
        --red: #e8414f;
        --shadow: 0 12px 32px rgba(47, 17, 80, 0.1);
        --radius: 18px;
        --sidebar: 270px;
      }
      * {
        box-sizing: border-box;
      }
      html,
      body {
        margin: 0;
        min-height: 100%;
        font-family:
          Inter,
          Segoe UI,
          Roboto,
          Arial,
          sans-serif;
        color: var(--ink);
        background: #f8f7fb;
      }
      button,
      input,
      select,
      textarea {
        font: inherit;
      }
      button {
        cursor: pointer;
        border: 0;
      }
      a {
        text-decoration: none;
        color: inherit;
      }
      .hidden {
        display: none !important;
      }
      #app {
        min-height: 100vh;
      }
      .toast {
        position: fixed;
        right: 22px;
        bottom: 22px;
        z-index: 1000;
        background: #20113c;
        color: #fff;
        padding: 13px 16px;
        border-radius: 14px;
        box-shadow: var(--shadow);
        opacity: 0;
        transform: translateY(16px);
        pointer-events: none;
        transition: 0.2s;
      }
      .toast.show {
        opacity: 1;
        transform: none;
      }
      .toast.error {
        background: #b42333;
      }
      .toast.good {
        background: #087c55;
      }
      /* Login */
      .login-shell {
        min-height: 100vh;
        display: grid;
        place-items: center;
        padding: 24px;
        background:
          radial-gradient(
            circle at 10% 12%,
            rgba(237, 0, 125, 0.22),
            transparent 30%
          ),
          radial-gradient(
            circle at 92% 90%,
            rgba(93, 10, 200, 0.25),
            transparent 30%
          ),
          linear-gradient(135deg, #180034, #3d007d 56%, #210040);
      }
      .login-card {
        width: min(470px, 100%);
        background: #fff;
        border-radius: 28px;
        padding: 34px;
        box-shadow: 0 25px 70px rgba(0, 0, 0, 0.28);
      }
      .brand-login {
        display: flex;
        align-items: center;
        gap: 13px;
        margin-bottom: 26px;
      }
      .vivo-logo {
        width: 52px;
        height: 52px;
        border-radius: 16px;
        display: grid;
        place-items: center;
        background: linear-gradient(135deg, #6200b9, #ed007d);
        color: #fff;
        font-size: 12px;
        font-weight: 1000;
        letter-spacing: 0.2px;
        box-shadow: 0 12px 22px rgba(237, 0, 125, 0.25);
      }
      .brand-login h1 {
        font-size: 23px;
        margin: 0;
      }
      .brand-login p {
        margin: 3px 0 0;
        color: var(--muted);
        font-size: 13px;
      }
      .login-card h2 {
        margin: 0 0 7px;
        font-size: 25px;
      }
      .login-card .intro {
        margin: 0 0 22px;
        color: var(--muted);
        line-height: 1.45;
      }
      .field {
        display: grid;
        gap: 7px;
        margin: 14px 0;
      }
      .field label {
        font-size: 13px;
        font-weight: 850;
      }
      .field input,
      .field select,
      .field textarea {
        width: 100%;
        border: 1px solid #ddd7e8;
        border-radius: 13px;
        padding: 13px 14px;
        outline: none;
        background: #fff;
      }
      .field textarea {
        min-height: 120px;
        resize: vertical;
      }
      .field input:focus,
      .field select:focus,
      .field textarea:focus {
        border-color: var(--purple);
        box-shadow: 0 0 0 4px rgba(93, 10, 200, 0.1);
      }
      .login-actions {
        display: flex;
        gap: 10px;
        margin-top: 18px;
      }
      .btn {
        border-radius: 12px;
        padding: 11px 14px;
        font-weight: 850;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        transition: 0.15s;
      }
      .btn:hover {
        transform: translateY(-1px);
      }
      .btn.primary {
        color: #fff;
        background: linear-gradient(135deg, var(--purple), var(--pink));
        box-shadow: 0 10px 20px rgba(93, 10, 200, 0.18);
      }
      .btn.soft {
        background: #f0ecf7;
        color: #442170;
      }
      .btn.outline {
        background: #fff;
        border: 1px solid #d8cfee;
        color: #4a1b8d;
      }
      .btn.danger {
        background: #ffe8ec;
        color: #b21c34;
      }
      .btn.good {
        background: #e9faf3;
        color: #0b7f56;
      }
      .btn.block {
        width: 100%;
      }
      .login-note {
        background: #f6f2ff;
        border: 1px solid #e4d7fb;
        border-radius: 12px;
        padding: 11px 12px;
        font-size: 12px;
        color: #5e5575;
        margin-top: 17px;
      }
      .connection {
        font-size: 12px;
        color: var(--muted);
        margin-top: 14px;
      }
      .connection.ok {
        color: #07815a;
      }
      .connection.bad {
        color: #b42333;
      }
      /* App */
      .shell {
        display: flex;
        min-height: 100vh;
      }
      .sidebar {
        width: var(--sidebar);
        position: fixed;
        inset: 0 auto 0 0;
        background: linear-gradient(180deg, #15002e, #240052 60%, #16002d);
        color: #fff;
        padding: 24px 16px;
        overflow-y: auto;
        z-index: 30;
        box-shadow: 10px 0 28px rgba(11, 0, 26, 0.15);
      }
      .side-brand {
        display: flex;
        gap: 11px;
        align-items: center;
        padding: 10px 9px 20px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
        margin-bottom: 18px;
      }
      .side-brand .logo {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        display: grid;
        place-items: center;
        background: linear-gradient(135deg, #6400c9, #ec007d);
        font-weight: 1000;
        font-size: 11px;
      }
      .side-brand strong {
        display: block;
        font-size: 18px;
      }
      .side-brand span {
        font-size: 12px;
        color: rgba(255, 255, 255, 0.65);
        display: block;
        margin-top: 4px;
      }
      .nav-label {
        color: rgba(255, 255, 255, 0.48);
        font-size: 11px;
        font-weight: 900;
        letter-spacing: 1.3px;
        margin: 18px 12px 8px;
        text-transform: uppercase;
      }
      .nav-btn,
      .quick-link {
        width: 100%;
        display: flex;
        gap: 10px;
        align-items: center;
        padding: 13px 13px;
        margin: 3px 0;
        color: rgba(255, 255, 255, 0.84);
        border-radius: 13px;
        background: transparent;
        text-align: left;
        font-weight: 750;
      }
      .nav-btn:hover,
      .quick-link:hover {
        background: rgba(255, 255, 255, 0.09);
        color: #fff;
      }
      .nav-btn.active {
        background: linear-gradient(135deg, #7d0bd7, #e70080);
        color: #fff;
        box-shadow: 0 12px 23px rgba(213, 0, 139, 0.2);
      }
      .nav-btn .ico,
      .quick-link .ico {
        width: 20px;
        text-align: center;
      }
      .nav-btn .nav-text {
        display: block;
        flex: 1;
        min-width: 0;
        white-space: normal;
        word-break: break-word;
        line-height: 1.16;
      }
      .side-links {
        margin-top: 5px;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
        padding-top: 7px;
      }
      .category-title {
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #fff;
        font-size: 12px;
        font-weight: 850;
        padding: 10px 12px;
      }
      .quick-link {
        font-size: 13px;
        padding: 10px 12px;
      }
      .side-footer {
        position: relative;
        bottom: auto;
        flex: 0 0 auto;
        background: linear-gradient(180deg, rgba(22, 0, 46, 0), #16002d 18%);
        padding: 20px 0 6px;
        margin-top: 20px;
      }
      .session-card {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 12px;
        border-radius: 15px;
        background: rgba(255, 255, 255, 0.07);
      }
      .avatar {
        width: 35px;
        height: 35px;
        border-radius: 50%;
        display: grid;
        place-items: center;
        background: linear-gradient(135deg, #ee137e, #7b17d7);
        font-weight: 900;
      }
      .session-card b {
        font-size: 13px;
      }
      .session-card small {
        display: block;
        color: rgba(255, 255, 255, 0.65);
        margin-top: 3px;
      }
      .logout {
        margin-top: 9px;
        border: 1px solid rgba(255, 255, 255, 0.18);
        color: #fff;
        background: transparent;
        width: 100%;
      }

      /* Fotos de perfil */
      .avatar,
      .mini-avatar {
        overflow: hidden;
        position: relative;
        background: linear-gradient(135deg, #ee137e, #7b17d7);
      }
      .avatar img,
      .mini-avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
      }
      .avatar-button {
        padding: 0;
        background: transparent;
        border: 0;
        border-radius: 50%;
        width: 35px;
        height: 35px;
        flex: 0 0 auto;
        cursor: pointer;
      }
      .avatar-button:hover .avatar {
        outline: 2px solid rgba(255, 255, 255, 0.8);
        outline-offset: 2px;
      }
      .profile-photo-note {
        font-size: 10px;
        color: rgba(255, 255, 255, 0.6);
        margin-top: 4px;
      }
      /* Editor de fluxos no formato conhecido do sistema anterior */
      .flow-editor-grid {
        display: grid;
        grid-template-columns: 340px minmax(0, 1fr);
        gap: 18px;
        align-items: start;
      }
      .flow-editor-grid .flow-panel {
        min-width: 0;
      }
      .flow-editor-grid .flow-list-panel {
        position: sticky;
        top: 18px;
      }
      .flow-item {
        width: 100%;
        text-align: left;
        border: 1px solid #e6deef;
        border-radius: 14px;
        background: #fff;
        padding: 14px 15px;
        margin-bottom: 10px;
        color: var(--ink);
      }
      .flow-item:hover {
        border-color: #8a20e4;
        background: #fbf8ff;
      }
      .flow-item.selected {
        border: 2px solid #7a11d6;
        background: #fbf7ff;
        padding: 13px 14px;
      }
      .flow-item b {
        display: block;
        font-size: 16px;
      }
      .flow-item small {
        display: block;
        color: var(--muted);
        margin-top: 5px;
      }
      .flow-config-form {
        display: grid;
        grid-template-columns: 1.2fr 0.8fr;
        gap: 13px;
      }
      .flow-config-form .wide {
        grid-column: 1/-1;
      }
      .flow-step-layout {
        display: grid;
        grid-template-columns: 340px minmax(0, 1fr);
        gap: 18px;
        margin-top: 18px;
        align-items: start;
      }
      .step-list-panel {
        position: sticky;
        top: 18px;
      }
      .flow-step-item {
        width: 100%;
        text-align: left;
        border: 1px solid #e6deef;
        border-radius: 13px;
        background: #fff;
        padding: 12px 14px;
        margin-bottom: 9px;
        color: var(--ink);
      }
      .flow-step-item.selected {
        border: 2px solid #7a11d6;
        background: #fbf7ff;
        padding: 11px 13px;
      }
      .flow-step-item b {
        display: block;
        font-size: 15px;
      }
      .flow-step-item small {
        display: block;
        color: var(--muted);
        margin-top: 4px;
      }
      .step-edit-grid {
        display: grid;
        grid-template-columns: 1fr 1.4fr;
        gap: 13px;
      }
      .step-edit-grid .span2 {
        grid-column: 1/-1;
      }
      .step-edit-grid .triple {
        display: grid;
        grid-template-columns: 1.1fr 1fr 0.7fr;
        gap: 13px;
        grid-column: 1/-1;
      }
      .option-row {
        display: grid;
        grid-template-columns: 1.3fr 1fr auto;
        gap: 10px;
        align-items: end;
        padding: 11px;
        border: 1px solid #ece6f4;
        background: #fcfbfe;
        border-radius: 12px;
        margin-top: 9px;
      }
      .option-row .field {
        margin: 0;
      }
      .photo-picker-card {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px;
        border: 1px dashed #d7c8ee;
        border-radius: 14px;
        background: #fbf8ff;
      }
      .photo-picker-card .mini-avatar {
        width: 42px;
        height: 42px;
        font-size: 13px;
        flex: 0 0 auto;
      }
      @media (max-width: 1100px) {
        .flow-editor-grid,
        .flow-step-layout {
          grid-template-columns: 1fr;
        }
        .flow-editor-grid .flow-list-panel,
        .step-list-panel {
          position: static;
        }
        .flow-config-form {
          grid-template-columns: 1fr;
        }
        .step-edit-grid {
          grid-template-columns: 1fr;
        }
        .step-edit-grid .triple {
          grid-template-columns: 1fr;
        }
        .option-row {
          grid-template-columns: 1fr;
        }
        .priority-list {
          grid-template-columns: repeat(3, minmax(130px, 1fr));
        }
      }

      .main {
        margin-left: var(--sidebar);
        width: calc(100% - var(--sidebar));
        padding: 32px 34px 42px;
        min-width: 0;
      }
      .topbar {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 18px;
        margin-bottom: 22px;
      }
      .topbar h1 {
        margin: 0;
        font-size: 30px;
        letter-spacing: -0.5px;
        color: #2f075e;
      }
      .topbar p {
        margin: 7px 0 0;
        color: var(--muted);
      }
      .top-actions {
        display: flex;
        align-items: center;
        gap: 10px;
      }
      .date-chip {
        padding: 10px 12px;
        background: #fff;
        border: 1px solid var(--line);
        border-radius: 12px;
        font-weight: 750;
        font-size: 13px;
      }
      .screen {
        display: none;
      }
      .screen.active {
        display: block;
        animation: rise 0.2s ease both;
      }
      @keyframes rise {
        from {
          opacity: 0;
          transform: translateY(8px);
        }
        to {
          opacity: 1;
          transform: none;
        }
      }
      .grid {
        display: grid;
        gap: 14px;
      }
      .grid-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .grid-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      .grid-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
      }
      .card {
        background: var(--card);
        border: 1px solid #eeeaf4;
        border-radius: var(--radius);
        box-shadow: var(--shadow);
        padding: 18px;
      }
      .card h2,
      .card h3 {
        margin: 0;
        color: #380071;
      }
      .card h2 {
        font-size: 20px;
      }
      .card h3 {
        font-size: 15px;
      }
      .muted {
        color: var(--muted);
      }
      .small {
        font-size: 12px;
      }
      .kpi {
        padding: 18px;
      }
      .kpi .kpi-top {
        display: flex;
        align-items: center;
        gap: 9px;
        color: #5b526a;
        font-size: 13px;
        font-weight: 800;
      }
      .kpi-icon {
        width: 36px;
        height: 36px;
        border-radius: 12px;
        display: grid;
        place-items: center;
        background: #f0e8fe;
        color: #5d0ac8;
      }
      .kpi b {
        font-size: 24px;
        margin: 12px 0 5px;
        display: block;
      }
      .progress {
        height: 9px;
        border-radius: 99px;
        background: #eee9f4;
        overflow: hidden;
        margin-top: 12px;
      }
      .progress > span {
        display: block;
        height: 100%;
        background: linear-gradient(90deg, var(--pink), var(--purple));
        border-radius: inherit;
      }
      .progress.green > span {
        background: #17a871;
      }
      .progress.orange > span {
        background: #f09b22;
      }
      .section-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 15px;
      }
      .section-head h2 {
        font-size: 18px;
      }
      .pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        border-radius: 999px;
        padding: 6px 10px;
        font-size: 12px;
        font-weight: 850;
        background: #f2eff8;
        color: #563781;
      }
      .pill.green {
        background: #e8faf1;
        color: #07815a;
      }
      .pill.red {
        background: #ffe9ed;
        color: #c4233c;
      }
      .pill.orange {
        background: #fff2dc;
        color: #bd6900;
      }
      .pill.purple {
        background: #f0e8ff;
        color: #5d0ac8;
      }
      .hero-actions {
        display: flex;
        gap: 10px;
        align-items: center;
      }
      .new-attendance {
        width: 100%;
        min-width: 0;
        min-height: 120px;
        border-radius: 20px;
        padding: 18px 20px;
        color: #fff;
        background: linear-gradient(135deg, #7400d4, #e70080);
        box-shadow: 0 17px 30px rgba(151, 0, 150, 0.22);
        font-weight: 900;
        text-align: left;
        font-size: 16px;
        display: flex;
        flex-direction: column;
        align-self: start;
        justify-content: center;
      }
      .new-attendance small {
        display: block;
        font-weight: 500;
        opacity: 0.86;
        font-size: 12px;
        margin-top: 6px;
      }
      .home-action-stack {
        display: grid;
        gap: 10px;
        align-content: start;
      }
      .terminal-agenda-home {
        border: 1px solid #eadcf8;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 10px 22px rgba(68, 18, 114, 0.07);
        overflow: hidden;
      }
      .terminal-agenda-home.pending {
        border-color: #f0a33a;
        background: #fffaf1;
        animation: agendaReminder 2.8s ease-in-out infinite;
      }
      .terminal-agenda-home.confirmed {
        border-color: #a9e1c8;
        background: #f7fffb;
      }
      .terminal-agenda-home summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 14px;
        cursor: pointer;
        list-style: none;
      }
      .terminal-agenda-home summary::-webkit-details-marker { display: none; }
      .terminal-agenda-home summary::after {
        content: "⌄";
        color: #5d0ac8;
        font-size: 18px;
        font-weight: 900;
      }
      .terminal-agenda-home[open] summary::after { transform: rotate(180deg); }
      .agenda-home-title {
        display: grid;
        gap: 3px;
        min-width: 0;
      }
      .agenda-home-title b {
        color: #430d7e;
        font-size: 15px;
      }
      .agenda-home-title small {
        color: #746982;
        font-size: 12px;
        line-height: 1.3;
      }
      .agenda-home-body {
        border-top: 1px solid #eee4f6;
        padding: 2px 14px 14px;
      }
      .agenda-home-body .field { margin: 9px 0; }
      .agenda-home-body textarea { min-height: 70px; }
      @keyframes agendaReminder {
        0%, 100% { box-shadow: 0 8px 18px rgba(233, 133, 14, 0.08); }
        50% { box-shadow: 0 10px 24px rgba(233, 133, 14, 0.20); }
      }
      .meta-card {
        padding: 18px;
        border: 1px solid #ece6f4;
        border-radius: 16px;
        background: #fff;
      }
      .meta-card .mc-top {
        font-size: 13px;
        font-weight: 900;
        color: #3b1a68;
      }
      .meta-values {
        display: grid;
        grid-template-columns: 1fr auto;
        gap: 14px;
        align-items: center;
        margin-top: 16px;
      }
      .meta-values .big {
        font-size: 26px;
        font-weight: 950;
      }
      .meta-values .right {
        text-align: right;
        color: #e80079;
        font-weight: 850;
        line-height: 1.6;
      }
      .priority-list {
        display: grid;
        grid-template-columns: repeat(7, minmax(128px, 1fr));
        gap: 12px;
      }
      .priority {
        border: 1px solid #ede9f3;
        border-left: 4px solid #e40078;
        border-radius: 15px;
        padding: 15px;
        background: #fff;
      }
      .priority.interactive {
        cursor: pointer;
        transition: 0.18s;
      }
      .priority.interactive:hover {
        transform: translateY(-2px);
        box-shadow: 0 12px 24px rgba(74, 23, 116, 0.08);
      }
      .priority.active-detail {
        box-shadow: 0 0 0 2px rgba(93, 10, 200, 0.18);
        border-color: #cdb6f4;
      }
      .priority.medium {
        border-left-color: #e79616;
      }
      .priority.low {
        border-left-color: #31a96b;
      }
      .priority b {
        font-size: 13px;
      }
      .priority strong {
        display: block;
        color: #ef007c;
        margin: 9px 0 7px;
        font-size: 17px;
      }
      .priority.medium strong {
        color: #d47b00;
      }
      .priority.low strong {
        color: #148e58;
      }
      .priority.completed {
        border-left-color: #31a96b;
        background: linear-gradient(180deg, #ffffff, #f5fff9);
      }
      .priority.completed strong {
        color: #148e58;
      }
      .priority .priority-detail {
        display: block;
        margin-top: 4px;
        font-size: 12px;
        color: #6b6177;
      }
      .task-list {
        display: grid;
        gap: 0;
      }
      .task-row {
        display: grid;
        grid-template-columns: 62px 1fr auto;
        align-items: center;
        gap: 12px;
        padding: 12px 0;
        border-bottom: 1px solid #eeeaf3;
      }
      .task-row:last-child {
        border: 0;
      }
      .task-time {
        color: #ef007c;
        font-weight: 950;
        font-size: 13px;
      }
      .task-title {
        font-weight: 800;
        font-size: 13px;
      }
      .task-title small {
        display: block;
        color: var(--muted);
        font-weight: 500;
        margin-top: 3px;
      }
      .check {
        width: 29px;
        height: 29px;
        border-radius: 50%;
        border: 2px solid #cec7da;
        background: #fff;
        color: #fff;
        display: grid;
        place-items: center;
      }
      .check.done {
        background: #20a96f;
        border-color: #20a96f;
      }
      .shortcut-list {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 10px;
      }
      .shortcut {
        border: 1px solid #ece8f1;
        background: #fff;
        border-radius: 14px;
        padding: 14px 10px;
        text-align: center;
        color: #4c1e8b;
        font-weight: 800;
        font-size: 12px;
      }
      .shortcut .sicon {
        display: grid;
        place-items: center;
        margin: 0 auto 9px;
        width: 40px;
        height: 40px;
        border-radius: 13px;
        background: #f7efff;
        font-size: 20px;
      }
      .performance-row {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        gap: 8px;
      }
      .performance-row div {
        border-right: 1px solid #ece8f1;
        padding: 4px 10px;
      }
      .performance-row div:last-child {
        border: 0;
      }
      .performance-row b {
        display: block;
        color: #5000a2;
        font-size: 17px;
      }
      .performance-row small {
        color: var(--muted);
      }
      /* forms/tables */
      .form-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
      }
      .form-grid .full {
        grid-column: 1/-1;
      }
      .table-wrap {
        overflow: auto;
        border: 1px solid #ece8f1;
        border-radius: 15px;
      }
      .data-table {
        border-collapse: collapse;
        width: 100%;
        min-width: 860px;
        background: #fff;
      }
      .data-table th {
        background: #faf9fc;
        color: #655b72;
        font-size: 11px;
        text-align: left;
        padding: 11px 12px;
        white-space: nowrap;
        border-bottom: 1px solid #ece8f1;
      }
      .data-table td {
        padding: 10px 12px;
        border-bottom: 1px solid #f0edf4;
        font-size: 13px;
        vertical-align: middle;
      }
      .data-table tr:last-child td {
        border: 0;
      }
      .data-table input,
      .data-table select {
        border: 1px solid #ddd7e6;
        border-radius: 8px;
        padding: 8px;
        width: 100px;
      }
      .row-user {
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .mini-avatar {
        width: 28px;
        height: 28px;
        border-radius: 50%;
        display: grid;
        place-items: center;
        background: #eee5ff;
        color: #5f0dcc;
        font-weight: 900;
        font-size: 11px;
      }
      .tabs {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
        margin: 16px 0;
      }
      .tab {
        border-radius: 999px;
        padding: 10px 13px;
        border: 1px solid #e4ddec;
        background: #fff;
        color: #5a4d69;
        font-weight: 850;
      }
      .tab.active {
        background: #5d0ac8;
        color: #fff;
        border-color: #5d0ac8;
      }
      .empty {
        padding: 32px;
        text-align: center;
        color: var(--muted);
        border: 1px dashed #dbd3e6;
        border-radius: 14px;
      }
      .callout {
        border-radius: 14px;
        padding: 13px 15px;
        background: #f7f1ff;
        border: 1px solid #e5d7ff;
        color: #4a2777;
        font-size: 13px;
        line-height: 1.5;
      }
      .callout.warn {
        background: #fff7e9;
        border-color: #ffe0a5;
        color: #825a09;
      }
      .callout.error {
        background: #fff0f3;
        border-color: #ffd3dc;
        color: #9f1831;
      }
      .inline-actions {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
      }
      .metric-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 13px;
      }
      .metric-card {
        border: 1px solid #ece8f2;
        border-radius: 15px;
        padding: 15px;
      }
      .metric-card header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
      }
      .metric-card strong {
        font-size: 21px;
        margin-top: 10px;
        display: block;
      }
      .home-hero-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 260px;
        gap: 14px;
        align-items: start;
        margin-bottom: 14px;
      }
      .leader-strip {
        padding: 16px 18px;
        overflow: hidden;
      }
      .leader-strip-head {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        align-items: center;
        margin-bottom: 12px;
      }
      .leader-strip-head h2 {
        font-size: 18px;
      }
      .leader-track {
        display: grid;
        grid-auto-flow: column;
        grid-auto-columns: minmax(150px, 1fr);
        gap: 10px;
        overflow-x: auto;
        padding-bottom: 4px;
      }
      .leader-track.with-incentive {
        grid-auto-columns: minmax(150px, 1fr);
      }
      .leader-track.with-incentive .incentive-card {
        grid-column: span 2;
        min-width: 320px;
      }
      .leader-card,
      .incentive-card {
        border: 1px solid #ece5f4;
        border-radius: 16px;
        background: #fff;
        padding: 14px 15px;
      }
      .leader-card .tag,
      .incentive-card .tag {
        color: #7b7087;
        font-size: 11px;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 0.3px;
      }
      .leader-card b {
        display: block;
        margin-top: 10px;
        font-size: 15px;
      }
      .leader-card strong {
        display: block;
        margin-top: 5px;
        color: #7b0fcf;
        font-size: 16px;
      }
      .leader-card small {
        display: block;
        margin-top: 6px;
        color: #756b83;
      }
      .incentive-card {
        background: linear-gradient(135deg, #fff8fe, #ffffff 70%);
        border-color: #e6d8f6;
      }
      .incentive-card h3 {
        margin: 8px 0 6px;
        font-size: 14px;
        color: #501685;
      }
      .incentive-card strong {
        display: block;
        font-size: 18px;
        line-height: 1.45;
        color: #2f164f;
      }
      .incentive-card p {
        margin: 8px 0 0;
        color: #70667d;
        font-size: 13px;
      }
      .leader-track::-webkit-scrollbar {
        height: 8px;
      }
      .leader-track::-webkit-scrollbar-thumb {
        background: #dccff1;
        border-radius: 999px;
      }
      .performance-drilldown {
        margin-top: 14px;
        border: 1px solid #ede7f5;
        border-radius: 18px;
        background: linear-gradient(180deg, #fff, #fcfaff);
        padding: 16px;
      }
      .performance-drilldown .drill-grid {
        display: grid;
        gap: 10px;
        margin-top: 14px;
      }
      .performance-drilldown .drill-row {
        display: grid;
        grid-template-columns: 40px minmax(0, 1.2fr) 0.85fr 0.85fr 0.85fr 0.95fr;
        gap: 10px;
        align-items: center;
        padding: 12px 14px;
        border: 1px solid #eee7f5;
        border-radius: 14px;
        background: #fff;
      }
      .performance-drilldown .drill-row.header {
        background: #faf7fd;
        color: #6c6079;
        font-size: 12px;
        font-weight: 900;
      }
      .performance-drilldown .drill-row .name {
        display: flex;
        align-items: center;
        gap: 10px;
      }
      .performance-drilldown .drill-row .name b {
        display: block;
      }
      .performance-drilldown .drill-row .name small {
        color: #73697f;
      }
      .metric-stat {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
        margin-top: 12px;
        font-size: 11px;
      }
      .metric-stat b {
        display: block;
        font-size: 13px;
        margin-top: 3px;
      }
      .ranking-podium {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 13px;
        align-items: end;
        margin-top: 12px;
      }
      .podium {
        border-radius: 16px;
        padding: 17px 12px;
        text-align: center;
        background: #fbf8ff;
        border: 1px solid #eee4fb;
      }
      .podium.first {
        background: linear-gradient(180deg, #fff9e5, #fff);
        border-color: #ffe199;
        transform: translateY(-10px);
      }
      .podium .medal {
        font-size: 28px;
      }
      .podium b {
        display: block;
        margin-top: 7px;
      }
      .podium strong {
        color: #5b0bbf;
        font-size: 20px;
      }
      .drawer {
        position: fixed;
        right: 0;
        top: 112px;
        z-index: 35;
        width: 330px;
        background: #fff;
        border: 1px solid #e7e1ee;
        border-radius: 20px 0 0 20px;
        box-shadow: -10px 15px 35px rgba(57, 21, 77, 0.16);
        transition: transform 0.25s;
        overflow: visible;
      }
      .drawer.collapsed {
        transform: translateX(100%);
      }
      .drawer.overdue .drawer-handle {
        animation: drawerPulse 2.6s ease-in-out infinite;
      }
      .drawer.overdue:not(.collapsed) {
        box-shadow: -12px 18px 36px rgba(214, 0, 124, 0.12);
      }
      @keyframes drawerPulse {
        0%,
        100% {
          box-shadow: -6px 8px 17px rgba(110, 0, 170, 0.18);
          filter: saturate(1);
        }
        45% {
          box-shadow: -8px 12px 22px rgba(237, 0, 125, 0.28);
          filter: saturate(1.08);
        }
      }
      .drawer-handle {
        position: absolute;
        left: -48px;
        top: 58px;
        width: 48px;
        height: 110px;
        border-radius: 17px 0 0 17px;
        background: linear-gradient(180deg, #7900ce, #e5007d);
        color: #fff;
        display: grid;
        place-items: center;
        writing-mode: vertical-rl;
        transform: rotate(180deg);
        font-weight: 850;
        box-shadow: -6px 8px 17px rgba(110, 0, 170, 0.18);
      }
      .drawer-inner {
        padding: 18px;
      }
      .drawer-head {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid #eeeaf2;
        padding-bottom: 12px;
        margin-bottom: 4px;
      }
      .drawer-head b {
        font-size: 16px;
      }
      .drawer-toggle {
        background: #f2ebfa;
        color: #5c13af;
        width: 32px;
        height: 32px;
        border-radius: 10px;
      }
      .drawer .task-row {
        grid-template-columns: 52px 1fr auto;
      }
      .drawer .task-title {
        font-size: 12px;
      }
      .drawer .check {
        width: 25px;
        height: 25px;
      }
      .drawer-footer {
        padding-top: 11px;
        border-top: 1px solid #eeeaf2;
        margin-top: 5px;
      }
      /* Central Operacional do Dia */
      .operation-hero {
        display:grid;
        grid-template-columns:1.3fr .7fr;
        gap:14px;
        margin-bottom:14px;
      }
      .operation-title-card {
        background:linear-gradient(135deg,#481080,#7b16cf 58%,#d1009f);
        color:#fff;
        border-radius:22px;
        padding:24px;
        box-shadow:0 18px 38px rgba(92,12,166,.20);
      }
      .operation-title-card .eyebrow { color:#f7d8ff; font-weight:900; letter-spacing:.08em; font-size:11px; }
      .operation-title-card h2 { color:#fff; margin:7px 0 8px; font-size:28px; }
      .operation-title-card p { color:#f5eaff; margin:0; max-width:670px; }
      .operation-actions { display:flex; gap:9px; flex-wrap:wrap; margin-top:18px; }
      .operation-actions .btn { background:#fff; color:#581292; border-color:#fff; }
      .operation-actions .btn.outline { background:rgba(255,255,255,.11); color:#fff; border-color:rgba(255,255,255,.55); }
      .operation-next-card { border:1px solid #eadcf7; border-radius:22px; padding:22px; background:#fff; }
      .operation-next-card h3 { margin:0 0 10px; color:#451080; }
      .operation-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
      .operation-kpi { border:1px solid #ece5f4; background:#fff; border-radius:17px; padding:15px; }
      .operation-kpi small { color:var(--muted); display:block; font-weight:800; }
      .operation-kpi b { color:#451080; display:block; font-size:29px; margin-top:7px; }
      .operation-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:14px; margin-top:14px; }
      .operation-list { display:grid; gap:9px; }
      .operation-item { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; padding:11px 0; border-bottom:1px solid #eee8f4; }
      .operation-item:last-child { border-bottom:0; }
      .operation-icon { width:35px; height:35px; display:grid; place-items:center; border-radius:12px; background:#f2eaff; font-size:17px; }
      .operation-item b { display:block; color:#251033; font-size:14px; }
      .operation-item small { display:block; margin-top:3px; color:var(--muted); line-height:1.35; }
      .operation-timeline { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0 4px; }
      .operation-time { min-width:78px; border:1px solid #e7dff0; border-radius:14px; padding:10px 12px; background:#fff; text-align:center; font-weight:900; color:#4f1787; }
      .operation-time.done { background:#effcf6; border-color:#bfe9d8; color:#087c55; }
      .operation-time.next { background:#fff6e7; border-color:#ffdba0; color:#a25a00; }
      .operation-attention { border-left:4px solid #e80079; background:#fff7fb; border-radius:14px; padding:12px 14px; margin-top:10px; color:#531437; }
      @media(max-width:980px){ .operation-hero,.operation-grid{grid-template-columns:1fr}.operation-kpis{grid-template-columns:repeat(2,minmax(0,1fr));} }
      @media(max-width:560px){ .operation-kpis{grid-template-columns:1fr}.operation-title-card h2{font-size:23px;} }

      /* Central de Demandas e Agenda */
      .demand-kpis {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 12px;
        margin-bottom: 14px;
      }
      .demand-kpi {
        border: 1px solid #ece6f3;
        border-radius: 16px;
        padding: 15px;
        background: #fff;
      }
      .demand-kpi small { display:block; color:var(--muted); font-weight:800; }
      .demand-kpi b { display:block; font-size:25px; margin-top:8px; color:#461285; }
      .demand-layout {
        display:grid;
        grid-template-columns:minmax(0, 1.18fr) minmax(340px, .82fr);
        gap:14px;
        align-items:start;
      }
      .demand-list { display:grid; gap:10px; }
      .demand-card {
        border:1px solid #ece5f4;
        border-radius:16px;
        padding:14px;
        background:#fff;
      }
      .demand-card.urgent { border-left:4px solid #e8414f; }
      .demand-card.high { border-left:4px solid #e9850e; }
      .demand-card.medium { border-left:4px solid #6c19c8; }
      .demand-card.low { border-left:4px solid #159b67; }
      .demand-card-head {
        display:flex;
        justify-content:space-between;
        align-items:flex-start;
        gap:10px;
      }
      .demand-card h3 { font-size:15px; margin:0; }
      .demand-card p { margin:8px 0 0; font-size:13px; color:#6c6278; line-height:1.45; white-space:pre-wrap; }
      .demand-meta {
        display:flex;
        flex-wrap:wrap;
        gap:7px;
        margin-top:11px;
      }
      .demand-meta span {
        background:#f6f2fb;
        color:#594a6d;
        border-radius:999px;
        padding:5px 8px;
        font-size:11px;
        font-weight:800;
      }
      .demand-actions { display:flex; gap:7px; flex-wrap:wrap; margin-top:12px; }
      .demand-source-row {
        display:grid;
        grid-template-columns:minmax(0, 1fr) 105px 96px auto;
        gap:8px;
        align-items:center;
        border-bottom:1px solid #f0ecf5;
        padding:9px 0;
      }
      .demand-source-row:last-child { border-bottom:0; }
      .demand-empty {
        padding:25px;
        border:1px dashed #d9cee8;
        border-radius:15px;
        text-align:center;
        color:var(--muted);
      }
      .meeting-row {
        border:1px solid #ece6f3;
        border-radius:14px;
        padding:12px;
        background:#fff;
        display:grid;
        grid-template-columns:auto minmax(0,1fr) auto;
        gap:11px;
        align-items:center;
      }
      .meeting-row .meeting-time {
        color:#d50078;
        font-size:13px;
        font-weight:950;
      }
      .meeting-row b { display:block; }
      .meeting-row small { display:block; color:var(--muted); margin-top:3px; }
      .duplicate-note {
        margin-top:10px;
        padding:9px 10px;
        border:1px solid #ffe0a5;
        border-radius:11px;
        background:#fff8e9;
        color:#825a09;
        font-size:12px;
        line-height:1.4;
      }
      .demand-tabbar { display:flex; gap:8px; flex-wrap:wrap; margin:0 0 14px; }
      .demand-tabbar .tab { cursor:pointer; }
      @media (max-width: 1100px) {
        .demand-kpis { grid-template-columns:repeat(2, minmax(0,1fr)); }
        .demand-layout { grid-template-columns:1fr; }
      }
      @media (max-width: 700px) {
        .demand-kpis { grid-template-columns:1fr; }
        .demand-source-row { grid-template-columns:1fr; }
      }

      /* Central Matinal */
      .morning-hero {
        display: grid;
        grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.6fr);
        gap: 14px;
        margin-bottom: 14px;
      }
      .morning-main {
        background: linear-gradient(135deg, #37006f, #8000cb 55%, #e1007f);
        color: #fff;
        border-radius: 20px;
        padding: 22px;
        box-shadow: 0 18px 34px rgba(105, 0, 161, 0.18);
      }
      .morning-main .eyebrow {
        font-size: 11px;
        font-weight: 900;
        letter-spacing: 1px;
        opacity: 0.78;
        text-transform: uppercase;
      }
      .morning-main h2 {
        color: #fff;
        font-size: 25px;
        margin: 7px 0 7px;
      }
      .morning-main p { margin: 0; opacity: .88; line-height: 1.5; }
      .morning-summary {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        margin-top: 17px;
      }
      .morning-summary > div {
        background: rgba(255,255,255,.12);
        border: 1px solid rgba(255,255,255,.16);
        border-radius: 14px;
        padding: 11px;
      }
      .morning-summary small { opacity: .78; display:block; }
      .morning-summary b { display:block; font-size: 15px; margin-top: 4px; }
      .morning-next {
        border: 1px solid #ece6f4;
        border-radius: 20px;
        padding: 20px;
        background: #fff;
        box-shadow: var(--shadow);
      }
      .morning-next h3 { font-size: 15px; margin: 0 0 13px; }
      .routine-status-list {
        display: grid;
        gap: 9px;
      }
      .routine-status-row {
        display: grid;
        grid-template-columns: 24px 1fr auto;
        gap: 8px;
        align-items: center;
        padding: 9px 10px;
        border: 1px solid #eee8f4;
        border-radius: 12px;
        background: #fff;
      }
      .routine-status-row b { font-size: 13px; }
      .routine-status-row small { display: block; margin-top: 2px; color: #786d86; font-size: 11px; }
      .routine-status-icon { font-size: 16px; }
      .minute-paper .minute-section-title {
        margin: 0 18px;
        border: 1px solid #aaa;
        border-top: 0;
        background: #f1f1f1;
        padding: 8px 10px;
        color: #666;
        font-size: 12px;
        font-weight: 900;
      }
      .minute-paper .commitments-box {
        margin: 0 18px;
        min-height: 92px;
        border: 1px solid #aaa;
        border-top: 0;
        padding: 13px 10px;
        white-space: pre-wrap;
        font-size: 16px;
        line-height: 1.35;
      }
      .morning-step-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
        margin: 14px 0;
      }
      .morning-step {
        border: 1px solid #ebe3f4;
        background: #fff;
        border-radius: 15px;
        padding: 13px;
      }
      .morning-step .num {
        width: 28px;
        height: 28px;
        display: grid;
        place-items: center;
        border-radius: 9px;
        background: #f1e9fb;
        color: #5d0ac8;
        font-weight: 950;
      }
      .morning-step b { display:block; margin-top: 10px; font-size: 13px; }
      .morning-step small { display:block; margin-top:4px; color: var(--muted); }
      .morning-task-list .task-row { grid-template-columns: 62px 1fr auto; }
      .area2-table { min-width: 1060px; }
      .area2-table input { width: 92px; }
      .area2-total {
        background: #fbf8ff;
        font-weight: 900;
      }
      .morning-preview {
        white-space: pre-wrap;
        background: #15111e;
        color: #fff;
        border-radius: 16px;
        padding: 18px;
        line-height: 1.55;
        font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
        max-height: 440px;
        overflow: auto;
      }
      .morning-preview.editable {
        min-height: 260px;
        outline: none;
        border: 1px solid rgba(255,255,255,.09);
      }
      .morning-preview.editable:focus {
        box-shadow: 0 0 0 3px rgba(126, 51, 255, .22);
        border-color: rgba(255,255,255,.28);
      }
      .morning-edit-tip {
        margin: 0 0 12px;
        padding: 12px 14px;
        border-radius: 14px;
        background: #fbf8ff;
        border: 1px solid #eadcf8;
        color: #66587a;
        font-size: 13px;
        line-height: 1.45;
      }
      .morning-doc-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
        margin-top: 14px;
      }
      #minuteCard, #area2Card, #scheduleConfirmCard, #terminalAgendaCard, #partialCard { scroll-margin-top: 90px; }
      .minute-paper [contenteditable="true"] { outline: none; }
      .minute-paper [contenteditable="true"]:focus {
        background: #fffdf1;
        box-shadow: inset 0 0 0 2px rgba(247, 198, 54, .35);
      }
      .minute-paper .editable-hint { position: relative; }
      .minute-paper .editable-hint::after {
        content: "edite aqui";
        position: absolute;
        right: 10px;
        top: 10px;
        font-size: 10px;
        letter-spacing: .4px;
        text-transform: uppercase;
        color: #9b8f70;
        pointer-events: none;
      }
      @media (max-width: 1100px) {
        .morning-doc-grid { grid-template-columns: 1fr; }
      }
      .partial-times { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:14px; }
      .partial-time {
        border-radius: 999px;
        padding: 8px 11px;
        font-weight: 850;
        border: 1px solid #e3d8ee;
        background:#fff;
        color:#523079;
      }
      .partial-time.active { background:#5d0ac8; border-color:#5d0ac8; color:#fff; }
      .morning-status { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
      .import-zone {
        border: 1px dashed #cdb7eb;
        border-radius: 15px;
        padding: 14px;
        background: #fbf8ff;
        margin: 14px 0;
      }
      .import-zone h3 { margin: 0 0 6px; font-size: 14px; color: #4c157e; }
      .import-zone p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
      .import-review {
        margin-top: 12px;
        border: 1px solid #e8def3;
        border-radius: 13px;
        padding: 12px;
        background: #fff;
      }
      .import-review-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 9px;
        margin-top: 10px;
      }
      .import-review-grid > div {
        border: 1px solid #eee8f4;
        border-radius: 11px;
        padding: 9px;
        font-size: 12px;
        background: #fefeff;
      }
      .minute-paper {
        width: min(100%, 930px);
        margin: 14px auto 0;
        background: #fff;
        color: #151515;
        border: 1px solid #b8b8b8;
        font-family: Arial, Helvetica, sans-serif;
        box-shadow: 0 10px 28px rgba(29, 16, 51, .08);
      }
      .minute-paper .minute-date {
        text-align: center;
        font-size: 17px;
        padding: 20px 20px 16px;
        font-weight: 700;
      }
      .minute-paper .minute-table { width: 100%; border-collapse: collapse; }
      .minute-paper .minute-table th,
      .minute-paper .minute-table td {
        border: 1px solid #b9b9b9;
        padding: 8px 10px;
        vertical-align: top;
      }
      .minute-paper .minute-table th {
        width: 24%;
        color: #666;
        background: #f1f1f1;
        text-align: left;
        font-weight: 800;
      }
      .minute-paper .minute-top { margin: 0 18px 36px; }
      .minute-paper .minute-heading { font-size: 18px; margin: 0 18px 32px; }
      .minute-paper .topic-row {
        display: grid;
        grid-template-columns: 178px 1fr;
        border-top: 2px solid #9a9a9a;
        border-bottom: 1px solid #aaa;
        margin: 0 18px;
        min-height: 40px;
      }
      .minute-paper .topic-tag {
        background: #f1f1f1;
        border-right: 1px solid #aaa;
        color: #6b6b6b;
        font-weight: 900;
        font-size: 12px;
        padding: 11px 9px;
      }
      .minute-paper .topic-value { padding: 10px; font-size: 17px; }
      .minute-paper .minute-rule { margin: 0 18px; height: 39px; border-bottom: 2px solid #9a9a9a; }
      .minute-paper .notes-box {
        margin: 0 18px;
        min-height: 210px;
        border-bottom: 1px solid #aaa;
        padding: 18px 10px;
        white-space: pre-wrap;
        font-size: 16px;
        line-height: 1.35;
      }
      .minute-paper .meta-heading {
        margin: 0 18px;
        border: 1px solid #aaa;
        border-top: 0;
        text-align: center;
        background: #f1f1f1;
        padding: 8px;
        font-weight: 500;
        font-size: 17px;
      }
      .minute-paper .meta-body {
        margin: 0 18px;
        border: 1px solid #aaa;
        border-top: 0;
        min-height: 290px;
        padding: 10px;
        white-space: pre-wrap;
        font-size: 16px;
        line-height: 1.28;
      }
      .minute-paper .commitment-grid {
        margin: 0 18px 20px;
        border-collapse: collapse;
        width: calc(100% - 36px);
      }
      .minute-paper .commitment-grid td { height: 35px; border: 1px solid #111; }
      @media print {
        body { background: #fff !important; }
        .minute-paper { box-shadow: none; border: 0; width: 100%; margin: 0; }
      }
      @media (max-width: 700px) {
        .import-review-grid { grid-template-columns: 1fr; }
        .minute-paper .topic-row { grid-template-columns: 120px 1fr; }
        .minute-paper .topic-value, .minute-paper .notes-box, .minute-paper .meta-body { font-size: 14px; }
      }
      @media (max-width: 1100px) {
        .morning-hero { grid-template-columns: 1fr; }
        .morning-step-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      }
      @media (max-width: 700px) {
        .morning-summary, .morning-step-grid { grid-template-columns: 1fr; }
        .morning-main { padding: 18px; }
      }
      /* MS Connect v10.14.13 — construtor de afazeres */
      .v101412-builder-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; }
      .v101412-builder-hero { border:1px solid #e4d5f7; border-radius:19px; padding:17px; background:linear-gradient(135deg,#fbf7ff,#fff); }
      .v101412-builder-hero h3 { margin:0; color:#431078; font-size:18px; }
      .v101412-builder-hero p { margin:6px 0 0; color:#71667d; line-height:1.45; }
      .v101412-recurrence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:4px; }
      .v101412-weekdays { display:flex; gap:7px; flex-wrap:wrap; }
      .v101412-weekday { position:relative; display:inline-flex; }
      .v101412-weekday input { position:absolute; left:0; top:0; width:1px !important; height:1px !important; opacity:0; pointer-events:none; }
      .v101412-weekday span { min-width:44px; padding:9px 10px; display:grid; place-items:center; border:1px solid #ded4e9; border-radius:11px; background:#fff; color:#5b4c69; font-weight:850; cursor:pointer; }
      .v101412-weekday input:checked + span { background:#5d0ac8; color:#fff; border-color:#5d0ac8; box-shadow:0 6px 13px rgba(93,10,200,.16); }
      .v101412-step-list { display:grid; gap:12px; margin-top:12px; }
      .v101412-step-editor { border:1px solid #e8def3; border-radius:17px; padding:14px; background:#fff; }
      .v101412-step-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; }
      .v101412-step-head b { color:#48127e; }
      .v101412-required { display:flex; align-items:center; gap:9px; font-weight:800; color:#4a2b68; }
      .v101412-required input { width:18px; height:18px; accent-color:#5d0ac8; }
      .v101412-builder-actions { position:sticky; bottom:0; display:flex; gap:9px; flex-wrap:wrap; padding:13px; margin-top:14px; border:1px solid #e7dcf2; border-radius:15px; background:rgba(255,255,255,.96); backdrop-filter:blur(9px); z-index:2; }
      .v101412-task-list { display:grid; gap:10px; }
      .v101412-task-card { border:1px solid #e9e1f1; border-radius:15px; padding:13px; background:#fff; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; }
      .v101412-task-card h4 { margin:0; color:#321052; }
      .v101412-task-card small { display:block; margin-top:4px; color:#756b82; line-height:1.35; }
      .v101412-task-card .v101412-recurrence { margin-top:8px; display:flex; gap:6px; flex-wrap:wrap; }
      body.ms-v104 .v104-check-item.v101412-check-item { display:grid; grid-template-columns:22px minmax(0,1fr); gap:7px 9px; align-items:center; padding:9px 0; border-bottom:1px solid #eee7f4; }
      body.ms-v104 .v104-check-item.v101412-check-item:last-child { border-bottom:0; }
      body.ms-v104 .v104-check-item.v101412-check-item input { width:18px; height:18px; margin:0; accent-color:#5d0ac8; }
      .v101412-check-copy b { display:block; color:#35105f; }
      .v101412-check-copy small { display:block; color:#766b82; margin-top:3px; line-height:1.4; }
      body.ms-v104 .v101412-step-action { grid-column:2; justify-self:start; border:1px solid #d9caeb; background:#fff; color:#57118d; border-radius:9px; padding:6px 9px; max-width:100%; overflow:hidden; text-overflow:ellipsis; font-size:10px; font-weight:900; white-space:nowrap; }
      body.ms-v104 .v101412-step-action:hover { border-color:#7c18ce; background:#fbf7ff; }
      .v101412-progress-head { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:10px; }
      .v101412-progress-head b { color:#421078; }
      .v101412-progress-bar { height:7px; border-radius:99px; overflow:hidden; background:#ece7f2; margin-bottom:12px; }
      .v101412-progress-bar span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#ed007d,#5d0ac8); }
      .v101412-builder-note { padding:11px 13px; border:1px solid #d8c5ef; border-radius:13px; background:#faf7ff; color:#62457b; font-size:12px; line-height:1.45; }
      @media(max-width:900px){.v101412-recurrence-grid{grid-template-columns:1fr}.v101412-task-card{grid-template-columns:1fr}.v101412-builder-actions .btn{flex:1}}
      @media(max-width:520px){body.ms-v104 .v104-check-item.v101412-check-item{grid-template-columns:22px minmax(0,1fr)}body.ms-v104 .v101412-step-action{grid-column:2;justify-self:start;max-width:100%}}

      /* MS Connect v10.14.13 — Afazeres ágeis */
      .v101413-builder { margin-top:14px; padding:16px; scroll-margin-top:90px; }
      .v101413-builder-section { padding:13px 0; border-bottom:1px solid #eee7f3; }
      .v101413-builder-section:last-of-type { border-bottom:0; }
      .v101413-builder-more, .v101413-team-monitor, .v101413-step-more, .v101413-more-options { margin-top:12px; border:1px solid #e8def2; border-radius:14px; background:#fff; overflow:hidden; }
      .v101413-builder-more>summary, .v101413-team-monitor>summary, .v101413-step-more>summary, .v101413-more-options>summary { cursor:pointer; list-style:none; padding:12px 14px; color:#491177; font-weight:900; }
      .v101413-builder-more>summary::-webkit-details-marker, .v101413-team-monitor>summary::-webkit-details-marker, .v101413-step-more>summary::-webkit-details-marker, .v101413-more-options>summary::-webkit-details-marker { display:none; }
      .v101413-builder-more>summary::after, .v101413-team-monitor>summary::after, .v101413-step-more>summary::after, .v101413-more-options>summary::after { content:"⌄"; float:right; }
      .v101413-builder-more[open]>summary::after, .v101413-team-monitor[open]>summary::after, .v101413-step-more[open]>summary::after, .v101413-more-options[open]>summary::after { transform:rotate(180deg); }
      .v101413-builder-more>.form-grid, .v101413-team-monitor>.task-list, .v101413-step-more>.field, .v101413-step-more>.v101412-required, .v101413-more-options>.v104-flow, .v101413-more-options>.v104-smart-actions, .v101413-more-options>.v104-task-script, .v101413-team-monitor>p { margin-left:13px; margin-right:13px; }
      .v101413-builder-more>.form-grid { padding-bottom:13px; }
      .v101413-team-monitor { background:#fbf9fe; }
      .v101413-team-monitor>.task-list { padding-bottom:13px; }
      .v101413-library { margin-top:4px; }
      .v101413-card-actions { justify-content:flex-end; }
      .v101413-mini-btn { padding:8px 10px; font-size:11px; }
      .v101413-icon-btn { width:34px; height:34px; padding:0; display:grid; place-items:center; }
      .v101413-step-quick, .v101413-step-action-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(180px,.65fr); gap:10px; }
      .v101413-step-quick .field, .v101413-step-action-grid .field { margin:5px 0; }
      .v101413-step-more { background:#fbf9fe; }
      .v101413-step-more>.field { margin-top:0; }
      .v101413-step-more>.v101412-required { display:flex; padding:0 0 13px; }
      .v101413-progress-head { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:8px; }
      .v101413-progress-head b { color:#421078; font-size:18px; }
      .v101413-check-rows { display:grid; }
      .v101413-required-mark { margin-left:4px; color:#e5007d; font-size:15px; }
      .v101413-task-focus { margin-top:12px; border-left:4px solid #6b11c6; border-radius:12px; background:#f8f3ff; padding:11px 13px; }
      .v101413-task-focus b, .v101413-task-focus span, .v101413-task-focus small { display:block; }
      .v101413-task-focus b { color:#441078; font-size:11px; text-transform:uppercase; letter-spacing:.4px; }
      .v101413-task-focus span { margin-top:4px; font-weight:900; color:#2e173d; }
      .v101413-task-focus small { margin-top:4px; color:#756a81; }
      .v101413-primary-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin-top:12px; position:sticky; bottom:-15px; padding:10px 0 1px; background:linear-gradient(180deg,rgba(255,255,255,0),#fff 25%); }
      .v101413-more-options { background:#fbf9fe; }
      .v101413-more-options>.v104-flow { grid-template-columns:repeat(2,minmax(0,1fr)); padding-top:0; }
      .v101413-more-options>.v104-smart-actions { padding-bottom:0; }
      @media(max-width:700px){.v101413-step-quick,.v101413-step-action-grid{grid-template-columns:1fr}.v101413-primary-actions{grid-template-columns:1fr}.v101413-card-actions{justify-content:flex-start}}

      /* Flow */
      .flow-layout {
        display: grid;
        grid-template-columns: 340px 1fr;
        gap: 18px;
      }
      .id-panel {
        position: sticky;
        top: 20px;
        align-self: start;
      }
      .flow-cards {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
      }
      .flow-card {
        padding: 18px;
        border-radius: 18px;
        border: 1px solid #e8ddf8;
        background: #fff;
        min-height: 240px;
        display: flex;
        flex-direction: column;
      }
      .flow-card.active {
        border: 2px solid #8a20e4;
        box-shadow: 0 14px 25px rgba(113, 0, 190, 0.12);
      }
      .flow-tag {
        display: inline-flex;
        background: #f2ebfb;
        color: #65359a;
        border-radius: 99px;
        font-size: 11px;
        font-weight: 850;
        padding: 6px 9px;
        width: max-content;
      }
      .flow-card h3 {
        font-size: 18px;
        margin: 15px 0 10px;
      }
      .flow-card p {
        color: var(--muted);
        line-height: 1.5;
        margin: 0;
      }
      .flow-card .btn {
        margin-top: auto;
        align-self: start;
      }
      .flow-run {
        max-width: 900px;
        margin: auto;
      }
      .step-bar {
        display: flex;
        gap: 7px;
        flex-wrap: wrap;
        margin-bottom: 13px;
      }
      .step-dot {
        height: 9px;
        border-radius: 99px;
        background: #eae4f0;
        flex: 1;
        min-width: 28px;
      }
      .step-dot.active {
        background: linear-gradient(90deg, var(--purple), var(--pink));
      }
      .script-box {
        white-space: pre-wrap;
        line-height: 1.65;
        background: #f9f4ff;
        border-left: 5px solid #d4007a;
        border-radius: 13px;
        padding: 18px;
        margin: 15px 0;
      }
      .choice-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
      }
      .choice {
        padding: 14px;
        border-radius: 13px;
        border: 1px solid #ddd3ee;
        background: #fff;
        text-align: left;
        font-weight: 800;
        color: #482070;
      }
      .choice:hover {
        border-color: #720bc9;
        background: #faf6ff;
      }
      .result-summary {
        display: grid;
        gap: 9px;
      }
      .result-summary div {
        background: #faf8fd;
        border-radius: 10px;
        padding: 10px;
      }
      /* Admin */
      .admin-kpis {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
      }
      .attention-table .status-dot {
        width: 9px;
        height: 9px;
        border-radius: 50%;
        display: inline-block;
        margin-right: 5px;
        background: #18a46b;
      }
      .attention-table .status-dot.warn {
        background: #eb9517;
      }
      .attention-table .status-dot.bad {
        background: #e53e51;
      }
      .admin-action {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 9px;
      }
      .admin-action .shortcut {
        min-height: 97px;
      }
      .message-box {
        white-space: pre-wrap;
        background: #12101a;
        color: #fff;
        border-radius: 15px;
        padding: 16px;
        line-height: 1.55;
        font-size: 13px;
        max-height: 500px;
        overflow: auto;
      }
      .setting-row {
        display: grid;
        grid-template-columns: 1fr 115px 115px 85px;
        gap: 8px;
        align-items: center;
        border-bottom: 1px solid #eee9f3;
        padding: 9px 0;
      }
      .setting-row:last-child {
        border: 0;
      }
      .file-input {
        border: 1px dashed #d8cbea;
        padding: 13px;
        border-radius: 11px;
        background: #fbf9ff;
      }
      @media (max-width: 1300px) {
        .priority-list {
          grid-template-columns: repeat(3, 1fr);
        }
        .flow-cards {
          grid-template-columns: repeat(2, 1fr);
        }
        .admin-kpis {
          grid-template-columns: repeat(2, 1fr);
        }
      }
      @media (max-width: 1040px) {
        :root {
          --sidebar: 0px;
        }
        .sidebar {
          transform: translateX(-100%);
          transition: 0.25s;
        }
        .sidebar.open {
          transform: none;
          width: 270px;
        }
        .grid-4 {
          grid-template-columns: repeat(2, 1fr);
        }
        .flow-layout {
          grid-template-columns: 1fr;
        }
        .id-panel {
          position: static;
        }
        .drawer {
          display: none;
        }
        .topbar {
          padding-right: 0;
        }
        .new-attendance {
          min-width: 0;
        }
        .priority-list {
          grid-template-columns: repeat(2, 1fr);
        }
      }
      @media (max-width: 700px) {
        .main {
          padding: 17px;
        }
        .topbar {
          display: grid;
        }
        .top-actions {
          justify-content: space-between;
        }
        .grid-2,
        .grid-3,
        .grid-4,
        .admin-kpis,
        .metric-grid {
          grid-template-columns: 1fr;
        }
        .priority-list {
          grid-template-columns: 1fr;
        }
        .performance-row {
          grid-template-columns: repeat(2, 1fr);
        }
        .shortcut-list {
          grid-template-columns: repeat(3, 1fr);
        }
        .flow-cards {
          grid-template-columns: 1fr;
        }
        .form-grid {
          grid-template-columns: 1fr;
        }
        .form-grid .full {
          grid-column: auto;
        }
        .choice-grid {
          grid-template-columns: 1fr;
        }
        .new-attendance {
          width: 100%;
        }
      }

      /* v6.3 — ajustes de segurança visual e telas menores */
      @media (max-width: 980px) {
        .shell {
          grid-template-columns: 1fr !important;
        }
        .sidebar {
          position: static !important;
          width: auto !important;
          max-height: none !important;
        }
        .main {
          width: auto !important;
        }
        .drawer {
          right: 12px !important;
        }
        .grid-4,
        .admin-kpis {
          grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        }
        .flow-editor-grid,
        .flow-step-layout {
          grid-template-columns: 1fr !important;
        }
        .data-table {
          min-width: 900px;
        }
      }
      @media (max-width: 720px) {
        .main {
          padding: 14px !important;
        }
        .topbar {
          gap: 12px !important;
          align-items: flex-start !important;
        }
        .top-actions {
          flex-wrap: wrap;
        }
        .grid-2,
        .grid-3,
        .grid-4,
        .admin-kpis {
          grid-template-columns: 1fr !important;
        }
        .new-attendance {
          width: 100% !important;
        }
        .home-hero-layout {
          grid-template-columns: 1fr !important;
        }
        .home-action-stack {
          width: 100%;
        }
        .leader-track {
          grid-auto-columns: minmax(220px, 1fr);
        }
        .performance-drilldown .drill-row,
        .performance-drilldown .drill-row.header {
          grid-template-columns: 1fr !important;
        }
        .priority-list,
        .shortcut-list,
        .metric-grid {
          grid-template-columns: 1fr !important;
        }
        .drawer {
          max-width: calc(100vw - 24px) !important;
        }
        .flow-layout {
          grid-template-columns: 1fr !important;
        }
        .id-panel {
          order: 0;
        }
        .table-wrap {
          overflow-x: auto;
        }
      }

      /* v6.9 — menu móvel real; estas regras ficam por último para vencer versões antigas */
      .mobile-menu-btn,
      .sidebar-backdrop {
        display: none;
      }
      @media (max-width: 1040px) {
        body.menu-open {
          overflow: hidden;
        }
        .mobile-menu-btn {
          display: inline-flex;
        }
        #sidebar.sidebar {
          position: fixed !important;
          inset: 0 auto 0 0 !important;
          width: 270px !important;
          max-height: 100vh !important;
          height: 100dvh !important;
          transform: translateX(-110%) !important;
          transition: transform 0.25s ease !important;
          z-index: 120 !important;
          overflow-y: auto !important;
        }
        #sidebar.sidebar.open {
          transform: translateX(0) !important;
        }
        #sidebarBackdrop.sidebar-backdrop {
          display: block;
          position: fixed;
          inset: 0;
          z-index: 110;
          background: rgba(15, 0, 35, 0.48);
          opacity: 0;
          pointer-events: none;
          transition: opacity 0.2s ease;
        }
        #sidebarBackdrop.sidebar-backdrop.open {
          opacity: 1;
          pointer-events: auto;
        }
        .main {
          margin-left: 0 !important;
          width: 100% !important;
        }
      }


      /* Central de Supervisão de Atendimento */
      .supervision-kpis {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
      }
      .supervision-kpi {
        border: 1px solid #ebe4f4;
        background: #fff;
        border-radius: 16px;
        padding: 15px;
      }
      .supervision-kpi small {
        display: block;
        color: var(--muted);
        font-weight: 750;
      }
      .supervision-kpi strong {
        display: block;
        margin-top: 9px;
        font-size: 26px;
        color: #3b0874;
      }
      .supervision-tabs {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
        margin: 16px 0;
      }
      .supervision-session-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
      }
      .supervision-session {
        border: 1px solid #e9e3f2;
        border-left: 5px solid #27a56d;
        border-radius: 16px;
        padding: 16px;
        background: #fff;
      }
      .supervision-session.attention { border-left-color: #e99518; }
      .supervision-session.critical { border-left-color: #e8414f; }
      .supervision-session .session-head {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        align-items: flex-start;
      }
      .supervision-session .session-head h3 { margin: 0; font-size: 17px; }
      .supervision-session .session-meta {
        color: #736a80;
        margin: 7px 0 0;
        line-height: 1.5;
        font-size: 13px;
      }
      .supervision-session .session-stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        margin: 14px 0;
      }
      .supervision-session .session-stats div {
        padding: 10px;
        border-radius: 11px;
        background: #faf8fd;
      }
      .supervision-session .session-stats small { display:block; color:#756b82; }
      .supervision-session .session-stats b { display:block; margin-top:4px; font-size:13px; }
      .supervision-alert {
        display: grid;
        grid-template-columns: 38px minmax(0, 1fr) auto;
        gap: 12px;
        align-items: start;
        padding: 14px 0;
        border-bottom: 1px solid #eee9f4;
      }
      .supervision-alert:last-child { border-bottom: 0; }
      .supervision-alert .alert-icon {
        width: 34px;
        height: 34px;
        border-radius: 11px;
        display: grid;
        place-items: center;
        background: #fff4dc;
      }
      .supervision-alert.critical .alert-icon { background:#ffe8ec; }
      .supervision-alert .alert-title { font-weight: 900; }
      .supervision-alert .alert-detail { color:#726880; font-size:13px; line-height:1.45; margin-top:4px; }
      .supervision-runbar {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 10px;
        padding: 12px 14px;
        border: 1px solid #e9dff4;
        background: linear-gradient(135deg, #faf5ff, #fff);
        border-radius: 14px;
        margin: 14px 0 0;
      }
      .supervision-runbar .run-status {
        display: flex;
        align-items: center;
        gap: 8px;
        color: #4f207f;
        font-size: 13px;
        font-weight: 850;
      }
      .flow-help-box {
        margin-top: 14px;
        padding: 14px;
        border-radius: 14px;
        border: 1px solid #e8dbf5;
        background: #fff;
      }
      .flow-help-box h3 { margin:0 0 8px; font-size:15px; }
      .flow-help-box .guidance {
        white-space: pre-wrap;
        line-height: 1.55;
        padding: 12px;
        background: #f8f4ff;
        border-left: 4px solid #7d17d3;
        border-radius: 10px;
        color: #412060;
      }
      .supervision-note {
        padding: 12px 14px;
        border: 1px dashed #dccbef;
        background: #fcfaff;
        border-radius: 13px;
        color: #5d5270;
        font-size: 13px;
        line-height: 1.45;
      }
      @media (max-width: 1050px) {
        .supervision-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .supervision-session-grid { grid-template-columns: 1fr; }
      }
      @media (max-width: 700px) {
        .supervision-kpis { grid-template-columns: 1fr; }
        .supervision-session .session-stats { grid-template-columns: 1fr; }
        .supervision-alert { grid-template-columns: 34px minmax(0, 1fr); }
        .supervision-alert .inline-actions { grid-column: 2; }
      }

      /* Base de Conhecimento e Assistente de Consulta */
      .knowledge-kpis {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
      }
      .knowledge-kpi {
        border: 1px solid #ebe4f4;
        background: #fff;
        border-radius: 16px;
        padding: 15px;
      }
      .knowledge-kpi small { display:block; color:var(--muted); font-weight:800; }
      .knowledge-kpi b { display:block; margin-top:9px; color:#3b0874; font-size:24px; }
      .knowledge-layout {
        display:grid;
        grid-template-columns:minmax(0, 1.35fr) minmax(320px, .85fr);
        gap:14px;
        margin-top:14px;
      }
      .knowledge-search-box {
        border:1px solid #e9ddf5;
        border-radius:18px;
        background:linear-gradient(135deg,#fbf7ff,#fff);
        padding:18px;
      }
      .knowledge-search-box h2 { margin:0; font-size:20px; }
      .knowledge-result {
        margin-top:12px;
        padding:14px;
        border:1px solid #e9e3f2;
        background:#fff;
        border-radius:14px;
      }
      .knowledge-result h3 { margin:0; font-size:16px; color:#3f1178; }
      .knowledge-result p { margin:8px 0 0; white-space:pre-wrap; line-height:1.5; color:#5f566c; }
      .knowledge-result .meta { margin-top:8px; color:#786d84; font-size:12px; font-weight:800; }
      .knowledge-list { display:grid; gap:10px; }
      .knowledge-item {
        border:1px solid #ebe5f3;
        border-left:5px solid #7d17d3;
        border-radius:15px;
        background:#fff;
        padding:14px;
      }
      .knowledge-item.inactive { opacity:.58; border-left-color:#a99cad; }
      .knowledge-item .head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
      .knowledge-item h3 { margin:0; font-size:16px; }
      .knowledge-item p { margin:9px 0 0; white-space:pre-wrap; line-height:1.5; color:#645a70; }
      .knowledge-item .tags { margin-top:9px; display:flex; flex-wrap:wrap; gap:6px; }
      .knowledge-item .tag { border-radius:999px; padding:4px 8px; background:#f4effa; color:#653494; font-size:11px; font-weight:850; }
      .knowledge-answer-card {
        border:1px solid #d9c9ee;
        background:linear-gradient(135deg,#f9f3ff,#fff);
        border-radius:16px;
        padding:16px;
      }
      .knowledge-answer-card h3 { margin:0 0 7px; color:#461176; }
      .knowledge-answer-card .answer-copy { white-space:pre-wrap; line-height:1.55; color:#4e4359; }
      .knowledge-empty { border:1px dashed #d9cee7; border-radius:14px; padding:22px; text-align:center; color:#766c80; }
      @media (max-width: 1050px) {
        .knowledge-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); }
        .knowledge-layout { grid-template-columns: 1fr; }
      }
      @media (max-width: 700px) {
        .knowledge-kpis { grid-template-columns: 1fr; }
        .knowledge-item .head { display:block; }
        .knowledge-item .inline-actions { margin-top:10px; }
      }


      /* Importação Inteligente */
      .import-hero {
        border: 1px solid #e6d6fb;
        background: linear-gradient(135deg, #fff 0%, #f8f3ff 54%, #fff3fa 100%);
        border-radius: 22px;
        padding: 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        margin-bottom: 16px;
      }
      .import-hero h2 { margin: 0 0 5px; font-size: 21px; }
      .import-hero p { margin: 0; color: var(--muted); line-height: 1.48; max-width: 760px; }
      .import-hero .import-badge { min-width: 130px; text-align:center; border-radius: 18px; padding: 13px; background: #fff; border: 1px solid #eadcfb; color: var(--purple); font-weight: 950; }
      .import-layout { display:grid; grid-template-columns: minmax(0,1.05fr) minmax(380px,.95fr); gap:16px; }
      .import-drop { border: 2px dashed #c9a9ef; background: #fbf8ff; border-radius: 18px; padding: 20px; text-align: center; }
      .import-drop h3 { margin: 0 0 6px; }
      .import-drop p { color: var(--muted); margin: 0 auto 14px; max-width: 620px; line-height: 1.42; }
      .import-drop input[type=file] { display:none; }
      .import-format-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:8px; margin-top:14px; }
      .import-format { border:1px solid #e5d8f3; border-radius: 13px; padding:9px 8px; background:#fff; color:#5a4677; font-size:12px; font-weight:800; }
      .import-tip { margin-top:12px; padding:11px 12px; border-radius:12px; background:#fff8e9; border:1px solid #f4d590; color:#765111; font-size:12px; line-height:1.4; text-align:left; }
      .import-review-card { border:1px solid #d9c7ed; background:#fff; border-radius:18px; overflow:hidden; }
      .import-review-card .review-head { padding:15px 16px; background:#f9f5ff; border-bottom:1px solid #eadff5; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
      .import-review-card h3 { margin:0; font-size:17px; }
      .import-review-body { padding:16px; }
      .import-detected { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:12px 0; }
      .import-detected .detected-row { border:1px solid #ece5f2; border-radius:13px; padding:10px; background:#fdfcff; }
      .import-detected .detected-row b { display:block; font-size:12px; color:#5c4d72; margin-bottom:6px; }
      .import-detected .detected-row input { width:100%; border:1px solid #d9cde8; border-radius:9px; padding:8px; font-weight:850; }
      .import-raw { width:100%; margin-top:10px; max-height:210px; overflow:auto; white-space:pre-wrap; border:1px solid #ece7f3; border-radius:12px; padding:11px; background:#fbfbfd; color:#564d66; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size:12px; line-height:1.38; }
      .import-history-item { border-bottom:1px solid #ece7f2; padding:12px 0; }
      .import-history-item:last-child { border-bottom:0; }
      .import-history-item h4 { margin:0 0 4px; font-size:14px; }
      .import-history-item p { margin:0; color:var(--muted); font-size:12px; }
      .import-empty { border:1px dashed #dcd4e8; border-radius:14px; padding:18px; color:var(--muted); text-align:center; }
      @media (max-width: 980px) { .import-layout { grid-template-columns:1fr; } }
      @media (max-width: 620px) { .import-hero { display:block; } .import-badge { margin-top:12px; width:100%; } .import-detected { grid-template-columns:1fr; } .import-format-grid { grid-template-columns:repeat(2,1fr); } }


      /* Caixa unificada — WhatsApp e E-mail */
      .channel-status-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:14px 0; }
      .channel-card { border:1px solid var(--line); border-radius:16px; padding:16px; background:linear-gradient(180deg,#fff,#fbf9ff); }
      .channel-card h3 { margin:0 0 5px; font-size:16px; }
      .channel-card p { margin:0; color:var(--muted); line-height:1.45; font-size:13px; }
      .channel-card .channel-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:#f0e8ff; font-size:20px; margin-bottom:10px; }
      .entry-list { display:grid; gap:10px; }
      .entry-row { border:1px solid var(--line); border-radius:15px; padding:14px; background:#fff; }
      .entry-head { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
      .entry-head h3 { margin:0; font-size:15px; }
      .entry-row p { margin:9px 0 0; white-space:pre-wrap; line-height:1.45; color:#403852; }
      .entry-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; color:var(--muted); font-size:12px; }
      .entry-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
      .channel-note { border:1px solid #f0d7a0; background:#fff8e9; color:#765000; padding:12px 14px; border-radius:14px; font-size:13px; line-height:1.45; }
      .connection-form { margin-top:12px; padding-top:12px; border-top:1px dashed var(--line); }
      .connection-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:#e9850e; margin-right:5px; vertical-align:middle; }
      .connection-dot.ready { background:#159b67; }
      .connection-dot.off { background:#e8414f; }
      .channel-empty { border:1px dashed #d7cdea; border-radius:15px; padding:23px; text-align:center; color:var(--muted); background:#fdfbff; }
      @media (max-width:760px){ .channel-status-grid{grid-template-columns:1fr;} }

    
/* Central de comunicação e cobranças */
.communication-hero{display:grid;grid-template-columns:1.3fr .9fr;gap:16px;margin-bottom:16px}.communication-hero .card{margin:0}.communication-hero h2{margin:7px 0 6px;font-size:28px;color:#421078}.communication-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.communication-kpi{border:1px solid #eadfff;border-radius:17px;padding:15px;background:#fff}.communication-kpi small{display:block;color:#756b86;font-weight:800}.communication-kpi b{display:block;font-size:29px;color:#43107c;margin:5px 0}.communication-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.message-preview{background:#15111f;color:#fff;border-radius:18px;padding:20px;white-space:pre-wrap;min-height:290px;line-height:1.55;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;overflow:auto}.message-editor{min-height:225px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.5}.communication-log-row{display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid #eee7f5;padding:13px 0}.communication-log-row:last-child{border-bottom:0}.communication-log-row.is-ready{width:100%;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer;border-radius:12px;transition:.16s}.communication-log-row.is-ready:hover{background:#fff7e6;padding:13px 10px;margin:0 -10px}.communication-log-row.is-ready:focus-visible{outline:3px solid rgba(93,10,200,.25);outline-offset:2px}.communication-log-open{font-size:11px;font-weight:900;color:#8b4d00;display:block;margin-top:5px}.communication-log-icon{width:35px;height:35px;border-radius:12px;background:#f0e7ff;display:grid;place-items:center;flex:0 0 auto}.communication-log-row small{display:block;color:#756b86;margin-top:3px}.message-side-callout{border:1px solid #f8c777;background:#fff9ed;border-radius:16px;padding:15px;margin-top:13px;color:#774c00}.message-status-good{border-color:#a9e5cf;background:#effcf6;color:#087c55}.message-history-card{max-height:450px;overflow:auto}.communication-policy{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.communication-policy .field{margin:0}.communication-actionbar{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.communication-recipient-info{padding:11px 13px;border-radius:13px;background:#f7f2ff;color:#57308a;font-size:13px;font-weight:700;margin-top:10px}.communication-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:900;background:#f4effd;color:#65309d}.communication-quick-list{display:grid;gap:10px}.communication-quick{border:1px solid #eadfff;border-radius:15px;padding:13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.communication-quick b{display:block;color:#33105f}.communication-quick small{color:#756b86;display:block;margin-top:3px}@media(max-width:900px){.communication-hero,.communication-grid{grid-template-columns:1fr}.communication-kpis,.communication-policy{grid-template-columns:1fr}.message-preview{min-height:180px}}

      
      /* Produção e Segurança */
      .production-hero { display:grid; grid-template-columns:1.35fr .95fr; gap:14px; margin-bottom:14px; }
      .production-hero h2 { margin:4px 0 8px; font-size:28px; }
      .production-status-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
      .production-status { border:1px solid var(--line); border-radius:16px; padding:15px; background:#fff; min-height:132px; }
      .production-status h3 { margin:0 0 5px; font-size:16px; }
      .production-status p { margin:8px 0 0; color:var(--muted); font-size:13px; line-height:1.38; }
      .production-status .status-top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
      .production-status.ok { border-color:#bce8d7; background:linear-gradient(135deg,#f2fff9,#fff); }
      .production-status.warn { border-color:#f6d9ad; background:linear-gradient(135deg,#fffaf0,#fff); }
      .production-status.pending { border-color:#e5d8ff; background:linear-gradient(135deg,#faf7ff,#fff); }
      .production-steps { display:grid; gap:10px; }
      .production-step { display:flex; align-items:flex-start; gap:11px; padding:11px 0; border-bottom:1px dashed var(--line); }
      .production-step:last-child { border-bottom:0; }
      .production-step input { margin-top:4px; width:18px; height:18px; accent-color:var(--purple); }
      .production-step b { display:block; margin-bottom:3px; }
      .production-step small { color:var(--muted); line-height:1.35; }
      .production-report { background:#151020; color:#fff; border-radius:15px; padding:17px; white-space:pre-wrap; line-height:1.52; min-height:250px; font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size:13px; overflow:auto; }
      .production-tables { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
      .production-mini { border:1px solid var(--line); border-radius:14px; padding:13px; }
      .production-mini small { display:block; color:var(--muted); margin-bottom:6px; }
      .production-mini b { font-size:20px; }
      .production-note { min-height:132px; }
      @media(max-width:1000px){ .production-hero{grid-template-columns:1fr}.production-status-grid{grid-template-columns:1fr}.production-tables{grid-template-columns:1fr} }

    
      /* v9.8.4 — destino protegido antes de abrir o WhatsApp */
      .communication-destination-guard {
        display:flex;
        align-items:flex-start;
        gap:11px;
        margin-top:10px;
        padding:12px 13px;
        border:1px solid #cfe5d8;
        border-radius:14px;
        background:#f3fff8;
        color:#155f42;
      }
      .communication-destination-guard .guard-icon {
        width:30px;
        height:30px;
        flex:0 0 auto;
        display:grid;
        place-items:center;
        border-radius:10px;
        background:#dff7eb;
        font-size:15px;
      }
      .communication-destination-guard b { display:block; color:#0d6b47; }
      .communication-destination-guard small { display:block; margin-top:3px; line-height:1.42; color:#39785f; }
      .communication-confirm-layer {
        position:fixed;
        inset:0;
        z-index:1200;
        display:grid;
        place-items:center;
        padding:22px;
        background:rgba(20, 8, 39, .58);
      }
      .communication-confirm-dialog {
        width:min(530px, 100%);
        border:1px solid #e4d6f4;
        border-radius:22px;
        background:#fff;
        padding:23px;
        box-shadow:0 25px 70px rgba(16, 2, 38, .36);
      }
      .communication-confirm-dialog h3 { margin:0; font-size:21px; color:#3d0d78; }
      .communication-confirm-dialog p { margin:8px 0 0; color:#6c6278; line-height:1.45; }
      .communication-confirm-target {
        margin:16px 0 12px;
        border:2px solid #5d0ac8;
        border-radius:16px;
        padding:14px;
        background:#fbf8ff;
      }
      .communication-confirm-target small { display:block; font-weight:850; color:#775f98; text-transform:uppercase; letter-spacing:.04em; }
      .communication-confirm-target b { display:block; margin-top:5px; font-size:18px; color:#3e0c7a; }
      .communication-confirm-check {
        display:flex;
        align-items:flex-start;
        gap:9px;
        margin:14px 0 18px;
        padding:12px;
        border-radius:13px;
        background:#fff7e9;
        color:#805409;
        font-size:13px;
        line-height:1.4;
      }
      .communication-confirm-check input { margin-top:3px; width:17px; height:17px; accent-color:#5d0ac8; }
      .communication-confirm-actions { display:flex; justify-content:flex-end; gap:9px; flex-wrap:wrap; }
      @media(max-width:600px){ .communication-confirm-actions .btn { width:100%; } }


      /* MS Connect v10.6 — IA Executiva com afazeres integrados */
      body.ms-v104 .v106-action-card {
        margin: 0;
        padding: 12px;
        border-bottom: 1px solid #f0e8f6;
        background:
          radial-gradient(circle at 100% 0%, rgba(237,0,125,.06), transparent 28%),
          linear-gradient(180deg, #fff, #fbf8ff);
      }
      body.ms-v104 .v106-action-inner {
        border: 1px solid #eadcf8;
        border-radius: 18px;
        padding: 13px;
        background: #fff;
        box-shadow: 0 12px 26px rgba(80, 20, 130, .07);
      }
      body.ms-v104 .v106-action-head {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        gap: 10px;
        margin-bottom: 10px;
      }
      body.ms-v104 .v106-action-head small {
        display: block;
        color: #8a7c99;
        font-size: 9px;
        font-weight: 950;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      body.ms-v104 .v106-action-head b {
        display: block;
        margin-top: 3px;
        color: #32105f;
        font-size: 13px;
        line-height: 1.28;
      }
      body.ms-v104 .v106-action-clock {
        flex: 0 0 auto;
        padding: 7px 9px;
        border-radius: 12px;
        color: #fff;
        background: linear-gradient(135deg, #5d0ac8, #ed007d);
        font-size: 12px;
        font-weight: 1000;
        box-shadow: 0 10px 20px rgba(103,8,181,.18);
      }
      body.ms-v104 .v106-action-desc {
        color: #70647d;
        font-size: 11px;
        line-height: 1.42;
        margin-bottom: 10px;
      }
      body.ms-v104 .v106-action-buttons {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 7px;
      }
      body.ms-v104 .v106-action-buttons button {
        border-radius: 14px;
        padding: 9px 10px;
        font-size: 10px;
        font-weight: 950;
        border: 1px solid #e6d9f4;
        background: #fff;
        color: #4b167e;
      }
      body.ms-v104 .v106-action-buttons button.primary {
        color: #fff;
        background: linear-gradient(135deg, #5d0ac8, #ed007d);
        border-color: transparent;
      }
      body.ms-v104 .v106-action-buttons button.good {
        color: #05764e;
        background: #effcf6;
        border-color: #b7e8d3;
      }
      body.ms-v104 .v106-action-buttons button.warn {
        color: #8a5600;
        background: #fff8ea;
        border-color: #f6d396;
      }
      body.ms-v104 .v106-pending-terminal {
        margin-top: 10px;
        border: 1px solid #ffd2df;
        background: #fff7fb;
        border-radius: 15px;
        padding: 10px 11px;
        color: #5d1137;
        font-size: 11px;
        line-height: 1.42;
      }
      body.ms-v104 .v106-pending-terminal b {
        display: block;
        margin-bottom: 4px;
        color: #c21b58;
      }
      body.ms-v104 .v106-done-state {
        border: 1px solid #bdebd7;
        background: #f4fffa;
        border-radius: 16px;
        padding: 13px;
        color: #087c55;
        font-size: 12px;
        font-weight: 800;
      }
      body.ms-v104 .v106-ia-pulse {
        animation: v106Pulse 1.8s ease-in-out 2;
      }
      @keyframes v106Pulse {
        0%, 100% { box-shadow: 0 26px 70px rgba(30,0,52,.28); }
        50% { box-shadow: 0 28px 76px rgba(237,0,125,.34); }
      }
      @media (max-width: 720px) {
        body.ms-v104 .v106-action-buttons { grid-template-columns: 1fr; }
      }

      /* MS Connect v10.9 — card de afazer recolhível e IA que não tampa a ação aberta */
      body.ms-v104 .v109-action-topline {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        margin-bottom:9px;
      }
      body.ms-v104 .v109-action-topline b {
        color:#35105f;
        font-size:12px;
      }
      body.ms-v104 .v109-action-tools {
        display:flex;
        align-items:center;
        gap:6px;
      }
      body.ms-v104 .v109-action-tools button {
        width:30px;
        height:30px;
        border-radius:11px;
        border:1px solid #e6d9f4;
        background:#fff;
        color:#5d0ac8;
        font-weight:1000;
        line-height:1;
      }
      body.ms-v104 .v109-action-mini {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        border:1px solid #eadcf8;
        border-radius:18px;
        padding:11px 12px;
        background:#fff;
        box-shadow:0 10px 20px rgba(80,20,130,.06);
      }
      body.ms-v104 .v109-action-mini .left {
        min-width:0;
      }
      body.ms-v104 .v109-action-mini small {
        display:block;
        color:#8a7c99;
        font-size:9px;
        font-weight:950;
        letter-spacing:.08em;
        text-transform:uppercase;
      }
      body.ms-v104 .v109-action-mini b {
        display:block;
        margin-top:3px;
        color:#32105f;
        font-size:12px;
        line-height:1.25;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        max-width:285px;
      }
      body.ms-v104 .v109-action-mini button {
        flex:0 0 auto;
        border-radius:999px;
        padding:8px 11px;
        color:#fff;
        background:linear-gradient(135deg,#5d0ac8,#ed007d);
        font-size:10px;
        font-weight:950;
      }
      body.ms-v104 .v106-action-card.is-collapsed {
        padding:10px 12px;
      }
      body.ms-v104 .v106-action-card.is-collapsed .v106-pending-terminal {
        margin-top:8px;
        padding:8px 10px;
      }


      /* MS Connect v10.7 — IA treinável pelo ADM + atendimento guiado */
      body.ms-v104 .v107-extra-wrap {
        border-bottom: 1px solid #f1e9f7;
        background: linear-gradient(180deg, #fff, #fffbfe);
        padding: 10px 12px;
        max-height: 230px;
        overflow: auto;
      }
      body.ms-v104 .v107-extra-card {
        border: 1px solid #eadff3;
        border-radius: 17px;
        background: linear-gradient(180deg, #ffffff, #faf7ff);
        padding: 12px;
        margin-bottom: 9px;
        box-shadow: 0 8px 20px rgba(70, 21, 117, .045);
      }
      body.ms-v104 .v107-extra-card:last-child { margin-bottom: 0; }
      body.ms-v104 .v107-extra-card h4 {
        margin: 0 0 6px;
        color: #3c0a71;
        font-size: 13px;
      }
      body.ms-v104 .v107-extra-card p,
      body.ms-v104 .v107-extra-card small {
        color: #756b86;
        font-size: 11px;
        line-height: 1.42;
      }
      body.ms-v104 .v107-chip-row,
      body.ms-v104 .v107-action-row,
      body.ms-v104 .v107-guided-options {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        margin-top: 9px;
      }
      body.ms-v104 .v107-chip {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        border-radius: 999px;
        padding: 6px 9px;
        background: #f4edff;
        color: #5a168d;
        font-size: 10px;
        font-weight: 950;
      }
      body.ms-v104 .v107-action-row button,
      body.ms-v104 .v107-guided-options button {
        border-radius: 999px;
        padding: 8px 10px;
        background: #fff;
        border: 1px solid #e7d9f5;
        color: #4f147c;
        font-size: 10px;
        font-weight: 950;
      }
      body.ms-v104 .v107-action-row button.primary,
      body.ms-v104 .v107-guided-options button.primary {
        color: #fff;
        border-color: transparent;
        background: linear-gradient(135deg, #5d0ac8, #ed007d);
        box-shadow: 0 10px 20px rgba(108, 10, 167, .16);
      }
      body.ms-v104 .v107-action-row button.good { background:#e8fbf3; color:#087c55; border-color:#bfe9d8; }
      body.ms-v104 .v107-action-row button.danger { background:#fff0f3; color:#b21c34; border-color:#ffc9d4; }
      body.ms-v104 .v107-field-grid {
        display: grid;
        gap: 8px;
        margin-top: 10px;
      }
      body.ms-v104 .v107-field-grid input,
      body.ms-v104 .v107-field-grid textarea {
        width: 100%;
        border: 1px solid #e4d8ef;
        border-radius: 13px;
        padding: 9px 10px;
        outline: none;
        background: #fff;
        font-size: 11px;
      }
      body.ms-v104 .v107-field-grid textarea { min-height: 74px; resize: vertical; }
      body.ms-v104 .v107-rule-list,
      body.ms-v104 .v107-idea-list,
      body.ms-v104 .v107-mini-task-list {
        display: grid;
        gap: 8px;
        margin-top: 10px;
      }
      body.ms-v104 .v107-rule-item,
      body.ms-v104 .v107-idea-item,
      body.ms-v104 .v107-mini-task {
        border: 1px solid #efe8f6;
        border-radius: 14px;
        background: #fff;
        padding: 10px;
      }
      body.ms-v104 .v107-rule-item b,
      body.ms-v104 .v107-idea-item b,
      body.ms-v104 .v107-mini-task b {
        display:block;
        color:#35105f;
        font-size: 12px;
      }
      body.ms-v104 .v107-rule-item span,
      body.ms-v104 .v107-idea-item span,
      body.ms-v104 .v107-mini-task span {
        display:block;
        margin-top:4px;
        color:#756b86;
        font-size: 11px;
        line-height: 1.4;
        white-space: pre-wrap;
      }
      body.ms-v104 .v107-idea-item textarea {
        margin-top: 8px;
        width:100%;
        min-height:64px;
        border:1px solid #e4d8ef;
        border-radius:12px;
        padding:8px;
        font-size:11px;
      }
      body.ms-v104 .v107-question-card {
        border: 1px solid #e8daf6;
        border-radius: 18px;
        padding: 12px;
        background: linear-gradient(180deg, #fff, #fbf8ff);
        margin: 6px 0 10px;
      }
      body.ms-v104 .v107-question-card b { color:#35105f; font-size:13px; display:block; }
      body.ms-v104 .v107-progress-line {
        height: 8px;
        border-radius: 999px;
        overflow: hidden;
        background: #eee6f7;
        margin: 10px 0;
      }
      body.ms-v104 .v107-progress-line span {
        display:block;
        height:100%;
        border-radius:inherit;
        background: linear-gradient(90deg, #5d0ac8, #ed007d);
      }
      body.ms-v104 .v107-knowledge-note {
        border-left: 4px solid #5d0ac8;
        background: #f8f3ff;
        border-radius: 13px;
        padding: 10px 11px;
        color:#4d2a73;
        font-size: 11px;
        line-height:1.45;
        margin: 8px 0;
      }
      body.ms-v104 .v107-training-alert {
        border-left: 4px solid #e9850e;
        background: #fff8eb;
        border-radius: 13px;
        padding: 10px 11px;
        color:#765111;
        font-size: 11px;
        line-height:1.45;
        margin: 8px 0;
      }
      @media(max-width:720px){
        body.ms-v104 .v107-extra-wrap { max-height: 190px; }
      }


      /* MS Connect v10.8 — IA orientada por meta, escolha de oferta e treinamento por indicador */
      body.ms-v104 .v108-meta-board {
        border: 1px solid #eadfff;
        border-radius: 18px;
        padding: 13px;
        margin-top: 10px;
        background: linear-gradient(180deg, #fff, #fbf8ff);
      }
      body.ms-v104 .v108-meta-board h4 {
        margin: 0 0 6px;
        color: #34105f;
        font-size: 14px;
      }
      body.ms-v104 .v108-meta-board p {
        margin: 0;
        color: #70667d;
        font-size: 12px;
        line-height: 1.45;
      }
      body.ms-v104 .v108-priority-strip,
      body.ms-v104 .v108-offer-strip,
      body.ms-v104 .v108-select-row {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 10px;
      }
      body.ms-v104 .v108-priority-pill {
        border-radius: 999px;
        padding: 7px 10px;
        background: #fff3f8;
        color: #9b0f55;
        border: 1px solid #ffd0e3;
        font-size: 10px;
        font-weight: 950;
      }
      body.ms-v104 .v108-priority-pill.ok {
        background: #effcf6;
        color: #087c55;
        border-color: #bfe9d8;
      }
      body.ms-v104 .v108-offer-card {
        flex: 1 1 135px;
        min-width: 135px;
        border: 1px solid #eee4f8;
        border-radius: 16px;
        padding: 11px;
        background: #fff;
        box-shadow: 0 8px 18px rgba(70,21,117,.04);
      }
      body.ms-v104 .v108-offer-card strong {
        display: block;
        color: #321057;
        font-size: 12px;
      }
      body.ms-v104 .v108-offer-card small {
        display: block;
        color: #756b86;
        font-size: 10px;
        margin-top: 5px;
        line-height: 1.35;
      }
      body.ms-v104 .v108-offer-card.is-critical {
        border-color: #ffb4ca;
        background: #fff8fb;
      }
      body.ms-v104 .v108-select-row button,
      body.ms-v104 .v108-train-btn {
        border-radius: 999px;
        padding: 8px 10px;
        border: 1px solid #e8ddf3;
        background: #fff;
        color: #4f147c;
        font-size: 10px;
        font-weight: 950;
      }
      body.ms-v104 .v108-select-row button.primary {
        color: #fff;
        border-color: transparent;
        background: linear-gradient(135deg, #5d0ac8, #ed007d);
      }
      body.ms-v104 .v108-select-row button.warn {
        color: #9b1742;
        background: #fff0f4;
        border-color: #ffc9d4;
      }
      body.ms-v104 .v108-training-box {
        margin-top: 9px;
        border-radius: 15px;
        padding: 12px;
        background: #fff8eb;
        border: 1px solid #f5d08b;
        color: #765111;
        font-size: 12px;
        line-height: 1.45;
      }
      body.ms-v104 .v108-adm-grid {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
        gap: 9px;
        margin-top: 10px;
      }
      body.ms-v104 .v108-adm-grid select,
      body.ms-v104 .v108-adm-grid textarea {
        width: 100%;
        border: 1px solid #e4d8ef;
        border-radius: 13px;
        padding: 10px;
        outline: none;
        background: #fff;
        font-size: 12px;
      }
      body.ms-v104 .v108-adm-grid textarea {
        min-height: 72px;
        resize: vertical;
      }
      @media(max-width:720px){
        body.ms-v104 .v108-adm-grid { grid-template-columns: 1fr; }
      }

    
      /* MS Connect v10.10 — IA compacta para priorizar conversa */
      body.ms-v104 .v104-ia-panel.v110-compact { height: min(700px, calc(100vh - 74px)); }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-top { padding: 12px 14px 10px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-badge { width: 38px; height: 38px; font-size: 18px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-top b { font-size: 15px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-top span { font-size: 11px; max-width: 240px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-head-chip { margin-top: 5px; padding: 4px 8px; font-size: 9px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-close,
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-min { width: 34px; height: 34px; font-size: 20px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-status { padding: 8px 10px; gap: 6px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-status div { padding: 7px 8px; border-radius: 13px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-status b { font-size: 11px; min-height: 25px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-body { grid-template-columns: minmax(0, 1fr) 82px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-chat-headline { padding: 8px 10px 6px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-chat-headline p { display:none; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-chat-headline .mode { font-size: 10px; padding: 6px 9px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-chat { padding: 10px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-msg-row { margin-bottom: 8px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-bubble { padding: 10px 11px; font-size: 12px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-tabs { padding: 8px 6px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-tab { padding: 8px 5px; margin-bottom: 6px; border-radius: 15px; font-size: 9px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-tab-icon { width: 28px; height: 28px; margin-bottom: 5px; font-size: 14px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-quick-grid { grid-template-columns: 1fr; gap: 7px; margin: 8px 0 2px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-quick { padding: 9px 10px; font-size: 10px; border-radius: 14px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-input { padding: 9px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-input input { padding: 11px 12px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-input button { min-width: 78px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-card { margin: 7px 10px 0; border-radius: 16px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-card:not(.is-collapsed) .v106-action-desc,
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-card:not(.is-collapsed) .v106-action-buttons { display:none; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-inner { padding: 10px 11px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v109-action-topline { margin-bottom: 4px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-head small { font-size: 9px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-head b { font-size: 12px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-action-clock { min-width: auto; padding: 7px 10px; font-size: 11px; }
      body.ms-v104 .v104-ia-panel.v110-compact .v106-pending-terminal { margin-top: 6px; padding: 8px 10px; font-size: 10px; }
      body.ms-v104 .v110-toolbar { display:flex; align-items:center; gap:6px; margin-left:auto; }
      body.ms-v104 .v110-toolbar button { border-radius:999px; padding:5px 8px; background:rgba(255,255,255,.14); color:#fff; font-size:9px; font-weight:900; border:1px solid rgba(255,255,255,.14); }
      body.ms-v104 .v110-slim-actions { display:flex; flex-wrap:wrap; gap:6px; margin: 0 0 8px; }
      body.ms-v104 .v110-slim-actions button { border:1px solid #eadfff; background:#fff; border-radius:999px; padding:7px 9px; color:#4d167b; font-size:10px; font-weight:900; }
      body.ms-v104 .v110-inline-note { margin:0 10px 8px; padding:8px 10px; border:1px dashed #ddcff5; border-radius:14px; color:#6c5f80; font-size:10px; background:#fcfaff; }
      body.ms-v104 .v110-collapsed-section { margin:0 10px 8px; }
      body.ms-v104 .v110-collapsed-section button { width:100%; text-align:left; display:flex; align-items:center; justify-content:space-between; border:1px solid #eadfff; background:#fff; border-radius:14px; padding:8px 10px; color:#531c82; font-size:10px; font-weight:900; }
      body.ms-v104 .v110-tools-wrap { margin:0 10px 8px; display:grid; gap:8px; }
      body.ms-v104 .v110-tools-card { border:1px solid #eadfff; border-radius:14px; background:#fff; padding:10px; }
      body.ms-v104 .v110-tools-card h4 { margin:0 0 5px; font-size:12px; color:#43107c; }
      body.ms-v104 .v110-tools-card p { margin:0 0 8px; font-size:10px; color:#756b86; }
      body.ms-v104 .v110-tools-card .mini-row { display:flex; gap:6px; flex-wrap:wrap; }
      body.ms-v104 .v110-tools-card .mini-row button { border-radius:999px; padding:7px 9px; border:1px solid #eadfff; background:#fff; font-size:10px; font-weight:900; color:#4f147c; }
      body.ms-v104 .v110-tools-card .chips { display:flex; flex-wrap:wrap; gap:5px; }
      body.ms-v104 .v110-tools-card .chips span { padding:5px 8px; border-radius:999px; background:#f5ecff; color:#6017b4; font-size:9px; font-weight:900; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v104-ia-status,
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v106-action-card,
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v110-inline-note,
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v110-collapsed-section,
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v110-tools-wrap { display:none !important; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v104-ia-body { grid-template-columns: minmax(0,1fr) 74px; }
      @media (max-width: 720px) {
        body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-body { grid-template-columns:1fr; grid-template-rows:auto 1fr; }
        body.ms-v104 .v104-ia-panel.v110-compact .v104-ia-tabs { order:-1; display:grid; grid-auto-flow:column; grid-auto-columns:minmax(70px,1fr); overflow-x:auto; }
      }

    
      /* MS Connect v10.11 — modos da IA, afazeres por vendedor e treino por performance */
      body.ms-v104 .v111-mode-strip {
        display:flex;
        gap:6px;
        align-items:center;
        flex-wrap:wrap;
        padding:8px 10px;
        border-bottom:1px solid #f0e8f6;
        background:linear-gradient(180deg,#fff,#fcfaff);
      }
      body.ms-v104 .v111-mode-strip .label {
        color:#7c7189;
        font-size:9px;
        font-weight:950;
        letter-spacing:.08em;
        text-transform:uppercase;
        margin-right:2px;
      }
      body.ms-v104 .v111-mode-pill {
        border:1px solid #eadfff;
        background:#fff;
        color:#5a248b;
        border-radius:999px;
        padding:6px 9px;
        font-size:10px;
        font-weight:950;
      }
      body.ms-v104 .v111-mode-pill.active {
        color:#fff;
        border-color:transparent;
        background:linear-gradient(135deg,#5d0ac8,#ed007d);
        box-shadow:0 8px 18px rgba(93,10,200,.16);
      }
      body.ms-v104 .v111-task-snapshot {
        margin:8px 10px 0;
        padding:10px;
        border:1px solid #eadfff;
        border-radius:15px;
        background:#fff;
        color:#3b174f;
      }
      body.ms-v104 .v111-task-snapshot h4 {
        margin:0 0 6px;
        font-size:12px;
        color:#43107c;
      }
      body.ms-v104 .v111-task-snapshot p {
        margin:0;
        color:#74677f;
        font-size:10px;
        line-height:1.4;
      }
      body.ms-v104 .v111-task-mini-list { display:grid; gap:6px; margin-top:8px; }
      body.ms-v104 .v111-task-mini {
        display:grid;
        grid-template-columns:1fr auto;
        gap:7px;
        align-items:center;
        padding:8px 9px;
        border:1px solid #f0e7f8;
        border-radius:13px;
        background:#fcfaff;
      }
      body.ms-v104 .v111-task-mini b {
        display:block;
        font-size:11px;
        color:#2d064f;
      }
      body.ms-v104 .v111-task-mini small {
        display:block;
        margin-top:2px;
        color:#81758c;
        font-size:9px;
      }
      body.ms-v104 .v111-task-mini button,
      body.ms-v104 .v111-mini-button {
        border-radius:999px;
        padding:6px 8px;
        border:1px solid #eadfff;
        background:#fff;
        color:#561489;
        font-size:9px;
        font-weight:950;
      }
      body.ms-v104 .v111-task-mini button.good { background:#ecfff7; color:#05724d; border-color:#bcebd8; }
      body.ms-v104 .v111-seller-progress {
        display:grid;
        gap:6px;
        margin-top:8px;
      }
      body.ms-v104 .v111-seller-row {
        display:grid;
        grid-template-columns:1fr auto;
        gap:8px;
        align-items:center;
        font-size:10px;
        padding:7px 8px;
        border-radius:12px;
        background:#faf7ff;
        border:1px solid #eee4fb;
      }
      body.ms-v104 .v111-seller-row b { color:#35105f; }
      body.ms-v104 .v111-seller-row span { color:#756b86; }
      body.ms-v104 .v111-training-prompt {
        margin:8px 10px 0;
        padding:10px;
        border:1px solid #ffd79a;
        background:#fff9ed;
        border-radius:15px;
        color:#765000;
        font-size:10px;
        line-height:1.4;
      }
      body.ms-v104 .v111-training-prompt b { display:block; margin-bottom:5px; color:#8c5700; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v111-task-snapshot,
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v111-training-prompt { display:none !important; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v111-mode-strip { padding:6px 9px; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v111-mode-strip .label { display:none; }
      body.ms-v104 .v104-ia-panel.v110-conversation-focus .v111-mode-pill:not(.active) { display:none; }

    

      /* MS Connect v10.14.20 — projeção circular e ranking com fotos */
      .v101420-projection-ring {
        --v101420-color: #7a20d5;
        --v101420-angle: 0deg;
        width: 68px;
        height: 68px;
        flex: 0 0 auto;
        border-radius: 50%;
        display: grid;
        place-items: center;
        position: relative;
        background: conic-gradient(var(--v101420-color) var(--v101420-angle), #eee9f4 0deg);
        box-shadow: 0 8px 18px rgba(74, 23, 116, 0.09);
      }
      .v101420-projection-ring::before {
        content: "";
        position: absolute;
        inset: 7px;
        border-radius: 50%;
        background: #fff;
        box-shadow: inset 0 0 0 1px #eee8f4;
      }
      .v101420-projection-ring > span {
        position: relative;
        z-index: 1;
        display: grid;
        justify-items: center;
        line-height: 1;
      }
      .v101420-projection-ring b {
        color: #341059;
        font-size: 15px;
        letter-spacing: -0.3px;
      }
      .v101420-projection-ring small {
        color: #7c7188;
        font-size: 8px;
        font-weight: 950;
        letter-spacing: 0.65px;
        margin-top: 4px;
      }
      .v101420-projection-ring.good { --v101420-color: #18a36b; }
      .v101420-projection-ring.warn { --v101420-color: #e49318; }
      .v101420-projection-ring.bad { --v101420-color: #e80079; }
      .v101420-projection-ring.neutral { --v101420-color: #b9afc7; }
      .v101420-projection-ring.compact {
        width: 56px;
        height: 56px;
        box-shadow: none;
      }
      .v101420-projection-ring.compact::before { inset: 6px; }
      .v101420-projection-ring.compact b { font-size: 13px; }
      .v101420-projection-ring.compact small { font-size: 7px; }
      .v101420-priority-card {
        position: relative;
        min-height: 174px;
        padding-right: 78px;
      }
      .v101420-priority-card .v101420-projection-ring {
        position: absolute;
        right: 13px;
        top: 50%;
        transform: translateY(-50%);
      }
      .v101420-metric-card {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 72px;
        gap: 13px;
        align-items: start;
      }
      .v101420-metric-content { min-width: 0; }
      .v101420-metric-card > .v101420-projection-ring { margin-top: 4px; }
      .v101420-leader-person {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-top: 10px;
      }
      .v101420-leader-person b,
      .v101420-leader-person strong { margin-top: 0; }
      .v101420-leader-avatar {
        width: 42px;
        height: 42px;
        flex: 0 0 auto;
        border: 3px solid #f0e7fb;
        box-shadow: 0 6px 14px rgba(68, 18, 114, 0.12);
      }
      .v101420-podium {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
        align-items: end;
        padding: 24px 4px 6px;
      }
      .v101420-podium-slot {
        min-width: 0;
        border: 1px solid #ece4f4;
        border-radius: 18px;
        background: linear-gradient(180deg, #fff, #fbf9fe);
        padding: 15px 10px;
        text-align: center;
        box-shadow: 0 9px 19px rgba(57, 21, 77, 0.07);
      }
      .v101420-podium-slot.first {
        transform: translateY(-17px);
        border-color: #f3d375;
        background: linear-gradient(180deg, #fff8d9, #fff);
      }
      .v101420-podium-slot.second {
        border-color: #d9d9e1;
        background: linear-gradient(180deg, #f5f5f8, #fff);
      }
      .v101420-podium-slot.third {
        border-color: #e5b995;
        background: linear-gradient(180deg, #fff0e3, #fff);
      }
      .v101420-podium-slot.empty {
        visibility: hidden;
        min-height: 120px;
      }
      .v101420-podium-medal { font-size: 25px; line-height: 1; }
      .v101420-podium-avatar {
        width: 66px;
        height: 66px;
        margin: 9px auto 8px;
        border: 4px solid #fff;
        box-shadow: 0 8px 18px rgba(61, 22, 91, 0.16);
        font-size: 18px;
      }
      .v101420-podium-slot.first .v101420-podium-avatar {
        width: 78px;
        height: 78px;
        border-color: #ffe896;
      }
      .v101420-podium-slot.second .v101420-podium-avatar { border-color: #e6e6ec; }
      .v101420-podium-slot.third .v101420-podium-avatar { border-color: #efc4a1; }
      .v101420-podium-slot > b {
        display: block;
        color: #371057;
        font-size: 14px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      .v101420-podium-slot > strong {
        display: block;
        color: #790fd0;
        font-size: 14px;
        margin-top: 5px;
      }
      .v101420-podium-slot > small {
        display: block;
        color: #786e83;
        font-size: 10px;
        margin-top: 5px;
      }
      .v101420-podium.compact {
        gap: 7px;
        padding: 23px 0 0;
      }
      .v101420-podium.compact .v101420-podium-slot {
        padding: 11px 6px;
        border-radius: 14px;
      }
      .v101420-podium.compact .v101420-podium-avatar {
        width: 46px;
        height: 46px;
        border-width: 3px;
        margin: 7px auto 6px;
        font-size: 13px;
      }
      .v101420-podium.compact .v101420-podium-slot.first .v101420-podium-avatar {
        width: 58px;
        height: 58px;
      }
      .v101420-podium.compact .v101420-podium-medal { font-size: 20px; }
      .v101420-podium.compact .v101420-podium-slot > b { font-size: 11px; }
      .v101420-podium.compact .v101420-podium-slot > strong { font-size: 11px; }
      .v101420-podium.compact .v101420-podium-slot > small { font-size: 9px; }
      .v101420-team-ranking-card {
        min-width: 0;
        display: grid;
        align-content: start;
      }
      .v101420-team-ranking-head {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 10px;
      }
      .v101420-team-ranking-head h3 {
        font-size: 14px;
        color: #4b087f;
        margin: 0;
      }
      .v101420-team-ranking-head p { margin: 4px 0 0; }
      .v101420-team-ranking-select {
        width: min(155px, 46%);
        border: 1px solid #dfd3ec;
        border-radius: 11px;
        background: #fff;
        color: #4b147d;
        padding: 8px 9px;
        font-size: 11px;
        font-weight: 850;
        outline: none;
      }
      .v101420-team-ranking-select:focus {
        border-color: #7813ca;
        box-shadow: 0 0 0 3px rgba(120, 19, 202, 0.09);
      }
      .v101420-team-ranking-card > .btn { margin-top: 9px; width: 100%; }
      .v101420-ranking-table-gap { margin-top: 10px; }
      @media (max-width: 1120px) {
        .v101420-priority-card { min-height: 154px; }
      }
      @media (max-width: 700px) {
        .v101420-metric-card { grid-template-columns: minmax(0, 1fr) 60px; gap: 9px; }
        .v101420-metric-card > .v101420-projection-ring { width: 58px; height: 58px; }
        .v101420-metric-card > .v101420-projection-ring::before { inset: 6px; }
        .v101420-podium { gap: 5px; padding-inline: 0; }
        .v101420-podium-slot { padding: 12px 5px; }
        .v101420-podium-avatar { width: 52px; height: 52px; }
        .v101420-podium-slot.first .v101420-podium-avatar { width: 62px; height: 62px; }
        .v101420-team-ranking-head { display: grid; }
        .v101420-team-ranking-select { width: 100%; }
      }

      .ms-v10151-stockkeeper #v10151StockkeeperMenu{display:grid;gap:8px;padding:0 14px 18px}
      .ms-v10151-stockkeeper #v10151StockkeeperMenu .nav-label{padding:14px 8px 4px}
      .ms-v10151-stockkeeper #v10151StockkeeperMenu .nav-btn{width:100%}
      .ms-v10151-stockkeeper .drawer-handle{background:linear-gradient(180deg,#7b00c8,#e80091)}

      .ms-v10151-stockkeeper .nav-btn:not([data-screen="estoque-caixa"]):not([data-screen="links"]):not([data-screen="tasks"]){
        display:none !important;
      }


/* v10.20.8 — os sete indicadores ficam visíveis; Terminal não é descartado. */
@media (min-width:1301px){.priority-list{grid-template-columns:repeat(7,minmax(128px,1fr))!important}}


/* v10.20.86 — drawer de afazeres: lista completa com rolagem interna */
#taskDrawer .drawer-inner {
  max-height: calc(100vh - 124px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
#taskDrawer .drawer-task-list {
  min-height: 0;
  max-height: min(52vh, 520px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding-right: 4px;
}
#taskDrawer .drawer-footer {
  flex: 0 0 auto;
}
