.client-search-launcher { display:flex;align-items:center;gap:10px;min-height:38px;width:clamp(140px,15vw,240px);padding:9px 13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);color:var(--muted);font:inherit;font-size:12px;cursor:pointer;flex-shrink:0;text-align:left; }
.client-search-launcher:hover { background:var(--blue-soft);border-color:var(--blue);color:var(--blue); }
.client-search-launcher:focus-visible,.client-search-dialog :focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
.client-search-launcher:disabled { opacity:.5;cursor:default; }
.system-dialog.client-search-dialog { display:none;width:min(940px,calc(100vw - 32px));max-width:940px;max-height:calc(100dvh - 40px);padding:0;border-radius:24px;overflow:hidden;background:var(--surface);color:var(--text); }
.system-dialog.client-search-dialog[open] { display:flex;flex-direction:column; }
.client-search-head { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 28px 14px;flex-shrink:0; }
.client-search-head h2 { margin-bottom:0; }
.client-search-head .calendar-icon-button { flex-shrink:0; }
.client-search-input { display:flex;align-items:center;gap:12px;margin:0 28px 18px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);flex-shrink:0;color:var(--muted); }
.client-search-input:focus-within { border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft); }
.client-search-input input { width:100%;min-width:0;min-height:46px;background:transparent;border:0;font:inherit;font-size:13px;color:var(--text);outline:none; }
.client-search-input input:focus-visible { outline:none; }
.client-search-content { min-height:160px;min-width:0;overflow:auto;padding:0 28px 26px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.client-results-heading,.client-section-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px; }
.client-results-heading h3,.client-section-heading h3,.client-section-title { font-size:13px;margin:8px 0; }
.client-results-heading>span { font-size:11px;color:var(--muted); }
.client-results { display:grid;gap:7px; }
.client-result { display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);text-align:left;font:inherit;cursor:pointer;min-width:0; }
.client-result:hover { background:var(--blue-soft);border-color:var(--blue); }
.client-result>span:nth-child(2) { min-width:0;flex:1; }
.client-result strong { display:block;font-size:13px;line-height:1.5;overflow-wrap:anywhere; }
.client-result small { display:block;font-size:11px;line-height:1.7;color:var(--muted);overflow-wrap:anywhere; }
.client-result>i { color:var(--muted);font-size:11px; }
.client-result-avatar { display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:13px;background:var(--blue-soft);color:var(--blue);font-size:17px; }
.client-search-dialog .client-search-note { font-size:11px;color:var(--muted);line-height:1.7;margin:18px 0 0; }
.client-search-status { padding:22px 0; }
.client-empty { display:grid;justify-items:center;gap:12px;padding:32px 16px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px; }
.client-empty>i { font-size:24px;color:var(--blue); }
.client-back { margin:1px 0 18px; }
.client-dossier-heading { display:flex;align-items:center;gap:14px;margin-bottom:20px; }
.client-dossier-heading>div { flex:1;min-width:0; }
.client-dossier-heading h2 { margin:0 0 5px;font-size:22px;overflow-wrap:anywhere; }
.client-dossier-heading p { font-size:12px; }
.client-dossier-heading>.badge { flex-shrink:0; }
.client-tabs { display:flex;gap:6px;padding:5px;margin-bottom:22px;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.client-tabs button { display:flex;align-items:center;justify-content:center;gap:7px;flex:1 0 auto;padding:10px 11px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:11px;cursor:pointer;white-space:nowrap; }
.client-tabs button:hover { color:var(--blue);background:var(--blue-soft); }
.client-tabs button[aria-selected="true"] { background:var(--surface);border-color:var(--line);color:var(--blue);box-shadow:var(--shadow);font-weight:600; }
.client-tabs button>span { font-size:10px;opacity:.8; }
.client-info-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 24px;margin:0 0 24px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft); }
.client-info-grid dt { font-size:11px;color:var(--muted);margin-bottom:6px; }
.client-info-grid dt>i { color:var(--blue);margin-right:4px; }
.client-info-grid dd { font-size:12px;color:var(--text);line-height:1.7;margin:0;overflow-wrap:anywhere; }
.client-task-row { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px;margin:0 0 10px;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:16px;text-align:left;font:inherit;color:var(--text);cursor:pointer; }
.client-task-row:hover { background:var(--surface-soft);border-color:var(--blue); }
.client-task-row>span { min-width:0; }
.client-task-row strong { display:block;margin:9px 0 5px;font-size:13px;overflow-wrap:anywhere; }
.client-task-row small,.client-record small,.client-timeline small { color:var(--muted);font-size:11px;line-height:1.7; }
.client-task-row>i { flex-shrink:0;color:var(--blue);font-size:12px; }
.client-task-row p { margin-top:10px;font-size:12px; }
.client-tone-done { background:var(--green-soft,#eaf8f0);color:#208960; }
.client-tone-overdue { background:#fff1e6;color:#bd5900; }
.client-tone-cancelled { background:#fff1f2;color:#c94150; }
.client-tone-doing { background:#fff8df;color:#957100; }
.client-record { padding:20px;border:1px solid var(--line);border-radius:16px;margin:0 0 14px;min-width:0; }
.client-record h3,.client-notes h3 { margin:0 0 10px;font-size:14px;overflow-wrap:anywhere; }
.client-search-dialog .client-record p,.client-notes p,.client-timeline p { margin-top:12px;white-space:pre-wrap; }
.client-record>p:not(.client-full-message) { max-height:180px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.client-record footer,.client-detail-actions { display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px; }
.client-record .client-info-grid { margin:14px 0 0; }
.client-record .btn,.client-detail-actions .btn { font-size:12px; }
.client-notes { border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:20px; }
.client-timeline { margin:0;padding:0;list-style:none; }
.client-timeline li { padding:18px 20px;margin-bottom:12px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:14px; }
.client-timeline li>div { display:flex;align-items:flex-start;justify-content:space-between;gap:16px; }
.client-timeline strong { font-size:13px; }
.client-timeline time { font-size:11px;color:var(--muted);flex-shrink:0; }
.client-timeline .text-link { display:inline-block;margin-top:12px; }
.client-messages { display:grid;gap:12px;margin-top:18px; }
.client-message { border:1px solid var(--line);background:var(--surface-soft);padding:15px;border-radius:15px;width:88%;justify-self:start;min-width:0; }
.client-message.is-outgoing { background:var(--blue-soft);justify-self:end; }
.client-message strong { font-size:11px; }
.client-search-dialog .client-message p { white-space:pre-wrap;margin:8px 0;font-size:12px; }
.client-message small { display:block;text-align:right;font-size:10px;color:var(--muted); }
@media(max-width:1100px) { .client-search-launcher { width:38px;height:38px;min-height:38px;justify-content:center;padding:0; } .client-search-launcher>span { display:none; } }
@media(max-width:480px) { .team-body .team-new-task { width:35px;min-width:35px;min-height:35px;padding:0;justify-content:center; } .team-body .team-new-task>span { display:none; } }
@media(max-width:650px) {
  .system-dialog.client-search-dialog { width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:18px; }
  .client-search-head { padding:18px 16px 14px; }
  .client-search-input { margin:0 16px 16px; }
  .client-search-content { padding:0 16px 20px; }
  .client-info-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:15px; }
  .client-dossier-heading { flex-wrap:wrap;gap:12px; }
  .client-dossier-heading>div { flex-basis:calc(100% - 60px); }
  .client-dossier-heading h2 { font-size:18px; }
  .client-result { padding:12px;gap:10px; }
  .client-record { padding:15px; }
  .client-timeline li>div { flex-direction:column;gap:6px; }
  .client-record footer .btn,.client-detail-actions .btn { flex:1; }
  .client-message { width:95%; }
}
.vito-tour-open { overflow:hidden; }
.vito-tour-open .team-coach-toast { visibility:hidden;pointer-events:none; }
.vito-tour-layer { position:fixed;inset:0;z-index:30000;isolation:isolate; }
.vito-tour-layer.is-practicing { pointer-events:none; }
.vito-tour-layer.is-practicing .vito-tour-card { pointer-events:auto;width:min(330px,calc(100vw - 24px)); }
.vito-tour-layer.is-practicing .vito-tour-shade { background:transparent; }
.vito-tour-layer.is-practicing .vito-tour-spot { box-shadow:0 0 0 4px rgba(22,119,238,.14); }
.vito-tour-open.vito-tour-practicing { overflow:auto; }
.tour-sandbox-banner { display:flex;align-items:flex-start;gap:10px;padding:12px 16px;margin:0 0 16px;border:1px solid var(--line);border-radius:14px;background:var(--blue-soft);color:var(--text);font-size:12px;line-height:1.6; }
.tour-sandbox-banner>i { color:var(--blue);margin-top:3px; }
.tour-sandbox-banner strong { display:block;color:var(--blue); }
.tour-panel-hint { color:var(--muted);font-size:11px;line-height:1.6; }
.vito-tour-card.is-minimized { width:220px!important;padding:12px; }
.vito-tour-card.is-minimized .vito-tour-scroll { display:none; }
.vito-tour-card.is-minimized .vito-tour-head { margin:0;gap:6px; }
.vito-tour-card.is-minimized .vito-tour-actions { margin:8px 0 0;padding:8px 0 0;gap:4px; }
.vito-tour-card.is-minimized .vito-tour-actions>.text-link { display:none; }
.vito-tour-shade { position:absolute;inset:0;background:rgba(21,31,48,.46); }
.vito-tour-layer.has-target .vito-tour-shade { background:transparent; }
.vito-tour-spot { position:fixed;border:2px solid var(--blue);border-radius:14px;box-shadow:0 0 0 9999px rgba(21,31,48,.46),0 0 0 4px rgba(22,119,238,.14);pointer-events:none; }
.vito-tour-card.panel { position:fixed;z-index:2;display:flex;flex-direction:column;width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:hidden;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 80px rgba(21,31,48,.22);margin:0; }
.vito-tour-scroll { min-height:0;overflow:auto;padding:4px;margin:-4px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.vito-tour-card.is-welcome { width:min(500px,calc(100vw - 24px));padding:28px; }
.vito-tour-head { display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px; }
.vito-tour-head .eyebrow { display:flex;align-items:center;gap:8px;color:var(--blue);font-size:10px; }
.vito-tour-head .calendar-icon-button { flex-shrink:0; }
.vito-tour-brand { display:flex;gap:12px;align-items:center;margin:6px 0 18px;font-size:12px;color:var(--muted); }
.vito-tour-brand img { width:44px;height:44px;object-fit:contain;border-radius:12px; }
.vito-tour-copy h2 { font-size:22px;line-height:1.25;letter-spacing:-.6px;margin:14px 0 12px; }
.vito-tour-copy>p { font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 14px; }
.vito-tour-example { border:1px solid var(--line);background:var(--surface-soft);border-radius:14px;padding:15px;margin:16px 0; }
.vito-tour-example strong { font-size:12px;color:var(--text); }
.vito-tour-example p { font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 0; }
.tour-welcome-voice { display:grid;gap:12px;padding:14px;margin:16px 0;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft); }
.tour-welcome-voice-copy { display:flex;align-items:flex-start;gap:10px; }
.tour-welcome-voice-copy>i { color:var(--blue);margin-top:2px; }
.tour-welcome-voice-copy strong { font-size:12px; }
.tour-welcome-voice-status { color:var(--muted);font-size:11px;line-height:1.6;margin:5px 0 0; }
.tour-welcome-voice-actions { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.tour-welcome-voice-actions .btn { display:flex;gap:8px;align-items:center;font-size:12px; }
.tour-welcome-voice .team-option.tour-auto-voice { font-size:11px;gap:8px;margin:0;padding:0;min-height:20px;border:0;background:transparent;color:var(--muted); }
.tour-welcome-voice .team-option.tour-auto-voice:hover { color:var(--blue); }
.vito-tour-card:not(.is-welcome) .tour-welcome-voice { padding:10px;gap:8px;margin:12px 0; }
.vito-tour-card:not(.is-welcome) .tour-welcome-voice-copy strong { display:none; }
.vito-tour-card:not(.is-welcome) .tour-welcome-voice-status { margin:0;font-size:10px; }
.vito-tour-card:not(.is-welcome) .tour-welcome-voice-actions .btn { min-height:32px;padding:6px 10px;font-size:11px; }
.vito-tour-copy p.vito-tour-note,.vito-tour-copy p.vito-tour-target-note { font-size:11px;line-height:1.6; }
.vito-tour-copy p.vito-tour-progress { font-size:11px;color:var(--text);margin:0 0 10px;display:flex;flex-direction:column;gap:3px; }
.vito-tour-progress span { color:var(--muted);font-size:10px; }
.vito-tour-progress-track { height:4px;background:var(--blue-soft);border-radius:10px;overflow:hidden; }
.vito-tour-progress-track>span { display:block;height:100%;background:var(--blue);border-radius:10px; }
.vito-tour-index { border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0; }
.vito-tour-index summary { display:flex;justify-content:space-between;align-items:center;padding:13px 2px;cursor:pointer;font-size:12px;font-weight:600;list-style:none; }
.vito-tour-index summary::-webkit-details-marker { display:none; }
.vito-tour-index[open] summary i { transform:rotate(180deg); }
.vito-tour-index nav { display:grid;gap:5px;max-height:180px;overflow:auto;padding:0 0 12px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.vito-tour-index button { display:flex;gap:10px;align-items:center;padding:10px;border:0;border-radius:10px;background:transparent;text-align:left;color:var(--text);font-size:12px;cursor:pointer; }
.vito-tour-index button>span { width:20px;color:var(--muted);font-size:10px; }
.vito-tour-index button:hover,.vito-tour-index button[aria-current="step"] { background:var(--blue-soft);color:var(--blue); }
.vito-tour-actions { display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;background:var(--surface);padding:12px 0 4px;border-top:1px solid var(--line);margin-top:14px; }
.vito-tour-actions>.text-link { margin-right:auto;font-size:11px; }
.vito-tour-actions .btn { min-height:38px;font-size:11px; }
.crm-directory-head { gap:20px;flex-wrap:wrap; }
.crm-directory-head p { font-size:12px;line-height:1.6;margin:8px 0 0; }
.crm-directory-tools { display:flex;align-items:center;gap:10px;min-width:260px; }
.crm-directory-tools input { width:280px;max-width:100%; }
.crm-directory .crm-client-name { text-align:left;font-weight:700; }
.crm-directory td small { display:block;color:var(--muted);font-size:11px;line-height:1.6;margin-top:4px; }
.crm-directory td:last-child { white-space:nowrap; }
.crm-directory td:last-child>.text-link { margin-left:12px; }
.crm-directory .table-wrap { max-height:clamp(240px,calc(100dvh - 310px),620px);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.crm-directory .data-table { min-width:860px; }
.crm-directory .data-table th { position:sticky;top:0;z-index:1;background:var(--surface-soft); }
.crm-directory-footer { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:12px; }
.crm-directory-footer>div { display:flex;align-items:center;gap:12px; }
@media(max-width:650px) { .crm-directory-tools { width:100%;min-width:0; }.crm-directory-tools input { flex:1;width:auto;min-width:0; }.crm-directory-footer { flex-direction:column;align-items:flex-start;padding:16px; }.crm-directory-footer>div { width:100%;justify-content:space-between;gap:8px; } }
.vito-tour-layer.is-practicing .vito-tour-actions { display:grid;grid-template-columns:1fr 1fr; }
.vito-tour-layer.is-practicing .vito-tour-actions>.text-link { grid-column:1/-1;justify-self:start;margin-bottom:4px; }
.vito-tour-layer.is-practicing .vito-tour-actions .btn { min-width:0;padding:8px; }
@media(max-width:759px) {
  .vito-tour-layer.is-practicing .vito-tour-card.is-minimized { width:calc(100vw - 24px)!important;display:flex;flex-direction:row;align-items:center;gap:10px;padding:10px; }
  .vito-tour-card.is-minimized .vito-tour-head .eyebrow { display:none; }
  .vito-tour-card.is-minimized .vito-tour-actions { flex:1;margin:0;padding:0;border:0; }
  .team-body.vito-tour-practicing :is(.team-notifications-popover,.team-calendar-panel:not(.is-standalone),.team-whatsapp-popover) { top:158px;max-height:calc(100dvh - 174px);right:12px;left:66px;width:auto; }
  .team-body.vito-tour-practicing .team-quick-panel { top:158px;bottom:16px;height:auto; }
}
.vito-tour-ask { display:block;margin-top:14px;line-height:1.6;text-align:center;width:100%; }
.vito-tour-card :focus-visible,.team-tour-help:focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
.tour-practice { border:1px solid var(--line);border-radius:16px;background:var(--surface-soft);padding:14px;margin-top:16px;min-width:0; }
.tour-practice-header { display:flex;justify-content:space-between;align-items:center;gap:10px; }
.tour-practice-header>strong { color:var(--blue);font-size:11px; }
.tour-practice-header>.btn { min-height:28px;padding:5px 8px;font-size:10px;background:var(--surface); }
.tour-practice p { font-size:12px;line-height:1.65;margin:10px 0; }
.tour-practice .tour-practice-hint { color:var(--muted);font-size:11px; }
.tour-practice-content { min-width:0; }
.tour-practice-content>.btn,.tour-practice-content form>.btn { margin-top:10px;font-size:11px;white-space:normal; }
.tour-practice-row { display:flex;gap:10px;align-items:center;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px; }
.tour-practice-row>div { min-width:0;flex:1; }
.tour-practice-row strong,.tour-practice-task>strong { display:block;font-size:12px;line-height:1.55;overflow-wrap:anywhere; }
.tour-practice-row small,.tour-practice-task>small { display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:4px; }
.tour-practice-icon,.tour-practice-avatar { display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:10px;background:var(--blue-soft);color:var(--blue);font-size:12px;object-fit:contain; }
.tour-practice-row .badge { align-self:flex-start;font-size:9px;white-space:normal; }
.tour-practice-time { color:var(--blue);font-size:12px;font-weight:600; }
.tour-practice-document { margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:11px;overflow-wrap:anywhere; }
.tour-practice-document>span { display:block;font-size:10px;color:var(--muted);margin-top:4px; }
.tour-practice-calendar { display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 12px;font-size:11px;color:var(--muted); }
.tour-practice-calendar .btn { font-size:11px; }
.tour-practice [aria-pressed="true"] { color:var(--blue);border-color:var(--blue);background:var(--blue-soft); }
.tour-practice-thread { display:grid;gap:8px;margin-top:12px;max-height:190px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.tour-practice .tour-practice-bubble { padding:10px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--line);max-width:92%;justify-self:start;margin:0;overflow-wrap:anywhere; }
.tour-practice .tour-practice-bubble.is-outgoing { justify-self:end;background:var(--blue-soft);border-color:var(--blue-soft); }
.tour-practice-bubble small { display:block;color:var(--muted);font-size:9px;margin-top:4px; }
.tour-practice form { display:grid;gap:8px;margin-top:12px; }
.tour-practice form label { font-size:11px;font-weight:600; }
.tour-practice textarea { width:100%;min-height:68px;font-size:12px;resize:vertical; }
.tour-practice .tour-practice-feedback { color:var(--text);background:var(--surface);border-left:3px solid var(--blue);padding:10px;border-radius:6px;font-size:11px; }
.tour-practice-disclaimer { display:block;margin-top:12px;color:var(--muted);font-size:10px;line-height:1.6; }
.tour-practice-task { background:var(--surface);border:1px solid var(--line);border-left:3px solid #788294;border-radius:12px;padding:12px; }
.tour-practice-task.is-doing { border-left-color:#d2a117; }
.tour-practice-task.is-done { border-left-color:#179367; }
.tour-practice-task .badge { margin-bottom:8px; }
.tour-practice-stages,.tour-practice-actions { display:flex;flex-wrap:wrap;gap:8px;margin:12px 0; }
.tour-practice-stages>span { font-size:10px;border:1px solid var(--line);border-radius:9px;padding:7px;background:var(--surface); }
.tour-practice-stages>.is-ready { color:#168060; }
.tour-practice-actions .btn { font-size:11px; }
.vito-tour-control-proxy { position:fixed;z-index:1;pointer-events:auto;min-width:0;padding:0; }
.vito-tour-control-proxy:focus-visible { outline:3px solid var(--blue);outline-offset:3px; }
.tour-practice-nav { display:flex;flex-wrap:wrap;gap:8px;margin:12px 0; }
.tour-practice-nav>span { display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:11px; }
.tour-practice-nav.is-compact>span { padding:10px; }
.tour-practice-search { margin:12px 0; }
.tour-practice-search>div { display:flex;gap:8px; }
.tour-practice-search .input { min-width:0;flex:1; }
.tour-practice-chat-list { display:grid;gap:7px;margin-bottom:14px; }
.tour-practice-chat-list>.btn { display:flex;justify-content:flex-start;gap:10px;text-align:left;white-space:normal; }
.tour-practice-chat-list>.btn[aria-pressed="true"] { border-color:var(--blue);background:var(--blue-soft); }
.tour-practice-chat-list strong,.tour-practice-chat-list small { display:block; }
.tour-practice-chat-list small { margin-top:4px;color:var(--muted);font-size:10px; }
@media(max-width:480px) { .vito-tour-card.panel,.vito-tour-card.is-welcome { padding:18px; }.vito-tour-copy h2 { font-size:20px; }.vito-tour-actions>.text-link { flex-basis:100%;text-align:left;margin-bottom:5px; }.vito-tour-actions .btn { flex:1; }.team-tour-help { flex-shrink:0; } }

:root {
  color-scheme: light;
  --bg: #f7f8fa;
  --surface: #ffffff;
  --surface-soft: #f4f5f7;
  --line: #e4e7ec;
  --line-strong: #d4dae3;
  --text: #20242c;
  --muted: #697381;
  --blue: #087cf0;
  --blue-soft: #eaf3ff;
  --wa-accent: #087cf0;
  --wa-rail: #f6f7f9;
  --wa-glass: rgba(255,255,255,.9);
  --green: #278461;
  --green-soft: #eaf8f0;
  --task-gray: #667085;
  --task-gray-soft: #f3f4f6;
  --task-yellow: #9a6b00;
  --task-yellow-soft: #fff8df;
  --task-red: #c13f49;
  --task-red-soft: #fff0f1;
  --task-orange: #bc5b16;
  --task-orange-soft: #fff1e6;
  --shadow: 0 8px 28px rgba(31, 45, 65, .055), 0 1px 3px rgba(31, 45, 65, .035);
  --glass: rgba(255,255,255,.86);
  --glass-nav: rgba(247,249,252,.9);
  --shadow-float: 0 22px 64px rgba(31,45,65,.16), 0 2px 8px rgba(31,45,65,.055);
  --radius-panel: 22px;
  --radius-control: 12px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
}

.team-whatsapp-link-card { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;margin-bottom:16px;min-width:0; }
.team-whatsapp-link-card p { color:var(--muted);font-size:12px;line-height:1.6;max-width:650px; }
.team-whatsapp-link-card small { color:var(--muted);font-size:11px; }
.team-whatsapp-link-card .btn { flex-shrink:0; }
.system-dialog.team-whatsapp-qr-dialog { width:min(460px,calc(100vw - 24px));padding:24px;max-height:calc(100dvh - 24px);overflow:auto;background:var(--surface); }
.team-whatsapp-qr-dialog h2 { margin:6px 0;font-size:22px; }
.team-whatsapp-qr-dialog p { color:var(--muted);font-size:13px;line-height:1.6; }
.team-whatsapp-qr-dialog>small { display:block;color:var(--muted);line-height:1.6; }
.team-whatsapp-qr-image { min-height:270px;display:grid;place-items:center;margin:16px 0;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px; }
.team-whatsapp-qr-image img { width:260px;max-width:100%;height:auto; }
.team-whatsapp-qr-image [role="alert"] { color:var(--task-red); }
@media(max-width:640px){ .team-whatsapp-link-card { flex-direction:column;align-items:stretch; } .team-whatsapp-qr-dialog .whatsapp-qr-actions { flex-wrap:wrap; } }
.advisor-replies{margin:0 0 18px;padding:20px;min-width:0}
.advisor-replies>header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.advisor-replies h2{font-size:17px;margin:5px 0 7px}
.advisor-replies h2 .badge{margin-left:8px}
.advisor-replies header p,.advisor-reply-owner,.advisor-replies-empty{font-size:12px;color:var(--muted);margin:4px 0}
.advisor-replies-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:14px;max-height:560px;overflow:auto;padding:3px}
.advisor-reply{border:1px solid var(--line-strong);border-radius:16px;padding:18px;min-width:0;background:var(--surface)}
.advisor-reply-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:11px}
.advisor-reply h3{font-size:15px;margin:15px 0 6px}
.advisor-reply-excerpt{font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}
.advisor-reply-files,.advisor-reply-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.advisor-reply-files button{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left}
.advisor-reply-deadline{padding:12px;border-radius:12px;background:var(--task-orange-soft);color:var(--task-orange);font-size:12px;line-height:1.6}
.advisor-reply details{margin:14px 0;padding:12px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;font-size:12px}
.advisor-reply summary{cursor:pointer;font-weight:600;min-height:24px}
.advisor-reply details p{overflow-wrap:anywhere;line-height:1.6}
.advisor-reply pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;background:var(--surface);border-radius:10px;line-height:1.6}
.advisor-reply-prompt{font-size:13px;font-weight:600;line-height:1.6}
.advisor-reply small{color:var(--muted);font-size:11px}
.advisor-replies-feedback{font-size:12px;line-height:1.6;color:var(--muted)}
.advisor-replies-feedback:empty{display:none}
.advisor-replies-empty{padding-top:12px}
.advisor-reply button:focus-visible,.advisor-reply summary:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
@media(max-width:480px){.advisor-replies{padding:16px}.advisor-replies>header{align-items:flex-start}.advisor-replies .eyebrow{font-size:9px}.advisor-reply{padding:14px}.advisor-reply-actions .btn{flex:1 1 130px}.advisor-replies-grid{max-height:650px}}
.sales-payments-view { display:grid; gap:20px; min-width:0; }
.sales-payments-view > *, .sales-payments-layout > * { min-width:0; }
.sales-payments-head { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; }
.sales-payments-kicker { font-size:10px; color:var(--muted); font-weight:700; letter-spacing:1.1px; }
.sales-payments-head h2 { margin:9px 0; font-size:22px; }
.sales-payments-head p { margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.sales-payments-head .btn { flex-shrink:0; }
.sales-payments-filters { display:grid; grid-template-columns:minmax(150px,210px) minmax(190px,300px) auto minmax(0,1fr); align-items:end; gap:18px; padding:20px 24px; overflow:visible; }
.sales-payments-feedback { color:var(--muted); font-size:11px; line-height:1.6; margin:0; align-self:center; }
.sales-payments-layout { display:grid; grid-template-columns:minmax(240px,310px) minmax(0,1fr); gap:20px; align-items:start; }
.sales-payments-summary { padding:24px; }
.sales-payments-summary h3 { margin:18px 0 10px; font-size:13px; }
.sales-payments-total { display:block; font-size:30px; letter-spacing:-.7px; font-variant-numeric:tabular-nums; }
.sales-payments-currency { display:block; font-size:11px; color:var(--muted); margin-top:8px; }
.sales-payments-counts { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:22px 0; margin-top:12px; border-bottom:1px solid var(--line); }
.sales-payments-counts div { display:grid; gap:6px; }
.sales-payments-counts strong { font-size:22px; }
.sales-payments-counts span { color:var(--muted); font-size:11px; }
.sales-payments-sellers { padding:0; margin:8px 0 18px; list-style:none; }
.sales-payments-sellers li { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 0; border-bottom:1px solid var(--line); font-size:12px; }
.sales-payments-sellers li > span { overflow-wrap:anywhere; }
.sales-payments-sellers strong { white-space:nowrap; font-size:12px; font-variant-numeric:tabular-nums; }
.sales-payments-sellers small { display:block; color:var(--muted); font-size:10px; margin-top:6px; }
.sales-payments-proof { display:block; font-size:11px; color:var(--muted); line-height:1.8; margin:16px 0 0; }
.panel.sales-payments-chat { padding:0; overflow:hidden; }
.sales-payments-chat header { display:flex; align-items:center; gap:12px; padding:18px 24px; border-bottom:1px solid var(--line); background:var(--surface); }
.sales-payments-avatar { display:grid; place-items:center; height:42px; width:42px; flex-shrink:0; border-radius:14px; background:var(--green-soft); color:var(--green); font-size:24px; }
.sales-payments-chat header strong { font-size:13px; }
.sales-payments-chat header small { display:block; font-size:10px; margin-top:6px; color:var(--muted); }
.sales-payments-chat header .badge { margin-left:auto; white-space:nowrap; }
.sales-payments-chat-body { padding:28px; background:var(--surface-soft); min-height:320px; display:grid; align-content:start; }
.sales-payments-bubble { padding:24px; border:1px solid #d2eadc; border-radius:18px 4px 18px 18px; background:var(--green-soft); max-width:660px; width:100%; justify-self:end; }
.sales-payments-bubble pre { white-space:pre-wrap; overflow-wrap:anywhere; font-family:inherit; font-size:13px; line-height:1.85; margin:0; user-select:text; cursor:text; border-radius:6px; }
.sales-payments-bubble pre:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
.sales-payments-message-note { display:block; text-align:right; font-size:10px; color:var(--green); margin-top:16px; }
.sales-payments-chat footer { display:flex; align-items:center; gap:10px; padding:16px 24px; color:var(--muted); font-size:11px; border-top:1px solid var(--line); line-height:1.7; }
.sales-payments-empty { display:grid; justify-items:center; align-content:center; gap:14px; text-align:center; min-height:264px; color:var(--muted); }
.sales-payments-empty > i { font-size:30px; color:var(--line-strong); }
.sales-payments-empty h3 { font-size:14px; margin:0; color:var(--text); }
.sales-payments-empty p { font-size:12px; line-height:1.8; margin:0; max-width:390px; }
.sales-payments-filters .field { align-self:start; }
.sales-payments-filters > .btn { align-self:start; margin-top:23px; }
.sales-payments-filters .vito-select-menu.is-inline { position:relative; inset:auto; width:100%; margin-top:8px; max-height:220px; }
@media(max-width:1050px) { .sales-payments-filters { grid-template-columns:1fr 1fr auto; } .sales-payments-feedback { grid-column:1/-1; } }
@media(max-width:760px) { .sales-payments-layout { grid-template-columns:1fr; } .sales-payments-head { flex-wrap:wrap; } .sales-payments-summary { padding:20px; } .sales-payments-chat-body { padding:20px; } }
@media(max-width:480px) { .sales-payments-head { padding:20px; gap:16px; } .sales-payments-head .btn { width:100%; } .sales-payments-head h2 { font-size:20px; } .sales-payments-filters { grid-template-columns:1fr; padding:20px; gap:16px; } .sales-payments-filters > .btn { width:100%; margin-top:0; } .sales-payments-chat header { padding:16px; flex-wrap:wrap; } .sales-payments-chat header .badge { font-size:9px; } .sales-payments-chat-body { padding:16px; } .sales-payments-bubble { padding:18px; } .sales-payments-chat footer { padding:16px; } }
.productivity-page { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; min-width:0; }
.productivity-page > * { min-width:0; }
.prod-overview { display:grid; gap:20px; }
.prod-overview[hidden] { display:none; }
.productivity-metric { position:relative; width:100%; background:var(--surface); border:0; color:var(--text); font:inherit; text-align:left; cursor:pointer; appearance:none; }
.productivity-metric:hover { background:var(--surface-soft); }
.productivity-metric:focus-visible { outline:2px solid var(--blue); outline-offset:-3px; background:var(--blue-soft); }
.prod-open-hint { grid-column:1/-1; justify-self:end; color:var(--blue); font-size:10px; display:flex; gap:8px; align-items:center; }
.prod-validation { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.prod-validation strong { font-size:13px; }
.prod-validation p { color:var(--muted); font-size:12px; margin:8px 0; }
.prod-validation small { color:var(--muted); font-size:11px; line-height:1.6; }
.prod-validation > .btn { flex-shrink:0; }
.prod-detail-heading { display:flex; align-items:center; gap:16px; }
.prod-detail-intro { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.prod-detail-intro > div { display:flex; align-items:center; gap:16px; }
.prod-detail-intro h2 { font-size:19px; margin:0 0 8px; }
.prod-detail-intro p { font-size:12px; color:var(--muted); margin:0 0 8px; line-height:1.6; }
.prod-detail-intro small { color:var(--muted); font-size:11px; }
.prod-detail-intro > strong { font-size:28px; white-space:nowrap; }
.prod-email-summary { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.prod-email-summary>button { display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto auto;align-items:center;column-gap:13px;padding:17px 18px;border-color:var(--line);color:var(--text);font:inherit;text-align:left;cursor:pointer; }
.prod-email-summary>button:hover,.prod-email-summary>button.is-active { border-color:#bfd8f4;box-shadow:0 8px 24px rgba(38,93,151,.1); }
.prod-email-summary>button:focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
.prod-email-summary small,.prod-email-summary>button>span:last-child { color:var(--muted);font-size:10px; }
.prod-email-summary strong { font-size:23px;line-height:1.2; }
.prod-email-icon { grid-row:1/4;display:grid;width:44px;height:44px;place-items:center;border-radius:13px;background:var(--blue-soft);color:var(--blue); }
.prod-email-icon.answered { background:var(--green-soft);color:var(--green); }
.prod-email-icon.pending { background:var(--task-orange-soft);color:var(--task-orange); }
.prod-finance-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.prod-finance-cards > section { display:grid; gap:12px; }
.prod-finance-cards small,.prod-finance-cards span { font-size:11px; color:var(--muted); line-height:1.6; }
.prod-finance-cards strong { font-size:25px; font-variant-numeric:tabular-nums; }
.prod-stacked { display:flex; min-height:18px; overflow:hidden; border-radius:10px; background:var(--line); margin:22px 0; }
.prod-no-payment { width:100%; padding:10px; font-size:11px; color:var(--muted); text-align:center; }
.prod-channel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.prod-channel { display:grid; gap:12px; border:1px solid var(--line); background:var(--surface); border-radius:14px; text-align:left; padding:16px; color:var(--text); font:inherit; cursor:pointer; min-width:0; }
.prod-channel > span { display:flex; align-items:center; gap:8px; font-size:12px; }
.prod-channel i { flex:0 0 8px; height:8px; border-radius:50%; background:var(--metric-color); }
.prod-channel strong { font-size:21px; }
.prod-channel small { color:var(--muted); font-size:10px; line-height:1.5; }
.prod-channel:hover { background:var(--surface-soft); border-color:var(--line-strong); }
.prod-channel.active { border-color:var(--blue); background:var(--blue-soft); }
.prod-channel:focus-visible,.prod-segment button:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.prod-segment { display:flex; flex-wrap:wrap; gap:6px; background:var(--surface-soft); padding:5px; border:1px solid var(--line); border-radius:13px; }
.prod-segment button { font:inherit; font-size:11px; font-weight:600; border:0; border-radius:9px; padding:10px 14px; background:transparent; color:var(--muted); cursor:pointer; }
.prod-segment button.active { color:var(--blue); background:var(--blue-soft); }
.prod-segment button:hover { color:var(--blue); }
.prod-chart-scroll { overflow-x:auto; scrollbar-width:thin; scrollbar-color:var(--line-strong) transparent; }
.prod-trend { display:block; width:100%; min-width:520px; margin:12px 0; }
.prod-chart-label { font:9px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; fill:var(--muted); }
.prod-comparisons { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:22px; }
.prod-comparisons > div { display:grid; gap:12px; background:var(--surface-soft); border-radius:14px; padding:18px; }
.prod-comparisons small,.prod-comparisons span { font-size:11px; color:var(--muted); line-height:1.6; }
.prod-comparisons strong { font-size:19px; }
.prod-series-values { display:grid; gap:12px; margin:14px 0; font-size:12px; }
.prod-record-filters { display:flex; align-items:start; gap:20px; margin:20px 0; }
.prod-record-filters .field { flex:1; min-width:0; margin:0; }
.prod-record-filters .vito-select-menu { position:relative; margin-top:8px; inset:auto; width:100%; max-height:220px; }
.prod-record-list { display:grid; gap:16px; }
.prod-record { border:1px solid var(--line); border-radius:16px; padding:20px; min-width:0; }
.prod-record-title { display:flex; align-items:start; justify-content:space-between; gap:20px; }
.prod-record-title h3 { margin:0 0 8px; font-size:14px; }
.prod-record-title > div { display:grid; gap:8px; }
.prod-record-title span { color:var(--muted); font-size:11px; }
.prod-record-title strong { font-size:19px; white-space:nowrap; }
.prod-record-title .prod-proof { font-size:10px; border-radius:9px; padding:6px 9px; justify-self:end; }
.prod-proof.verified { background:var(--green-soft); color:var(--green); }
.prod-proof.pending { background:var(--task-orange-soft); color:var(--task-orange); }
.prod-client-data { display:flex; flex-wrap:wrap; gap:10px 22px; margin:16px 0; font-size:11px; overflow-wrap:anywhere; }
.prod-context { font-size:12px; line-height:1.7; color:var(--muted); }
.prod-source { color:var(--muted); font-size:11px; line-height:1.7; margin:16px 0; }
.prod-source summary { cursor:pointer; padding:6px 0; color:var(--blue); }
.prod-source summary:focus-visible { outline:2px solid var(--blue); outline-offset:3px; border-radius:4px; }
.prod-source p { white-space:pre-wrap; overflow-wrap:anywhere; }
.prod-record-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.prod-pagination { display:flex; align-items:center; justify-content:center; gap:18px; margin-top:24px; font-size:11px; color:var(--muted); }
@media(max-width:850px){ .prod-finance-cards,.prod-channel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .prod-email-summary { grid-template-columns:1fr; } .prod-history .panel-header,.prod-records .panel-header { align-items:start; flex-wrap:wrap; gap:16px; } }
@media(max-width:540px){ .prod-validation,.prod-detail-intro { flex-direction:column; align-items:start; } .prod-finance-cards,.prod-comparisons { grid-template-columns:1fr; } .prod-channel-grid { grid-template-columns:1fr 1fr; gap:10px; } .prod-channel { padding:12px; } .prod-channel > span { font-size:11px; } .prod-channel strong { font-size:18px; } .prod-detail-heading { flex-wrap:wrap; } .prod-record-filters { flex-direction:column; } .prod-record-filters .field { width:100%; } .prod-record { padding:16px; } .prod-record-title { flex-direction:column; gap:12px; } .prod-record-title .prod-proof { justify-self:start; } }
.productivity-toolbar { display:flex; flex-wrap:wrap; align-items:start; gap:20px; padding:20px; }
.productivity-toolbar .field { flex:1 1 220px; margin:0; min-width:0; }
.productivity-toolbar-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.productivity-caption { display:flex; align-items:center; justify-content:space-between; gap:14px; color:var(--muted); font-size:12px; }
.productivity-grid { display:grid; grid-template-columns:minmax(245px,290px) minmax(0,1fr); gap:20px; align-items:stretch; }
.productivity-overall { padding:24px; display:flex; flex-direction:column; }
.productivity-overall .subtitle { margin:8px 0 0; font-size:11px; }
.productivity-ring { position:relative; width:min(100%,230px); margin:24px auto 34px; }
.productivity-ring svg { display:block; width:100%; }
.productivity-ring circle { fill:none; stroke-width:28px; }
.productivity-ring-track { stroke:var(--line); }
.productivity-ring-fill { stroke:var(--blue); stroke-linecap:round; transform:rotate(-90deg); transform-origin:110px 110px; }
.productivity-ring > div { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
.productivity-ring strong { font-size:34px; letter-spacing:-1px; }
.productivity-ring small { font-size:9px; font-weight:750; letter-spacing:1.5px; color:var(--muted); }
.productivity-legend { list-style:none; padding:0; margin:auto 0 0; display:grid; gap:16px; font-size:10px; }
.productivity-legend li,.productivity-legend li > span { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.productivity-legend i { width:7px; height:7px; border-radius:50%; background:var(--metric-color); flex:0 0 7px; }
.panel.productivity-metrics { padding:0; overflow:hidden; }
.productivity-table-head,.productivity-metric { display:grid; grid-template-columns:minmax(230px,1.7fr) minmax(82px,.55fr) minmax(114px,.7fr) minmax(130px,1fr); align-items:center; gap:18px; padding:22px 24px; }
.productivity-table-head { color:var(--muted); background:var(--surface-soft); text-transform:uppercase; font-size:9px; letter-spacing:1px; font-weight:700; padding-top:18px; padding-bottom:18px; }
.productivity-metric { min-height:100px; border-top:1px solid var(--line); }
.productivity-indicator { display:flex; align-items:center; gap:14px; min-width:0; }
.productivity-icon { flex:0 0 40px; width:40px; height:40px; display:grid; place-items:center; border-radius:13px; background:color-mix(in srgb,var(--metric-color) 10%,white); color:var(--metric-color); font-size:16px; }
.productivity-indicator h3 { font-size:13px; margin:0 0 5px; }
.productivity-indicator small { font-size:10px; color:var(--muted); }
.productivity-indicator p { color:var(--muted); font-size:10px; line-height:1.5; margin:5px 0 0; }
.productivity-percent > small,.productivity-value > small { display:none; }
.productivity-percent strong,.productivity-value strong { display:block; font-size:24px; font-variant-numeric:tabular-nums; letter-spacing:-.5px; }
.productivity-value strong { font-size:20px; overflow-wrap:anywhere; }
.productivity-value > span { color:var(--muted); display:block; font-size:10px; margin-top:6px; }
.productivity-progress > div:first-child { display:flex; justify-content:space-between; gap:8px; font-size:9px; color:var(--muted); margin-bottom:10px; }
.productivity-track { height:7px; border-radius:10px; overflow:hidden; background:var(--line); }
.productivity-track > span { display:block; height:100%; border-radius:inherit; background:var(--metric-color); }
.productivity-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.productivity-stats .panel { display:flex; flex-direction:column; gap:16px; padding:20px; }
.productivity-stats span { color:var(--muted); display:flex; align-items:center; gap:10px; font-size:11px; }
.productivity-stats strong { font-size:27px; }
.productivity-advisors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.productivity-advisor { display:grid; gap:9px; text-align:left; background:var(--surface-soft); border:1px solid var(--line); border-radius:14px; padding:18px; color:var(--text); cursor:pointer; }
.productivity-advisor span { font-size:12px; }
.productivity-advisor small { color:var(--muted); }
.productivity-advisor:hover { background:var(--blue-soft); border-color:var(--line-strong); }
.productivity-advisor:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.productivity-report-info { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.productivity-report-info p { color:var(--muted); font-size:11px; line-height:1.7; margin:10px 0 0; }
.productivity-report-info strong { font-size:13px; }
.productivity-report-info h2 i { margin-right:8px; color:var(--green); }
.productivity-goal-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(155px,1fr)); gap:16px; margin-top:20px; }
.productivity-empty { padding:40px; text-align:center; color:var(--muted); }
.productivity-home { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:22px 0; }
.productivity-home > div { display:flex; align-items:center; gap:16px; }
.productivity-home-icon { flex:0 0 46px; height:46px; display:grid; place-items:center; border-radius:14px; background:var(--blue-soft); color:var(--blue); font-size:21px; }
.productivity-home .subtitle { margin:7px 0 0; }
@media(max-width:1250px){
 .productivity-grid { grid-template-columns:240px minmax(0,1fr); gap:16px; }
 .productivity-table-head,.productivity-metric { grid-template-columns:minmax(185px,1.6fr) minmax(126px,.55fr) minmax(138px,.7fr); gap:14px; padding:18px; }
 .productivity-table-head > span:last-child { display:none; }
 .productivity-progress { grid-column:1/-1; }
 .productivity-progress > div:first-child { margin-bottom:6px; }
}
@media(max-width:850px){
 .productivity-grid { grid-template-columns:1fr; }
 .productivity-overall { display:grid; grid-template-columns:210px minmax(0,1fr); gap:12px 28px; }
 .productivity-overall > h2,.productivity-overall > p { grid-column:1/-1; }
 .productivity-ring { margin:8px auto; }
 .productivity-legend { margin:10px 0; font-size:11px; }
 .productivity-stats,.productivity-goal-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .productivity-caption { align-items:start; flex-direction:column; }
}
@media(max-width:540px){
 .productivity-overall { display:flex; }
 .productivity-ring { width:210px; }
 .productivity-table-head { display:none; }
 .productivity-metric { grid-template-columns:1fr 1fr; padding:20px; gap:18px; }
 .productivity-indicator { grid-column:1/-1; }
 .productivity-percent > small,.productivity-value > small { display:block; color:var(--muted); font-size:10px; margin-bottom:5px; }
 .productivity-report-info,.productivity-advisors,.productivity-goal-fields { grid-template-columns:1fr; }
 .productivity-toolbar-actions { width:100%; }
 .productivity-home { align-items:stretch; flex-direction:column; }
 .productivity-stats .panel { padding:16px; }
}
/* Work areas in the team portal use the same panels and controls as local Vito. */
.team-body .team-main:has(> .team-workspace) { padding: 0; }
.team-body .team-workspace { display: grid; grid-template-columns: 218px minmax(0,1fr); height: calc(100dvh - 73px); min-height: 480px; overflow: hidden; }
.team-body .team-workspace.nav-collapsed { grid-template-columns: 66px minmax(0,1fr); }
.team-channel-nav { display: flex; min-height: 0; flex-direction: column; gap: 14px; padding: 18px 10px; border-right: 1px solid var(--line); background: var(--surface); overflow: auto; scrollbar-width: thin; }
.team-channel-title { display: flex; gap: 8px; align-items: center; min-height: 50px; }
.team-channel-title > span { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 32px; border-radius: 10px; background: var(--blue-soft); color: var(--blue); }
.team-channel-title strong { flex: 1; min-width: 0; font-size: 13px; }
.team-channel-title small { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; font-weight: 400; }
.team-channel-nav nav { display: grid; gap: 7px; }
.team-channel-item { display: flex; align-items: center; gap: 13px; width: 100%; min-height: 42px; padding: 10px 12px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 650; text-align: left; }
.team-channel-item i { flex: 0 0 18px; font-size: 14px; text-align: center; }
.team-channel-item span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-channel-item small { display: block; margin-top: 5px; font-size: 9px; font-weight: 400; }
.team-channel-item.active { border-color: var(--line); background: var(--blue-soft); color: var(--blue); }
.team-channel-item:hover { background: var(--surface-soft); }
.team-label-heading { display: flex; justify-content: space-between; padding: 16px 10px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: 9px; font-weight: 750; text-transform: uppercase; }
.team-channel-nav.is-collapsed .team-channel-title { flex-wrap: wrap; justify-content: center; }
.team-channel-nav.is-collapsed :is(.team-channel-title strong,.team-channel-item span,.team-label-heading,.team-new-conversation span,.team-mail-compose) { display: none; }
.team-channel-nav.is-collapsed .team-channel-item { padding: 10px 12px; }
.team-new-conversation { white-space: normal; }
.team-channel-content { display: flex; flex-direction: column; gap: 12px; min-width: 0; min-height: 0; padding: 16px 16px 76px; overflow: hidden; }
.team-body .team-mail-grid { position: relative; display: grid; grid-template-columns: minmax(260px, 320px) minmax(0,1fr); gap: 16px; flex: 1; min-height: 0; height: auto; }
.team-body .team-mail-grid.detail-collapsed { grid-template-columns: minmax(0,1fr); }
.team-body .team-mail-detail[hidden] { display: none; }
.team-body .team-mail-list, .team-body .team-mail-detail { display: flex; min-height: 0; min-width: 0; height: auto; flex-direction: column; padding: 0; overflow: hidden; border-radius: 21px; }
.team-body .team-mail-items { flex: 1; min-height: 0; padding: 7px; overflow-y: auto; scrollbar-width: thin; }
.team-body .team-mail-item { display: flex; flex-direction: column; gap: 7px; width: 100%; margin-bottom: 8px; padding: 16px 12px; border: 1px solid transparent; border-radius: 13px; text-align: left; }
.team-body .team-mail-item.active { background: var(--blue-soft); border-color: var(--line); }
.team-mail-item-top { display: flex; gap: 8px; width: 100%; justify-content: space-between; align-items: center; }
.team-body :is(.team-mail-list,.team-chats,.team-messages) > .panel-header { display: flex; align-items: center; gap: 10px; padding: 18px; flex: 0 0 auto; border-bottom: 1px solid var(--line); }
.team-body :is(.team-mail-list,.team-chats,.team-messages) > .panel-header > :first-child { flex: 1; min-width: 0; }
.team-mail-item-top strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.team-mail-item-top time { flex: 0 0 auto; color: var(--muted); font-size: 9px; }
.team-body .team-mail-item :is(small,span:not(.team-mail-item-top)) { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-body .team-mail-item > small { color: var(--muted); font-size: 10px; }
.team-body .team-mail-detail-head { flex: 0 0 auto; padding: 24px; border-bottom: 1px solid var(--line); }
.team-body .team-mail-detail-head h2 { font-size: 19px; }
.team-body .team-mail-detail-head .gmail-sender { margin: 18px 0 0; }
.team-body .team-mail-frame { flex: 1; min-height: 120px; width: 100%; border: 0; background: #fff; color-scheme: light; }
.team-body .team-mail-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 16px; padding: 16px 24px; border-top: 1px solid var(--line); }
.team-mail-agent-field { flex: 1 1 200px; display: grid; gap: 8px; min-width: 0; }
.team-mail-agent-field label { color: var(--muted); font-size: 11px; font-weight: 650; }
.team-mail-action-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.team-body .team-split-toggle { position: absolute; z-index: 3; left: 310px; top: 50%; display: grid; place-items: center; width: 30px; height: 38px; padding: 0; border: 1px solid var(--line); border-radius: 11px; background: var(--surface); color: var(--muted); box-shadow: var(--shadow); }
.team-body .detail-collapsed .team-split-toggle { left: auto; right: -8px; }
.team-body .team-mail-reply-dialog { width: min(760px, calc(100vw - 36px)); max-height: calc(100dvh - 50px); overflow: auto; }
.team-mail-reply-dialog form { display: grid; gap: 12px; }
.team-body .team-whatsapp-grid { flex: 1; display: grid; grid-template-columns: minmax(240px,300px) minmax(0,1fr); gap: 16px; min-height: 0; height: auto; }
.team-body .team-whatsapp-grid.list-collapsed { grid-template-columns: 68px minmax(0,1fr); }
.team-body .team-chats, .team-body .team-messages { display: flex; flex-direction: column; min-width: 0; min-height: 0; padding: 0; overflow: hidden; }
.team-body .team-chat-list { flex: 1; min-height: 0; overflow-y: auto; padding: 8px; scrollbar-width: thin; }
.team-body .team-chat-item { display: flex; align-items: center; gap: 11px; padding: 12px 9px; width: 100%; }
.team-chat-avatar { display: grid; place-items: center; flex: 0 0 32px; height: 32px; border-radius: 50%; background: var(--blue-soft); color: var(--blue); font-size: 12px; }
.team-chat-copy { display: grid; min-width: 0; gap: 6px; }
.team-chat-copy :is(strong,small) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-body .list-collapsed .team-chat-copy, .team-body .list-collapsed .team-chats .panel-header h2, .team-body .list-collapsed [data-action="refresh-chats"] { display: none; }
.team-body .list-collapsed .team-chats .panel-header { padding: 16px; }
.team-body .team-message-list { flex: 1; min-height: 0; overflow-y: auto; padding: 18px; }
.team-body .team-send textarea { resize: none; }
.team-body .team-workspace.is-compact { display: block; min-height: 300px; height: auto; }
.team-body .team-workspace.is-compact .team-channel-content { padding: 0; }
.team-body .team-full-chat { display: flex; flex: 1; min-height: 0; flex-direction: column; padding: 0; overflow: hidden; }
.team-chat-tools { display: flex; align-items: center; gap: 5px; }
.team-body :is(.team-quick-panel,.team-full-chat).is-training { border-color: #94d3ad; background: #f4fbf6; }
.team-body .is-training .team-quick-head { background: var(--green-soft); border-bottom-color: #cae9d4; }
.team-body .is-training .team-quick-form button { background: var(--green); }
.team-body :is(.team-quick-panel,.team-full-chat).is-calendar { border-color: #9fc8f9; background: #f4f9ff; }
.team-body .is-calendar .team-quick-head { background: var(--blue-soft); }
.team-body .is-calendar .team-quick-form button { background: var(--blue); color: #fff; }
.team-chat-mode-hint { flex: 0 0 auto; margin: 0; padding: 10px 16px; border-bottom: 1px solid var(--line); color: var(--green); font-size: 11px; line-height: 1.5; }
.is-calendar .team-chat-mode-hint { color: var(--blue); }
.team-chat-key-hint { padding: 0 16px 10px; color: var(--muted); font-size: 9px; }
.team-body .team-quick-head { gap: 8px; padding: 16px 12px; }
.team-body .team-quick-head strong { font-size: 12px; }
.team-body .team-quick-head > img { flex: 0 0 28px; width: 28px; height: 28px; }
.team-body .team-quick-messages { flex: 1; min-height: 0; overflow-y: auto; scrollbar-width: thin; }
.team-body .team-quick-form { flex: 0 0 auto; gap: 9px; }
.team-body .team-ai-bubble .text-link { margin: 8px 10px 0 0; font-size: 10px; }
.team-body .team-calendar-panel { display: flex; flex-direction: column; padding: 0; width: min(1080px,calc(100vw - var(--team-sidebar-width) - 40px)); height: min(780px,calc(100dvh - 110px)); max-height: none; overflow: hidden; border-radius: 22px; }
.team-body .team-calendar-panel.is-standalone { position: static; width: 100%; height: calc(100dvh - 175px); min-height: 500px; box-shadow: var(--shadow); }
.team-calendar-footer { display: flex; justify-content: end; padding: 14px 18px; border-top: 1px solid var(--line); }
.team-calendar-entry { width: 100%; color: var(--text); text-align: left; }
.team-calendar-entry > span:last-child { min-width: 0; }
.team-calendar-entry strong { display: block; font-size: 11px; }
.team-calendar-entry small { display: block; margin-top: 6px; color: var(--muted); font-size: 10px; }
.team-body .calendar-entry:hover { border-color: var(--line-strong); }
.team-body[data-theme="dark"] :is(.calendar-agenda-pane,.calendar-day,.team-quick-panel.is-training,.team-full-chat.is-training,.team-quick-panel.is-calendar,.team-full-chat.is-calendar) { background: var(--surface); color: var(--text); }
.team-body[data-theme="dark"] :is(.calendar-entry strong,.calendar-section-title strong,.calendar-toolbar strong) { color: var(--text); }
.team-body[data-theme="dark"] .calendar-day.is-selected { background: var(--blue-soft); }
.team-body[data-theme="dark"] :is(.vito-select-trigger,.vito-select-menu,.vito-select-option) { background: var(--surface); color: var(--text); border-color: var(--line); }
@media (max-width: 1100px) {
  .team-body .team-workspace { grid-template-columns: 180px minmax(0,1fr); }
  .team-body .team-mail-grid { grid-template-columns: 260px minmax(0,1fr); }
  .team-body .team-split-toggle { left: 250px; }
  .team-body .team-whatsapp-grid { grid-template-columns: 240px minmax(0,1fr); }
}
@media (max-width: 850px) {
  .team-body .team-workspace { position: relative; grid-template-columns: 66px minmax(0,1fr); }
  .team-body .team-channel-nav:not(.is-collapsed) { position: absolute; inset: 0 auto 0 0; width: min(218px,100%); z-index: 6; box-shadow: var(--shadow); }
  .team-body .team-mail-grid { grid-template-columns: minmax(0,1fr); }
  .team-body .team-mail-grid:has(:is(.team-mail-detail-head,.mail-message-head,.mail-conversation-heading)) .team-mail-list { display: none; }
  .team-body .team-mail-grid.detail-collapsed .team-mail-list { display: flex; }
  .team-body .team-mail-grid:not(:has(:is(.team-mail-detail-head,.mail-message-head,.mail-conversation-heading))) .team-mail-detail { display: none; }
  .team-body .team-split-toggle { left: auto; right: 2px; top: 12px; }
  .team-body .team-whatsapp-grid { position: relative; grid-template-columns: 68px minmax(0,1fr); }
  .team-body .team-whatsapp-grid:not(.list-collapsed) { grid-template-columns: minmax(0,1fr); }
  .team-body .team-whatsapp-grid:not(.list-collapsed) .team-chats { position: absolute; inset: 0 auto 0 0; width: min(260px,100%); z-index: 5; box-shadow: var(--shadow); }
  .team-body .team-whatsapp-grid.list-collapsed .team-chats .panel-header { padding: 16px; }
  .team-body .team-calendar-panel .calendar-content { grid-template-columns: minmax(0,1fr); overflow-y: auto; }
  .team-body .team-calendar-panel .calendar-month-pane { min-height: 420px; overflow: visible; }
  .team-body .team-calendar-panel .calendar-agenda-pane { border-left: 0; border-top: 1px solid var(--line); overflow: visible; }
}
@media (max-width: 650px) {
  .team-body .team-workspace { height: calc(100dvh - 116px); }
  .team-body .team-channel-content { padding: 10px 10px 76px; }
  .team-body .team-mail-detail-head { padding: 16px; }
  .team-body .team-mail-detail-head h2 { padding-right: 12px; font-size: 15px; }
  .team-body .gmail-sender time { display: none; }
  .team-body .team-mail-actions { padding: 12px; gap: 10px; }
  .team-body .team-mail-action-buttons .btn { min-height: 32px; font-size: 10px; padding: 6px 9px; }
  .team-body .team-workspace:has(.team-full-chat) { grid-template-columns: 54px minmax(0,1fr); }
  .team-body .team-full-chat .team-quick-head { flex-wrap: wrap; }
  .team-body .team-full-chat .team-chat-tools { width: 100%; justify-content: end; }
  .team-body .team-quick-head .quick-chat-training-button > span { display: none; }
  .team-body .team-calendar-panel { width: calc(100vw - 74px); top: 130px; height: calc(100dvh - 150px); }
  .team-body .team-calendar-panel.is-standalone { width: 100%; height: calc(100dvh - 160px); }
  .team-body .calendar-month-pane { padding: 12px 8px; }
  .team-body .calendar-toolbar > strong { font-size: 13px; }
  .team-body .calendar-day { padding: 4px 2px; }
  .team-body .calendar-chip { padding: 2px; font-size: 8px; }
  .team-body .calendar-grid { grid-auto-rows: minmax(55px,1fr); }
}
/* The adviser portal shares Vito's surfaces, controls and spacing. */
.team-body #team-root { --team-sidebar-width: 64px; padding-left: var(--team-sidebar-width); min-height: 100dvh; }
.team-body #team-root.team-menu-expanded { --team-sidebar-width: 220px; }
.team-body .team-sidebar { position: fixed; z-index: 40; inset: 0 auto 0 0; display: flex; flex-direction: column; width: var(--team-sidebar-width); padding: 20px 8px 12px; background: var(--surface); border-right: 1px solid var(--line); overflow: hidden; }
.team-sidebar-brand { display: flex; align-items: center; gap: 12px; padding: 0 4px 26px; white-space: nowrap; }
.team-sidebar-brand .brand-mark { flex: 0 0 38px; width: 38px; height: 38px; }
.team-sidebar-brand > strong { display: none; }
.team-sidebar.is-expanded .team-sidebar-brand > strong { display: block; font-size: 17px; }
.team-sidebar nav { display: grid; gap: 9px; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; }
.team-body #team-root:not(:has(.team-sidebar)) { padding-left: 0; }
.team-side-item, .team-sidebar-toggle { display: flex; align-items: center; gap: 14px; flex-shrink: 0; width: 100%; min-height: 43px; padding: 10px 13px; border: 1px solid transparent; border-radius: 13px; background: transparent; color: var(--muted); text-align: left; font-size: 12px; font-weight: 650; }
.team-side-item > i, .team-sidebar-toggle > i { flex: 0 0 20px; text-align: center; font-size: 15px; }
.team-side-item > span:not(.team-avatar), .team-sidebar-toggle > span { display: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.team-sidebar.is-expanded .team-side-item > span:not(.team-avatar), .team-sidebar.is-expanded .team-sidebar-toggle > span { display: block; }
.team-side-item:hover, .team-sidebar-toggle:hover { background: var(--surface-soft); color: var(--text); }
.team-side-item.active { background: var(--blue-soft); color: var(--blue); border-color: var(--line); }
.team-sidebar-toggle { margin-bottom: 20px; }
.team-sidebar-bottom { display: grid; gap: 7px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--line); }
.team-avatar { display: inline-grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; border: 0; background: var(--text); color: var(--surface); font-size: 12px; font-weight: 750; }
.team-side-item:has(.team-avatar) { padding-left: 6px; }
.team-body .team-topbar { background: var(--surface); }
.team-body .team-topbar-inner { flex-wrap: nowrap; min-height: 72px; gap: 16px; padding: 12px 26px; }
.team-page-title { flex: 1; min-width: 0; }
.team-page-title .eyebrow { font-size: 9px; }
.team-page-title h1 { margin: 4px 0 0; font-size: 18px; letter-spacing: -.5px; }
.team-body .team-account { gap: 12px; margin-left: auto; }
.team-body .team-main { padding: 24px 26px 88px; }
.team-body .team-main > .team-section-head { display: none; }
.team-body .team-shift-note { font-size: 10px; margin-bottom: 18px; color: var(--muted); }
.team-body .task-toolbar { grid-template-columns: minmax(0, max-content) minmax(140px,1fr) max-content; }
.team-body .task-toolbar .task-tabs { overflow-x: auto; scrollbar-width: thin; }
.team-body .team-quick-launcher { display: flex; gap: 10px; width: auto; height: 46px; padding: 0 18px; border: 1px solid var(--line-strong); border-radius: 99px; background: var(--surface); color: var(--blue); box-shadow: var(--shadow); font-size: 17px; }
.team-quick-launcher > span { font-size: 12px; font-weight: 700; }
.team-body .team-quick-panel { border-radius: 24px; background: var(--surface); }
.team-quick-head > img { width: 34px; height: 34px; border-radius: 11px; }
.team-quick-head > div { flex: 1; }
.team-quick-head small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.team-coach-message { border-left: 3px solid var(--blue); }
.team-coach-message.tone-danger { border-left-color: #df6267; }
.team-coach-message.tone-success { border-left-color: var(--green); }
.team-coach-toast { position: fixed; z-index: 33; top: 88px; right: 18px; display: flex; align-items: flex-start; gap: 12px; width: min(390px, calc(100vw - 36px)); max-height: min(410px, calc(100dvh - 108px)); padding: 17px; border: 1px solid var(--line-strong); border-radius: 22px; background: rgba(255,255,255,.94); backdrop-filter: blur(22px) saturate(1.2); -webkit-backdrop-filter: blur(22px) saturate(1.2); box-shadow: 0 16px 40px rgba(25,35,49,.15), inset 0 1px rgba(255,255,255,.8); transform-origin: calc(100% - 25px) 50%; }
.team-coach-toast.is-entering { animation: vito-notice-enter .48s cubic-bezier(.2,.9,.2,1) both; }
.team-coach-toast.is-exiting { pointer-events: none; animation: vito-notice-exit .38s ease-in forwards; }
.team-body[data-theme="dark"] .team-coach-toast { background: rgba(31,39,51,.94); }
.team-coach-toast > img { width: 32px; height: 32px; border-radius: 10px; }
.team-coach-toast > div { flex: 1; min-width: 0; }
.team-coach-toast strong { font-size: 12px; }
.team-coach-toast p { margin: 7px 0; line-height: 1.5; font-size: 12px; color: var(--text); }
.team-coach-toast.tone-danger { border-top: 3px solid #df6267; }
.team-coach-toast.tone-success { border-top: 3px solid var(--green); }
.team-coach-toast > div { max-height: min(330px, calc(100dvh - 158px)); overflow-y: auto; scrollbar-width: thin; scrollbar-color: #c5cfda transparent; }
.team-coach-toast > .calendar-icon-button { flex: 0 0 32px; width: 32px; height: 32px; align-self: flex-start; }
.team-profile-grid { display: grid; grid-template-columns: minmax(0, 560px) minmax(0, 440px); gap: 24px; align-items: start; }
.team-profile-grid .team-auth-form { max-width: none; }
.team-profile-card { display: flex; gap: 16px; align-items: center; margin-bottom: 24px; }
.team-profile-card .team-avatar { width: 58px; height: 58px; flex-basis: 58px; font-size: 22px; }
.team-profile-card h2 { margin: 0 0 6px; font-size: 20px; }
.team-profile-card p { margin: 0; font-size: 12px; color: var(--muted); }
.team-avatar-options { display: flex; gap: 10px; flex-wrap: wrap; }
.team-avatar-options .team-choice > span { min-width: 46px; }
.team-body .team-whatsapp-popover { position: fixed; z-index: 32; top: 82px; right: 24px; display: flex; flex-direction: column; width: min(880px, calc(100vw - var(--team-sidebar-width) - 40px)); height: min(680px, calc(100dvh - 100px)); max-height: calc(100dvh - 100px); padding: 0; border-radius: 24px; overflow: hidden; box-shadow: 0 24px 70px #192a3d30; }
.team-whatsapp-popover > .team-quick-head { flex: 0 0 auto; padding: 14px 18px; }
.team-whatsapp-popover-content { display: flex; flex: 1; min-height: 0; padding: 12px; overflow: hidden; }
.team-body .team-whatsapp-popover .team-workspace.is-compact { display: flex; flex: 1; min-width: 0; min-height: 0; height: auto; }
.team-body .team-whatsapp-popover .team-channel-content { flex: 1; min-height: 0; gap: 10px; }
.team-body .team-whatsapp-popover .team-line-list { flex: 0 0 auto; margin: 0; padding: 0 2px; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: thin; }
.team-body .team-whatsapp-popover .team-line-chip { flex: 0 0 auto; }
.team-whatsapp-popover .team-section-head { display: none; }
.team-body .team-whatsapp-popover .team-whatsapp-grid { flex: 1; height: auto; min-height: 0; gap: 12px; grid-template-rows: minmax(0,1fr); }
.team-body .team-whatsapp-popover :is(.team-chats,.team-messages) { min-height: 0; border-radius: 16px; }
.team-body .team-whatsapp-popover .panel-header { margin: 0; padding: 12px; }
.team-body .team-whatsapp-popover .panel-header .wa-mobile-back { flex: 0 0 30px; }
.team-body .team-whatsapp-popover .panel-title { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; }
.team-body .team-whatsapp-popover .team-message-list { flex: 1 1 0; overscroll-behavior: contain; }
.team-body .team-whatsapp-popover .team-chat-list { flex: 1 1 0; margin-top: 0; overscroll-behavior: contain; scrollbar-width: thin; }
.team-body button:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.team-body[data-theme="dark"] { color-scheme: dark; --bg: #141820; --surface: #1e2430; --surface-soft: #242c3a; --line: #313b4c; --line-strong: #414f65; --text: #edf2f8; --muted: #a6b3c6; --blue: #77b4ff; --blue-soft: #243a54; --green: #6bd1a4; --green-soft: #203d34; --shadow: 0 12px 40px #0003; background: var(--bg); color: var(--text); }
.team-body[data-theme="dark"] :is(.panel, .column, .task-tabs, .task-view-switch, .task-bases-button, .task-subtabs, .task-base-tabs, .notifications-popover, .system-dialog, .team-calendar-month button, .task-card, .team-task, .team-ai-bubble, .team-ai-bubble.user, .input, textarea, .btn:not(.btn-primary), .team-option, .team-choice > span, .notification-body, .data-table thead, .task-table-summary, .task-pagination) { background: var(--surface); border-color: var(--line); color: var(--text); }
.team-body[data-theme="dark"] :is(.column-title, .task-card-title, .team-task h3, .team-task p, .team-list-row strong, .team-contact h2, .team-performance-card strong, .team-performance-card span, .task-area-tag, .team-mail-detail-head h2, .panel-title, .team-ai-bubble p, .calendar-icon-button, .btn) { color: var(--text); }
.team-body[data-theme="dark"] :is(.task-tab, .task-view-switch button, .task-subtabs button, .task-base-tabs button, .data-table th, .team-choice > span, .team-task small, .team-list-row small, .team-performance-card small, .task-title-cell small) { color: var(--muted); }
.team-body[data-theme="dark"] :is(.task-tab.is-active, .task-subtabs .is-active, .task-base-tabs .is-active, .team-choice input:checked + span, .team-mail-item.active, .team-chat-item.active, .task-view-switch button[aria-pressed="true"], .data-table tr.is-selected) { background: var(--blue-soft); color: var(--blue); box-shadow: none; }
.team-body[data-theme="dark"] :is(.task-tab strong, .badge, .team-calendar-day, .team-line-chip, .team-message, .task-area-tag) { background: var(--surface-soft); color: var(--text); }
.team-body[data-theme="dark"] .btn-primary { background: #397fde; color: #fff; }
.team-body[data-theme="dark"] :is(.team-success, .team-alert.team-error) { background: var(--surface-soft); }
.team-body[data-theme="dark"] .data-table tbody tr:hover { background: var(--surface-soft); }
@media (max-width: 1050px) {
  .team-body .task-toolbar { grid-template-columns: minmax(0,1fr) auto; }
  .team-body .task-toolbar .task-tabs { grid-column: 1 / -1; width: 100%; }
  .team-body .task-view-switch { justify-self: start; }
}
@media (max-width: 650px) {
  .team-body #team-root { --team-sidebar-width: 54px; }
  .team-body #team-root.team-menu-expanded { --team-sidebar-width: 54px; }
  .team-body .team-sidebar.is-expanded { width: min(230px, calc(100vw - 54px)); box-shadow: 15px 0 45px #0002; }
  .team-body .team-sidebar { padding: 15px 4px 10px; }
  .team-body .team-topbar-inner { gap: 8px; padding: 12px; flex-wrap: wrap; }
  .team-body .team-account { width: 100%; gap: 10px; }
  .team-body .team-main { padding: 18px 12px 88px; }
  .team-body .team-profile-toggle { margin-left: auto; }
  .team-body .team-new-task { margin-right: auto; }
  .team-profile-grid { grid-template-columns: 1fr; }
  .team-body .team-quick-panel { right: 10px; width: calc(100vw - 72px); bottom: 80px; height: min(550px, calc(100dvh - 180px)); }
  .team-body .team-quick-launcher { right: 12px; bottom: 18px; }
  .team-body .team-coach-toast { top: 136px; left: auto; right: 12px; width: calc(100vw - 24px); }
  .team-body .team-calendar-panel, .team-body .team-whatsapp-popover { top: 130px; right: 10px; width: calc(100vw - 74px); max-height: calc(100dvh - 150px); }
  .team-body .team-notifications-popover { top: 130px; right: 10px; width: calc(100vw - 74px); max-height: calc(100dvh - 150px); }
  .team-body .team-whatsapp-popover { height: calc(100dvh - 150px); border-radius: 20px; }
  .team-whatsapp-popover-content { padding: 8px; }
}
.team-body .team-calendar-panel, .team-body .team-whatsapp-popover, .team-body .team-notifications-popover { z-index: 36; }
.collection-report-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 30px; padding: 20px 24px; border-bottom: 1px solid var(--line); background: var(--surface-soft); }
.collection-report-strip > div { flex: 1 1 180px; }
.collection-report-strip small, .collection-member-facts small { display: block; color: var(--muted); font-size: 9px; font-weight: 750; letter-spacing: .7px; }
.collection-report-strip strong { display: block; margin: 6px 0 4px; font-size: 22px; letter-spacing: -.7px; }
.collection-report-strip span { color: var(--muted); font-size: 11px; }
.collection-row-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.collection-status { display: block; color: var(--muted); font-size: 11px; }
.collection-status.is-priority { color: #bd493c; font-weight: 700; }
.policy-base-table td > small { display: block; margin: 6px 0; color: var(--muted); font-size: 10px; }
.system-dialog.collection-dialog { width: min(760px, calc(100vw - 30px)); max-width: 760px; max-height: calc(100dvh - 36px); padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: var(--surface); color: var(--text); box-shadow: var(--shadow); }
.system-dialog.collection-dialog[open] { display: flex; flex-direction: column; }
.collection-dialog [hidden] { display: none !important; }
.collection-dialog-head { display: flex; flex: 0 0 auto; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 24px 26px 18px; border-bottom: 1px solid var(--line); }
.collection-dialog-head h2 { margin: 8px 0 0; font-size: 18px; line-height: 1.4; }
.collection-dialog-close { flex: 0 0 34px; min-width: 34px; width: 34px; height: 34px; padding: 0; border-radius: 50%; }
.collection-dialog-body { min-height: 0; overflow: auto; padding: 22px 26px 26px; }
.collection-dialog-body .field { margin: 18px 0; }
.collection-dialog-body textarea { width: 100%; min-height: 90px; padding: 12px; border: 1px solid var(--line-strong); border-radius: 12px; resize: vertical; }
.collection-dialog-body .team-fieldset { margin: 18px 0; }
.collection-dialog-body .team-choice-grid { display: flex; flex-wrap: wrap; gap: 10px; }
.collection-dialog-body .team-choice { flex: 1 1 130px; }
.collection-dialog .collection-modal-tabs { margin: 18px 0; flex-wrap: wrap; overflow: visible; }
.collection-report-date { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 20px; }
.collection-report-date input { width: 170px; }
.collection-member { padding: 18px 0; }
.collection-member h3 { margin: 0 0 16px; font-size: 18px; }
.collection-member h4 { margin: 24px 0 12px; }
.collection-member-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 0 0 20px; padding: 16px; background: var(--surface-soft); border: 1px solid var(--line); border-radius: 14px; }
.collection-member-facts strong { display: block; margin-top: 6px; font-size: 12px; line-height: 1.5; }
.collection-member details { margin-top: 20px; }
.collection-manual-fallback { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--line); }
.collection-manual-fallback > summary { cursor: pointer; color: var(--muted); font-size: 12px; font-weight: 650; padding: 8px 0; }
.collection-manual-fallback > summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; border-radius: 6px; }
.collection-member summary { margin-bottom: 12px; cursor: pointer; font-weight: 650; }
.collection-activity-list { display: grid; gap: 12px; margin: 16px 0; }
.collection-activity-list > div { padding: 14px; background: var(--surface-soft); border: 1px solid var(--line); border-radius: 12px; }
.collection-activity-list p { line-height: 1.6; }
.collection-activity-list small { color: var(--muted); }
@media (max-width: 600px) {
  .collection-dialog-head, .collection-dialog-body { padding: 18px; }
  .collection-member-facts { grid-template-columns: 1fr; }
  .collection-report-strip { gap: 16px; padding: 18px; }
  .collection-report-strip > div { flex-basis: 140px; }
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
* { scrollbar-width: thin; scrollbar-color: #c9d2de transparent; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 99px; background: #c9d2de; background-clip: padding-box; }
*::-webkit-scrollbar-thumb:hover { background-color: #aebaca; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
body { background: var(--bg); color: var(--text); font-size: 14px; -webkit-font-smoothing: antialiased; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .48; }
a { color: inherit; text-decoration: none; }
svg { display: block; }
:focus-visible { outline: 3px solid rgba(22,119,238,.25); outline-offset: 2px; }
.app-shell { display: flex; min-height: 100vh; }

/* Navigation is the translucent layer; content surfaces stay opaque. */
.sidebar {
  position: sticky; top: 0; z-index: 5; width: 260px; flex: 0 0 260px;
  height: 100vh; display: flex; flex-direction: column; padding: 28px 15px 18px;
  background: rgba(255,255,255,.82); border-right: 1px solid rgba(217,221,228,.85);
  backdrop-filter: blur(28px) saturate(1.35); -webkit-backdrop-filter: blur(28px) saturate(1.35);
  transition: width .22s ease, flex-basis .22s ease, padding .22s ease;
}
.brand { display: flex; align-items: center; gap: 11px; padding: 4px 13px 46px; }
.brand-mark { flex: 0 0 42px; width: 42px; height: 42px; border-radius: 14px; overflow: hidden; display: grid; place-items: center; background: #f0f1f3; border: 1px solid #e4e5e8; }
.brand-mark img { width: 100%; height: 100%; object-fit: contain; transform: scale(1.23); }
.brand strong { display: block; font-size: 21px; font-weight: 750; letter-spacing: -.8px; line-height: 1; }
.brand-ai { margin-left: 2px; color: var(--muted); font-weight: 550; }
.brand small { display: block; color: #a0a5ae; font-size: 10px; letter-spacing: .3px; margin-top: 5px; }
.sidebar-label { color: #a4aab4; font-size: 10px; font-weight: 750; letter-spacing: 1.15px; padding: 0 16px 10px; }
.tools-label { margin-top: 34px; }
.sidebar nav { display: grid; gap: 3px; }
.nav-item {
  width: 100%; min-height: 42px; display: flex; align-items: center; gap: 13px; padding: 10px 15px;
  border: 1px solid transparent; border-radius: 13px; background: transparent;
  color: #666e7a; text-align: left; font-size: 13px; font-weight: 590; transition: background .16s, color .16s, box-shadow .16s;
}
.nav-item:hover { color: var(--text); background: rgba(242,244,247,.9); }
.nav-item.active { color: #191c21; background: #fff; border-color: #eceef2; box-shadow: 0 3px 11px rgba(30,41,56,.06); font-weight: 700; }
.nav-icon { flex: 0 0 20px; width: 20px; color: #8c94a0; }
.nav-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.nav-item.active .nav-icon { color: var(--blue); }
.nav-count { margin-left: auto; background: #eef1f5; color: #89919c; border-radius: 99px; padding: 2px 7px; font-size: 10px; font-weight: 700; }
.sidebar-spacer { flex: 1; }
.sidebar-status { display: flex; align-items: center; gap: 11px; margin: 0 8px; padding: 14px; border: 1px solid var(--line); background: #fff; border-radius: 16px; box-shadow: 0 2px 10px rgba(34,44,60,.03); }
.status-orb { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: #aeb5be; box-shadow: 0 0 0 4px #eff1f4; }
.status-orb.online { background: #35b37d; box-shadow: 0 0 0 4px #e6f7ed; }
.sidebar-status strong { display: block; font-size: 11px; font-weight: 700; }
.sidebar-status small { display: block; margin-top: 2px; color: #9ba2ac; font-size: 10px; }
.sidebar-footer { display: flex; justify-content: space-between; padding: 16px 17px 2px; color: #aab0ba; font-size: 10px; }

.main-content { flex: 1; min-width: 0; }
.topbar { position: sticky; top: 0; z-index: 4; height: 74px; display: flex; justify-content: space-between; align-items: center; padding: 0 44px; border-bottom: 1px solid rgba(232,234,239,.76); background: rgba(250,251,253,.78); backdrop-filter: blur(24px) saturate(1.3); -webkit-backdrop-filter: blur(24px) saturate(1.3); }
.topbar-left { display: flex; flex: 1; min-width: 0; align-items: center; gap: 12px; }
.sidebar-toggle { width: 36px; height: 36px; flex: 0 0 36px; display: grid; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 11px; background: transparent; color: #7d8794; }
.sidebar-toggle:hover { border-color: #e4e8ee; background: #fff; color: #303844; }
.sidebar-toggle svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.topbar-page { min-width: 0; flex: 1; }
.topbar-eyebrow { display: block; margin-bottom: 4px; color: #9a6871; font-size: 9px; font-weight: 750; letter-spacing: 1px; line-height: 1; }
.topbar-page-line { display: flex; align-items: baseline; gap: 12px; min-width: 0; }
.topbar-title { flex: 0 1 auto; min-width: 0; overflow: hidden; margin: 0; color: var(--text); font-size: 18px; font-weight: 730; letter-spacing: -.55px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.topbar-subtitle { flex: 1; min-width: 0; overflow: hidden; margin: 0; color: #8c95a1; font-size: 11px; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.topbar-subtitle:empty { display: none; }
.topbar-right { display: flex; flex: 0 0 auto; align-items: center; gap: 15px; margin-left: 20px; }
.topbar-actions { display: flex; align-items: center; gap: 8px; }
.topbar-actions:empty { display: none; }
.topbar-actions .btn { min-height: 35px; padding: 7px 12px; }
.calendar-toggle, .notification-toggle, .whatsapp-peek-toggle, .mail-peek-toggle { position: relative; display: grid; flex: 0 0 38px; place-items: center; width: 38px; height: 38px; padding: 0; border: 1px solid var(--line-strong); border-radius: 50%; background: var(--surface); color: #657487; box-shadow: var(--shadow); transition: color .16s, background .16s, border-color .16s; }
.calendar-toggle:hover, .calendar-toggle[aria-expanded="true"], .notification-toggle:hover, .notification-toggle[aria-expanded="true"] { border-color: #a9cef6; background: var(--blue-soft); color: var(--blue); }
.whatsapp-peek-toggle:hover, .whatsapp-peek-toggle[aria-expanded="true"] { border-color: #a9ddc0; background: var(--green-soft); color: var(--green); }
.mail-peek-toggle:hover, .mail-peek-toggle[aria-expanded="true"] { border-color: #bad7f8; background: var(--blue-soft); color: var(--blue); }
.calendar-toggle i, .notification-toggle i, .whatsapp-peek-toggle i, .mail-peek-toggle i { font-size: 17px; }
.whatsapp-peek-count { position: absolute; top: -5px; right: -6px; display: grid; min-width: 18px; height: 18px; padding: 0 3px; place-items: center; border: 2px solid var(--surface); border-radius: 99px; background: var(--green); color: #fff; font-size: 9px; font-weight: 750; }
.whatsapp-peek-count[hidden], .whatsapp-peek-panel[hidden] { display: none; }
.mail-peek-count { position: absolute; top: -5px; right: -6px; display: grid; min-width: 18px; height: 18px; padding: 0 3px; place-items: center; border: 2px solid var(--surface); border-radius: 99px; background: var(--blue); color: #fff; font-size: 9px; font-weight: 750; }
.mail-peek-count[hidden], .mail-peek-panel[hidden] { display: none; }
.mail-peek-panel { position: fixed; top: 66px; right: 38px; z-index: 29; display: flex; flex-direction: column; width: min(420px, calc(100vw - 24px)); max-height: min(650px, calc(100dvh - 82px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 22px; background: rgba(255,255,255,.97); box-shadow: 0 24px 74px rgba(30,45,59,.19), 0 2px 8px rgba(30,45,59,.06); backdrop-filter: blur(22px) saturate(1.15); -webkit-backdrop-filter: blur(22px) saturate(1.15); }
.mail-peek-head { display: flex; align-items: center; gap: 11px; padding: 17px 18px 14px; border-bottom: 1px solid var(--line); }
.mail-peek-head-icon { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border-radius: 12px; background: var(--blue-soft); color: var(--blue); font-size: 17px; }
.mail-peek-head > div { flex: 1; min-width: 0; }
.mail-peek-head strong { display: block; font-size: 15px; }
.mail-peek-head small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.mail-peek-tools { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
.mail-peek-tools button { padding: 7px 9px; border: 0; border-radius: 9px; background: transparent; color: var(--blue); font-size: 11px; font-weight: 700; }
.mail-peek-tools button:hover { background: var(--blue-soft); }
.mail-peek-tools button:disabled { opacity: .55; }
.mail-peek-alert { padding: 10px 15px; border-bottom: 1px solid #f1debc; background: #fff8eb; color: #8c611c; font-size: 11px; line-height: 1.5; }
.mail-peek-list { min-height: 110px; overflow-y: auto; padding: 8px; scrollbar-width: thin; scrollbar-color: #c5cfda transparent; }
.mail-peek-item { display: block; width: 100%; padding: 11px 12px; border: 1px solid transparent; border-radius: 13px; background: transparent; color: var(--text); text-align: left; }
.mail-peek-item:hover, .mail-peek-item:focus-visible { border-color: #d7e5f5; background: #f4f8fd; }
.mail-peek-item.unread { background: #eef6ff; }
.mail-peek-item.unread .mail-peek-subject { color: var(--blue); font-weight: 750; }
.mail-peek-item-top { display: flex; align-items: center; gap: 10px; }
.mail-peek-item-top strong { flex: 1; min-width: 0; overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.mail-peek-item-top time { flex: 0 0 auto; color: var(--muted); font-size: 9px; }
.mail-peek-subject, .mail-peek-snippet { display: block; overflow: hidden; margin-top: 4px; text-overflow: ellipsis; white-space: nowrap; }
.mail-peek-subject { font-size: 11px; font-weight: 650; }
.mail-peek-snippet { color: var(--muted); font-size: 10px; }
.mail-peek-empty { padding: 35px 20px; color: var(--muted); font-size: 12px; text-align: center; }
.whatsapp-peek-panel { position: fixed; top: 66px; right: 54px; z-index: 28; display: flex; flex-direction: column; width: min(440px, calc(100vw - 24px)); height: min(640px, calc(100dvh - 82px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 24px; background: rgba(255,255,255,.96); box-shadow: 0 24px 74px rgba(30,45,59,.19), 0 2px 8px rgba(30,45,59,.06); backdrop-filter: blur(22px) saturate(1.15); -webkit-backdrop-filter: blur(22px) saturate(1.15); }
.whatsapp-peek-head { display: flex; align-items: center; gap: 11px; flex: 0 0 auto; padding: 17px 18px 14px; border-bottom: 1px solid var(--line); }
.whatsapp-peek-head-icon { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border-radius: 12px; background: var(--green-soft); color: var(--green); font-size: 19px; }
.whatsapp-peek-head > div { flex: 1; min-width: 0; }
.whatsapp-peek-head strong { display: block; font-size: 15px; letter-spacing: -.2px; }
.whatsapp-peek-head small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.whatsapp-peek-alert { flex: 0 0 auto; padding: 9px 16px; border-bottom: 1px solid #f1debc; background: #fff8eb; color: #8c611c; font-size: 11px; line-height: 1.45; }
.whatsapp-peek-tools { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-bottom: 1px solid var(--line); }
.whatsapp-peek-segment { display: flex; flex: 1; gap: 3px; padding: 3px; border: 1px solid var(--line); border-radius: 12px; background: #f3f5f8; }
.whatsapp-peek-segment button { flex: 1; min-height: 30px; padding: 5px 10px; border: 0; border-radius: 9px; background: transparent; color: #667486; font-size: 11px; font-weight: 700; }
.whatsapp-peek-segment button[aria-pressed="true"] { background: #fff; color: var(--text); box-shadow: 0 1px 4px rgba(42,56,74,.12); }
.whatsapp-peek-segment button:hover { color: var(--green); }
.whatsapp-peek-segment b { margin-left: 3px; color: var(--green); }
.whatsapp-peek-refresh, .whatsapp-peek-back { display: grid; flex: 0 0 32px; width: 32px; height: 32px; padding: 0; place-items: center; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: #647181; }
.whatsapp-peek-refresh:hover, .whatsapp-peek-back:hover { border-color: #b9ddc8; background: var(--green-soft); color: var(--green); }
.whatsapp-peek-list { flex: 1; min-height: 0; overflow-y: auto; padding: 7px; }
.whatsapp-peek-chat { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 76px; margin: 0; padding: 10px; border: 1px solid transparent; border-radius: 15px; background: transparent; color: var(--text); text-align: left; }
.whatsapp-peek-chat:hover, .whatsapp-peek-chat:focus-visible { border-color: #dcece4; background: #f3faf6; }
.whatsapp-peek-avatar { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; border-radius: 14px; background: #e8f4ed; color: #2d7b53; font-size: 15px; font-weight: 750; }
.whatsapp-peek-chat-copy { flex: 1; min-width: 0; }
.whatsapp-peek-chat-copy > span:first-child { display: flex; align-items: center; gap: 6px; }
.whatsapp-peek-chat-copy strong { flex: 1; min-width: 0; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-peek-chat-copy time { flex: 0 0 auto; color: #99a3ad; font-size: 9px; }
.whatsapp-peek-chat-copy small, .whatsapp-peek-preview { display: block; overflow: hidden; margin-top: 4px; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-peek-preview { color: #4f5c69; }
.whatsapp-peek-unread { display: grid; flex: 0 0 auto; min-width: 19px; height: 19px; padding: 0 4px; place-items: center; border-radius: 99px; background: var(--green); color: #fff; font-size: 9px; }
.whatsapp-peek-empty { display: flex; flex: 1; min-height: 160px; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 24px; color: var(--muted); font-size: 12px; line-height: 1.6; text-align: center; }
.whatsapp-peek-empty-icon { display: grid; width: 52px; height: 52px; margin-bottom: 4px; place-items: center; border-radius: 17px; background: var(--green-soft); color: var(--green); font-size: 24px; }
.whatsapp-peek-empty strong { color: var(--text); font-size: 13px; }
.whatsapp-peek-empty .btn { margin-top: 9px; }
.whatsapp-peek-thread-head { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; padding: 11px 14px; border-bottom: 1px solid var(--line); }
.whatsapp-peek-thread-head .whatsapp-peek-avatar { flex-basis: 32px; width: 32px; height: 32px; border-radius: 11px; font-size: 12px; }
.whatsapp-peek-thread-name { flex: 1; min-width: 0; }
.whatsapp-peek-thread-name strong, .whatsapp-peek-thread-name small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-peek-thread-name strong { font-size: 12px; }
.whatsapp-peek-thread-name small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.whatsapp-peek-messages { display: flex; flex: 1; min-height: 0; flex-direction: column; gap: 10px; overflow-y: auto; padding: 17px 14px; background: linear-gradient(155deg, #f8fbf9, #f6f8fb); }
.whatsapp-peek-message { display: flex; }
.whatsapp-peek-message.outgoing { justify-content: flex-end; }
.whatsapp-peek-message > div { max-width: 83%; padding: 9px 12px; border: 1px solid #e8edf0; border-radius: 15px 15px 15px 5px; background: #fff; box-shadow: 0 1px 4px rgba(34,49,58,.035); color: #34404a; font-size: 12px; line-height: 1.55; overflow-wrap: anywhere; }
.whatsapp-peek-message.outgoing > div { border-color: #cbe9d4; border-radius: 15px 15px 5px 15px; background: #dcf4e3; }
.whatsapp-peek-message strong, .whatsapp-peek-message span, .whatsapp-peek-message time { display: block; }
.whatsapp-peek-message strong { margin-bottom: 4px; color: #32714e; font-size: 10px; }
.whatsapp-peek-message span { white-space: pre-wrap; }
.whatsapp-peek-message time { margin-top: 4px; color: #80918a; font-size: 9px; text-align: right; }
.whatsapp-peek-composer { flex: 0 0 auto; padding: 10px 13px 13px; border-top: 1px solid var(--line); background: #fff; }
.whatsapp-peek-composer label { display: block; margin-bottom: 7px; color: #5e6b78; font-size: 10px; font-weight: 700; }
.whatsapp-peek-composer > div { display: flex; align-items: flex-end; gap: 8px; }
.whatsapp-peek-composer textarea { flex: 1; min-width: 0; min-height: 45px; max-height: 120px; resize: vertical; padding: 12px; border: 1px solid var(--line-strong); border-radius: 14px; background: var(--surface-soft); color: var(--text); font-size: 12px; line-height: 1.4; }
.whatsapp-peek-composer textarea:focus { border-color: #91caaa; outline: 3px solid rgba(39,132,97,.12); }
.whatsapp-peek-composer button { display: grid; flex: 0 0 39px; width: 39px; height: 39px; padding: 0; place-items: center; border: 0; border-radius: 13px; background: var(--green); color: #fff; font-size: 17px; }
.whatsapp-peek-composer button:hover { background: #1c704f; }
.whatsapp-peek-hint { margin: 0; padding: 15px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; line-height: 1.5; }
.notification-count { position: absolute; top: -5px; right: -6px; display: grid; min-width: 18px; height: 18px; padding: 0 3px; place-items: center; border: 2px solid var(--surface); border-radius: 99px; background: #dc525e; color: #fff; font-size: 9px; font-weight: 750; }
.notification-count[data-tone="warning"] { background: #b57916; }
.notification-count[data-tone="success"] { background: var(--green); }
.notification-count[hidden], .notifications-popover[hidden] { display: none; }
.notifications-popover { position: fixed; top: 66px; right: 76px; z-index: 27; display: flex; flex-direction: column; width: min(420px, calc(100vw - 28px)); max-height: min(620px, calc(100dvh - 82px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 18px; background: var(--surface); box-shadow: 0 22px 70px rgba(28,43,64,.19); }
.team-notifications-popover { top: 64px; right: 36px; }
.notifications-head { display: flex; align-items: center; gap: 12px; padding: 17px 18px 13px; border-bottom: 1px solid var(--line); }
.notifications-head > div { flex: 1; min-width: 0; }
.notifications-head strong { display: block; font-size: 15px; }
.notifications-head small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.notifications-tools { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
.notifications-filters { display: flex; gap: 5px; }
.notifications-filters button { padding: 6px 10px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 700; }
.notifications-filters button:hover, .notifications-filters button[aria-pressed="true"] { border-color: #cbdff5; background: var(--blue-soft); color: var(--blue); }
.notifications-read-all { padding: 6px; border: 0; background: transparent; color: var(--blue); font-size: 11px; font-weight: 700; }
.notifications-read-all:hover { text-decoration: underline; }
.notifications-read-all:disabled { color: var(--muted); text-decoration: none; }
.notifications-list { min-height: 84px; overflow-y: auto; padding: 8px; scrollbar-color: #c5cfda transparent; scrollbar-width: thin; }
.notification-row { display: flex; align-items: flex-start; gap: 9px; margin: 2px 0; padding: 10px; border: 1px solid transparent; border-radius: 11px; }
.notification-row:hover { border-color: var(--line); background: var(--surface-soft); }
.notification-row.is-unread { background: #f1f7ff; }
.notification-icon { display: grid; flex: 0 0 29px; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: #e8f2ff; color: var(--blue); font-size: 13px; }
.notification-icon.is-warning { background: #fff0e7; color: #bd662f; }
.notification-icon.is-calendar { background: #eaf7f0; color: #218063; }
.notification-row.tone-danger { --notice-ink: #ad3342; --notice-soft: #fff0f1; --notice-line: #f2cbd0; }
.notification-row.tone-warning { --notice-ink: #9a6200; --notice-soft: #fff7e6; --notice-line: #f1dba6; }
.notification-row.tone-success { --notice-ink: #18734f; --notice-soft: #eaf8f0; --notice-line: #bce6d0; }
.notification-row[class*="tone-"] .notification-icon { background: var(--notice-soft); color: var(--notice-ink); }
.notification-row[class*="tone-"].is-unread { border-color: var(--notice-line); background: var(--notice-soft); }
.notification-row[class*="tone-"]:hover { border-color: var(--notice-line); background: var(--notice-soft); }
.notification-body { flex: 1; min-width: 0; padding: 0; border: 0; background: transparent; color: var(--text); text-align: left; }
.notification-body strong { display: block; font-size: 12px; }
.notification-body span { display: block; margin-top: 3px; color: #627084; font-size: 11px; line-height: 1.45; overflow-wrap: anywhere; }
.notification-body .notification-title-line { display: flex; align-items: center; justify-content: space-between; gap: 7px; margin: 0; color: var(--text); }
.notification-title-line strong { min-width: 0; }
.notification-body .notification-priority { display: inline-flex; flex: 0 0 auto; align-items: center; margin: 0; padding: 2px 6px; border: 1px solid var(--notice-line); border-radius: 99px; background: var(--notice-soft); color: var(--notice-ink); font-size: 9px; font-weight: 750; line-height: 1.3; }
.notification-body time { display: block; margin-top: 5px; color: #94a0ad; font-size: 10px; }
.notification-mark { flex: 0 0 24px; width: 24px; height: 24px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: var(--blue); }
.notification-mark:hover { background: #e0eeff; }
.notifications-empty { margin: 0; padding: 24px 12px; color: var(--muted); font-size: 12px; text-align: center; }
.is-notification-target { scroll-margin: 94px; }
.task-card.is-notification-target, .team-task.is-notification-target, .calendar-entry.is-notification-target, .budibase-setup.is-notification-target { border-color: #83b8ef; box-shadow: 0 0 0 3px rgba(22,119,238,.16), var(--shadow); }
.task-data-table tbody tr.is-notification-target td { background: #eaf4ff; }
.task-reporting-summary { display: flex; flex-wrap: wrap; gap: 16px; margin: 14px 0; color: var(--muted); font-size: 12px; }
.task-reporting-summary strong { color: var(--text); font-size: 16px; }
.calendar-count { position: absolute; top: -5px; right: -6px; display: grid; min-width: 18px; height: 18px; padding: 0 3px; place-items: center; border: 2px solid var(--surface); border-radius: 99px; background: var(--blue); color: #fff; font-size: 9px; font-weight: 750; }
.calendar-count[hidden], .calendar-popover[hidden] { display: none; }
.calendar-popover { position: fixed; top: 66px; right: 24px; z-index: 26; display: flex; flex-direction: column; width: min(1040px, calc(100vw - 48px)); height: min(760px, calc(100dvh - 82px)); overflow: hidden; border: 1px solid var(--line-strong); border-radius: 20px; background: var(--surface); box-shadow: 0 22px 70px rgba(28,43,64,.19); }
.calendar-header { display: flex; flex: 0 0 auto; align-items: center; gap: 11px; min-height: 67px; padding: 12px 16px; border-bottom: 1px solid var(--line); }
.calendar-header > div { flex: 1; min-width: 0; }
.calendar-header strong { display: block; font-size: 14px; letter-spacing: -.2px; }
.calendar-header small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.calendar-heading-icon { display: grid; width: 37px; height: 37px; flex: 0 0 37px; place-items: center; border-radius: 12px; background: var(--blue-soft); color: var(--blue); font-size: 16px; }
.calendar-icon-button { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; padding: 0; border: 1px solid transparent; border-radius: 9px; background: transparent; color: #7a8594; }
.calendar-icon-button:hover { border-color: var(--line-strong); background: var(--surface-soft); color: var(--text); }
.calendar-content { display: grid; grid-template-columns: minmax(0, 1fr) 280px; flex: 1 1 auto; min-height: 0; overflow: hidden; }
.calendar-month-pane { display: flex; min-width: 0; min-height: 0; flex-direction: column; padding: 18px 20px 14px; overflow-y: auto; }
.calendar-agenda-pane { min-width: 0; min-height: 0; padding: 4px 17px 18px; overflow-y: auto; border-left: 1px solid var(--line); background: #fbfcfe; }
.calendar-toolbar, .calendar-section-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.calendar-toolbar { flex: 0 0 auto; margin-bottom: 12px; }
.calendar-toolbar > strong { font-size: 18px; font-weight: 730; letter-spacing: -.4px; }
.calendar-toolbar > div { display: flex; align-items: center; gap: 3px; }
.calendar-today-button { min-height: 32px; margin-right: 5px; padding: 0 11px; border: 1px solid var(--line-strong); border-radius: 9px; background: #fff; color: #50647a; font-size: 11px; font-weight: 700; }
.calendar-today-button:hover { border-color: #bad6f6; background: var(--blue-soft); color: var(--blue); }
.calendar-weekdays, .calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.calendar-weekdays { flex: 0 0 auto; margin-bottom: 6px; }
.calendar-weekdays span { padding: 7px 0; color: #8d98a6; font-size: 10px; font-weight: 750; text-align: center; }
.calendar-grid { flex: 1 0 auto; grid-auto-rows: minmax(78px, 1fr); overflow: hidden; border: 1px solid #e5eaf0; border-radius: 13px; background: #e5eaf0; gap: 1px; }
.calendar-day { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: 4px; padding: 7px 6px; border: 0; background: #fff; color: #485465; text-align: left; }
.calendar-day:hover { background: #f4f9ff; color: var(--blue); }
.calendar-day.is-outside { background: #fafbfc; color: #a0aab5; }
.calendar-day.is-selected { background: #edf5ff; color: #0964c6; box-shadow: inset 0 0 0 2px #9ac9f8; }
.calendar-day-number { display: grid; width: 24px; height: 24px; flex: 0 0 24px; place-items: center; border-radius: 50%; font-size: 11px; font-weight: 720; }
.calendar-day.is-today .calendar-day-number { background: var(--blue); color: #fff; }
.calendar-day-items { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.calendar-chip { display: block; overflow: hidden; padding: 3px 5px; border-radius: 5px; color: #2869aa; background: #e8f2ff; font-size: 9px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.calendar-chip.is-task { color: #216ca5; background: #e7f2fb; }
.calendar-chip.is-meeting { color: #7554a3; background: #f0e9fb; }
.calendar-chip.is-reminder { color: #218063; background: #e5f5ee; }
.calendar-chip em { margin-right: 3px; font-style: normal; font-weight: 800; }
.calendar-day-items small { color: #728298; font-size: 9px; }
.calendar-day-count { display: none; }
.calendar-legend { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 11px; color: #788696; font-size: 10px; }
.calendar-legend span { display: inline-flex; align-items: center; gap: 5px; }
.calendar-legend i { width: 8px; height: 8px; border-radius: 3px; background: #7db8e8; }
.calendar-legend i.is-meeting { background: #b994e3; }
.calendar-legend i.is-reminder { background: #71c6a2; }
.calendar-agenda { margin-top: 14px; padding-top: 13px; border-top: 1px solid var(--line); }
.calendar-agenda:first-child { margin-top: 0; border-top: 0; }
.calendar-section-title { margin-bottom: 9px; }
.calendar-section-title strong { color: #313b49; font-size: 11px; }
.calendar-section-title span { color: var(--muted); font-size: 10px; }
.calendar-empty { margin: 0; padding: 10px 0; color: #929ba7; font-size: 11px; }
.calendar-entry { display: flex; gap: 9px; align-items: flex-start; padding: 9px 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-soft); }
.calendar-entry + .calendar-entry { margin-top: 5px; }
.calendar-entry-icon { display: grid; width: 25px; height: 25px; flex: 0 0 25px; place-items: center; border-radius: 8px; background: var(--blue-soft); color: var(--blue); font-size: 11px; }
.calendar-entry.is-task .calendar-entry-icon { background: #f1f3f6; color: #7b8591; }
.calendar-entry strong { display: block; font-size: 11px; line-height: 1.35; overflow-wrap: anywhere; }
.calendar-entry small { display: block; margin-top: 3px; color: var(--muted); font-size: 10px; }
.calendar-upcoming-date { margin: 9px 0 4px; color: #7d8997; font-size: 10px; }
.calendar-footer { display: flex; flex: 0 0 auto; justify-content: flex-end; padding: 12px 16px; border-top: 1px solid var(--line); background: var(--surface); }
.calendar-add { min-width: 150px; border-color: var(--blue); background: var(--blue); color: #fff; }
.calendar-add:hover { border-color: #0c67d5; background: #0c67d5; color: #fff; }
.calendar-popover.is-chat { width: min(560px, calc(100vw - 48px)); height: min(565px, calc(100dvh - 80px)); border-color: #b9d9fb; background: #f4f9ff; }
.calendar-popover.is-chat .calendar-header { border-bottom-color: #d9eafb; background: #eaf4ff; }
.calendar-popover.is-chat .calendar-header strong { color: #165b9f; }
.calendar-chat-messages { display: flex; flex: 1 1 auto; flex-direction: column; gap: 12px; min-height: 0; overflow-y: auto; padding: 18px 16px; }
.calendar-chat-message { max-width: 92%; padding: 10px 12px; border: 1px solid #dae8f7; border-radius: 14px 14px 14px 4px; background: #fff; box-shadow: 0 2px 7px rgba(24,82,145,.03); }
.calendar-chat-message.user { align-self: flex-end; border-color: #bddbfb; border-radius: 14px 14px 4px 14px; background: #dceeff; }
.calendar-chat-message span { color: #216cb1; font-size: 10px; font-weight: 750; }
.calendar-chat-message p { margin: 5px 0 0; color: #344252; font-size: 12px; line-height: 1.5; white-space: pre-wrap; overflow-wrap: anywhere; }
.calendar-thinking, .calendar-error { margin: 0; padding: 8px 16px; font-size: 11px; }
.calendar-thinking { color: #4076a9; }
.calendar-error { color: #ad4747; }
.calendar-view-saved { align-self: center; margin: 0 0 10px; padding: 8px 12px; border: 1px solid #bdd9f7; border-radius: 9px; background: #fff; color: #1666bb; font-size: 11px; font-weight: 700; }
.calendar-view-saved:hover { background: var(--blue-soft); }
.calendar-chat-form { flex: 0 0 auto; padding: 12px 15px; border-top: 1px solid #d9eafb; background: #edf6ff; }
.calendar-chat-compose { display: flex; align-items: flex-end; gap: 8px; padding: 7px; border: 1px solid #b8d5f5; border-radius: 12px; background: #fff; }
.calendar-chat-compose:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(22,119,238,.12); }
.calendar-chat-compose textarea { flex: 1; min-width: 0; max-height: 110px; resize: vertical; padding: 6px; border: 0; outline: 0; color: var(--text); font-size: 12px; line-height: 1.45; }
.calendar-chat-compose textarea:focus-visible { outline: 0; }
.calendar-chat-compose > button { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; padding: 0; border: 0; border-radius: 9px; background: var(--blue); color: #fff; }
.calendar-chat-compose > button:hover:not(:disabled) { background: #0c67d5; }
.calendar-chat-form > small { display: block; margin-top: 6px; color: #8190a2; font-size: 10px; }
.local-pill { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border-radius: 99px; background: rgba(255,255,255,.8); border: 1px solid rgba(225,229,235,.9); color: #737c88; font-size: 11px; font-weight: 650; box-shadow: 0 2px 8px rgba(31,48,72,.025); }
.local-pill span { width: 7px; height: 7px; border-radius: 50%; background: #38b880; }
.local-pill .local-pill-text { width: auto; height: auto; border-radius: 0; background: transparent; }
.avatar { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 50%; background: #252a32; color: #fff; font-size: 12px; font-weight: 700; }
.view { width: 100%; min-width: 0; padding: 24px clamp(18px, 2vw, 32px) 54px; }
.view.chat-view { max-width: none; padding: 0 16px 0 0; }

.eyebrow { color: #8c4650; font-size: 10px; font-weight: 750; letter-spacing: 1.45px; text-transform: uppercase; }
.subtitle { color: var(--muted); font-size: 13px; line-height: 1.6; margin: 0; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 38px; padding: 9px 15px; border: 1px solid #e1e4e9; border-radius: 11px; background: #fff; color: #333a44; font-size: 12px; font-weight: 680; white-space: nowrap; box-shadow: 0 2px 8px rgba(33,43,57,.025); transition: transform .16s, background .16s, border-color .16s, box-shadow .16s; }
.btn:hover { background: #f9fafc; border-color: #cfd6df; transform: translateY(-1px); box-shadow: 0 5px 15px rgba(33,43,57,.07); }
.btn-primary { border-color: #222832; background: #222832; color: #fff; box-shadow: 0 6px 17px rgba(24,31,42,.12); }
.btn-primary:hover { background: #363d47; border-color: #363d47; }
.btn-ghost { background: transparent; box-shadow: none; }
.btn-danger { color: #c45555; }
.text-link { display: inline-flex; align-items: center; gap: 6px; border: 0; background: transparent; color: var(--blue); font-size: 12px; font-weight: 680; padding: 5px 0; }
.text-link:hover { color: #0a5fc5; }

.hero { position: relative; min-height: 273px; display: flex; justify-content: space-between; align-items: center; overflow: hidden; padding: 36px 42px; border: 1px solid #e8ebef; border-radius: 25px; background: #fff; box-shadow: var(--shadow); }
.hero::before { content: ''; position: absolute; width: 470px; height: 470px; right: -50px; top: -116px; border-radius: 50%; background: radial-gradient(circle at center, #f2f4f7 0 38%, #f8f9fb 39% 56%, #fff 57%); opacity: .95; }
.hero-content { position: relative; z-index: 1; max-width: 540px; }
.hero h2 { max-width: 540px; margin: 13px 0 12px; font-size: clamp(31px,3.2vw,42px); line-height: 1.15; font-weight: 740; letter-spacing: -1.8px; }
.hero p { max-width: 450px; margin: 0 0 24px; color: #747c87; font-size: 13px; line-height: 1.65; }
.hero .btn { padding: 11px 17px; border-radius: 12px; }
.hero .btn span { font-size: 17px; font-weight: 400; line-height: 0; }
.hero-logo { position: relative; z-index: 1; width: 218px; height: 218px; flex: 0 0 218px; margin-right: 7%; display: grid; place-items: center; }
.hero-logo img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 14px 21px rgba(39,32,38,.13)); }
.section-row { display: flex; justify-content: space-between; align-items: center; gap: 18px; margin: 35px 1px 17px; }
.section-row h2, .panel-title { margin: 0; font-size: 16px; font-weight: 720; letter-spacing: -.45px; }
.section-row p { margin: 5px 0 0; color: #77818e; font-size: 12px; }
.agent-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.agent-card { min-height: 161px; padding: 19px 21px; border: 1px solid var(--line); border-radius: 19px; background: #fff; color: var(--text); text-align: left; box-shadow: var(--shadow); transition: transform .18s, box-shadow .18s, border-color .18s; }
.agent-card:hover { transform: translateY(-3px); border-color: #d4dce8; box-shadow: 0 16px 28px rgba(30,44,64,.09); }
.agent-card-head { display: flex; justify-content: space-between; align-items: center; }
.agent-icon { width: 39px; height: 39px; flex: 0 0 39px; display: grid; place-items: center; border-radius: 13px; color: #365a82; background: #eef4fc; }
.agent-icon svg { width: 20px; height: 20px; }
.agent-supervisor { background: #f3edf7; color: #705884; }
.agent-desarrollo { background: #edf3ff; color: #4f73b5; }
.agent-marketing { background: #fdf2e8; color: #a87540; }
.agent-diseno { background: #f5ecf6; color: #8a5e96; }
.agent-atencion { background: #eaf7f5; color: #408c80; }
.agent-operacion { background: #f2f3ee; color: #748461; }
.agent-ventas { background:var(--blue-soft);color:var(--blue); }
.agent-ventas-cierre { background:var(--green-soft);color:var(--green); }
.agent-arrow { color: #b5bbc4; font-size: 18px; font-weight: 400; }
.agent-card h3 { margin: 17px 0 5px; font-size: 13px; font-weight: 710; }
.agent-card p { margin: 0; color: #707a87; font-size: 11px; line-height: 1.5; }
.bottom-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 14px; margin-top: 15px; }
.panel { padding: 22px 24px; border: 1px solid var(--line); border-radius: 19px; background: #fff; box-shadow: var(--shadow); }
.panel-header { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 18px; }
.mini-status { display: flex; align-items: center; justify-content: space-between; padding: 12px 0; border-top: 1px solid #f0f1f4; color: #5a626e; font-size: 12px; }
.mini-status:first-of-type { border-top: 0; }
.mini-status div { display: flex; align-items: center; gap: 10px; }
.mini-status strong { color: #333a44; font-size: 13px; font-weight: 700; }
.dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #c8cdd5; }
.dot.online { background: #39b986; }
.badge { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 99px; background: #f1f3f6; color: #8b929c; font-size: 10px; font-weight: 700; white-space: nowrap; }
.badge.online { background: var(--green-soft); color: var(--green); }
.muted { color: var(--muted); }
.stats-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; margin-top: 15px; }
.stat { padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.stat strong { display: block; font-size: 27px; letter-spacing: -1px; }
.stat span { color: var(--muted); font-size: 11px; }

.chat-layout { display: grid; grid-template-columns: 252px minmax(0,1fr); gap: 14px; height: calc(100dvh - 74px); min-height: 420px; }
.chat-layout.is-rail-collapsed { grid-template-columns: 64px minmax(0,1fr); }
.chat-rail, .chat-main { min-height: 0; border: 1px solid var(--line); border-radius: 20px; background: #fff; box-shadow: var(--shadow); }
.chat-rail { display: flex; flex-direction: column; min-width: 0; padding: 14px 11px 18px; border-left: 0; border-radius: 0 19px 19px 0; }
.chat-rail-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 34px; margin: 0 2px 14px; }
.chat-rail-title { font-size: 13px; font-weight: 750; }
.chat-rail-toggle, .chat-mobile-toggle { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; padding: 0; border: 1px solid transparent; border-radius: 10px; background: transparent; color: #7b8898; }
.chat-rail-toggle:hover, .chat-mobile-toggle:hover { border-color: #dce6f2; background: var(--blue-soft); color: var(--blue); }
.chat-rail-toggle svg, .chat-mobile-toggle svg { width: 19px; height: 19px; }
.chat-new-button { width: 100%; margin-bottom: 24px; }
.chat-new-icon { font-size: 17px; line-height: 1; }
.chat-rail-scrim, .chat-mobile-toggle { display: none; }
.is-rail-collapsed .chat-rail { align-items: center; padding: 14px 7px 18px; }
.is-rail-collapsed .chat-rail-head { justify-content: center; width: 100%; margin: 0 0 14px; }
.is-rail-collapsed .chat-rail-title, .is-rail-collapsed .chat-new-label, .is-rail-collapsed .rail-heading, .is-rail-collapsed .conversation-item-label { display: none; }
.is-rail-collapsed .chat-new-button { width: 42px; min-height: 42px; padding: 0; margin-bottom: 18px; }
.is-rail-collapsed .conversation-list { width: 100%; }
.is-rail-collapsed .conversation-item { justify-content: center; min-height: 42px; padding: 9px; }
.rail-heading { margin: 0 9px 10px; color: #a5acb6; font-size: 10px; font-weight: 750; letter-spacing: .9px; }
.conversation-list { display: grid; align-content: start; gap: 4px; overflow: auto; }
.conversation-item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px; border: 0; border-radius: 11px; background: transparent; color: #7d8590; text-align: left; font-size: 11px; }
.conversation-item:hover, .conversation-item.active { background: #f2f6fb; color: #263443; }
.conversation-item span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rail-agent-icon { width: 18px; flex: 0 0 18px; color: #7a9ac1; }
.rail-agent-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.chat-main { display: flex; flex-direction: column; overflow: hidden; margin: 12px 0; }
.chat-top { position: relative; z-index: 3; min-height: 76px; display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 15px 22px; border-bottom: 1px solid #f0f1f4; }
.chat-agent-label { display: flex; align-items: center; gap: 11px; }
.chat-agent-label .agent-icon { width: 38px; height: 38px; }
.chat-agent-label strong { display: block; font-size: 12px; font-weight: 720; }
.chat-agent-label small { display: block; margin-top: 3px; color: #9ca3ad; font-size: 10px; }
.chat-top-actions { display: flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.agent-picker { position: relative; }
.agent-menu-trigger { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 38px; padding: 0 11px; border: 1px solid #e5e9ee; border-radius: 12px; background: #fff; color: #495260; font: inherit; font-size: 11px; font-weight: 660; white-space: nowrap; box-shadow: 0 2px 6px rgba(34,46,66,.035); transition: background .16s, border-color .16s, box-shadow .16s; }
.agent-menu-trigger:hover, .agent-menu-trigger.open { border-color: #cbd9eb; background: #f8fbff; box-shadow: 0 4px 12px rgba(46,85,135,.07); }
.agent-menu-trigger:focus-visible, .agent-menu-option:focus-visible { outline: 3px solid rgba(58,132,222,.27); outline-offset: 2px; }
.agent-menu-trigger svg { width: 16px; height: 16px; flex: 0 0 16px; color: #7a8da5; }
.agent-menu-trigger .agent-menu-chevron { width: 13px; height: 13px; flex-basis: 13px; margin-left: 2px; color: #9aa4b1; transition: transform .16s; }
.agent-menu-trigger.open .agent-menu-chevron { transform: rotate(180deg); }
.agent-menu { position: absolute; top: calc(100% + 9px); right: 0; z-index: 10; display: flex; flex-direction: column; gap: 6px; width: 306px; max-width: calc(100vw - 42px); max-height: min(440px, calc(100dvh - 158px)); overflow-y: auto; padding: 8px; border: 1px solid #e5e9ef; border-radius: 18px; background: rgba(255,255,255,.98); box-shadow: 0 18px 52px rgba(28,43,65,.16), 0 2px 8px rgba(28,43,65,.05); animation: agent-menu-in .15s ease-out; }
.agent-menu[hidden] { display: none; }
.agent-menu-heading { padding: 9px 11px 8px; color: #9aa5b2; font-size: 9px; font-weight: 770; letter-spacing: 1.05px; }
.agent-menu-option { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 54px; padding: 7px 9px; border: 0; border-radius: 12px; background: transparent; color: #29323e; text-align: left; font: inherit; transition: background .15s; }
.agent-menu-option:hover, .agent-menu-option:focus-visible { background: #f4f7fa; }
.agent-menu-option.selected { background: #eef5fd; }
.agent-menu-option.selected:hover, .agent-menu-option.selected:focus-visible { background: #e7f1fc; }
.agent-menu-icon { display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 11px; }
.agent-menu-icon svg { width: 18px; height: 18px; }
.agent-menu-copy { min-width: 0; flex: 1; }
.agent-menu-copy strong { display: block; font-size: 11px; font-weight: 700; line-height: 1.3; }
.agent-menu-copy small { display: block; overflow: hidden; margin-top: 3px; color: #86919f; font-size: 10px; font-weight: 400; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.agent-menu-check { width: 17px; height: 17px; flex: 0 0 17px; margin-right: 2px; color: #3980d3; opacity: 0; }
.agent-menu-option.selected .agent-menu-check { opacity: 1; }
@keyframes agent-menu-in { from { opacity: 0; transform: translateY(-5px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
.chat-body { flex: 1; display: flex; flex-direction: column; gap: 22px; overflow: auto; padding: 27px 30px; }
.empty-chat { max-width: 470px; margin: auto; text-align: center; }
.empty-chat .big-icon { display: grid; place-items: center; width: 63px; height: 63px; margin: 0 auto 18px; border-radius: 21px; color: #6a87ae; background: #eef4fb; }
.empty-chat .big-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.empty-chat h2 { margin: 0 0 8px; font-size: 22px; letter-spacing: -.8px; }
.empty-chat p { margin: 0; color: #77818d; font-size: 12px; line-height: 1.65; }
.prompt-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 23px; }
.prompt-chip { padding: 9px 12px; border: 1px solid #e3e7ed; border-radius: 99px; background: #fff; color: #5f6b79; font-size: 11px; transition: background .15s, border-color .15s; }
.prompt-chip:hover { background: #f1f6fc; border-color: #cddff5; }
.message { display: flex; gap: 10px; max-width: 84%; }
.message.user { flex-direction: row-reverse; margin-left: auto; }
.message-avatar { display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 28px; border-radius: 10px; background: #e9f0f9; color: #54759c; font-size: 11px; font-weight: 750; }
.message.user .message-avatar { background: #eceef1; color: #555e6a; }
.message-bubble { padding: 13px 16px; border: 1px solid #edf0f4; border-radius: 16px; background: #f7f9fc; color: #323a45; font-size: 12px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.message.user .message-bubble { border-color: #dbeaff; background: #eef5ff; }
.message-bubble.has-collection-report { width: min(620px,100%); padding: 0; overflow: hidden; border-color: #dce8f6; background: #fff; white-space: normal; box-shadow: 0 8px 24px rgba(42,66,96,.06); }
.collection-chat-report { display: grid; gap: 16px; padding: 18px; }
.collection-chat-report-head { display: flex; align-items: center; gap: 11px; }
.collection-chat-report-head > span { display: grid; place-items: center; width: 36px; height: 36px; flex: 0 0 36px; border-radius: 12px; background: var(--blue-soft); color: var(--blue); }
.collection-chat-report-head strong, .collection-chat-report-head small { display: block; }
.collection-chat-report-head strong { color: var(--text); font-size: 14px; }
.collection-chat-report-head small { margin-top: 2px; color: var(--muted); font-size: 10px; }
.collection-chat-report-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.collection-chat-report-stats > div { min-width: 0; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); }
.collection-chat-report-stats span { display: block; min-height: 30px; color: var(--muted); font-size: 9px; line-height: 1.45; }
.collection-chat-report-stats strong { display: block; margin-top: 4px; color: var(--text); font-size: 21px; line-height: 1; }
.collection-chat-money { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px; }
.collection-chat-money>div { padding:11px;border:1px solid #dcebe3;border-radius:12px;background:#f6fbf8; }
.collection-chat-money span { display:block;color:var(--muted);font-size:9px; }
.collection-chat-money strong { display:block;margin-top:4px;color:#137648;font-size:14px; }
.collection-chat-week { display:grid;grid-template-columns:minmax(0,1fr) 92px;align-items:center;gap:16px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft); }
.collection-chat-week-bars { display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:6px;height:90px; }
.collection-chat-week-bars>div { display:grid;grid-template-rows:54px 13px 13px;justify-items:center;align-items:end;gap:2px;min-width:0; }
.collection-chat-week-bars>div>span { display:flex;width:12px;height:54px;align-items:flex-end;overflow:hidden;border-radius:99px;background:#e8edf3; }
.collection-chat-week-bars i { display:block;width:100%;min-height:2px;border-radius:inherit;background:#25aa66; }
.collection-chat-week-bars strong,.collection-chat-week-bars small { color:var(--muted);font-size:8px;line-height:1; }
.collection-chat-pie { display:grid;width:80px;aspect-ratio:1;place-items:center;border-radius:50%;background:conic-gradient(#22ad65 0 var(--reporting-angle),#e7444d var(--reporting-angle) 360deg);box-shadow:inset 0 0 0 1px rgba(16,35,54,.05); }
.collection-chat-pie::before { content:'';grid-area:1/1;width:54px;aspect-ratio:1;border-radius:50%;background:var(--surface); }
.collection-chat-pie span { grid-area:1/1;z-index:1;color:var(--text);font-size:15px;font-weight:780; }
.collection-chat-chart { display: grid; gap: 8px; margin: 0; padding: 14px; border: 1px solid var(--line); border-radius: 13px; }
.collection-chat-chart figcaption { margin-bottom: 3px; color: var(--text); font-size: 11px; font-weight: 720; }
.collection-chat-bar-row { display: grid; grid-template-columns: 128px minmax(90px,1fr) 28px; align-items: center; gap: 9px; color: var(--muted); font-size: 9px; }
.collection-chat-bar-row > strong { color: var(--text); text-align: right; font-size: 10px; }
.collection-chat-bar-track { height: 9px; overflow: hidden; border-radius: 99px; background: #eef2f6; }
.collection-chat-bar-track i { display: block; min-width: 0; height: 100%; border-radius: inherit; background: #6da9ed; }
.collection-chat-bar-track i.responded { background: #8d78df; }
.collection-chat-bar-track i.paid { background: #35b984; }
.collection-chat-bar-track i.routed { background: #f0a84d; }
.collection-chat-report > p { margin: 0; color: var(--muted); font-size: 9px; line-height: 1.55; }
.message-meta { margin-bottom: 6px; color: #8a929d; font-size: 10px; font-weight: 720; }
.message-content { min-width: 0; width: 100%; }
.email-draft-card { margin-top: 12px; padding: 15px; border: 1px solid #dce8f5; border-radius: 16px; background: #fff; box-shadow: 0 5px 18px rgba(35, 58, 85, .04); }
.email-draft-head { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 5px 12px; margin-bottom: 10px; }
.email-draft-head strong { color: var(--text); font-size: 12px; }
.email-draft-head span, .email-draft-hint { color: var(--muted); font-size: 10px; line-height: 1.45; }
.email-draft-text { display: block; width: 100%; min-height: 190px; max-height: 440px; padding: 13px 14px; resize: vertical; border: 1px solid var(--line); border-radius: 12px; background: #fbfcfe; color: var(--text); font: inherit; font-size: 12px; line-height: 1.65; }
.email-draft-text:focus { outline: none; border-color: #a8c9f6; box-shadow: 0 0 0 4px rgba(22,119,238,.08); }
.email-draft-text[readonly] { color: #697583; background: #f5f7fa; }
.email-draft-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.email-draft-actions .btn { min-height: 35px; }
.chat-compose { padding: 16px 21px 17px; border-top: 1px solid #f0f1f4; }
.compose-box { display: flex; align-items: flex-end; gap: 9px; padding: 7px; border: 1px solid #dfe4eb; border-radius: 16px; background: #fff; box-shadow: 0 3px 13px rgba(38,52,72,.035); }
.compose-box:focus-within { border-color: #a8c9f6; box-shadow: 0 0 0 4px rgba(22,119,238,.08); }
.compose-box textarea { flex: 1; min-height: 42px; max-height: 180px; resize: none; border: 0; outline: 0; padding: 11px 8px; background: transparent; color: var(--text); font-size: 12px; }
.compose-box textarea::placeholder { color: #a7aeb8; }
.compose-box button { width: 36px; height: 36px; border: 0; border-radius: 11px; background: #222832; color: #fff; font-size: 19px; font-weight: 500; }
.compose-hint { margin: 8px 3px 0; color: #abb1bb; font-size: 10px; }

.columns { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.task-toolbar { display: grid; grid-template-columns: max-content minmax(0,1fr) max-content; align-items: center; gap: 12px; margin-bottom: 18px; }
.task-search-bar { display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin:0 0 20px; }
.task-search-field { display:flex;align-items:center;gap:12px;flex:1 1 340px;max-width:680px;min-width:0;min-height:46px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--muted);box-shadow:var(--shadow-sm,0 2px 6px rgba(31,45,65,.025)); }
.task-search-field:focus-within { border-color:var(--blue);outline:3px solid var(--blue-soft); }
.task-search-field input { flex:1;min-width:0;min-height:44px;width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:12px; }
.task-search-field input::placeholder { color:var(--muted); }
.task-search-field button { display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border:0;border-radius:9px;background:var(--surface-soft);color:var(--muted);cursor:pointer; }
.task-search-field button[hidden] { display:none; }
.task-search-field button:hover { background:var(--blue-soft);color:var(--blue); }
.task-search-field button:focus-visible { outline:2px solid var(--blue);outline-offset:2px; }
.task-search-summary { min-width:0;font-size:12px;color:var(--text); }
.task-search-summary small { display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.5; }
.task-tabs { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; width: fit-content; max-width: 100%; margin: 0 0 17px; padding: 4px; border: 1px solid #e5eaf0; border-radius: 15px; background: rgba(255,255,255,.82); box-shadow: 0 4px 18px rgba(32,54,82,.035); }
.task-toolbar .task-tabs { flex-wrap: nowrap; margin: 0; }
.task-view-switch { display: flex; align-items: center; justify-self: center; gap: 3px; padding: 4px; border: 1px solid #e5eaf0; border-radius: 13px; background: rgba(255,255,255,.88); box-shadow: 0 4px 18px rgba(32,54,82,.035); }
.task-view-switch button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 34px; padding: 0 12px; border: 0; border-radius: 9px; background: transparent; color: #697687; font-size: 11px; font-weight: 700; white-space: nowrap; }
.task-view-switch button:hover { background: var(--surface-soft); color: var(--blue); }
.task-view-switch button[aria-pressed="true"] { background: var(--blue-soft); color: var(--blue); }
.task-view-label { display: inline-flex; align-items: center; justify-content: center; justify-self: center; min-height: 42px; padding: 0 18px; border: 1px solid #e5eaf0; border-radius: 13px; background: rgba(255,255,255,.88); color: #607185; font-size: 11px; font-weight: 700; box-shadow: 0 4px 18px rgba(32,54,82,.035); }
.task-view-switch button:focus-visible, .task-pagination button:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.task-tab { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 34px; padding: 6px 10px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: #5d6e80; font-size: 11px; font-weight: 680; text-align: center; white-space: nowrap; transition: border-color .16s, background .16s, color .16s, box-shadow .16s; }
.task-tab:hover { border-color: #dce9f8; background: #f5f9ff; color: #156bc6; }
.task-tab.is-active { border-color: #bdd9fa; background: #eaf4ff; color: #1265bd; box-shadow: inset 0 1px 0 rgba(255,255,255,.9); }
.task-tab strong { display: grid; min-width: 19px; height: 19px; padding: 0 4px; place-items: center; border-radius: 99px; background: #edf1f6; color: #53677c; font-size: 10px; }
.task-tab.is-active strong { background: #fff; color: #1265bd; }
.task-bases-button { display: inline-flex; align-items: center; justify-content: center; justify-self: end; gap: 7px; min-height: 42px; padding: 0 15px; border: 1px solid #dfe7f0; border-radius: 12px; background: #fff; color: #4e6074; font-size: 11px; font-weight: 730; box-shadow: 0 4px 18px rgba(32,54,82,.035); }
.task-bases-button:hover, .task-bases-button.is-active { border-color: #bdd9fa; background: var(--blue-soft); color: #1265bd; }
.task-bases-button:focus-visible, .task-tab:focus-visible, .task-subtabs button:focus-visible, .task-base-tabs button:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.task-subtabs, .task-base-tabs { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: -3px 0 17px; }
.task-subtabs button, .task-base-tabs button { display: inline-flex; align-items: center; gap: 7px; min-height: 34px; padding: 6px 12px; border: 1px solid #e2e9f0; border-radius: 10px; background: #fff; color: #657587; font-size: 11px; font-weight: 680; }
.task-subtabs button:hover, .task-base-tabs button:hover { border-color: #c4daf5; color: #176cbf; }
.task-subtabs button.is-active, .task-base-tabs button.is-active { border-color: #aed0f5; background: #eaf4ff; color: #1265bd; }
.task-subtabs strong, .task-base-tabs strong { display: grid; min-width: 19px; height: 19px; padding: 0 4px; place-items: center; border-radius: 99px; background: #edf1f6; color: #607185; font-size: 10px; }
.task-subtabs .is-active strong, .task-base-tabs .is-active strong { background: #fff; color: #1265bd; }
.task-bases-head { margin: 4px 0 14px; }
.task-bases-head h2 { margin: 0 0 4px; font-size: 16px; letter-spacing: -.35px; }
.task-bases-head p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
#task-collection-field[hidden], #task-sales-field[hidden] { display: none !important; }
.task-columns { grid-template-columns: repeat(2,minmax(0,1fr)); }
.task-columns.is-done { grid-template-columns: 1fr; }
.task-board { container: task-board / inline-size; }
.task-columns.is-full-board { grid-template-columns:repeat(5,minmax(0,1fr)); align-items:start; }
.task-columns.is-full-board > .column { min-width:0; padding:12px; }
.is-full-board .task-column-stack { min-width:0; }
.is-full-board :is(.task-card,.team-task) { min-width:0; overflow-wrap:anywhere; }
.is-full-board .task-area-tag { max-width:100%; }
.is-full-board .team-task-top { flex-wrap:wrap; justify-content:flex-start; }
.is-full-board .team-task-top .task-status-chip { flex:0 1 auto; }
.is-full-board .team-task-top small { flex-basis:100%; line-height:1.5; }
.is-full-board .task-card-footer { align-items:flex-start; flex-wrap:wrap; gap:12px; }
.is-full-board .task-card-controls { width:100%; justify-content:flex-start; }
.is-full-board .task-card-controls .vito-select { max-width:100%; flex:1 1 120px; }
.is-full-board .task-column-stack > .empty-state { padding:50px 10px; }
@container task-board (max-width:1150px) {
  .task-columns.is-full-board { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@container task-board (max-width:800px) {
  .task-columns.is-full-board { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@container task-board (max-width:540px) {
  .task-columns.is-full-board { grid-template-columns:1fr; }
  .task-columns.is-full-board > .column { min-height:175px; }
}
.task-completed-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; }
.task-completed-grid .empty-state { grid-column: 1 / -1; }
.task-form { margin-bottom: 17px; }
.task-form .panel-title { margin-bottom: 17px; }
.column { min-height: 310px; padding: 15px; border: 1px solid #e7ebf0; border-radius: 19px; background: linear-gradient(180deg,#f8fafc,#f4f7fa); box-shadow: inset 0 1px 0 #fff; }
.column-title { display: flex; justify-content: space-between; margin: 2px 3px 14px; color: #435165; font-size: 12px; font-weight: 720; }
.column-title span { color: #a1a8b2; }
.task-card { margin-bottom: 10px; padding: 15px; border: 1px solid #e4e9f0; border-radius: 15px; background: #fff; box-shadow: 0 4px 16px rgba(35,55,82,.045); transition: border-color .16s, box-shadow .16s, transform .16s; }
.task-card:hover { border-color: #cbdced; box-shadow: 0 10px 25px rgba(35,55,82,.075); transform: translateY(-1px); }
/* Kanban states share their palette across admin, advisers and tables. */
[data-task-tone="pending"] { --task-color:var(--task-gray); --task-soft:var(--task-gray-soft); }
[data-task-tone="doing"] { --task-color:var(--task-yellow); --task-soft:var(--task-yellow-soft); }
[data-task-tone="cancelled"] { --task-color:var(--task-red); --task-soft:var(--task-red-soft); }
[data-task-tone="overdue"] { --task-color:var(--task-orange); --task-soft:var(--task-orange-soft); }
[data-task-tone="done"] { --task-color:var(--green); --task-soft:var(--green-soft); }
.task-color-legend { display:flex; flex-wrap:wrap; align-items:center; gap:10px 20px; margin:16px 2px; font-size:11px; color:var(--muted); }
.task-color-legend > span { display:inline-flex; align-items:center; gap:7px; }
.task-board-help { margin:0 2px 16px; color:var(--muted); font-size:11px; line-height:1.6; }
.task-column-auto { display:block; margin:-8px 3px 16px; color:var(--muted); font-size:10px; }
:is(.task-card,.team-task)[draggable="true"] { position:relative; }
.task-drag-handle { display:flex; align-items:center; gap:7px; width:fit-content; min-height:30px; margin:0 0 10px auto; padding:5px 9px; border:1px solid var(--line); border-radius:9px; background:var(--surface); color:var(--muted); font:inherit; font-size:10px; cursor:grab; touch-action:none; }
.task-drag-handle:hover { color:var(--blue); border-color:var(--blue); background:var(--blue-soft); }
.task-drag-handle:active { cursor:grabbing; }
.task-drag-handle:focus-visible,.task-move-panel button:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.task-move-panel { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:10px; margin-bottom:14px; background:var(--surface-soft); border:1px solid var(--line); border-radius:12px; }
.task-move-panel button { min-width:0; min-height:36px; padding:8px; border:1px solid var(--line); border-radius:8px; background:var(--surface); color:var(--task-color); font:inherit; font-size:10px; text-align:left; }
.task-move-panel button:hover:not(:disabled) { border-color:var(--task-color); background:var(--task-soft); }
.task-move-panel button:disabled { opacity:.45; cursor:default; }
:is(.task-card,.team-task).is-dragging { opacity:.5; box-shadow:none; }
:is(.task-card,.team-task)[aria-busy="true"] { opacity:.65; pointer-events:none; }
.column.is-drop-target { outline:2px dashed var(--task-color); outline-offset:-5px; box-shadow:inset 0 0 0 4px var(--task-soft); }
.task-status-dot { display:inline-block; width:8px; height:8px; flex:0 0 8px; border-radius:50%; background:var(--task-color); }
.column[data-task-tone] { background:linear-gradient(180deg,var(--task-soft),var(--surface) 220px); border-color:color-mix(in srgb,var(--task-color) 22%,var(--line)); }
.column[data-task-tone] .column-title { align-items:center; gap:12px; margin-bottom:18px; }
.column-title > strong { display:inline-flex; gap:9px; align-items:center; font-size:12px; color:var(--task-color); }
.column[data-task-tone] .column-title > span { display:grid; place-items:center; min-width:28px; height:25px; padding:0 8px; border-radius:8px; background:var(--surface); color:var(--task-color); font-variant-numeric:tabular-nums; }
:is(.task-card,.team-task)[data-task-tone] { border-left:4px solid var(--task-color); background:linear-gradient(115deg,var(--surface) 65%,var(--task-soft)); }
:is(.task-card,.team-task)[data-task-tone]:hover { border-color:color-mix(in srgb,var(--task-color) 50%,var(--line)); border-left-color:var(--task-color); }
.task-status-chip { display:inline-flex; align-items:center; gap:6px; width:fit-content; max-width:100%; margin:0 0 12px; padding:5px 9px; border-radius:8px; background:var(--task-soft); color:var(--task-color); font-size:10px; font-weight:720; line-height:1.5; }
.task-status-chip .task-status-dot { width:6px; height:6px; flex-basis:6px; }
.task-data-table td > .task-status-chip { display:flex; margin-bottom:8px; }
.task-original-status { display:none; }
.team-body[data-theme="dark"] [data-task-tone] { --task-soft:color-mix(in srgb,var(--task-color) 18%,var(--surface)); }
.team-body[data-theme="dark"] :is(.task-card,.team-task)[data-task-tone] { border-left-color:var(--task-color); }
@media (max-width:600px) { .task-color-legend { gap:10px 14px; } .task-card-top { gap:12px; } }
.task-completed-grid .task-card { margin-bottom: 0; }
.task-card-top { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.task-area-tag { display: inline-flex; align-items: center; flex: 0 0 auto; padding: 5px 8px; border-radius: 8px; background: var(--blue-soft); color: #4f7eaf; font-size: 10px; font-weight: 700; }
.task-card strong { display: block; font-size: 12px; line-height: 1.5; }
.task-card p { margin: 7px 0; color: #8c949f; font-size: 11px; line-height: 1.5; }
.task-client-summary { margin:12px 0; color:var(--text); }
.task-client-row + .task-client-row { margin-top:10px; padding-top:10px; border-top:1px solid var(--line); }
.task-client-name { margin-bottom:5px; font-size:11px; font-weight:700; }
.task-client-data { display:flex; flex-wrap:wrap; gap:6px 16px; margin:0; font-size:11px; line-height:1.6; }
.task-client-data > div { display:flex; flex-wrap:wrap; min-width:0; gap:4px; }
.task-client-data dt { font-weight:700; }
.task-client-data dd { margin:0; overflow-wrap:anywhere; }
.task-client-note { display:block; margin-top:5px; color:var(--muted); font-size:10px; line-height:1.5; }
.task-context-preview { margin:12px 0; }
.task-context-preview > span { color:var(--text); font-size:11px; font-weight:700; }
.task-context-preview p { margin:5px 0 0; color:var(--muted); font-size:11px; line-height:1.65; white-space:pre-wrap; overflow-wrap:anywhere; }
.task-title-cell .task-client-data { font-size:10px; gap:4px 12px; }
.task-title-cell .task-client-note { max-width:none; white-space:normal; }
.task-assignment { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 10px; }
.task-assignment span { padding: 5px 8px; border-radius: 8px; background: var(--surface-soft); color: #687483; font-size: 10px; }
.task-card-footer { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 13px; }
.task-card-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.task-card-controls .vito-select { width: 145px; }
.task-card-controls .vito-select-trigger { min-height: 34px; padding: 0 9px; font-size: 10px; }
.task-card-controls .small-delete { display: grid; width: 30px; height: 30px; place-items: center; font-size: 12px; }
.task-card:has(.vito-select-trigger.open) { margin-bottom:230px; }
.task-columns.is-closed .task-completed-grid { grid-template-columns:1fr; }
.task-completed-grid .task-card:has(.vito-select-trigger.open) { margin-bottom:220px; }
.task-table-panel { padding: 0; overflow: hidden; border-color: #e2e8ef; box-shadow: 0 8px 28px rgba(35,55,82,.045); }
.task-table-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 50px; padding: 12px 18px; border-bottom: 1px solid var(--line); color: #6b7786; font-size: 11px; }
.task-table-summary .text-link { font-size: 11px; }
.task-data-table { min-width: 900px; }
.task-data-table th:first-child, .task-data-table td:first-child { width: 45px; padding-left: 19px; }
.task-data-table th:nth-child(2), .task-data-table td:nth-child(2) { width: 44px; }
.task-data-table th { white-space: nowrap; background: #f8fafc; color: #68778a; }
.task-data-table th:last-child { position: relative; }
.task-data-table td { vertical-align: middle; }
.task-data-table tbody tr:hover { background: #f6faff; }
.task-data-table tbody tr.is-selected { background: #f2f7ff; }
.task-data-table input[type="checkbox"] { width: 16px; height: 16px; margin: 0; accent-color: var(--blue); cursor: pointer; }
.task-data-table input[type="checkbox"]:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.task-row-number { color: #8793a2 !important; font-size: 11px; font-variant-numeric: tabular-nums; }
.task-title-cell { min-width: 230px; max-width: 360px; }
.task-title-cell strong { display: block; line-height: 1.4; }
.task-title-cell small, .task-data-table td > small { display: block; overflow: hidden; max-width: 330px; margin-top: 4px; color: #8b96a3; font-size: 10px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.task-data-table .vito-select { min-width: 130px; }
.task-data-table td .vito-select + .vito-select { margin-top: 8px; }
.task-data-table .vito-select-trigger { min-height: 34px; padding: 0 9px; font-size: 10px; }
.task-data-table .small-delete { padding: 7px; font-size: 12px; }
.task-data-table .empty-state { padding: 29px 16px; text-align: left; }
.task-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; min-height: 64px; padding: 12px 18px; border-top: 1px solid var(--line); color: #748191; font-size: 11px; font-variant-numeric: tabular-nums; }
.task-pagination-buttons { display: flex; align-items: center; gap: 4px; }
.task-pagination-buttons button { display: grid; min-width: 31px; height: 31px; place-items: center; padding: 0 7px; border: 1px solid transparent; border-radius: 8px; background: transparent; color: #637488; font-size: 11px; font-weight: 700; }
.task-pagination-buttons button:hover:not(:disabled), .task-pagination-buttons button.is-current { border-color: #cbe0f9; background: var(--blue-soft); color: var(--blue); }
.task-pagination-buttons button:disabled { color: #b9c2cc; cursor: default; }
.task-pagination-buttons > span { padding: 0 4px; color: #9ca8b4; }
.policy-base-panel { min-width: 0; }
.policy-base-tools { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 17px 18px; border-bottom: 1px solid var(--line); }
.policy-base-tools h3 { margin: 0 0 4px; font-size: 14px; }
.policy-base-tools p { margin: 0; color: var(--muted); font-size: 11px; }
.policy-base-search { display: flex; align-items: center; gap: 8px; min-width: min(100%, 360px); }
.policy-base-search .input { min-width: 0; width: 100%; min-height: 35px; }
.policy-base-search .btn { min-height: 35px; }
.policy-base-search .input:focus-visible, .policy-base-detail-button:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.policy-base-scroll { max-width: 100%; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #c5d0dd transparent; }
.policy-base-table { width: 100%; min-width: 890px; }
.policy-base-table th { white-space: nowrap; background: #f8fafc; color: #68778a; }
.policy-base-table td { max-width: 230px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.policy-base-table tbody tr:hover { background: #f6faff; }
.policy-base-table.is-active-roster td:nth-child(3) { min-width:180px; white-space:normal; overflow-wrap:anywhere; }
.policy-base-table.is-active-roster .collection-row-actions { flex-wrap:nowrap; }
.policy-base-detail-button { padding: 6px 9px; border: 1px solid #dce7f4; border-radius: 8px; background: #fff; color: var(--blue); font-size: 11px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.policy-base-detail-button:hover, .policy-base-detail-button[aria-expanded="true"] { background: var(--blue-soft); }
.policy-base-detail-row[hidden] { display: none; }
.policy-base-detail-row td { max-width: none; padding: 14px 18px; white-space: normal; background: #fbfcfe; }
.policy-base-detail-row dl { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 0 18px; margin: 0; }
.policy-base-detail-row dl > div { min-width: 0; padding: 7px 0; border-bottom: 1px solid #edf1f5; }
.policy-base-detail-row dt { color: #8491a1; font-size: 10px; font-weight: 700; }
.policy-base-detail-row dd { overflow-wrap: anywhere; margin: 4px 0 0; color: #3b4857; font-size: 11px; }
.policy-base-empty { padding: 35px 18px; text-align: center; color: var(--muted); font-size: 12px; }
@media (max-width: 740px) {
  .policy-base-tools, .policy-base-search { width: 100%; }
  .policy-base-detail-row dl { grid-template-columns: repeat(2,minmax(140px,1fr)); }
}
.team-task-table { min-width: 830px; }
.team-task-table .team-task-actions { margin: 0; flex-wrap: nowrap; }
.team-task-table .team-task-actions .btn { min-height: 29px; padding: 4px 7px; font-size: 10px; white-space: nowrap; }
.team-task .task-area-tag { margin: 7px 0 10px; }
.team-task-columns .team-task { margin-bottom: 10px; padding: 16px; border-color: #e4e9f0; border-radius: 15px; box-shadow: 0 4px 16px rgba(35,55,82,.045); }
.team-task-columns .team-task[data-task-tone] { border-left-color:var(--task-color); }
.team-task-top .task-status-chip { margin-bottom:0; }
.collection-status.task-status-chip[data-task-tone] { background:var(--task-soft); color:var(--task-color); }
.team-task-columns .team-task h2 { margin: 12px 0 7px; font-size: 13px; }
.team-task-columns .team-task-actions { margin-top: 16px; }
.team-task-columns .team-task-stack > .empty-state { padding: 55px 12px; }
@media (max-width: 1080px) {
  .task-completed-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1050px) {
  .task-toolbar { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
  .task-toolbar .task-tabs { grid-column: 1 / -1; grid-row: 2; display: flex; flex-wrap: nowrap; width: 100%; overflow-x: auto; padding: 4px; scroll-snap-type: x proximity; }
  .task-tab { flex: 0 0 auto; scroll-snap-align: start; }
  .task-view-switch { grid-column: 1; grid-row: 1; justify-self: start; }
  .task-view-label { grid-column: 1; grid-row: 1; justify-self: start; }
  .task-bases-button { grid-column: 2; grid-row: 1; }
  .task-base-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; }
  .task-base-tabs button { flex: 0 0 auto; }
}
@media (max-width: 740px) {
  .task-subtabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 5px; scrollbar-width: thin; }
  .task-subtabs button { flex: 0 0 auto; white-space: nowrap; }
  .task-columns .column { min-height: 175px; }
  .task-completed-grid { grid-template-columns: 1fr; }
  .task-card-controls { width: 100%; }
  .task-card-controls .vito-select { flex: 1 1 135px; width: auto; }
  body:has(#task-form) .quick-chat-launcher { display: none; }
}
.small-delete { border: 0; background: transparent; color: #a5acb5; font-size: 18px; }
.small-delete:hover { color: #c45555; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.form-full { grid-column: 1 / -1; }
.contact-auto-check { display: flex; align-items: center; gap: 10px; min-height: 39px; align-self: end; color: #4c5663; font-size: 12px; font-weight: 650; cursor: pointer; }
.contact-auto-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--blue); }
.contact-auto-hint { margin: 12px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.field { display: flex; flex-direction: column; gap: 7px; }
.field label { color: #555d69; font-size: 11px; font-weight: 680; }
.input, .field textarea { width: 100%; padding: 10px 12px; border: 1px solid #e1e5eb; border-radius: 10px; outline: 0; background: #fff; color: #242b34; font-size: 12px; }
.input:focus, .field textarea:focus { border-color: #9dc4f6; box-shadow: 0 0 0 4px rgba(22,119,238,.075); }
input[aria-invalid="true"]:not([type="checkbox"]):not([type="radio"]), textarea[aria-invalid="true"], .vito-select:has(select[aria-invalid="true"]) .vito-select-trigger { border-color: #d07773; box-shadow: 0 0 0 4px rgba(185,79,77,.09); }
.field textarea { min-height: 95px; resize: vertical; }
.vito-select { position: relative; width: 100%; min-width: 0; }
select.vito-select-native { position: absolute; width: 1px; height: 1px; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.vito-select-trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 42px; padding: 0 13px; border: 1px solid #e1e5eb; border-radius: 11px; background: #fff; color: #2c3440; font-size: 12px; font-weight: 570; text-align: left; box-shadow: 0 1px 2px rgba(30,45,68,.025); transition: background .16s, border-color .16s, box-shadow .16s; }
.vito-select-trigger:hover { border-color: #cbd6e4; background: #fbfcfe; }
.vito-select-trigger.open, .vito-select-trigger:focus-visible { border-color: #a9c5ec; background: #fff; box-shadow: 0 0 0 4px rgba(22,119,238,.08); outline: 0; }
.vito-select-trigger svg { width: 15px; height: 15px; flex: 0 0 15px; fill: none; stroke: #8895a6; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: transform .16s; }
.vito-select-trigger.open svg { transform: rotate(180deg); }
.vito-select-value { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vito-select-menu { position: fixed; z-index: 30; display: flex; flex-direction: column; gap: 5px; overflow-y: auto; padding: 8px; border: 1px solid #e2e7ef; border-radius: 16px; background: rgba(255,255,255,.98); box-shadow: 0 18px 42px rgba(35,49,69,.16), 0 2px 8px rgba(35,49,69,.05); backdrop-filter: blur(22px); scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; animation: agent-menu-in .15s ease-out; }
.vito-select-menu.is-inline { position: relative; top: auto; left: auto; width: 100%; max-height: 280px; margin-top: 12px; box-shadow: 0 10px 26px rgba(35,49,69,.10); }
.vito-select-menu::-webkit-scrollbar { width: 6px; }
.vito-select-menu::-webkit-scrollbar-thumb { border: 1px solid transparent; border-radius: 99px; background: #cbd5e1; background-clip: padding-box; }
.vito-select-option { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 42px; flex: 0 0 auto; padding: 9px 12px; border: 0; border-radius: 10px; background: transparent; color: #46515e; font-size: 12px; font-weight: 540; text-align: left; }
.vito-select-option:hover, .vito-select-option:focus-visible { background: #f3f6fa; color: #1f2a38; outline: 0; }
.vito-select-option[aria-selected="true"] { background: #edf4fd; color: #215eaa; font-weight: 680; }
.vito-select-option[aria-selected="true"]:hover, .vito-select-option[aria-selected="true"]:focus-visible { background: #e6f0fc; }
.vito-select-check { color: #2674d3; font-size: 14px; font-weight: 750; opacity: 0; }
.vito-select-option[aria-selected="true"] .vito-select-check { opacity: 1; }
.vito-select.is-compact { width: 120px; }
.vito-select.is-compact .vito-select-trigger { min-height: 31px; padding: 0 9px; border-radius: 9px; font-size: 10px; }
.vito-select.is-stage { width: 145px; }
.vito-select.is-stage .vito-select-trigger { min-height: 33px; border-color: #dce9dc; border-radius: 10px; background: #f0f8f2; color: #39724d; font-size: 10px; }
.form-panel { margin-bottom: 18px; }
.form-actions { display: flex; align-items: center; gap: 9px; margin-top: 18px; }
.empty-state { padding: 43px 14px; color: #a0a7b1; font-size: 12px; line-height: 1.6; text-align: center; }
.table-wrap { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; font-size: 12px; }
.crm-table { min-width: 790px; }
.crm-table td:first-child { min-width: 145px; }
.data-table th { padding: 13px 11px; border-bottom: 1px solid #edf0f3; color: #a2a9b2; text-align: left; font-size: 10px; font-weight: 750; letter-spacing: .8px; }
.data-table td { padding: 15px 11px; border-bottom: 1px solid #f0f1f4; color: #6c7581; }
.data-table strong { color: #2c333d; }
.data-table tr:last-child td { border-bottom: 0; }
.integration-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.integration-card { padding: 23px; border: 1px solid var(--line); border-radius: 19px; background: #fff; box-shadow: var(--shadow); }
.integration-head { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
.integration-logo { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 13px; background: #f2f5f9; color: #627d9f; font-size: 16px; font-weight: 750; }
.integration-head h3 { margin: 0; font-size: 13px; font-weight: 730; }
.integration-head p { margin: 4px 0 0; color: #a5acb6; font-size: 10px; }
.integration-card > p { min-height: 52px; margin: 17px 0 0; color: #707b87; font-size: 12px; line-height: 1.6; }
.integration-actions { display: flex; gap: 8px; margin-top: 17px; }
.integration-actions .btn { white-space: normal; text-align: center; }
.whatsapp-lines { margin-top: 20px; padding: 25px; scroll-margin-top: 84px; }
.whatsapp-lines[hidden] { display: none; }
.whatsapp-lines-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.whatsapp-lines-head p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.whatsapp-lines-head .badge { flex: 0 0 auto; }
.whatsapp-lines-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 22px; }
.whatsapp-line { min-width: 0; padding: 19px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.whatsapp-line-top { display: flex; align-items: center; gap: 11px; }
.whatsapp-line-icon { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 12px; background: var(--blue-soft); color: var(--blue); font-size: 18px; }
.whatsapp-line-top > div { min-width: 0; flex: 1; }
.whatsapp-line h3 { margin: 0; font-size: 13px; }
.whatsapp-line small { display: block; margin-top: 3px; overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-line-top .badge { flex: 0 0 auto; }
.whatsapp-line p { min-height: 38px; margin: 17px 0 15px; color: #707b87; font-size: 12px; line-height: 1.6; }
.whatsapp-add { display: flex; align-items: flex-end; gap: 12px; margin-top: 20px; padding-top: 21px; border-top: 1px solid var(--line); }
.whatsapp-add .field { width: min(100%, 380px); }
.whatsapp-add .field small { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.whatsapp-add .btn { flex: 0 0 auto; margin-bottom: 25px; }
.whatsapp-layout { display: grid; grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); gap: 14px; min-height: 480px; height: min(640px, calc(100dvh - 210px)); }
.view.whatsapp-view { padding: 16px 18px 22px; }
.whatsapp-workspace { display: grid; grid-template-columns: 214px minmax(0, 1fr); align-items: start; gap: 14px; min-width: 0; }
.whatsapp-workspace.is-tools-collapsed { grid-template-columns: 66px minmax(0, 1fr); gap: 10px; }
.whatsapp-tools { position: sticky; top: 90px; z-index: 2; display: flex; flex-direction: column; min-width: 0; height: max(520px, calc(100dvh - 112px)); padding: 12px 9px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: var(--shadow); }
.whatsapp-tools-scrim { display: none; }
.whatsapp-tools-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 5px; padding: 8px 5px 15px 12px; }
.whatsapp-tools-heading { display: grid; gap: 4px; min-width: 0; }
.whatsapp-tools-heading strong { font-size: 13px; }
.whatsapp-tools-heading small { color: var(--muted); font-size: 10px; }
.whatsapp-tools-toggle { position: relative; display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; padding: 0; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: #758292; }
.whatsapp-tools-toggle:hover { border-color: #cbd8e8; background: var(--blue-soft); color: var(--blue); }
.whatsapp-tools-toggle .fa-table-columns { font-size: 16px; }
.whatsapp-tools-list { display: grid; gap: 3px; min-height: 0; overflow-y: auto; padding: 2px 3px 10px; }
.whatsapp-options-list { display: grid; gap: 3px; min-width: 0; }
.whatsapp-options-list[hidden] { display: none; }
.whatsapp-options-toggle { margin-bottom: 3px; }
.whatsapp-options-toggle.has-selection { color: var(--blue); }
.whatsapp-options-toggle:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }

.whatsapp-nav-item { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 54px; padding: 8px 10px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: #687382; text-align: left; }
.whatsapp-nav-item:hover { background: var(--surface-soft); color: var(--text); }
.whatsapp-nav-item.active { border-color: #dbe8f7; background: var(--blue-soft); color: #246abd; font-weight: 700; }
.whatsapp-nav-glyph { display: grid; place-items: center; flex: 0 0 27px; width: 27px; height: 27px; border-radius: 9px; color: #7b8ba1; font-size: 17px; }
.whatsapp-nav-item.active .whatsapp-nav-glyph { background: #fff; color: var(--blue); }
.whatsapp-nav-copy { display: grid; min-width: 0; gap: 3px; }
.whatsapp-nav-copy strong { overflow: hidden; font-size: 11px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-nav-copy small { overflow: hidden; color: #96a0ad; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-nav-divider { height: 1px; margin: 7px 11px; background: var(--line); }
.whatsapp-tools-foot { display: flex; align-items: center; gap: 9px; margin: auto 7px 0; padding: 13px 5px 3px; border-top: 1px solid var(--line); color: #7e8a97; font-size: 10px; }
.whatsapp-tools-foot .status-orb { margin-left: 3px; }
.is-tools-collapsed .whatsapp-tools { padding: 10px 6px; }
.is-tools-collapsed .whatsapp-tools-head { justify-content: center; padding: 2px 0 13px; }
.is-tools-collapsed .whatsapp-tools-heading, .is-tools-collapsed .whatsapp-nav-copy, .is-tools-collapsed .whatsapp-tools-status { display: none; }
.is-tools-collapsed .whatsapp-nav-item { justify-content: center; min-height: 45px; padding: 6px; }
.is-tools-collapsed .whatsapp-nav-glyph { flex-basis: 30px; width: 30px; height: 30px; }
.is-tools-collapsed .whatsapp-nav-divider { margin: 6px 9px; }
.is-tools-collapsed .whatsapp-tools-foot { justify-content: center; margin: auto 4px 0; padding: 14px 0 5px; }
.is-tools-collapsed .whatsapp-tools-foot .status-orb { margin: 0; }
.whatsapp-workspace-main { min-width: 0; }
.whatsapp-workspace-main > .panel { margin-top: 0; }
.whatsapp-runtime-control { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 66px; margin: 0 0 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 16px; background: #fff; box-shadow: 0 5px 18px rgba(31, 54, 82, .035); }
.whatsapp-runtime-state { display: flex; align-items: center; gap: 12px; min-width: 0; }
.whatsapp-runtime-state > div { display: grid; min-width: 0; gap: 2px; }
.whatsapp-runtime-light { width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: #dc535d; box-shadow: 0 0 0 5px rgba(220, 83, 93, .12); }
.whatsapp-runtime-control.is-green .whatsapp-runtime-light { background: #2cb878; box-shadow: 0 0 0 5px rgba(44, 184, 120, .13); animation: whatsapp-runtime-active 1.35s ease-in-out infinite; }
.whatsapp-runtime-control.is-yellow .whatsapp-runtime-light { background: #e2a51a; box-shadow: 0 0 0 5px rgba(226, 165, 26, .14); }
@keyframes whatsapp-runtime-active {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 4px rgba(44, 184, 120, .13); }
  50% { opacity: .38; box-shadow: 0 0 0 7px rgba(44, 184, 120, .05); }
}
@media (prefers-reduced-motion: reduce) {
  .whatsapp-runtime-control.is-green .whatsapp-runtime-light { animation: none; }
}
.whatsapp-runtime-eyebrow { color: #8794a4; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.whatsapp-runtime-state strong { color: var(--text); font-size: 12px; }
.whatsapp-runtime-state small { overflow: hidden; color: var(--muted); font-size: 10px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-runtime-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; flex: 0 0 auto; }
.whatsapp-runtime-actions > span { color: #7b8795; font-size: 9px; white-space: nowrap; }
.whatsapp-runtime-actions .btn { min-width: 90px; }
.whatsapp-runtime-actions .btn:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.whatsapp-workspace-main .whatsapp-layout { grid-template-columns: minmax(245px, 315px) minmax(0, 1fr); height: calc(100dvh - 112px); min-height: 460px; }
.whatsapp-workspace-main:has(.whatsapp-runtime-control) .whatsapp-layout { height: calc(100dvh - 190px); }
.whatsapp-workspace-main:has(.wa-cloud-inbox-note):has(.whatsapp-runtime-control) .whatsapp-layout { height: calc(100dvh - 252px); }
.whatsapp-workspace-main:has(.notice) .whatsapp-layout { height: calc(100dvh - 176px); }
.quick-chat-launcher { position: fixed; right: 24px; bottom: 23px; z-index: 9; display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 17px; border: 1px solid #d6e2f0; border-radius: 99px; background: #fff; color: #27649f; box-shadow: 0 10px 30px rgba(33, 58, 89, .16); font-size: 12px; font-weight: 750; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.quick-chat-launcher:hover { transform: translateY(-2px); background: var(--blue-soft); box-shadow: 0 14px 36px rgba(33, 58, 89, .2); }
.quick-chat-launcher i { font-size: 18px; }
.quick-chat-launcher.is-toolbar { position: relative; inset: auto; flex: 0 0 38px; width: 38px; height: 38px; min-height: 38px; padding: 0; justify-content: center; box-shadow: 0 4px 15px rgba(33, 58, 89, .06); }
.quick-chat-launcher.is-toolbar > span { display: none; }
.quick-chat-launcher.is-toolbar:hover { transform: none; }
.quick-chat-launcher[hidden], .quick-chat-panel[hidden] { display: none; }
.quick-chat-panel { position: fixed; right: 24px; bottom: 23px; z-index: 25; display: flex; flex-direction: column; width: min(410px, calc(100vw - 32px)); height: min(570px, calc(100dvh - 48px)); min-height: 280px; overflow: hidden; border: 1px solid var(--line-strong); border-radius: 21px; background: var(--surface); box-shadow: 0 22px 70px rgba(28, 43, 64, .22); }
.quick-chat-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex: 0 0 auto; min-height: 68px; padding: 12px 15px; border-bottom: 1px solid var(--line); }
.quick-chat-identity { display: flex; flex: 1 1 auto; align-items: center; gap: 10px; min-width: 0; }
.quick-chat-identity > div { min-width: 0; }
.quick-chat-identity strong, .quick-chat-identity small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.quick-chat-identity strong { font-size: 13px; font-weight: 750; }
.quick-chat-identity small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.quick-chat-mark { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #f4f5f8; }
.quick-chat-mark img { width: 100%; height: 100%; object-fit: contain; transform: scale(1.2); }
.quick-chat-actions { display: flex; flex: 0 0 auto; gap: 5px; }
.quick-chat-icon-button { display: grid; place-items: center; flex: 0 0 31px; width: 31px; height: 31px; padding: 0; border: 1px solid transparent; border-radius: 9px; background: transparent; color: #75808f; font-size: 13px; }
.quick-chat-icon-button:hover { border-color: var(--line); background: var(--surface-soft); color: var(--text); }
.quick-chat-training-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 31px; padding: 0 9px; border: 1px solid var(--line-strong); border-radius: 9px; background: #fff; color: var(--muted); font-size: 11px; font-weight: 750; white-space: nowrap; }
.quick-chat-training-button:hover { border-color: #a8d9bc; background: var(--green-soft); color: var(--green); }
.quick-chat-training-button[aria-pressed="true"] { border-color: #a8d9bc; background: var(--green-soft); color: var(--green); }
.quick-chat-panel.is-training { border-color: #94d3ad; background: #f4fbf6; }
.quick-chat-panel.is-training .quick-chat-head { border-bottom-color: #cae9d4; background: #e9f7ee; }
.quick-chat-panel.is-training .quick-chat-messages { background: #f4fbf6; }
.quick-chat-panel.is-training .quick-chat-compose { border-top-color: #cae9d4; background: #eef9f1; }
.quick-chat-panel.is-training .quick-chat-compose .compose-box { border-color: #94d3ad; background: #fff; }
.quick-chat-panel.is-training .quick-chat-compose .compose-box:focus-within { border-color: var(--green); box-shadow: 0 0 0 3px rgba(39, 132, 97, .13); }
.quick-chat-training-hint { display: flex; align-items: center; gap: 7px; flex: 0 0 auto; margin: 0; padding: 9px 16px; border-bottom: 1px solid #d8eddf; color: #286b4c; font-size: 11px; line-height: 1.4; }
.quick-chat-training-hint i { flex: 0 0 auto; }
.quick-chat-panel.is-training .quick-chat-message.user { border-color: #c6e9d1; background: #e4f6ea; }
.quick-chat-panel.is-training .quick-chat-empty-icon { background: #e2f3e8; color: var(--green); }
.quick-chat-panel.is-training .quick-chat-compose .compose-box button { background: var(--green); }
.quick-chat-training-button:focus-visible, .quick-chat-panel.is-training button:focus-visible, .quick-chat-panel.is-training textarea:focus-visible { outline-color: rgba(39, 132, 97, .4); }
.quick-chat-calendar-button[aria-pressed="true"] { border-color: #b8d5f5; background: var(--blue-soft); color: var(--blue); }
.quick-chat-panel.is-calendar { border-color: #b9d9fb; background: #f4f9ff; }
.quick-chat-panel.is-calendar .quick-chat-head { border-bottom-color: #d9eafb; background: #eaf4ff; }
.quick-chat-panel.is-calendar .quick-chat-messages { background: #f4f9ff; }
.quick-chat-panel.is-calendar .quick-chat-compose { border-top-color: #d9eafb; background: #edf6ff; }
.quick-chat-panel.is-calendar .quick-chat-compose .compose-box { border-color: #b8d5f5; background: #fff; }
.quick-chat-panel.is-calendar .quick-chat-compose .compose-box:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(22,119,238,.12); }
.quick-chat-calendar-hint { display: flex; align-items: center; gap: 7px; flex: 0 0 auto; margin: 0; padding: 9px 16px; border-bottom: 1px solid #d9eafb; color: #376eaa; font-size: 11px; line-height: 1.4; }
.quick-chat-calendar-hint i { flex: 0 0 auto; }
.quick-chat-panel.is-calendar .quick-chat-message.user { border-color: #bddbfb; background: #dceeff; }
.quick-chat-panel.is-calendar .quick-chat-empty-icon { background: #e1efff; color: var(--blue); }
.quick-chat-calendar-view { align-self: center; margin: 0 0 10px; padding: 8px 12px; border: 1px solid #bdd9f7; border-radius: 9px; background: #fff; color: #1666bb; font-size: 11px; font-weight: 700; }
.quick-chat-calendar-view:hover { background: var(--blue-soft); }
.quick-chat-messages { display: flex; flex: 1 1 auto; flex-direction: column; gap: 12px; min-height: 0; overflow-y: auto; padding: 17px 16px; }
.quick-chat-empty { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; padding: 18px; color: var(--muted); text-align: center; font-size: 12px; }
.quick-chat-empty-icon { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 13px; border-radius: 15px; background: var(--blue-soft); color: var(--blue); font-size: 20px; }
.quick-chat-empty strong { color: var(--text); font-size: 14px; }
.quick-chat-empty p { max-width: 240px; margin: 7px 0 0; line-height: 1.5; }
.quick-chat-message { align-self: flex-start; max-width: 90%; padding: 11px 13px; border: 1px solid #e8ecf1; border-radius: 15px 15px 15px 4px; background: var(--surface-soft); color: #333d49; }
.quick-chat-message.user { align-self: flex-end; border-color: #d6e8ff; border-radius: 15px 15px 4px 15px; background: var(--blue-soft); }
.quick-chat-message span { display: block; margin-bottom: 5px; color: #778391; font-size: 10px; font-weight: 750; }
.quick-chat-message > div { font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; white-space: pre-wrap; }
.quick-chat-thinking { align-self: flex-start; padding: 10px 12px; border-radius: 12px; background: var(--surface-soft); color: var(--muted); font-size: 11px; }
.quick-chat-error { margin: 0 14px 9px; padding: 9px 11px; border-radius: 9px; background: #fff2f2; color: #a83a3a; font-size: 11px; line-height: 1.45; }
.quick-chat-compose { flex: 0 0 auto; padding: 11px 13px 12px; border-top: 1px solid var(--line); background: #fff; }
.quick-chat-compose .compose-box { border-radius: 13px; }
.quick-chat-compose .compose-box textarea { min-height: 38px; max-height: 94px; padding: 9px 6px; resize: vertical; }
.quick-chat-compose .compose-box button { display: grid; place-items: center; flex: 0 0 36px; font-size: 14px; }
.quick-chat-compose > small { display: block; margin: 7px 2px 0; color: #9ba4b0; font-size: 10px; }
.whatsapp-empty-notice { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.whatsapp-empty-notice .btn { flex: 0 0 auto; }
body.whatsapp-qr-open { overflow: hidden; }
.whatsapp-qr-overlay { position: fixed; inset: 0; z-index: 30; display: grid; place-items: center; padding: 20px; background: rgba(27, 35, 47, .55); backdrop-filter: blur(5px); }
.whatsapp-qr-dialog { width: min(100%, 450px); max-height: calc(100dvh - 40px); overflow-y: auto; padding: 25px; border: 1px solid var(--line); border-radius: 21px; background: #fff; box-shadow: 0 28px 80px rgba(20, 29, 43, .24); }
.whatsapp-qr-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.whatsapp-qr-head h2 { margin: 7px 0 0; font-size: 20px; letter-spacing: -.5px; }
.whatsapp-qr-close { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: #687382; font-size: 21px; line-height: 1; }
.whatsapp-qr-close:hover { background: var(--surface-soft); color: var(--text); }
.whatsapp-qr-dialog p { margin: 14px 0 18px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.whatsapp-qr-image { display: grid; place-items: center; width: min(100%, 280px); min-height: 280px; margin: 0 auto; padding: 12px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.whatsapp-qr-image img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; }
.whatsapp-qr-state { color: var(--muted); font-size: 12px; text-align: center; }
.whatsapp-qr-error { color: #b75858; }
.whatsapp-qr-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 19px; }
.gmail-connection { margin-bottom: 18px; }
.gmail-connection .panel-header { align-items: flex-start; gap: 20px; }
.gmail-connection .subtitle { margin-top: 6px; font-size: 12px; }
.gmail-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 22px 0 18px; }
.gmail-steps > div { display: flex; align-items: flex-start; gap: 10px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-soft); }
.gmail-steps span { display: grid; place-items: center; flex: 0 0 22px; width: 22px; height: 22px; border-radius: 8px; background: var(--blue-soft); color: var(--blue); font-size: 11px; font-weight: 750; }
.gmail-steps p { margin: 1px 0 0; color: #56606d; font-size: 11px; line-height: 1.55; overflow-wrap: anywhere; }
.gmail-steps code { color: #285e9c; font-size: 10px; }
.gmail-copy-scope { display: inline; margin-left: 3px; font-size: 11px; white-space: normal; }
.gmail-setup-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.gmail-privacy { margin: 15px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.gmail-ready { display: flex; align-items: center; gap: 9px; margin-bottom: 18px; color: var(--green); font-size: 12px; font-weight: 650; }
.gmail-ready.has-error { color: #b75858; }
.gmail-layout { display: grid; grid-template-columns: minmax(260px, 340px) minmax(0, 1fr); gap: 16px; min-height: 520px; height: min(680px, calc(100dvh - 180px)); }
.gmail-list, .gmail-detail { min-width: 0; min-height: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: var(--surface); box-shadow: var(--shadow); }
.gmail-list { display: flex; flex-direction: column; }
.gmail-list-head { display: flex; justify-content: space-between; gap: 10px; padding: 19px 20px; border-bottom: 1px solid var(--line); font-size: 12px; }
.gmail-list-head span { color: var(--muted); }
.gmail-list-scroll { flex: 1; min-height: 0; overflow-y: auto; padding: 8px; }
.gmail-item { display: block; width: 100%; padding: 13px 14px; border: 1px solid transparent; border-radius: 12px; background: transparent; text-align: left; transition: background .15s, border-color .15s; }
.gmail-item + .gmail-item { margin-top: 4px; }
.gmail-item:hover, .gmail-item:focus-visible { border-color: #e9eef5; background: #f7f9fc; }
.gmail-item.active { border-color: #e5edf8; background: #edf4fd; }
.gmail-item strong, .gmail-item span, .gmail-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmail-item strong { color: var(--text); font-size: 12px; }
.gmail-item span { margin-top: 5px; color: #586574; font-size: 11px; }
.gmail-item small { margin-top: 7px; color: #9aa5b2; font-size: 10px; }
.gmail-detail { display: flex; flex-direction: column; }
.gmail-detail-head { padding: 25px 28px 20px; border-bottom: 1px solid var(--line); }
.gmail-detail-head h2 { margin: 0 0 10px; font-size: 19px; letter-spacing: -.4px; line-height: 1.35; overflow-wrap: anywhere; }
.gmail-detail-head p { margin: 0 0 5px; color: #5a6572; font-size: 12px; overflow-wrap: anywhere; }
.gmail-detail-head small { color: #9aa4af; font-size: 10px; }
.gmail-detail-body { flex: 1; min-height: 140px; overflow: auto; padding: 25px 28px; color: #4a5563; font-size: 13px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.gmail-detail-empty { display: grid; place-items: center; flex: 1; padding: 24px; color: var(--muted); font-size: 12px; text-align: center; }
.gmail-agent-form { display: flex; align-items: end; gap: 12px; padding: 18px 28px 22px; border-top: 1px solid var(--line); }
.gmail-agent-form .field { flex: 1; min-width: 0; }
.gmail-agent-form .btn { margin-bottom: 0; }
.gmail-agent-form { flex-wrap: wrap; }
.gmail-agent-form .field { flex-basis: calc(100% - 165px); }
.gmail-send-authorization { display: flex; align-items: flex-start; gap: 10px; order: 3; width: 100%; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fbfcfe; cursor: pointer; }
.gmail-send-authorization:has(input:focus-visible) { border-color: #a8c9f6; box-shadow: 0 0 0 4px rgba(22,119,238,.08); }
.gmail-send-authorization:has(input:disabled) { opacity: .62; cursor: not-allowed; }
.gmail-send-authorization input { width: 16px; height: 16px; flex: 0 0 16px; margin: 1px 0 0; accent-color: var(--blue); }
.gmail-send-authorization strong, .gmail-send-authorization small { display: block; }
.gmail-send-authorization strong { font-size: 11px; color: var(--text); }
.gmail-send-authorization small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.4; }
.gmail-send-setup { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-bottom: 10px; padding: 9px 12px; border: 1px solid #dce8f5; border-radius: 12px; background: #fff; color: #536477; font-size: 11px; }
.gmail-send-setup span { flex: 1; min-width: 220px; }
.gmail-send-setup code { color: var(--blue); }
.gmail-send-setup .btn { min-height: 30px; padding: 6px 10px; }
@media (min-width: 901px) { .gmail-view:has(.gmail-send-setup) .gmail-layout { height: calc(100dvh - 185px); } }
.whatsapp-rail, .whatsapp-thread { min-width: 0; min-height: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); box-shadow: var(--shadow); }
.whatsapp-rail { display: flex; flex-direction: column; }
.whatsapp-filters { display: grid; grid-template-columns: 34px minmax(0, 1fr) 34px; flex: 0 0 auto; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.whatsapp-filter-current { min-width: 0; padding: 6px 8px; border: 1px solid var(--wa-accent); border-radius: 11px; background: var(--wa-accent); color: #fff; text-align: center; }
.whatsapp-filter-current strong, .whatsapp-filter-current small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-filter-current strong { font-size: 11px; font-weight: 700; }
.whatsapp-filter-current small { margin-top: 2px; font-size: 9px; opacity: .82; }
.whatsapp-filter-arrow.calendar-icon-button { width: 34px; height: 34px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); color: var(--text); }
.whatsapp-filter-arrow.calendar-icon-button:hover:not(:disabled) { border-color: var(--blue); background: var(--blue-soft); color: var(--blue); }
.whatsapp-filter-arrow.calendar-icon-button:disabled { opacity: .4; cursor: default; }
.whatsapp-chat-list { flex: 1; overflow-y: auto; padding: 8px; }
.whatsapp-chat { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 70px; padding: 11px; border: 0; border-radius: 12px; background: transparent; text-align: left; }
.whatsapp-chat:hover, .whatsapp-chat:focus-visible { background: #f4f7fb; }
.whatsapp-chat.active { background: var(--blue-soft); }
.whatsapp-chat-avatar { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 13px; background: #eaf1f9; color: #4e7196; font-size: 13px; font-weight: 750; }
.whatsapp-chat-copy { min-width: 0; flex: 1; }
.whatsapp-chat-copy strong { display: block; overflow: hidden; color: var(--text); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-chat-copy small { display: block; overflow: hidden; margin-top: 5px; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-chat-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; color: #9ca5af; font-size: 9px; white-space: nowrap; }
.whatsapp-chat-meta b { display: grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 99px; background: var(--blue); color: #fff; font-size: 9px; }
.whatsapp-thread { display: flex; flex-direction: column; }
.whatsapp-thread-head { display: flex; align-items: center; gap: 12px; min-height: 70px; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.whatsapp-thread-head > div { min-width: 0; flex: 1; }
.whatsapp-thread-head strong { display: block; font-size: 13px; }
.whatsapp-thread-head small { display: block; overflow: hidden; margin-top: 4px; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.whatsapp-messages { display: flex; flex: 1; min-height: 0; flex-direction: column; gap: 13px; overflow-y: auto; padding: 20px; background: #fbfcfd; }
.whatsapp-message { display: flex; }
.whatsapp-message.outgoing { justify-content: flex-end; }
.whatsapp-message-bubble { max-width: min(80%, 500px); padding: 11px 13px; border: 1px solid var(--line); border-radius: 14px 14px 14px 4px; background: #fff; color: #35404d; font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; white-space: pre-wrap; }
.whatsapp-message.outgoing .whatsapp-message-bubble { border-color: #d9e9fa; border-radius: 14px 14px 4px 14px; background: #eaf4ff; }
.whatsapp-message-bubble small { display: block; margin-top: 7px; color: #9ca6b1; font-size: 9px; text-align: right; }
.whatsapp-sender { display: block; margin-bottom: 4px; color: #3970a7; font-size: 10px; }
.whatsapp-composer { padding: 13px 16px 15px; border-top: 1px solid var(--line); background: #fff; }
.whatsapp-composer label { display: block; margin-bottom: 8px; color: #586372; font-size: 10px; font-weight: 700; }
.whatsapp-composer > div { display: flex; align-items: flex-end; gap: 10px; }
.whatsapp-composer textarea { flex: 1; min-width: 0; min-height: 42px; max-height: 130px; resize: vertical; padding: 11px 12px; border: 1px solid var(--line-strong); border-radius: 12px; background: var(--surface-soft); color: var(--text); font-size: 12px; line-height: 1.45; }
.whatsapp-composer textarea:focus { border-color: #a9c5ec; outline: 3px solid rgba(22,119,238,.1); }
.whatsapp-composer-hint { padding: 14px 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.whatsapp-thread-empty { max-width: 330px; margin: auto; padding: 25px; color: var(--muted); text-align: center; }
.whatsapp-thread-empty > span { display: grid; place-items: center; width: 54px; height: 54px; margin: 0 auto 14px; border-radius: 17px; background: var(--blue-soft); color: var(--blue); font-size: 29px; }
.whatsapp-thread-empty h2 { margin: 0 0 7px; color: var(--text); font-size: 17px; }
.whatsapp-thread-empty p { margin: 0; font-size: 12px; line-height: 1.6; }
.whatsapp-back { display: none; }
.whatsapp-assignments { margin-top: 17px; padding: 23px 25px; }
.whatsapp-assignments .subtitle { margin: 7px 0 0; font-size: 11px; }
.whatsapp-assignment-list { display: grid; gap: 14px; margin-top: 18px; }
.whatsapp-line-config { padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.whatsapp-profile-details { margin-bottom: 17px; border-bottom: 1px solid var(--line); }
.whatsapp-profile-details summary { margin-bottom: 15px; color: #526173; font-size: 11px; font-weight: 700; cursor: pointer; }
.whatsapp-profile-details summary:hover { color: var(--blue); }
.whatsapp-profile-details[open] summary { color: var(--blue); }
.whatsapp-profile-details > div { padding-bottom: 18px; }
.whatsapp-profile-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.whatsapp-services { margin: 16px 0; padding: 0; border: 0; }
.whatsapp-services legend { margin-bottom: 10px; color: #586372; font-size: 11px; font-weight: 700; }
.whatsapp-services > div { display: flex; flex-wrap: wrap; gap: 8px; }
.whatsapp-services label { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: #4c5663; font-size: 11px; cursor: pointer; }
.whatsapp-services label:hover { border-color: #bfd4ee; }
.whatsapp-services input { width: 14px; height: 14px; margin: 0; accent-color: var(--blue); }
.whatsapp-services small { display: block; margin-top: 9px; color: var(--muted); font-size: 10px; }
.whatsapp-group-settings { display: grid; gap: 10px; margin-top: 18px; padding-top: 17px; border-top: 1px solid var(--line); }
.whatsapp-group-settings > div:first-child strong, .whatsapp-group-row strong { display: block; font-size: 11px; }
.whatsapp-group-settings small { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.whatsapp-group-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.whatsapp-group-row > span { min-width: 0; overflow-wrap: anywhere; }
.whatsapp-group-row .vito-switch { white-space: nowrap; }
.whatsapp-agent-form { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(190px, 260px) auto; align-items: start; gap: 15px; }
.whatsapp-agent-form > div:first-child { padding-top: 17px; }
.whatsapp-agent-form strong { display: block; font-size: 12px; }
.whatsapp-agent-form small { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.whatsapp-agent-form .btn { margin-top: 17px; }
.whatsapp-auto-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.whatsapp-auto-copy { min-width: 0; }
.whatsapp-auto-copy strong { display: block; font-size: 12px; }
.whatsapp-auto-copy small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.whatsapp-auto-copy .whatsapp-auto-error { color: #a94141; }
.vito-switch { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; padding: 5px; border: 0; border-radius: 99px; background: transparent; color: var(--muted); font-size: 11px; font-weight: 700; }
.vito-switch:hover:not(:disabled) { color: var(--text); }
.vito-switch-track { width: 36px; height: 22px; padding: 3px; border-radius: 99px; background: #cbd2dc; transition: background .16s ease; }
.vito-switch-knob { display: block; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(22, 30, 40, .15); transition: transform .16s ease; }
.vito-switch.is-on .vito-switch-track { background: var(--green); }
.vito-switch.is-on .vito-switch-knob { transform: translateX(14px); }
.vito-switch:focus-visible { outline: 3px solid rgba(22,119,238,.25); outline-offset: 2px; }
.whatsapp-advisors { margin-top: 17px; padding: 23px 25px; }
.budibase-setup { margin: 17px 0; padding: 23px 25px; }
.budibase-setup .subtitle { margin-top: 7px; font-size: 11px; }
.budibase-setup-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 16px; margin-top: 17px; }
.budibase-setup-form .field { min-width: 0; }
.budibase-setup-form .field small { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.budibase-setup-form .btn { grid-column: 1 / -1; justify-self: start; min-height: 39px; }
.budibase-ready { margin: 15px 0 0; color: var(--green); font-size: 11px; font-weight: 650; }
.budibase-help { margin: 13px 0 0; }
.whatsapp-advisors .subtitle { margin: 7px 0 0; font-size: 11px; }
.whatsapp-advisor-form { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; align-items: end; gap: 12px; }
.whatsapp-advisor-form > .btn { min-height: 42px; }
.whatsapp-advisor-list { display: grid; gap: 8px; margin-top: 17px; }
.whatsapp-advisor-item { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); }
.whatsapp-advisor-item strong { display: block; font-size: 12px; }
.whatsapp-advisor-item small { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.whatsapp-digest { margin-top: 17px; padding: 23px 25px; }
.whatsapp-digest .subtitle { margin: 7px 0 0; font-size: 11px; }
.whatsapp-digest-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.whatsapp-digest-check { display: inline-flex; align-items: center; gap: 9px; align-self: center; color: #4c5663; font-size: 12px; font-weight: 650; cursor: pointer; }
.whatsapp-digest-check input, .whatsapp-digest-groups input { width: 15px; height: 15px; margin: 0; accent-color: var(--blue); }
.whatsapp-digest-groups { display: grid; gap: 9px; grid-column: 1 / -1; padding-top: 14px; border-top: 1px solid var(--line); }
.whatsapp-digest-groups strong { font-size: 11px; }
.whatsapp-digest-groups label { display: inline-flex; align-items: center; gap: 9px; width: fit-content; color: #4c5663; font-size: 11px; cursor: pointer; }
.whatsapp-digest-groups small { color: var(--muted); font-size: 10px; }
.whatsapp-digest-actions { display: flex; flex-wrap: wrap; gap: 9px; grid-column: 1 / -1; }
.whatsapp-digest-preview { display: grid; gap: 10px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.whatsapp-digest-preview > strong { font-size: 12px; }
.whatsapp-digest-preview > div { min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); }
.whatsapp-digest-preview small { color: var(--muted); font-size: 10px; }
.whatsapp-digest-preview pre { overflow: auto; margin: 9px 0 0; color: #374354; font: inherit; font-size: 11px; line-height: 1.55; white-space: pre-wrap; }
.collection-campaign-health { display: grid; grid-template-columns: minmax(220px, 1.4fr) minmax(320px, 1fr); gap: 18px; margin: 0 0 20px; padding: 17px 18px; border: 1px solid #cfe3f8; border-radius: 15px; background: #f7fbff; }
.collection-campaign-health.is-reviewing { border-color: #eadcb8; background: #fffbf2; }
.collection-campaign-health.is-blocked { border-color: #f0c7ce; background: #fff6f7; }
.collection-campaign-health-copy strong { display: block; color: var(--text); font-size: 13px; }
.collection-campaign-health-copy p { margin: 6px 0; color: #596675; font-size: 11px; line-height: 1.55; }
.collection-campaign-health-copy small { color: var(--muted); font-size: 10px; }
.collection-campaign-health dl { display: grid; grid-template-columns: repeat(4, minmax(70px, 1fr)); gap: 8px; margin: 0; }
.collection-campaign-health dl div { min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.collection-campaign-health dt { color: var(--muted); font-size: 9px; line-height: 1.35; }
.collection-campaign-health dd { margin: 5px 0 0; color: var(--text); font-size: 16px; font-weight: 750; }
.collection-campaign-health details { grid-column: 1 / -1; color: var(--muted); font-size: 11px; }
.collection-campaign-health summary { width: fit-content; cursor: pointer; color: #526173; font-weight: 700; }
.collection-campaign-health summary:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; border-radius: 4px; }
.collection-campaign-health details p { margin: 8px 0 0; line-height: 1.55; }
@media (max-width: 900px) { .collection-campaign-health { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .collection-campaign-health dl { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.whatsapp-cut-list { display: grid; gap: 9px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.whatsapp-cut-item { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); }
.whatsapp-cut-item strong { display: block; font-size: 12px; }
.whatsapp-cut-item small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.whatsapp-cut-item p { margin: 8px 0 0; color: #586372; font-size: 11px; line-height: 1.5; }
.whatsapp-cut-empty { margin: 17px 0 0; font-size: 11px; }
.view.flows-view { padding: 12px 18px 18px; }
.flow-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; margin-bottom: 12px; }
.flow-source-tabs { display: inline-flex; gap: 5px; margin: 0; padding: 4px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: var(--shadow); }
.flow-source-tab { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 9px 17px; border: 0; border-radius: 10px; background: transparent; color: #79828e; font-size: 12px; font-weight: 700; }
.flow-source-tab:hover, .flow-source-tab:focus-visible { background: var(--surface-soft); color: var(--text); }
.flow-source-tab.active { background: var(--blue-soft); color: #246abd; }
.flow-source-dot { width: 7px; height: 7px; margin-left: 3px; border-radius: 50%; background: #cbd2da; }
.flow-source-dot.online { background: #27b97b; }
.flow-toolbar-actions { display: flex; align-items: center; gap: 8px; }
.flow-launch { white-space: nowrap; }
.flow-launch i, .flow-editor-head-actions .btn i { margin-right: 5px; font-size: 11px; }
.flow-key-card { display: flex; gap: 13px; margin: 16px 17px 0; padding: 16px; border: 1px solid #dce9f8; border-radius: 14px; background: #f7fbff; }
.flow-key-icon { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; border-radius: 14px; background: var(--blue-soft); color: var(--blue); font-size: 20px; }
.flow-key-card > div:last-child { flex: 1; min-width: 0; }
.flow-key-card .subtitle { max-width: 900px; margin-top: 4px; }
.flow-key-link { display: inline-block; margin-top: 10px; }
.flow-key-form { display: flex; align-items: flex-end; gap: 10px; margin-top: 12px; }
.flow-key-form .field { flex: 1; min-width: 0; }
.flow-setup-note { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: 16px 17px 0; padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); color: #647182; font-size: 12px; }
.flow-setup-note > i { color: var(--blue); }
.flows-layout { display: grid; grid-template-columns: minmax(245px, 280px) minmax(0, 1fr); gap: 12px; height: calc(100dvh - 164px); min-height: 540px; align-items: stretch; }
.flows-list, .flows-workspace { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 19px; background: #fff; box-shadow: var(--shadow); }
.flows-list { display: flex; flex-direction: column; min-height: 0; }
.flows-list-head { display: flex; align-items: center; justify-content: space-between; padding: 16px 17px 14px; border-bottom: 1px solid var(--line); color: #3b4551; font-size: 12px; }
.flows-list-head strong { display: block; }
.flows-list-head small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; font-weight: 500; }
.flows-list-head span { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; background: #f1f4f7; color: #8b97a3; font-size: 10px; }
.flows-list-scroll { flex: 1; min-height: 0; overflow-y: auto; padding: 8px; }
.flow-list-item { display: flex; align-items: center; gap: 11px; width: 100%; min-height: 65px; padding: 11px; border: 0; border-radius: 13px; background: transparent; text-align: left; }
.flow-list-item:hover, .flow-list-item:focus-visible { background: #f5f8fc; }
.flow-list-item.selected { background: var(--blue-soft); }
.flow-list-icon { display: grid; place-items: center; width: 35px; height: 35px; flex: 0 0 35px; border-radius: 11px; background: #edf2fa; color: #53759a; font-size: 16px; }
.flow-list-item > span:nth-child(2) { min-width: 0; flex: 1; }
.flow-list-item strong { display: block; overflow: hidden; color: var(--text); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.flow-list-item small { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; }
.flow-list-arrow { color: #abb5c2; font-size: 20px; }
.flows-workspace { min-height: 0; overflow-y: auto; }
.flows-empty { display: grid; align-content: center; justify-items: center; min-height: 400px; padding: 30px; color: var(--muted); text-align: center; font-size: 12px; line-height: 1.6; }
.flows-empty > span { display: grid; place-items: center; width: 57px; height: 57px; margin-bottom: 15px; border-radius: 18px; background: var(--blue-soft); color: var(--blue); font-size: 28px; }
.flows-empty h2 { margin: 0 0 5px; color: var(--text); font-size: 17px; }
.flows-empty p { max-width: 330px; margin: 0 0 18px; }
.flow-editor { min-width: 0; padding: 18px 20px 24px; }
.flow-editor-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.flow-editor-head .field { min-width: 0; width: min(100%, 520px); }
.flow-editor-head .input { font-size: 16px; font-weight: 690; letter-spacing: -.4px; }
.flow-editor-head-actions { display: flex; align-items: center; gap: 8px; padding-bottom: 1px; white-space: nowrap; }
.flow-save-hint { margin: 9px 0 16px; color: #8793a0; font-size: 11px; line-height: 1.55; }
.flow-canvas-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 8px; color: #4d5d70; font-size: 11px; }
.flow-canvas-heading strong i { margin-right: 5px; color: var(--blue); }
.flow-canvas-heading span { color: var(--muted); }
.flow-canvas-wrap { min-height: 300px; overflow: auto; border: 1px solid #e8edf3; border-radius: 16px; background-color: #fbfcfe; background-image: radial-gradient(#dbe4ef 0.7px, transparent 0.7px); background-size: 20px 20px; }
.flow-canvas { position: relative; min-height: 290px; }
.flow-lines { position: absolute; top: 0; left: 0; overflow: visible; fill: none; stroke: #abc7e6; stroke-width: 2.2; }
.flow-node { position: absolute; z-index: 1; display: grid; align-content: center; width: 166px; min-height: 68px; padding: 11px 14px 11px 18px; border: 1px solid #dfe7f0; border-radius: 13px; background: #fff; color: var(--text); text-align: left; box-shadow: 0 5px 15px rgba(43,64,90,.07); }
.flow-node:hover, .flow-node:focus-visible { border-color: #9dbfe8; box-shadow: 0 6px 18px rgba(38,92,159,.12); }
.flow-node.selected { border-color: #7db1ee; background: #f6faff; box-shadow: 0 0 0 3px rgba(22,119,238,.12); }
.flow-node.disabled { opacity: .5; }
.flow-node-dot { position: absolute; top: calc(50% - 5px); left: -5px; width: 10px; height: 10px; border: 2px solid #fff; border-radius: 50%; background: #82b2e7; box-shadow: 0 0 0 1px #82b2e7; }
.flow-node strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.flow-node small { overflow: hidden; margin-top: 5px; color: #98a2ae; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.flow-inspector { margin-top: 18px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.flow-inspector-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 16px; }
.flow-inspector h3 { margin: 5px 0 0; font-size: 14px; }
.flow-inspector .btn { margin-top: 11px; }
.flow-inspector-hint { padding: 18px 2px 0; color: #9aa3ae; font-size: 11px; }
.flow-param-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.flow-param-grid .field { min-width: 0; }
.flow-param-grid .field textarea { min-height: 112px; }
.flow-param-check { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 42px; padding: 10px 12px; border: 1px solid #e1e7ef; border-radius: 10px; background: #fff; color: #555d69; font-size: 11px; font-weight: 680; cursor: pointer; }
.flow-param-check input { appearance: none; position: relative; width: 33px; height: 20px; flex: 0 0 33px; margin: 0; border: 0; border-radius: 99px; background: #cbd3de; cursor: pointer; transition: background .18s; }
.flow-param-check input::after { content: ''; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,.13); transition: transform .18s; }
.flow-param-check input:checked { background: var(--blue); }
.flow-param-check input:checked::after { transform: translateX(13px); }
.flow-param-empty { margin: 0; color: var(--muted); font-size: 11px; }
.flow-node-advanced { margin-top: 17px; }
.flow-node-advanced summary { color: #617185; cursor: pointer; font-size: 11px; font-weight: 650; }
.flow-node-advanced .field { margin-top: 12px; }
.field .flow-json { min-height: 165px; padding: 13px; border-color: #e1e7ef; background: #fff; color: #374252; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 11px; line-height: 1.55; tab-size: 2; }
.flow-advanced { margin-top: 22px; padding: 17px 19px; border: 1px solid var(--line); border-radius: 14px; }
.flow-advanced summary { color: #4d5d70; cursor: pointer; font-size: 12px; font-weight: 700; }
.flow-advanced p { margin: 12px 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.flow-advanced .flow-json { min-height: 260px; }
.flow-advanced .btn { margin-top: 12px; }
.flow-editor-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.notice { margin-bottom: 18px; padding: 13px 16px; border: 1px solid #e6e8ed; border-radius: 13px; background: #fff; color: #626b77; font-size: 12px; line-height: 1.55; }
.image-workspace { display: grid; grid-template-columns: minmax(300px,420px) 1fr; gap: 15px; }
.image-preview { display: grid; place-items: center; min-height: 420px; overflow: hidden; border: 1px solid #e8ebf0; border-radius: 20px; background: linear-gradient(45deg,#f9fafb 25%,#f4f6f8 25%,#f4f6f8 50%,#f9fafb 50%,#f9fafb 75%,#f4f6f8 75%); background-size: 26px 26px; text-align: center; }
.image-preview img { display: block; max-width: 100%; max-height: 680px; }
.image-placeholder { padding: 20px; color: #a4abb5; font-size: 12px; line-height: 1.65; }
.image-placeholder span { display: block; margin-bottom: 11px; color: #b0bcc9; font-size: 42px; }
.settings-section { width: 100%; }
.settings-section + .settings-section { margin-top: 22px; }
.behavior-form { margin-bottom: 18px; }
.behavior-form .panel-header { align-items: flex-start; }
.behavior-form .panel-header .subtitle { margin-top: 6px; font-size: 11px; }
.behavior-form .panel-header .badge { flex: 0 0 auto; }
.behavior-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.behavior-card { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: var(--surface-soft); }
.behavior-card-head { display: flex; align-items: flex-start; gap: 11px; margin-bottom: 17px; }
.behavior-card-icon { display: grid; place-items: center; width: 36px; height: 36px; flex: 0 0 36px; border-radius: 11px; background: var(--blue-soft); color: var(--blue); font-size: 17px; }
.behavior-card-head h3 { margin: 1px 0 4px; font-size: 13px; }
.behavior-card-head p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.behavior-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.behavior-fields .field { min-width: 0; }
.behavior-fields .field:last-child { grid-column: 1 / -1; }
.behavior-fields .field textarea { min-height: 75px; }
.behavior-limits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--line); }
.behavior-limits .field { min-width: 0; }
.behavior-limits textarea { min-height: 100px; }
.behavior-escalate { grid-column: 1 / -1; }
.behavior-escalate textarea { min-height: 75px; }
.behavior-actions { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 19px; }
.behavior-actions p { max-width: 540px; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.behavior-actions .btn { flex: 0 0 auto; }
.view.agents-view { padding: 12px 18px 18px; }
.agents-workspace { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 12px; height: calc(100dvh - 104px); min-height: 610px; }
.agents-rail, .agents-detail { min-width: 0; min-height: 0; border: 1px solid var(--line); border-radius: 19px; background: var(--surface); box-shadow: var(--shadow); }
.agents-rail { display: flex; flex-direction: column; overflow: hidden; }
.agents-rail-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 17px 14px; border-bottom: 1px solid var(--line); color: #3b4551; font-size: 12px; }
.agents-rail-head span { display: grid; place-items: center; min-width: 22px; height: 22px; border-radius: 99px; background: #f1f4f7; color: var(--muted); font-size: 10px; }
.agents-rail nav { display: flex; flex: 1; min-height: 0; flex-direction: column; gap: 4px; overflow-y: auto; padding: 9px; }
.agents-rail-item { display: flex; align-items: center; gap: 11px; width: 100%; min-height: 60px; padding: 9px; border: 0; border-radius: 12px; background: transparent; color: var(--text); text-align: left; }
.agents-rail-item:hover, .agents-rail-item:focus-visible, .agents-rail-general:hover, .agents-rail-general:focus-visible { background: var(--surface-soft); }
.agents-rail-item.active, .agents-rail-general.active { background: var(--blue-soft); color: #246abd; }
.agents-rail-item .agent-icon { width: 35px; height: 35px; flex-basis: 35px; border-radius: 11px; }
.agents-rail-item > span:nth-child(2) { min-width: 0; flex: 1; }
.agents-rail-item strong, .agents-rail-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.agents-rail-item strong { font-size: 11px; }
.agents-rail-item small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.agents-rail-item > i { color: #aab4c1; font-size: 11px; }
.agents-rail-general { display: flex; align-items: center; gap: 10px; min-height: 48px; margin: 0 9px 10px; padding: 10px 12px; border: 0; border-top: 1px solid var(--line); border-radius: 10px; background: transparent; color: #5d6877; text-align: left; font-size: 11px; font-weight: 700; }
.agents-rail-general i { width: 17px; text-align: center; }
.agents-detail { overflow-y: auto; }
.agents-detail-head { display: flex; align-items: center; gap: 14px; padding: 19px 22px; border-bottom: 1px solid var(--line); }
.agents-detail-head > .agent-icon { width: 43px; height: 43px; flex-basis: 43px; }
.agents-detail-head h2 { margin: 4px 0 2px; font-size: 18px; }
.agents-detail-head p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.4; }
.agent-tabbar { display: flex; gap: 5px; overflow-x: auto; padding: 10px 20px 0; border-bottom: 1px solid var(--line); }
.agent-tab { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; min-height: 38px; padding: 8px 12px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: #7c8794; font-size: 11px; font-weight: 700; }
.agent-tab:hover, .agent-tab:focus-visible { color: var(--text); background: var(--surface-soft); }
.agent-tab.active { border-bottom-color: var(--blue); color: #246abd; }
.agent-tab i { font-size: 12px; }
.agents-detail-body { padding: 22px; }
.agent-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 19px; }
.agent-section-head h3 { margin: 0 0 5px; font-size: 16px; }
.agent-section-head p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.agent-section-head .badge { flex: 0 0 auto; }
.agent-base-role { margin-bottom: 21px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-soft); }
.agent-base-role strong { display: block; margin-bottom: 6px; color: #4c5c6e; font-size: 11px; }
.agent-base-role p { margin: 0; color: #647182; font-size: 11px; line-height: 1.55; }
.agent-profile-form > .field + .field { margin-top: 20px; }
.agent-profile-form > .field textarea { min-height: 145px; }
.agent-profile-form .field small, .agent-connection .field small { display: block; margin-top: 6px; color: var(--muted); font-size: 10px; line-height: 1.5; }
.agent-form-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; margin-top: 18px; }
.agent-form-actions p { flex: 1; margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.agent-form-actions .btn i { margin-right: 5px; font-size: 11px; }
.agent-example { margin-bottom: 14px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-soft); }
.agent-example-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.agent-example-head strong { font-size: 12px; }
.agent-example-head .btn { min-height: 31px; padding: 6px 9px; font-size: 10px; }
.agent-example-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.agent-example-fields .field { min-width: 0; }
.agent-example-fields textarea { min-height: 120px; background: #fff; }
.agent-example .text-link { margin-top: 10px; }
.agent-empty-examples { display: grid; place-items: center; min-height: 170px; padding: 24px; border: 1px dashed #dce4ee; border-radius: 14px; color: var(--muted); text-align: center; font-size: 12px; }
.agent-test #agent-test-message { min-height: 145px; }
.agent-test-result { margin-top: 22px; padding: 18px; border: 1px solid #dce9f8; border-radius: 15px; background: #f7fbff; }
.agent-test-result > div { display: flex; justify-content: space-between; gap: 12px; color: var(--text); font-size: 12px; }
.agent-test-result span { color: var(--muted); font-size: 10px; }
.agent-test-result p { margin: 14px 0 0; color: #455363; font-size: 12px; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
.agent-connection .field { max-width: 620px; }
.agent-api-details { margin-top: 24px; padding: 15px 17px; border: 1px solid var(--line); border-radius: 13px; }
.agent-api-details summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; color: #4d5d70; font-size: 12px; font-weight: 700; }
.agent-api-details form { padding-top: 15px; }
.agent-api-details form p { margin: 0 0 12px; color: var(--muted); font-size: 11px; }
.agent-api-details form .btn { margin-top: 12px; }
.agents-detail-body .behavior-grid { margin-top: 2px; }
.settings-panel { margin-bottom: 16px; padding: 23px 25px 25px; }
.settings-panel-head { display: flex; align-items: center; gap: 13px; margin-bottom: 22px; }
.settings-panel-head > div { min-width: 0; flex: 1; }
.settings-panel-head .badge { margin-left: auto; }
.settings-panel-head p { margin: 5px 0 0; color: #8993a0; font-size: 11px; line-height: 1.5; }
.settings-panel-icon { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 42px; border: 1px solid #e8edf4; border-radius: 14px; background: #f5f8fc; color: #647f9f; font-size: 18px; font-weight: 550; }
.settings-model-field { max-width: 540px; }
.settings-service-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.settings-service-field { min-width: 0; padding: 15px; border: 1px solid #ecf0f4; border-radius: 15px; background: #fafbfd; }
.settings-service-field .input { min-width: 0; border-color: #e3e8ef; border-radius: 10px; background: #fff; }
.settings-service-label { display: flex; align-items: center; gap: 9px; min-height: 32px; margin-bottom: 2px; }
.settings-service-label label { display: block; color: #333c49; font-size: 11px; font-weight: 700; }
.settings-service-label small { display: block; margin-top: 2px; color: #a0a9b5; font-size: 10px; }
.settings-service-icon { display: grid; place-items: center; width: 31px; height: 31px; flex: 0 0 31px; border-radius: 10px; background: #eef3f9; color: #6e89aa; font-size: 13px; font-weight: 700; }
.settings-actions { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 2px 2px 0; }
.settings-actions span { color: #9aa3ae; font-size: 11px; }
.memory-layout { display: grid; grid-template-columns: minmax(280px, 360px) minmax(0, 1fr); gap: 15px; align-items: start; }
.memory-groups { display: grid; gap: 15px; }
.memory-item { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid #edf0f3; }
.memory-item:last-child { border-bottom: 0; padding-bottom: 0; }
.memory-item p { margin: 0; color: #4b5562; font-size: 12px; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
.memory-item .small-delete { flex: 0 0 22px; }
#toast { position: fixed; top: 88px; left: 98px; z-index: 20; display: flex; align-items: center; gap: 11px; width: max-content; max-width: min(380px, calc(100vw - 120px)); min-height: 52px; padding: 12px 16px; border: 1px solid #cfe5d8; border-radius: 22px; background: rgba(255,255,255,.94); color: #315e43; font-size: 12px; line-height: 1.45; overflow-wrap: anywhere; box-shadow: 0 16px 40px rgba(25,35,49,.15), inset 0 1px rgba(255,255,255,.8); backdrop-filter: blur(22px) saturate(1.2); -webkit-backdrop-filter: blur(22px) saturate(1.2); opacity: 0; pointer-events: none; transform-origin: 24px 50%; }
#toast::before { content: '✓'; display: grid; flex: 0 0 26px; width: 26px; height: 26px; place-items: center; border-radius: 99px; background: #e7f5eb; color: #268350; font-size: 14px; font-weight: 800; }
#toast.show { animation: vito-notice-enter .48s cubic-bezier(.2,.9,.2,1) both; }
#toast.compact { animation: vito-notice-exit .6s ease-in forwards; }
#toast.error { border-color: #f0d9d8; color: #a44046; }
#toast.error::before { content: '!'; background: #ffebeb; color: #c3464e; }
body:not(.sidebar-collapsed) #toast { left: 246px; max-width: min(380px, calc(100vw - 268px)); }
body[data-theme="dark"] #toast { background: rgba(31,39,51,.94); }
.system-dialog { width: min(calc(100% - 32px), 440px); max-height: calc(100dvh - 32px); margin: auto; padding: 26px; overflow-y: auto; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); color: var(--text); box-shadow: 0 26px 75px rgba(20, 29, 43, .22); }
.system-dialog:not([open]) { display: none; }
.system-dialog::backdrop { background: rgba(26, 34, 46, .48); backdrop-filter: blur(4px); }
.system-dialog-icon { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 18px; border-radius: 13px; background: var(--blue-soft); color: var(--blue); font-size: 21px; font-weight: 750; }
.system-dialog[data-tone="danger"] .system-dialog-icon { background: #fff1ef; color: #bd5a56; }
.system-dialog .eyebrow { font-size: 9px; }
.system-dialog h2 { margin: 7px 0 10px; font-size: 20px; letter-spacing: -.5px; line-height: 1.25; }
.system-dialog p { margin: 0; color: #667180; font-size: 13px; line-height: 1.65; overflow-wrap: anywhere; }
.system-dialog-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 9px; margin-top: 26px; }
.system-dialog[data-tone="danger"] #system-dialog-confirm { border-color: #b94f4d; background: #b94f4d; }
.system-dialog[data-tone="danger"] #system-dialog-confirm:hover { border-color: #a43f3d; background: #a43f3d; }
body:has(.system-dialog[open]) { overflow: hidden; }
@media (max-width: 440px) {
  .system-dialog { padding: 21px; }
  .system-dialog-actions .btn { flex: 1 1 120px; }
}

@media (max-width: 1080px) {
  .sidebar { width: 224px; flex-basis: 224px; }
  .view { padding: 20px 26px 55px; }
  .topbar { padding: 0 26px; }
  .topbar-subtitle { display: none; }
  .agent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .bottom-grid { grid-template-columns: 1fr; }
  .hero-logo { margin-right: 2%; }
  .flows-layout { grid-template-columns: minmax(200px, 230px) minmax(0, 1fr); }
  .gmail-steps { grid-template-columns: 1fr; }
}
@media (min-width: 741px) {
  .sidebar-collapsed .sidebar { width: 76px; flex-basis: 76px; padding: 28px 10px 18px; }
  .sidebar-collapsed .brand { justify-content: center; padding: 4px 0 43px; }
  .sidebar-collapsed .brand-copy, .sidebar-collapsed .sidebar-label, .sidebar-collapsed .sidebar-footer { display: none; }
  .sidebar-collapsed .sidebar nav:nth-of-type(2) { margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--line); }
  .sidebar-collapsed .nav-item { justify-content: center; min-height: 44px; padding: 10px; gap: 0; font-size: 0; }
  .sidebar-collapsed .nav-count, .sidebar-collapsed .sidebar-status-copy { display: none; }
  .sidebar-collapsed .sidebar-status { width: 46px; height: 46px; justify-content: center; margin: 0 auto; padding: 0; border-radius: 15px; }
}
@media (max-width: 740px) {
  .app-shell { display: block; }
  .calendar-toggle, .notification-toggle, .whatsapp-peek-toggle, .mail-peek-toggle { width: 35px; height: 35px; flex-basis: 35px; }
  .notifications-popover { top: 61px; right: 12px; width: calc(100vw - 24px); max-height: calc(100dvh - 145px); }
  .whatsapp-peek-panel { top: 61px; right: 12px; width: calc(100vw - 24px); height: calc(100dvh - 145px); }
  .team-notifications-popover { top: 60px; }
  .calendar-popover { top: 61px; right: 12px; width: calc(100vw - 24px); height: calc(100dvh - 145px); }
  .calendar-popover.is-chat { width: calc(100vw - 24px); height: min(565px, calc(100dvh - 145px)); }
  .calendar-content { display: block; overflow-y: auto; }
  .calendar-month-pane { overflow: visible; padding: 14px 13px 16px; }
  .calendar-agenda-pane { overflow: visible; padding: 3px 14px 18px; border-top: 1px solid var(--line); border-left: 0; background: #fff; }
  .calendar-toolbar > strong { font-size: 15px; }
  .calendar-grid { flex: none; grid-auto-rows: minmax(54px, 1fr); }
  .calendar-day { gap: 1px; padding: 4px; }
  .calendar-day-number { width: 21px; height: 21px; flex-basis: 21px; font-size: 10px; }
  .calendar-day-items { display: none; }
  .calendar-day-count { display: inline-flex; width: fit-content; min-width: 17px; height: 16px; align-items: center; justify-content: center; padding: 0 4px; border-radius: 6px; background: #e8f2ff; color: #216ca5; font-size: 9px; font-weight: 750; }
  .calendar-footer { padding: 9px 13px; }
  .calendar-add { width: 100%; }
  .sidebar { position: fixed; top: auto; bottom: 9px; left: 10px; right: 10px; z-index: 12; width: auto; height: 63px; padding: 5px; border: 1px solid #e8e9ed; border-radius: 21px; box-shadow: 0 12px 35px rgba(30,42,60,.13); }
  .sidebar .brand, .sidebar-label, .sidebar-spacer, .sidebar-status, .sidebar-footer, .sidebar nav:nth-of-type(2) { display: none; }
  .sidebar nav:first-of-type { display: flex; justify-content: space-around; align-items: center; width: 100%; height: 100%; gap: 2px; }
  .nav-item { flex: 1; flex-direction: column; gap: 2px; justify-content: center; width: auto; min-width: 0; min-height: 49px; padding: 5px 2px; font-size: 8px; }
  .nav-item[data-page="chat"] { font-size: 0; }
  .nav-item[data-page="chat"]::after { content: 'Chats'; font-size: 8px; }
 .nav-item[data-page="productividad"] { font-size:0; }
 .nav-item[data-page="productividad"]::after { content:'Avances'; font-size:8px; }
  .nav-icon { width: 19px; }
  .nav-count { display: none; }
  .topbar { height: 60px; padding: 0 15px; }
  .topbar-left { gap: 0; }
  .sidebar-toggle, .topbar-eyebrow { display: none; }
  .topbar-title { font-size: 16px; }
  .message { max-width: 96%; }
  .collection-chat-report-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .collection-chat-bar-row { grid-template-columns: 92px minmax(70px,1fr) 24px; }
  .topbar-right { gap: 8px; margin-left: 10px; }
  .topbar-actions .btn { width: 35px; height: 35px; min-height: 35px; padding: 0; font-size: 0; }
  .topbar-actions .btn::after { content: attr(data-mobile-icon); font-size: 18px; font-weight: 600; line-height: 1; }
  .local-pill { width: 27px; height: 27px; justify-content: center; padding: 0; }
  .local-pill .local-pill-text, .topbar .avatar { display: none; }
  .view { padding: 16px 15px 103px; }
  .hero { min-height: 235px; padding: 27px; }
  .hero-logo { display: none; }
  .hero h2 { font-size: 31px; }
  .agent-grid, .integration-grid, .columns, .image-workspace, .form-grid, .memory-layout, .settings-service-grid, .whatsapp-lines-grid { grid-template-columns: 1fr; }
  .behavior-grid, .behavior-fields, .behavior-limits { grid-template-columns: 1fr; }
  .behavior-fields .field:last-child, .behavior-escalate { grid-column: auto; }
  .behavior-actions { align-items: stretch; flex-direction: column; }
  .behavior-actions .btn { width: 100%; }
  .whatsapp-lines { padding: 19px; }
  .whatsapp-lines-head { flex-direction: column; }
  .whatsapp-add { flex-direction: column; align-items: stretch; }
  .whatsapp-add .field { width: 100%; }
  .whatsapp-add .btn { margin-bottom: 0; }
  .whatsapp-layout { grid-template-columns: 1fr; height: auto; min-height: 0; }
  .gmail-layout { grid-template-columns: 1fr; height: auto; min-height: 0; }
  .gmail-list { min-height: 230px; max-height: 360px; }
  .gmail-detail { min-height: 420px; }
  .gmail-detail-head, .gmail-detail-body { padding-left: 20px; padding-right: 20px; }
  .gmail-agent-form { flex-direction: column; align-items: stretch; padding: 16px 20px 20px; }
  .gmail-agent-form .field { flex-basis: auto; }
  .gmail-agent-form .btn { width: 100%; }
  .gmail-send-authorization { order: 0; }
  .message { max-width: 100%; }
  .email-draft-actions .btn { flex: 1 1 140px; }
  .gmail-connection { padding: 19px; }
  .gmail-connection .panel-header { flex-direction: column; gap: 10px; }
  .whatsapp-rail { min-height: 300px; max-height: 480px; }
  .whatsapp-thread { min-height: 400px; }
  .whatsapp-layout.is-empty .whatsapp-rail { min-height: 155px; max-height: 155px; }
  .whatsapp-layout.is-empty .whatsapp-thread { display: none; }
  .whatsapp-layout.has-selection .whatsapp-rail { display: none; }
  .whatsapp-back { display: inline-flex; padding: 6px 10px; }
  .whatsapp-assignments { padding: 19px; }
  .whatsapp-assignments .panel-header { align-items: flex-start; flex-direction: column; gap: 12px; }
  .whatsapp-agent-form { grid-template-columns: 1fr auto; }
  .whatsapp-agent-form > div:first-child { grid-column: 1 / -1; padding-top: 0; }
  .whatsapp-profile-grid { grid-template-columns: 1fr; }
  .whatsapp-group-row { align-items: flex-start; flex-direction: column; }
  .whatsapp-composer > div { align-items: stretch; flex-direction: column; }
  .whatsapp-auto-row { align-items: flex-start; flex-direction: column; gap: 10px; }
  .whatsapp-advisors { padding: 19px; }
  .budibase-setup { padding: 19px; }
  .budibase-setup-form { grid-template-columns: 1fr; }
  .whatsapp-advisor-form { grid-template-columns: 1fr; }
  .whatsapp-digest { padding: 19px; }
  .whatsapp-digest-form { grid-template-columns: 1fr; }
  .flows-layout { grid-template-columns: 1fr; }
  .flows-list { position: static; }
  .flows-list-scroll { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; max-height: none; overflow: visible; padding: 0 8px 9px; }
  .flow-list-item { min-width: 0; }
  .flow-list-arrow { display: none; }
  .flow-key-card { display: block; }
  .flow-key-icon { margin-bottom: 14px; }
  .flow-key-form { flex-direction: column; align-items: stretch; }
  .flow-editor { padding: 17px; }
  .flow-editor-head { align-items: flex-start; flex-direction: column; gap: 9px; }
  .flow-editor-head .badge { margin: 0; }
  .flow-param-grid { grid-template-columns: 1fr; }
  .flows-workspace, .flows-empty { min-height: 420px; }
  .settings-panel { padding: 19px; }
  .settings-panel-head { align-items: flex-start; }
  .settings-actions { flex-direction: column; align-items: stretch; }
  .settings-actions .btn { width: 100%; }
  .view.chat-view { padding: 0 12px 86px; }
  .chat-layout, .chat-layout.is-rail-collapsed { display: block; min-height: 0; height: calc(100dvh - 146px); }
  .chat-rail { display: none; }
  .chat-mobile-toggle { display: grid; }
  .chat-main { height: calc(100% - 10px); margin: 10px 0 0; }
  .is-mobile-rail-open .chat-rail-scrim { position: fixed; inset: 60px 0 72px; z-index: 13; display: block; width: 100%; padding: 0; border: 0; background: rgba(26, 34, 46, .35); }
  .is-mobile-rail-open .chat-rail { position: fixed; top: 60px; bottom: 72px; left: 0; z-index: 14; display: flex; align-items: stretch; width: min(310px, calc(100vw - 54px)); padding: 14px 11px 18px; border-left: 0; border-radius: 0 19px 19px 0; box-shadow: 12px 0 36px rgba(28, 43, 63, .16); }
  .is-mobile-rail-open .chat-rail-head { justify-content: space-between; margin: 0 2px 14px; }
  .is-mobile-rail-open .chat-rail-title, .is-mobile-rail-open .chat-new-label, .is-mobile-rail-open .rail-heading, .is-mobile-rail-open .conversation-item-label { display: block; }
  .is-mobile-rail-open .chat-new-button { width: 100%; min-height: 38px; margin-bottom: 24px; }
  .is-mobile-rail-open .conversation-item { justify-content: flex-start; min-height: 0; padding: 10px; }
  .chat-body { padding: 18px 14px; }
  .message { max-width: 96%; }
  .chat-top { padding: 12px; }
  .chat-agent-label small { max-width: 180px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
  .chat-compose { padding: 12px; }
}
@media (max-width: 390px) {
  .quick-chat-mark { display: none; }
  .quick-chat-head { gap: 6px; padding-inline: 10px; }
  .quick-chat-training-button { width: 31px; padding: 0; }
  .quick-chat-training-button span { display: none; }
}
@media (max-width: 440px) {
  .chat-agent-label small { max-width: 125px; }
  .agent-menu-trigger { width: 38px; padding: 0; }
  .agent-menu-trigger span, .agent-menu-trigger .agent-menu-chevron { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* Reportería de cobranza */
.reporting-page { display:grid;gap:18px;min-width:0; }
.reporting-page>* { min-width:0; }
.reporting-empty { min-height:180px;display:grid;place-items:center;color:var(--muted);text-align:center; }
.reporting-toolbar { display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:14px 16px; }
.reporting-filter-block { display:grid;gap:7px;min-width:0; }
.reporting-filter-navigation { justify-items:end; }
.reporting-filter-label { display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.03em;text-transform:uppercase; }
.reporting-filter-label i { display:grid;width:20px;height:20px;place-items:center;border-radius:7px;background:var(--blue-soft);color:var(--blue);font-size:9px; }
.reporting-view-tabs { display:flex;gap:5px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft); }
.reporting-view-tabs button { display:flex;min-height:38px;min-width:90px;align-items:center;justify-content:center;gap:7px;padding:8px 13px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-size:10px;font-weight:720;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease; }
.reporting-view-tabs button i { width:17px;color:inherit;font-size:13px;text-align:center; }
.reporting-view-tabs button:hover { border-color:var(--line);background:var(--surface);color:var(--text); }
.reporting-view-tabs button[aria-selected="true"] { border-color:#c9ddf5;background:var(--surface);color:var(--blue);box-shadow:0 4px 14px rgba(38,93,151,.1); }
.reporting-period { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.reporting-period .input { width:145px;min-height:38px;padding:8px 10px; }
.reporting-type-filter { display:grid;grid-template-columns:minmax(210px,.42fr) minmax(0,1.58fr);align-items:stretch;gap:18px;padding:16px; }
.reporting-type-heading { display:grid;align-content:center;gap:9px;padding:3px 5px; }
.reporting-type-heading h2 { margin:0;color:var(--text);font-size:15px;line-height:1.25; }
.reporting-type-heading p { margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5; }
.reporting-type-options { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.reporting-type-option { position:relative;display:grid;grid-template-columns:39px minmax(0,1fr);align-items:center;gap:11px;min-width:0;min-height:94px;padding:13px 38px 13px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,translate .16s ease; }
.reporting-type-option:hover { border-color:#bdd8f5;background:#fafdff;translate:0 -1px;box-shadow:0 8px 20px rgba(32,83,135,.08); }
.reporting-type-option:focus-visible { outline:3px solid rgba(26,126,224,.2);outline-offset:2px; }
.reporting-type-option:disabled { cursor:wait;opacity:.7;translate:0;box-shadow:none; }
.reporting-type-option[aria-pressed="true"] { border-color:#83baf3;background:#f3f9ff;box-shadow:0 0 0 2px rgba(39,139,235,.08),0 8px 20px rgba(32,83,135,.08); }
.reporting-type-icon { display:grid;width:39px;height:39px;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue); }
.reporting-type-option[data-report-type="collection"] .reporting-type-icon { background:#e8f8ef;color:#159b55; }
.reporting-type-option[data-report-type="renewal"] .reporting-type-icon { background:#f1edff;color:#7658cc; }
.reporting-type-copy { display:block;min-width:0; }
.reporting-type-title { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.reporting-type-title strong { overflow:hidden;font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap; }
.reporting-type-title em { flex:0 0 auto;color:var(--muted);font-size:9px;font-style:normal;font-weight:700; }
.reporting-type-copy>small { display:block;margin-top:3px;overflow:hidden;color:var(--muted);font-size:8px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap; }
.reporting-type-counts { display:flex;align-items:center;gap:6px;margin-top:9px;flex-wrap:wrap; }
.reporting-type-counts>span { display:inline-flex;align-items:center;gap:3px;padding:3px 6px;border:1px solid #dfe8f2;border-radius:99px;background:var(--surface);color:var(--muted);font-size:8px;line-height:1.2; }
.reporting-type-counts b { color:var(--text);font-size:9px; }
.reporting-type-check { position:absolute;top:12px;right:12px;color:var(--blue);font-size:13px;opacity:0;transform:scale(.7);transition:opacity .16s ease,transform .16s ease; }
.reporting-type-option[aria-pressed="true"] .reporting-type-check { opacity:1;transform:scale(1); }
.reporting-caption { display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px; }
.reporting-caption>span:first-child { color:var(--text);font-weight:730;text-transform:capitalize; }
.reporting-sync { gap:6px;min-height:26px; }
.reporting-sync.is-syncing { border:1px solid #cfe1f6;background:var(--blue-soft);color:var(--blue); }
.reporting-sync.is-syncing i { animation:reporting-spin .9s linear infinite; }
.reporting-sync.is-warning { border:1px solid #f0dfaa;background:#fff8df;color:#9b7000; }
.reporting-sync.is-error { border:1px solid #f0c9ce;background:#fff0f1;color:#ad3342; }
@keyframes reporting-spin { to { transform:rotate(360deg); } }
.reporting-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px; }
.reporting-summary-card { display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:15px;min-height:110px;padding:18px 20px; }
.reporting-card-icon { display:grid;width:52px;height:52px;place-items:center;border:1px solid #d9e7f7;border-radius:15px;background:var(--blue-soft);color:var(--blue); }
.reporting-card-icon>i { display:grid;width:100%;height:100%;place-items:center;font-size:19px;line-height:1; }
.reporting-summary-card.collected .reporting-card-icon { border-color:#d1efdf;background:#e9f8f0;color:#159a55; }
.reporting-summary-card.percent .reporting-card-icon { border-color:#f5e7b9;background:#fff8df;color:#d39a00; }
.reporting-summary-card.hourly .reporting-card-icon { border-color:#e2d9fb;background:#f1edff;color:#7658cc; }
.reporting-summary-card>div { min-width:0; }
.reporting-summary-card>div small,.reporting-summary-card>div span { display:block;color:var(--muted);font-size:10px;line-height:1.45; }
.reporting-summary-card strong { display:block;margin:3px 0;color:var(--text);font-size:22px;letter-spacing:-.45px;line-height:1.2;overflow-wrap:anywhere; }
.reporting-daily { padding:20px; }
.reporting-daily .panel-header { align-items:flex-start;gap:14px;margin-bottom:17px; }
.reporting-scale { display:flex;align-items:center;justify-content:flex-end;gap:13px;flex-wrap:wrap;color:var(--muted);font-size:9px; }
.reporting-scale span { display:inline-flex;align-items:center;gap:5px; }
.reporting-scale span::before { content:'';width:8px;height:8px;border-radius:50%;background:#cfd7e2; }
.reporting-scale .good::before { background:#23ad65; }.reporting-scale .medium::before { background:#f2b91f; }.reporting-scale .low::before { background:#ee4650; }
.reporting-days { display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;overflow-x:auto;padding:1px 1px 7px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.reporting-days.is-day { grid-template-columns:minmax(270px,420px);justify-content:start;overflow:visible; }
.reporting-days.is-month { grid-template-columns:repeat(7,minmax(135px,1fr));overflow:visible; }
.reporting-days.is-month .reporting-day { min-width:0;padding:12px; }
.reporting-days.is-month .reporting-day header { margin-bottom:12px; }
.reporting-days.is-month .reporting-day dl { gap:8px; }
.reporting-day { min-width:150px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface); }
.reporting-day.is-today { border-color:#92bff6;box-shadow:0 0 0 2px var(--blue-soft); }
.reporting-day.is-future { opacity:.68; }
.reporting-day header { display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:16px;text-transform:capitalize; }
.reporting-day header strong,.reporting-day header span { display:block; }
.reporting-day header strong { font-size:12px; }.reporting-day header span { margin-top:3px;color:var(--muted);font-size:9px; }
.reporting-day header em { padding:3px 7px;border-radius:99px;background:var(--blue-soft);color:var(--blue);font-size:8px;font-style:normal;font-weight:750; }
.reporting-day dl { display:grid;gap:11px;margin:0; }
.reporting-day dl>div { min-width:0; }
.reporting-day dt { color:var(--muted);font-size:9px; }.reporting-day dd { margin:3px 0 0;color:var(--text);font-size:12px;font-weight:740;overflow-wrap:anywhere; }
.reporting-target-breakdown { display:block;margin-top:4px;color:var(--muted);font-size:9px;font-weight:500;line-height:1.35; }
.reporting-target-notice { display:flex;align-items:flex-start;gap:9px;line-height:1.5; }
.reporting-target-notice i { margin-top:2px;color:var(--blue); }
.reporting-progress { display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:7px;margin-top:15px; }
.reporting-progress-track { height:9px;overflow:hidden;border-radius:99px;background:#e8edf3; }
.reporting-progress-track i { display:block;height:100%;border-radius:inherit;background:#23ad65; }
.reporting-day.medium .reporting-progress-track i { background:#f2b91f; }.reporting-day.low .reporting-progress-track i { background:#ee4650; }
.reporting-progress>strong { color:var(--text);font-size:9px;text-align:right; }
.reporting-day-detail { display:grid;gap:18px; }
.reporting-day-kpis { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.reporting-day-kpis>article { display:flex;align-items:center;gap:12px;padding:15px 17px; }
.reporting-mini-icon { display:grid;width:39px;height:39px;flex:0 0 39px;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue); }
.reporting-mini-icon>i { display:grid;width:100%;height:100%;place-items:center;font-size:14px;line-height:1; }
.reporting-day-kpis>article:nth-child(2) .reporting-mini-icon,.reporting-day-kpis>article:nth-child(3) .reporting-mini-icon { background:#e9f8f0;color:#19a35c; }
.reporting-day-kpis>article:nth-child(4) .reporting-mini-icon { background:#f1edff;color:#7c5ed7; }
.reporting-day-kpis article>div>small,.reporting-day-kpis article>div>span { display:block;color:var(--muted);font-size:9px;line-height:1.45; }
.reporting-day-kpis strong { display:block;margin:2px 0;color:var(--text);font-size:16px;overflow-wrap:anywhere; }
.reporting-day-analysis { display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:18px; }
.reporting-day-analysis>* { min-width:0; }
.reporting-hourly,.reporting-attribution,.reporting-payments { min-width:0;padding:20px; }
.reporting-hourly { overflow:hidden; }
.reporting-hour-chart { display:grid;width:100%;max-width:100%;grid-template-columns:repeat(var(--reporting-hour-count,14),minmax(48px,1fr));align-items:end;gap:7px;height:220px;margin-top:17px;padding:8px 4px 0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.reporting-hour { appearance:none;display:grid;height:100%;min-width:0;grid-template-rows:20px minmax(0,1fr) 18px 17px;align-items:end;gap:2px;padding:0 2px;border:0;border-radius:8px 8px 0 0;background:transparent;color:inherit;font:inherit;text-align:center;cursor:pointer;transition:background .16s ease,box-shadow .16s ease; }
.reporting-hour:disabled { cursor:default;opacity:.72; }
.reporting-hour:not(:disabled):hover { background:#f5faff; }
.reporting-hour:focus-visible { outline:3px solid rgba(26,126,224,.22);outline-offset:1px; }
.reporting-hour.is-selected { background:#eef7ff;box-shadow:inset 0 0 0 1px #b8d8f8; }
.reporting-hour-amount { align-self:center;color:#159b55;font-size:8px;font-weight:760;letter-spacing:-.15px;line-height:1;white-space:nowrap; }
.reporting-hour-track { display:flex;width:100%;height:100%;align-items:flex-end;justify-content:center;border-radius:7px 7px 2px 2px;background:linear-gradient(180deg,transparent 0,#f4f7fa 100%);overflow:hidden; }
.reporting-hour-track i { display:block;width:min(24px,70%);min-height:0;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#43c47c,#1ca45e);transition:height .18s ease; }
.reporting-hour>strong { min-height:14px;color:var(--text);font-size:8px;white-space:nowrap; }.reporting-hour>small { color:var(--muted);font-size:8px; }
.reporting-hour-detail { margin-top:16px;overflow:hidden;border:1px solid #cfe1f5;border-radius:14px;background:#f7fbff;box-shadow:0 8px 24px rgba(30,83,137,.07); }
.reporting-hour-detail:focus { outline:0; }
.reporting-hour-detail>header { display:grid;grid-template-columns:minmax(0,1fr) auto 34px;align-items:center;gap:14px;padding:13px 14px;border-bottom:1px solid #dceaf7;background:#f0f7ff; }
.reporting-hour-detail>header span { display:block;color:var(--blue);font-size:8px;font-weight:780;letter-spacing:.08em; }
.reporting-hour-detail>header h3 { margin:3px 0 0;color:var(--text);font-size:13px; }
.reporting-hour-detail>header>strong { color:#159b55;font-size:15px;white-space:nowrap; }
.reporting-hour-detail .calendar-icon-button { width:32px;height:32px;min-height:32px; }
.reporting-hour-clients { max-height:285px;overflow:auto;padding:0 14px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.reporting-hour-clients article { display:grid;grid-template-columns:minmax(180px,1fr) minmax(100px,.45fr) auto;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid #e1ebf5; }
.reporting-hour-clients article:last-child { border-bottom:0; }
.reporting-hour-clients article>div strong,.reporting-hour-clients article>div span { display:block; }
.reporting-hour-clients article>div strong { overflow:hidden;color:var(--text);font-size:10px;text-overflow:ellipsis;white-space:nowrap; }
.reporting-hour-clients article>div span,.reporting-hour-clients article>span { color:var(--muted);font-size:9px; }
.reporting-hour-clients article>span { display:grid;gap:2px; }
.reporting-hour-clients article>span b { color:var(--text);font-size:9px; }
.reporting-hour-clients article>strong { color:#159b55;font-size:11px;white-space:nowrap; }
.reporting-hour-note { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;color:var(--muted);font-size:9px; }
.reporting-hour-note span:first-child { display:flex;align-items:center;gap:6px; }.reporting-hour-note i { width:8px;height:8px;border-radius:3px;background:#22ad65; }
.reporting-attribution-list { display:grid;gap:17px;margin-top:18px; }
.reporting-attribution-list>div header { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px; }
.reporting-attribution-list header strong { color:var(--text);font-size:11px; }.reporting-attribution-list header span { color:var(--muted);font-size:9px;text-align:right; }
.reporting-attribution-track { display:block;height:8px;overflow:hidden;border-radius:99px;background:#e8edf3; }.reporting-attribution-track i { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1ea961,#46c982); }
.reporting-payments .panel-header { align-items:flex-end;gap:18px;margin-bottom:12px; }
.reporting-payment-search { position:relative;display:block;min-width:230px; }
.reporting-payment-search>i { position:absolute;z-index:1;top:50%;left:12px;translate:0 -50%;color:var(--muted);font-size:11px; }
.reporting-payment-search .input { min-height:38px;padding-left:32px; }
.reporting-payment-count { margin:0 -20px;padding:10px 20px;border-block:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:9px; }
.reporting-payments-table { max-height:470px;margin:0 -20px -20px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.reporting-payments-table .data-table { min-width:880px; }
.reporting-payments-table th { position:sticky;z-index:1;top:0;background:var(--surface); }
.reporting-payments-table td { padding-block:12px;vertical-align:middle; }
.reporting-payments-table td:first-child { padding-left:20px; }.reporting-payments-table th:first-child { padding-left:20px; }
.reporting-payments-table td small { display:block;margin-top:4px;color:var(--muted);font-size:9px; }
@media (max-width:650px) {
  .reporting-payments-table .due-today-table { min-width:0; }
  .due-today-table thead { display:none; }
  .due-today-table tbody tr { display:block;padding:12px 15px;border-bottom:1px solid var(--line); }
  .reporting-payments-table .due-today-table td { display:block;padding:4px 0;border:0; }
  .due-today-table td[data-label]:not(:first-child)::before { content:attr(data-label);display:block;margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.04em;text-transform:uppercase; }
  .reporting-payments-table .due-today-table td small { font-size:10px; }
}
.reporting-payment-amount strong { color:#159b55;white-space:nowrap; }
.reporting-bottom { display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px; }
.reporting-distribution,.reporting-insight { padding:20px; }
.reporting-pie-layout { display:grid;grid-template-columns:minmax(210px,.8fr) minmax(260px,1.2fr);align-items:center;gap:28px;min-height:250px; }
.reporting-pie { display:grid;width:min(215px,75%);aspect-ratio:1;place-items:center;justify-self:center;border-radius:50%;background:conic-gradient(#22ad65 0 var(--reporting-angle),#e33c47 var(--reporting-angle) 360deg);box-shadow:0 14px 35px rgba(24,54,80,.08),inset 0 0 0 1px rgba(16,35,54,.05); }
.reporting-pie.is-provisional { background:conic-gradient(#22ad65 0 var(--reporting-angle),#e9b75b var(--reporting-angle) 360deg); }
.reporting-pie.is-incomplete { background:var(--line-strong); }
.reporting-pie::before { content:'';grid-area:1/1;width:56%;aspect-ratio:1;border-radius:50%;background:var(--surface); }
.reporting-pie>span { grid-area:1/1;z-index:1;display:grid;text-align:center; }
.reporting-pie strong { color:var(--text);font-size:29px; }.reporting-pie small { color:var(--muted);font-size:10px; }
.reporting-legend { display:grid;gap:0;margin:0; }
.reporting-legend>div { display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.8fr);align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--line); }
.reporting-legend dt { display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px; }.reporting-legend dt i { width:13px;height:13px;border-radius:50%;background:#22ad65; }.reporting-legend dt i.missing { background:#e33c47; }
.reporting-pie.is-provisional + .reporting-legend dt i.missing { background:#e9b75b; }
.reporting-legend dd { display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px;margin:0;text-align:right; }.reporting-legend dd strong { color:var(--text);font-size:13px; }.reporting-legend dd span { color:var(--muted);font-size:10px; }
.reporting-legend .total { border-bottom:0; }.reporting-legend .total dt { color:var(--text);font-weight:720; }
.reporting-insight ul { display:grid;gap:14px;margin:20px 0;padding:0;list-style:none; }
.reporting-insight li { display:flex;align-items:flex-start;gap:12px; }
.reporting-insight li>i { display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;border-radius:12px;background:#e9f8f0;color:#19a35c; }
.reporting-insight li.low>i { background:#f1f3f6;color:#697687; }.reporting-insight li.hint>i { background:#fff7da;color:#d8a000; }
.reporting-insight li strong,.reporting-insight li small { display:block; }.reporting-insight li strong { font-size:11px; }.reporting-insight li small { margin-top:3px;color:var(--muted);font-size:10px;line-height:1.55; }
.reporting-insight>p { margin:20px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:9px;line-height:1.6; }

@media (max-width:1200px) { .reporting-summary,.reporting-day-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.reporting-bottom,.reporting-day-analysis { grid-template-columns:1fr; }.reporting-type-filter { grid-template-columns:1fr; }.reporting-type-heading { grid-template-columns:auto minmax(0,1fr);align-items:start; }.reporting-type-heading .reporting-filter-label { grid-row:1 / span 2;align-self:start; }.reporting-type-heading>div { min-width:0; } }
@media (max-width:740px) {
  .sidebar nav:first-of-type { justify-content:flex-start;overflow-x:auto;scrollbar-width:none; }
  .sidebar nav:first-of-type::-webkit-scrollbar { display:none; }
  .nav-item { flex:0 0 58px; }
  .nav-item[data-page="reporteria"] { font-size:0; }
  .nav-item[data-page="reporteria"]::after { content:'Reportes';font-size:8px; }
  .reporting-toolbar { align-items:stretch;flex-direction:column; }
  .reporting-filter-navigation { justify-items:stretch; }
  .reporting-view-tabs { width:100%; }
  .reporting-view-tabs button { min-width:0;flex:1; }
  .reporting-period { justify-content:flex-start; }
  .reporting-type-filter { gap:13px;padding:14px; }
  .reporting-type-heading { display:grid;grid-template-columns:1fr;padding:0; }
  .reporting-type-heading .reporting-filter-label { grid-row:auto; }
  .reporting-type-options { grid-template-columns:1fr; }
  .reporting-type-option { min-height:82px; }
  .reporting-summary { grid-template-columns:1fr 1fr;gap:10px; }
  .reporting-summary-card { grid-template-columns:42px minmax(0,1fr);min-height:94px;padding:14px; }
  .reporting-card-icon { width:42px;height:42px; }
  .reporting-card-icon>i { font-size:16px; }
  .reporting-summary-card strong { font-size:16px; }
  .reporting-daily,.reporting-distribution,.reporting-insight { padding:15px; }
  .reporting-daily .panel-header { display:grid; }
  .reporting-scale { justify-content:flex-start; }
  .reporting-days.is-month { grid-template-columns:repeat(2,minmax(145px,1fr)); }
  .reporting-pie-layout { grid-template-columns:1fr;gap:12px; }
  .reporting-pie { width:180px; }
  .reporting-hour-chart { gap:4px;height:205px;overflow-x:auto; }
  .reporting-hour { min-width:62px; }
  .reporting-hour-detail>header { grid-template-columns:minmax(0,1fr) auto 32px;gap:9px; }
  .reporting-hour-clients article { grid-template-columns:minmax(130px,1fr) auto;gap:8px; }
  .reporting-hour-clients article>span { display:none; }
  .reporting-payments .panel-header { align-items:stretch;display:grid; }
  .reporting-payment-search { min-width:0; }
  .collection-chat-money { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .collection-chat-week { grid-template-columns:1fr; }
  .collection-chat-pie { justify-self:center; }
}
@media (max-width:430px) { .reporting-summary,.reporting-day-kpis { grid-template-columns:1fr; }.reporting-period .input { width:130px; }.reporting-period .btn { width:100%; }.reporting-legend>div { grid-template-columns:1fr; }.reporting-legend dd { text-align:left; }.reporting-days.is-month { grid-template-columns:1fr; }.reporting-view-tabs button { padding-inline:8px; }.reporting-view-tabs button i { font-size:12px; }.reporting-type-option { grid-template-columns:34px minmax(0,1fr);padding-left:10px; }.reporting-type-icon { width:34px;height:34px; }.reporting-type-counts { gap:4px; }.reporting-hourly,.reporting-attribution,.reporting-payments { padding:15px; }.reporting-payment-count { margin-inline:-15px;padding-inline:15px; }.reporting-payments-table { margin-inline:-15px;margin-bottom:-15px; } }

/* Portal privado del equipo: comparte las superficies, controles y colores de Vito. */
.team-body { min-height: 100dvh; }
.team-start-shell { min-height: 100dvh; display: grid; grid-template-columns: 76px minmax(0, 1fr); grid-template-rows: 74px minmax(0, 1fr); overflow-x: hidden; background: radial-gradient(circle at 78% 0, #eef6ff 0, transparent 38%), var(--bg); color: var(--text); }
.team-start-sidebar { grid-row: 1 / -1; display: flex; flex-direction: column; align-items: center; gap: 34px; padding: 16px 10px; border-right: 1px solid var(--line); background: rgba(255,255,255,.88); }
.team-start-brand { display: flex; align-items: center; justify-content: center; width: 100%; }
.team-start-brand .brand-mark { flex: 0 0 42px; }
.team-start-brand .is-brand { display: none; }
.team-start-nav { display: grid; gap: 14px; }
.team-skeleton-pill { width: 42px; height: 42px; border-radius: 13px; }
.team-skeleton-pill.is-active { box-shadow: inset 3px 0 0 #3695f5; }
.team-start-topbar { grid-column: 2; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 13px 30px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.82); backdrop-filter: blur(20px); }
.team-start-topbar > div:first-child { display: grid; gap: 8px; }
.team-start-tools { display: flex; align-items: center; gap: 10px; }
.team-start-tools > span { width: 38px; height: 38px; border-radius: 50%; }
.team-start-tools .is-avatar { margin-left: 5px; background: #dce3eb; }
.team-start-main { grid-column: 2; width: 100%; min-width: 0; overflow: hidden; padding: 28px 30px 42px; }
.team-start-status { width: min(100%, 1500px); margin: 0 auto 22px; padding: 18px 22px; border: 1px solid #dfe7f0; border-radius: 20px; background: rgba(255,255,255,.94); box-shadow: 0 12px 34px rgba(46,72,103,.07); }
.team-start-status-copy { display: flex; align-items: center; gap: 13px; }
.team-start-status-copy .brand-mark { width: 40px; height: 40px; flex-basis: 40px; }
.team-start-status h1 { margin: 0 0 4px; font-size: 16px; letter-spacing: -.35px; }
.team-start-status p { margin: 0; color: var(--muted); font-size: 11px; }
.team-start-progress { height: 4px; margin-top: 16px; overflow: hidden; border-radius: 99px; background: #eaf1f8; }
.team-start-progress > span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#63b7ff,#087cf0); animation: team-start-progress 1.45s ease-in-out infinite; }
.team-start-status .btn { margin-top: 16px; }
.team-start-workspace { display: grid; grid-template-columns: minmax(210px, .72fr) minmax(430px, 1.55fr) minmax(260px, .9fr); gap: 14px; width: min(100%, 1500px); max-width: 100%; min-height: min(610px, calc(100dvh - 200px)); margin: 0 auto; }
.team-start-column { min-width: 0; padding: 20px; overflow: hidden; border: 1px solid #e1e7ee; border-radius: 20px; background: rgba(255,255,255,.86); box-shadow: 0 10px 30px rgba(55,74,96,.05); }
.team-start-column-head, .team-start-chat-head, .team-start-detail-head { display: flex; align-items: center; gap: 10px; }
.team-start-column-head { justify-content: space-between; margin-bottom: 16px; }
.team-start-detail-head { margin-bottom: 26px; }
.team-start-chat-head { margin-bottom: 24px; }
.team-start-task, .team-start-action, .team-start-summary, .team-start-bubble { display: grid; gap: 11px; margin-top: 12px; padding: 17px; border: 1px solid #e7ebf0; border-radius: 15px; background: #fff; }
.team-start-task.is-selected { border-color: #b9dafe; background: #f6faff; }
.team-start-action { margin-top: 30px; padding: 24px; background: #eef6ff; border-color: #dceafa; }
.team-start-summary { margin-top: 18px; min-height: 180px; align-content: start; }
.team-start-bubble { margin: 0 0 22px 28px; padding: 20px; background: #f8fafc; }
.team-skeleton-line, .team-skeleton-pill, .team-start-tools > span, .team-skeleton-count, .team-skeleton-circle { position: relative; display: block; overflow: hidden; background: #e9eef4; }
.team-skeleton-line::after, .team-skeleton-pill::after, .team-start-tools > span::after, .team-skeleton-count::after, .team-skeleton-circle::after { content: ''; position: absolute; inset: 0; transform: translateX(-110%); background: linear-gradient(90deg, transparent, rgba(255,255,255,.82), transparent); animation: team-skeleton-shimmer 1.45s ease-in-out infinite; }
.team-skeleton-line { width: 100%; height: 10px; border-radius: 99px; }
.team-skeleton-line.is-eyebrow { width: 88px; height: 7px; }
.team-skeleton-line.is-title { width: 155px; height: 17px; }
.team-skeleton-line.is-heading { width: 118px; height: 14px; }
.team-skeleton-line.is-search { height: 38px; margin-bottom: 18px; border-radius: 12px; }
.team-skeleton-line.is-short { width: 34%; height: 8px; }
.team-skeleton-line.is-medium { width: 62%; }
.team-skeleton-line.is-wide { width: 86%; }
.team-skeleton-line.is-chip { width: 92px; height: 24px; }
.team-skeleton-line.is-detail-title { width: 72%; height: 22px; margin: 0 0 14px; }
.team-skeleton-line.is-detail-subtitle { width: 54%; }
.team-skeleton-line.is-compose { height: 62px; margin-top: auto; border-radius: 14px; }
.team-skeleton-count { width: 28px; height: 24px; border-radius: 9px; }
.team-skeleton-circle { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; }
.channel-skeleton { display: grid; gap: 9px; padding: 8px 4px; }
.channel-skeleton-row { display: flex; align-items: center; gap: 11px; min-height: 58px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.7); }
.channel-skeleton-row > span:last-child { display: grid; flex: 1; gap: 9px; min-width: 0; }
.vito-skeleton { display: grid; gap: 16px; min-width: 0; width: 100%; }
.vito-skeleton-block { display: grid; align-content: start; gap: 14px; min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: var(--surface); box-shadow: var(--shadow); }
.vito-skeleton-block > .team-skeleton-line { max-width: 100%; }
.vito-skeleton-toolbar { min-height: 76px; }
.vito-skeleton-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.vito-skeleton-card { min-height: 116px; }
.vito-skeleton-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.vito-skeleton-panel { min-height: 300px; }
.vito-skeleton-chart { display: block; width: min(190px, 52%); aspect-ratio: 1; margin: 22px auto 0; border: 16px solid #e9eef4; border-radius: 50%; opacity: .8; }
.vito-skeleton-table { min-height: 340px; }
.vito-skeleton-row { min-height: 48px; gap: 9px; padding: 10px 14px; border-radius: 12px; box-shadow: none; }
.vito-skeleton.is-list { gap: 9px; }
@media (max-width: 850px) { .vito-skeleton-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .vito-skeleton-columns { grid-template-columns: 1fr; } .vito-skeleton-panel { min-height: 220px; } }
@media (max-width: 480px) { .vito-skeleton-cards { gap: 9px; } .vito-skeleton-card { min-height: 95px; padding: 14px; } .vito-skeleton-block { padding: 15px; } }
.app-start-loading { display: grid; gap: 26px; min-height: min(680px, calc(100vh - 120px)); padding: clamp(22px, 4vw, 48px); }
.app-start-loading-head { display: grid; align-content: start; gap: 12px; max-width: 620px; }
.app-start-loading-grid { display: grid; grid-template-columns: minmax(240px, 34%) minmax(0, 1fr); gap: 22px; align-items: stretch; }
.app-start-loading-grid > div { display: grid; align-content: start; gap: 15px; padding: 20px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.72); }
.app-start-loading-detail .team-skeleton-line:not(:first-child) { margin-top: 12px; }
.team-start-column.is-chat { display: flex; flex-direction: column; }
.team-start-shell.is-failed { display: grid; place-items: center; grid-template-columns: 1fr; grid-template-rows: 1fr; padding: 26px; }
.team-start-shell.is-failed :is(.team-start-sidebar,.team-start-topbar,.team-start-workspace) { display: none; }
.team-start-shell.is-failed .team-start-main { grid-column: 1; padding: 0; }
.team-start-shell.is-failed .team-start-status { width: min(100%, 460px); margin: 0; padding: 30px; }
.team-start-shell.is-failed .team-start-progress { display: none; }
@keyframes team-skeleton-shimmer { to { transform: translateX(110%); } }
@keyframes team-start-progress { 0% { transform: translateX(-105%); } 55% { transform: translateX(92%); } 100% { transform: translateX(245%); } }
@media (max-width: 980px) {
  .team-start-workspace { grid-template-columns: minmax(190px,.72fr) minmax(390px,1.45fr); }
  .team-start-column.is-chat { display: none; }
}
@media (max-width: 650px) {
  .team-start-shell { grid-template-columns: 54px minmax(0,1fr); grid-template-rows: 122px minmax(0,1fr); }
  .team-start-sidebar { padding-inline: 6px; }
  .team-start-brand .brand-mark { width: 38px; height: 38px; flex-basis: 38px; }
  .team-skeleton-pill { width: 38px; height: 38px; }
  .team-start-topbar { position: relative; align-items: flex-start; min-width: 0; overflow: hidden; padding: 18px 14px; }
  .team-start-topbar > div:first-child { min-width: 0; }
  .team-start-tools { position: absolute; right: 14px; bottom: 18px; }
  .team-start-tools > span { width: 34px; height: 34px; }
  .team-start-tools > span:nth-child(3) { display: none; }
  .team-start-main { padding: 16px 12px 28px; }
  .team-start-status { padding: 16px; }
  .team-start-status-copy .brand-mark { display: none; }
  .team-start-workspace { grid-template-columns: 1fr; min-height: 560px; }
  .team-start-column.is-queue { display: none; }
  .team-start-column { padding: 16px; border-radius: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .team-skeleton-line::after, .team-skeleton-pill::after, .team-start-tools > span::after, .team-skeleton-count::after, .team-skeleton-circle::after, .team-start-progress > span { animation: none; }
  .team-start-progress > span { width: 68%; }
}
@media (max-width: 720px) {
  .app-start-loading { min-height: calc(100vh - 96px); padding: 18px; }
  .app-start-loading-grid { grid-template-columns: 1fr; }
  .app-start-loading-detail { display: none !important; }
}
.team-auth-wrap { min-height: 100dvh; display: grid; place-items: center; padding: 26px; background: radial-gradient(circle at 50% 0, #fff, var(--bg) 52%); }
#team-start-retry[hidden] { display: none; }
.team-auth { width: min(100%, 440px); padding: 34px; border-radius: 24px; }
.team-auth-brand, .team-brand { display: flex; align-items: center; gap: 11px; }
.team-auth-brand { margin-bottom: 42px; }
.team-auth-brand .brand-mark, .team-brand .brand-mark { padding: 0; width: 42px; height: 42px; flex: 0 0 42px; }
.team-auth-brand .brand-mark img, .team-brand .brand-mark img { width: 100%; height: 100%; object-fit: contain; transform: scale(1.23); }
.team-auth-brand strong, .team-brand strong { display: block; font-size: 20px; font-weight: 750; letter-spacing: -.8px; line-height: 1; }
.team-auth-brand small, .team-brand small { display: block; margin-top: 5px; color: #9aa2ad; font-size: 10px; }
.team-auth h1 { margin: 11px 0 7px; font-size: 28px; font-weight: 740; letter-spacing: -1.2px; }
.team-auth-form { display: grid; gap: 17px; margin-top: 26px; }
.team-auth-form .input { min-height: 44px; font-size: 14px; }
.team-auth-form .btn { min-height: 44px; margin-top: 7px; font-size: 13px; }
.team-error { color: #aa4145; }
.team-auth > .team-error { margin: 15px 0 0; font-size: 12px; }
.team-topbar { position: sticky; z-index: 10; top: 0; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.9); backdrop-filter: blur(22px) saturate(1.3); -webkit-backdrop-filter: blur(22px) saturate(1.3); }
.team-topbar-inner { width: 100%; min-height: 72px; display: flex; align-items: center; gap: 30px; margin: auto; padding: 0 36px; }
.team-brand { flex: 0 0 auto; min-width: 145px; }
.team-brand strong { font-size: 17px; }
.team-brand .brand-mark { width: 38px; height: 38px; flex-basis: 38px; }
.team-nav { display: flex; align-items: center; gap: 3px; flex: 1; overflow-x: auto; scrollbar-width: none; }
.team-nav::-webkit-scrollbar { display: none; }
.team-nav-item { min-height: 38px; flex: 0 0 auto; padding: 8px 13px; border: 0; border-radius: 11px; background: transparent; color: #727b88; font-size: 12px; font-weight: 650; }
.team-nav-item:hover { color: var(--text); background: #f2f5f9; }
.team-nav-item.active { color: var(--blue); background: var(--blue-soft); }
.team-account { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.team-account .btn { min-height: 34px; }
.team-person { display: grid; gap: 3px; text-align: right; }
.team-person strong { font-size: 11px; }
.team-person small { color: var(--muted); font-size: 10px; }
.team-person-button { border: 0; background: transparent; cursor: pointer; }
.team-person-button:hover strong, .team-person-button:focus-visible strong { color: var(--blue); }
.team-main { width: 100%; margin: auto; padding: 32px 36px 70px; }
.team-intro { margin: 0 0 25px; }
.team-intro h1, .team-section-head h1 { margin: 6px 0; font-size: clamp(24px,3vw,30px); letter-spacing: -1.1px; line-height: 1.2; }
.team-intro p, .team-section-head p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.team-section-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 22px; }
.team-stat-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.team-stat { display: grid; gap: 8px; min-height: 142px; text-align: left; transition: border-color .16s, transform .16s; }
.team-stat:hover { border-color: #c9d9ed; transform: translateY(-2px); }
.team-stat > span { color: #697380; font-size: 12px; font-weight: 650; }
.team-stat strong { font-size: 34px; line-height: 1; letter-spacing: -1.5px; }
.team-stat small { color: var(--blue); font-size: 11px; font-weight: 650; }
.team-summary-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 16px; margin-top: 17px; }
.team-list-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 0; border-top: 1px solid var(--line); }
.team-list-row:first-of-type { border-top: 0; }
.team-list-row > div:first-child { min-width: 0; }
.team-list-row strong { display: block; font-size: 12px; font-weight: 680; }
.team-list-row small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; line-height: 1.4; overflow-wrap: anywhere; }
.team-list-row > span:not(.badge) { flex: 0 0 auto; font-size: 12px; font-weight: 680; }
.team-empty { margin: 18px 0; color: #939ba6; font-size: 12px; text-align: center; }
.team-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.team-task, .team-contact { min-width: 0; }
.team-task-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.team-task-top small { color: var(--muted); font-size: 11px; }
.team-task h2, .team-contact h2 { margin: 19px 0 7px; font-size: 16px; letter-spacing: -.4px; }
.team-task p, .team-contact p { margin: 0; color: #697380; font-size: 12px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.team-task-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 22px; }
.team-task-actions .btn { min-height: 32px; padding: 6px 9px; font-size: 11px; }
.team-task .team-task-last-report { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); color: #4f6071; }
.team-task-last-report strong { color: var(--text); }
.team-task-last-report small { color: var(--muted); }
.team-report-dialog { width: min(calc(100% - 32px), 530px); }
.team-report-dialog .field { margin-top: 22px; }
.team-report-dialog .field textarea { min-height: 110px; }
.team-report-dialog .team-fieldset { margin-top: 20px; }
.team-report-error { margin-top: 14px !important; color: #a43f3d !important; }
.team-contact-info { display: grid; gap: 7px; margin-top: 18px; color: #687685; font-size: 11px; overflow-wrap: anywhere; }
.team-contact .team-note { margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--line); }
.team-line-list { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 16px; }
.team-line-chip { display: inline-flex; align-items: center; gap: 10px; min-height: 38px; padding: 7px 14px; border: 1px solid var(--line-strong); border-radius: 12px; background: #fff; color: #65707e; font-size: 12px; font-weight: 650; }
.team-line-chip:hover { border-color: #b8cce5; }
.team-line-chip.active { border-color: #a9cdfb; background: var(--blue-soft); color: #2467bc; }
.team-whatsapp-grid { display: grid; grid-template-columns: minmax(220px, .38fr) minmax(0, .62fr); gap: 16px; height: min(660px,calc(100dvh - 205px)); min-height: 440px; }
.team-chats, .team-messages { display: flex; flex-direction: column; min-height: 0; }
.team-chat-list, .team-message-list { min-height: 0; overflow: auto; margin-top: 18px; }
.team-chat-item { display: block; width: 100%; padding: 14px; border: 0; border-radius: 12px; background: transparent; text-align: left; }
.team-chat-item:hover { background: #f7f9fc; }
.team-chat-item.active { background: var(--blue-soft); }
.team-chat-item strong, .team-chat-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-chat-item strong { font-size: 12px; }
.team-chat-item small { margin-top: 5px; color: var(--muted); font-size: 11px; }
.team-message-list { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; flex: 1; padding: 2px 2px 16px; }
.team-message { max-width: 82%; padding: 11px 13px; border: 1px solid var(--line); border-radius: 14px 14px 14px 4px; background: #fafbfd; }
.team-message.sent { align-self: flex-end; border-color: #d8e8fb; border-radius: 14px 14px 4px 14px; background: var(--blue-soft); }
.team-message p { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 12px; line-height: 1.5; }
.team-message small { display: block; margin-top: 6px; color: var(--muted); font-size: 10px; }
.team-send { display: flex; gap: 8px; padding-top: 12px; border-top: 1px solid var(--line); }
.team-send .input { flex: 1; min-width: 0; }
.team-ai-panel { min-height: min(620px,calc(100dvh - 220px)); display: flex; flex-direction: column; }
.team-ai-status { display: flex; align-items: center; gap: 8px; }
.team-ai-thread { flex: 1; display: flex; flex-direction: column; gap: 14px; min-height: 260px; max-height: 55dvh; overflow: auto; padding: 4px 2px 22px; }
.team-ai-bubble { max-width: min(80%,690px); padding: 15px 17px; border: 1px solid var(--line); border-radius: 16px; background: #f9fafc; }
.team-ai-bubble.user { align-self: flex-end; border-color: #d8e8fb; background: var(--blue-soft); }
.team-ai-bubble strong { font-size: 11px; }
.team-ai-bubble p { margin: 6px 0 0; font-size: 12px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.team-ai-form { display: flex; align-items: flex-end; gap: 12px; border-top: 1px solid var(--line); padding-top: 17px; }
.team-ai-form textarea { flex: 1; min-width: 0; max-height: 160px; resize: vertical; font-size: 13px; }
.team-user-form { margin-bottom: 20px; }
.team-user-form .panel-header { align-items: flex-start; }
.team-form-grid, .team-assignment-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.team-form-wide { grid-column: 1 / -1; }
.team-fieldset { min-width: 0; margin: 25px 0 0; padding: 0; border: 0; }
.team-fieldset legend { padding: 0; margin-bottom: 12px; color: #505a66; font-size: 12px; font-weight: 700; }
.team-choice-grid { display: flex; flex-wrap: wrap; gap: 9px; }
.team-choice, .team-option { cursor: pointer; }
.team-choice input { position: absolute; opacity: 0; }
.team-choice span { display: inline-flex; min-height: 38px; align-items: center; padding: 8px 13px; border: 1px solid var(--line-strong); border-radius: 11px; color: #687380; font-size: 12px; font-weight: 630; }
.team-choice input:checked + span { border-color: #a9cdfb; color: #2467bc; background: var(--blue-soft); }
.team-choice input:focus-visible + span { outline: 3px solid rgba(22,119,238,.25); outline-offset: 2px; }
.team-options { display: grid; gap: 8px; max-height: 200px; overflow: auto; }
.team-option { display: flex; align-items: center; gap: 11px; min-height: 40px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 11px; color: #505b67; font-size: 12px; }
.team-option:hover { background: var(--surface-soft); }
.team-option:has(input:checked) { border-color: #a9cdfb; background: var(--blue-soft); }
.team-option input { accent-color: var(--blue); }
.team-form-actions { display: flex; justify-content: flex-end; margin-top: 25px; }
.team-member-name { margin: 0; color: #697380; font-size: 12px; }
.team-members { margin-top: 20px; }
.team-member-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.team-active { margin-top: 20px; }
.team-token { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.team-token p { width: 100%; margin: 0; color: var(--muted); font-size: 12px; }
.team-token code { flex: 1; min-width: 220px; padding: 12px; border-radius: 10px; background: #f4f6f9; overflow-wrap: anywhere; }
.team-account-panel { width: min(100%, 560px); }
.team-account-panel .team-auth-form { max-width: 430px; }
.team-mail-grid { display: grid; grid-template-columns: minmax(270px, 32%) minmax(0, 1fr); gap: 14px; height: min(750px, calc(100dvh - 185px)); min-height: 470px; }
.team-mail-list, .team-mail-detail { min-height: 0; display: flex; flex-direction: column; }
.team-mail-items, .team-mail-body { min-height: 0; overflow: auto; scrollbar-width: thin; scrollbar-color: #c7d2df transparent; }
.team-mail-items { margin-top: 12px; }
.team-mail-item { display: grid; gap: 6px; width: 100%; padding: 14px; border: 0; border-radius: 12px; background: transparent; color: var(--text); text-align: left; }
.team-mail-item:hover, .team-mail-item.active { background: var(--blue-soft); }
.team-mail-item strong, .team-mail-item span, .team-mail-item small { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.team-mail-item strong { font-size: 12px; }.team-mail-item span { font-size: 12px; font-weight: 650; }.team-mail-item small { color: var(--muted); font-size: 11px; }
.team-mail-detail-head { border-bottom: 1px solid var(--line); padding-bottom: 15px; }.team-mail-detail-head h2 { margin: 6px 0; font-size: 20px; }.team-mail-detail-head p { color: var(--muted); font-size: 12px; }
.team-mail-body { flex: 1; padding: 22px 3px; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.65; font-size: 13px; }.team-mail-placeholder { margin: auto; }.team-mail-actions { display: flex; justify-content: flex-end; gap: 9px; padding-top: 13px; border-top: 1px solid var(--line); }
.team-supervision-stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; margin-bottom: 16px; }.team-supervision-stats .panel { display: grid; gap: 6px; }.team-supervision-stats small { color: var(--muted); }.team-supervision-stats strong { font-size: 26px; }
.team-supervision-stats .is-warning strong { color: #ac7107; }.team-supervision-stats .is-danger strong { color: #b03f40; }.team-supervision-stats .is-success strong { color: #207b5c; }
.team-supervision-list .team-list-row { gap: 20px; }.team-supervision-list .team-member-actions { flex: 0 0 auto; }
.team-supervision-list .team-list-row.is-overdue { border-left: 3px solid #d96060; padding-left: 12px; }.team-supervision-list .team-list-row.is-unassigned { border-left: 3px solid #d9a747; padding-left: 12px; }
.team-contact-create { margin-bottom: 16px; }.team-contact-create summary { cursor: pointer; font-weight: 700; }.team-contact-create form { display: grid; gap: 16px; margin-top: 20px; }.team-contact-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }.team-contact-form-grid label, .team-contact-notes { display: grid; gap: 7px; font-size: 12px; font-weight: 650; }.team-contact-create .btn { justify-self: end; }
.team-quick-launcher { position: fixed; z-index: 35; right: 24px; bottom: 24px; display: grid; place-items: center; width: 54px; height: 54px; border: 0; border-radius: 50%; background: var(--blue); color: white; box-shadow: 0 14px 35px #12385d40; font-size: 20px; }.team-quick-launcher:hover { filter: brightness(.94); }
.team-quick-panel { position: fixed; z-index: 34; right: 24px; bottom: 88px; width: min(410px, calc(100vw - 32px)); height: min(570px, calc(100dvh - 120px)); display: flex; flex-direction: column; padding: 0; overflow: hidden; box-shadow: 0 24px 70px #192a3d30; }
.team-quick-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 15px 18px; border-bottom: 1px solid var(--line); }.team-quick-messages { flex: 1; display: flex; flex-direction: column; gap: 10px; min-height: 0; padding: 16px; overflow: auto; scrollbar-width: thin; scrollbar-color: #c7d2df transparent; }.team-quick-panel .team-ai-bubble { max-width: 90%; }.team-quick-form { display: flex; align-items: flex-end; gap: 8px; padding: 13px; border-top: 1px solid var(--line); }.team-quick-form textarea { flex: 1; min-width: 0; resize: vertical; }.team-quick-form button { flex: 0 0 auto; }
.team-calendar-panel { position: fixed; z-index: 31; top: 78px; right: 24px; width: min(680px, calc(100vw - 32px)); max-height: calc(100dvh - 94px); overflow: auto; box-shadow: 0 24px 70px #192a3d30; }.team-calendar-panel[hidden] { display: none; }.team-calendar-head, .team-calendar-month { display: flex; align-items: center; justify-content: space-between; gap: 12px; }.team-calendar-month { margin: 18px 0 13px; }.team-calendar-month button { width: 32px; height: 32px; border: 1px solid var(--line); border-radius: 9px; background: #fff; }.team-calendar-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 5px; }.team-calendar-grid > b { text-align: center; color: var(--muted); font-size: 11px; }.team-calendar-day { min-height: 72px; padding: 6px; border: 1px solid var(--line); border-radius: 9px; overflow: hidden; }.team-calendar-day strong { display: block; margin-bottom: 3px; font-size: 11px; }.team-calendar-day span { display: block; margin-top: 2px; padding: 2px 4px; border-radius: 4px; background: #e6f6ee; color: #19664b; font-size: 9px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.team-calendar-day span.is-task { background: var(--blue-soft); color: var(--blue); }.team-calendar-form { display: grid; gap: 8px; margin-top: 17px; }.team-calendar-form label { font-size: 12px; font-weight: 700; }.team-calendar-form div { display: flex; gap: 8px; }.team-calendar-form input { flex: 1; min-width: 0; }
.team-alert { margin-bottom: 17px; padding: 12px 15px; border-radius: 11px; font-size: 12px; }
.team-alert.team-error { border: 1px solid #f4d6d6; background: #fff7f7; }
.team-success { color: #207b5c; border: 1px solid #cae9dc; background: #f2fcf6; }
@media (max-width: 1060px) {
  .team-topbar-inner { flex-wrap: wrap; gap: 6px 20px; padding: 12px 24px; }
  .team-nav { flex-basis: 100%; order: 3; }
  .team-account { margin-left: auto; }
  .team-main { padding: 26px 24px 55px; }
  .team-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .team-topbar-inner { padding: 10px 16px; }
  .team-main { padding: 22px 16px 50px; }
  .team-person { display: none; }
  .team-stat-grid { gap: 8px; }
  .team-stat { min-height: 112px; padding: 14px; }
  .team-stat strong { font-size: 28px; }
  .team-stat small { display: none; }
  .team-summary-grid, .team-card-grid, .team-assignment-grid, .team-form-grid { grid-template-columns: 1fr; }
  .team-form-wide { grid-column: auto; }
  .team-whatsapp-grid { grid-template-columns: 1fr; height: auto; }
  .team-chats { max-height: 240px; }
  .team-messages { min-height: 440px; }
  .team-ai-form { align-items: stretch; flex-direction: column; }
  .team-ai-form .btn { align-self: flex-end; }
  .team-mail-grid { grid-template-columns: 1fr; height: auto; }.team-mail-list { max-height: 240px; }.team-mail-detail { min-height: 390px; }.team-supervision-stats { gap: 7px; }.team-supervision-stats .panel { padding: 12px; }.team-contact-form-grid { grid-template-columns: 1fr; }
  .team-calendar-panel { top: 105px; right: 16px; }.team-calendar-day { min-height: 55px; padding: 4px; }.team-calendar-day span { font-size: 8px; }.team-quick-launcher { right: 16px; bottom: 16px; }.team-quick-panel { right: 16px; bottom: 80px; }
}

/* Gmail workspace: folders, message list, and a safe HTML reader. */
.topbar-gmail .topbar-page-line { flex-direction: column; align-items: flex-start; gap: 2px; }
.topbar-gmail .topbar-title, .topbar-gmail .topbar-subtitle { width: 100%; }
.topbar-gmail .topbar-subtitle { display: block; flex: none; }
.view.gmail-view { padding: 10px 18px 16px 0; }
.view.gmail-view > :not(.gmail-layout) { margin-left: 18px; }
.gmail-view .gmail-ready { margin-bottom: 10px; }
.gmail-metrics-panel { margin: 0 0 12px; padding: 18px; }
.gmail-metrics-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.gmail-metrics-head h2 { margin: 4px 0 5px; font-size: 17px; letter-spacing: -.3px; }
.gmail-metrics-head p, .gmail-metrics-note { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.gmail-metrics-actions { display: flex; flex-wrap: wrap; gap: 7px; }
.gmail-metrics-actions .btn { min-height: 34px; }
.gmail-metrics-cards { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin: 16px 0 12px; }
.gmail-metric-card { display: flex; flex-direction: column; gap: 5px; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface-soft); }
.gmail-metric-card span { color: #5d6e80; font-size: 10px; font-weight: 700; }
.gmail-metric-card strong { color: var(--text); font-size: 18px; line-height: 1.2; }
.gmail-metric-card small { color: var(--muted); font-size: 9px; }
.gmail-metric-card.warning strong, .gmail-metrics-table .is-waiting { color: #a86a13; }
.gmail-metrics-table .is-overdue { color: #b44343; }
.gmail-metrics-table .is-resolved { color: var(--green); }
.gmail-metrics-note { margin-bottom: 12px; }
.gmail-metrics-error { margin: 12px 0 0; color: #b44343; font-size: 11px; }
.gmail-metrics-table-wrap { max-height: 310px; overflow: auto; border: 1px solid var(--line); border-radius: 12px; scrollbar-width: thin; }
.gmail-metrics-table { min-width: 800px; width: 100%; }
.gmail-metrics-table th { position: sticky; top: 0; z-index: 1; background: var(--surface-soft); }
.gmail-metrics-table td { vertical-align: top; font-size: 11px; line-height: 1.5; }
.gmail-metrics-table td:first-child { min-width: 230px; max-width: 360px; overflow-wrap: anywhere; }
.gmail-metrics-table td small { display: block; margin-top: 3px; color: var(--muted); font-size: 9px; }
.gmail-metrics-table .btn { min-height: 31px; padding: 5px 9px; white-space: nowrap; }
.gmail-metrics-panel button:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
@media (max-width: 1200px) { .gmail-metrics-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 740px) { .gmail-metrics-head { flex-direction: column; } .gmail-metrics-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.gmail-layout { --gmail-folders-width: 210px; --gmail-list-width: clamp(275px, 23vw, 340px); grid-template-columns: var(--gmail-folders-width) var(--gmail-list-width) 0 minmax(0, 1fr); gap: 10px; min-height: 520px; height: calc(100dvh - 129px); }
.gmail-layout.is-folders-collapsed { --gmail-folders-width: 64px; }
.gmail-layout.is-detail-collapsed { grid-template-columns: var(--gmail-folders-width) minmax(0, 1fr) 0; }
.gmail-layout.is-detail-collapsed .gmail-detail { display: none; }
.gmail-detail-toggle { display: grid; place-items: center; align-self: center; justify-self: center; z-index: 1; width: 30px; height: 38px; padding: 0; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: #708096; box-shadow: 0 3px 12px rgba(28, 43, 63, .1); cursor: pointer; transition: background .15s, color .15s, border-color .15s, box-shadow .15s; }
.gmail-detail-toggle:hover { border-color: #b8d6f7; background: var(--blue-soft); color: var(--blue); }
.gmail-detail-toggle:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.gmail-detail-toggle svg { width: 16px; height: 16px; transition: transform .18s ease; }
.is-detail-collapsed .gmail-detail-toggle svg { transform: rotate(180deg); }
@media (min-width: 1101px) {
  .is-detail-collapsed .gmail-item { display: grid; grid-template-columns: minmax(220px, 24%) minmax(220px, 35%) minmax(0, 1fr); align-items: center; gap: 12px; }
  .is-detail-collapsed .gmail-item-subject, .is-detail-collapsed .gmail-item-snippet { margin-top: 0 !important; }
}
.gmail-folders { display: flex; flex-direction: column; min-width: 0; min-height: 0; overflow-x: hidden; overflow-y: auto; padding: 15px 11px 19px; border: 1px solid var(--line); border-left: 0; border-radius: 0 19px 19px 0; background: var(--surface); box-shadow: var(--shadow); }
.gmail-folders-head { display: flex; align-items: center; gap: 8px; padding: 4px 3px 17px; }
.gmail-folders-mark { display: grid; place-items: center; flex: 0 0 34px; width: 34px; height: 34px; border-radius: 11px; color: var(--blue); background: var(--blue-soft); font-size: 19px; }
.gmail-folders-copy { flex: 1; min-width: 0; }
.gmail-folders-head strong, .gmail-folders-head small { display: block; }
.gmail-folders-head strong { font-size: 14px; letter-spacing: -.3px; }
.gmail-folders-head small { margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.3; }
.gmail-folders-toggle { display: grid; place-items: center; flex: 0 0 30px; width: 30px; height: 30px; padding: 0; border: 1px solid transparent; border-radius: 9px; background: transparent; color: #7b8898; }
.gmail-folders-toggle:hover, .gmail-folders-toggle:focus-visible { border-color: #dce6f2; background: var(--blue-soft); color: var(--blue); }
.gmail-folders-toggle svg { width: 18px; height: 18px; }
.is-folders-collapsed .gmail-folders { padding: 15px 7px 19px; }
.is-folders-collapsed .gmail-folders-head { justify-content: center; padding: 4px 0 17px; }
.is-folders-collapsed .gmail-folders-mark, .is-folders-collapsed .gmail-folders-copy, .is-folders-collapsed .gmail-compose, .is-folders-collapsed .gmail-folder-label, .is-folders-collapsed .gmail-labels-head, .is-folders-collapsed .gmail-labels p { display: none; }
.is-folders-collapsed .gmail-folders-toggle { flex-basis: 38px; width: 38px; height: 38px; }
.is-folders-collapsed .gmail-folder { justify-content: center; min-height: 42px; padding: 8px; }
.is-folders-collapsed .gmail-labels { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
.gmail-compose { display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; min-height: 43px; margin: 0 0 15px; padding: 0 12px; border: 1px solid #dcecfb; border-radius: 13px; background: #e9f4ff; color: #236aa8; font-size: 12px; font-weight: 750; text-align: left; }
.gmail-compose:disabled { opacity: 1; cursor: not-allowed; }
.gmail-compose small { margin-left: auto; color: #7896ae; font-size: 9px; font-weight: 600; }
.gmail-folders nav { display: grid; grid-template-columns: minmax(0, 1fr); min-width: 0; gap: 3px; }
.gmail-folder { display: flex; align-items: center; gap: 11px; min-width: 0; width: 100%; min-height: 38px; padding: 8px 11px; border: 1px solid transparent; border-radius: 11px; background: transparent; color: #5c6978; font-size: 11px; font-weight: 600; text-align: left; transition: background .15s, border-color .15s, color .15s; }
.gmail-folder:hover, .gmail-folder:focus-visible { background: #f5f8fc; border-color: #e8edf4; color: #2d5f9b; }
.gmail-folder.active { background: #eaf3fe; color: #196dc5; font-weight: 750; }
.gmail-folder-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmail-folder-icon { display: grid; place-items: center; flex: 0 0 19px; width: 19px; font-size: 17px; font-weight: 450; }
.gmail-labels-head { display: flex; justify-content: space-between; margin: 17px 10px 8px; padding-top: 16px; border-top: 1px solid var(--line); color: #8a95a3; font-size: 10px; font-weight: 800; letter-spacing: .7px; text-transform: uppercase; }
.gmail-labels-head span { letter-spacing: 0; }
.gmail-labels p { margin: 5px 10px; color: #a0a9b5; font-size: 10px; line-height: 1.5; }
.gmail-list-head { align-items: center; padding: 17px 18px; }
.gmail-list-head strong, .gmail-list-head small { display: block; }
.gmail-list-head strong { font-size: 13px; }
.gmail-list-head small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.gmail-list-head > span { flex: 0 0 auto; display: grid; place-items: center; min-width: 25px; height: 25px; border-radius: 9px; background: #f2f5f8; color: #6e7a87; font-size: 10px; }
.gmail-list-scroll { padding: 7px; }
.gmail-item { padding: 13px 12px; border-radius: 12px; }
.gmail-item-top { display: flex !important; align-items: center; justify-content: space-between; gap: 8px; }
.gmail-item-top strong { min-width: 0; font-size: 11px; }
.gmail-item-top time { flex: 0 0 auto; color: #9ba6b3; font-size: 9px; white-space: nowrap; }
.gmail-item-subject { margin-top: 7px !important; color: #364454; font-size: 11px !important; font-weight: 660; }
.gmail-item-snippet { margin-top: 5px !important; color: #8793a2; font-size: 10px !important; }
.gmail-item.unread { background: #f7faff; }
.gmail-item.unread .gmail-item-top strong, .gmail-item.unread .gmail-item-subject { font-weight: 800; }
.gmail-star { color: #e4aa43; font-size: 12px; }
.gmail-detail-head { padding: 24px 26px 19px; }
.gmail-detail-kicker { margin-bottom: 8px; color: #8a98a9; font-size: 10px; font-weight: 750; letter-spacing: .7px; text-transform: uppercase; }
.gmail-detail-head h2 { margin-bottom: 17px; font-size: 20px; }
.gmail-sender { display: flex; align-items: center; gap: 10px; min-width: 0; }
.gmail-sender-avatar { display: grid; place-items: center; flex: 0 0 31px; width: 31px; height: 31px; border-radius: 50%; background: #edf4fd; color: #4380bb; font-size: 12px; font-weight: 800; }
.gmail-sender > div { min-width: 0; flex: 1; }
.gmail-sender strong, .gmail-sender small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmail-sender strong { font-size: 11px; }
.gmail-sender small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.gmail-sender time { color: #9da8b5; font-size: 10px; white-space: nowrap; }
.gmail-detail-body { padding: 27px 28px; background: #fff; white-space: normal; }
.gmail-html { width: 100%; max-width: 760px; margin: 0 auto; color: #3b4857; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.gmail-html * { max-width: 100%; }
.gmail-html img { display: inline-block; max-width: 100% !important; height: auto !important; border-radius: 5px; }
.gmail-html table { max-width: 100% !important; border-collapse: collapse; }
.gmail-html td, .gmail-html th { overflow-wrap: anywhere; }
.gmail-html a { color: #176fcc; text-decoration: underline; }
.gmail-plain { max-width: 760px; margin: 0 auto; color: #455363; font-size: 13px; line-height: 1.8; white-space: pre-wrap; overflow-wrap: anywhere; }
.gmail-images { max-width: 760px; margin: 28px auto 0; padding-top: 17px; border-top: 1px solid var(--line); }
.gmail-images h3 { margin: 0 0 12px; font-size: 11px; }
.gmail-images > div { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 10px; }
.gmail-images figure { margin: 0; padding: 8px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface-soft); }
.gmail-images figure img { display: block; width: 100%; height: 110px; object-fit: contain; }
.gmail-images figcaption { margin-top: 7px; color: #697889; font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmail-agent-form { padding: 14px 26px 18px; }
@media (max-width: 1080px) {
  .gmail-layout { --gmail-folders-width: 180px; --gmail-list-width: minmax(240px, 290px); }
}
@media (max-width: 900px) {
  .view.gmail-view { padding: 10px 18px 48px; }
  .view.gmail-view > :not(.gmail-layout) { margin-left: 0; }
  .gmail-layout, .gmail-layout.is-folders-collapsed { grid-template-columns: minmax(240px, 320px) 0 minmax(0, 1fr); height: auto; }
  .gmail-layout.is-detail-collapsed { grid-template-columns: minmax(0, 1fr) 0; }
  .gmail-folders, .is-folders-collapsed .gmail-folders { grid-column: 1 / -1; overflow: visible; padding: 9px; border-left: 1px solid var(--line); border-radius: 19px; }
  .gmail-folders-head, .gmail-compose, .gmail-labels-head { display: none; }
  .gmail-folders nav { display: flex; overflow-x: auto; gap: 3px; padding-bottom: 2px; }
  .gmail-folder, .is-folders-collapsed .gmail-folder { flex: 0 0 auto; width: auto; white-space: nowrap; }
  .is-folders-collapsed .gmail-folder-label { display: inline; }
  .is-folders-collapsed .gmail-labels { margin-top: 5px; padding-top: 0; border-top: 0; }
  .gmail-labels { margin-top: 5px; }
  .gmail-list, .gmail-detail { min-height: 480px; height: 620px; }
}
@media (max-width: 740px) {
  .topbar-gmail .topbar-subtitle { font-size: 10px; }
  .view.gmail-view { padding: 10px 15px 103px; }
  .gmail-layout, .gmail-layout.is-folders-collapsed, .gmail-layout.is-detail-collapsed { grid-template-columns: 1fr; }
  .gmail-folders { padding: 9px; }
  .gmail-detail-toggle { width: 42px; height: 28px; }
  .gmail-detail-toggle svg { transform: rotate(90deg); }
  .is-detail-collapsed .gmail-detail-toggle svg { transform: rotate(-90deg); }
  .gmail-list { min-height: 260px; max-height: 280px; height: 280px; }
  .is-detail-collapsed .gmail-list { min-height: 320px; max-height: none; height: min(680px, calc(100dvh - 220px)); }
  .gmail-detail { min-height: 450px; height: 600px; }
  .gmail-detail-head { padding: 18px 18px 15px; }
  .gmail-detail-body { padding: 19px; }
  .gmail-sender time { display: none; }
  .gmail-agent-form { padding: 14px 18px 18px; }
}

@media (max-width: 1100px) {
  .whatsapp-workspace { grid-template-columns: 190px minmax(0, 1fr); gap: 11px; }
  .whatsapp-workspace-main .whatsapp-layout { grid-template-columns: minmax(215px, 270px) minmax(0, 1fr); gap: 10px; }
}
@media (max-width: 900px) {
  .whatsapp-workspace, .whatsapp-workspace.is-tools-collapsed { grid-template-columns: 64px minmax(0, 1fr); gap: 9px; }
  .whatsapp-tools { width: 64px; min-height: 0; height: calc(100dvh - 108px); padding: 10px 6px; }
  .whatsapp-tools-head, .is-tools-collapsed .whatsapp-tools-head { justify-content: center; padding: 2px 0 13px; }
  .whatsapp-tools-heading, .whatsapp-nav-copy, .whatsapp-tools-status { display: none; }
  .whatsapp-tools-list { display: grid; gap: 3px; overflow-y: auto; overflow-x: hidden; padding: 2px 3px 10px; }
  .whatsapp-nav-item { justify-content: center; min-height: 45px; padding: 6px; }
  .whatsapp-nav-glyph { flex-basis: 30px; width: 30px; height: 30px; }
  .whatsapp-nav-divider { margin: 6px 9px; }
  .whatsapp-tools-foot, .is-tools-collapsed .whatsapp-tools-foot { justify-content: center; margin: auto 4px 0; padding: 14px 0 5px; }
  .whatsapp-tools-foot .status-orb { margin: 0; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools { z-index: 8; width: 228px; padding: 12px 9px; box-shadow: 0 18px 50px rgba(28, 42, 61, .16); }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-head { justify-content: space-between; padding: 8px 5px 15px 12px; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-heading, .whatsapp-workspace.is-mobile-tools-open .whatsapp-nav-copy, .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-status { display: grid; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-nav-item { justify-content: flex-start; min-height: 54px; padding: 8px 10px; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-nav-glyph { flex-basis: 27px; width: 27px; height: 27px; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-foot { justify-content: flex-start; margin: auto 7px 0; padding: 13px 5px 3px; }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-scrim { position: fixed; inset: 74px 0 0; z-index: 7; display: block; width: 100%; border: 0; background: rgba(31, 42, 57, .28); }
  .whatsapp-workspace-main .whatsapp-layout { height: calc(100dvh - 112px); }
  .whatsapp-workspace-main:has(.notice) .whatsapp-layout { height: calc(100dvh - 176px); }
}
@media (max-width: 740px) {
  .view.whatsapp-view { padding: 12px 12px 96px; }
  .whatsapp-tools { top: 72px; height: calc(100dvh - 160px); }
  .whatsapp-workspace.is-mobile-tools-open .whatsapp-tools-scrim { inset: 60px 0 75px; }
  .quick-chat-launcher { right: 17px; bottom: 88px; min-height: 43px; padding: 0 14px; }
  .quick-chat-panel { right: 12px; bottom: 84px; width: calc(100vw - 24px); height: min(560px, calc(100dvh - 150px)); }
  .whatsapp-workspace-main .whatsapp-layout, .whatsapp-workspace-main:has(.notice) .whatsapp-layout { grid-template-columns: 1fr; height: auto; min-height: 0; }
  .whatsapp-runtime-control { align-items: stretch; flex-direction: column; gap: 10px; }
  .whatsapp-runtime-state small { white-space: normal; }
  .whatsapp-runtime-actions { justify-content: space-between; flex-wrap: wrap; }
  .whatsapp-runtime-actions > span { white-space: normal; }
  .whatsapp-empty-notice { align-items: stretch; flex-direction: column; }
  .whatsapp-layout.is-empty .whatsapp-chat-list { overflow: hidden; }
  .whatsapp-qr-dialog { padding: 19px; }
  .whatsapp-qr-image { min-height: 230px; width: min(100%, 250px); }
  .whatsapp-qr-actions .btn { flex: 1 1 130px; }
}

/* Font Awesome icons share the same sizing and color system as Vito controls. */
.nav-icon { display: grid; place-items: center; height: 20px; }
.nav-icon i { width: 20px; font-size: 17px; text-align: center; }
.sidebar-toggle, .chat-rail-toggle, .gmail-folders-toggle { position: relative; }
.sidebar-toggle > .fa-table-columns, .chat-rail-toggle > .fa-table-columns, .gmail-folders-toggle > .fa-table-columns { font-size: 17px; }
.agent-icon i { font-size: 19px; }
.rail-agent-icon i { width: 17px; font-size: 15px; text-align: center; }
.agent-menu-trigger > i:first-child { width: 16px; font-size: 14px; color: #7a8da5; }
.agent-menu-trigger .agent-menu-chevron { width: 13px; margin-left: 2px; color: #9aa4b1; font-size: 10px; transition: transform .16s; }
.agent-menu-trigger.open .agent-menu-chevron { transform: rotate(180deg); }
.agent-menu-icon i { font-size: 16px; }
.agent-menu-check { font-size: 13px; }
.empty-chat .big-icon i { font-size: 29px; }
.vito-select-trigger > i { flex: 0 0 15px; width: 15px; color: #8895a6; font-size: 11px; text-align: center; transition: transform .16s; }
.vito-select-trigger.open > i { transform: rotate(180deg); }
.gmail-detail-toggle > i { font-size: 12px; transition: transform .18s ease; }
.is-detail-collapsed .gmail-detail-toggle > i { transform: rotate(180deg); }
.gmail-folders-mark i { font-size: 17px; }
.gmail-folder-icon i { font-size: 15px; }
.integration-logo i, .settings-panel-icon i { font-size: 18px; }
.integration-logo .fa-brands, .settings-service-icon .fa-brands { font-size: 20px; }
.settings-service-icon i, .flow-list-icon i, .behavior-card-icon i, .whatsapp-line-icon i { font-size: 15px; }
.flow-key-icon i { font-size: 20px; }
.whatsapp-nav-glyph i { font-size: 16px; }
.flow-list-arrow i { font-size: 12px; }
@media (max-width: 740px) {
  .topbar-actions .btn::after { font-family: "Font Awesome 7 Free"; font-weight: 900; font-size: 17px; }
  .topbar-actions .btn > i { display: none; }
  .gmail-detail-toggle > i { transform: rotate(90deg); }
  .is-detail-collapsed .gmail-detail-toggle > i { transform: rotate(-90deg); }
}
@media (max-width: 1100px) {
  .flow-editor-head { align-items: stretch; flex-direction: column; }
  .flow-editor-head .field { width: 100%; }
  .flow-editor-head-actions { flex-wrap: wrap; }
}
@media (max-width: 740px) {
  .view.flows-view { padding: 12px 12px 96px; }
  .flow-toolbar { align-items: stretch; flex-direction: column; }
  .flow-source-tabs, .flow-toolbar-actions { width: 100%; }
  .flow-source-tab, .flow-toolbar-actions .btn { flex: 1; justify-content: center; }
  .flows-layout { height: auto; min-height: 0; }
  .flows-list-scroll { max-height: 280px; overflow-y: auto; }
  .flows-workspace { min-height: 380px; overflow: visible; }
  .flow-key-card { margin: 12px; padding: 14px; }
  .flow-key-form { align-items: stretch; }
  .flow-setup-note { margin: 12px; }
  .flow-editor { padding: 15px; }
  .flow-canvas-heading { align-items: flex-start; flex-direction: column; gap: 3px; }
}
@media (max-width: 900px) {
  .agents-workspace { grid-template-columns: 190px minmax(0, 1fr); }
  .agent-example-fields { grid-template-columns: 1fr; }
}
@media (max-width: 740px) {
  .view.agents-view { padding: 12px 12px 96px; }
  .agents-workspace { grid-template-columns: 1fr; height: auto; min-height: 0; }
  .agents-rail { overflow: visible; }
  .agents-rail-head { padding: 12px 13px; }
  .agents-rail nav { flex-direction: row; overflow-x: auto; padding: 7px; }
  .agents-rail-item { width: 145px; min-height: 55px; flex: 0 0 145px; }
  .agents-rail-item > i { display: none; }
  .agents-rail-general { align-self: flex-start; margin: 0 7px 7px; border-top: 0; }
  .agents-detail { overflow: visible; }
  .agents-detail-head { padding: 17px; }
  .agent-tabbar { padding: 8px 12px 0; }
  .agents-detail-body { padding: 17px; }
  .agent-section-head { flex-wrap: wrap; }
  .agent-form-actions { align-items: stretch; flex-direction: column; }
  .agent-form-actions .btn { width: 100%; }
}
.team-shift-note { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; color: var(--text-secondary, #617086); font-size: 12px; line-height: 1.5; }
.team-shift-note i { flex: none; color: var(--accent, #2786d5); }
.team-timing { display: block; margin-top: 5px; color: #52687c; font-size: 11px; line-height: 1.35; }
.team-timing.is-overdue { color: #bd343c; font-weight: 700; }
.team-performance { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin: 14px 0; }
.team-performance-card { display: flex; flex-direction: column; gap: 6px; padding: 16px; }
.team-performance-card strong { color: #242b36; }
.team-performance-card span { color: #405568; font-size: 13px; }
.team-performance-card small { color: #728294; line-height: 1.4; }
/* Explicit portal theme overrides for legacy shared selectors. */
body.team-body[data-theme="dark"] :is(.data-table th, .data-table td, .data-table td strong, .field label, .team-fieldset legend, .team-auth-form label) { color: var(--text); border-color: var(--line); }
body.team-body[data-theme="dark"] .data-table th { background: var(--surface-soft); }
body.team-body[data-theme="dark"] .notification-row.tone-danger { --notice-ink: #ffabb4; --notice-soft: #3b2731; --notice-line: #6d3946; }
body.team-body[data-theme="dark"] .notification-row.tone-warning { --notice-ink: #f1cc80; --notice-soft: #363024; --notice-line: #605336; }
body.team-body[data-theme="dark"] .notification-row.tone-success { --notice-ink: #83ddb3; --notice-soft: #233a33; --notice-line: #386451; }
body.team-body[data-theme="dark"] .notification-body { background: transparent; }
body.team-body[data-theme="dark"] .notification-body > span:not(.notification-title-line), body.team-body[data-theme="dark"] .notification-body time { color: var(--muted); }
body.team-body[data-theme="dark"] .team-calendar-day span { background: var(--green-soft); color: var(--green); }
body.team-body[data-theme="dark"] .team-calendar-day span.is-task { background: var(--blue-soft); color: var(--blue); }

/* Shared WhatsApp conversation surfaces, local and team portal. */
:is(.whatsapp-messages,.whatsapp-peek-messages,.team-body .team-message-list) { display:block; padding:0; margin:0; background:var(--surface-soft); overflow:auto; scrollbar-width:thin; }
.wa-feed { width:100%; min-height:100%; padding:0 24px 20px; }
.wa-feed-tools { position:sticky; top:0; z-index:2; display:flex; align-items:center; gap:12px; padding:12px 0; background:var(--surface-soft); }
.wa-feed-tools label { display:flex; align-items:center; gap:10px; max-width:360px; flex:1; padding:8px 12px; border:1px solid var(--line); border-radius:99px; background:var(--surface); color:var(--muted); }
.wa-feed-tools input { width:100%; min-width:0; border:0; background:transparent; color:var(--text); outline:none; font-size:11px; }
.wa-feed-tools label:focus-within { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-soft); }
.wa-feed-tools > button,.wa-compose button,.wa-message-actions button,.wa-reply-preview button,.wa-lightbox header button { display:inline-grid; place-items:center; width:34px; height:34px; flex:0 0 34px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--muted); }
.wa-feed-tools > button:hover,.wa-compose button:hover,.wa-message-actions button:hover { background:var(--blue-soft); color:var(--blue); }
.wa-message-stream { display:flex; flex-direction:column; gap:5px; }
.wa-message { position:relative; display:flex; align-items:flex-end; gap:9px; max-width:82%; width:fit-content; margin:2px 0; }
.wa-message[hidden] { display:none; }
.wa-message.outgoing { align-self:flex-end; flex-direction:row-reverse; }
.wa-message-avatar { display:grid; place-items:center; width:26px; height:26px; flex:0 0 26px; margin-bottom:4px; border-radius:50%; background:var(--blue-soft); color:var(--blue); font-size:10px; font-weight:700; }
.wa-message.outgoing .wa-message-avatar { display:none; }
.wa-bubble { min-width:72px; padding:10px 13px 6px; border:1px solid var(--line); border-radius:18px 18px 18px 5px; background:var(--surface); box-shadow:0 1px 2px rgba(27,40,60,.025); color:var(--text); }
.wa-message.outgoing .wa-bubble { background:var(--blue-soft); border-color:transparent; border-radius:18px 18px 5px 18px; }
.wa-message-text { font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.wa-message-text a { color:var(--blue); text-decoration:underline; text-underline-offset:2px; }
.wa-sender { display:block; margin-bottom:5px; color:var(--blue); font-size:10px; }
.wa-bubble footer { display:flex; justify-content:flex-end; align-items:center; gap:6px; margin-top:4px; color:var(--muted); font-size:9px; }
.wa-delivery.read { color:var(--blue); }
.wa-date-divider { display:flex; justify-content:center; padding:12px 0; font-size:10px; color:var(--muted); }
.wa-date-divider span { padding:6px 12px; border:1px solid var(--line); border-radius:99px; background:var(--surface); }
.wa-message-actions { align-self:center; display:flex; opacity:0; transition:opacity .15s; }
.wa-message:hover .wa-message-actions,.wa-message:focus-within .wa-message-actions { opacity:1; }
.wa-message-actions button { width:28px; height:28px; flex-basis:28px; font-size:11px; }
.wa-quote { display:grid; gap:4px; margin:0 0 8px; padding:8px 10px; border:0; border-left:3px solid var(--blue); border-radius:6px; background:var(--surface-soft); font-size:11px; overflow-wrap:anywhere; }
.wa-quote strong { color:var(--blue); font-size:10px; }
.wa-image { position:relative; display:block; min-width:170px; min-height:120px; max-width:340px; width:100%; padding:0; overflow:hidden; border:0; border-radius:12px; background:var(--surface-soft); cursor:zoom-in; }
.wa-image img { display:block; width:100%; max-height:320px; object-fit:contain; }
.wa-image img:not(.is-loaded) { min-height:120px; }
.wa-image.is-sticker { min-width:120px; width:150px; background:transparent; }
.wa-image.is-sticker img { max-height:150px; }
.wa-media-loading { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:8px; padding:12px; background:var(--surface-soft); color:var(--muted); font-size:11px; }
.wa-playback { display:grid; gap:8px; width:280px; max-width:100%; }
.wa-playback audio { width:100%; max-width:280px; height:40px; }
.wa-playback video { width:100%; max-height:300px; border-radius:12px; background:#12151c; }
.wa-load-media,.wa-older { padding:9px 12px; border:1px solid var(--line); border-radius:99px; background:var(--surface); color:var(--blue); font-size:11px; }
.wa-older { display:block; margin:0 auto 14px; }
.wa-file-card { display:flex; align-items:center; gap:12px; width:100%; max-width:320px; padding:12px; border:1px solid var(--line); border-radius:12px; background:var(--surface-soft); color:var(--text); text-align:left; }
.wa-file-card > i { font-size:22px; color:var(--blue); }
.wa-file-card span { min-width:0; overflow-wrap:anywhere; font-size:12px; }
.wa-file-card small { display:block; margin-top:5px; color:var(--muted); font-size:10px; }
.wa-compose { position:relative; flex:0 0 auto; padding:12px 16px 8px; border-top:1px solid var(--line); background:var(--surface); }
.wa-compose-label { display:block; margin:0 0 8px 4px; color:var(--muted); font-size:10px; font-weight:600; }
.wa-compose-row { display:flex; align-items:flex-end; gap:6px; }
.wa-compose-row textarea { flex:1; min-width:0; height:42px; min-height:42px; max-height:150px; padding:11px 14px; resize:vertical; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); color:var(--text); font-size:13px; line-height:1.5; }
.wa-compose-row textarea:focus { outline:0; border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-soft); background:var(--surface); }
.wa-compose .wa-send { height:40px; width:40px; flex-basis:40px; background:var(--blue); color:#fff; }
.wa-compose .wa-send:hover { background:var(--blue); color:#fff; filter:brightness(.95); }
.wa-compose .wa-send .fa-spinner { animation:wa-spin 1s linear infinite; }
@keyframes wa-spin { to { transform:rotate(360deg); } }
.wa-compose-hint { margin:8px 4px 0; color:var(--muted); font-size:9px; }
.wa-emoji-menu { display:flex; flex-wrap:wrap; gap:5px; margin:0 0 12px; padding:10px; border:1px solid var(--line); border-radius:16px; background:var(--surface-soft); }
.wa-emoji-menu button { font-size:21px; }
.wa-reply-preview { display:flex; align-items:center; gap:10px; margin:0 0 10px; padding:10px; border-left:3px solid var(--blue); border-radius:10px; background:var(--blue-soft); font-size:11px; }
.wa-reply-preview span { flex:1; min-width:0; }
.wa-reply-preview small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; margin-top:4px; color:var(--muted); }
.wa-attachment-previews { display:flex; flex-wrap:wrap; gap:8px; max-height:170px; overflow:auto; margin-bottom:10px; }
.wa-attachment-preview { display:flex; align-items:center; gap:10px; padding:8px; max-width:100%; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.wa-attachment-preview img { width:48px; height:48px; object-fit:cover; border-radius:9px; }
.wa-attachment-preview audio { width:210px; max-width:55vw; height:36px; }
.wa-attachment-preview > span { min-width:0; max-width:180px; overflow:hidden; text-overflow:ellipsis; font-size:11px; }
.wa-attachment-preview small { display:block; margin-top:3px; color:var(--muted); font-size:9px; }
.wa-compose .wa-recording { color:#bf394c; width:auto; flex-basis:auto; gap:6px; padding:0 10px; border-radius:12px; background:#fff0f1; font-size:11px; }
.wa-lightbox { width:min(900px,calc(100vw - 32px)); max-height:90dvh; padding:20px; border:1px solid var(--line); border-radius:24px; background:var(--surface); color:var(--text); box-shadow:var(--shadow); }
.wa-lightbox::backdrop { background:rgba(15,22,34,.55); backdrop-filter:blur(6px); }
.wa-lightbox header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:12px; }
.wa-lightbox > img { display:block; max-width:100%; max-height:65dvh; margin:auto auto 16px; object-fit:contain; border-radius:12px; }
.wa-lightbox > a { display:flex; width:fit-content; margin-left:auto; }
.wa-empty { padding:40px 20px; text-align:center; color:var(--muted); font-size:12px; }
.wa-feed.is-compact { padding:0 12px 16px; }
.wa-feed.is-compact .wa-message { max-width:92%; gap:5px; }
.wa-feed.is-compact .wa-message-avatar { display:none; }
.wa-feed.is-compact .wa-message-text { font-size:12px; }
.wa-feed.is-compact .wa-message-actions { flex-direction:column; }
.wa-feed.is-compact .wa-image { max-width:260px; }
.wa-compose.is-compact { padding:10px; }
.wa-compose.is-compact .wa-compose-row { gap:3px; }
.wa-compose.is-compact .wa-compose-row > button:not(.wa-send) { width:28px; flex-basis:28px; }
/* Quick chats keep their reply controls inside the viewport, even with long history. */
:is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-compose-row textarea { max-height:min(100px,15dvh); resize:none; }
:is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-compose-context { max-height:min(120px,18dvh); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
:is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-emoji-menu { max-height:min(140px,20dvh); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
.whatsapp-peek-messages { flex:1 1 0; overscroll-behavior:contain; }
.whatsapp-peek-tools { flex:0 0 auto; }
:is(.whatsapp-peek-panel,.team-whatsapp-popover) button:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
@media (max-height:600px) {
  .team-whatsapp-popover > .team-quick-head { padding:8px 12px; }
  .team-whatsapp-popover > .team-quick-head small { display:none; }
  .team-body .team-whatsapp-popover .panel-header { padding:8px 10px; }
  .team-body .team-whatsapp-popover .team-line-chip { min-height:30px; padding:6px 10px; }
  .team-body .team-whatsapp-popover .team-channel-content { gap:6px; }
  :is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-emoji-menu { max-height:64px; padding:6px; margin-bottom:6px; }
  :is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-compose-context { max-height:48px; }
  :is(.whatsapp-peek-panel,.team-whatsapp-popover) .wa-compose-hint { display:none; }
}
.whatsapp-thread-head > .whatsapp-chat-avatar { flex:0 0 36px; }
.team-body .team-message-list .wa-feed { flex:1; }
@media (hover:none) { .wa-message-actions { opacity:1; } }
@media (max-width:600px) {
  .wa-feed { padding:0 10px 16px; }
  .wa-message { max-width:96%; gap:5px; }
  .wa-message-avatar { display:none; }
  .wa-message-actions { flex-direction:column; opacity:1; }
  .wa-bubble { padding:9px 10px 5px; }
  .wa-message-text { font-size:12px; }
  .wa-image { max-width:250px; min-width:140px; }
  .wa-playback { width:235px; }
  .wa-compose { padding:10px; }
  .wa-compose-row { gap:3px; }
  .wa-compose-row > button:not(.wa-send) { width:28px; flex-basis:28px; }
  .wa-compose-label { margin-bottom:6px; }
}
.wa-playback [data-wa-media]:not(.is-loaded) { display:none; }
.wa-reaction-chip { display:inline-block; margin-top:5px; padding:3px 7px; border:1px solid var(--line); border-radius:99px; background:var(--surface); font-size:14px; }
.wa-reaction-picker { margin:0 0 12px; min-width:0; }
.wa-reaction-heading { display:block; margin:0 0 8px 8px; color:var(--muted); font-size:10px; font-weight:600; letter-spacing:.02em; }
.wa-compose .wa-emoji-menu.is-reaction { display:flex; flex-wrap:nowrap; align-items:center; gap:10px; width:fit-content; max-width:100%; max-height:none; overflow:visible; margin:0; padding:8px; border:1px solid var(--line-strong); border-radius:999px; background:rgba(255,255,255,.88); background:color-mix(in srgb,var(--surface) 88%,transparent); backdrop-filter:blur(22px) saturate(160%); -webkit-backdrop-filter:blur(22px) saturate(160%); box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 8px 28px rgba(38,52,74,.09),0 2px 6px rgba(38,52,74,.04); animation:wa-reaction-enter .18s ease-out; }
.wa-reaction-options,.wa-reaction-controls { display:flex; align-items:center; flex:0 0 auto; gap:4px; }
.wa-emoji-menu.is-reaction .wa-reaction-option { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; padding:0; border:1px solid transparent; border-radius:50%; background:transparent; color:var(--text); cursor:pointer; transition:background .16s,transform .16s,box-shadow .16s; }
.wa-reaction-option > span { font-family:'Apple Color Emoji','Segoe UI Emoji',sans-serif; font-size:26px; line-height:1; transition:transform .16s; }
.wa-emoji-menu.is-reaction .wa-reaction-option[aria-pressed="true"] { border-color:color-mix(in srgb,var(--blue) 25%,var(--line)); background:var(--blue-soft); box-shadow:inset 0 0 0 1px rgba(255,255,255,.9); }
.wa-reaction-divider { flex:0 0 1px; width:1px; height:26px; background:var(--line-strong); }
.wa-emoji-menu .wa-picker-close { display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px; padding:0; border:0; border-radius:50%; background:var(--surface-soft); color:var(--muted); font-size:13px; cursor:pointer; }
.wa-emoji-menu.is-reaction .wa-reaction-remove { display:flex; align-items:center; justify-content:center; flex:0 0 auto; width:auto; min-width:76px; gap:6px; height:34px; padding:0 10px; border:0; border-radius:999px; background:var(--surface-soft); color:var(--muted); font-size:11px; font-weight:600; cursor:pointer; white-space:nowrap; }
.wa-emoji-menu.is-reaction button:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.wa-emoji-menu.is-reaction button:disabled { opacity:.38; cursor:default; transform:none; }
.wa-emoji-menu.is-reaction[aria-busy="true"] { cursor:progress; }
@media (hover:hover) {
  .wa-emoji-menu.is-reaction .wa-reaction-option:not(:disabled):hover { background:var(--blue-soft); transform:translateY(-2px); }
  .wa-reaction-option:not(:disabled):hover > span { transform:scale(1.14); }
  .wa-emoji-menu :is(.wa-reaction-remove,.wa-picker-close):not(:disabled):hover { background:var(--blue-soft); color:var(--blue); }
}
.wa-emoji-menu.is-reaction button:not(:disabled):active { transform:scale(.94); background:var(--blue-soft); }
.wa-reaction-chip { padding:4px 9px; border-color:var(--line-strong); background:var(--surface); box-shadow:0 2px 6px rgba(38,52,74,.04); line-height:1.2; }
.wa-avatar { position:relative; overflow:hidden; border-radius:50%; background:var(--surface-soft); color:var(--muted); border:1px solid var(--line); }
.wa-avatar > img { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:cover; border-radius:inherit; }
.wa-avatar > img[hidden] { display:none; }
.wa-avatar-fallback { display:grid; place-items:center; width:100%; height:100%; font-size:12px; }
.wa-avatar.has-photo > .wa-avatar-fallback { visibility:hidden; }
.wa-feed .wa-message > .wa-message-avatar.wa-avatar { display:grid; width:28px; height:28px; flex:0 0 28px; }
.wa-feed.is-compact .wa-message > .wa-message-avatar.wa-avatar { width:24px; height:24px; flex-basis:24px; }
.team-messages .panel-header > .team-chat-avatar.wa-avatar { flex:0 0 34px; width:34px; height:34px; }
.whatsapp-peek-thread-head > .whatsapp-peek-avatar.wa-avatar { border-radius:50%; }
@keyframes wa-reaction-enter { from { opacity:0; transform:translateY(5px) scale(.98); } to { opacity:1; transform:none; } }
@container wa-composer (max-width:430px) {
  .wa-compose .wa-emoji-menu.is-reaction { flex-wrap:wrap; justify-content:center; gap:6px; border-radius:26px; }
  .wa-reaction-divider { display:none; }
  .wa-reaction-controls { flex:1 0 100%; justify-content:flex-end; padding-top:5px; border-top:1px solid var(--line); }
  .wa-emoji-menu.is-reaction .wa-reaction-option { width:38px; height:38px; flex-basis:38px; }
  .wa-reaction-option > span { font-size:25px; }
}
.wa-compose { container-type:inline-size; container-name:wa-composer; }
@media (prefers-reduced-motion:reduce) { .wa-compose .wa-emoji-menu.is-reaction { animation:none; } .wa-reaction-option,.wa-reaction-option > span { transition:none!important; } }
.team-body .team-quick-launcher.is-toolbar { position:relative; inset:auto; display:inline-grid; place-items:center; flex:0 0 38px; width:38px; height:38px; padding:0; border:1px solid var(--line); border-radius:50%; box-shadow:none; font-size:16px; }
.team-body .team-quick-launcher.is-toolbar span { display:none; }
.team-body .team-quick-launcher.is-toolbar:hover { transform:none; background:var(--blue-soft); }
/* Shared navigation and toolbar geometry for local Vito and the team portal. */
.team-body #team-root { --team-sidebar-width:76px; }
.team-body #team-root.team-menu-expanded { --team-sidebar-width:260px; }
.team-body .team-sidebar { padding:28px 10px 18px; background:rgba(255,255,255,.82); border-right-color:rgba(217,221,228,.85); backdrop-filter:blur(28px) saturate(1.35); }
.team-body .team-sidebar-brand { justify-content:center; padding:4px 0 43px; gap:11px; }
.team-body .team-sidebar-brand .brand-mark { flex-basis:42px; width:42px; height:42px; }
.team-body .team-sidebar .brand-copy, .team-body .team-sidebar .sidebar-label { display:none; }
.team-body .team-sidebar.is-expanded .brand-copy, .team-body .team-sidebar.is-expanded .sidebar-label { display:block; }
.team-body .team-sidebar .brand-copy strong { font-size:21px; letter-spacing:-.8px; }
.team-body .team-sidebar .brand-copy small { display:block; margin-top:5px; color:#a0a5ae; font-size:10px; letter-spacing:.3px; }
.team-sidebar-backdrop, .team-sidebar-close { display:none; }
.team-body .team-sidebar.is-expanded { padding-left:15px; padding-right:15px; }
.team-body .team-sidebar.is-expanded .team-sidebar-brand { justify-content:flex-start; padding-left:13px; }
.team-body .team-sidebar.is-expanded .team-sidebar-brand > strong { font-size:21px; letter-spacing:-.8px; }
.team-body .team-sidebar nav { gap:3px; padding-bottom:18px; }
.team-body .team-side-item { flex-direction:row; min-height:44px; justify-content:center; gap:13px; padding:10px; font-size:13px; font-weight:590; color:#666e7a; }
.team-body .team-side-item > i { font-size:17px; color:#8c94a0; }
.team-body .team-sidebar.is-expanded .team-side-item { justify-content:flex-start; padding-left:15px; padding-right:15px; }
.team-body .team-side-item.active { color:var(--text); background:var(--surface); border-color:var(--line); box-shadow:0 3px 11px rgba(30,41,56,.06); font-weight:700; }
.team-body .team-side-item.active > i { color:var(--blue); }
.team-body .team-sidebar-bottom { gap:3px; }
.team-body .team-topbar { background:rgba(250,251,253,.78); border-bottom-color:rgba(232,234,239,.76); }
.team-body .team-topbar-inner { min-height:74px; padding:0 44px; gap:12px; }
.team-body .team-page-title h1 { margin:0; font-size:18px; }
.team-body .team-account { gap:15px; }
.team-body .team-account .btn { min-height:35px; padding:7px 12px; }
.team-body .team-profile-toggle { width:30px; height:30px; flex-basis:30px; }
.calendar-sync-status { display:flex; align-items:center; gap:8px; flex:0 0 auto; padding:9px 20px; border-bottom:1px solid var(--line); background:var(--surface-soft); color:var(--muted); font-size:11px; }
.calendar-sync-status[hidden] { display:none; }
.calendar-sync-status .text-link { margin-left:auto; white-space:nowrap; }
.team-body .team-calendar-panel:not(.is-standalone) { z-index:50; top:66px; right:24px; width:min(1040px,calc(100vw - 48px)); height:min(760px,calc(100dvh - 82px)); border-radius:20px; }
.team-body[data-theme="dark"] .team-sidebar, .team-body[data-theme="dark"] .team-topbar { background:var(--surface); }
.team-body[data-theme="dark"] .team-side-item { color:var(--muted); }
@media (min-width:651px) and (max-width:1200px) {
  .team-body #team-root.team-menu-expanded { --team-sidebar-width:224px; }
  .team-body .team-topbar-inner { padding:0 26px; }
  .team-body .team-connection-pill { display:none; }
}
@media (min-width:651px) and (max-width:1400px) {
  .team-body .team-topbar-inner { flex-wrap: wrap; padding-block: 10px; }
  .team-body .team-page-title { flex: 1 0 160px; }
  .team-body .team-account { margin-left: 0; gap: 9px; justify-content: flex-end; }
}
@media (max-width:650px) {
  .team-body #team-root, .team-body #team-root.team-menu-expanded { --team-sidebar-width:54px; }
  .team-body .team-sidebar { padding:15px 4px 10px; }
  .team-body .team-sidebar-brand { padding-bottom:24px; }
  .team-body .team-sidebar-brand .brand-mark { flex-basis:38px; width:38px; height:38px; }
  .team-body .team-sidebar.is-expanded { width:min(260px,calc(100vw - 54px)); }
  .team-body .team-sidebar-backdrop { display:block; position:fixed; z-index:39; inset:0; padding:0; border:0; background:rgba(30,41,56,.15); backdrop-filter:blur(2px); }
  .team-body .team-sidebar-close { display:grid; position:absolute; top:15px; right:8px; }
  .team-body .team-topbar-inner { gap:8px; padding:12px; }
  .team-body .team-topbar-inner > .sidebar-toggle { display:grid; }
  .team-body .team-account { margin-left:0; gap:6px; width:100%; min-width:0; flex-wrap:wrap; }
  .team-body .team-account .topbar-actions { flex:1; min-width:0; flex-wrap:wrap; }
  .team-body .team-connection-pill { display:none; }
  .team-body .team-calendar-panel:not(.is-standalone) { top:115px; right:10px; width:calc(100vw - 20px); height:calc(100dvh - 130px); }
  .calendar-sync-status { flex-wrap:wrap; padding:8px 12px; }
}
.wa-chat-search-wrap { flex:0 0 auto; min-width:0; }
.wa-chat-search { display:flex; align-items:center; flex:0 0 auto; gap:10px; padding:9px 12px; margin:10px 12px 6px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); color:var(--muted); }
.wa-chat-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--text); font-size:11px; }
.wa-chat-search:focus-within { border-color:var(--blue); box-shadow:0 0 0 3px var(--blue-soft); }
.wa-chat-search-status { min-height:16px; margin:0 14px 8px; color:var(--muted); font-size:10px; line-height:1.45; }
.wa-chat-search-status[hidden] { display:none; }
.wa-chat-search-status.is-busy::before { content:''; display:inline-block; width:8px; height:8px; margin-right:6px; border:1.5px solid var(--line-strong); border-top-color:var(--blue); border-radius:50%; animation:wa-spin .8s linear infinite; }
.wa-message-match:not(.active) { border-color:color-mix(in srgb,var(--blue) 30%,var(--line))!important; background:var(--blue-soft)!important; }
.wa-message-match :is(.whatsapp-chat-copy small,.whatsapp-peek-preview,.team-chat-copy small) { color:var(--text); font-weight:560; line-height:1.4; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.wa-message-match :is(.whatsapp-chat-copy small,.whatsapp-peek-preview,.team-chat-copy small)::before { content:'Coincidencia · '; color:var(--blue); font-weight:750; }
.wa-message-match.active :is(.whatsapp-chat-copy small,.whatsapp-peek-preview,.team-chat-copy small)::before { color:#fff; }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item)[hidden] { display:none; }
:is(.whatsapp-chat-list,.whatsapp-peek-list,.team-chat-list) > :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item) { margin-bottom:8px; }
:is(.whatsapp-chat-list,.whatsapp-peek-list,.team-chat-list) > :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item):last-child { margin-bottom:0; }
.team-body #team-root:is([data-view="whatsapp"],[data-view="correo"]) .team-channel-content { padding-bottom:16px; }
.wa-bubble { min-width:0; }
.wa-message { max-width:min(78%,720px); }
.wa-message-text { overflow-wrap:anywhere; }
.wa-message-actions { opacity:1; align-self:flex-end; }
.wa-message-actions button { color:var(--muted); }
.wa-message-actions button:hover,.wa-message-actions button:focus-visible { background:var(--blue-soft); color:var(--blue); }
.wa-message-menu { position:absolute; top:100%; right:0; z-index:8; display:grid; gap:3px; min-width:190px; max-height:280px; overflow:auto; padding:6px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:var(--shadow); }
.wa-message-menu button { display:flex; align-items:center; gap:10px; padding:9px 12px; border:0; border-radius:10px; background:transparent; color:var(--text); font-size:12px; text-align:left; }
.wa-message-menu button:hover,.wa-message-menu button:focus-visible { background:var(--blue-soft); color:var(--blue); }
.wa-message:last-child .wa-message-menu { top:auto; bottom:36px; }
.wa-edited { display:block; padding-top:3px; color:var(--muted); font-size:9px; }
.wa-action-dialog { width:min(440px,calc(100vw - 24px)); max-height:80dvh; padding:20px; border:1px solid var(--line); border-radius:24px; background:var(--surface); color:var(--text); box-shadow:var(--shadow); }
.wa-action-dialog::backdrop { background:rgba(15,22,34,.45); backdrop-filter:blur(5px); }
.wa-new-contact-bar { padding:12px 12px 0; flex-shrink:0; }
.wa-new-contact-button { width:100%; justify-content:center; gap:8px; }
.wa-new-contact-dialog { width:min(480px,calc(100vw - 24px)); max-height:calc(100dvh - 32px); overflow-y:auto; scrollbar-width:thin; scrollbar-color:var(--line) transparent; }
.wa-new-contact-dialog header strong { font-size:17px; }
.wa-new-contact-form { display:grid; gap:16px; margin-top:18px; }
.wa-new-contact-form .field { margin:0; min-width:0; }
.wa-new-contact-form .field small { color:var(--muted); line-height:1.6; }
.wa-new-contact-form .form-actions { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; margin:0; }
.wa-new-contact-meta { padding:12px; margin:0; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); color:var(--muted); }
.wa-new-contact-dialog :is(button,input):focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.list-collapsed .wa-new-contact-button { padding:10px; font-size:0; }
.list-collapsed .wa-new-contact-button i { font-size:14px; }
@media(max-width:680px) { .wa-new-contact-form .form-actions { flex-direction:column-reverse; } .wa-new-contact-form .form-actions .btn { width:100%; } .team-body .team-workspace .list-collapsed .wa-new-contact-button { font-size:12px; } }
.wa-action-dialog header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.wa-dialog-close { display:grid; place-items:center; width:32px; height:32px; border:0; border-radius:50%; background:var(--surface-soft); color:var(--muted); }
.wa-action-dialog p { font-size:12px; line-height:1.6; }
.wa-action-dialog > input { width:100%; margin:10px 0; padding:12px; border:1px solid var(--line); border-radius:12px; background:var(--surface-soft); color:var(--text); }
.wa-forward-targets { display:grid; gap:5px; max-height:45dvh; overflow:auto; }
.wa-forward-targets button { display:flex; align-items:center; gap:10px; padding:10px; border:0; border-radius:14px; background:var(--surface-soft); color:var(--text); text-align:left; }
.wa-forward-targets button > span:nth-child(2) { flex:1; }
.wa-forward-targets button:hover { background:var(--blue-soft); }
.wa-forward-targets button[hidden] { display:none; }
.wa-dialog-error { color:#c33248; }
.wa-dialog-buttons { display:flex; justify-content:flex-end; margin-top:16px; }
.wa-feed.is-compact .wa-message-menu { right:0; }
.wa-feed .wa-message .wa-message-menu { position:fixed; top:var(--wa-menu-top,100px); left:var(--wa-menu-left,10px); right:auto; bottom:auto; width:190px; max-height:min(280px,calc(100dvh - 24px)); z-index:120; }
.wa-mobile-lines,.wa-mobile-back { display:none; }
.team-body .list-collapsed .wa-chat-search-wrap { display:none; }
@media (max-width:850px) {
  .team-body .team-workspace:has(.team-whatsapp-grid) { grid-template-columns:minmax(0,1fr); }
  .team-body .team-workspace:has(.team-whatsapp-grid) > .team-channel-nav { display:none; }
  .team-body .wa-mobile-lines { display:flex; flex:0 0 auto; overflow:auto; padding-bottom:4px; }
  .team-body .team-workspace .team-whatsapp-grid { grid-template-columns:minmax(0,1fr); }
  .team-body .team-workspace .team-whatsapp-grid > .team-chats { position:static; width:100%; height:100%; max-height:none; }
  .team-body .team-workspace .team-whatsapp-grid.has-selection > .team-chats { display:none; }
  .team-body .team-workspace .team-whatsapp-grid:not(.has-selection) > .team-messages { display:none; }
  .team-body .wa-mobile-back { display:grid; }
  .team-body .team-workspace .list-collapsed .team-chat-copy { display:grid; }
  .team-body .team-workspace .list-collapsed .wa-chat-search-wrap { display:block; }
  .team-body .team-workspace .list-collapsed .team-chats .panel-header h2 { display:block; }
}
@media (max-width:740px) {
  .whatsapp-workspace-main .whatsapp-layout { height:calc(100dvh - 170px); min-height:0; }
  .whatsapp-workspace-main:has(.notice) .whatsapp-layout { height:calc(100dvh - 220px); min-height:0; }
  .whatsapp-layout.has-selection .whatsapp-thread { height:100%; min-height:0; }
  .whatsapp-layout:not(.has-selection) .whatsapp-thread { display:none; }
  .whatsapp-layout:not(.has-selection) .whatsapp-rail { height:100%; max-height:none; min-height:0; }
}
.task-open-title { display:inline; padding:0; border:0; background:transparent; color:inherit; font:inherit; font-weight:700; line-height:1.55; text-align:left; cursor:pointer; overflow-wrap:anywhere; }
.task-open-title:hover { color:var(--blue); }
.task-open-title:focus-visible { outline:2px solid var(--blue); outline-offset:4px; border-radius:4px; }
[data-task-card] { cursor:pointer; }
.task-dossier-dialog { width:min(900px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:0; overflow:hidden; }
.task-dossier-dialog[open] { display:flex; flex-direction:column; }
.task-dossier-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:24px 28px; border-bottom:1px solid var(--line); }
.task-dossier-head h2 { margin:8px 0 12px; font-size:20px; line-height:1.4; overflow-wrap:anywhere; }
.task-dossier-head > button { flex:0 0 34px; }
.task-dossier-body { min-height:0; overflow-y:auto; padding:24px 28px; scrollbar-width:thin; scrollbar-color:var(--line) transparent; }
.task-dossier-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 28px; }
.task-dossier-review { padding:20px; margin-bottom:24px; border:1px solid var(--border, #dfe5ee); border-radius:18px; background:var(--surface, #fff); }
.task-review-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.task-review-heading h3 { margin:8px 0 0; }
.task-dossier-review > p { margin:14px 0; white-space:pre-wrap; }
.task-dossier-review small, .task-review-sources time { color:var(--muted, #64748b); font-size:12px; }
.task-review-sources { margin-top:16px; border-top:1px solid var(--border, #dfe5ee); padding-top:14px; }
.task-review-sources summary { cursor:pointer; padding:6px 0; font-weight:600; }
.task-review-sources ul { list-style:none; padding:0; margin:12px 0 0; display:grid; gap:14px; max-height:300px; overflow:auto; }
.task-review-sources li { border:1px solid var(--border, #dfe5ee); border-radius:12px; padding:14px; overflow-wrap:anywhere; }
.task-review-sources time { display:block; margin-top:5px; }
.task-review-sources p { margin:8px 0 0; white-space:pre-wrap; }
.task-dossier-review [role=alert]:empty { display:none; }
.task-dossier-wide { grid-column:1 / -1; }
.task-dossier-body h3 { margin:0 0 10px; font-size:12px; font-weight:700; }
.task-dossier-body p { margin:0; color:var(--text); white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; font-size:12px; }
.task-dossier-body small { color:var(--muted); font-size:10px; line-height:1.6; }
.task-dossier-client { margin-bottom:24px; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.task-dossier-source { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:24px 0; padding-top:20px; border-top:1px solid var(--line); }
.task-dossier-history { border-top:1px solid var(--line); padding-top:24px; }
.task-dossier-history ol { margin:18px 0 0; padding:0; list-style:none; }
.task-dossier-history li { position:relative; margin-left:5px; padding:0 0 22px 22px; border-left:2px solid var(--line); }
.task-dossier-history li::before { content:''; position:absolute; left:-5px; top:4px; width:8px; height:8px; border-radius:50%; background:var(--blue); }
.task-dossier-history li > div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:6px 14px; margin-bottom:4px; font-size:12px; }
.task-dossier-history time { color:var(--muted); font-size:10px; }
.task-dossier-history p { margin-top:6px; }
.task-dossier-report { margin-top:12px; padding:18px; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.task-dossier-report summary { cursor:pointer; font-size:12px; font-weight:700; }
.task-dossier-report summary:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
.task-dossier-report form { display:grid; gap:20px; padding-top:22px; }
.task-dossier-report [data-dossier-error] { color:var(--red,#c73343); }
.task-source-images { margin:24px 0; padding:20px; border:1px solid var(--line); border-radius:18px; background:var(--surface,#fff); }
.task-source-images h3 { margin:0 0 6px; font-size:14px; }
.task-source-images-intro { margin:0 0 16px!important; color:var(--muted)!important; }
.task-source-images-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:16px; }
.task-source-image { margin:0; min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:14px; background:var(--surface-soft); }
.task-source-image>a { display:block; padding:12px; text-align:center; }
.task-source-image>a:focus-visible { outline:3px solid var(--blue); outline-offset:-3px; border-radius:12px; }
.task-source-image img { display:block; width:100%; max-height:430px; object-fit:contain; border-radius:8px; }
.task-source-image figcaption { padding:14px; border-top:1px solid var(--line); background:var(--surface,#fff); font-size:12px; line-height:1.6; }
.task-source-image figcaption>p { margin:6px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.task-source-image details { margin-top:12px; }
.task-source-image summary { cursor:pointer; font-weight:600; padding:6px 0; }
.task-source-image summary:focus-visible { outline:2px solid var(--blue); outline-offset:3px; border-radius:3px; }
.task-source-image details p { padding:8px 0; }
.task-dossier-dialog .system-dialog-actions { flex-shrink:0; margin:0; padding:14px 28px; border-top:1px solid var(--line); }
/* A shared Messages-inspired window for the inbox and quick conversations. */
.whatsapp-layout, .team-body .team-whatsapp-grid {
  gap:0; overflow:hidden; border:1px solid var(--line-strong); border-radius:20px;
  background:var(--surface); box-shadow:var(--shadow);
}
.whatsapp-layout > :is(.whatsapp-rail,.whatsapp-thread),
.team-body .team-whatsapp-grid > :is(.team-chats,.team-messages) {
  border:0; border-radius:0; box-shadow:none;
}
.whatsapp-layout > .whatsapp-rail, .team-body .team-whatsapp-grid > .team-chats {
  border-right:1px solid var(--line); background:var(--wa-rail);
}
.whatsapp-tools { background:var(--wa-glass); }
.whatsapp-filters { padding:10px 12px; gap:8px; }
.team-line-chip.active { border-color:var(--wa-accent); background:var(--wa-accent); color:#fff; }
.wa-chat-search { border-radius:10px; background:var(--surface); margin:12px 12px 6px; }
:is(.whatsapp-chat-list,.whatsapp-peek-list,.team-body .team-chat-list) { padding:8px; scrollbar-width:thin; scrollbar-color:var(--line-strong) transparent; }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-body .team-chat-item) {
  min-height:68px; padding:10px; border-radius:12px; transition:background .16s ease,box-shadow .16s ease;
}
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item):hover { background:var(--blue-soft); }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active { background:var(--wa-accent); color:#fff; box-shadow:0 3px 9px rgba(8,105,218,.14); }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active :is(strong,small,time,.whatsapp-chat-meta) { color:#fff; }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active :is(small,time,.whatsapp-chat-meta) { opacity:.84; }
.whatsapp-chat.active .whatsapp-chat-meta b { background:#fff; color:var(--wa-accent); opacity:1; }
:is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active .wa-avatar { background:rgba(255,255,255,.18); color:#fff; }
:is(.whatsapp-chat-avatar,.whatsapp-peek-avatar,.team-chat-avatar).wa-avatar { border-radius:50%; box-shadow:0 1px 3px rgba(20,30,45,.06); }
.team-chat-copy { flex:1; gap:4px; }
.whatsapp-chat-copy small { margin-top:4px; font-size:11px; }
:is(.whatsapp-thread-head,.whatsapp-peek-thread-head,.team-body .team-messages > .panel-header) {
  min-height:66px; padding:12px 18px; background:var(--wa-glass); backdrop-filter:blur(18px); border-bottom:1px solid var(--line);
}
:is(.whatsapp-messages,.whatsapp-peek-messages,.team-body .team-message-list) { background:var(--surface); }
.wa-feed { padding:0 22px 22px; }
.team-body .team-messages > .panel-header > .wa-avatar { flex:0 0 34px; width:34px; }
.team-body .team-messages > .panel-header > .wa-mobile-back { flex:0 0 30px; }
.team-body .team-messages > .panel-header > .panel-title { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wa-feed-tools { padding:10px 0; background:var(--surface); }
.wa-feed-tools label { max-width:310px; padding:7px 11px; border-radius:10px; background:var(--surface-soft); }
.wa-date-divider { padding:15px 0; font-size:10px; font-weight:600; }
.wa-date-divider span { border:0; background:var(--surface-soft); }
.wa-message-stream { gap:10px; }
.wa-message, .wa-feed.is-compact .wa-message { max-width:min(82%,680px); gap:8px; margin:2px 0; }
.wa-bubble { min-width:0; max-width:100%; padding:11px 14px 7px; border-color:var(--line); border-radius:20px 20px 20px 6px; background:var(--surface-soft); box-shadow:none; }
.wa-message.outgoing .wa-bubble { border-color:transparent; border-radius:20px 20px 6px 20px; background:var(--wa-accent); color:#fff; }
.wa-feed .wa-message.outgoing > .wa-message-avatar.wa-avatar { display:none; }
.wa-message-text { font-size:13px; line-height:1.55; }
.wa-message.outgoing :is(.wa-message-text a,.wa-bubble footer,.wa-edited,.wa-delivery.read) { color:#fff; }
.wa-message.outgoing .wa-bubble footer { opacity:.85; }
.wa-message.outgoing .wa-quote { border-left-color:#fff; background:rgba(255,255,255,.14); color:#fff; }
.wa-message.outgoing .wa-quote strong { color:#fff; }
.wa-message-actions { align-self:flex-end; opacity:.65; }
.wa-message:hover .wa-message-actions,.wa-message:focus-within .wa-message-actions { opacity:1; }
.wa-message-actions button { width:26px; height:28px; flex-basis:26px; }
.wa-reaction-chip { color:var(--text); }
.wa-compose, .wa-compose.is-compact { padding:12px 16px 9px; background:var(--wa-glass); backdrop-filter:blur(18px); }
.wa-compose-label { margin-bottom:7px; font-size:10px; }
.wa-compose-row { align-items:center; gap:7px; }
.wa-compose-row textarea { min-height:40px; height:40px; max-height:120px; padding:9px 14px; resize:none; border-radius:20px; background:var(--surface); border-color:var(--line-strong); }
.wa-compose-row > button:not(.wa-send) { background:var(--surface-soft); }
.wa-compose .wa-send { width:38px; height:38px; flex-basis:38px; background:var(--wa-accent); }
.wa-compose .wa-send:hover:not(:disabled) { background:var(--wa-accent); box-shadow:0 3px 10px rgba(8,105,218,.2); }
.wa-compose button:disabled { cursor:not-allowed; opacity:.4; }
.wa-compose-hint { margin-top:7px; font-size:9px; }
:is(.whatsapp-layout,.whatsapp-peek-panel,.team-whatsapp-grid) button:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
body.team-body[data-theme="dark"] { --wa-rail:var(--surface-soft); --wa-glass:var(--surface); }
@container wa-composer (max-width:330px) {
  .wa-compose-row { gap:4px; }
  .wa-compose-row > button:not(.wa-send):not(.wa-recording) { width:28px; height:32px; flex-basis:28px; }
  .wa-compose .wa-send { width:34px; height:34px; flex-basis:34px; }
  .wa-compose-row textarea { padding-inline:10px; }
}
@media (max-width:850px) {
  .wa-message,.wa-feed.is-compact .wa-message { max-width:94%; }
  .wa-message-actions { flex-direction:column; }
  .wa-feed,.wa-feed.is-compact { padding:0 12px 18px; }
  .team-body .team-whatsapp-grid > .team-chats { border-right:0; }
}
@media (max-width:740px) {
  .whatsapp-workspace:has(.whatsapp-layout.has-selection) { grid-template-columns:minmax(0,1fr); }
  .whatsapp-workspace:has(.whatsapp-layout.has-selection) > .whatsapp-tools { display:none; }
  .whatsapp-layout > .whatsapp-rail { border-right:0; }
  .wa-compose,.wa-compose.is-compact { padding:10px; }
  .wa-compose-hint { display:none; }
  :is(.whatsapp-thread-head,.whatsapp-peek-thread-head,.team-body .team-messages > .panel-header) { padding:10px 12px; min-height:60px; }
}
@media (max-width:600px) {
  .task-dossier-head,.task-dossier-body { padding:18px; }
  .task-dossier-head h2 { font-size:17px; }
  .task-dossier-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
  .task-dossier-wide { grid-column:auto; }
  .task-dossier-source .btn { width:100%; white-space:normal; }
}
.sales-base { display:grid; gap:20px; min-width:0; }
.sales-overview,.sales-capture { padding:24px; }
.sales-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:20px; }
.sales-section-head h2,.sales-section-head h3 { margin:0 0 8px; }
.sales-section-head p,.sales-source-note { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.sales-actions,.sales-row-actions,.sales-filter-actions { display:flex; flex-wrap:wrap; gap:10px; }
.sales-validation { padding:12px 16px; background:var(--surface-soft); border:1px solid var(--line); border-radius:12px; color:var(--muted); font-size:12px; line-height:1.7; margin-bottom:20px; }
.sales-filters { display:grid; grid-template-columns:1.4fr 1fr 1.2fr 1fr 1fr; gap:20px; align-items:start; }
.sales-filters .field { min-width:0; margin:0; }
.sales-filter-actions { grid-column:1/-1; }
.sales-filters .vito-select-menu { margin-top:10px; }
.sales-table { min-width:1050px; }
.sales-table td { vertical-align:top; }
.sales-table td small { display:block; font-size:11px; line-height:1.65; margin-top:8px; color:var(--muted); max-width:220px; overflow-wrap:anywhere; }
.sales-table td:first-child { min-width:250px; }
.sales-row-actions { min-width:140px; }
.sales-capture h3 { margin-bottom:16px; }
.sales-capture .sales-source-note { margin:18px 0; }
.system-dialog.sales-dialog { width:min(920px,calc(100vw - 32px)); max-width:920px; max-height:calc(100dvh - 32px); padding:0; overflow:hidden; }
.sales-dialog[open] { display:flex; flex-direction:column; }
.sales-dialog [hidden] { display:none!important; }
.sales-dialog-head { display:flex; align-items:start; justify-content:space-between; gap:20px; padding:22px 26px 18px; border-bottom:1px solid var(--line); flex-shrink:0; }
.sales-dialog-head h2 { margin:6px 0; font-size:22px; }
.sales-dialog-head p { font-size:12px; }
.sales-dialog .sales-create { display:flex; flex-direction:column; min-height:0; margin:0; max-width:none; }
.sales-dialog-body { min-height:0; overflow:auto; overscroll-behavior:contain; padding:20px 26px; display:grid; gap:22px; scrollbar-gutter:stable; }
.sales-capture-section h3 { display:flex; align-items:center; gap:9px; font-size:13px; margin:0 0 16px; }
.sales-capture-section h3 i { color:var(--blue); }
.sales-capture-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:14px 16px; }
.sales-capture-grid .field { margin:0; min-width:0; }
.sales-capture-grid .field label { display:flex; align-items:center; gap:7px; font-size:11px; line-height:1.4; }
.sales-capture-grid .field label i { width:13px; color:var(--muted); text-align:center; flex-shrink:0; }
.sales-capture-grid .input { width:100%; min-width:0; font-size:12px; }
.sales-capture-grid small { display:block; margin-top:6px; color:var(--muted); font-size:10px; line-height:1.5; }
.sales-span-2 { grid-column:span 2; }
.sales-span-4 { grid-column:span 4; }
.sales-span-6 { grid-column:span 6; }
.sales-span-8 { grid-column:span 8; }
.sales-dialog .vito-select-menu.is-inline { position:relative; inset:auto; margin-top:8px; width:100%; max-height:210px; }
.sales-price-summary { display:grid; grid-template-columns:1fr 1fr; gap:16px; background:var(--surface-soft); border:1px solid var(--line); border-radius:16px; padding:16px 18px; }
.sales-price-summary > div { display:grid; gap:9px; min-width:0; }
.sales-price-summary span { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--muted); }
.sales-price-summary strong { font-size:20px; font-variant-numeric:tabular-nums; letter-spacing:-.4px; }
.sales-price-summary p { grid-column:1/-1; font-size:11px; line-height:1.6; }
.sales-additional summary { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--muted); cursor:pointer; padding:4px 0; }
.sales-additional summary:focus-visible { outline:2px solid var(--blue); outline-offset:5px; border-radius:4px; }
.sales-additional[open] .sales-capture-grid { margin-top:16px; }
.sales-dialog .sales-confirm-check { margin:0; font-size:11px; line-height:1.6; }
.sales-dialog-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 26px; border-top:1px solid var(--line); background:var(--surface); flex-shrink:0; }
.sales-dialog-footer small { color:var(--muted); font-size:10px; line-height:1.5; }
.sales-dialog-footer > div { display:flex; gap:10px; }
@media(max-width:640px) {
  .system-dialog.sales-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); border-radius:18px; }
  .sales-dialog-head,.sales-dialog-body { padding:18px; }
  .sales-capture-grid { gap:14px 12px; }
  .sales-span-8,.sales-span-6 { grid-column:span 12; }
  .sales-span-2,.sales-span-4 { grid-column:span 6; }
  .sales-dialog-footer { padding:14px 18px; flex-wrap:wrap; }
  .sales-dialog-footer > div { width:100%; }
  .sales-dialog-footer .btn { flex:1; }
  .sales-price-summary { padding:14px; gap:16px; }
  .sales-price-summary strong { font-size:17px; overflow-wrap:anywhere; }
}
.sales-confirm-check { display:flex; align-items:center; gap:10px; margin:20px 0; font-size:13px; }
.sales-identity-form { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:20px 0; }
.sales-identity-form .input { max-width:200px; }
.sales-commission-form { display:grid; gap:12px; margin:20px 0; }
.sales-commission-form .sales-confirm-check { margin:0 0 4px; }
.sales-commission-form > .btn { justify-self:start; }
.sales-base button:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.sales-base [hidden] { display:none; }
.sales-report { margin:16px 0; padding:14px; border:1px solid var(--line); border-radius:12px; }
.sales-report summary { cursor:pointer; font-size:13px; font-weight:650; }
.sales-report .table-wrap { margin-top:14px; }
@media(max-width:1000px) { .sales-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } .sales-query { grid-column:1/-1; } .sales-section-head { flex-direction:column; } }
@media(max-width:560px) { .sales-overview,.sales-capture { padding:18px; } .sales-filters { grid-template-columns:minmax(0,1fr); } .sales-actions { width:100%; } .sales-actions .btn { flex:1 1 auto; } .sales-capture .form-grid { grid-template-columns:minmax(0,1fr); } }

/* Tahoe-inspired shared surfaces: translucent navigation, readable white content. */
body:not([data-theme="dark"]) {
  background:radial-gradient(ellipse at 92% 0%,rgba(225,237,255,.34),transparent 42%),radial-gradient(ellipse at 3% 95%,rgba(237,232,248,.22),transparent 38%),var(--bg);
}
body:not([data-theme="dark"]) :is(.sidebar,.team-sidebar) {
  background:var(--glass-nav);border-right-color:var(--line);
  box-shadow:inset -1px 0 rgba(255,255,255,.85);
  backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);
}
body:not([data-theme="dark"]) :is(.topbar,.team-topbar) {
  background:var(--glass);border-bottom-color:var(--line);
  backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);
}
.topbar-eyebrow,.eyebrow { color:var(--muted);letter-spacing:1.2px; }
.sidebar nav,.team-body .team-sidebar nav { gap:5px; }
.nav-item,.team-body .team-side-item { --nav-color:#8793a3;--nav-end:#64748b; }
:is(.nav-item[data-page="inicio"],.team-side-item[data-view="inicio"]) { --nav-color:#ffb342;--nav-end:#f58c25; }
:is(.nav-item[data-page="chat"],.team-side-item[data-view="conversaciones"]) { --nav-color:#9d80f6;--nav-end:#7560d8; }
:is(.nav-item[data-page="whatsapp"],.team-side-item[data-view="whatsapp"]) { --nav-color:#54cf91;--nav-end:#27a96b; }
:is(.nav-item[data-page="correo"],.team-side-item[data-view="correo"]) { --nav-color:#58b8ff;--nav-end:#2589ed; }
:is(.nav-item[data-page="tareas"],.team-side-item[data-view="tareas"]) { --nav-color:#63a5fc;--nav-end:#3479dd; }
:is(.nav-item[data-page="productividad"],.team-side-item[data-view="supervision"]) { --nav-color:#a58afa;--nav-end:#795bd9; }
:is(.nav-item[data-page="crm"],.team-side-item[data-view="crm"]) { --nav-color:#56c2c7;--nav-end:#2e9ea9; }
.team-side-item[data-view="calendario"] { --nav-color:#fb7f8e;--nav-end:#e9586a; }
.nav-item[data-page="imagenes"] { --nav-color:#d18edb;--nav-end:#a65bbb; }
.nav-item[data-page="memoria"] { --nav-color:#f395b2;--nav-end:#d86f93; }
.nav-item[data-page="flujos"] { --nav-color:#83bbb4;--nav-end:#52938b; }
.nav-item[data-page="agentes"] { --nav-color:#79a3f5;--nav-end:#4b7dda; }
.nav-item[data-page="conexiones"] { --nav-color:#82aaa0;--nav-end:#5b8d81; }
body:not([data-theme="dark"]) :is(.nav-icon,.team-side-item:not([data-action="logout"]) > i) {
  display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:8px;
  background:linear-gradient(155deg,var(--nav-color),var(--nav-end));color:#fff;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.38),0 1px 2px rgba(36,55,83,.12);
}
body:not([data-theme="dark"]) .nav-icon i,body:not([data-theme="dark"]) .team-side-item > i { font-size:15px; }
body:not([data-theme="dark"]) :is(.nav-item,.team-side-item):hover { background:rgba(229,234,242,.65);color:var(--text); }
body:not([data-theme="dark"]) :is(.nav-item,.team-side-item).active {
  background:var(--surface);border-color:var(--line);color:var(--text);
  box-shadow:0 3px 10px rgba(31,45,65,.07),inset 0 1px rgba(255,255,255,.9);
}
body:not([data-theme="dark"]) .nav-item.active .nav-icon,body:not([data-theme="dark"]) .team-side-item.active > i { color:#fff; }
body:not([data-theme="dark"]) :is(.panel,.agent-card,.stat,.chat-main,.chat-rail,.whatsapp-workspace-nav,.gmail-folders,.gmail-message-list,.gmail-reader,.agent-workspace-rail,.agent-workspace-detail) {
  background:var(--surface);border-color:var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow);
}
body:not([data-theme="dark"]) .hero { background:linear-gradient(120deg,#fff 58%,#f2f7ff);border-color:var(--line);border-radius:28px; }
body:not([data-theme="dark"]) .hero::before { background:radial-gradient(circle,rgba(224,235,254,.44),rgba(247,250,255,.35) 62%,transparent 70%); }
body:not([data-theme="dark"]) :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle) {
  border-color:var(--line);background:var(--surface);color:var(--text);box-shadow:0 1px 3px rgba(31,45,65,.045);
}
body:not([data-theme="dark"]) .btn { border-radius:var(--radius-control); }
body:not([data-theme="dark"]) :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle):hover { background:var(--surface-soft);border-color:var(--line-strong); }
body:not([data-theme="dark"]) .btn-primary { background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 3px 9px rgba(8,124,240,.16),inset 0 1px rgba(255,255,255,.14); }
body:not([data-theme="dark"]) .btn-primary:hover { background:#066bd2;border-color:#066bd2;color:#fff; }
body:not([data-theme="dark"]) .btn-danger { color:var(--task-red); }
body:not([data-theme="dark"]) :is(.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle)[aria-expanded="true"] { background:var(--blue-soft);border-color:#c4dcfb;color:var(--blue); }
body:not([data-theme="dark"]) :is(.input,.field textarea,.vito-select-trigger) {
  background:var(--surface-soft);border-color:var(--line);border-radius:var(--radius-control);color:var(--text);box-shadow:inset 0 1px 2px rgba(31,45,65,.025);
}
body:not([data-theme="dark"]) :is(.input,.field textarea,.vito-select-trigger):hover { border-color:var(--line-strong); }
body:not([data-theme="dark"]) :is(.input:focus,.field textarea:focus,.vito-select-trigger.open,.vito-select-trigger:focus-visible) { background:var(--surface);border-color:#96bff1;box-shadow:0 0 0 3px rgba(8,124,240,.12); }
body:not([data-theme="dark"]) :is(input,textarea)[aria-invalid="true"],body:not([data-theme="dark"]) .vito-select:has(select[aria-invalid="true"]) .vito-select-trigger { border-color:var(--task-red);box-shadow:0 0 0 3px rgba(193,63,73,.1); }
body:not([data-theme="dark"]) .vito-select-menu { background:var(--glass);border-color:var(--line);box-shadow:var(--shadow-float);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px); }
body:not([data-theme="dark"]) .vito-select-option { color:var(--text); }
body:not([data-theme="dark"]) .vito-select-option[aria-selected="true"] { background:var(--blue-soft);color:var(--blue); }
body:not([data-theme="dark"]) .vito-select-option:hover,body:not([data-theme="dark"]) .vito-select-option:focus-visible { background:var(--surface-soft);outline:2px solid rgba(8,124,240,.2);outline-offset:-2px; }
body:not([data-theme="dark"]) :is(.task-tabs,.task-view-switch,.task-subtabs,.task-base-tabs,.prod-segment) { background:var(--surface-soft);border-color:var(--line);box-shadow:inset 0 1px 2px rgba(31,45,65,.025); }
body:not([data-theme="dark"]) :is(.task-tab.is-active,.task-subtabs button.is-active,.task-base-tabs button.is-active,.task-view-switch button[aria-pressed="true"],.prod-segment button.active) { background:var(--surface);border-color:var(--line);color:var(--blue);box-shadow:0 2px 5px rgba(31,45,65,.08); }
body:not([data-theme="dark"]) :is(.task-subtabs,.task-base-tabs) { padding:4px;border:1px solid var(--line);border-radius:14px;width:fit-content;max-width:100%;gap:4px; }
body:not([data-theme="dark"]) :is(.task-subtabs,.task-base-tabs) button:not(.is-active) { background:transparent;border-color:transparent; }
body:not([data-theme="dark"]) .column[data-task-tone] { border-radius:var(--radius-panel);background:linear-gradient(180deg,var(--task-soft),var(--surface) 170px); }
body:not([data-theme="dark"]) :is(.task-card,.team-task)[data-task-tone] { border-radius:16px;background:var(--surface);box-shadow:0 2px 6px rgba(31,45,65,.035); }
body:not([data-theme="dark"]) :is(.data-table thead,.data-table th,.task-table-summary) { background:var(--surface-soft); }
body:not([data-theme="dark"]) :is(.notifications-popover,.calendar-popover,.whatsapp-peek-panel,.mail-peek-panel,.quick-chat-panel,.system-dialog,.team-calendar-panel:not(.is-standalone),.team-whatsapp-popover,.wa-reaction-picker,.wa-message-menu) { background:var(--glass);border-color:var(--line);box-shadow:var(--shadow-float);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px); }
body:not([data-theme="dark"]) .system-dialog,body:not([data-theme="dark"]) .vito-tour-card.panel { background:var(--surface);box-shadow:var(--shadow-float); }
body:not([data-theme="dark"]) :is(.whatsapp-layout,.team-whatsapp-grid) { border-color:var(--line);border-radius:var(--radius-panel); }
body:not([data-theme="dark"]) :is(.whatsapp-workspace-nav,.gmail-folders) { background:var(--glass-nav); }
body:not([data-theme="dark"]) :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active { background:var(--blue-soft);color:var(--text);box-shadow:inset 0 0 0 1px rgba(8,124,240,.1); }
body:not([data-theme="dark"]) :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active :is(strong,small,time,.whatsapp-chat-meta) { color:var(--text); }
body:not([data-theme="dark"]) :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active :is(small,time) { color:var(--muted);opacity:1; }
body:not([data-theme="dark"]) :is(.whatsapp-chat,.whatsapp-peek-chat,.team-chat-item).active .wa-avatar { background:#dceaff;color:var(--blue); }
body:not([data-theme="dark"]) .wa-bubble { background:var(--surface-soft);border-color:var(--line); }
body:not([data-theme="dark"]) .wa-message.outgoing .wa-bubble { background:var(--wa-accent);border-color:transparent; }
body:not([data-theme="dark"]) .wa-compose textarea { background:var(--surface-soft);border-color:var(--line); }
button:disabled:hover { transform:none; }
@media(min-width:741px) {
  .nav-item,.team-body .team-side-item { padding-top:8px;padding-bottom:8px; }
  .sidebar { overflow:hidden; }
  .sidebar > nav { min-height:0;overflow-y:auto;flex-shrink:1; }
  .sidebar > #main-nav { flex:1;align-content:start; }
  .sidebar > nav:not(#main-nav) { flex-shrink:0; }
  .sidebar .sidebar-spacer { flex:0;min-height:14px; }
  .sidebar .brand { padding-bottom:26px;flex-shrink:0; }
  .sidebar .tools-label { margin-top:20px;flex-shrink:0; }
  .sidebar :is(.sidebar-status,.sidebar-footer) { flex-shrink:0; }
}
@media(max-width:740px) { body:not([data-theme="dark"]) .nav-icon { width:24px;height:24px;flex-basis:24px;border-radius:7px; }.nav-icon i { font-size:13px; }.sidebar nav { gap:2px; } }
@media(prefers-reduced-motion:reduce) { .nav-item,.btn,.agent-card { transition:none; }.btn:hover,.agent-card:hover { transform:none; } }

/* Official WhatsApp setup shares the application's form and surface primitives. */
.cloud-whatsapp-stack { display:grid;gap:18px;min-width:0; }
.cloud-whatsapp-panel { padding:24px;min-width:0; }
.cloud-whatsapp-panel .panel-header { gap:18px;flex-wrap:wrap;margin-bottom:18px; }
.cloud-whatsapp-panel .panel-title i { color:var(--blue);margin-right:7px; }
.cloud-whatsapp-form.form-panel { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0;background:none;border:0;box-shadow:none;max-width:none; }
.cloud-whatsapp-wide { grid-column:1/-1; }
.cloud-whatsapp-form .field { min-width:0;margin:0; }
.cloud-whatsapp-form label i { margin-right:6px;color:var(--muted); }
.cloud-whatsapp-form .field small { display:block;margin-top:8px;line-height:1.55; }
.cloud-whatsapp-form textarea { width:100%; }
.cloud-whatsapp-form .form-actions { display:flex;flex-wrap:wrap;gap:10px; }
.cloud-whatsapp-checks { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 24px; }
.cloud-whatsapp-checks span { min-width:0;min-height:44px;font-size:12px;line-height:1.5;display:flex;align-items:center;gap:9px;padding:10px 14px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;color:var(--muted); }
.cloud-whatsapp-checks span i { flex-shrink:0; }
.cloud-whatsapp-checks .is-ready { color:#168060;background:#edf9f3;border-color:#d4ecdf; }
.cloud-whatsapp-details { padding:18px 0;border-top:1px solid var(--line); }
.cloud-whatsapp-details summary { cursor:pointer;font-size:13px;font-weight:600;padding:8px 0; }
.cloud-whatsapp-details[open] summary { margin-bottom:14px; }
.cloud-whatsapp-details summary:focus-visible { outline:2px solid var(--blue);outline-offset:4px;border-radius:6px; }
.cloud-whatsapp-details .subtitle,.cloud-whatsapp-panel>.subtitle { margin:12px 0 18px;line-height:1.65; }
.cloud-whatsapp-help { padding-left:24px;color:var(--muted);font-size:13px;line-height:1.75; }
.cloud-whatsapp-help li+li { margin-top:12px; }
.cloud-whatsapp-help code { overflow-wrap:anywhere;color:var(--text); }
.cloud-whatsapp-links { display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;padding-top:12px;margin-bottom:24px; }
.cloud-whatsapp-links>.subtitle { flex:1 1 240px;min-width:0;margin:0;line-height:1.6; }
.cloud-whatsapp-panel>.cloud-whatsapp-links:last-child { margin-bottom:0; }
.cloud-whatsapp-template-list { display:grid;gap:12px;max-height:360px;overflow:auto;scrollbar-width:thin; }
.cloud-whatsapp-template-list>div { padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);overflow-wrap:anywhere; }
.cloud-whatsapp-template-list small { display:block;margin-top:6px;color:var(--muted);line-height:1.6; }
.cloud-whatsapp-preview { padding:16px;background:var(--surface-soft);border:1px solid var(--line);border-radius:14px; }
.cloud-whatsapp-preview pre { white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.6; }
.cloud-whatsapp-error { padding:14px;border:1px solid #f5c9cf;border-radius:12px;color:#a82737;background:#fff4f5; }
.cloud-whatsapp-panel .notice { margin:16px 0;line-height:1.65; }
.cloud-whatsapp-panel .notice .text-link { margin-left:5px; }
.cloud-whatsapp-panel .vito-select.is-open { margin-bottom:16px; }
@media(max-width:1200px) { .cloud-whatsapp-checks { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:740px) { .cloud-whatsapp-panel { padding:18px; }.cloud-whatsapp-form.form-panel { grid-template-columns:minmax(0,1fr); }.cloud-whatsapp-wide { grid-column:1; }.cloud-whatsapp-panel .btn { white-space:normal; }.cloud-whatsapp-links>.btn { width:100%; }.cloud-whatsapp-checks { grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; } }
@media(max-width:380px) { .cloud-whatsapp-checks { grid-template-columns:minmax(0,1fr); } }
.wa-cloud-window,.wa-cloud-inbox-note { display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--muted);font-size:12px;line-height:1.6; }
.wa-cloud-window>i,.wa-cloud-inbox-note i { color:var(--blue);flex-shrink:0; }
.wa-cloud-window span,.wa-cloud-inbox-note span { min-width:0;flex:1; }
.wa-cloud-window strong,.wa-cloud-window small { display:block; }
.wa-cloud-window strong { color:var(--text);font-size:12px; }
.wa-cloud-window.is-closed { border-top:1px solid var(--line);border-bottom:0; }
.wa-cloud-window.is-closed { flex-wrap:wrap; }
.wa-cloud-window.is-closed .btn { flex-shrink:0; }
.cloud-template-library { margin:24px 0 28px; }
.cloud-template-library h3 { margin:0 0 8px;font-size:14px; }
.cloud-template-grid { display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;margin-top:18px; }
.cloud-template-card { display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);min-width:0; }
.cloud-template-card-head { display:flex;flex-direction:column;align-items:flex-start;gap:10px; }
.cloud-template-card h3 { margin:0;font-size:14px; }
.cloud-template-card h3 i,.cloud-template-library>h3 i { color:var(--blue);margin-right:6px; }
.cloud-template-card p { margin:0; }
.cloud-template-card summary { cursor:pointer;font-size:12px;font-weight:600;padding:6px 0; }
.cloud-template-card summary i { margin-left:8px; }
.cloud-template-card pre { white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:12px;line-height:1.7;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft); }
.cloud-template-card small,.cloud-template-card code { display:block;overflow-wrap:anywhere;font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0; }
.cloud-template-card .form-actions { margin-top:auto;gap:10px;flex-wrap:wrap; }
.cloud-template-card .btn { font-size:11px; }
.wa-template-dialog { width:min(640px,calc(100vw - 24px));max-height:88dvh;overflow:auto; }
.wa-template-form { display:grid;gap:20px;margin-top:20px; }
.wa-template-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }
.wa-template-form .field { min-width:0; }
.wa-template-form .field label { display:block;font-size:12px;font-weight:600;margin-bottom:8px; }
.wa-template-form label i { margin-right:6px;color:var(--muted); }
.wa-template-form .input { width:100%; }
.wa-template-wide { grid-column:1/-1; }
.wa-template-form .cloud-whatsapp-preview pre { margin-bottom:0; }
.wa-template-form .cloud-whatsapp-preview small { color:var(--muted);font-size:11px;line-height:1.6; }
@media(max-width:480px){.wa-template-fields{grid-template-columns:1fr;}.wa-template-dialog{padding:18px;}.wa-cloud-window.is-closed .btn{margin-left:24px;}.cloud-template-card{padding:16px;}}
.wa-cloud-inbox-note { margin-bottom:12px;border:1px solid var(--line);border-radius:14px;flex-wrap:wrap; }
.wa-cloud-template { display:block;font-size:10px;line-height:1.6;margin-bottom:7px;opacity:.8; }
.wa-cloud-failure { display:block;margin-top:8px;padding-top:8px;border-top:1px solid currentColor;line-height:1.6;font-size:11px; }
.wa-delivery.pending,.wa-delivery.accepted,.wa-delivery.failed { font-size:10px; }
.wa-delivery.failed { font-weight:600; }
.wa-message.outgoing:has(.wa-delivery.failed) .wa-bubble { background:#fff0f2;border-color:#f0c5cd;color:#9e2639; }
.wa-message.outgoing:has(.wa-delivery.failed) .wa-bubble footer { color:inherit; }
.cloud-delivery-preview { white-space:pre-wrap;font-size:13px;line-height:1.65;margin:10px 0; }
.wa-message-actions button:disabled { opacity:.35;cursor:not-allowed; }
@media(max-width:740px){.wa-cloud-window,.wa-cloud-inbox-note { padding:10px 12px; }.wa-cloud-inbox-note .btn{width:100%;}.wa-cloud-inbox-note span{flex-basis:100%;}.wa-cloud-window small{overflow-wrap:anywhere;}}
.whatsapp-workspace-main:has(>.wa-cloud-inbox-note):has(>.whatsapp-layout) { height:calc(100dvh - 112px);display:flex;flex-direction:column;min-height:0; }
.whatsapp-workspace-main:has(>.wa-cloud-inbox-note)>.whatsapp-layout { flex:1;height:auto;min-height:0; }
.whatsapp-workspace-main>.wa-cloud-inbox-note { flex-shrink:0; }
@media(max-width:740px){.whatsapp-workspace-main:has(>.wa-cloud-inbox-note):has(>.whatsapp-layout){height:calc(100dvh - 170px);}}
/* Verified premium notices share the same light surfaces as the inbox. */
.cloud-notice-buttons,.wa-cloud-buttons{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.cloud-notice-buttons span,.wa-cloud-buttons span,.wa-cloud-buttons a{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);color:var(--blue);font-size:12px;font-weight:650;text-decoration:none;line-height:1.5;overflow-wrap:anywhere}
.wa-cloud-buttons{flex-direction:column;margin:12px 0 2px}
.wa-cloud-buttons a:hover{background:var(--blue-soft,#eaf3ff)}
.wa-cloud-buttons a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
.cloud-campaign-blockers,.cloud-campaign-progress{padding:18px;margin-top:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fff)}
.cloud-campaign-blockers ul{padding-left:20px;margin:10px 0 0;display:grid;gap:7px;color:var(--muted);font-size:13px;line-height:1.65}
.cloud-campaign-progress{display:grid;gap:12px;font-size:13px;line-height:1.65}
.cloud-campaign-progress progress{width:100%;height:8px;accent-color:var(--blue)}
.cloud-campaign-progress span,.cloud-campaign-progress small{color:var(--muted)}
.cloud-campaign-progress details{margin-top:4px}
@media(max-width:600px){.cloud-notice-buttons span{flex:1 1 140px}.cloud-campaign-blockers,.cloud-campaign-progress{padding:14px}.cloud-whatsapp-panel .form-actions{flex-wrap:wrap;gap:10px}}

/* Shared mail reader and actions. */
.gmail-item.active, .team-body .team-mail-item.active { background: var(--blue); border-color: var(--blue); color: #fff; border-radius: 10px; }
.team-body[data-theme="dark"] .team-mail-item.active { background: #1261ac; color: #fff; }
.gmail-layout .gmail-item.active strong, .gmail-layout .gmail-item.active time, .gmail-layout .gmail-item.active .gmail-item-subject, .gmail-layout .gmail-item.active .gmail-item-snippet,
.team-mail-item.active strong, .team-mail-item.active time, .team-mail-item.active small, .team-mail-item.active > span { color: #fff; }
.gmail-item.active::before { background: #fff; }
.gmail-item:focus-visible, .team-mail-item:focus-visible { outline: 2px solid var(--blue); outline-offset: -2px; }
.gmail-item.active:focus-visible, .team-mail-item.active:focus-visible { outline-color: #fff; }
.gmail-item[hidden], .team-mail-item[hidden], [data-mail-search-empty][hidden] { display: none; }
.mail-toolbar { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 10px; padding: 12px 16px; border-bottom: 1px solid var(--line); background: linear-gradient(#fff,var(--surface-soft)); flex-shrink: 0; }
.mail-tool-group { display: inline-flex; align-items: center; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); box-shadow: 0 3px 12px rgba(30,50,70,.04); }
.mail-tool { display: inline-grid; place-items: center; width: 34px; height: 34px; border: 0; border-radius: 50%; background: transparent; color: #687382; cursor: pointer; flex-shrink: 0; }
.mail-tool:hover { background: var(--blue-soft); color: var(--blue); }
.mail-tool:focus-visible, .mail-share-menu button:focus-visible, .mail-header-details summary:focus-visible, .mail-agent-details summary:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
.mail-tool:disabled { opacity: .35; cursor: not-allowed; }
.mail-tool:disabled:hover { background: transparent; color: #687382; }
.mail-toolbar-note { align-self: center; margin-left: auto; color: var(--muted); font-size: 10px; }
.mail-share { padding: 3px; border: 1px solid var(--line); border-radius: 20px; background: var(--surface); }
.mail-share > summary { list-style: none; }
.mail-share > summary::-webkit-details-marker { display: none; }
.mail-share-menu { display: grid; gap: 4px; min-width: 185px; padding: 8px 4px 4px; }
.mail-share-menu button { display: flex; align-items: center; gap: 9px; padding: 10px; text-align: left; border: 0; border-radius: 9px; color: var(--text); background: transparent; font-size: 11px; }
.mail-share-menu button:hover { background: var(--blue-soft); color: var(--blue); }
.mail-share-menu button:disabled { opacity: .35; cursor: not-allowed; }
.mail-search { padding: 10px 14px 7px; border-bottom: 1px solid var(--line); flex-shrink: 0; }
.mail-search label { display: flex; align-items: center; gap: 8px; padding: 0 11px; border: 1px solid var(--line); border-radius: 99px; background: var(--surface); color: var(--muted); }
.mail-search label:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px var(--blue-soft); }
.mail-search input { width: 100%; min-width: 0; height: 32px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--text); font: inherit; font-size: 11px; }
.mail-search small { display: block; color: var(--muted); font-size: 10px; margin-top: 5px; }
.mail-search small:empty { display: none; }
.mail-message-head { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 14px; padding: 23px 25px 19px; border-bottom: 1px solid var(--line); background: var(--surface); flex-shrink: 0; }
.mail-message-meta { display: flex; align-items: flex-start; gap: 12px; flex: 1 1 200px; min-width: 0; }
.mail-sender-copy { min-width: 0; }
.mail-sender-copy > strong { display: block; font-size: 12px; overflow-wrap: anywhere; }
.mail-sender-copy h2 { margin: 5px 0; font-size: 15px; line-height: 1.4; letter-spacing: -.2px; overflow-wrap: anywhere; }
.mail-sender-copy p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.mail-message-date { flex: 1 1 170px; max-width: 100%; text-align: right; }
.mail-message-date > time { display: block; color: var(--muted); font-size: 10px; line-height: 1.6; }
.mail-header-details { margin-top: 7px; }
.mail-header-details summary { display: inline-block; color: var(--blue); font-size: 11px; cursor: pointer; border-radius: 5px; padding: 2px 4px; }
.mail-header-details dl { margin: 10px 0 0; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-soft); text-align: left; }
.mail-header-details dl > div { display: grid; grid-template-columns: 65px minmax(0,1fr); gap: 9px; padding: 4px 0; font-size: 10px; line-height: 1.5; }
.mail-header-details dt { color: var(--muted); }
.mail-header-details dd { margin: 0; overflow-wrap: anywhere; }
.mail-agent-details { border-top: 1px solid var(--line); flex-shrink: 0; background: var(--surface); }
.mail-agent-details > summary { padding: 14px 24px; font-size: 12px; color: var(--blue); cursor: pointer; }
.mail-compose-dialog { width: min(690px,calc(100vw - 24px)); max-height: calc(100dvh - 32px); padding: 24px; overflow: auto; }
.mail-compose-dialog form { display: grid; gap: 16px; }
.mail-compose-dialog .field { margin: 0; }
.mail-compose-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.mail-compose-heading h2 { margin: 0; font-size: 20px; }
.mail-compose-dialog textarea { resize: vertical; min-height: 200px; line-height: 1.6; }
.mail-compose-dialog input[readonly] { color: var(--muted); background: var(--surface-soft); }
.mail-compose-error { color: #b42335; font-size: 12px; margin: 0; }
@media (max-width:740px) {
  .team-body .team-workspace:has(.team-mail-grid) { grid-template-columns: minmax(0,1fr); grid-template-rows: auto minmax(0,1fr); }
  .team-body .team-workspace:has(.team-mail-grid) > .team-channel-nav { position: static; width: auto; max-height: 160px; box-shadow: none; padding: 10px; border-bottom: 1px solid var(--line); }
  .team-body .team-workspace:has(.team-mail-grid) > .team-channel-nav.is-collapsed { max-height: 62px; }
  .team-body .team-workspace:has(.team-mail-grid) .team-channel-nav nav { display: flex; gap: 6px; overflow-x: auto; }
  .team-body .team-workspace:has(.team-mail-grid) .team-channel-nav nav > button { flex-shrink: 0; }
  .team-body .team-workspace:has(.team-mail-grid) .team-mail-compose, .team-body .team-workspace:has(.team-mail-grid) .team-label-heading { display: none; }
  .team-body .team-mail-grid:has(:is(.mail-message-head,.mail-conversation-heading)):not(.detail-collapsed) .team-mail-list { display: none; }
  .team-body .team-mail-grid:has(:is(.mail-message-head,.mail-conversation-heading)):not(.detail-collapsed) .team-mail-detail { display: flex; }
  .team-body .team-mail-grid .team-split-toggle { left: auto; right: 5px; top: 8px; }
  .mail-toolbar { padding: 10px 12px; gap: 6px; }
  .mail-toolbar-note { display: none; }
  .mail-message-head { padding: 18px; }
  .mail-message-date { text-align: left; }
  .mail-compose-dialog { padding: 18px; }
  .mail-compose-dialog .system-dialog-actions { flex-wrap: wrap; }
}
.task-layout-controls { display:flex; flex-wrap:wrap; align-items:flex-start; gap:12px; margin:18px 0; }
.task-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.task-toolbar .task-tabs { flex:1 1 560px; min-width:0; overflow-x:auto; }
.task-toolbar .task-view-switch { flex:0 1 auto; }
.task-toolbar .task-bases-button { flex:0 0 auto; margin-left:auto; }
@media(max-width:1400px) { .task-toolbar .task-tabs { flex-basis:100%; width:100%; } }
@media(max-width:1050px) { .task-toolbar .task-tabs { order:2; } .task-toolbar .task-view-switch { order:0; } .task-toolbar .task-bases-button { order:1; } }
.task-layout-controls label { display:grid; gap:7px; min-width:155px; color:var(--muted); font-size:11px; font-weight:650; }
.task-layout-controls .vito-select-trigger { min-height:38px; background:var(--surface); }
.task-layout-controls .btn { min-height:38px; font-size:11px; margin-top:22px; }
.task-fold-group { margin-bottom:10px; border:1px solid var(--line); border-radius:13px; background:var(--surface); }
.task-fold-group > summary { display:flex; align-items:center; gap:9px; min-height:46px; padding:12px; cursor:pointer; list-style:none; font-size:12px; font-weight:650; color:var(--text); }
.task-fold-group > summary::-webkit-details-marker { display:none; }
.task-fold-group > summary span { overflow-wrap:anywhere; min-width:0; }
.task-fold-group > summary b { padding:3px 7px; border-radius:7px; background:var(--task-soft); color:var(--task-color); font-size:10px; }
.task-fold-group > summary i { margin-left:auto; font-size:10px; color:var(--muted); transition:transform .15s; }
.task-fold-group[open] > summary i { transform:rotate(180deg); }
.task-fold-group > summary:hover { background:var(--surface-soft); border-radius:12px; }
.task-fold-group > summary:focus-visible { outline:2px solid var(--blue); outline-offset:2px; border-radius:12px; }
.task-fold-body { padding:0 9px 9px; }
.task-group-empty { margin:0; padding:18px 12px; color:var(--muted); font-size:11px; text-align:center; }
.task-group-more { display:block; width:100%; min-height:34px; text-align:center; font-size:11px; }
.task-compact-card { padding:12px; margin-bottom:9px; border-radius:11px; }
.task-compact-card .task-open-title { display:block; width:100%; font-size:12px; line-height:1.5; margin-bottom:9px; }
.task-compact-card .task-drag-handle { margin-bottom:8px; }
.task-compact-contact { display:grid; gap:6px; margin:10px 0; color:var(--muted); font-size:11px; overflow-wrap:anywhere; }
.task-compact-contact span { display:flex; align-items:baseline; gap:7px; }
.task-compact-card footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; padding-top:9px; border-top:1px solid var(--line); color:var(--muted); font-size:10px; }
.task-hybrid { display:grid; grid-template-columns:245px minmax(0,1fr); gap:16px; align-items:start; }
.task-hybrid-states { padding:17px; }
.task-hybrid h2 { margin:0; font-size:15px; }
.task-hybrid p { margin:8px 0 17px; color:var(--muted); font-size:11px; line-height:1.6; }
.task-hybrid-state { display:grid; width:100%; gap:10px; margin-top:11px; padding:15px; text-align:left; border:1px solid var(--line); border-radius:14px; background:var(--task-soft); color:var(--text); font:inherit; }
.task-hybrid-state strong { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--task-color); }
.task-hybrid-state strong b { margin-left:auto; padding:5px 7px; border-radius:8px; background:var(--surface); }
.task-hybrid-state > span { color:var(--muted); font-size:11px; line-height:1.5; }
.task-hybrid-state[aria-pressed="true"] { border-color:var(--task-color); box-shadow:0 0 0 1px var(--task-color); }
.task-hybrid-state:hover { border-color:var(--task-color); }
.task-hybrid-state.is-drop-target { outline:2px dashed var(--task-color); outline-offset:-5px; box-shadow:inset 0 0 0 4px var(--task-soft); }
.task-hybrid-state:focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.task-hybrid-state progress { appearance:none; width:100%; height:6px; border:0; border-radius:9px; background:var(--surface); overflow:hidden; }
.task-hybrid-state progress::-webkit-progress-bar { background:var(--surface); }
.task-hybrid-state progress::-webkit-progress-value { background:var(--task-color); border-radius:9px; }
.task-hybrid-state progress::-moz-progress-bar { background:var(--task-color); border-radius:9px; }
.task-hybrid-table { min-width:0; padding:18px; }
.task-hybrid-table header h2 { display:flex; align-items:center; gap:9px; }
.task-hybrid-table .data-table { min-width:760px; }
.task-hybrid-table .data-table td { padding:14px 12px; vertical-align:top; font-size:11px; }
.task-hybrid-table td:first-child { min-width:230px; max-width:310px; }
.task-hybrid-table .task-open-title { font-size:12px; line-height:1.5; }
.task-hybrid-table td small { display:block; margin:6px 0; color:var(--muted); overflow-wrap:anywhere; }
.task-hybrid-table .task-drag-handle { margin:0; }
.task-hybrid-table .task-move-panel { min-width:170px; margin:8px 0 0; }
.task-hybrid-table .task-pagination { flex-wrap:wrap; gap:14px; padding:16px 0 0; }
.task-hybrid-table .task-pagination label { display:flex; align-items:center; gap:9px; font-size:11px; color:var(--muted); }
.task-hybrid-table .task-pagination .vito-select { width:75px; }
.task-hybrid-table tr.is-dragging { opacity:.5; }
@media(max-width:1000px) { .task-hybrid { grid-template-columns:1fr; } .task-hybrid-states { display:flex; flex-wrap:wrap; gap:10px; } .task-hybrid-states h2,.task-hybrid-states p { flex-basis:100%; margin:0; } .task-hybrid-state { flex:1 1 150px; margin:0; } }
@media(max-width:600px) { .task-layout-controls { gap:10px; } .task-layout-controls label { flex:1 1 140px; min-width:0; } .task-layout-controls .btn { flex:1 1 140px; } .task-hybrid-table { padding:12px; } .task-view-switch { max-width:100%; flex-wrap:wrap; } .task-hybrid-table header h2 { flex-wrap:wrap; } }

/* Vito liquid glass: satin white fill, curved optical rims, sharp content. */
body.vito-liquid-glass {
  --glass-fill:rgba(247,250,254,.93);
  --glass-menu:rgba(253,254,255,.97);
  --glass-chrome:rgba(238,244,252,.90);
  --glass-edge:rgba(141,164,194,.32);
  --glass-shine:rgba(255,255,255,.96);
  --glass-shade:rgba(119,145,180,.12);
  --glass-rim:inset 0 1px 1px var(--glass-shine),inset 1px 0 1px rgba(255,255,255,.72),inset 0 -1px 2px var(--glass-shade);
  --glass-control-shadow:var(--glass-rim),0 3px 9px rgba(35,59,91,.08),0 1px 2px rgba(35,59,91,.04);
  --glass-panel-shadow:var(--glass-rim),0 8px 26px rgba(35,59,91,.065);
  --glass-lens-filter:url('#vito-glass-lens');
  background:radial-gradient(ellipse at 85% 0%,rgba(191,217,251,.35),transparent 48%),radial-gradient(ellipse at 5% 80%,rgba(218,226,245,.34),transparent 48%),var(--bg);
}
.vito-glass-filters { position:fixed;width:0;height:0;pointer-events:none;overflow:hidden; }
body.vito-liquid-glass :is(.sidebar,.team-sidebar,.whatsapp-workspace-nav,.gmail-folders,.team-channel-nav) {
  background:linear-gradient(135deg,rgba(255,255,255,.44),transparent 55%),var(--glass-chrome);
  border-color:var(--glass-edge);box-shadow:var(--glass-rim),5px 0 24px rgba(35,59,91,.035);
  backdrop-filter:blur(24px) saturate(1.25);-webkit-backdrop-filter:blur(24px) saturate(1.25);
}
body.vito-liquid-glass :is(.topbar,.team-topbar,.mail-toolbar) {
  background:linear-gradient(165deg,rgba(255,255,255,.7),rgba(255,255,255,.12)),var(--glass-chrome);
  border-color:var(--glass-edge);box-shadow:var(--glass-rim),0 5px 20px rgba(35,59,91,.04);
  backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);
}
body.vito-liquid-glass :is(.panel,.agent-card,.stat,.chat-main,.gmail-reader,.team-mail-detail,.team-whatsapp-detail) {
  background:linear-gradient(155deg,rgba(255,255,255,.99),rgba(249,252,255,.96));
  border-color:var(--glass-edge);box-shadow:var(--glass-panel-shadow);
}
body.vito-liquid-glass :is(.task-tabs,.task-view-switch,.task-subtabs,.task-base-tabs,.prod-segment,.client-tabs) {
  background:linear-gradient(165deg,rgba(255,255,255,.68),rgba(232,239,249,.35)),var(--glass-chrome);
  border-color:var(--glass-edge);box-shadow:var(--glass-rim),0 2px 6px rgba(35,59,91,.03);
}
body.vito-liquid-glass :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.client-search-launcher,.quick-chat-launcher,.team-quick-launcher,.task-tab,.task-subtabs button,.task-base-tabs button,.task-view-switch button,.prod-segment button,.vito-select-trigger,.mail-tool) {
  --control-fill:var(--glass-fill);--control-glow:rgba(255,255,255,.76);
  position:relative;isolation:isolate;
  background:radial-gradient(ellipse at var(--glass-x,28%) var(--glass-y,0%),var(--control-glow),transparent 72%),linear-gradient(160deg,rgba(255,255,255,.38),rgba(130,160,201,.08)),var(--control-fill);
  border-color:var(--glass-edge);box-shadow:var(--glass-control-shadow);
  transition:box-shadow .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease;
}
body.vito-liquid-glass :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.client-search-launcher,.quick-chat-launcher,.team-quick-launcher,.task-tab,.task-subtabs button,.task-base-tabs button,.task-view-switch button,.prod-segment button,.vito-select-trigger,.mail-tool)::before {
  content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;
  background:linear-gradient(150deg,rgba(255,255,255,.25),transparent 45%,rgba(255,255,255,.1));
  box-shadow:inset 1px 1px 1px rgba(255,255,255,.6),inset -1px -1px 2px rgba(116,149,190,.14);
  backdrop-filter:var(--glass-lens-filter) blur(1px);-webkit-backdrop-filter:blur(1px);
}
/* Floating launchers keep their viewport anchor; toolbar launchers reset their offsets above. */
body.vito-liquid-glass :is(.quick-chat-launcher,.team-quick-launcher):not(.is-toolbar) { position:fixed; top:auto; left:auto; }
/* Keep the team launcher anchored to the viewport, including the glass theme. */
.team-body #team-root > .team-quick-launcher:not(.is-toolbar) { position: fixed; top: auto; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); left: auto; max-width: calc(100vw - 32px); margin: 0; white-space: nowrap; }
.team-body #team-root .team-account > .team-quick-launcher.is-toolbar { position: relative; inset: auto; flex: 0 0 38px; width: 38px; height: 38px; min-height: 38px; padding: 0; }
body.vito-liquid-glass :is(.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.calendar-icon-button,.sidebar-toggle,.mail-tool) { --glass-lens-filter:url('#vito-glass-round'); }
body.vito-liquid-glass :is(.btn.btn-primary,.quick-chat-launcher,.team-quick-launcher) {
  --control-fill:#0874e5;--control-glow:rgba(106,187,255,.54);
  background:radial-gradient(ellipse at var(--glass-x,28%) var(--glass-y,0%),var(--control-glow),transparent 75%),linear-gradient(170deg,#1389fa,#0767d4);
  border-color:rgba(0,98,210,.5);color:#fff;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.56),inset 0 -1px 2px rgba(0,52,127,.2),0 4px 12px rgba(8,114,230,.2);
}
body.vito-liquid-glass :is(.task-tab,.task-subtabs button,.task-base-tabs button,.task-view-switch button,.prod-segment button):not(.is-active):not(.active):not([aria-pressed="true"]) { --control-fill:transparent;--control-glow:rgba(255,255,255,.12);border-color:transparent;box-shadow:none; }
body.vito-liquid-glass :is(.task-tab,.task-subtabs button,.task-base-tabs button,.task-view-switch button,.prod-segment button):not(.is-active):not(.active):not([aria-pressed="true"])::before { display:none; }
body.vito-liquid-glass :is(.task-tab.is-active,.task-subtabs .is-active,.task-base-tabs .is-active,.task-view-switch [aria-pressed="true"],.prod-segment .active,.vito-select-trigger.open) { --control-fill:rgba(255,255,255,.97);color:var(--blue);border-color:rgba(113,161,223,.36); }
body.vito-liquid-glass :is(.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle)[aria-expanded="true"] { --control-fill:var(--blue-soft);color:var(--blue);border-color:#9ac3f5; }
@media(hover:hover) {
  body.vito-liquid-glass :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.client-search-launcher,.quick-chat-launcher,.team-quick-launcher,.task-tab,.task-subtabs button,.task-base-tabs button,.task-view-switch button,.prod-segment button,.vito-select-trigger,.mail-tool):not(:disabled):not([aria-disabled="true"]):hover {
    border-color:rgba(100,144,203,.52);box-shadow:var(--glass-rim),0 5px 14px rgba(35,59,91,.13);
  }
  body.vito-liquid-glass :is(.btn-primary,.quick-chat-launcher,.team-quick-launcher):not(:disabled):hover { box-shadow:inset 0 1px 2px rgba(255,255,255,.7),inset 0 -1px 2px rgba(0,52,127,.2),0 5px 16px rgba(8,114,230,.28); }
}
body.vito-liquid-glass :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.client-search-launcher,.quick-chat-launcher,.team-quick-launcher,.vito-select-trigger,.mail-tool):not(:disabled):active { transform:scale(.98); }
body.vito-liquid-glass :is(button,.vito-select-trigger):focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
body.vito-liquid-glass :is(button,.vito-select-trigger):disabled,body.vito-liquid-glass [aria-disabled="true"] { opacity:.48;cursor:not-allowed;transform:none;box-shadow:none; }
body.vito-liquid-glass :is(button,.vito-select-trigger):disabled::before,body.vito-liquid-glass [aria-disabled="true"]::before { display:none; }
body.vito-liquid-glass :is(.vito-select-menu,.notifications-popover,.calendar-popover,.whatsapp-peek-panel,.mail-peek-panel,.quick-chat-panel,.system-dialog,.vito-tour-card.panel,.team-notifications-popover,.team-calendar-panel:not(.is-standalone),.team-whatsapp-popover,.team-quick-panel,.wa-reaction-picker,.wa-message-menu,.mail-share-menu) {
  background:linear-gradient(155deg,rgba(255,255,255,.45),transparent 70%),var(--glass-menu);
  border-color:var(--glass-edge);box-shadow:var(--glass-rim),var(--shadow-float);
  backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);
}
body.vito-liquid-glass :is(.vito-select-option[aria-selected="true"],.vito-select-option:hover,.vito-select-option:focus-visible) { background:var(--blue-soft);color:var(--blue); }
body.vito-liquid-glass :is(.nav-item,.team-side-item).active { background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(234,243,255,.92));border-color:var(--glass-edge);box-shadow:var(--glass-control-shadow); }
body.vito-liquid-glass .column[data-task-tone] { box-shadow:var(--glass-rim),0 4px 15px rgba(35,59,91,.035); }
body.vito-liquid-glass :is(.task-card,.team-task)[data-task-tone] { background:linear-gradient(155deg,#fff,#fcfdff);box-shadow:var(--glass-rim),0 3px 9px rgba(35,59,91,.045); }
body.vito-liquid-glass[data-theme="dark"] {
  --glass-fill:rgba(41,53,72,.95);--glass-menu:rgba(30,40,57,.98);--glass-chrome:rgba(28,39,57,.94);
  --glass-edge:rgba(135,161,199,.25);--glass-shine:rgba(208,226,255,.17);--glass-shade:rgba(0,0,0,.2);
  background:var(--bg);
}
body.vito-liquid-glass[data-theme="dark"] :is(.panel,.agent-card,.stat,.chat-main,.gmail-reader,.team-mail-detail,.team-whatsapp-detail,.task-card,.team-task) { background:var(--surface); }
body.vito-liquid-glass[data-theme="dark"] :is(.nav-item,.team-side-item).active { background:var(--blue-soft); }
body.vito-liquid-glass[data-theme="dark"] :is(.btn,.calendar-icon-button,.sidebar-toggle,.notification-toggle,.calendar-toggle,.whatsapp-peek-toggle,.mail-peek-toggle,.client-search-launcher,.vito-select-trigger,.mail-tool) { --control-glow:rgba(167,198,238,.12);color:var(--text); }
body.vito-liquid-glass[data-theme="dark"] .btn-primary { color:#fff; }
body.vito-liquid-glass[data-theme="dark"] :is(.task-tab.is-active,.task-subtabs .is-active,.task-base-tabs .is-active,.task-view-switch [aria-pressed="true"],.prod-segment .active,.vito-select-trigger.open) { --control-fill:var(--blue-soft);color:var(--blue); }
@media(prefers-reduced-motion:reduce) { body.vito-liquid-glass :is(button,.vito-select-trigger) { transition:none; } body.vito-liquid-glass :is(button,.vito-select-trigger):active { transform:none; } }
@media(prefers-reduced-transparency:reduce),(forced-colors:active) {
  body.vito-liquid-glass { --glass-fill:var(--surface);--glass-menu:var(--surface);--glass-chrome:var(--surface-soft); }
  body.vito-liquid-glass :is(.sidebar,.team-sidebar,.topbar,.team-topbar,.mail-toolbar,.vito-select-menu,.system-dialog,.notifications-popover,.calendar-popover,.whatsapp-peek-panel,.mail-peek-panel,.quick-chat-panel,.team-quick-panel) { backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--surface); }
  body.vito-liquid-glass :is(button,.vito-select-trigger)::before { display:none; }
}
@supports not (backdrop-filter:blur(1px)) { body.vito-liquid-glass { --glass-fill:var(--surface);--glass-menu:var(--surface);--glass-chrome:var(--surface-soft); } }
/* One-case workspace, shared by the local app and the team portal. */
.workspace-view-switch { display:inline-flex;flex:0 0 auto;gap:4px;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft); }
.workspace-view-switch button { min-height:34px;padding:8px 12px;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--muted);font:inherit;font-size:11px;font-weight:650;white-space:nowrap;cursor:pointer; }
.workspace-view-switch button[aria-pressed="true"] { background:var(--surface);border-color:var(--line);box-shadow:var(--shadow);color:var(--blue); }
.workspace-view-switch button:hover { color:var(--blue);background:var(--blue-soft); }
.workspace-view-switch button:focus-visible,.predictive-workspace :focus-visible { outline:2px solid var(--blue);outline-offset:3px; }
.basic-workspace .sidebar,.basic-workspace #sidebar-toggle,.basic-workspace #team-sidebar,.basic-workspace #team-sidebar-toggle,.basic-workspace .team-sidebar-backdrop { display:none!important; }
.basic-workspace .main-content { margin-left:0!important; }
.team-body.basic-workspace #team-root { --team-sidebar-width:0px!important; }
.basic-workspace .team-new-task { display:none; }
.predictive-workspace { max-width:1320px;margin:0 auto;padding-bottom:55px; }
.predictive-intro { display:flex;justify-content:space-between;align-items:center;gap:24px;margin:8px 0 24px; }
.predictive-intro h2 { margin:7px 0 10px;font-size:28px;letter-spacing:-.7px; }
.predictive-intro p,.predictive-empty p { color:var(--muted);font-size:13px;line-height:1.7; }
.predictive-progress { margin:-4px 0 18px;padding:17px 22px;border-radius:18px; }
.predictive-progress-head { display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px; }
.predictive-progress-head>div { display:flex;align-items:baseline;gap:9px;flex-wrap:wrap; }
.predictive-progress-head .eyebrow { color:var(--muted);font-size:10px; }
.predictive-progress-head strong { color:var(--text);font-size:20px;letter-spacing:-.6px; }
.predictive-progress-head small { color:var(--muted);font-size:11px; }
.predictive-progress-head b { color:var(--blue);font-size:19px;white-space:nowrap; }
.predictive-progress progress { display:block;width:100%;height:10px;appearance:none;border:0;border-radius:999px;background:var(--blue-soft);overflow:hidden; }
.predictive-progress progress::-webkit-progress-bar { border-radius:999px;background:var(--blue-soft); }
.predictive-progress progress::-webkit-progress-value { border-radius:999px;background:linear-gradient(90deg,#50a8ff,var(--blue)); }
.predictive-progress progress::-moz-progress-bar { border-radius:999px;background:linear-gradient(90deg,#50a8ff,var(--blue)); }
.predictive-progress-scale { display:flex;justify-content:space-between;margin-top:5px;color:var(--muted);font-size:10px; }
.predictive-counts { display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:24px;color:var(--muted);font-size:12px; }
.predictive-counts strong { color:var(--text);margin-right:5px; }
.predictive-layout { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.85fr);gap:24px;align-items:start; }
.predictive-case,.predictive-comments { padding:26px;min-width:0; }
.predictive-case .task-context-preview { display:none; }
.predictive-case-top { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.predictive-status { font-size:11px;color:var(--muted); }
.predictive-case h2 { font-size:21px;line-height:1.5;margin:22px 0 18px;overflow-wrap:anywhere; }
.predictive-case h3,.predictive-comments h3 { font-size:14px;margin:0 0 10px; }
.predictive-case p,.predictive-message p { font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere; }
.predictive-next-action { margin:24px 0;padding:20px;background:var(--blue-soft);border:1px solid var(--line);border-radius:16px; }
.predictive-next-action p { margin-top:9px; }
.predictive-case>section { margin:24px 0; }
.predictive-details { border-top:1px solid var(--line);padding:16px 0; }
.predictive-details summary,.predictive-followup summary { cursor:pointer;font-size:12px;font-weight:650;line-height:1.7; }
.predictive-details[open]>summary { margin-bottom:16px;color:var(--blue); }
.predictive-details dl { display:grid;grid-template-columns:130px 1fr;gap:12px;margin-top:16px;font-size:12px; }
.predictive-details dd { margin:0;overflow-wrap:anywhere; }
.predictive-details dt,.predictive-details small { color:var(--muted); }
.predictive-details ul,.predictive-details ol { padding-left:20px;max-height:350px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent; }
.predictive-details li { padding:12px 0;font-size:12px; }
.predictive-details li small { display:block;margin:6px 0; }
.predictive-case>.btn { margin-top:12px; }
.predictive-comments-head { display:flex;gap:12px;align-items:center;margin-bottom:20px; }
.predictive-comments-head img,.predictive-empty img { width:42px;height:42px;object-fit:contain; }
.predictive-comments-head h3 { margin-bottom:4px; }
.predictive-comments-head small,.predictive-message time,.predictive-message small { color:var(--muted);font-size:10px;line-height:1.6; }
.predictive-thread { display:flex;flex-direction:column;gap:14px;max-height:390px;overflow:auto;padding:2px 4px 16px;scrollbar-width:thin;scrollbar-color:var(--line) transparent; }
.predictive-message { padding:15px 17px;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft); }
.predictive-message.is-advisor { margin-left:28px;background:var(--blue-soft); }
.predictive-message.is-vito { margin-right:12px; }
.predictive-message strong { font-size:11px; }
.predictive-message p { margin:7px 0; }
.predictive-comments form { border-top:1px solid var(--line);padding-top:18px; }
.predictive-comments label { display:block;font-size:12px;font-weight:600;margin-bottom:9px; }
.predictive-comments textarea { width:100%;resize:vertical;min-height:104px; }
.predictive-followup { padding:14px 0; }
.predictive-followup label { margin-top:14px; }
.predictive-followup input { width:100%;min-width:0; }
.predictive-followup small { display:block;color:var(--muted);font-size:10px;line-height:1.6;margin:8px 0; }
.predictive-error { color:#bd3347;font-size:12px;line-height:1.6;margin-bottom:12px; }
.predictive-error:empty { display:none; }
.predictive-advance { margin-top:20px;border-top:1px solid var(--line);padding-top:18px; }
.predictive-advance p { color:var(--muted);font-size:11px;line-height:1.7;margin-bottom:12px; }
.predictive-comments .btn { width:100%;justify-content:center; }
.predictive-chat { display:flex;flex-direction:column;padding:0;overflow:hidden;min-height:560px; }
.predictive-chat .predictive-comments-head { gap:11px;margin:0;padding:18px 20px;border-bottom:1px solid var(--line); }
.predictive-chat .predictive-comments-head img { width:38px;height:38px; }
.predictive-chat .predictive-comments-head h3 { margin:0 0 3px; }
.predictive-chat-status { display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px;white-space:nowrap; }
.predictive-chat-status span { width:6px;height:6px;border-radius:50%;background:#24aa75; }
.predictive-chat .predictive-thread { flex:1;min-height:250px;max-height:min(55vh,540px);gap:16px;padding:20px;scrollbar-width:thin;scrollbar-color:var(--line) transparent;background:linear-gradient(180deg,var(--surface-soft),#fff 70%); }
.predictive-chat .predictive-message { display:flex;align-items:flex-end;gap:8px;padding:0;border:0;border-radius:0;background:transparent; }
.predictive-chat .predictive-message.is-advisor { justify-content:flex-end;margin:0; }
.predictive-chat .predictive-message.is-vito { margin:0; }
.predictive-message-avatar { flex:none;width:28px;height:28px;object-fit:contain; }
.predictive-chat .predictive-message-bubble { max-width:86%;padding:12px 14px;border:1px solid var(--line);border-radius:16px 16px 16px 5px;background:var(--surface);box-shadow:0 2px 8px rgba(31,51,80,.04); }
.predictive-chat .is-advisor .predictive-message-bubble { border-color:#cce0fb;border-radius:16px 16px 5px 16px;background:var(--blue-soft); }
.predictive-message-meta { display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 10px; }
.predictive-chat .predictive-message strong { font-size:11px; }
.predictive-chat .predictive-message time { color:var(--muted);font-size:10px; }
.predictive-chat .predictive-message p { margin:7px 0 0;font-size:12px;line-height:1.65; }
.predictive-message-kind { display:inline-block;margin-top:9px;color:var(--blue);font-size:10px;font-weight:650; }
.predictive-chat .predictive-message small { display:block;margin-top:5px; }
.predictive-typing { color:var(--muted);font-size:12px; }
.predictive-chat .predictive-composer { padding:15px 20px 10px;border-top:1px solid var(--line); }
.predictive-composer-row { display:flex;align-items:flex-end;gap:9px; }
.predictive-chat .predictive-composer textarea { flex:1;min-width:0;min-height:54px;max-height:150px;resize:vertical;border-radius:14px; }
.predictive-chat .predictive-send { flex:none;width:auto;min-width:88px;height:42px;padding:0 14px;gap:7px;border-radius:12px; }
.predictive-chat-hint { display:block;margin-top:7px;color:var(--muted);font-size:10px; }
.predictive-chat .predictive-followup { padding:12px 0 0; }
.predictive-chat .predictive-advance { margin:0;padding:11px 20px 18px;background:var(--surface); }
.predictive-chat .predictive-advance p { margin-bottom:9px; }
.predictive-workspace .btn:disabled { opacity:.5;cursor:not-allowed; }
.predictive-empty { display:grid;justify-items:center;text-align:center;gap:16px;padding:60px 26px; }
.predictive-empty h3 { margin:0;font-size:21px; }
.predictive-empty small { max-width:540px;color:var(--muted);font-size:12px;line-height:1.8; }
@media(max-width:1050px) { .predictive-layout { grid-template-columns:minmax(0,1fr); }.predictive-comments { max-width:none; }.workspace-view-switch button { padding:8px;font-size:10px; } }
@media(max-width:600px) { .predictive-case,.predictive-comments { padding:18px; }.predictive-intro { align-items:flex-start;gap:12px; }.predictive-intro h2 { font-size:23px; }.predictive-intro>.btn { font-size:0;min-width:40px; }.predictive-intro>.btn i { font-size:13px; }.predictive-counts { gap:10px;font-size:11px; }.predictive-details dl { grid-template-columns:1fr;gap:7px; }.predictive-details dd { margin-bottom:10px; }.basic-workspace .topbar { height:auto;min-height:74px;flex-wrap:wrap;padding:12px 16px;gap:12px; }.basic-workspace .topbar-left { flex:1 0 100%; }.basic-workspace .topbar-right { margin-left:0; }.basic-workspace .topbar-title { font-size:18px; }.basic-workspace .local-pill { display:none; } }
@media(max-width:600px) { .predictive-chat { padding:0;min-height:0; }.predictive-chat .predictive-thread { min-height:260px;max-height:430px;padding:16px; }.predictive-chat .predictive-comments-head,.predictive-chat .predictive-composer { padding-left:16px;padding-right:16px; }.predictive-chat .predictive-advance { padding-left:16px;padding-right:16px; }.predictive-chat .predictive-send { min-width:44px;padding:0 12px; }.predictive-chat .predictive-send span { display:none; }.predictive-chat-status { font-size:0; }.predictive-chat-status span { width:8px;height:8px; } }
@media(max-width:600px) { .basic-workspace .predictive-workspace { padding-bottom:130px; } }
@media(max-width:600px) { .predictive-progress { padding:14px 16px; }.predictive-progress-head { align-items:flex-start; }.predictive-progress-head>div { gap:4px 9px; }.predictive-progress-head .eyebrow { flex-basis:100%; }.predictive-progress-head strong { font-size:19px; }.predictive-progress-head small { font-size:10px; }.predictive-progress-head b { font-size:18px; } }

/* Predictive console: queue, focused case and Vito stay visible together. */
.predictive-board-workspace { max-width:1760px;padding:0 14px 48px; }
.predictive-overview { display:flex;align-items:center;gap:18px;margin:4px 0 14px;padding:12px 15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.8);box-shadow:0 7px 24px rgba(37,58,88,.05); }
.predictive-overview>div:first-child { flex:1 1 260px;min-width:210px; }
.predictive-overview .eyebrow { display:block;margin-bottom:3px;color:var(--muted);font-size:9px; }
.predictive-overview h2 { display:inline;margin:0 9px 0 0;font-size:18px;letter-spacing:-.4px; }
.predictive-overview p { display:inline;color:var(--muted);font-size:11px; }
.predictive-overview-progress { flex:0 1 280px;min-width:210px; }
.predictive-overview-progress>div { display:flex;align-items:baseline;gap:6px;margin-bottom:6px; }
.predictive-overview-progress strong { font-size:16px; }
.predictive-overview-progress span { flex:1;color:var(--muted);font-size:9px; }
.predictive-overview-progress b { color:var(--blue);font-size:13px; }
.predictive-overview-progress progress { display:block;width:100%;height:6px;overflow:hidden;border:0;border-radius:999px;appearance:none;background:var(--blue-soft); }
.predictive-overview-progress progress::-webkit-progress-bar { background:var(--blue-soft); }
.predictive-overview-progress progress::-webkit-progress-value { border-radius:999px;background:linear-gradient(90deg,#58adff,var(--blue)); }
.predictive-overview-progress progress::-moz-progress-bar { border-radius:999px;background:linear-gradient(90deg,#58adff,var(--blue)); }
.predictive-overview-counts { display:flex;flex:0 1 auto;gap:13px; }
.predictive-overview-counts span { color:var(--muted);font-size:9px;white-space:nowrap; }
.predictive-overview-counts strong { display:block;color:var(--text);font-size:13px;text-align:center; }
.predictive-overview>.btn { flex:none; }
.predictive-console-layout { grid-template-columns:minmax(235px,.7fr) minmax(455px,1.62fr) minmax(280px,.82fr);gap:12px;align-items:start; }
.predictive-queue { position:sticky;top:12px;display:flex;min-width:0;max-height:calc(100dvh - 150px);padding:0;overflow:hidden;flex-direction:column;border-radius:17px; }
.predictive-queue>header { display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 10px; }
.predictive-queue>header>div { display:flex;align-items:center;gap:8px; }
.predictive-queue h2 { margin:0;font-size:16px;letter-spacing:-.3px; }
.predictive-queue>header span { display:grid;min-width:24px;height:24px;padding:0 6px;place-items:center;border-radius:9px;background:var(--blue-soft);color:var(--blue);font-size:10px;font-weight:750; }
.predictive-queue-search { display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:0 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--muted); }
.predictive-queue-search:focus-within { border-color:#85baf3;box-shadow:0 0 0 3px rgba(30,128,235,.1); }
.predictive-queue-search input { width:100%;height:35px;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:10px; }
.predictive-queue-tabs { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0 12px 10px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface-soft); }
.predictive-queue-tabs button { min-width:0;padding:7px 4px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:9px;white-space:nowrap;cursor:pointer; }
.predictive-queue-tabs button[aria-pressed="true"] { background:var(--surface);color:var(--blue);box-shadow:var(--shadow);font-weight:700; }
.predictive-queue-tabs b { margin-left:2px;font-size:9px; }
.predictive-queue-list { display:flex;flex:1 1 auto;min-height:140px;overflow-y:auto;padding:0 10px 12px;flex-direction:column;gap:7px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.predictive-queue-card { position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 8px;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s; }
.predictive-queue-card:hover:not(:disabled),.predictive-queue-card:focus-visible { border-color:#9cc9fb;background:#f8fbff;box-shadow:0 5px 14px rgba(31,92,165,.09);transform:translateY(-1px); }
.predictive-queue-card.is-active { border-color:#7fb9f8;background:linear-gradient(145deg,#f8fbff,#eef6ff);box-shadow:0 0 0 2px rgba(19,120,238,.08); }
.predictive-queue-card.is-reviewing:disabled { opacity:1;cursor:default;background:var(--surface-soft); }
.predictive-queue-card[hidden] { display:none; }
.predictive-queue-priority { display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:9px; }
.predictive-queue-priority i,.predictive-priority-chip i { width:7px;height:7px;border-radius:50%;background:#8494a7; }
[data-priority="high"] { color:#d83146; } [data-priority="high"] i { background:#e42d48; }
[data-priority="medium"] { color:#b9770c; } [data-priority="medium"] i { background:#ef9f15; }
[data-priority="low"] { color:#66778c; } [data-priority="low"] i { background:#8292a5; }
.predictive-queue-card time { color:var(--muted);font-size:8px;text-align:right; }
.predictive-queue-card strong { grid-column:1/-1;overflow:hidden;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap; }
.predictive-queue-card>span:not(.predictive-queue-priority) { grid-column:1/-1;overflow:hidden;color:#58677a;font-size:9px;text-overflow:ellipsis;white-space:nowrap; }
.predictive-queue-card small { grid-column:1/-1;color:var(--muted);font-size:8px; }
.predictive-queue-empty { margin:auto;padding:25px 12px;color:var(--muted);font-size:10px;text-align:center; }
.predictive-case-console { padding:0;overflow:hidden;border-radius:17px; }
.predictive-case-nav { display:flex;min-height:47px;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px;border-bottom:1px solid var(--line); }
.predictive-case-nav>div { display:flex;align-items:center;gap:7px; }
.predictive-case-nav button { display:inline-flex;min-width:31px;height:31px;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:#65758a;cursor:pointer; }
.predictive-case-nav button:hover:not(:disabled) { border-color:#add1f8;color:var(--blue);background:var(--blue-soft); }
.predictive-case-nav button:disabled { opacity:.4;cursor:not-allowed; }
.predictive-case-nav span { color:var(--muted);font-size:10px; }
.predictive-case-nav .predictive-next-case-link { border:0;color:var(--blue);font-size:10px;font-weight:700; }
.predictive-case-content { padding:17px 18px 16px; }
.predictive-case-console .predictive-case-top>div { display:flex;align-items:center;gap:7px;flex-wrap:wrap; }
.predictive-priority-chip { display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#fff0f2;font-size:9px;font-weight:700; }
.predictive-case-console .badge { padding:5px 9px;font-size:9px; }
.predictive-case-console h2 { margin:13px 0 14px;font-size:20px;line-height:1.32;letter-spacing:-.45px; }
.predictive-identity { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft); }
.predictive-identity>div { display:flex;min-width:0;align-items:center;gap:9px;padding:10px;border-right:1px solid var(--line); }
.predictive-identity>div:last-child { border-right:0; }
.predictive-identity>div>i { display:grid;flex:0 0 31px;width:31px;height:31px;place-items:center;border-radius:10px;background:#e9f3ff;color:var(--blue); }
.predictive-identity span { min-width:0; }
.predictive-identity strong,.predictive-identity small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.predictive-identity strong { font-size:10px; }
.predictive-identity small { margin-top:2px;color:var(--muted);font-size:8px; }
.predictive-case-console .predictive-next-action { margin:0 0 12px;padding:15px 16px;border-color:#cae0f9;border-radius:13px;background:linear-gradient(135deg,#eef7ff,#e5f1ff); }
.predictive-next-action header,.predictive-case-summary>header,.predictive-result>header { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.predictive-next-action h3,.predictive-case-summary h3,.predictive-result h3 { display:flex;align-items:center;gap:8px;margin:0;font-size:12px; }
.predictive-next-action h3 i,.predictive-result h3 i { color:var(--blue); }
.predictive-next-action header span { display:inline-flex;align-items:center;gap:5px;color:#4476a9;font-size:8px; }
.predictive-next-action header span i { color:#2bb57c;font-size:6px; }
.predictive-case-console .predictive-next-action p { margin:10px 0 0;font-size:12px;line-height:1.6; }
.predictive-case-summary,.predictive-result { margin:12px 0 0!important;padding:14px 15px;border:1px solid var(--line);border-radius:13px;background:var(--surface); }
.predictive-case-summary header time,.predictive-result header small { color:var(--muted);font-size:8px; }
.predictive-case-summary>p { margin:11px 0;font-size:11px!important;line-height:1.6!important; }
.predictive-case-summary>details { border-top:1px solid var(--line); }
.predictive-case-summary>details>summary { padding:10px 2px 0;cursor:pointer;color:#536277;font-size:9px;font-weight:700; }
.predictive-case-summary>details[open]>summary { color:var(--blue); }
.predictive-case-summary>details>div { padding-top:5px; }
.predictive-case-summary .predictive-details { margin:0; }
.predictive-result>div { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:12px; }
.predictive-result>div button { display:flex;min-height:43px;align-items:center;justify-content:center;gap:7px;padding:7px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:#435267;font:inherit;font-size:9px;font-weight:700;cursor:pointer; }
.predictive-result button[data-tone="success"] { border-color:#b9e7d3;background:#ecfbf4;color:#18815a; }
.predictive-result button[data-tone="blue"] { border-color:#bad8fc;background:#eef6ff;color:#126ed4; }
.predictive-result button[data-tone="warning"] { border-color:#f0d2a2;background:#fff7e9;color:#b16808; }
.predictive-result button[data-tone="danger"] { border-color:#efc3c9;background:#fff1f3;color:#bd3144; }
.predictive-result button:hover { filter:brightness(.985);box-shadow:0 4px 12px rgba(38,59,88,.08); }
.predictive-case-footer { display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 13px;border-top:1px solid var(--line);background:var(--surface-soft); }
.predictive-case-footer small { color:var(--muted);font-size:8px;text-align:right; }
.predictive-side { position:sticky;top:12px;display:flex;min-width:0;max-height:calc(100dvh - 150px);flex-direction:column;gap:10px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.predictive-side .predictive-chat { flex:0 0 auto;min-height:0;border-radius:17px; }
.predictive-side .predictive-chat .predictive-thread { min-height:125px;max-height:205px;padding:14px;background:linear-gradient(180deg,var(--surface-soft),#fff); }
.predictive-side .predictive-chat .predictive-comments-head { padding:13px 14px; }
.predictive-side .predictive-chat .predictive-composer { padding:10px 13px 8px; }
.predictive-side .predictive-chat .predictive-composer textarea { min-height:45px; }
.predictive-side .predictive-chat .predictive-send { min-width:42px;width:42px;padding:0; }
.predictive-side .predictive-chat .predictive-send span { display:none; }
.predictive-chat-suggestions { padding:10px 13px 2px; }
.predictive-chat-suggestions>small { display:block;margin-bottom:6px;color:var(--muted);font-size:8px; }
.predictive-chat-suggestions>div { display:flex;flex-wrap:wrap;gap:5px; }
.predictive-chat-suggestions button { padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:#59697d;font:inherit;font-size:8px;cursor:pointer; }
.predictive-chat-suggestions button:hover { border-color:#a8cdf5;background:var(--blue-soft);color:var(--blue); }
.predictive-side-card { padding:12px 13px;border-radius:15px; }
.predictive-side-card>header { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px; }
.predictive-side-card h3 { display:flex;align-items:center;gap:8px;margin:0;font-size:11px; }
.predictive-side-card h3 i { color:var(--blue); }
.predictive-side-card>header button { padding:6px 8px;border:1px solid #cfe3fa;border-radius:9px;background:var(--blue-soft);color:var(--blue);font:inherit;font-size:8px;font-weight:700;cursor:pointer; }
.predictive-reminder { display:grid;width:100%;grid-template-columns:auto 1fr auto;gap:3px 8px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer; }
.predictive-reminder>span { grid-row:1/3;width:15px;height:15px;border:1px solid #b8c9dc;border-radius:4px; }
.predictive-reminder strong { font-size:9px; }.predictive-reminder small { color:var(--muted);font-size:8px; }.predictive-reminder>i { grid-row:1/3;grid-column:3;color:var(--muted); }
.predictive-quick-actions { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
.predictive-quick-actions button { display:flex;min-height:37px;align-items:center;justify-content:center;gap:6px;padding:7px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font:inherit;font-size:8px;font-weight:650;cursor:pointer; }
.predictive-quick-actions button:hover { border-color:#a8cdf5;background:var(--blue-soft);color:var(--blue); }
.basic-workspace :is(.quick-chat-launcher,.team-quick-launcher:not(.is-toolbar)) { width:48px;min-width:48px;height:48px;min-height:48px;justify-content:center;padding:0;border-radius:50%; }
.basic-workspace :is(.quick-chat-launcher,.team-quick-launcher:not(.is-toolbar))>span { display:none; }
@media(max-width:1030px){
 .predictive-console-layout { grid-template-columns:minmax(250px,.62fr) minmax(0,1.5fr); }
 .predictive-side { position:static;grid-column:2;display:grid;grid-template-columns:1fr 1fr;max-height:none;overflow:visible; }
 .predictive-side .predictive-chat { grid-column:1/-1; }
 .predictive-overview-counts { display:none; }
}
@media(max-width:820px){
 .predictive-overview { align-items:flex-start;flex-wrap:wrap; }
 .predictive-overview-progress { order:3;flex:1 0 100%; }
 .predictive-console-layout { grid-template-columns:minmax(0,1fr); }
 .predictive-queue { position:static;max-height:390px; }
 .predictive-side { grid-column:auto; }
 .predictive-identity { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .predictive-identity>div:nth-child(2) { border-right:0; }
 .predictive-identity>div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
 .predictive-result>div { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:600px){
 .predictive-board-workspace { padding:0 8px 130px; }
 .predictive-overview { margin-top:0;padding:10px 12px; }
 .predictive-overview p { display:block;margin-top:3px; }
 .predictive-overview>.btn { font-size:0;min-width:38px; }
 .predictive-overview>.btn i { font-size:12px; }
 .predictive-case-content { padding:14px 12px; }
 .predictive-case-console h2 { font-size:18px; }
 .predictive-identity { grid-template-columns:1fr; }
 .predictive-identity>div { border-right:0;border-bottom:1px solid var(--line); }
 .predictive-identity>div:last-child { border-bottom:0; }
 .predictive-result>div { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .predictive-case-footer { grid-template-columns:1fr; }
 .predictive-case-footer small { text-align:left; }
 .predictive-side { display:flex; }
 .predictive-quick-actions { grid-template-columns:1fr; }
}
/* Keep both view choices and the existing toolbar actions reachable on phones. */
@media(max-width:600px){
 .topbar:has(.workspace-view-switch){height:auto;min-height:74px;padding:10px 14px;flex-wrap:wrap;gap:8px;}
 .topbar:has(.workspace-view-switch) .topbar-right{width:100%;max-width:100%;flex-wrap:wrap;margin-left:0;justify-content:flex-start;}
 .topbar:has(.workspace-view-switch) .topbar-actions{display:contents;}
 .topbar:has(.workspace-view-switch) .workspace-view-switch{flex-basis:100%;width:100%;justify-content:center;}
 .topbar:has(.workspace-view-switch) .workspace-view-switch button{flex:1;}
 .basic-workspace .topbar:has(.workspace-view-switch) .workspace-view-switch{flex-basis:auto;width:auto;}
}
/* Individual email replies in the inbox and case workspace. */
.mail-thread{min-width:0;margin:20px 0;color:var(--text,#272d36)}
.mail-conversation-heading{padding:16px 24px;border-bottom:1px solid var(--border,#e0e5ed);flex-shrink:0}
.mail-conversation-heading h2{font-size:15px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}
.mail-conversation-heading p{margin:0;font-size:11px;color:var(--muted,#728098)}
.mail-thread-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:14px}
.mail-thread-heading h3{display:flex;align-items:center;gap:8px;margin:0;font-size:14px}
.mail-thread-heading small{color:var(--muted,#728098);font-size:11px}
.mail-thread-message{margin:10px 0;border:1px solid var(--border,#e0e5ed);border-radius:15px;background:#fff;overflow:hidden}
.mail-thread-message[open]{border-color:#a8ceff;box-shadow:0 2px 10px #267bda08}
.mail-thread-message>summary{display:flex;align-items:flex-start;gap:12px;padding:16px;cursor:pointer;list-style:none}
.mail-thread-message>summary::-webkit-details-marker{display:none}
.mail-thread-message>summary:hover{background:#f5f9ff}
.mail-thread-message>summary:focus-visible,.mail-thread-content summary:focus-visible{outline:2px solid var(--primary,#087dff);outline-offset:-3px;border-radius:12px}
.mail-thread-message>summary>.fa-chevron-down{font-size:11px;color:#7f90a8;margin-top:7px;transition:transform .15s}
.mail-thread-message[open]>summary>.fa-chevron-down{transform:rotate(180deg)}
.mail-thread-avatar{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:#eaf3ff;color:#1677ee;font-weight:700}
.mail-thread-summary{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px;font-size:12px;overflow-wrap:anywhere}
.mail-thread-summary time{font-size:11px;color:var(--muted,#728098)}
.mail-thread-excerpt{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#6c7789;font-size:11px}
.mail-thread-message[open] .mail-thread-excerpt{display:none}
.mail-thread-direction{flex-shrink:0;color:#63758d;background:#f0f4fa;border-radius:7px;padding:4px 7px;font-size:10px}
.mail-thread-content{padding:0 18px 18px;border-top:1px solid #eef2f7}
.mail-reply-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;font-size:13px;padding:14px 0;color:#2c3542}
.mail-thread-addresses,.mail-thread-original{margin-top:12px;color:#64748b;font-size:11px}
.mail-thread-content summary{cursor:pointer;padding:5px 0}
.mail-thread-addresses dl{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;padding:12px;background:#f7f9fc;border-radius:9px}
.mail-thread-addresses dd{margin:0;overflow-wrap:anywhere}
.mail-thread-attachments{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:10px 0;list-style:none}
.mail-thread-attachments li{min-width:0;max-width:100%}
.mail-thread-attachments a{display:flex;align-items:center;gap:10px;max-width:100%;padding:10px 12px;border:1px solid #dbe7f5;border-radius:10px;color:#1677ee;text-decoration:none;background:#f8fbff;font-size:12px}
.mail-thread-attachments a span{overflow-wrap:anywhere;min-width:0}
.mail-thread-attachments a:hover{background:#eaf3ff}
.mail-thread-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.mail-thread-actions .btn{font-size:11px;padding:8px 11px}
.mail-thread-original iframe{display:block;width:100%;height:440px;border:1px solid #e1e7ef;border-radius:10px;margin-top:10px;background:#fff}
.team-mail-detail>.mail-thread{padding:0 20px;flex:1;min-height:0;overflow:auto}
.predictive-case .mail-thread{margin-top:24px}
@media(max-width:600px){.mail-thread-message>summary{gap:8px;padding:12px;flex-wrap:wrap}.mail-thread-direction{margin-left:40px}.mail-thread-summary{flex-basis:calc(100% - 50px)}.mail-thread-content{padding:0 12px 14px}.team-mail-detail>.mail-thread{padding:0 10px}.mail-thread-original iframe{height:350px}}

/* Floating notices arrive as a soft card and contract into a capsule on exit. */
@keyframes vito-notice-enter {
  0% { opacity: 0; transform: translate(-28px,-10px) scale(.78,.82); filter: blur(3px); }
  62% { opacity: 1; transform: translate(3px,0) scale(1.025,1.015); filter: blur(0); }
  100% { opacity: 1; transform: translate(0,0) scale(1); filter: blur(0); }
}
@keyframes vito-notice-exit {
  0% { opacity: 1; transform: translate(0,0) scale(1); border-radius: 22px; }
  43% { opacity: 1; transform: translate(-3px,0) scale(.72,.88); border-radius: 26px; }
  78% { opacity: .9; transform: translate(-8px,0) scale(.24,.21); border-radius: 99px; }
  100% { opacity: 0; transform: translate(-14px,0) scale(.16,.16); border-radius: 99px; }
}
@media (max-width: 760px) {
  #toast, body:not(.sidebar-collapsed) #toast { top: 158px; left: 14px; max-width: calc(100vw - 28px); }
}
@media (max-width: 650px) {
  .team-body .team-coach-toast { top: 136px; left: auto; right: 12px; width: calc(100vw - 24px); }
}
@media (prefers-reduced-motion: reduce) {
  #toast.show, #toast.compact, .team-coach-toast.is-entering, .team-coach-toast.is-exiting { animation: none; filter: none; transform: none; }
  #toast.show { opacity: 1; }
  #toast.compact, .team-coach-toast.is-exiting { opacity: 0; }
}

/* Notification Center: readable frosted cards with origin and priority. */
body:not([data-theme="dark"]) .notifications-popover {
  top: 76px; right: 20px; width: min(460px, calc(100vw - 32px)); max-height: min(720px, calc(100dvh - 94px));
  border: 1px solid rgba(210,222,237,.86); border-radius: 28px;
  background: linear-gradient(155deg,rgba(255,255,255,.96),rgba(235,243,253,.9));
  box-shadow: 0 28px 80px rgba(24,43,72,.24), inset 0 1px rgba(255,255,255,.9);
  backdrop-filter: blur(28px) saturate(1.25); -webkit-backdrop-filter: blur(28px) saturate(1.25);
  transform-origin: calc(100% - 42px) 0;
}
body.team-body[data-theme="dark"] .notifications-popover { top: 76px; right: 20px; width: min(460px, calc(100vw - 32px)); max-height: min(720px, calc(100dvh - 94px)); border-radius: 28px; background: rgba(32,39,50,.96); box-shadow: 0 28px 80px rgba(0,0,0,.42); transform-origin: calc(100% - 42px) 0; }
.notifications-popover.is-opening { animation: notification-center-in .46s cubic-bezier(.18,.85,.2,1) both; }
.notifications-popover.is-closing { pointer-events: none; animation: notification-center-out .26s ease-in both; }
.notifications-popover .notifications-head { gap: 13px; padding: 19px 20px 13px; border-bottom: 0; }
.notifications-popover .notifications-head .calendar-heading-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 15px; background: #e9f3ff; }
.notifications-popover .notifications-head strong { font-size: 17px; letter-spacing: -.35px; }
.notifications-popover .notifications-head small { font-size: 11px; }
.notifications-popover .notifications-head .calendar-icon-button { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; }
.notifications-popover .notifications-tools { display: flex; flex-direction: column; align-items: stretch; gap: 7px; padding: 0 16px 10px; border-bottom: 0; }
.notifications-popover .notifications-filters { display: flex; gap: 5px; overflow-x: auto; padding: 3px 1px 6px; scrollbar-width: thin; }
.notifications-popover .notifications-filters button { flex: 0 0 auto; padding: 7px 11px; border: 1px solid rgba(207,219,235,.8); border-radius: 999px; background: rgba(255,255,255,.72); color: #596b82; white-space: nowrap; }
.notifications-popover .notifications-filters button:hover { border-color: #9dc8fa; background: #f2f8ff; color: #126dd6; }
.notifications-popover .notifications-filters button[aria-pressed="true"] { border-color: #9dc8fa; background: #e6f2ff; color: #086ad8; box-shadow: 0 2px 7px rgba(20,105,214,.1); }
.notifications-popover .notifications-read-all { align-self: flex-end; padding: 3px 6px; }
.notifications-popover .notifications-list { min-height: 104px; padding: 6px 15px 15px; }
.notifications-list-intro { margin: 0 5px 10px; color: #718299; font-size: 10px; font-weight: 750; letter-spacing: .45px; text-transform: uppercase; }
.notifications-popover .notification-row { position: relative; display: flex; gap: 11px; margin: 0 0 11px; padding: 14px; border: 1px solid rgba(205,218,233,.88); border-radius: 22px; background: rgba(255,255,255,.88); box-shadow: 0 8px 23px rgba(33,56,90,.09), inset 0 1px rgba(255,255,255,.9); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.notifications-popover .notification-row:first-of-type::after { content: ''; position: absolute; z-index: -1; left: 13px; right: 13px; bottom: -6px; height: 15px; border: 1px solid rgba(205,218,233,.72); border-radius: 0 0 20px 20px; background: rgba(232,240,250,.88); }
.notifications-popover .notification-row:hover, .notifications-popover .notification-row:focus-within { transform: translateY(-2px); border-color: #a9c9f0; box-shadow: 0 13px 30px rgba(33,56,90,.16); }
.notifications-popover .notification-row.is-unread { background: linear-gradient(135deg,rgba(255,255,255,.99),rgba(241,248,255,.96)); }
.notifications-popover .notification-row.tone-danger.is-unread { border-color: #efb8c0; }
.notifications-popover .notification-row.tone-warning.is-unread { border-color: #e9d1a2; }
.notifications-popover .notification-row.tone-success.is-unread { border-color: #b2ddc8; }
body.team-body:not([data-theme="dark"]) .team-notifications-popover { background: var(--surface); backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: var(--shadow-float); }
body.team-body .team-notifications-popover .notification-row { border-radius: 16px; box-shadow: none; }
body.team-body .team-notifications-popover .notification-row:first-of-type::after { content: none; }
body.team-body .team-notifications-popover.is-opening .notification-row { animation: none; }
.notifications-popover .notifications-pages { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 8px 0 0; padding: 12px 3px 2px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.notifications-popover .notifications-pages .btn { min-height: 30px; padding: 5px 9px; font-size: 11px; }
.notifications-popover .notifications-error { margin: 8px 5px; color: var(--danger); font-size: 12px; }
.notifications-popover .notification-icon { width: 40px; height: 40px; flex-basis: 40px; border-radius: 14px; background: #e9f3ff; color: #1975d5; font-size: 17px; }
.notifications-popover .notification-row.source-system .notification-icon { background: #e9f2ff; color: #226cc0; }
.notifications-popover .notification-row.source-tasks .notification-icon { background: #fff2dc; color: #af6a09; }
.notifications-popover .notification-row.source-agenda .notification-icon { background: #e7f7ee; color: #20835a; }
.notifications-popover .notification-row.source-vito .notification-icon { background: #f0ecff; color: #7354bf; }
.notifications-popover .notification-row.source-whatsapp .notification-icon { background: #e2f8ed; color: #168452; }
.notifications-popover .notification-row.source-mail .notification-icon { background: #e9f1ff; color: #5275ba; }
.notifications-popover .notification-body { display: flex; flex-direction: column; min-height: 88px; gap: 4px; }
.notifications-popover .notification-body .notification-meta { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 1px; }
.notifications-popover .notification-meta .notification-source { margin: 0; color: #58718e; font-size: 10px; font-weight: 750; letter-spacing: .25px; }
.notifications-popover .notification-meta time { margin: 0; color: #8c99aa; font-size: 10px; white-space: nowrap; }
.notifications-popover .notification-body strong { color: var(--text); font-size: 12px; line-height: 1.35; }
.notifications-popover .notification-body .notification-message { display: -webkit-box; margin: 0; overflow: hidden; color: #526278; font-size: 11px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.notifications-popover .notification-body .notification-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: auto 0 0; padding-top: 5px; }
.notifications-popover .notification-priority { display: inline-flex; align-items: center; margin: 0; padding: 3px 8px; border: 1px solid var(--notice-line); border-radius: 999px; background: var(--notice-soft); color: var(--notice-ink); font-size: 9px; font-weight: 750; white-space: nowrap; }
.notifications-popover .notification-open-hint { display: inline-flex; align-items: center; gap: 4px; margin: 0; color: #3b7ac2; font-size: 10px; font-weight: 700; }
.notifications-popover .notification-open-hint i { font-size: 9px; }
.notifications-popover .notification-mark { display: grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center; border: 1px solid #c9dff7; border-radius: 50%; background: #f0f7ff; color: #2678d2; }
.notifications-popover .notification-mark:hover { background: #dcecff; }
.notifications-popover .notification-mark:focus-visible, .notifications-popover .notification-body:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; border-radius: 10px; }
.notifications-popover.is-opening .notification-row { animation: notification-card-in .44s cubic-bezier(.2,.85,.2,1) both; }
.notifications-popover.is-opening .notification-row:nth-of-type(2) { animation-delay: .055s; }
.notifications-popover.is-opening .notification-row:nth-of-type(3) { animation-delay: .1s; }
.notifications-popover.is-opening .notification-row:nth-of-type(4) { animation-delay: .145s; }
.notifications-popover.is-opening .notification-row:nth-of-type(n+5) { animation-delay: .18s; }
body.team-body[data-theme="dark"] .notifications-popover .notification-row { background: rgba(47,57,72,.95); border-color: #526175; box-shadow: 0 8px 23px rgba(0,0,0,.2); }
body.team-body[data-theme="dark"] .notifications-popover .notification-row.is-unread { background: rgba(53,68,87,.98); }
body.team-body[data-theme="dark"] .notifications-popover .notification-body { background: transparent; border-color: transparent; }
body.team-body[data-theme="dark"] .notifications-popover .notification-body .notification-message, body.team-body[data-theme="dark"] .notifications-popover .notification-meta .notification-source { color: #b8c5d6; }
body.team-body[data-theme="dark"] .notifications-popover .notification-open-hint { color: #9cc9ff; }
body.team-body[data-theme="dark"] .notifications-popover .notifications-filters button { background: #354254; color: #d0dceb; }
body.team-body[data-theme="dark"] .notifications-popover .notifications-filters button[aria-pressed="true"] { background: #27496e; color: #fff; }
@keyframes notification-center-in { from { opacity: 0; transform: translate(19px,-11px) scale(.82,.75); filter: blur(5px); } 65% { opacity: 1; transform: translate(-2px,0) scale(1.012); filter: blur(0); } to { opacity: 1; transform: none; filter: blur(0); } }
@keyframes notification-center-out { from { opacity: 1; transform: none; } to { opacity: 0; transform: translate(18px,-12px) scale(.38,.26); } }
@keyframes notification-card-in { from { opacity: 0; transform: translateY(-12px) scale(.94); } to { opacity: 1; transform: none; } }
@media (max-width: 650px) {
  body:not([data-theme="dark"]) .notifications-popover, body.team-body[data-theme="dark"] .notifications-popover { top: 136px; right: 10px; width: calc(100vw - 20px); max-height: calc(100dvh - 152px); border-radius: 23px; }
  body:not(.team-body) :is(.calendar-popover,.whatsapp-peek-panel,.mail-peek-panel) { top: 136px; right: 10px; width: calc(100vw - 20px); max-height: calc(100dvh - 152px); }
  body:not(.team-body) :is(.calendar-popover,.whatsapp-peek-panel) { height: calc(100dvh - 152px); }
  body.team-body .team-notifications-popover, body.team-body[data-theme="dark"] .team-notifications-popover { left: auto; right: 10px; width: calc(100vw - 74px); }
  .notifications-popover .notifications-head { padding: 16px 14px 11px; }
  .notifications-popover .notifications-head strong { font-size: 15px; }
  .notifications-popover .notifications-tools { padding-inline: 10px; }
  .notifications-popover .notifications-filters button { padding: 6px 7px; font-size: 10px; }
  .notifications-popover .notifications-list { padding: 5px 10px 10px; }
  .notifications-popover .notification-row { padding: 12px; border-radius: 19px; }
  .notifications-popover .notification-icon { width: 35px; height: 35px; flex-basis: 35px; font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .notifications-popover.is-opening, .notifications-popover.is-closing, .notifications-popover.is-opening .notification-row { animation: none; filter: none; transform: none; }
  .notifications-popover.is-closing { opacity: 0; }
  .notifications-popover .notification-row { transition: none; }
}

/* Live operations monitor */
.monitor-view-page { padding-bottom:48px; }
.monitor-heading-actions { display:flex;align-items:center;gap:10px; }
.monitor-auto { display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;font-weight:650;white-space:nowrap; }
.monitor-auto i,.monitor-led i { width:7px;height:7px;border-radius:50%;background:#2fc989;box-shadow:0 0 0 4px rgba(47,201,137,.12),0 0 12px rgba(47,201,137,.42); }
.monitor-shell { display:grid;gap:24px; }
.monitor-view { display:grid;gap:24px;min-width:0; }
.monitor-tabs { display:flex;width:max-content;max-width:100%;gap:5px;padding:5px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);overflow-x:auto;scrollbar-width:none; }
.monitor-tabs::-webkit-scrollbar { display:none; }
.monitor-tabs button { display:flex;align-items:center;gap:9px;min-height:40px;padding:9px 15px;border:0;border-radius:11px;background:transparent;color:#718094;font-size:12px;font-weight:700;white-space:nowrap; }
.monitor-tabs button:hover { background:var(--surface-soft);color:var(--text); }
.monitor-tabs button.active { background:#edf6ff;color:var(--blue);box-shadow:inset 0 0 0 1px #d6e8fc; }
.monitor-tabs button span { min-width:21px;padding:2px 6px;border-radius:99px;background:#e4ebf3;color:#64748b;font-size:9px;text-align:center; }
.monitor-tabs button.active span { background:#fff;color:var(--blue); }
.monitor-agents { display:grid;grid-template-columns:repeat(7,minmax(132px,1fr));gap:12px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.monitor-agent-tab { display:flex;align-items:center;gap:12px;min-width:132px;min-height:68px;padding:13px 14px;border:1px solid var(--line);border-radius:17px;background:var(--surface);color:var(--text);text-align:left;transition:.16s ease; }
.monitor-agent-tab:hover { transform:translateY(-1px);border-color:#cbd9e9;box-shadow:0 7px 20px rgba(38,55,77,.07); }
.monitor-agent-tab.active { border-color:#a9cff8;background:#f7fbff;box-shadow:0 0 0 2px rgba(22,119,238,.08); }
.monitor-agent-symbol,.monitor-routine-icon { display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:11px;background:#eef5ff;color:#2579d7; }
.monitor-agent-tab>span:last-child { min-width:0; }
.monitor-agent-tab strong,.monitor-agent-tab small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.monitor-agent-tab strong { font-size:11px; }.monitor-agent-tab small { margin-top:3px;color:var(--muted);font-size:9px; }
.tone-green { background:#e9f8f1!important;color:#229965!important; }.tone-cyan { background:#e8f8fa!important;color:#168da0!important; }.tone-violet { background:#f2ecff!important;color:#7653c7!important; }.tone-amber { background:#fff5df!important;color:#b77a0b!important; }.tone-rose { background:#fff0f2!important;color:#c64e62!important; }.tone-blue { background:#edf5ff!important;color:#2479d4!important; }
.monitor-live-board { position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:150px;padding:27px 30px;overflow:hidden;border:1px solid #18385e;border-radius:22px;background:linear-gradient(125deg,#08192f,#0d2b4e 68%,#0d3654);color:#fff;box-shadow:0 16px 34px rgba(12,36,65,.16); }
.monitor-live-board:before { content:"";position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(119,201,255,.35) 1px,transparent 1px),linear-gradient(90deg,rgba(119,201,255,.35) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,#000,transparent 75%); }
.monitor-live-board:after { content:"";position:absolute;right:-100px;top:-140px;width:330px;height:330px;border:1px solid rgba(95,212,255,.18);border-radius:50%;box-shadow:0 0 0 35px rgba(95,212,255,.04),0 0 0 75px rgba(95,212,255,.025); }
.monitor-live-copy,.monitor-clock { position:relative;z-index:1; }.monitor-led { display:flex;align-items:center;gap:9px;color:#8fe4c2;font-size:9px;font-weight:800;letter-spacing:1.4px; }
.monitor-live-copy h2 { margin:13px 0 7px;font-size:26px;letter-spacing:-.8px; }.monitor-live-copy p { max-width:650px;margin:0;color:#b8cade;font-size:12px;line-height:1.55; }
.monitor-clock { min-width:142px;padding:16px 18px;border:1px solid rgba(132,192,239,.2);border-radius:15px;background:rgba(7,20,38,.43);text-align:right;box-shadow:inset 0 0 22px rgba(83,185,255,.04); }
.monitor-clock span,.monitor-clock small { display:block;color:#7da1c2;font-size:8px;font-weight:750;letter-spacing:1px; }.monitor-clock strong { display:block;margin:5px 0 4px;color:#82ddff;font:700 24px/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1px;text-shadow:0 0 14px rgba(89,203,255,.28); }
.monitor-performance-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; }
.monitor-console { min-width:0;overflow:hidden;border:1px solid #183b58;border-radius:22px;background:linear-gradient(145deg,#071624,#0a2438 58%,#0b3044);color:#f3fbff;box-shadow:0 15px 34px rgba(10,35,59,.14),inset 0 1px rgba(151,224,255,.08); }
.monitor-console>header { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 17px;border-bottom:1px solid rgba(130,199,230,.12);background:linear-gradient(90deg,rgba(22,78,111,.18),transparent); }
.monitor-console-kicker { display:flex;align-items:center;gap:8px;color:#72d9ff;font:800 8px/1.2 ui-monospace,Consolas,monospace;letter-spacing:1.3px; }.monitor-console-kicker i { width:7px;height:7px;border-radius:50%;background:#42d995;box-shadow:0 0 11px rgba(66,217,149,.7); }
.monitor-console h2 { margin:8px 0 4px;font-size:17px;letter-spacing:-.35px; }.monitor-console header p { margin:0;color:#8eabc0;font-size:9px;line-height:1.5; }
.monitor-console-status { padding:6px 9px;border:1px solid rgba(80,221,159,.22);border-radius:99px;background:rgba(49,197,132,.08);color:#77e4b3;font:800 7px/1 ui-monospace,Consolas,monospace;letter-spacing:1px; }
.monitor-gauges { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:22px 24px; }
.monitor-gauge { display:grid;justify-items:center;min-width:0;padding:14px 8px 12px;border:1px solid rgba(127,194,225,.12);border-radius:17px;background:linear-gradient(180deg,rgba(22,58,81,.52),rgba(6,22,35,.25)); }
.monitor-gauge-ring { position:relative;display:grid;width:96px;max-width:100%;aspect-ratio:1;place-items:center;border-radius:50%;background:conic-gradient(var(--gauge-color) calc(var(--gauge-value)*1%),rgba(110,151,174,.18) 0);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--gauge-color) 24%,transparent)); }
.monitor-gauge-ring:before { content:"";position:absolute;inset:10px;border:1px solid rgba(151,218,244,.12);border-radius:50%;background:#0a1d2c;box-shadow:inset 0 0 18px rgba(0,0,0,.35); }
.monitor-gauge-ring span { position:relative;z-index:1;text-align:center; }.monitor-gauge-ring strong,.monitor-gauge-ring small { display:block; }.monitor-gauge-ring strong { font:750 20px/1 ui-monospace,Consolas,monospace;letter-spacing:-.5px; }.monitor-gauge-ring small { margin-top:6px;color:#87a9bf;font-size:7px;font-weight:750;text-transform:uppercase;letter-spacing:.6px; }
.monitor-gauge p { width:100%;margin:10px 0 0;overflow:hidden;color:#829caf;font-size:8px;text-align:center;text-overflow:ellipsis;white-space:nowrap; }
.monitor-traces { display:grid;gap:7px;padding:0 24px 20px; }
.monitor-trace-row { display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;gap:10px;min-height:42px;padding:4px 10px;border:1px solid rgba(115,179,207,.1);border-radius:11px;background:rgba(4,15,25,.32); }
.monitor-trace-row>span { color:#7898ad;font:750 8px ui-monospace,Consolas,monospace;letter-spacing:.5px; }.monitor-trace-row svg { width:100%;height:34px;overflow:visible;background-image:linear-gradient(rgba(82,134,161,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(82,134,161,.09) 1px,transparent 1px);background-size:18px 11px; }.monitor-trace-row>strong { color:#c7f5ff;font:700 9px ui-monospace,Consolas,monospace;text-align:right; }
.monitor-console>footer { display:flex;align-items:center;gap:9px;min-height:44px;padding:11px 24px;border-top:1px solid rgba(130,199,230,.1);background:rgba(3,14,24,.24);overflow-x:auto;scrollbar-width:thin;scrollbar-color:#31556b transparent; }
.monitor-console>footer span { flex:0 0 auto;max-width:310px;overflow:hidden;padding:5px 8px;border-radius:7px;background:rgba(109,174,205,.08);color:#88a8bb;font:650 8px ui-monospace,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap; }.monitor-console>footer i { margin-right:5px;color:#65cff4; }
.monitor-vito-signal { display:grid;gap:10px;padding:0 24px 20px; }.monitor-vito-signal>div:first-child { display:flex;align-items:flex-end;justify-content:space-between;gap:12px; }.monitor-vito-signal>div:first-child>span { color:#7898ad;font:750 8px ui-monospace,Consolas,monospace;letter-spacing:.7px; }.monitor-vito-signal>div:first-child>strong { color:#77e4b3;font:750 18px ui-monospace,Consolas,monospace; }.monitor-vito-signal>div:first-child small { color:#7898ad;font-size:7px;font-weight:650; }
.monitor-vito-signal .monitor-trace-row { grid-template-columns:38px minmax(0,1fr) 26px;min-height:91px; }.monitor-vito-signal .monitor-trace-row svg { height:76px;background-size:24px 19px; }
.monitor-kpis { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px; }
.monitor-kpis .monitor-kpi { position:relative;display:flex;align-items:center;gap:14px;min-width:0;min-height:92px;padding:18px 35px 18px 20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s; }
.monitor-kpis .monitor-kpi:hover { border-color:var(--blue);background:#f6faff;transform:translateY(-2px); }
.monitor-kpis .monitor-kpi:focus-visible { outline:3px solid var(--blue);outline-offset:3px; }
.monitor-kpis .monitor-kpi.is-open { border-color:var(--blue);box-shadow:0 0 0 2px rgba(34,119,218,.16); }
.monitor-kpis .monitor-kpi:disabled { opacity:.55;cursor:not-allowed;transform:none; }
.monitor-kpis .monitor-kpi-icon { display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:#eef6ff;color:var(--blue); }.monitor-kpis .monitor-kpi:nth-child(2) .monitor-kpi-icon { background:#eaf8f5;color:#169b78; }.monitor-kpis .monitor-kpi:nth-child(3) .monitor-kpi-icon { background:#edf8ef;color:#2a9c58; }.monitor-kpis .monitor-kpi:nth-child(4) .monitor-kpi-icon { background:#f4f1fb;color:#775eb1; }.monitor-kpis .monitor-kpi.has-alert .monitor-kpi-icon { background:#fff0f1;color:#d34b5a; }
.monitor-kpi-chevron { position:absolute;right:16px;top:50%;color:var(--muted);font-size:10px;transform:translateY(-50%);transition:transform .18s; }.monitor-kpi.is-open .monitor-kpi-chevron { transform:translateY(-50%) rotate(180deg); }
.monitor-kpis small,.monitor-kpis p { display:block;margin:0;color:var(--muted);font-size:9px; }.monitor-kpis strong { display:inline-block;margin:2px 6px 0 0;font-size:22px;letter-spacing:-.5px; }.monitor-kpis p { display:inline; }
.monitor-kpi-detail[hidden] { display:none!important; }
.monitor-kpi-detail>header p { margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.4; }
.monitor-kpi-detail-actions { display:flex;align-items:center;gap:10px;flex:0 0 auto; }
.monitor-kpi-close { display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:9px;background:var(--surface-soft);color:var(--muted);cursor:pointer; }
.monitor-kpi-close:hover { border-color:var(--blue);color:var(--blue); }.monitor-kpi-close:focus-visible { outline:3px solid var(--blue);outline-offset:2px; }
.monitor-kpi-detail-list { max-height:460px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.monitor-live-grid,.monitor-scheduled-grid { display:grid;grid-template-columns:minmax(330px,.8fr) minmax(450px,1.2fr);gap:20px;align-items:start; }
.monitor-now,.monitor-feed,.monitor-routines,.monitor-work { padding:0;overflow:hidden; }
.monitor-now>header,.monitor-feed>header,.monitor-routines>header,.monitor-work>header { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 21px;border-bottom:1px solid var(--line); }
.monitor-section-kicker { color:#8da0b5;font-size:8px;font-weight:800;letter-spacing:1.25px; }.monitor-now h2,.monitor-feed h2,.monitor-routines h2,.monitor-work h2,.monitor-schedule-intro h2 { margin:4px 0 0;font-size:16px;letter-spacing:-.3px; }
.monitor-count { min-width:28px;padding:5px 8px;border-radius:99px;background:var(--surface-soft);color:var(--muted);font-size:10px;font-weight:750;text-align:center; }
.monitor-now-list,.monitor-event-list,.monitor-routine-list,.monitor-work-list { max-height:620px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent; }
.monitor-process { position:relative;display:flex;align-items:flex-start;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line); }.monitor-process:last-child,.monitor-event:last-child,.monitor-routine:last-child,.monitor-work-item:last-child { border-bottom:0; }
.monitor-process-pulse { flex:0 0 9px;width:9px;height:9px;margin-top:8px;border-radius:50%;box-shadow:0 0 0 5px rgba(35,151,102,.10);animation:monitor-pulse 1.6s ease-in-out infinite; }
.monitor-process-main { min-width:0;flex:1; }.monitor-process-main>div,.monitor-routine>div>div { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }
.monitor-agent-mark { display:inline-flex;align-items:center;gap:6px;width:max-content;padding:5px 8px;border-radius:8px;font-size:9px;font-weight:750; }.monitor-agent-mark.is-small i { font-size:9px; }.monitor-running { padding:4px 7px;border-radius:7px;background:#e9f8f1;color:#208c60;font-size:7px;font-weight:850;letter-spacing:.8px; }
.monitor-process h3,.monitor-event h3,.monitor-routine h3,.monitor-work-item h3 { margin:9px 0 5px;font-size:12px;line-height:1.35; }.monitor-process p,.monitor-event p,.monitor-routine p,.monitor-work-item p { margin:0;color:var(--muted);font-size:10px;line-height:1.5; }
.monitor-process-time { flex:0 0 auto;text-align:right; }.monitor-process-time strong,.monitor-process-time small { display:block; }.monitor-process-time strong { color:#229668;font:700 11px ui-monospace,Consolas,monospace; }.monitor-process-time small { margin-top:5px;color:var(--muted);font-size:8px; }
.monitor-event { position:relative;display:grid;grid-template-columns:25px minmax(0,1fr);padding:0 19px; }.monitor-event-line { position:relative; }.monitor-event-line:before { content:"";position:absolute;left:6px;top:0;bottom:0;width:1px;background:#e1e8f0; }.monitor-event-line>span { position:absolute;z-index:1;left:2px;top:24px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#44b786;box-shadow:0 0 0 2px #bdebd6; }.monitor-event.status-error .monitor-event-line>span { background:#e65c69;box-shadow:0 0 0 2px #ffd3d8; }
.monitor-event-body { min-width:0;padding:17px 0;border-bottom:1px solid var(--line); }.monitor-event:last-child .monitor-event-body { border-bottom:0; }.monitor-event-meta,.monitor-event footer,.monitor-routine footer,.monitor-work-item footer,.monitor-work-meta { display:flex;align-items:center;gap:8px;flex-wrap:wrap; }.monitor-event-meta { justify-content:space-between; }.monitor-event-meta time { color:var(--muted);font:500 8px ui-monospace,Consolas,monospace; }
.monitor-event footer,.monitor-routine footer,.monitor-work-item footer { margin-top:10px;color:#8b98a8;font-size:8px; }.monitor-event footer strong { color:#557087;font-family:ui-monospace,Consolas,monospace; }.monitor-event footer em,.monitor-routine footer em,.monitor-work-item footer em { margin-left:auto;color:#398963;font-style:normal;font-weight:700; }
.monitor-idle,.monitor-loading,.monitor-empty { display:grid;justify-items:center;padding:52px 24px;text-align:center; }.monitor-idle>span,.monitor-empty>span { display:grid;place-items:center;width:48px;height:48px;margin-bottom:13px;border-radius:15px;background:#eff6fd;color:#4d85bb;font-size:18px; }.monitor-idle h3,.monitor-empty h2,.monitor-loading strong { margin:0 0 7px;font-size:13px; }.monitor-idle p,.monitor-empty p,.monitor-loading p { max-width:420px;margin:0;color:var(--muted);font-size:10px;line-height:1.55; }.monitor-loader { width:30px;height:30px;margin-bottom:14px;border:3px solid #dfeaf5;border-top-color:var(--blue);border-radius:50%;animation:monitor-spin .8s linear infinite; }
.monitor-schedule-intro { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:23px 26px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(120deg,#fff,#f7fbff);box-shadow:var(--shadow); }.monitor-schedule-intro p { margin:7px 0 0;color:var(--muted);font-size:10px; }.monitor-schedule-intro>div:last-child { display:grid;grid-template-columns:auto auto;gap:3px 10px;align-items:baseline;min-width:180px; }.monitor-schedule-intro>div:last-child strong { color:var(--blue);font-size:20px;text-align:right; }.monitor-schedule-intro>div:last-child span { color:var(--muted);font-size:9px; }
.monitor-routine { display:grid;grid-template-columns:38px minmax(0,1fr);gap:13px;padding:17px 20px;border-bottom:1px solid var(--line); }.monitor-routine-icon { width:38px;height:38px; }.monitor-routine.is-disabled { opacity:.52; }.monitor-routine footer span i { margin-right:4px; }.monitor-routine.is-disabled footer em { color:#8d97a4; }
.monitor-permanent>header p { margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5; }
.monitor-permanent .monitor-routine-list { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none; }
.monitor-permanent-action { min-width:0;border-right:1px solid var(--line); }
.monitor-permanent-action:nth-child(2n) { border-right:0; }
.monitor-permanent-action .monitor-action-state { padding:3px 7px;border-radius:999px;background:#edf7f2;color:#267d52;font-size:9px;font-weight:750; }
.monitor-permanent-action.state-attention .monitor-action-state { background:#fff1e7;color:#ad5b28; }
.monitor-permanent-action.state-waiting .monitor-action-state { background:#eef3fa;color:#58728d; }
.monitor-permanent-action .monitor-action-evidence { margin-top:8px;font-weight:650; }
.monitor-work-item { display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:17px 19px;border-bottom:1px solid var(--line); }.monitor-work-check { display:grid;place-items:center;width:22px;height:22px;margin-top:2px;border-radius:50%;background:#edf2f7;color:#b0bac6;font-size:6px; }.monitor-work-check.is-doing { background:#e8f3ff;color:var(--blue);font-size:10px; }.monitor-work-meta>span:last-child { color:var(--muted);font-size:8px;text-transform:capitalize; }.monitor-work-item footer em { color:#9b6d19; }.monitor-work-item footer time { font-style:normal; }
.monitor-work-item footer time.is-overdue { color:#c34e5e; }
@keyframes monitor-pulse { 50% { transform:scale(.72);opacity:.58; } } @keyframes monitor-spin { to { transform:rotate(360deg); } }
@media(max-width:1280px){.monitor-performance-grid{grid-template-columns:1fr}.monitor-console{max-width:none}}
@media(max-width:1180px){.monitor-agents{grid-template-columns:repeat(7,minmax(145px,1fr))}.monitor-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.monitor-live-grid,.monitor-scheduled-grid{grid-template-columns:1fr}.monitor-now-list{max-height:430px}}
@media(max-width:740px){.monitor-heading-actions .monitor-auto{display:none}.monitor-tabs{width:100%}.monitor-tabs button{flex:1;justify-content:center}.monitor-live-board{align-items:flex-start;padding:22px;}.monitor-live-copy h2{font-size:21px}.monitor-clock{min-width:115px}.monitor-kpis{gap:10px}.monitor-kpis .monitor-kpi{padding:15px 30px 15px 15px}.monitor-kpis .monitor-kpi-icon{display:none}.monitor-schedule-intro{align-items:flex-start;flex-direction:column}.monitor-schedule-intro>div:last-child{width:100%}.monitor-now-list,.monitor-event-list,.monitor-routine-list,.monitor-work-list{max-height:none}.monitor-kpi-detail-list{max-height:460px}.monitor-console>header{padding:19px}.monitor-gauges{padding:18px;gap:9px}.monitor-traces,.monitor-vito-signal{padding-inline:18px}.monitor-console>footer{padding-inline:18px}}
@media(max-width:500px){.monitor-live-board{flex-direction:column}.monitor-clock{width:100%;text-align:left}.monitor-kpis{grid-template-columns:1fr 1fr}.monitor-kpis strong{font-size:18px}.monitor-process{display:grid;grid-template-columns:auto 1fr}.monitor-process-time{grid-column:2;text-align:left}.monitor-event{padding-inline:12px}.monitor-scheduled-grid,.monitor-live-grid{grid-template-columns:minmax(0,1fr)}.monitor-tabs button{padding-inline:10px}.monitor-tabs button span{display:none}.monitor-performance-grid{gap:16px}.monitor-console>header{flex-direction:column;gap:10px}.monitor-gauges{grid-template-columns:1fr 1fr}.monitor-gauge:last-child{grid-column:1/-1}.monitor-gauge-ring{width:88px}.monitor-traces{padding-bottom:16px}.monitor-console>footer{gap:6px}.monitor-shell,.monitor-view{gap:18px}}
@media(max-width:740px){.monitor-permanent .monitor-routine-list{grid-template-columns:minmax(0,1fr)}.monitor-permanent-action{border-right:0}}
@media(prefers-reduced-motion:reduce){.monitor-process-pulse,.monitor-loader{animation:none}}

/* CRT terminal skin for Vito monitoring. The rest of the workspace stays light. */
.monitor-view-page .monitor-shell {
  --crt-green:#70ff9d;
  --crt-green-soft:#35d86f;
  --crt-cyan:#66e7ff;
  --crt-amber:#ffd166;
  --crt-muted:#77a98a;
  position:relative;
  isolation:isolate;
  gap:18px;
  padding:18px;
  overflow:hidden;
  border:8px solid #1b2521;
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 0,rgba(65,255,132,.11),transparent 44%),
    radial-gradient(rgba(100,255,153,.08) .75px,transparent .9px),
    linear-gradient(145deg,#07120d,#030a07 64%,#07150f);
  background-size:auto,3px 3px,auto;
  color:#caffd8;
  box-shadow:0 22px 45px rgba(18,33,27,.22),inset 0 0 0 2px #08100c,inset 0 0 80px rgba(0,0,0,.8),inset 0 0 28px rgba(67,255,129,.055);
  font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;
  animation:crt-screen-flicker 7s steps(1,end) infinite;
}
.monitor-view-page .monitor-shell>* { position:relative;z-index:2; }
.monitor-view-page .monitor-shell:before {
  content:"";
  position:absolute;
  z-index:8;
  inset:0;
  pointer-events:none;
  border-radius:25px;
  background:repeating-linear-gradient(180deg,rgba(5,10,7,0) 0,rgba(5,10,7,0) 3px,rgba(0,0,0,.17) 4px,rgba(0,0,0,.17) 5px);
  opacity:.38;
  mix-blend-mode:multiply;
}
.monitor-view-page .monitor-shell:after {
  content:"";
  position:absolute;
  z-index:9;
  inset:0;
  pointer-events:none;
  border-radius:25px;
  background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.42) 100%),linear-gradient(110deg,rgba(255,255,255,.035),transparent 28%);
  box-shadow:inset 0 0 38px rgba(0,0,0,.72);
}
.monitor-view-page .monitor-shell :is(h2,h3,strong) { color:#dcffe6;text-shadow:0 0 8px rgba(76,255,137,.2); }
.monitor-view-page .monitor-shell :is(p,small,time) { color:var(--crt-muted); }
.monitor-terminal-head {
  display:flex;
  align-items:center;
  gap:14px;
  min-height:30px;
  padding:5px 10px 9px;
  border-bottom:1px dashed rgba(112,255,157,.26);
  color:var(--crt-green);
  font-size:9px;
  font-weight:800;
  letter-spacing:1.15px;
  text-shadow:0 0 9px rgba(112,255,157,.55);
}
.monitor-terminal-head span:first-child { margin-right:auto; }
.monitor-terminal-head span:not(:first-child):before { content:"[";color:#5a9670; }
.monitor-terminal-head span:not(:first-child):after { content:"]";color:#5a9670; }
.monitor-command {
  display:flex;
  align-items:center;
  gap:9px;
  min-height:34px;
  padding:7px 12px;
  border:1px solid rgba(112,255,157,.15);
  border-radius:5px;
  background:rgba(0,10,5,.72);
  color:var(--crt-green);
  font-size:10px;
  letter-spacing:.25px;
  box-shadow:inset 0 0 16px rgba(51,229,108,.04);
}
.monitor-command span { color:#a9ffc1; }
.monitor-command strong { color:#59df87!important;font-weight:600;text-shadow:0 0 7px rgba(63,246,126,.35)!important; }
.monitor-command i { display:block;width:7px;height:13px;background:#7cff9f;box-shadow:0 0 8px rgba(101,255,149,.8);animation:crt-cursor 1s steps(1,end) infinite; }
.monitor-view-page .monitor-tabs {
  width:100%;
  gap:8px;
  padding:6px;
  border-color:rgba(112,255,157,.18);
  border-radius:7px;
  background:rgba(1,12,7,.82);
  box-shadow:inset 0 0 22px rgba(61,231,116,.035);
}
.monitor-view-page .monitor-tabs button {
  border:1px solid transparent;
  border-radius:4px;
  color:#73ae86;
  font:700 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;
  letter-spacing:.35px;
}
.monitor-view-page .monitor-tabs button:hover { border-color:rgba(112,255,157,.2);background:rgba(47,194,96,.08);color:#b9ffcd; }
.monitor-view-page .monitor-tabs button.active { border-color:rgba(112,255,157,.42);background:rgba(54,220,108,.13);color:var(--crt-green);box-shadow:inset 0 0 14px rgba(62,255,127,.08),0 0 12px rgba(62,255,127,.06);text-shadow:0 0 8px rgba(112,255,157,.42); }
.monitor-view-page .monitor-tabs button:focus-visible,.monitor-view-page .monitor-agent-tab:focus-visible { outline:2px solid var(--crt-amber);outline-offset:2px; }
.monitor-view-page .monitor-tabs button span,.monitor-view-page .monitor-tabs button.active span { border:1px solid rgba(112,255,157,.2);border-radius:3px;background:#071a0f;color:#8bf1aa; }
.monitor-view-page .monitor-agents { gap:8px;padding:0 1px 5px;scrollbar-color:#376d4a transparent; }
.monitor-view-page .monitor-agent-tab {
  min-height:64px;
  border-color:rgba(112,255,157,.14);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(8,31,18,.9),rgba(2,15,8,.9));
  color:#bfffd1;
  box-shadow:inset 0 0 18px rgba(53,216,111,.025);
}
.monitor-view-page .monitor-agent-tab:hover { transform:translateY(-1px);border-color:rgba(112,255,157,.35);background:#0a2515;box-shadow:0 0 15px rgba(49,218,106,.08); }
.monitor-view-page .monitor-agent-tab.active { border-color:rgba(112,255,157,.55);background:#0b2a18;box-shadow:inset 3px 0 var(--crt-green),inset 0 0 16px rgba(63,246,126,.08); }
.monitor-view-page .monitor-agent-tab strong { color:#d9ffe4;font:700 10px ui-monospace,Consolas,monospace;letter-spacing:.2px; }
.monitor-view-page .monitor-agent-tab small { color:#639775;font:500 8px ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-agent-symbol,.monitor-view-page .monitor-routine-icon,.monitor-view-page .monitor-agent-mark {
  border:1px solid rgba(112,255,157,.2)!important;
  border-radius:4px;
  background:rgba(38,161,78,.11)!important;
  color:#72f59a!important;
  box-shadow:inset 0 0 10px rgba(63,246,126,.05);
}
.monitor-view-page .monitor-live-board {
  min-height:138px;
  border-color:rgba(112,255,157,.25);
  border-radius:8px;
  background:linear-gradient(105deg,rgba(6,28,16,.96),rgba(2,15,8,.96));
  color:#dfffe8;
  box-shadow:inset 0 0 34px rgba(45,223,103,.055);
}
.monitor-view-page .monitor-live-board:before { opacity:.22;background-image:linear-gradient(rgba(86,242,135,.25) 1px,transparent 1px),linear-gradient(90deg,rgba(86,242,135,.2) 1px,transparent 1px);background-size:24px 24px; }
.monitor-view-page .monitor-live-board:after { border-color:rgba(80,255,138,.12);box-shadow:0 0 0 35px rgba(65,240,124,.025),0 0 0 75px rgba(65,240,124,.018); }
.monitor-view-page .monitor-led { color:var(--crt-green);font-family:ui-monospace,Consolas,monospace;text-shadow:0 0 8px rgba(112,255,157,.4); }
.monitor-view-page .monitor-live-copy h2 { color:#e3ffea;font-family:ui-monospace,Consolas,monospace;font-size:23px;letter-spacing:-.25px; }
.monitor-view-page .monitor-live-copy p { color:#75a887;font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-clock { border-color:rgba(112,255,157,.23);border-radius:5px;background:#020e07;box-shadow:inset 0 0 25px rgba(58,240,119,.07); }
.monitor-view-page .monitor-clock span,.monitor-view-page .monitor-clock small { color:#618d70; }
.monitor-view-page .monitor-clock strong { color:var(--crt-green);text-shadow:0 0 12px rgba(112,255,157,.5); }
.monitor-view-page .monitor-performance-grid { gap:14px; }
.monitor-view-page .monitor-console {
  border-color:rgba(112,255,157,.22);
  border-radius:8px;
  background:linear-gradient(145deg,#06150c,#020b06 62%,#071a0f);
  color:#d9ffe4;
  box-shadow:inset 0 0 34px rgba(50,221,107,.04);
}
.monitor-view-page .monitor-console>header { border-bottom-color:rgba(112,255,157,.13);background:linear-gradient(90deg,rgba(48,196,96,.08),transparent); }
.monitor-view-page .monitor-console-kicker { color:var(--crt-green); }
.monitor-view-page .monitor-console h2 { font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-console header p,.monitor-view-page .monitor-gauge p { color:#679477; }
.monitor-view-page .monitor-console-status { border-color:rgba(112,255,157,.3);border-radius:3px;background:rgba(47,190,94,.09);color:#8bffad; }
.monitor-view-page .monitor-gauge { border-color:rgba(112,255,157,.13);border-radius:5px;background:rgba(5,25,13,.72); }
.monitor-view-page .monitor-gauge-ring:before { border-color:rgba(112,255,157,.16);background:#031008; }
.monitor-view-page .monitor-gauge-ring strong { color:#e0ffe8; }
.monitor-view-page .monitor-gauge-ring small { color:#70a47f; }
.monitor-view-page .monitor-trace-row { border-color:rgba(112,255,157,.11);border-radius:3px;background:rgba(0,9,4,.72); }
.monitor-view-page .monitor-trace-row>span { color:#6f9f7d; }
.monitor-view-page .monitor-trace-row svg { background-image:linear-gradient(rgba(77,212,119,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(77,212,119,.1) 1px,transparent 1px); }
.monitor-view-page .monitor-trace-row>strong { color:#baffcd; }
.monitor-view-page .monitor-console>footer { border-top-color:rgba(112,255,157,.11);background:rgba(0,9,4,.6);scrollbar-color:#376d4a transparent; }
.monitor-view-page .monitor-console>footer span { border:1px solid rgba(112,255,157,.08);border-radius:3px;background:rgba(48,183,91,.06);color:#73a582; }
.monitor-view-page .monitor-console>footer i { color:#6fed98; }
.monitor-view-page .monitor-vito-signal>div:first-child>span { color:#6f9f7d; }
.monitor-view-page .monitor-vito-signal>div:first-child>strong { color:var(--crt-green); }
.monitor-view-page .monitor-kpis { gap:10px; }
.monitor-view-page .monitor-kpis .monitor-kpi {
  min-height:84px;
  border-color:rgba(112,255,157,.15);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(7,28,16,.92),rgba(2,13,7,.92));
  box-shadow:inset 0 0 19px rgba(53,216,111,.025);
}
.monitor-view-page .monitor-kpis .monitor-kpi:hover { border-color:rgba(112,255,157,.55);background:linear-gradient(180deg,rgba(9,39,21,.98),rgba(3,19,9,.98));box-shadow:0 0 18px rgba(112,255,157,.09); }
.monitor-view-page .monitor-kpis .monitor-kpi:focus-visible { outline-color:var(--crt-green); }
.monitor-view-page .monitor-kpis .monitor-kpi.is-open { border-color:var(--crt-green);box-shadow:0 0 0 1px rgba(112,255,157,.25),inset 0 0 20px rgba(112,255,157,.06); }
.monitor-view-page .monitor-kpis .monitor-kpi:nth-child(n) .monitor-kpi-icon { border:1px solid rgba(112,255,157,.17);border-radius:4px;background:rgba(47,198,96,.08);color:#72ee98; }
.monitor-view-page .monitor-kpis .monitor-kpi.has-alert .monitor-kpi-icon { border-color:rgba(255,126,122,.35);background:rgba(255,90,90,.1);color:#ff9390; }
.monitor-view-page .monitor-kpi-chevron { color:#72bb87; }
.monitor-view-page .monitor-kpis small,.monitor-view-page .monitor-kpis p { color:#699879; }
.monitor-view-page .monitor-kpis strong { color:#dcffe6;font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-kpi-detail>header p { color:#82b994; }
.monitor-view-page .monitor-kpi-close { border-color:rgba(112,255,157,.25);border-radius:4px;background:#082015;color:#92dca8; }
.monitor-view-page .monitor-kpi-close:hover { border-color:var(--crt-green);color:var(--crt-green); }
.monitor-view-page .monitor-kpi-close:focus-visible { outline-color:var(--crt-green); }
.monitor-view-page .monitor-kpi-detail-list { scrollbar-color:#396b49 #031009; }
.monitor-view-page .monitor-kpi-detail.is-errors .monitor-event footer em { color:#ff9991; }
.monitor-view-page :is(.monitor-now,.monitor-feed,.monitor-routines,.monitor-work) {
  border-color:rgba(112,255,157,.17);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(5,23,13,.94),rgba(1,11,6,.94));
  color:#caffe0;
  box-shadow:inset 0 0 26px rgba(47,198,96,.025);
}
body.vito-liquid-glass .monitor-view-page :is(.monitor-now,.monitor-feed,.monitor-routines,.monitor-work) {
  border-color:rgba(112,255,157,.27)!important;
  background:linear-gradient(180deg,#071d11,#020d07)!important;
  color:#dfffe8!important;
  box-shadow:inset 0 0 26px rgba(47,198,96,.04)!important;
}
.monitor-view-page .monitor-shell .panel { backdrop-filter:none;-webkit-backdrop-filter:none; }
body.vito-liquid-glass .monitor-view-page :is(.monitor-now,.monitor-feed,.monitor-routines,.monitor-work)>header { border-bottom-color:rgba(112,255,157,.2)!important;background:#06170d!important; }
.monitor-view-page .monitor-section-kicker { color:#65c982;font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-section-kicker:before { content:"> ";color:var(--crt-green); }
.monitor-view-page :is(.monitor-now,.monitor-feed,.monitor-routines,.monitor-work) h2 { font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-permanent>header p { color:#6d9b7b; }
.monitor-view-page .monitor-permanent-action { border-right-color:rgba(112,255,157,.105); }
.monitor-view-page .monitor-permanent-action .monitor-action-state { background:#123321;color:#86e9a4; }
.monitor-view-page .monitor-permanent-action.state-attention .monitor-action-state { background:#40291b;color:#ffbd86; }
.monitor-view-page .monitor-permanent-action.state-waiting .monitor-action-state { background:#1d2e32;color:#9dd2df; }
.monitor-view-page .monitor-permanent-action .monitor-action-evidence { color:#d0e8ad!important; }
.monitor-view-page .monitor-count { border:1px solid rgba(112,255,157,.14);border-radius:3px;background:#06170d;color:#7cdd98; }
.monitor-view-page :is(.monitor-now-list,.monitor-event-list,.monitor-routine-list,.monitor-work-list) { scrollbar-color:#396b49 #031009; }
.monitor-view-page :is(.monitor-process,.monitor-routine,.monitor-work-item) { border-bottom-color:rgba(112,255,157,.105); }
.monitor-view-page :is(.monitor-process,.monitor-event,.monitor-routine,.monitor-work-item) h3 { color:#e4ffeb!important;font-family:ui-monospace,Consolas,monospace;text-shadow:0 0 7px rgba(112,255,157,.2); }
.monitor-view-page :is(.monitor-process,.monitor-event,.monitor-routine,.monitor-work-item) p { color:#a1d8b1!important;font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-process:hover,.monitor-view-page .monitor-routine:hover,.monitor-view-page .monitor-work-item:hover,.monitor-view-page .monitor-event:hover { background:rgba(57,218,108,.045); }
.monitor-view-page .monitor-running { border:1px solid rgba(112,255,157,.5);border-radius:3px;background:#0c3b1e;color:#b8ffca;text-shadow:0 0 6px rgba(112,255,157,.35); }
.monitor-view-page .monitor-process-time strong { color:#7aff9f; }
.monitor-view-page .monitor-event-line:before { background:rgba(112,255,157,.18); }
.monitor-view-page .monitor-event-line>span { border-color:#06140b;background:#56df83;box-shadow:0 0 0 2px rgba(100,255,153,.25),0 0 10px rgba(84,239,132,.3); }
.monitor-view-page .monitor-event.status-error .monitor-event-line>span { background:#ff7b78;box-shadow:0 0 0 2px rgba(255,104,104,.22),0 0 10px rgba(255,89,89,.28); }
.monitor-view-page .monitor-event-body { border-bottom-color:rgba(112,255,157,.1); }
.monitor-view-page :is(.monitor-event footer,.monitor-routine footer,.monitor-work-item footer,.monitor-work-meta) { color:#8fc7a0; }
.monitor-view-page :is(.monitor-event footer em,.monitor-routine footer em,.monitor-work-item footer em) { color:#74e596; }
.monitor-view-page .monitor-schedule-intro {
  border-color:rgba(112,255,157,.18);
  border-radius:7px;
  background:linear-gradient(100deg,rgba(7,29,16,.96),rgba(2,13,7,.96));
  color:#d7ffe2;
  box-shadow:inset 0 0 24px rgba(53,216,111,.025);
}
.monitor-view-page .monitor-schedule-intro h2 { font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-schedule-intro p,.monitor-view-page .monitor-schedule-intro>div:last-child span { color:#6d9b7b; }
.monitor-view-page .monitor-schedule-intro>div:last-child strong { color:var(--crt-green);font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page .monitor-work-check { border:1px solid rgba(112,255,157,.13);background:#06160c;color:#6b9778; }
.monitor-view-page .monitor-work-check.is-doing { background:rgba(46,181,88,.1);color:#76f39b; }
.monitor-view-page .monitor-idle>span { border:1px solid rgba(112,255,157,.17);border-radius:5px;background:rgba(46,181,88,.08);color:#72e995; }
.monitor-view-page .monitor-idle h3 { color:#d5ffe0; }
.monitor-view-page .monitor-idle p { color:#6f9f7d; }
.monitor-view-page :is(.monitor-loading,.monitor-empty) { border:8px solid #1b2521;border-radius:30px;background:#041009;color:#bfffd1;box-shadow:inset 0 0 55px rgba(0,0,0,.72),0 18px 38px rgba(18,33,27,.18);font-family:ui-monospace,Consolas,monospace; }
.monitor-view-page :is(.monitor-loading,.monitor-empty) p { color:#76a585; }
.monitor-view-page .monitor-loader { border-color:#173c25;border-top-color:var(--crt-green,#70ff9d);border-radius:3px; }
@keyframes crt-cursor { 0%,48% { opacity:1 } 49%,100% { opacity:0 } }
@keyframes crt-screen-flicker { 0%,97%,100% { filter:none } 98% { filter:brightness(.985) } 99% { filter:brightness(1.015) } }
@media(max-width:740px){
  .monitor-view-page .monitor-shell{padding:12px;border-width:6px;border-radius:25px}
  .monitor-terminal-head{flex-wrap:wrap;gap:6px 10px}.monitor-terminal-head span:first-child{width:100%}
  .monitor-command{overflow:hidden;white-space:nowrap}.monitor-command strong{overflow:hidden;text-overflow:ellipsis}
}
@media(max-width:500px){
  .monitor-view-page .monitor-shell{padding:9px;border-width:5px;border-radius:20px}
  .monitor-terminal-head span:last-child{display:none}
  .monitor-view-page .monitor-agent-tab{min-height:58px}
}
@media(prefers-reduced-motion:reduce){.monitor-view-page .monitor-shell,.monitor-command i{animation:none}}

/* ActivityWatch advisor view: keep the operational data readable in Vito's light workspace. */
.monitor-view-page .monitor-shell.is-activitywatch { gap:22px;padding:0;overflow:visible;border:0;border-radius:0;background:transparent;color:var(--text);box-shadow:none;font-family:inherit;animation:none; }
.monitor-view-page .monitor-shell.is-activitywatch::before,.monitor-view-page .monitor-shell.is-activitywatch::after { display:none; }
.monitor-view-page .monitor-shell.is-activitywatch :is(h2,h3,strong) { color:var(--text);text-shadow:none; }
.monitor-view-page .monitor-shell.is-activitywatch :is(p,small,time) { color:var(--muted); }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs { width:max-content;max-width:100%;gap:5px;padding:5px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow); }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button { border:0;border-radius:11px;color:#718094;font:700 12px/1.2 var(--font,Inter,system-ui,sans-serif);letter-spacing:0; }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button:hover { border:0;background:var(--surface-soft);color:var(--text); }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button.active { border:0;background:#edf6ff;color:var(--blue);box-shadow:inset 0 0 0 1px #d6e8fc;text-shadow:none; }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button span,.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button.active span { border:0;border-radius:99px;background:#e4ebf3;color:#64748b; }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button.active span { background:#fff;color:var(--blue); }
.monitor-view-page .monitor-shell.is-activitywatch .monitor-view { gap:20px; }
.activitywatch-overview { display:grid;gap:18px; }
.activitywatch-hero { display:flex;align-items:center;justify-content:space-between;gap:26px;padding:28px 30px;overflow:hidden;border:1px solid #dbe7f4;border-radius:22px;background:linear-gradient(115deg,#fff 0%,#f4f9ff 100%);box-shadow:var(--shadow); }
.activitywatch-kicker { display:inline-flex;align-items:center;gap:7px;color:#3977b8;font-size:9px;font-weight:800;letter-spacing:1.1px; }
.activitywatch-hero h2 { margin:9px 0 7px;font-size:25px;letter-spacing:-.7px; }
.activitywatch-hero p { max-width:650px;margin:0;color:var(--muted);font-size:12px;line-height:1.55; }
.activitywatch-hero-status { display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:9px;align-items:center;flex:0 0 min(315px,35%);padding:14px 16px;border:1px solid #bde8d2;border-radius:15px;background:#f2fcf6; }
.activitywatch-hero-status>span { width:9px;height:9px;border-radius:50%;background:#29b978;box-shadow:0 0 0 5px rgba(41,185,120,.12);animation:activitywatch-pulse 1.7s ease-in-out infinite; }
.activitywatch-hero-status strong { font-size:12px; }.activitywatch-hero-status small { grid-column:2;margin-top:3px;font-size:9px;line-height:1.4; }
.activitywatch-hero-status.is-offline { border-color:#f0d5a3;background:#fffaf0; }.activitywatch-hero-status.is-offline>span { background:#d39a2e;box-shadow:0 0 0 5px rgba(211,154,46,.12);animation:none; }
.activitywatch-kpis { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px; }
.activitywatch-kpis article { display:flex;align-items:center;gap:13px;min-height:89px;padding:17px 19px;border:1px solid var(--line);border-radius:17px;background:var(--surface);box-shadow:var(--shadow); }
.activitywatch-kpi-icon { display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:12px;font-size:14px; }.activitywatch-kpi-icon.is-green { background:#e9f8f1;color:#229965; }.activitywatch-kpi-icon.is-blue { background:#edf5ff;color:#2479d4; }.activitywatch-kpi-icon.is-amber { background:#fff5df;color:#b77a0b; }
.activitywatch-kpis small,.activitywatch-kpis p { display:block;margin:0;color:var(--muted);font-size:9px; }.activitywatch-kpis strong { display:inline-block;margin:2px 5px 0 0;font-size:22px;letter-spacing:-.5px; }.activitywatch-kpis p { display:inline; }
.activitywatch-team { overflow:hidden;padding:0; }.activitywatch-team>header { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line); }.activitywatch-team h2 { margin:4px 0 4px;font-size:16px;letter-spacing:-.3px; }.activitywatch-team header p { margin:0;color:var(--muted);font-size:10px; }.activitywatch-team header time { padding:6px 9px;border-radius:8px;background:var(--surface-soft);font-size:9px;white-space:nowrap; }
.activitywatch-advisor-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)); }.activitywatch-advisor-card { min-width:0;padding:21px;border-right:1px solid var(--line); }.activitywatch-advisor-card:last-child { border-right:0; }
.activitywatch-person { display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px; }.activitywatch-avatar { display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#edf5ff;color:#2479d4;font-size:14px;font-weight:800; }.activitywatch-avatar.dania { background:#f2ecff;color:#7653c7; }.activitywatch-avatar.sofia { background:#fff0f2;color:#c64e62; }
.activitywatch-person h3 { margin:0;font-size:13px; }.activitywatch-person p { margin:3px 0 0;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap; }.activitywatch-state { grid-column:1/-1;display:inline-flex;align-items:center;gap:6px;width:max-content;margin-top:11px;padding:5px 8px;border-radius:8px;font-size:9px;font-weight:750; }.activitywatch-state.online { background:#e9f8f1;color:#208c60; }.activitywatch-state.stale,.activitywatch-state.pending { background:#fff5df;color:#a86c05; }.activitywatch-state.offline { background:#fff0f2;color:#c64e62; }
.activitywatch-current { display:grid;min-width:0;gap:5px;margin-top:17px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft); }
.activitywatch-current.is-live { border-color:#bde8d2;background:#f2fcf6; }
.activitywatch-current-heading { display:flex;align-items:center;gap:7px;min-width:0;color:#64748b;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.35px; }
.activitywatch-current.is-live .activitywatch-current-heading { color:#208c60; }
.activitywatch-current-dot { flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:#a9b4c2; }
.activitywatch-current.is-live .activitywatch-current-dot { background:#29b978;box-shadow:0 0 0 3px rgba(41,185,120,.13); }
.activitywatch-current.is-away .activitywatch-current-dot { background:#d39a2e; }
.activitywatch-current-heading time { margin-left:auto;color:#64748b;font-weight:500;letter-spacing:0;text-transform:none; }
.activitywatch-current strong { overflow:hidden;color:var(--text);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap; }
.activitywatch-current small { overflow:hidden;color:var(--muted);font-size:10px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap; }
.activitywatch-advisor-card dl { display:grid;gap:11px;margin:19px 0 0;padding-top:15px;border-top:1px solid var(--line); }.activitywatch-advisor-card dl div { display:grid;gap:3px; }.activitywatch-advisor-card dt { color:#8a98a8;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.55px; }.activitywatch-advisor-card dd { margin:0;color:#566477;font-size:10px;line-height:1.45; }
.activitywatch-privacy { display:flex;align-items:flex-start;gap:10px;padding:13px 15px;border:1px solid #dce9f5;border-radius:13px;background:#f8fbfe;color:#607086; }.activitywatch-privacy i { color:#3b82c4;font-size:13px; }.activitywatch-privacy p { margin:0;color:#607086;font-size:10px;line-height:1.5; }.activitywatch-privacy strong { color:#43536a!important; }
@keyframes activitywatch-pulse { 50% { transform:scale(.78);opacity:.65; } }
@media(max-width:940px){.activitywatch-hero{align-items:flex-start;flex-direction:column}.activitywatch-hero-status{width:100%;max-width:none}.activitywatch-advisor-grid{grid-template-columns:1fr}.activitywatch-advisor-card{border-right:0;border-bottom:1px solid var(--line)}.activitywatch-advisor-card:last-child{border-bottom:0}}
@media(max-width:600px){.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs{width:100%}.monitor-view-page .monitor-shell.is-activitywatch .monitor-tabs button{flex:1;justify-content:center;padding-inline:10px}.activitywatch-hero{padding:22px}.activitywatch-hero h2{font-size:21px}.activitywatch-kpis{grid-template-columns:1fr}.activitywatch-team>header{align-items:flex-start;flex-direction:column}.activitywatch-team header time{white-space:normal}.activitywatch-kpis article{min-height:76px}}
@media(prefers-reduced-motion:reduce){.activitywatch-hero-status>span{animation:none}}
.activitywatch-detail-grid,.activitywatch-chat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.activitywatch-detail{min-width:0;padding:22px;background:var(--surface)}
.activitywatch-detail>header{display:flex;align-items:center;gap:11px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.activitywatch-detail>header h3,.activitywatch-chat-column h3{margin:0;font-size:15px}
.activitywatch-detail>header p{margin:4px 0 0;font-size:11px;color:var(--muted)}
.activitywatch-detail-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.activitywatch-detail-kpis>div{padding:12px;border-radius:12px;background:var(--surface-soft)}
.activitywatch-detail-kpis small{display:block;color:var(--muted);font-size:10px}.activitywatch-detail-kpis strong{display:block;margin-top:4px;font-size:16px}
.activitywatch-detail-block{padding:17px 0;border-top:1px solid var(--line)}.activitywatch-detail-block h4{margin:0 0 12px;font-size:12px}
.activitywatch-ranking,.activitywatch-recent,.activitywatch-chat-column ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.activitywatch-ranking li{min-width:0}.activitywatch-ranking li>div{display:flex;justify-content:space-between;gap:12px;font-size:11px}.activitywatch-ranking strong{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.activitywatch-ranking span{flex:none;color:var(--muted)}
.activitywatch-ranking li>i{display:block;width:var(--activity-width);height:5px;margin-top:5px;border-radius:99px;background:#72b3ed}
.activitywatch-hourly{display:grid;grid-template-columns:repeat(24,minmax(9px,1fr));align-items:end;gap:4px;height:84px;overflow-x:auto;padding:4px 2px 0;border-bottom:1px solid var(--line)}
.activitywatch-hourly>div{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;min-width:9px}.activitywatch-hourly i{display:block;width:100%;height:var(--activity-height);min-height:2px;border-radius:3px 3px 0 0;background:#72b3ed}.activitywatch-hourly small{height:13px;margin-top:2px;color:var(--muted);font-size:8px}
.activitywatch-more{margin-top:14px}.activitywatch-more summary{width:max-content;max-width:100%;padding:7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--blue);cursor:pointer;font-size:11px;font-weight:650}.activitywatch-more summary:hover,.activitywatch-more summary:focus-visible{background:var(--surface-soft)}.activitywatch-more[open] .activitywatch-ranking{max-height:260px;overflow:auto;margin-top:12px;padding-right:7px}
.activitywatch-recent{max-height:290px;overflow:auto;padding-right:8px}.activitywatch-recent li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:2px 9px;padding-bottom:9px;border-bottom:1px solid var(--line);font-size:11px}.activitywatch-recent time{grid-row:span 2;color:var(--muted)}.activitywatch-recent span{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.activitywatch-recent small{color:var(--muted)}
.activitywatch-chats{overflow:hidden;padding:0}.activitywatch-chats>header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:20px 22px;border-bottom:1px solid var(--line)}.activitywatch-chats h2{margin:4px 0;font-size:16px}.activitywatch-chats header p{margin:0;color:var(--muted);font-size:11px}.activitywatch-chats header time{color:var(--muted);font-size:10px;white-space:nowrap}
.activitywatch-chat-grid{gap:0}.activitywatch-chat-column{min-width:0;padding:20px 22px}.activitywatch-chat-column+ .activitywatch-chat-column{border-left:1px solid var(--line)}.activitywatch-chat-column h3{display:flex;justify-content:space-between;gap:10px;margin-bottom:15px}.activitywatch-chat-column h3 small{color:var(--muted);font-size:10px;font-weight:500}.activitywatch-chat-column ol{max-height:390px;overflow:auto;padding-right:7px}
.activitywatch-chat-column li{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-top:1px solid var(--line);font-size:11px}.activitywatch-chat-column li>div{min-width:0}.activitywatch-chat-column li strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activitywatch-chat-column li small{display:block;margin-top:3px;color:var(--muted)}.activitywatch-chat-column li>span{flex:none;text-align:right;font-weight:650}
.activitywatch-empty,.activitywatch-source{margin:9px 0;color:var(--muted);font-size:11px;line-height:1.45}.activitywatch-source{margin-top:11px}
@media(max-width:900px){.activitywatch-detail-grid,.activitywatch-chat-grid{grid-template-columns:1fr}.activitywatch-chat-column+.activitywatch-chat-column{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:600px){.activitywatch-detail{padding:17px}.activitywatch-detail-kpis{gap:6px}.activitywatch-detail-kpis>div{padding:9px}.activitywatch-detail-kpis strong{font-size:13px}.activitywatch-chats>header{align-items:flex-start;flex-direction:column}.activitywatch-chat-column{padding:17px}}
@media(max-width:1180px){
  .main-content:has(.monitor-view-page) .topbar{height:auto;min-height:74px;flex-wrap:wrap;gap:12px;padding:14px 24px}
  .main-content:has(.monitor-view-page) .topbar-left{flex-basis:100%}
  .main-content:has(.monitor-view-page) .topbar-right{width:100%;min-width:0;margin-left:0;flex-wrap:wrap;gap:10px}
  .main-content:has(.monitor-view-page) .topbar-actions{min-width:0;flex-wrap:wrap}
}

.fer-body{margin:0;min-height:100vh;background:#f5f8fc;color:var(--text,#17243b);font:14px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.fer-body *{box-sizing:border-box}
.fer-body button,.fer-body input{font:inherit}
.fer-body button:focus-visible,.fer-body input:focus-visible{outline:3px solid #82b7ff;outline-offset:3px}
.fer-shell{min-height:100vh}.fer-header{background:#fff;border-bottom:1px solid var(--line,#e2e8f0)}
.fer-header-inner,.fer-main{width:min(1320px,calc(100% - 48px));margin:auto}
.fer-header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.fer-brand{display:flex;align-items:center;gap:11px;color:#1c3755;font-size:12px;font-weight:800;letter-spacing:.13em}.fer-brand img{width:38px;height:38px;object-fit:contain;border-radius:50%}.fer-brand b{color:#87a4c7}
.fer-header-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.fer-live{color:#607188;font-size:12px;white-space:nowrap}.fer-live i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#1cad6c}
.fer-button{min-height:38px;padding:8px 14px;border:1px solid var(--line,#dbe3ef);border-radius:11px;background:#fff;color:#30455f;font-weight:650;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.fer-button:hover{background:#f2f7fe;border-color:#a7c9f4;transform:translateY(-1px)}.fer-button:disabled{opacity:.55;cursor:default;transform:none}.fer-button.fer-primary{background:#1677e7;color:#fff;border-color:#1677e7}.fer-button.fer-primary:hover{background:#0966d4}.fer-main{padding:44px 0 55px}
.fer-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}.fer-eyebrow{color:#3981d5;font-size:10px;letter-spacing:.15em;font-weight:800}.fer-intro h1{margin:6px 0 5px;font-size:clamp(28px,3vw,40px);letter-spacing:-.04em;line-height:1.13}.fer-intro p{margin:0;color:#69798e}.fer-date{color:#53667f;font-size:13px;white-space:nowrap}
.fer-periods{display:flex;gap:7px;width:max-content;max-width:100%;padding:5px;margin:0 0 22px;border:1px solid #dfe7f2;border-radius:14px;background:#edf2f8;overflow:auto;scrollbar-width:thin;scrollbar-color:#bfd2e8 transparent}.fer-period{border:0;border-radius:10px;background:transparent;color:#58708c;padding:11px 18px;font-weight:700;cursor:pointer;white-space:nowrap}.fer-period:hover{background:#e1ebf8}.fer-period.is-active{background:#fff;color:#126ad6;box-shadow:0 2px 8px #234a751a}
.fer-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fer-kpi,.fer-panel{min-width:0;background:#fff;border:1px solid #dce5f1;border-radius:21px;box-shadow:0 11px 30px #153a6c0c}.fer-kpi{min-height:190px;padding:24px}.fer-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:17px;border-radius:14px;font-weight:850;font-size:20px}.fer-icon.is-green{background:#e7f8ef;color:#14a767}.fer-icon.is-blue{background:#e8f2ff;color:#1478e8}.fer-icon.is-gold{background:#fff4d9;color:#cf9300}.fer-kpi p{margin:0 0 6px;color:#6d7b8c;font-size:12px}.fer-kpi strong{display:block;color:#172337;font-size:clamp(24px,2.3vw,35px);line-height:1.12;letter-spacing:-.04em;overflow-wrap:anywhere}.fer-kpi small{display:block;margin-top:11px;color:#7b899b;font-size:11px}
.fer-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:18px}.fer-panel{padding:25px}.fer-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.fer-panel h2{margin:5px 0 0;font-size:21px;letter-spacing:-.025em}.fer-panel>p{color:#67778a;font-size:13px;line-height:1.65}.fer-tone{display:inline-flex;align-items:center;padding:6px 10px;border-radius:99px;font-size:11px;font-weight:700;white-space:nowrap}.fer-tone.is-good{color:#088657;background:#e7f8ef}.fer-tone.is-medium{color:#a36b00;background:#fff6dd}.fer-tone.is-low{color:#b35b24;background:#fff0e5}.fer-progress{height:11px;margin-top:27px;border-radius:99px;background:#e8edf4;overflow:hidden}.fer-progress span{display:block;height:100%;background:linear-gradient(90deg,#17b16c,#26c68d);border-radius:inherit}.fer-progress-caption{display:flex;justify-content:space-between;gap:12px;margin-top:10px;color:#6b7a8e;font-size:11px}.fer-progress-caption strong{color:#19344f}.fer-panel .fer-note{margin:16px 0 0;color:#8390a0;font-size:11px}
.fer-ranking{margin-top:20px}.fer-rank{display:flex;align-items:center;gap:13px;padding:13px 0;border-top:1px solid #e9edf3}.fer-rank-index{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:9px;background:#ecf4ff;color:#2479d7;font-size:11px;font-weight:800}.fer-rank>div{min-width:0;flex:1}.fer-rank strong,.fer-rank small{display:block}.fer-rank strong{font-size:13px}.fer-rank small{margin-top:2px;color:#8492a2;font-size:11px}.fer-rank b{font-size:14px;white-space:nowrap}.fer-footer{display:flex;justify-content:space-between;gap:12px;margin-top:20px;color:#8794a5;font-size:11px}
.fer-login-card{width:min(430px,calc(100% - 32px));margin:clamp(36px,10vh,110px) auto;padding:32px;border:1px solid #dae4f0;border-radius:24px;background:#fff;box-shadow:0 16px 50px #21456814}.fer-login-card h1{margin:32px 0 6px;font-size:31px;letter-spacing:-.04em}.fer-login-card p{margin:0 0 24px;color:#6e7e91;line-height:1.6}.fer-login-card form{display:grid;gap:9px}.fer-login-card label{font-size:12px;color:#4c5c6f;font-weight:700}.fer-login-card input{min-height:44px;padding:10px 12px;margin-bottom:10px;border:1px solid #d8e1ec;border-radius:10px;color:#172337;background:#fff}.fer-login-card .fer-button{margin-top:3px}.fer-login-card .fer-error{margin:15px 0 0;color:#bb3c3c}
.fer-loading{width:min(1320px,calc(100% - 48px));margin:50px auto}.fer-skeleton{display:block;height:120px;border-radius:19px;background:linear-gradient(100deg,#e8edf5 10%,#f7faff 50%,#e8edf5 90%);background-size:220% 100%;animation:fer-pulse 1.6s infinite}.fer-skeleton-title{height:44px;width:42%;margin-bottom:25px}.fer-skeleton-tabs{height:45px;width:280px;margin-bottom:23px}.fer-skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@keyframes fer-pulse{to{background-position-x:-220%}}
@media(max-width:850px){.fer-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.fer-detail-grid{grid-template-columns:1fr}.fer-footer{flex-direction:column}.fer-skeleton-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fer-header-inner,.fer-main{width:min(100% - 28px,1320px)}.fer-header-inner{min-height:70px;flex-wrap:wrap;padding:12px 0}.fer-header-actions{width:100%;justify-content:space-between}.fer-live{font-size:10px}.fer-main{padding-top:28px}.fer-intro{align-items:flex-start;flex-direction:column;gap:10px}.fer-kpis{grid-template-columns:1fr;gap:10px}.fer-kpi{min-height:145px;padding:18px}.fer-icon{margin-bottom:9px}.fer-detail-grid{gap:10px;margin-top:10px}.fer-panel{padding:19px}.fer-panel-head{flex-wrap:wrap}.fer-rank b{font-size:12px}.fer-skeleton-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.fer-button,.fer-skeleton{transition:none;animation:none}}

.fer-progress{display:block;width:100%;height:11px;appearance:none;-webkit-appearance:none;border:0;border-radius:99px;overflow:hidden;background:#e8edf4}.fer-progress::-webkit-progress-bar{background:#e8edf4;border-radius:99px}.fer-progress::-webkit-progress-value{background:linear-gradient(90deg,#17b16c,#26c68d);border-radius:99px}.fer-progress::-moz-progress-bar{background:#17b16c;border-radius:99px}
.fer-origin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.fer-origin-list,.fer-rest-list{display:grid;gap:15px;margin-top:20px}.fer-origin-row>div,.fer-rest-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.fer-origin-row strong,.fer-rest-row strong{font-size:13px}.fer-origin-row span,.fer-rest-row span{color:#5f7188;font-size:12px}.fer-origin-row>div>span{text-align:right}.fer-origin-track{display:block;height:8px;margin-top:8px;border-radius:99px;background:#e9eef5;overflow:hidden}.fer-origin-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1baa69,#51cb8f)}.fer-rest-row{padding:11px 0;border-top:1px solid #e9edf3}.fer-rest-row small{display:block;color:#8795a7}.fer-rest-row strong,.fer-rest-total{color:#19344f;white-space:nowrap}.fer-rest-total{font-size:20px}.fer-payments{margin-top:18px;border:1px solid #dce5f1;border-radius:19px;background:#fff;box-shadow:0 11px 30px #153a6c0c}.fer-payments summary{padding:19px 24px;cursor:pointer;font-weight:750;color:#23415f}.fer-payments summary:hover{color:#126ad6;background:#f6faff}.fer-payments summary:focus-visible{outline:3px solid #82b7ff;outline-offset:-3px}.fer-payments[open] summary{border-bottom:1px solid #e9edf3}.fer-payment-list{padding:3px 24px 16px;max-height:490px;overflow:auto;scrollbar-width:thin;scrollbar-color:#bfd2e8 transparent}.fer-payment{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #e9edf3}.fer-payment:last-child{border-bottom:0}.fer-payment span{min-width:0}.fer-payment strong,.fer-payment small{display:block}.fer-payment strong{font-size:12px}.fer-payment small{margin-top:4px;color:#74859b;font-size:11px}.fer-payment b{white-space:nowrap;font-size:13px}
@media(max-width:850px){.fer-origin-grid{grid-template-columns:1fr}}
@media(max-width:560px){.fer-origin-grid{gap:10px;margin-top:10px}.fer-origin-row>div,.fer-rest-row,.fer-payment{align-items:flex-start}.fer-origin-row>div>span{max-width:46%}.fer-rest-total{font-size:16px}.fer-payments summary{padding:17px 19px}.fer-payment-list{padding:3px 19px 14px}.fer-payment b{font-size:12px}}
.fer-origin-progress{display:block;width:100%;height:8px;margin-top:8px;appearance:none;-webkit-appearance:none;border:0;border-radius:99px;overflow:hidden;background:#e9eef5}.fer-origin-progress::-webkit-progress-bar{background:#e9eef5;border-radius:99px}.fer-origin-progress::-webkit-progress-value{background:linear-gradient(90deg,#1baa69,#51cb8f);border-radius:99px}.fer-origin-progress::-moz-progress-bar{background:#1baa69;border-radius:99px}
