/* Inter servida pelo próprio CRM (vendor/fonts, licença SIL OFL 1.1) — antes vinha do Google Fonts,
   que recebia o IP de cada utilizador a cada abertura */
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url(vendor/fonts/inter-latin-ext-wght-normal.woff2) format('woff2-variations');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url(vendor/fonts/inter-latin-wght-normal.woff2) format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
*{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;box-sizing:border-box}
body{background:#f1f5f9;margin:0}
.sidebar{width:240px;background:#0f172a;position:fixed;top:0;left:0;height:100vh;z-index:20;display:flex;flex-direction:column}
.nav-item{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:8px;color:#94a3b8;cursor:pointer;transition:all .15s;font-size:14px;font-weight:500;margin-bottom:2px}
.nav-item:hover{background:rgba(99,102,241,.12);color:#c7d2fe}
.nav-item.active{background:#4f46e5;color:#fff;box-shadow:0 4px 12px rgba(79,70,229,.4)}
.view{display:none}.view.active{display:block}
.main{margin-left:240px;padding:28px;min-height:100vh}
.ps-sticky{position:sticky;top:0;z-index:15;background:#f1f5f9;padding:10px 0 14px;margin:-10px 0 6px}
.ps-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:9999px;font-size:13px;font-weight:600;color:#475569;background:#fff;border:1px solid #e2e8f0;cursor:pointer;font-family:inherit;transition:background-color .15s,color .15s,border-color .15s}
.ps-chip:hover{border-color:#a5b4fc;color:#4338ca}
.ps-chip:focus-visible{outline:2px solid #6366f1;outline-offset:2px}
.ps-chip:active{transform:scale(.97)}
.ps-chip.active{background:#4f46e5;border-color:#4f46e5;color:#fff}
.ps-chip .n{font-size:11px;font-weight:700;padding:1px 7px;border-radius:9999px;background:#eef2ff;color:#4338ca}
.ps-chip.active .n{background:rgba(255,255,255,.22);color:#fff}
.ps-chip-label{font-size:12px;font-weight:700;color:#64748b;margin-right:2px;flex-shrink:0}
.card{background:#fff;border-radius:16px;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #f1f5f9}
.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all .15s}
.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca;transform:translateY(-1px);box-shadow:0 4px 12px rgba(79,70,229,.3)}
.btn-secondary{background:#fff;color:#374151;border:1px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc}
.btn-sm{padding:6px 12px;font-size:13px;border-radius:8px}
.form-label{display:block;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.form-input{width:100%;padding:9px 13px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;color:#1e293b;outline:none;transition:all .15s;background:#fff;font-family:inherit}
.form-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.12)}
select.form-input{cursor:pointer}
.overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:200;padding:20px;backdrop-filter:blur(3px)}
.overlay.open{display:flex}
.modal{background:#fff;border-radius:20px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px rgba(0,0,0,.2);animation:mIn .2s ease}
@keyframes mIn{from{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
.tbl{width:100%;border-collapse:collapse}
.tbl th{text-align:left;padding:10px 16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;background:#f8fafc;border-bottom:1px solid #f1f5f9}
.tbl td{padding:12px 16px;font-size:14px;color:#334155;border-bottom:1px solid #f8fafc;vertical-align:middle}
.tbl tr:hover td{background:#f8fafc}.tbl tr:last-child td{border-bottom:none}
.badge{font-size:11px;padding:3px 9px;border-radius:9999px;font-weight:600;white-space:nowrap;display:inline-block}
.avatar{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0}
.tag{font-size:11px;padding:2px 8px;border-radius:6px;background:#e0e7ff;color:#4338ca;font-weight:500;display:inline-block;margin:1px}
.kanban-board{display:flex;gap:14px;overflow-x:auto;padding-bottom:8px}
.kanban-col{min-width:250px;width:250px;flex-shrink:0;background:#f8fafc;border-radius:14px;padding:12px;border:1px solid #f1f5f9}
.deal-card{background:#fff;border-radius:10px;padding:12px;margin-bottom:8px;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #f1f5f9;cursor:pointer;transition:all .15s}
.deal-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.1);transform:translateY(-2px)}
.tl-dot{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.star{color:#e2e8f0;cursor:pointer;font-size:13px}.star.on{color:#f59e0b}
.fav-btn{color:#cbd5e1;background:none;border:0;padding:2px;cursor:pointer;line-height:1}.fav-btn:hover,.fav-btn.on{color:#f59e0b}
.pesq-sel{position:relative}
.pesq-lista{position:fixed;z-index:1000;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;box-shadow:0 12px 32px rgba(15,23,42,.14);max-height:260px;overflow-y:auto;padding:4px}
.pesq-op{padding:7px 10px;border-radius:7px;font-size:14px;color:#1e293b;cursor:pointer;line-height:1.3}
.pesq-op small{display:block;font-size:11.5px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pesq-op:hover,.pesq-op.ativo{background:#eef2ff}.pesq-op.sel{font-weight:600;color:#4f46e5}.pesq-op.nenhum{color:#94a3b8}
.pesq-nota{padding:7px 10px;font-size:12px;color:#94a3b8}
[data-theme=dark] .pesq-lista{background:#1e293b;border-color:#334155;box-shadow:0 12px 32px rgba(0,0,0,.5)}
[data-theme=dark] .pesq-op{color:#e2e8f0}[data-theme=dark] .pesq-op:hover,[data-theme=dark] .pesq-op.ativo{background:#312e81}[data-theme=dark] .pesq-op.sel{color:#a5b4fc}
.fav-filtro.on{background:#fef3c7;border-color:#f59e0b;color:#b45309}.fav-filtro i{color:#f59e0b}
.empty{text-align:center;padding:56px 24px}
.empty i{font-size:48px;color:#e2e8f0;display:block;margin-bottom:14px}
.search-box{position:relative}.search-box i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:13px;pointer-events:none}
.search-box input{padding-left:36px}
#toast{position:fixed;bottom:28px;right:28px;padding:12px 18px;border-radius:12px;font-size:14px;font-weight:500;z-index:9999;display:none;align-items:center;gap:10px;box-shadow:0 10px 30px rgba(0,0,0,.2);animation:fadeUp .3s ease;min-width:220px}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
#toast.show{display:flex}
#toast.s{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}
#toast.e{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
#toast.d{background:#1e293b;color:#fff}
::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-track{background:transparent}
.prob-bar{height:4px;border-radius:2px;background:#e2e8f0;overflow:hidden;margin-top:6px}
.prob-fill{height:100%;border-radius:2px}
.tab-btn{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;border:none;background:transparent;transition:all .15s}
.tab-btn.active{background:#4f46e5;color:#fff}
.task-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #f8fafc;transition:background .15s}
.task-row:hover{background:#f8fafc}.task-row:last-child{border-bottom:none}
.cb{width:18px;height:18px;border-radius:5px;border:2px solid #d1d5db;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}
.cb.done{background:#4f46e5;border-color:#4f46e5}
/* Drag & Drop */
.kanban-col.drag-over{border:2px dashed #6366f1!important;background:#eef2ff!important}
.deal-card.dragging{opacity:.35;cursor:grabbing}
/* Calendar */
.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}
.cal-day-hdr{text-align:center;font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;padding:4px 0;letter-spacing:.04em}
.cal-day{min-height:72px;border-radius:8px;border:1px solid #f1f5f9;padding:5px;background:#fff}
.cal-day.today{border-color:#6366f1;background:#eef2ff}
.cal-day.other-month{opacity:.4}
.cal-day.other-month .cal-dn{color:#cbd5e1}
.cal-dn{font-size:12px;font-weight:700;color:#475569;margin-bottom:3px}
.cal-task-item{font-size:10px;padding:2px 5px;border-radius:4px;margin-bottom:2px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:1.4}
/* Pipeline stage settings */
.stage-row{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f8fafc;border-radius:8px;margin-bottom:6px;border:1px solid #f1f5f9}
.stage-row:hover{border-color:#e2e8f0;background:#fff}
/* Contact detail tabs */
.ctd-tab-btn{padding:7px 14px;border-radius:8px 8px 0 0;font-size:13px;font-weight:500;color:#64748b;cursor:pointer;border:none;background:transparent;transition:all .15s;border-bottom:2px solid transparent}
.ctd-tab-btn.active{color:#4f46e5;border-bottom:2px solid #4f46e5;background:#f8fafc}
/* ── MOBILE ──────────────────────────────────────────*/
#mob-btn{display:none;position:fixed;top:14px;left:14px;z-index:30;width:40px;height:40px;background:#1e293b;border-radius:10px;align-items:center;justify-content:center;border:none;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.25)}
#mob-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:19;cursor:pointer}
#mob-overlay.show{display:block}
@media(max-width:768px){
  #mob-btn{display:flex}
  .sidebar{transform:translateX(-100%);transition:transform .25s ease}
  .sidebar.mob-open{transform:translateX(0);box-shadow:6px 0 24px rgba(0,0,0,.3)}
  .main{margin-left:0!important;padding:16px;padding-top:70px}
  .ps-sticky{position:static;margin:0 0 16px;padding:0}
  .kanban-board{flex-direction:column}
  .kanban-col{width:100%!important;min-width:0!important}
  [style*="grid-template-columns:2fr 1fr"],[style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns:repeat(5,1fr)"],[style*="grid-template-columns:repeat(4,1fr)"],[style*="grid-template-columns:repeat(3,1fr)"],[style*="grid-template-columns:repeat(2,1fr)"]{grid-template-columns:1fr!important}
  [style*="grid-template-columns:repeat(7,1fr)"]{grid-template-columns:repeat(7,1fr)}
  #ls-warning{margin-left:0!important;padding-left:58px!important;flex-wrap:wrap;font-size:12px!important}
  #ls-warning span{flex:1;min-width:180px}
}
/* telemóvel: cabeçalhos das páginas, separadores e linhas de definições passam para a linha seguinte (antes os botões
   saíam do ecrã e a página andava para os lados — ex.: Contactos com 702 px numa largura de 390) */
@media(max-width:768px){
  .main .flex.justify-between.items-center{flex-wrap:wrap;gap:12px}
  .main .flex.justify-between.items-center>div[style*="display:flex"]{flex-wrap:wrap}
  #task-tabs,#ps-view-tabs{flex-wrap:wrap}
  .stage-row{flex-wrap:wrap}
}
/* ── DARK MODE ─────────────────────────────────────── */
[data-theme=dark] body{background:#0f172a}
[data-theme=dark] .main{background:#0f172a}
[data-theme=dark] .ps-sticky{background:#0f172a}
[data-theme=dark] .ps-chip{background:#1e293b;border-color:#334155;color:#cbd5e1}
[data-theme=dark] .ps-chip.active{background:#4f46e5;border-color:#4f46e5;color:#fff}
[data-theme=dark] .ps-chip .n{background:#334155;color:#e2e8f0}
[data-theme=dark] .card{background:#1e293b!important;border-color:#334155!important}
[data-theme=dark] .modal{background:#1e293b!important}
[data-theme=dark] .modal>div{border-color:#334155!important}
[data-theme=dark] .overlay{background:rgba(0,0,0,.78)!important}
[data-theme=dark] .form-input{background:#0f172a!important;border-color:#334155!important;color:#f1f5f9!important}
[data-theme=dark] .form-input::placeholder{color:#475569!important}
[data-theme=dark] select.form-input option{background:#1e293b;color:#f1f5f9}
[data-theme=dark] .form-label{color:#94a3b8!important}
[data-theme=dark] .tbl th{background:#0f172a!important;color:#64748b!important;border-bottom-color:#334155!important}
[data-theme=dark] .tbl td{color:#cbd5e1!important;border-bottom-color:#1e293b!important}
[data-theme=dark] .tbl tr:hover td{background:#253347!important}
[data-theme=dark] .kanban-col{background:#162032!important;border-color:#334155!important}
[data-theme=dark] .kanban-col.drag-over{background:#1e1b4b!important;border-color:#6366f1!important}
[data-theme=dark] .deal-card{background:#1e293b!important;border-color:#334155!important}
[data-theme=dark] .deal-card:hover{box-shadow:0 6px 16px rgba(0,0,0,.4)!important}
[data-theme=dark] .task-row{border-bottom-color:#1e293b!important}
[data-theme=dark] .task-row:hover{background:#253347!important}
[data-theme=dark] .cal-day{background:#1e293b!important;border-color:#334155!important}
[data-theme=dark] .cal-day.today{background:#1e1b4b!important;border-color:#6366f1!important}
[data-theme=dark] .cal-day.other-month{opacity:.2}
[data-theme=dark] .cal-dn{color:#94a3b8!important}
[data-theme=dark] .cal-day-hdr{color:#64748b!important}
[data-theme=dark] .stage-row{background:#162032!important;border-color:#334155!important}
[data-theme=dark] .stage-row:hover{background:#1e293b!important;border-color:#475569!important}
[data-theme=dark] .btn-secondary{background:#253347!important;color:#cbd5e1!important;border-color:#334155!important}
[data-theme=dark] .btn-secondary:hover{background:#334155!important}
[data-theme=dark] .tab-btn{color:#64748b!important}
[data-theme=dark] .tab-btn.active{background:#4f46e5!important;color:#fff!important}
[data-theme=dark] .ctd-tab-btn{color:#64748b!important}
[data-theme=dark] .ctd-tab-btn.active{color:#a5b4fc!important;background:#162032!important;border-bottom-color:#6366f1!important}
[data-theme=dark] .cb{border-color:#475569!important}
[data-theme=dark] .star:not(.on){color:#334155!important}
/* ecrãs vazios: antes o ícone, o título e o texto ficavam quase da cor do cartão (invisíveis) */
[data-theme=dark] .empty i{color:#475569!important}
[data-theme=dark] .empty h3{color:#cbd5e1!important}
[data-theme=dark] .empty p{color:#94a3b8!important}
[data-theme=dark] ::-webkit-scrollbar-thumb{background:#334155}
[data-theme=dark] .prob-bar{background:#334155!important}
[data-theme=dark] #app h2,[data-theme=dark] #app h3{color:#f1f5f9!important}
[data-theme=dark] #loginScreen>div{background:#1e293b!important}
[data-theme=dark] #loginScreen h1{color:#f1f5f9!important}
[data-theme=dark] #k-contacts,[data-theme=dark] #k-deals,[data-theme=dark] #k-revenue,[data-theme=dark] #k-tasks{color:#f1f5f9!important}
[data-theme=dark] #k-contacts-sub,[data-theme=dark] #k-deals-sub,[data-theme=dark] #k-revenue-sub,[data-theme=dark] #k-tasks-sub{color:#64748b!important}
[data-theme=dark] #dashDate{color:#64748b!important}
[data-theme=dark] #goal-label,[data-theme=dark] #goal-pct{color:#f1f5f9!important}
[data-theme=dark] #goal-sub{color:#64748b!important}
[data-theme=dark] [style*="color:#1e293b"]{color:#f1f5f9!important}
[data-theme=dark] [style*="color:#334155"]{color:#cbd5e1!important}
[data-theme=dark] [style*="color:#374151"]{color:#cbd5e1!important} /* texto das atividades, fontes nos relatórios */
[data-theme=dark] [style*="color:#64748b"]{color:#94a3b8!important}
[data-theme=dark] [style*="color:#475569"]{color:#64748b!important}
[data-theme=dark] [style*="color:#78350f"]{color:#fcd34d!important}
[data-theme=dark] [style*="color:#92400e"]{color:#fcd34d!important}
[data-theme=dark] [style*="color:#1d4ed8"]{color:#93c5fd!important}
[data-theme=dark] [style*="border:1px solid #bfdbfe"]{border-color:#1e40af!important}
[data-theme=dark] [style*="background:#f8fafc"]{background:#162032!important}
[data-theme=dark] [style*="background:#f1f5f9"]{background:#334155!important}
[data-theme=dark] [style*="background:#ecfdf5"]{background:#064e3b!important}
[data-theme=dark] [style*="background:#fef2f2"]{background:#450a0a!important}
[data-theme=dark] [style*="background:#eff6ff"]{background:#172554!important}
[data-theme=dark] [style*="background:#f0f9ff"]{background:#082f49!important}
[data-theme=dark] [style*="background:#f0fdf4"]{background:#052e16!important}
[data-theme=dark] [style*="background:#f5f3ff"]{background:#2e1065!important}
[data-theme=dark] [style*="background:#fffbeb"]{background:#422006!important}
[data-theme=dark] [style*="background:#e0e7ff"]{background:#312e81!important}
[data-theme=dark] [style*="background:#e2e8f0"]{background:#334155!important}
[data-theme=dark] [style*="border-bottom:1px solid #f8fafc"]{border-bottom-color:#1e293b!important}
[data-theme=dark] [style*="border-bottom:1px solid #f1f5f9"]{border-bottom-color:#334155!important}
[data-theme=dark] [style*="border-top:1px solid #f1f5f9"]{border-top-color:#334155!important}
[data-theme=dark] [style*="border-top:1px solid #f8fafc"]{border-top-color:#1e293b!important}
[data-theme=dark] [style*="border:1px solid #f1f5f9"]{border-color:#334155!important}
[data-theme=dark] [style*="border:1px solid #e2e8f0"]{border-color:#334155!important}
[data-theme=dark] [style*="border:1px solid #fde68a"]{border-color:#854d0e!important}
[data-theme=dark] [style*="height:1px"][style*="background"]{opacity:.2}
/* separador ativo: classe (o browser guarda o style como rgb(...) e o seletor por "background:#fff" nunca apanhava) */
[data-theme=dark] #view-settings .stab-btn.stab-ativa{background:#253347!important;color:#f1f5f9!important;box-shadow:0 1px 3px rgba(0,0,0,.3)!important}
[data-theme=dark] #view-settings [style*="background:#f1f5f9"][style*="border-radius:12px"]{background:#162032!important}

/* ── Conteúdo comercial ─────────────────────────────── */
.cnt-grid{display:grid;grid-template-columns:240px 1fr;gap:16px}
.cnt-pasta{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:9px;font-size:13px;font-weight:600;color:#475569;cursor:pointer;transition:background .15s}
.cnt-pasta:hover{background:#f1f5f9}
.cnt-pasta.active{background:#eef2ff;color:#4338ca}
.cnt-pasta>i:first-child{width:16px;text-align:center;color:#6366f1}
.cnt-n{font-size:11px;font-weight:700;color:#94a3b8;background:#f1f5f9;padding:1px 7px;border-radius:9999px}
.cnt-pasta.active .cnt-n{background:#e0e7ff;color:#4338ca}
.cnt-acao{font-size:11px;color:#94a3b8;opacity:.55;padding:4px;transition:opacity .15s}
.cnt-pasta:hover .cnt-acao{opacity:1}
.cnt-acao:hover{color:#4338ca}
.cnt-doc{background:#fff;border:1px solid #f1f5f9;border-radius:12px;padding:14px 16px;margin-bottom:10px;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.05);transition:all .15s}
.cnt-doc:hover{border-color:#c7d2fe;box-shadow:0 4px 12px rgba(79,70,229,.08)}
.cnt-vazio{padding:48px 24px;text-align:center;color:#94a3b8}
.cnt-vazio i{font-size:34px;color:#cbd5e1;margin-bottom:10px;display:block}
.cnt-vazio h3{font-size:15px;font-weight:700;color:#475569;margin:0 0 4px}
.cnt-vazio p{font-size:13px;margin:0}
.cnt-det{background:#f8fafc;border-radius:10px;padding:9px 12px;margin-bottom:6px}
.cnt-det summary{font-size:13px;font-weight:600;color:#1e293b;cursor:pointer}
[data-theme=dark] .cnt-pasta{color:#cbd5e1}
[data-theme=dark] .cnt-pasta:hover{background:#1e293b}
[data-theme=dark] .cnt-pasta.active{background:#312e81;color:#e0e7ff}
[data-theme=dark] .cnt-n{background:#334155;color:#cbd5e1}
[data-theme=dark] .cnt-doc{background:#1e293b!important;border-color:#334155!important}
[data-theme=dark] .cnt-det{background:#0f172a}
/* modo escuro: o título dos blocos que abrem ("O que pôr na Meta", "Conteúdo para esta etapa") e os rótulos das grelhas ficavam escuros sobre escuro */
[data-theme=dark] .cnt-det summary{color:#e2e8f0}
[data-theme=dark] .imp-grelha label{color:#cbd5e1}
@media(max-width:768px){.cnt-grid{grid-template-columns:1fr}}
/* ── Pipeline: pesquisa e seleção de várias leads ── */
.ps-barra{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}
.ps-sel-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#1e293b;color:#fff;border-radius:10px;padding:6px 10px;font-size:13px}
.ps-sel-bar .form-input{padding:5px 8px;font-size:12px;width:auto;min-width:150px}
.deal-card.sel{outline:2px solid #6366f1;outline-offset:-2px;background:#eef2ff}
.ps-card-cb{width:15px;height:15px;accent-color:#4f46e5;cursor:pointer;margin:0 6px 0 0;vertical-align:-2px}
.ps-col-sel{font-size:11px;color:#6366f1;background:none;border:0;cursor:pointer;padding:0;margin-top:4px;font-weight:600}
.ps-busca-vazia{font-size:12px;color:#94a3b8;text-align:center;padding:10px 0}
/* ── Tarefas de hoje ── */
.hoje-sec{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin:6px 0 8px}
.hoje-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;background:#f8fafc;margin-bottom:6px}
.hoje-row .cb{flex-shrink:0}
.hoje-row.feita{opacity:.55}.hoje-row.feita .hoje-tit{text-decoration:line-through}
.hoje-tit{font-size:14px;font-weight:600;color:#1e293b;cursor:pointer;background:none;border:0;padding:0;text-align:left;font-family:inherit}
.hoje-tit:hover{color:#4f46e5}
/* ── Duplicados ── */
.dup-grupo{border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;margin-bottom:12px}
.dup-grupo h4{font-size:12px;font-weight:700;color:#64748b;margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}
.dup-linha{display:flex;align-items:flex-start;gap:10px;padding:7px 8px;border-radius:8px;cursor:pointer}
.dup-linha:hover{background:#f8fafc}.dup-linha input{margin-top:3px;accent-color:#4f46e5}
.dup-linha .nm{font-size:14px;font-weight:600;color:#1e293b}.dup-linha .dt{font-size:12px;color:#64748b}
[data-theme=dark] .deal-card.sel{background:#312e81!important}
[data-theme=dark] .hoje-row,[data-theme=dark] .dup-linha:hover{background:#0f172a}
[data-theme=dark] .hoje-tit,[data-theme=dark] .dup-linha .nm{color:#f1f5f9}
[data-theme=dark] .dup-grupo{border-color:#334155}
/* ── Opções de cada canal (Definições → Pipeline) ── */
.canal-opcoes{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:2px 12px 12px 40px;margin-top:-4px;font-size:12px;color:#475569}
.canal-opcoes label{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.canal-opcoes input{accent-color:#4f46e5}.canal-opcoes i{color:#94a3b8}
.canal-resp{background:#eef2ff;border:0;border-radius:6px;padding:2px 8px;font-size:12px;color:#4338ca;cursor:pointer;font-family:inherit}
[data-theme=dark] .canal-opcoes{color:#cbd5e1}[data-theme=dark] .canal-resp{background:#312e81;color:#c7d2fe}
/* ── Ficheiros anexados aos textos ── */
.anexo{display:flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid #e2e8f0;border-radius:9px;margin-bottom:6px;font-size:13px;background:#fff}
.anexo>i{color:#6366f1;width:16px;text-align:center}.an-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b;font-weight:600}
.an-tam{font-size:11px;color:#94a3b8;white-space:nowrap}.anexos-ver{margin-top:12px}
[data-theme=dark] .anexo{background:#0f172a;border-color:#334155}[data-theme=dark] .an-nome{color:#f1f5f9}
/* ── Papéis: o comercial não vê o que é só de administrador; fora da v2 não há utilizadores ── */
body.papel-comercial .so-admin{display:none!important}
body:not(.modo-v2) .so-v2{display:none!important}
.util-linha{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f1f5f9;flex-wrap:wrap}
.util-linha:last-child{border-bottom:0}
.util-nome{font-size:14px;font-weight:600;color:#1e293b}.util-mail{font-size:12px;color:#94a3b8}
.util-linha select{width:auto;padding:5px 8px;font-size:12px}
.convite-link{display:flex;gap:6px}.convite-link input{font-size:12px}
@media (max-width:900px){.grelha-util{grid-template-columns:1fr!important}}
[data-theme=dark] .util-nome{color:#f1f5f9}[data-theme=dark] .util-linha{border-color:#334155}
/* ── Nutrição por email ── */
.nut-passo{border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;margin-bottom:10px}
[data-theme=dark] .nut-passo{border-color:#334155}
.btn.active{background:#eef2ff;border-color:#6366f1;color:#4338ca}
[data-theme=dark] .btn.active{background:#312e81!important;color:#e0e7ff!important}
/* ── Contraste (E35): o cinzento claro #94a3b8 em fundo branco tem 2,6:1 — abaixo do mínimo para texto (4,5:1).
   No modo claro passa a #64748b (4,8:1). No modo escuro o #94a3b8 já tem bom contraste e mantém-se. ── */
:root:not([data-theme=dark]) [style*="color:#94a3b8"]{color:#64748b!important}
:root:not([data-theme=dark]) .tbl th,:root:not([data-theme=dark]) .pesq-op small,:root:not([data-theme=dark]) .pesq-nota,
:root:not([data-theme=dark]) .cal-day-hdr,:root:not([data-theme=dark]) .an-tam,:root:not([data-theme=dark]) .util-mail,
:root:not([data-theme=dark]) .pesq-op.nenhum{color:#64748b}
#sbUserEmail{color:#94a3b8!important}
/* foco visível para quem usa o teclado */
[role=button]:focus-visible,button:focus-visible,a:focus-visible,.form-input:focus-visible{outline:2px solid #6366f1;outline-offset:2px}
/* assistente de importação */
.imp-h{font-size:14px;font-weight:700;color:#1e293b;margin:20px 0 8px}.imp-h span{font-size:12px;font-weight:400;color:#64748b;margin-left:6px}
.imp-tabela{width:100%;border-collapse:collapse;font-size:12.5px}.imp-tabela th{text-align:left;font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.03em;padding:6px 8px;border-bottom:1px solid #e2e8f0}
.imp-tabela td{padding:6px 8px;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#1e293b}.imp-tabela select{padding:5px 8px;font-size:12.5px;min-width:190px}
.imp-ex{color:#475569;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.imp-ignorada td{opacity:.55}
.imp-grelha{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.imp-grelha label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:#475569}
.imp-mes{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:12px;font-size:13px;color:#334155}.imp-mes span{font-weight:600}.imp-mes label{display:flex;gap:6px;align-items:center;cursor:pointer}
.imp-dup{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#334155}.imp-dup label{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
.imp-nota{font-size:12px;color:#64748b;margin:4px 0 0}.imp-erro{font-size:13px;color:#b45309;margin:0}
.imp-link{color:#4f46e5;text-decoration:underline}.imp-contas{list-style:disc;margin:0 0 12px;padding-left:18px;font-size:13px;color:#334155;line-height:1.7}
.imp-feito{display:flex;gap:14px;align-items:flex-start;font-size:13px;color:#334155}.imp-feito>i{font-size:28px;color:#10b981}
[data-theme=dark] .imp-h,[data-theme=dark] .imp-tabela td{color:#e2e8f0}[data-theme=dark] .imp-tabela th{border-color:#334155}[data-theme=dark] .imp-tabela td{border-color:#1e293b}
[data-theme=dark] .imp-mes,[data-theme=dark] .imp-dup,[data-theme=dark] .imp-contas,[data-theme=dark] .imp-feito{color:#cbd5e1}
/* importação simples: o que entra em cada campo, em fichas; o resto fica em "Corrigir colunas e mais opções" */
.imp-campos{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.imp-campo{display:inline-flex;gap:5px;align-items:center;padding:4px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:12.5px}
.imp-campo small{color:#6366f1;font-size:11.5px}.imp-campo.imp-notas{background:#f1f5f9;color:#475569}.imp-campo.imp-notas small{color:#64748b}
.imp-avancado{margin-top:16px;border-top:1px solid #f1f5f9;padding-top:12px}.imp-avancado>summary{cursor:pointer;font-size:13px;font-weight:600;color:#4f46e5;list-style:none}
.imp-avancado>summary::-webkit-details-marker{display:none}.imp-avancado>summary i{margin-right:6px}
[data-theme=dark] .imp-campo{background:#312e81;color:#e0e7ff}[data-theme=dark] .imp-campo small{color:#a5b4fc}[data-theme=dark] .imp-campo.imp-notas{background:#1e293b;color:#cbd5e1}
[data-theme=dark] .imp-campo.imp-notas small{color:#94a3b8}[data-theme=dark] .imp-avancado{border-color:#1e293b}[data-theme=dark] .imp-avancado>summary{color:#a5b4fc}
@media(max-width:640px){.imp-tabela select{min-width:140px}.imp-ex{max-width:120px}}
/* ecrã de entrada em telemóveis estreitos */
@media(max-width:420px){#loginScreen>div{width:auto!important;margin:12px;padding:28px 20px!important}}

/* dashboard do canal: gráfico à esquerda, a 1.ª tabela do canal ao lado; em ecrãs estreitos, um por baixo do outro */
.ps-dash-topo{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}
.ps-dash-lado>.card{margin-bottom:0!important}
.ps-dash-lado:empty{display:none}
@media(max-width:900px){.ps-dash-topo{grid-template-columns:minmax(0,1fr)}}

/* dashboard do canal: os cartões (ativas, fechadas, conversão, em curso, fechado) passam para a linha seguinte se não couberem */
#ps-stats{flex-wrap:wrap}
