
:root{--c-black:#000000;--c-white:#ffffff;--c-green:#7BC242;--c-green-d:#5FA52B;--c-green-soft:#EEF7E4;--c-navy:#2D2C6E;--c-navy-d:#1F1E55;--c-navy-soft:#ECECF6;--bg:#F5F6F8;--bg-card:#FFFFFF;--bg-soft:#FAFAFB;--bg-hover:#F0F2F5;--border:#E5E7EB;--border-strong:#D1D5DB;--text:#111827;--text-soft:#374151;--text-muted:#6B7280;--text-faint:#9CA3AF;--warn:#DC2626;--warn-soft:#FEE2E2;--amber:#F59E0B;--amber-soft:#FEF3C7;--info:var(--c-navy);--info-soft:var(--c-navy-soft);--success:var(--c-green-d);--success-soft:var(--c-green-soft);--alta:#DC2626;--media:#F59E0B;--baixa:var(--c-green-d);--neutral-soft:#F3F4F6;--focus-ring:rgba(45,44,110,.18);--shadow-sm:0 1px 2px rgba(17,24,39,.05);--shadow:0 1px 3px rgba(17,24,39,.08),0 1px 2px rgba(17,24,39,.04);--shadow-md:0 4px 8px rgba(17,24,39,.07),0 2px 4px rgba(17,24,39,.04);--shadow-lg:0 12px 28px rgba(17,24,39,.12),0 6px 12px rgba(17,24,39,.06);--radius:8px;--radius-lg:12px;--transition:150ms cubic-bezier(.4,0,.2,1)}
[data-theme="dark"]{--bg:#0E1015;--bg-card:#1A1D24;--bg-soft:#1F232B;--bg-hover:#252A35;--border:#2A2F3A;--border-strong:#3D4452;--neutral-soft:#2A2F3A;--text:#E4E7EB;--text-soft:#C5CAD3;--text-muted:#8B92A0;--text-faint:#5F6776;--c-green:#8FD148;--c-green-d:#7BC242;--c-green-soft:#1B2D10;--c-navy:#4A48A8;--c-navy-d:#2D2C6E;--c-navy-soft:#1E1D3D;--warn:#F87171;--warn-soft:#2D1416;--amber:#FBBF24;--amber-soft:#2D2308;--info:var(--c-navy);--info-soft:var(--c-navy-soft);--success:var(--c-green);--success-soft:var(--c-green-soft);--alta:#F87171;--media:#FBBF24;--baixa:#8FD148;--focus-ring:rgba(143,209,72,.25);--shadow-sm:0 1px 2px rgba(0,0,0,.5);--shadow:0 2px 4px rgba(0,0,0,.6),0 1px 2px rgba(0,0,0,.4);--shadow-md:0 4px 12px rgba(0,0,0,.6),0 2px 4px rgba(0,0,0,.4);--shadow-lg:0 16px 36px rgba(0,0,0,.7),0 8px 16px rgba(0,0,0,.5)}
*{ box-sizing: border-box; }
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Inter","Segoe UI",Roboto,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.app{display:flex;flex-direction:column;min-height:100vh;margin:0;padding:0;max-width:none}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 22px;border-bottom:1px solid var(--border);background:var(--bg-card);position:sticky;top:0;z-index:50}
.brand{display:flex;align-items:center;gap:12px}
.brand-logo{flex-shrink:0;box-shadow:var(--shadow-sm);border-radius:7px}
.brand-stack{ display: flex; flex-direction: column; gap: 1px; }
.brand-text{font-weight:800;font-size:18px;color:var(--text);letter-spacing:-.02em;line-height:1.1}
.brand-subtitle{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:500}
.topbar-actions{display:flex;align-items:center;gap:10px}
.user-badge{background:var(--bg-card);border:1px solid var(--border);color:var(--text-soft);padding:5px 12px;border-radius:100px;font-size:12px;font-weight:500}
.meta{color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}
.btn-icon{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:6px 12px;cursor:pointer;color:var(--text-soft);font-size:16px;transition:all var(--transition);font-weight:600}
.btn-icon:hover{background:var(--c-black);color:var(--c-white);border-color:var(--c-black)}
.btn-icon.loading{ animation: spin .9s linear infinite; }
@keyframes spin{ from{ transform: rotate(0deg); } to{ transform: rotate(360deg); } }
.btn-primary,.btn-secondary,.btn-danger,.btn-success{border-radius:var(--radius);padding:8px 16px;cursor:pointer;font-size:13px;font-weight:600;border:1px solid transparent;transition:all var(--transition);letter-spacing:.01em}
.btn-primary{background:var(--c-black);color:var(--c-white);border-color:var(--c-black)}
.btn-primary:hover{background:var(--c-green);border-color:var(--c-green);color:var(--c-black)}
.btn-primary:disabled{ opacity: .5; cursor: not-allowed; }
.btn-success{background:var(--c-green);color:var(--c-black);border-color:var(--c-green);font-weight:700}
.btn-success:hover{background:var(--c-green-d);color:var(--c-white);border-color:var(--c-green-d)}
.btn-secondary{background:var(--bg-card);color:var(--text-soft);border-color:var(--border)}
.btn-secondary:hover{background:var(--bg-hover);color:var(--text);border-color:var(--border-strong)}
.btn-danger{background:var(--bg-card);color:var(--warn);border-color:var(--warn)}
.btn-danger:hover{background:var(--warn);color:var(--c-white)}
.tabs{display:flex;gap:2px;margin-bottom:20px;border-bottom:1px solid var(--border)}
.tab{background:transparent;border:none;border-bottom:2px solid transparent;padding:10px 18px;cursor:pointer;color:var(--text-muted);font-size:13px;font-weight:600;transition:all var(--transition);margin-bottom:-1px;letter-spacing:-.01em}
.tab:hover{ color: var(--text); }
.tab.active{color:var(--text);border-bottom-color:var(--c-green)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}
.kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow-sm);transition:all var(--transition);position:relative;overflow:hidden}
.kpi::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--border)}
.kpi:hover{box-shadow:var(--shadow);transform:translateY(-1px)}
.kpi-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.kpi-value{font-size:30px;font-weight:800;color:var(--text);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.kpi-warn::before   { background: var(--warn); }
.kpi-warn .kpi-value{ color: var(--warn); }
.kpi-info::before   { background: var(--c-navy); }
.kpi-info .kpi-value{ color: var(--c-navy); }
.kpi-success::before{ background: var(--c-green); }
.kpi-success .kpi-value{ color: var(--c-green-d); }
.cards-row{ margin-bottom: 24px; }
.section-title{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--text-muted);letter-spacing:.06em;margin:0 0 10px}
.chips{ display: flex; flex-wrap: wrap; gap: 6px; }
.chip{background:var(--bg-card);border:1px solid var(--border);border-radius:100px;padding:5px 12px 5px 6px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all var(--transition);font-size:13px}
.chip:hover{background:var(--c-black);color:var(--c-white);border-color:var(--c-black)}
.chip:hover .chip-count{ background: var(--c-green); color: var(--c-black); }
.chip.ativo{background:var(--c-green);color:var(--c-black);border-color:var(--c-green)}
.chip.ativo .chip-count{ background: var(--c-black); color: var(--c-white); }
.chip-nome{ font-weight: 600; padding-left: 4px; }
.chip-count{background:var(--c-navy);color:var(--c-white);border-radius:100px;padding:2px 9px;font-size:11px;font-weight:700;min-width:22px;text-align:center;transition:all var(--transition)}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;background:var(--bg-card);padding:12px;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.filtro-input,.filtro-select{border:1px solid var(--border);border-radius:var(--radius);padding:7px 12px;font-size:13px;background:var(--bg-card);color:var(--text);transition:all var(--transition);font-family:inherit}
.filtro-input:focus,.filtro-select:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.filtro-input{ flex: 1 1 240px; min-width: 200px; }
.filtro-select{ min-width: 160px; cursor: pointer; }
.btn-clear{background:transparent;border:1px solid var(--border);border-radius:var(--radius);padding:7px 14px;cursor:pointer;color:var(--text-muted);font-size:13px;font-weight:500;transition:all var(--transition)}
.btn-clear:hover{background:var(--warn-soft);color:var(--warn);border-color:var(--warn)}
.tabela-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}
.tabela{ width: 100%; border-collapse: collapse; font-size: 13px; }
.tabela th{background:var(--bg-soft);padding:11px 14px;text-align:left;font-weight:700;color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);position:sticky;top:0}
.tabela td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:middle}
.tabela tr:last-child td{ border-bottom: none; }
.tabela tr{ cursor: pointer; transition: background var(--transition); }
.tabela tbody tr:hover td{ background: var(--bg-soft); }
.badge{display:inline-block;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.01em}
.badge-status-Pendente   { background: var(--neutral-soft); color: var(--text-soft); }
.badge-status-EmAndamento{ background: var(--c-navy-soft); color: var(--c-navy); }
.badge-status-Revisao    { background: var(--amber-soft); color: #B45309; }
.badge-status-Concluido  { background: var(--c-green-soft); color: var(--c-green-d); }
.prio-Alta { color: var(--alta);  font-weight: 700; }
.prio-Media{ color: var(--media); font-weight: 600; }
.prio-Baixa{ color: var(--baixa); font-weight: 500; }
.area-CADASTROS{ color: var(--c-navy);   font-weight: 600; }
.area-MIDIA    { color: var(--c-green-d);font-weight: 600; }
.area-REVISAO  { color: var(--amber);    font-weight: 600; }
.prazo-atraso { color: var(--warn);   font-weight: 700; }
.prazo-hoje   { color: var(--c-navy); font-weight: 700; }
.prazo-proximo{ color: var(--amber);  font-weight: 600; }
.prazo-ok     { color: var(--text-muted); }
.responsavel-vazio{color:var(--text-faint);font-style:italic;font-size:12px}
.acoes{ display: flex; gap: 6px; }
.btn-acao{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:4px 10px;cursor:pointer;font-size:12px;font-weight:600;transition:all var(--transition);color:var(--text-soft)}
.btn-acao:hover{background:var(--c-green);color:var(--c-black);border-color:var(--c-green)}
.btn-concluir:hover{background:var(--c-green);color:var(--c-black);border-color:var(--c-green)}
.estado-vazio{text-align:center;padding:60px 20px;color:var(--text-muted);font-style:italic}
.rodape{margin-top:16px;display:flex;justify-content:space-between;color:var(--text-muted);font-size:12px;padding:8px 4px}
.kanban-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px;background:var(--bg-card);padding:12px;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm)}
.kanban-spacer{ flex: 1; }
.kanban-board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;min-height:60vh}
.kanban-coluna{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;min-height:240px;overflow:hidden}
.kanban-header{background:var(--bg-card);padding:12px 14px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);border-top:3px solid transparent;position:sticky;top:0;z-index:1}
.kanban-coluna[data-status="Pendente"]     .kanban-header{ border-top-color: var(--text-muted); }
.kanban-coluna[data-status="Em Andamento"] .kanban-header{ border-top-color: var(--c-navy); }
.kanban-coluna[data-status="Revisao"]      .kanban-header{ border-top-color: var(--amber); }
.kanban-coluna[data-status="Concluido"]    .kanban-header{ border-top-color: var(--c-green); }
.kanban-header-titulo{font-weight:700;font-size:13px;color:var(--text);letter-spacing:-.01em}
.kanban-header-count{background:var(--text);color:var(--bg-card);border-radius:100px;padding:2px 9px;font-size:11px;font-weight:700;min-width:24px;text-align:center}
.kanban-cards{padding:10px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;min-height:100px}
.kanban-cards::-webkit-scrollbar{ width: 6px; }
.kanban-cards::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}
.kanban-card{background:var(--bg-card);border-radius:var(--radius);padding:12px 12px 10px 14px;cursor:grab;box-shadow:var(--shadow-sm);border-left:3px solid var(--border);border-top:1px solid var(--border);border-right:1px solid var(--border);border-bottom:1px solid var(--border);transition:all var(--transition);user-select:none}
.kanban-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}
.kanban-card:active{ cursor: grabbing; }
.kanban-card.prio-Alta { border-left-color: var(--alta); }
.kanban-card.prio-Media{ border-left-color: var(--media); }
.kanban-card.prio-Baixa{ border-left-color: var(--baixa); }
.kanban-card-topo{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px}
.kanban-card-num{font-size:10px;font-weight:800;color:var(--text-muted);background:var(--bg-soft);padding:2px 7px;border-radius:4px;letter-spacing:.02em}
.kanban-card-prio{ font-size: 12px; }
.kanban-card-titulo{font-size:13px;font-weight:700;margin-bottom:8px;color:var(--text);letter-spacing:-.01em;line-height:1.3}
.kanban-card-meta{font-size:11px;color:var(--text-muted);display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:8px}
.kanban-card-meta span{background:var(--bg-soft);padding:2px 7px;border-radius:4px;color:var(--text-soft);font-weight:500}
.kanban-card-meta .prazo-atraso { background: var(--warn-soft);    color: var(--warn); }
.kanban-card-meta .prazo-hoje   { background: var(--c-navy-soft);  color: var(--c-navy); }
.kanban-card-meta .prazo-proximo{ background: var(--amber-soft);   color: #B45309; }
.kanban-card-rodape{margin-top:4px;padding-top:8px;border-top:1px dashed var(--border);display:flex;justify-content:space-between;align-items:center;font-size:11px}
.kanban-card-responsavel{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}
.kanban-card-responsavel.vazio{color:var(--text-faint);font-style:italic;font-weight:400}
.kanban-card-area{font-size:9px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.card-ghost{opacity:.35;background:var(--c-green-soft) !important;border-left-color:var(--c-green) !important}
.card-chosen{ cursor: grabbing; }
.card-drag{transform:rotate(1.5deg);box-shadow:var(--shadow-lg) !important}
.modal-overlay{position:fixed;inset:0;background:rgba(17,24,39,.55);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;animation:fadeIn .15s ease-out}
@keyframes fadeIn{ from{ opacity: 0; } to{ opacity: 1; } }
.modal{background:var(--bg-card);border-radius:var(--radius-lg);width:100%;max-width:760px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 24px 60px rgba(0,0,0,.25);overflow:hidden;animation:slideUp .2s ease-out}
@keyframes slideUp{
from{ transform: translateY(16px); opacity: 0; }
to  { transform: translateY(0); opacity: 1; }
}
.modal-header{padding:16px 22px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:16px;color:var(--text);background:var(--c-black);color:var(--c-white)}
.modal-header::before{content:'';display:inline-block;width:4px;height:22px;background:var(--c-green);margin-right:12px;border-radius:2px;vertical-align:middle}
.modal-close{background:transparent;border:none;cursor:pointer;font-size:22px;color:var(--c-white);width:32px;height:32px;border-radius:var(--radius);transition:all var(--transition);opacity:.7}
.modal-close:hover{ background: rgba(255,255,255,.1); opacity: 1; }
.modal-body{padding:22px;overflow-y:auto;flex:1;background:var(--bg-card)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-row{ display: flex; flex-direction: column; gap: 5px; }
.form-row-full{ grid-column: 1 / -1; }
.modal.modal-task{ max-width: 1120px; }
.modal-task .form-grid{ grid-template-columns: repeat(3,1fr); }
.secoes-lado-a-lado{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.secoes-lado-a-lado .secao-bloco{display:flex;flex-direction:column;gap:5px;min-width:0}
@media (max-width: 900px){
.modal-task .form-grid{ grid-template-columns: 1fr 1fr; }
.secoes-lado-a-lado{ grid-template-columns: 1fr; }
}
.form-row label{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.form-row .required{ color: var(--warn); }
.form-row .hint{color:var(--text-faint);font-weight:400;text-transform:none;font-size:11px;letter-spacing:0}
.form-row input,.form-row select,.form-row textarea{border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;font-size:13px;background:var(--bg);font-family:inherit;color:var(--text);transition:all var(--transition)}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.form-row input::placeholder,.form-row textarea::placeholder{color:var(--text-faint)}
.form-row textarea{ resize: vertical; min-height: 90px; }
.responsavel-quick{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.responsavel-quick button{background:var(--c-navy-soft);color:var(--c-navy);border:none;border-radius:100px;padding:3px 12px;font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition)}
.responsavel-quick button:hover{background:var(--c-navy);color:var(--c-white)}
.modal-footer{padding:14px 22px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:var(--bg-soft)}
.modal-footer-right{ display: flex; gap: 8px; }
.btn-icon svg{ display: inline-block; vertical-align: middle; }
.icon-sun { display: none; }
.icon-moon{ display: inline-block; }
[data-theme="dark"] .icon-sun { display: inline-block; }
[data-theme="dark"] .icon-moon{ display: none; }
@media (max-width: 768px){
.topbar{ flex-wrap: wrap; padding: 10px 14px; }
.topbar-actions{ flex-wrap: wrap; gap: 6px; }
.main-content{ padding: 14px; }
.form-grid,.modal-task .form-grid{ grid-template-columns: 1fr; }
.modal{ max-height: 95vh; }
.tabela th:nth-child(4),.tabela td:nth-child(4),.tabela th:nth-child(8),.tabela td:nth-child(8){ display: none; }
}
.kanban-card-etapa{margin:4px 0 2px}
.etapa-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--c-navy-soft);color:var(--c-navy);border:1px solid var(--c-navy);line-height:1.4}
[data-theme="dark"] .etapa-badge{background:rgba(123,194,66,.14);color:var(--c-green);border-color:var(--c-green-d)}
.trilha-etapas{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 12px;margin:0 0 14px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;font-size:12px}
.trilha-label{font-weight:600;color:var(--text-muted);margin-right:4px}
.etapa-item{padding:3px 9px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-card);color:var(--text-soft);white-space:nowrap}
.etapa-item.feita{background:var(--success-soft);border-color:var(--c-green-d);color:var(--c-green-d);text-decoration:line-through;opacity:.85}
.etapa-item.atual{background:var(--c-navy);border-color:var(--c-navy);color:#fff;font-weight:700}
[data-theme="dark"] .etapa-item.atual{background:var(--c-green);border-color:var(--c-green);color:#0a0a0a}
.etapa-item.futura{opacity:.55}
.trilha-sep{color:var(--text-faint);font-size:11px}
/* ===== Login (port do React login-1 para vanilla) ===== */
.login-overlay{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;
  background:#101214;
  --lg-bg:#101214; --lg-surface:#161A1D; --lg-border:#2C333A;
  --lg-text:#C7D1DB; --lg-text-soft:#596773; --lg-heading:#DEE4EA;
}
.login-card{
  width:min(1320px,94vw);height:min(760px,92vh);
  display:grid;grid-template-columns:1fr 1.05fr;
  background:var(--lg-surface);border:1px solid var(--lg-border);border-radius:16px;overflow:hidden;
  box-shadow:0 40px 100px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.02) inset;
}
.login-left{position:relative;overflow:hidden;padding:56px 72px;display:flex;flex-direction:column;justify-content:center;color:var(--lg-text)}
.login-left-glow{
  position:absolute;width:500px;height:500px;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(168,139,250,.35),rgba(96,165,250,.25) 35%,rgba(244,114,182,.18) 60%,transparent 75%);
  filter:blur(40px);opacity:0;transition:opacity .25s ease;
  transform:translate(-9999px,-9999px);left:0;top:0;
}
.login-left.is-hover .login-left-glow{opacity:1}
.login-brand-mini{position:absolute;top:32px;left:44px;display:flex;align-items:center;gap:11px;z-index:2}
.fc-logo-svg{display:block;border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.fc-logo-text{font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--lg-heading);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}
.login-form{position:relative;z-index:2;display:flex;flex-direction:column;gap:16px;max-width:420px;margin:0 auto;width:100%}
.login-titulo{font-size:34px;font-weight:800;margin:0;color:var(--lg-heading);letter-spacing:-.02em;text-align:center}
.login-subtitulo{margin:0 0 8px;font-size:13px;color:var(--lg-text-soft);text-align:center}
.login-label{font-size:12px;font-weight:600;color:var(--lg-text-soft);margin-bottom:-10px;letter-spacing:.02em}

/* Input com glow seguindo o cursor */
.ai-input-wrap{position:relative;width:100%}
.ai-input{
  width:100%;height:46px;padding:0 16px;border-radius:8px;
  background:var(--lg-surface);border:2px solid var(--lg-border);color:var(--lg-text);
  font-size:14px;font-weight:300;outline:none;transition:background .2s ease,border-color .2s ease;
}
.ai-input::placeholder{color:var(--lg-text-soft);font-weight:500}
.ai-input:focus{background:#0d0f11;border-color:#3a444f}
.ai-input:focus::placeholder{color:#3d4a55}
.ai-glow{position:absolute;left:0;right:0;height:2px;pointer-events:none;opacity:0;transition:opacity .15s ease;border-radius:8px;overflow:hidden}
.ai-glow-top{top:0}
.ai-glow-bot{bottom:0}
.ai-input-wrap.is-hover .ai-glow{opacity:1}

/* Botão "shine" */
.login-btn-shine{
  position:relative;overflow:hidden;cursor:pointer;
  height:44px;border-radius:8px;border:none;
  background:var(--lg-border);color:#fff;font-weight:600;font-size:14px;
  display:inline-flex;align-items:center;justify-content:center;
  transition:transform .25s ease,box-shadow .25s ease;margin-top:6px;
}
.login-btn-shine:hover{transform:scale(1.03);box-shadow:0 0 0 1px var(--lg-text),0 10px 30px rgba(199,209,219,.18)}
.login-btn-shine:disabled{opacity:.6;cursor:not-allowed;transform:none}
.login-btn-shine .shine{
  position:absolute;inset:0;display:flex;justify-content:center;
  transform:skew(-13deg) translateX(-100%);
}
.login-btn-shine .shine::after{content:'';width:32px;height:100%;background:rgba(255,255,255,.22)}
.login-btn-shine:hover .shine{transition:transform 1s ease;transform:skew(-13deg) translateX(100%)}

.login-forgot{font-size:12px;color:var(--lg-text-soft);text-decoration:none;align-self:center;margin-top:2px}
.login-forgot:hover{color:var(--lg-text);text-decoration:underline}
.login-erro{background:rgba(220,38,38,.12);color:#fca5a5;padding:10px 12px;border-radius:8px;font-size:13px;border:1px solid rgba(220,38,38,.35);text-align:center}
.login-hint{margin:8px 0 0;font-size:12px;color:var(--lg-text-soft);text-align:center}
.login-senha-wrap{position:relative;display:flex}
.login-ver-senha{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;font-size:16px;line-height:1;opacity:.6;padding:4px;color:var(--lg-text);z-index:3}
.login-ver-senha:hover,.login-ver-senha.ativo{opacity:1}

/* Lado direito: imagem */
.login-right{position:relative;overflow:hidden;background:#0a0c0e}
.login-right-img{width:100%;height:100%;object-fit:cover;opacity:1;transition:transform 14s ease;display:block;filter:contrast(1.08) brightness(1.05)}
.login-card:hover .login-right-img{transform:scale(1.04)}
/* tecido ja e preto: overlay so cria leve degrade pra legibilidade do texto inferior */
.login-right-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.55) 80%,rgba(0,0,0,.78) 100%);pointer-events:none}
.login-right::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,26,29,.85) 0%,rgba(22,26,29,0) 18%);pointer-events:none;z-index:1}
.login-right-logo{position:absolute;top:28px;right:28px;width:56px;height:56px;border-radius:12px;background:#000;padding:4px;box-shadow:0 6px 24px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.06);z-index:2;object-fit:contain}
.login-right-text{position:absolute;left:48px;right:48px;bottom:44px;color:var(--lg-heading);z-index:2}
.login-right-text h2{margin:0 0 8px;font-size:46px;font-weight:800;letter-spacing:-.03em;line-height:1;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}
.login-right-text p{margin:0;font-size:13px;font-weight:500;color:var(--lg-text);opacity:.7;letter-spacing:.04em;text-transform:none}

@media (max-width: 860px){
  .login-card{grid-template-columns:1fr;height:auto;min-height:560px;max-height:92vh}
  .login-right{display:none}
  .login-left{padding:64px 28px 32px}
}
.modal.modal-lg{ max-width: 760px; }
.acessos-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.acessos-toolbar .meta{margin-left:auto;font-size:13px;color:var(--text-muted);font-weight:600}
.acessos-lista{display:flex;flex-direction:column;gap:10px;max-height:62vh;overflow-y:auto;padding-right:4px}

/* ----- Cards de usuario (Gerenciar Acessos) ----- */
.acesso-card{display:flex;align-items:center;gap:14px;padding:13px 14px;background:var(--bg-soft);border:1px solid var(--border);border-radius:14px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}
.acesso-card:hover{border-color:var(--border-strong);background:var(--bg-card);box-shadow:0 6px 22px rgba(0,0,0,.10);transform:translateY(-1px)}
.acesso-card.inativo{opacity:.6}
.acesso-av{position:relative;flex-shrink:0}
.acesso-av img{width:46px;height:46px;border-radius:50%;border:2px solid var(--border-strong);background:var(--bg-card);display:block}
.acesso-dot{position:absolute;right:-1px;bottom:-1px;width:13px;height:13px;border-radius:50%;border:2.5px solid var(--bg-soft)}
.acesso-card:hover .acesso-dot{border-color:var(--bg-card)}
.acesso-dot.on{background:var(--c-green,#22c55e)}
.acesso-dot.off{background:var(--text-faint,#94a3b8)}
.acesso-info{flex:1;min-width:0}
.acesso-topo{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.acesso-topo strong{font-size:15px;font-weight:700;color:var(--text)}
.acesso-email{font-size:12.5px;color:var(--text-muted);margin:2px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.acesso-ult{font-size:11.5px;color:var(--text-faint);display:flex;align-items:center;gap:5px}
.acesso-ult-ic{font-size:11px;opacity:.7}
.acesso-ult-nunca{font-style:italic}

/* chips de preset */
.preset-chip{font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:2.5px 9px;border-radius:999px;border:1px solid transparent;line-height:1.4}
.preset-chip.preset-master{background:rgba(124,83,247,.14);color:#8b6cf7;border-color:rgba(124,83,247,.35)}
.preset-chip.preset-gestor{background:rgba(245,158,11,.14);color:#d98706;border-color:rgba(245,158,11,.35)}
.preset-chip.preset-membro{background:rgba(59,130,246,.13);color:#3b82f6;border-color:rgba(59,130,246,.32)}
.preset-chip.preset-inativo{background:var(--neutral-soft,rgba(148,163,184,.18));color:var(--text-muted);border-color:var(--border-strong)}
[data-theme="dark"] .preset-chip.preset-master{background:rgba(139,108,247,.2);color:#a98bff}
[data-theme="dark"] .preset-chip.preset-gestor{background:rgba(245,158,11,.18);color:#fcd34d}
[data-theme="dark"] .preset-chip.preset-membro{background:rgba(59,130,246,.2);color:#7db1ff}

/* botao editar */
.acesso-edit{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:8px 13px;border-radius:9px;background:transparent;border:1px solid var(--border-strong);color:var(--text-soft);font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}
.acesso-edit:hover{background:var(--c-navy,#2d2c6e);border-color:var(--c-navy,#2d2c6e);color:#fff}
[data-theme="dark"] .acesso-edit:hover{background:var(--c-green,#7bc242);border-color:var(--c-green,#7bc242);color:#0a0a0a}
.acesso-edit svg{flex-shrink:0}
@media (max-width:520px){
  .acesso-edit span{display:none}
  .acesso-edit{padding:8px}
}
.user-card{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--bg-soft);border:1px solid var(--border);border-radius:10px}
.user-card-main{ flex: 1; min-width: 0; }
.user-card-nome{font-weight:700;color:var(--text);font-size:14px}
.user-card-email{font-size:12px;color:var(--text-muted);margin:2px 0 6px}
.user-card-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.user-preset{display:inline-block;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;background:var(--c-navy-soft);color:var(--c-navy);border:1px solid var(--c-navy)}
.user-preset.preset-Master{background:var(--c-navy);color:#fff}
.user-preset.preset-Gestor{background:var(--c-green-soft);color:var(--c-green-d);border-color:var(--c-green-d)}
.user-preset.preset-Membro{background:var(--neutral-soft);color:var(--text-soft);border-color:var(--border-strong)}
[data-theme="dark"] .user-preset.preset-Master{background:var(--c-green);color:#0a0a0a;border-color:var(--c-green)}
.perms-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;padding:12px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px}
.perm-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-soft);cursor:pointer}
.perm-item input{ cursor: pointer; }
.perm-titulo{grid-column:1 / -1;margin-top:6px;padding-top:8px;border-top:1px dashed var(--border);font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}
@media (max-width: 640px){
.perms-grid{ grid-template-columns: 1fr; }
.login-card{ padding: 28px 22px 24px; }
}
.layout{display:grid;grid-template-columns:344px minmax(0,1fr);flex:1;align-items:stretch;min-height:calc(100vh - 60px);transition:grid-template-columns .4s cubic-bezier(.25,1.1,.4,1)}
body.sb-collapsed .layout{grid-template-columns:64px minmax(0,1fr)}
.sidebar.sb-new{background:transparent;border:none;padding:0;overflow:visible;display:flex;flex-direction:row;position:sticky;top:60px;height:calc(100vh - 60px);align-items:stretch}
.main-content{padding:24px 28px 36px;min-width:0;width:100%}
.sb-rail{background:var(--bg-card);display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;width:64px;flex-shrink:0;border-right:1px solid var(--border)}
[data-theme="dark"] .sb-rail{background:#0a0c10;border-right-color:#1f242d}
.sb-rail-toggle{width:40px;height:40px;border-radius:10px;background:transparent;border:none;color:var(--text-muted);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-bottom:6px;transition:background .2s,color .2s}
.sb-rail-toggle:hover{background:var(--bg-hover);color:var(--text)}
[data-theme="dark"] .sb-rail-toggle:hover{background:#1c1d22;color:#f3f4f6}
.sb-rail-nav{display:flex;flex-direction:column;gap:4px;flex:1;align-items:center;width:100%}
.sb-icon{position:relative;width:40px;height:40px;border-radius:10px;background:transparent;border:none;color:var(--text-muted);font-size:17px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .25s cubic-bezier(.25,1.1,.4,1),color .25s,transform .15s}
.sb-icon:hover{background:var(--bg-hover);color:var(--text);transform:translateY(-1px)}
.sb-icon.active{background:var(--c-navy-soft);color:var(--c-navy);box-shadow:inset 0 0 0 1px rgba(45,44,110,.18)}
[data-theme="dark"] .sb-icon:hover{background:#1c1d22;color:#f3f4f6}
[data-theme="dark"] .sb-icon.active{background:rgba(123,194,66,.18);color:var(--c-green);box-shadow:inset 0 0 0 1px rgba(123,194,66,.4)}
.sb-icon-badge{position:absolute;top:2px;right:2px;background:var(--warn);color:#fff;font-size:9.5px;font-weight:800;padding:1px 5px;border-radius:999px;line-height:1.3;border:2px solid var(--bg-card)}
#badgeRevisao{background:#f59e0b}
#badgeRevisao.urgente{background:#ef4444;animation:revPulse 1.6s ease-in-out infinite}
[data-theme="dark"] .sb-icon-badge{border-color:#0a0c10}
.sb-rail-foot{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:6px;margin-top:6px;border-top:1px solid var(--border);width:100%}
[data-theme="dark"] .sb-rail-foot{border-top-color:#1d1d20}
.sb-detail{background:var(--bg-card);border-right:1px solid var(--border);display:flex;flex-direction:column;width:280px;overflow:hidden;transition:width .4s cubic-bezier(.25,1.1,.4,1),padding .4s cubic-bezier(.25,1.1,.4,1),opacity .25s}
body.sb-collapsed .sb-detail{width:0;border-right:none;opacity:0;pointer-events:none}
.sb-detail-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 10px;flex-shrink:0}
.sb-detail-title{margin:0;font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.01em;white-space:nowrap}
.sb-collapse-btn{width:30px;height:30px;border-radius:7px;background:transparent;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}
.sb-collapse-btn:hover{background:var(--bg-hover);color:var(--text)}
.sb-detail-search{position:relative;padding:0 18px 14px;flex-shrink:0}
.sb-search-ic{position:absolute;left:30px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--text-faint);pointer-events:none;line-height:1;margin-top:-7px}
.sb-search-input{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--border);border-radius:9px;background:var(--bg-soft);color:var(--text);font-size:13px;transition:border-color .12s,background .12s,box-shadow .12s;box-sizing:border-box}
.sb-search-input:hover{background:var(--bg-card)}
.sb-search-input:focus{outline:none;border-color:var(--c-navy);background:var(--bg-card);box-shadow:0 0 0 3px var(--focus-ring)}
[data-theme="dark"] .sb-search-input:focus{border-color:var(--c-green);box-shadow:0 0 0 3px rgba(123,194,66,.2)}
.sb-detail-body{flex:1;overflow-y:auto;padding:4px 18px 14px;display:flex;flex-direction:column;gap:20px}
.sb-detail-body::-webkit-scrollbar{width:6px}
.sb-detail-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}
.sb-detail-section{display:flex;flex-direction:column;gap:10px}
.sb-section-title{display:flex;align-items:center;gap:8px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);padding:0 2px;margin-bottom:2px}
.sb-section-title::after{content:'';flex:1;height:1px;background:var(--border);opacity:.7}
.sb-field{position:relative;display:flex;flex-direction:column}
.sb-field label{position:absolute;top:-6px;left:10px;padding:0 5px;font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;background:var(--bg-card);z-index:1;pointer-events:none;transition:color .15s}
.sb-field.has-value label{color:var(--c-green-d)}
[data-theme="dark"] .sb-field.has-value label{color:var(--c-green)}
.sb-field.has-value::after{content:'';position:absolute;top:50%;right:30px;width:6px;height:6px;border-radius:50%;background:var(--c-green-d);transform:translateY(-50%);pointer-events:none;box-shadow:0 0 0 2px var(--bg-card)}
[data-theme="dark"] .sb-field.has-value::after{background:var(--c-green)}
.sb-select{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-card);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='none' stroke='%239ca3af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5L6 7.5L9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;transition:border-color .18s,box-shadow .18s,background-color .18s}
.sb-select:hover{border-color:var(--border-strong)}
.sb-select:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.sb-field.has-value .sb-select{border-color:var(--c-green-d);background-color:var(--c-green-soft)}
[data-theme="dark"] .sb-field.has-value .sb-select{border-color:var(--c-green);background-color:rgba(123,194,66,.08)}
[data-theme="dark"] .sb-select:focus{border-color:var(--c-green);box-shadow:0 0 0 3px rgba(123,194,66,.2)}
.sb-clear-btn{width:100%;padding:9px 12px;background:transparent;border:1px dashed var(--border-strong);color:var(--text-muted);border-radius:10px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}
.sb-clear-btn:hover{border-style:solid;border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}
.sb-clear-btn::before{content:'\00D7';font-size:16px;font-weight:700;line-height:1}
.sb-detail-foot{padding:10px 18px 14px;font-size:10.5px;letter-spacing:.03em;color:var(--text-faint);opacity:.5;text-align:center;border-top:1px solid var(--border);flex-shrink:0}
.boards-tabs{display:flex;gap:8px;align-items:center;flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 14px;margin-bottom:6px;border-bottom:1px solid var(--border)}
.boards-tabs::-webkit-scrollbar{ height: 6px; }
.boards-tabs::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}
.boards-tabs-vazio{color:var(--text-faint);font-size:13px;padding:8px}
.boards-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;color:var(--text-soft);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;position:relative;transition:all .14s ease;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.boards-tab::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--board-cor,var(--text-muted));flex-shrink:0}
.boards-tab:hover{transform:translateY(-1px);border-color:var(--border-strong);color:var(--text);box-shadow:0 3px 8px rgba(0,0,0,.05)}
.boards-tab.active{background:var(--board-cor,var(--c-navy));border-color:var(--board-cor,var(--c-navy));color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.boards-tab.active::before{ background: rgba(255,255,255,.85); }
.boards-tab-icone{ font-size: 14px; line-height: 1; }
.boards-tab-count{font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);line-height:1.5}
.boards-tab.active .boards-tab-count{background:rgba(255,255,255,.22);color:#fff}
.boards-tab-add{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;border:1px dashed var(--border-strong);border-radius:999px;color:var(--text-muted);font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .14s}
.boards-tab-add:hover{border-color:var(--c-navy);color:var(--c-navy);background:var(--c-navy-soft)}
[data-theme="dark"] .boards-tab-add:hover{border-color:var(--c-green);color:var(--c-green);background:rgba(123,194,66,.08)}
.kanban-titulo-quadro{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:var(--text)}
.kanban-icone-quadro{ font-size: 22px; }
.kanban-nome-quadro{ letter-spacing: -.01em; }
.kanban-board{display:flex;gap:16px;overflow-x:auto;padding-bottom:14px;align-items:stretch}
.kanban-coluna{flex:1 1 0;min-width:260px;background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;max-height:calc(100vh - 200px);outline:2px solid transparent;outline-offset:-1px;transition:flex-basis .5s cubic-bezier(.4,0,.2,1),min-width .5s cubic-bezier(.4,0,.2,1),margin .5s cubic-bezier(.4,0,.2,1),padding .5s cubic-bezier(.4,0,.2,1),opacity .5s cubic-bezier(.4,0,.2,1),outline-color .15s,box-shadow .15s}
.kanban-coluna.col-oculta{flex:0 0 0;min-width:0;width:0;padding:0;border-width:0;opacity:0;pointer-events:none;overflow:hidden}
/* Coluna Concluido: sempre visivel como zona de soltar (mais estreita quando vazia) */
.kanban-coluna.col-concluido{opacity:.85}
.kanban-coluna.col-concluido:hover{opacity:1}
.kanban-drop-hint{margin:8px;padding:18px 10px;text-align:center;font-size:12px;color:var(--text-faint);border:2px dashed var(--border-strong);border-radius:10px;line-height:1.4}
/* Botao concluir/avancar no card do Kanban */
.kanban-concluir{margin-left:auto;flex-shrink:0;width:26px;height:26px;border-radius:7px;border:1px solid var(--c-green-d,#16a34a);background:var(--c-green-soft,rgba(34,197,94,.12));color:var(--c-green-d,#16a34a);font-size:14px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s}
.kanban-concluir:hover{background:var(--c-green,#22c55e);color:#fff;transform:scale(1.08)}
[data-theme="dark"] .kanban-concluir{color:var(--c-green);background:rgba(123,194,66,.12)}
[data-theme="dark"] .kanban-concluir:hover{background:var(--c-green);color:#0a0a0a}
.goo-filter-defs{position:fixed;width:0;height:0;pointer-events:none}
.liquid-toggle{position:relative;display:flex;align-items:center;gap:10px;cursor:pointer;font-size:12.5px;color:var(--text-soft);user-select:none;padding:6px 6px;border-radius:6px;transition:background .12s;width:100%}
.liquid-toggle:hover{background:var(--bg-hover)}
.liquid-toggle .lt-label{flex:1}
.liquid-toggle input{position:absolute;left:6px;top:6px;width:36px;height:20px;opacity:0;cursor:pointer;margin:0;z-index:2}
.lt-track{position:relative;display:inline-block;width:36px;height:20px;border-radius:999px;background:#d2d6e9;flex-shrink:0;transition:background .5s cubic-bezier(.4,0,.2,1)}
.lt-track:hover{background:#c7cbdf}
.liquid-toggle input:checked + .lt-track{background:var(--c-green-d)}
[data-theme="dark"] .lt-track{background:#3d4452}
[data-theme="dark"] .liquid-toggle input:checked + .lt-track{background:var(--c-green)}
.lt-svg{position:absolute;inset:0;width:36px;height:20px;pointer-events:none;display:block;overflow:visible}
.lt-svg circle{fill:#fff;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.lt-c1{transform-origin:16px 16px;transform:translateX(0) scale(1)}
.lt-c2{transform-origin:36px 16px;transform:translateX(-12px) scale(0)}
.lt-drop{transform-origin:35px -1px;transform:translateY(0) scale(0);transition:transform .7s cubic-bezier(.4,0,.2,1),opacity .35s}
.liquid-toggle input:checked + .lt-track .lt-c1{transform:translateX(12px) scale(0)}
.liquid-toggle input:checked + .lt-track .lt-c2{transform:translateX(0) scale(1)}
.liquid-toggle input:checked + .lt-track .lt-drop{transform:translateY(22px) scale(1)}
.liquid-toggle-theme{position:relative;display:inline-block;width:52px;height:32px;cursor:pointer;padding:0;flex-shrink:0}
.liquid-toggle-theme input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;z-index:2}
.lt-track-theme{position:relative;display:block;width:52px;height:32px;border-radius:999px;background:linear-gradient(135deg,#90caf9 0%,#fde68a 65%,#fcd34d 100%);box-shadow:inset 0 1px 2px rgba(0,0,0,.08),0 1px 3px rgba(251,191,36,.35);transition:background .5s cubic-bezier(.4,0,.2,1),box-shadow .5s cubic-bezier(.4,0,.2,1);overflow:hidden}
.liquid-toggle-theme input:checked + .lt-track-theme{background:linear-gradient(135deg,#1e1b4b 0%,#312e81 50%,#0f172a 100%);box-shadow:inset 0 1px 2px rgba(0,0,0,.4),0 1px 4px rgba(30,27,75,.5)}
.lt-track-theme .lt-svg{position:absolute;inset:0;width:52px;height:32px;pointer-events:none;display:block;overflow:visible;z-index:1}
.lt-sun{fill:#fbbf24;filter:drop-shadow(0 0 4px rgba(251,191,36,.55))}
.lt-moon{fill:#f1f5f9;filter:drop-shadow(0 0 6px rgba(241,245,249,.4))}
.lt-track-theme .lt-c1,.lt-track-theme .lt-c2{transition:transform .5s cubic-bezier(.4,0,.2,1)}
.lt-track-theme .lt-c1{transform-origin:16px 16px;transform:translateX(0) scale(1)}
.lt-track-theme .lt-c2{transform-origin:36px 16px;transform:translateX(-12px) scale(0)}
.liquid-toggle-theme input:checked + .lt-track-theme .lt-c1{transform:translateX(12px) scale(0)}
.liquid-toggle-theme input:checked + .lt-track-theme .lt-c2{transform:translateX(0) scale(1)}
.lt-track-theme .lt-drop{fill:#f1f5f9;transform-origin:35px -1px;transform:translateY(0) scale(0);transition:transform .7s cubic-bezier(.4,0,.2,1)}
.liquid-toggle-theme input:checked + .lt-track-theme .lt-drop{transform:translateY(22px) scale(1)}
.lt-stars{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s ease-in-out;z-index:0}
.liquid-toggle-theme input:checked + .lt-track-theme .lt-stars{opacity:1}
.lt-star{position:absolute;background:#fff;border-radius:50%;box-shadow:0 0 3px rgba(255,255,255,.7)}
.lt-s1{top:7px;left:6px;width:2px;height:2px;animation:starTwinkle 2.4s ease-in-out infinite}
.lt-s2{top:18px;left:11px;width:1.5px;height:1.5px;animation:starTwinkle 3.1s ease-in-out infinite .8s}
.lt-s3{top:10px;left:18px;width:1.5px;height:1.5px;animation:starTwinkle 2.8s ease-in-out infinite 1.4s}
@keyframes starTwinkle{0%,100%{opacity:.4}50%{opacity:1}}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}
.brand-text{font-weight:700;font-size:15px;letter-spacing:-.01em;color:var(--text)}
.tb-crumb{display:flex;align-items:center;gap:8px;flex:1;padding-left:6px;color:var(--text-muted);font-size:13px}
.tb-crumb-pre{font-weight:500}
.tb-crumb-sep{color:var(--text-faint);font-weight:400}
.tb-crumb-atual{font-weight:700;color:var(--text)}
.topbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.tb-search-trigger{display:flex;align-items:center;gap:8px;padding:7px 10px 7px 12px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;color:var(--text-muted);font-size:13px;cursor:pointer;min-width:220px;transition:all .15s;font-family:inherit}
.tb-search-trigger:hover{background:var(--bg-card);border-color:var(--border-strong);color:var(--text)}
.tb-search-txt{flex:1;text-align:left}
.tb-search-kbd{padding:2px 6px;background:var(--bg-card);border:1px solid var(--border);border-radius:4px;font-size:10.5px;font-weight:600;color:var(--text-faint);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.tb-split{position:relative;display:inline-flex;align-items:stretch}
.tb-split-main{border-top-right-radius:0;border-bottom-right-radius:0;padding-right:10px}
.tb-split-arrow{border-top-left-radius:0;border-bottom-left-radius:0;padding:0 8px;border-left:1px solid rgba(255,255,255,.18);min-width:28px;display:flex;align-items:center;justify-content:center;font-size:10px}
[data-theme="dark"] .tb-split-arrow{border-left-color:rgba(0,0,0,.25)}
.tb-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);padding:5px;min-width:180px;z-index:1000;animation:tbMenuIn .12s ease-out}
.tb-split .tb-menu{right:0}
@keyframes tbMenuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.tb-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 11px;background:transparent;border:none;border-radius:7px;color:var(--text);font-size:13px;font-weight:500;text-align:left;cursor:pointer;font-family:inherit;transition:background .12s}
.tb-menu-item:hover{background:var(--bg-hover)}
.tb-menu-item-warn{color:var(--warn)}
.tb-menu-item-warn:hover{background:var(--warn-soft)}
.tb-menu-ic{display:flex;align-items:center;justify-content:center;width:18px;font-size:14px;line-height:1;flex-shrink:0}
.tb-menu-sep{height:1px;background:var(--border);margin:5px 4px}
.tb-updated{font-size:11.5px;color:var(--text-muted);padding:0 6px;white-space:nowrap}
.tb-icon-cluster{display:flex;align-items:center;gap:2px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;padding:2px}
.tb-icon-cluster .btn-icon{border:none;background:transparent}
.tb-icon-cluster .btn-icon:hover{background:var(--bg-hover)}
.tb-user{position:relative}
.tb-user-btn{display:flex;align-items:center;gap:6px;padding:4px 10px 4px 4px;background:var(--bg-soft);border:1px solid var(--border);border-radius:999px;cursor:pointer;font-family:inherit;transition:all .15s}
.tb-user-btn:hover{background:var(--bg-card);border-color:var(--border-strong)}
.tb-user-btn .user-badge{background:transparent;border:none;padding:0;font-size:13px;font-weight:600;color:var(--text)}
.tb-user-chev{color:var(--text-muted);font-size:10px;margin-left:2px}
.tb-user-menu{right:0;min-width:200px}
.tb-search-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;animation:fadeIn .15s ease-out}
[data-theme="dark"] .tb-search-overlay{background:rgba(0,0,0,.75)}
.tb-search-box{width:100%;max-width:580px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;animation:tbMenuIn .15s ease-out}
.tb-search-head{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}
.tb-search-head svg{color:var(--text-muted);flex-shrink:0}
.tb-search-head input{flex:1;border:none;outline:none;background:transparent;font-size:15px;color:var(--text);font-family:inherit}
.tb-search-head input::placeholder{color:var(--text-faint)}
.tb-search-esc{padding:3px 7px;background:var(--bg-soft);border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:600;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.tb-search-results{max-height:50vh;overflow-y:auto;padding:6px}
.tb-search-empty{padding:32px 16px;text-align:center;color:var(--text-muted);font-size:13px}
.tb-search-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .1s}
.tb-search-item:hover,.tb-search-item.tb-sel{background:var(--c-navy-soft)}
[data-theme="dark"] .tb-search-item:hover,[data-theme="dark"] .tb-search-item.tb-sel{background:rgba(123,194,66,.12)}
.tb-search-num{font-size:11px;font-weight:700;color:var(--text-muted);min-width:38px}
.tb-search-info{flex:1;min-width:0}
.tb-search-titulo{font-size:13.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-search-meta{font-size:11.5px;color:var(--text-muted);margin-top:2px}
.tb-search-status{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--bg-soft);color:var(--text-muted);flex-shrink:0}
.tb-search-foot{padding:10px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--text-faint);text-align:center}
@media (max-width:1100px){.tb-crumb{display:none}.tb-search-trigger{min-width:0}.tb-search-txt{display:none}.tb-search-kbd{display:none}}
@media (max-width:850px){.tb-updated{display:none}}
.kanban-coluna.coluna-drop-ativa{outline-color:var(--c-green);box-shadow:0 0 0 3px var(--success-soft)}
.kanban-header{position:relative;display:flex;align-items:center;gap:8px;padding:11px 12px;background:transparent;border-bottom:1px solid var(--border)}
.kanban-header-bar{position:static;width:9px;height:9px;border-radius:50%;background:var(--lista-cor,#94a3b8);flex-shrink:0}
.kanban-header-titulo{flex:1;font-weight:700;font-size:13px;color:var(--text)}
.kanban-header-count{font-size:11px;color:var(--text-muted);background:var(--neutral-soft);padding:1px 8px;border-radius:999px;font-weight:600}
.kanban-coluna-acao{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;border-radius:4px;font-size:16px;line-height:1}
.kanban-coluna-acao:hover{background:var(--bg-hover);color:var(--text)}
.kanban-cards{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;min-height:80px}
.kanban-coluna-add{background:transparent;border:2px dashed var(--border-strong)}
.kanban-add-lista{width:100%;padding:14px 10px;background:transparent;border:none;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;border-radius:8px}
.kanban-add-lista:hover{background:var(--bg-hover);color:var(--c-navy)}
[data-theme="dark"] .kanban-add-lista:hover{ color: var(--c-green); }
.cores-picker{display:flex;flex-wrap:wrap;gap:6px}
.cor-swatch{width:26px;height:26px;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:transform .12s,border-color .12s;padding:0}
.cor-swatch:hover{ transform: scale(1.12); }
.cor-swatch.selected{border-color:var(--text);box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--text)}
.modal.modal-sm{ max-width: 420px; }
@media (max-width: 900px){.layout{grid-template-columns:64px minmax(0,1fr)}
.sidebar.sb-new{position:sticky}
.sb-detail{position:absolute;left:64px;top:60px;height:calc(100vh - 60px);z-index:50;box-shadow:8px 0 20px rgba(0,0,0,.12)}
body.sb-collapsed .sb-detail{display:none}
}
.checklist-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.checklist-progresso{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy);font-size:11px;font-weight:700;vertical-align:middle}
[data-theme="dark"] .checklist-progresso{background:rgba(123,194,66,.14);color:var(--c-green)}
.checklist-add{background:transparent;border:1px dashed var(--border-strong);color:var(--text-muted);padding:5px 12px;border-radius:7px;font-size:12px;font-weight:600;cursor:pointer;transition:all .14s}
.checklist-add:hover{border-color:var(--c-navy);color:var(--c-navy);background:var(--c-navy-soft)}
[data-theme="dark"] .checklist-add:hover{border-color:var(--c-green);color:var(--c-green);background:rgba(123,194,66,.08)}
.checklist-container{display:flex;flex-direction:column;gap:6px;padding:8px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;max-height:320px;overflow-y:auto}
.checklist-vazia{color:var(--text-faint);font-size:12.5px;margin:8px 4px;text-align:center}
.checklist-item{display:flex;flex-direction:column;gap:4px;padding:4px 0}
.checklist-linha{display:flex;align-items:center;gap:8px}
.checklist-check{flex-shrink:0;width:16px;height:16px;accent-color:var(--c-navy);cursor:pointer}
[data-theme="dark"] .checklist-check{ accent-color: var(--c-green); }
.checklist-input{flex:1;padding:6px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);font-size:13px;transition:border-color .12s,background .12s}
.checklist-input:hover{ background: var(--bg-card); }
.checklist-input:focus{outline:none;background:var(--bg-card);border-color:var(--border-strong)}
.checklist-item.feito > .checklist-linha > .checklist-input{text-decoration:line-through;color:var(--text-muted)}
.checklist-add-sub,.checklist-del{flex-shrink:0;width:24px;height:24px;background:transparent;border:none;color:var(--text-muted);border-radius:5px;font-size:16px;line-height:1;cursor:pointer;transition:all .12s}
.checklist-add-sub:hover{background:var(--c-green-soft);color:var(--c-green-d)}
.checklist-del:hover{background:var(--warn-soft);color:var(--warn)}
.checklist-subs{display:flex;flex-direction:column;gap:2px;padding-left:24px;border-left:2px solid var(--border);margin-left:8px}
.checklist-sub{display:flex;align-items:center;gap:8px}
.checklist-sub > .checklist-input{ font-size: 12.5px; }
.checklist-feitopor{flex-shrink:0;display:inline-flex;align-items:center;gap:3px;max-width:160px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:2px 8px;border-radius:999px;background:var(--c-green-soft);color:var(--c-green-d);font-size:11px;font-weight:600}
.checklist-sub > .checklist-feitopor{ font-size: 10.5px; max-width: 130px; }
.rev-anuncio{border:1px solid var(--border);border-radius:10px;background:var(--bg-card);margin-bottom:8px;transition:border-color .15s,box-shadow .15s}
.rev-anuncio:hover{ border-color: var(--border-strong); }
.rev-anuncio.decisao-aprovar { border-left: 4px solid var(--c-green-d); }
.rev-anuncio.decisao-reprovar{ border-left: 4px solid var(--warn); }
.rev-anuncio.feito{opacity:.68;background:var(--bg-soft)}
.rev-anuncio-header{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;min-height:36px;cursor:pointer;user-select:none;color:var(--text);transition:background .12s}
.rev-anuncio-header:hover{ background: var(--bg-hover); }
.rev-expand-arrow{font-size:10px;color:var(--text-muted);width:12px;flex-shrink:0}
.rev-canal-tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--c-navy);color:#fff;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;white-space:nowrap}
[data-theme="dark"] .rev-canal-tag{background:var(--c-green);color:#0a0a0a}
.rev-sku-tag{font-size:11px;color:var(--text-muted);background:var(--neutral-soft);padding:1px 7px;border-radius:4px;flex-shrink:0}
.rev-titulo{flex:1 1 180px;font-size:12.5px;color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.rev-id{flex-shrink:0;font-size:13px;font-weight:700;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.rev-progresso{font-size:11px;font-weight:700;color:var(--text-muted);padding:2px 7px;border-radius:999px;background:var(--neutral-soft);flex-shrink:0}
.rev-estado{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}
.rev-estado.ok         { background: var(--success-soft); color: var(--c-green-d); }
.rev-estado.nao        { background: var(--warn-soft);    color: var(--warn); }
.rev-estado.processado { background: var(--c-navy);       color: #fff; }
[data-theme="dark"] .rev-estado.processado{ background: var(--c-green); color: #0a0a0a; }
.rev-anuncio-corpo{padding:12px 16px 14px;background:var(--bg-soft);border-top:1px solid var(--border)}
.rev-checks{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin-bottom:12px}
.rev-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-soft);cursor:pointer;padding:4px 0}
.rev-check input{flex-shrink:0;width:16px;height:16px;accent-color:var(--c-green-d);cursor:pointer}
[data-theme="dark"] .rev-check input{ accent-color: var(--c-green); }
.rev-acoes{display:flex;gap:8px;margin-bottom:8px}
.rev-btn-ok,.rev-btn-nao{flex:1;padding:9px 14px;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;border:2px solid;background:var(--bg-card);transition:all .15s}
.rev-btn-ok{border-color:var(--c-green-d);color:var(--c-green-d)}
.rev-btn-ok:hover:not(:disabled){background:var(--success-soft)}
.rev-btn-ok.ativo{background:var(--c-green-d);color:#fff}
.rev-btn-nao{border-color:var(--warn);color:var(--warn)}
.rev-btn-nao:hover:not(:disabled){background:var(--warn-soft)}
.rev-btn-nao.ativo{background:var(--warn);color:#fff}
.rev-btn-ok:disabled,.rev-btn-nao:disabled{opacity:.5;cursor:not-allowed}
.rev-obs{width:100%;min-height:56px;padding:8px 10px;border:1px solid var(--border-strong);border-radius:7px;background:var(--bg-card);color:var(--text);font-size:12.5px;resize:vertical;font-family:inherit}
.rev-obs:focus{outline:none;border-color:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}
.btn-success{background:var(--c-green-d);color:#fff;border:1px solid var(--c-green-d);padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;font-size:13px;transition:background .15s}
.btn-success:hover:not(:disabled){ background: var(--c-green); }
.btn-success:disabled{ opacity: .6; cursor: not-allowed; }
@media (max-width: 640px){
.rev-checks{ grid-template-columns: 1fr; }
.rev-titulo{ display: none; }
}
.kanban-card-promo{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid #ec4899;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;transition:box-shadow .15s,transform .08s}
.kanban-card-promo:hover{box-shadow:0 4px 14px rgba(236,72,153,.14);transform:translateY(-1px)}
.promo-card-id{font-size:15px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text);letter-spacing:-.01em;padding-bottom:6px;border-bottom:1px dashed var(--border);margin-bottom:2px;word-break:break-all}
.promo-card-linha{display:flex;align-items:center;gap:8px;font-size:12.5px;line-height:1.4}
.promo-card-label{flex-shrink:0;width:60px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}
.promo-card-valor{flex:1;color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.promo-acoes{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}
.promo-decisao{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.promo-btn{padding:8px 12px;border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .14s;width:100%}
.promo-btn-avancar{background:var(--c-navy);color:#fff}
.promo-btn-avancar:hover{background:var(--c-navy-d);transform:translateY(-1px);box-shadow:0 3px 9px rgba(45,44,110,.25)}
[data-theme="dark"] .promo-btn-avancar{background:var(--c-green);color:#0a0a0a}
[data-theme="dark"] .promo-btn-avancar:hover{background:var(--c-green-d);color:#fff}
.promo-btn-sim{background:var(--c-green-d);color:#fff;letter-spacing:.04em}
.promo-btn-sim:hover{background:var(--c-green);transform:translateY(-1px);box-shadow:0 3px 9px rgba(95,165,43,.28)}
[data-theme="dark"] .promo-btn-sim:hover{ color: #0a0a0a; }
.promo-btn-nao{background:var(--bg-card);color:var(--warn);border:2px solid var(--warn);letter-spacing:.04em}
.promo-btn-nao:hover{background:var(--warn);color:#fff;transform:translateY(-1px)}
.anexos-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.anexos-contagem{display:inline-block;margin-left:8px;padding:2px 9px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy);font-size:11px;font-weight:700;vertical-align:middle}
[data-theme="dark"] .anexos-contagem{background:rgba(123,194,66,.14);color:var(--c-green)}
.anexos-container{display:flex;flex-direction:column;gap:6px;padding:8px;background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;max-height:240px;overflow-y:auto;margin-bottom:8px}
.anexos-vazio{color:var(--text-faint);font-size:12.5px;margin:8px 4px;text-align:center}
.anexo-item{display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:7px;transition:border-color .12s,box-shadow .12s}
.anexo-item:hover{border-color:var(--border-strong);box-shadow:0 2px 6px rgba(0,0,0,.04)}
.anexo-icone{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;border-radius:6px;background:var(--neutral-soft)}
.anexo-tipo-canva      { background: rgba(0,196,204,.15); }
.anexo-tipo-drive      { background: rgba(66,133,244,.15); }
.anexo-tipo-imagem     { background: rgba(123,194,66,.18); }
.anexo-tipo-marketplace{ background: rgba(245,158,11,.15); }
.anexo-tipo-video      { background: rgba(239,68,68,.15); }
.anexo-thumb{width:32px;height:32px;object-fit:cover;border-radius:5px;flex-shrink:0;background:var(--neutral-soft)}
.anexo-label{flex:1;min-width:0;font-size:13px;color:var(--c-navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
.anexo-label:hover{ text-decoration: underline; }
[data-theme="dark"] .anexo-label{ color: var(--c-green); }
.anexo-del{flex-shrink:0;width:24px;height:24px;background:transparent;border:none;color:var(--text-muted);border-radius:5px;font-size:16px;line-height:1;cursor:pointer;transition:all .12s}
.anexo-del:hover{background:var(--warn-soft);color:var(--warn)}
.anexos-form{display:grid;grid-template-columns:1fr 180px auto;gap:6px}
.anexo-input{padding:8px 11px;border:1px solid var(--border-strong);border-radius:7px;background:var(--bg-card);color:var(--text);font-size:13px}
.anexo-input:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
[data-theme="dark"] .anexo-input:focus{border-color:var(--c-green);box-shadow:0 0 0 3px rgba(123,194,66,.2)}
.anexo-add-btn{padding:8px 14px;background:var(--c-navy);color:#fff;border:none;border-radius:7px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s}
.anexo-add-btn:hover{ background: var(--c-navy-d); }
[data-theme="dark"] .anexo-add-btn{ background: var(--c-green); color: #0a0a0a; }
.anexo-add-btn:disabled{ opacity: .55; cursor: not-allowed; }
@media (max-width: 640px){
.anexos-form{ grid-template-columns: 1fr; }
}
.kanban-card-anexos{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.4}
.kanban-card-checklist{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.4}
.kanban-card-checklist svg{ display: block; }
.kanban-card-checklist.completa{background:var(--success-soft);color:var(--c-green-d)}
[data-theme="dark"] .kanban-card-checklist.completa{background:rgba(123,194,66,.18);color:var(--c-green)}
.ck-avatares{display:flex;align-items:center;margin-top:8px;padding-left:2px}
.ck-avatar{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:-6px;border-radius:50%;border:2px solid var(--bg-card);font-size:9.5px;font-weight:800;letter-spacing:.02em;color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.12)}
.ck-avatar:first-child{ margin-left: 0; }
.ck-avatar-mais{background:var(--neutral-soft);color:var(--text-muted)}
.av-wrap{ position: relative; overflow: hidden; }
.av-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.av-fallback-0{ background-color: #2563eb; }
.av-fallback-1{ background-color: #16a34a; }
.av-fallback-2{ background-color: #d97706; }
.av-fallback-3{ background-color: #9333ea; }
.av-fallback-4{ background-color: #db2777; }
.av-fallback-5{ background-color: #0891b2; }
.mini-avatar{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;flex-shrink:0;vertical-align:middle;margin-right:4px;font-size:8px;font-weight:800;color:#fff;border:1px solid var(--bg-card)}
.kanban-card-responsavel{ display: inline-flex; align-items: center; }
#meuEmail{ display: inline-flex; align-items: center; }
.template-intro{font-size:13px;color:var(--text-muted);margin:0 0 14px}
.template-lista{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width: 640px){ .template-lista{ grid-template-columns: 1fr; } }
.template-card{text-align:left;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:8px}
.template-card:hover{border-color:var(--c-green);box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateY(-1px)}
.template-card-topo{ display: flex; align-items: center; gap: 8px; }
.template-card-icone{ font-size: 20px; }
.template-card-nome{ font-weight: 800; font-size: 15px; color: var(--text); }
.template-card-desc{ margin: 0; font-size: 12px; color: var(--text-muted); }
.template-card-passos,.template-sel-passos{display:flex;flex-wrap:wrap;gap:5px}
.template-passo{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);border-left:3px solid var(--border-strong)}
.template-passo.prio-Alta { border-left-color: #ef4444; }
.template-passo.prio-Media{ border-left-color: #f59e0b; }
.template-passo.prio-Baixa{ border-left-color: #94a3b8; }
.template-selecionado{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;display:flex;flex-direction:column;gap:10px}
.template-sel-titulo{ font-weight: 800; font-size: 15px; color: var(--text); }
.timer-box{background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;margin-bottom:14px;display:flex;flex-direction:column;gap:8px}
.timer-main{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.timer-display{ display: flex; align-items: center; gap: 10px; }
.timer-label{ font-size: 11px; font-weight: 700; color: var(--text-muted); text-transform: uppercase; letter-spacing: .05em; }
.timer-total{font-size:22px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.timer-status{ font-size: 11px; font-weight: 700; color: var(--text-faint); }
.timer-status.run{ color: var(--c-green-d); }
.timer-status.run::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--c-green);margin-right:5px;animation:timerPulse 1.2s ease-in-out infinite}
.timer-status.fin{ color: var(--text-muted); }
@keyframes timerPulse{ 0%,100%{ opacity: 1; } 50%{ opacity: .3; } }
.timer-acoes{ display: flex; gap: 6px; }
.timer-btn{border:none;border-radius:8px;cursor:pointer;font-size:12px;font-weight:700;padding:7px 12px;transition:all .12s}
.timer-btn-play { background: var(--c-green); color: #fff; }
.timer-btn-play:hover { filter: brightness(1.05); }
.timer-btn-pause{ background: var(--amber-soft); color: #B45309; }
.timer-btn-pause:hover{ background: var(--amber); color: #fff; }
.timer-btn-stop { background: var(--neutral-soft); color: var(--text-muted); }
.timer-btn-stop:hover { background: var(--warn-soft); color: var(--warn); }
.timer-btn-reset { background: transparent; color: var(--warn); border: 1px dashed var(--warn) !important; }
.timer-btn-reset:hover { background: var(--warn-soft); border-style: solid !important; }
.timer-por-usuario{ display: flex; flex-wrap: wrap; gap: 6px; }
.timer-user-chip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;color:var(--text-soft);background:var(--bg-card);border:1px solid var(--border);padding:2px 9px 2px 3px;border-radius:999px}
.timer-user-chip.rodando{border-color:var(--c-green);color:var(--c-green-d);background:var(--c-green-soft)}
[data-theme="dark"] .timer-user-chip.rodando{color:var(--c-green);background:rgba(123,194,66,.12)}
.ti-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--c-green);animation:tiPulse 1.2s ease-in-out infinite;margin-left:3px}
@keyframes tiPulse{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}
.checklist-tempo{flex-shrink:0;font-size:11px;font-weight:700;color:var(--c-navy);background:var(--c-navy-soft);padding:2px 8px;border-radius:999px;white-space:nowrap}
.kanban-card-tempo{display:inline-flex;align-items:center;gap:2px;font-size:11px;font-weight:600;background:var(--c-navy-soft);color:var(--c-navy);padding:2px 7px;border-radius:4px}
.kanban-card-tempo.rodando{background:var(--success-soft);color:var(--c-green-d)}
.tempos-lista{ display: flex; flex-direction: column; gap: 10px; }
.tempo-row{ display: flex; align-items: center; gap: 12px; }
.tempo-tipo{ flex: 0 0 150px; font-size: 13px; font-weight: 700; color: var(--text); }
.tempo-bar-wrap{flex:1;height:14px;background:var(--neutral-soft);border-radius:999px;overflow:hidden}
.tempo-bar{ height: 100%; background: var(--c-green); border-radius: 999px; }
.tempo-val{ flex: 0 0 auto; font-size: 12px; font-weight: 600; color: var(--text-muted); }
@media (max-width: 640px){ .tempo-tipo{ flex-basis: 90px; } }
.cal-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.cal-nav{ display: flex; align-items: center; gap: 6px; }
.cal-titulo{ font-size: 18px; font-weight: 800; color: var(--text); margin: 0; }
.cal-grade{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--bg-card)}
.cal-head{ display: grid; grid-template-columns: repeat(7,1fr); border-bottom: 1px solid var(--border); }
.cal-head-cel{padding:8px;text-align:center;font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;border-right:1px solid var(--border)}
.cal-head-cel:last-child{ border-right: none; }
.cal-corpo{ display: grid; grid-template-columns: repeat(7,1fr); }
.cal-cel{position:relative;min-height:110px;padding:5px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px;transition:background .12s,box-shadow .12s;cursor:pointer}
.cal-cel:nth-child(7n){ border-right: none; }
.cal-cel.fora{ background: var(--bg-soft); }
.cal-cel.fora .cal-cel-num{ color: var(--text-faint); }
.cal-cel.fds{ background:linear-gradient(180deg,var(--bg-soft) 0%,var(--bg-card) 100%); }
.cal-cel:hover{ background: var(--bg-hover); }
.cal-cel-num{font-size:12px;font-weight:700;color:var(--text);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}
.cal-cel.hoje{box-shadow:inset 0 0 0 2px var(--c-green);background:var(--c-green-soft)}
.cal-cel.hoje .cal-cel-num{background:var(--c-green);color:#fff;box-shadow:0 2px 6px rgba(123,194,66,.4)}
[data-theme="dark"] .cal-cel.hoje{background:rgba(123,194,66,.08)}
.cal-cel[data-densidade="1"]{background:rgba(45,44,110,.04)}
.cal-cel[data-densidade="2"]{background:rgba(45,44,110,.08)}
.cal-cel[data-densidade="3"]{background:rgba(45,44,110,.13)}
.cal-cel[data-densidade="4"]{background:rgba(45,44,110,.2)}
[data-theme="dark"] .cal-cel[data-densidade="1"]{background:rgba(123,194,66,.04)}
[data-theme="dark"] .cal-cel[data-densidade="2"]{background:rgba(123,194,66,.08)}
[data-theme="dark"] .cal-cel[data-densidade="3"]{background:rgba(123,194,66,.13)}
[data-theme="dark"] .cal-cel[data-densidade="4"]{background:rgba(123,194,66,.2)}
.cal-cel.hoje[data-densidade]{background:var(--c-green-soft)!important}
[data-theme="dark"] .cal-cel.hoje[data-densidade]{background:rgba(123,194,66,.18)!important}
.cal-cel-cont{position:absolute;top:6px;right:6px;min-width:17px;height:17px;padding:0 4px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted)}
.cal-cel-cont.tem-atraso{ background: var(--warn-soft); color: var(--warn); }
.cal-ev{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--text);background:var(--bg-card);border-left:3px solid var(--border-strong);padding:3px 6px;border-radius:4px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:transform .1s,box-shadow .1s;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.cal-ev-dot{flex-shrink:0;width:6px;height:6px;border-radius:50%}
.cal-ev-txt{flex:1;overflow:hidden;text-overflow:ellipsis;min-width:0}
.cal-ev-av{flex-shrink:0;width:16px;height:16px;border-radius:50%;background-size:cover;background-position:center;background-color:var(--bg-soft);border:1px solid var(--border)}
.cal-ev:hover{transform:translateX(2px);box-shadow:var(--shadow-md)}
.cal-ev.atrasada{background:var(--warn-soft);color:var(--warn)}
.cal-ev.concluida{opacity:.55;text-decoration:line-through}
.cal-ev[data-area="CADASTROS"]{border-left-color:#3b82f6}
.cal-ev[data-area="MIDIA"]{border-left-color:#8b5cf6}
.cal-ev[data-area="REVISAO"]{border-left-color:#f59e0b}
.cal-ev[data-area="PROMO"]{border-left-color:#ec4899}
.cal-mais{font-size:10px;font-weight:700;color:var(--c-navy);padding:2px 6px;cursor:pointer;border-radius:4px;background:transparent;transition:background .1s}
.cal-mais:hover{background:var(--c-navy-soft)}
[data-theme="dark"] .cal-mais{color:var(--c-green)}
[data-theme="dark"] .cal-mais:hover{background:rgba(123,194,66,.14)}
.cal-sel{appearance:none;-webkit-appearance:none;background:transparent;border:1px solid var(--border);border-radius:8px;padding:4px 24px 4px 10px;font-size:14px;font-weight:700;color:var(--text);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='none' stroke='%239ca3af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5L6 7.5L9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 6px center;margin-right:6px;font-family:inherit}
.cal-sel:hover{border-color:var(--border-strong);background-color:var(--bg-hover)}
.cal-sel:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.cal-titulo{display:flex;align-items:center;gap:4px}
.cal-popover{position:fixed;width:280px;max-height:340px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);z-index:9999;display:flex;flex-direction:column;animation:tbMenuIn .14s ease-out}
.cal-pop-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}
.cal-pop-head strong{flex:1;font-size:13px;color:var(--text)}
.cal-pop-cnt{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy)}
[data-theme="dark"] .cal-pop-cnt{background:rgba(123,194,66,.14);color:var(--c-green)}
.cal-pop-close{background:none;border:none;font-size:18px;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1}
.cal-pop-close:hover{color:var(--text)}
.cal-pop-body{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}
.cal-pop-add{margin:6px 10px 10px;padding:8px;background:transparent;border:1px dashed var(--border-strong);border-radius:8px;color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer;transition:all .12s;font-family:inherit}
.cal-pop-add:hover{border-style:solid;border-color:var(--c-green);color:var(--c-green-d);background:var(--c-green-soft)}
.cal-cel-events{display:flex;flex-direction:column;gap:2px;margin:2px -6px 4px;position:relative;z-index:1}
.cal-cel-evento{height:18px;padding:2px 6px;border-radius:0;font-size:10.5px;font-weight:700;color:#fff;cursor:pointer;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;box-shadow:0 1px 2px rgba(0,0,0,.1);transition:transform .1s,box-shadow .1s;text-shadow:0 1px 2px rgba(0,0,0,.25);position:relative}
.cal-cel-evento:hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,.25);z-index:2}
.cal-cel-evento.ev-ini{border-top-left-radius:4px;border-bottom-left-radius:4px;margin-left:6px;padding-left:8px}
.cal-cel-evento.ev-fim{border-top-right-radius:4px;border-bottom-right-radius:4px;margin-right:6px;padding-right:8px}
.evt-modal{max-width:480px;border-radius:14px;overflow:hidden}
.evt-body{display:flex;flex-direction:column;gap:18px;padding:20px 22px}
.evt-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.evt-campo{display:flex;flex-direction:column;gap:6px}
.evt-campo label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding-left:2px}
.evt-opt{text-transform:none;letter-spacing:normal;font-weight:500;color:var(--text-faint);margin-left:4px}
.evt-input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--bg-soft);color:var(--text);font-size:13.5px;font-family:inherit;transition:border-color .15s,background .15s,box-shadow .15s;box-sizing:border-box}
.evt-input:hover{background:var(--bg-card);border-color:var(--border-strong)}
.evt-input:focus{outline:none;border-color:var(--c-navy);background:var(--bg-card);box-shadow:0 0 0 3px var(--focus-ring)}
[data-theme="dark"] .evt-input:focus{border-color:var(--c-green);box-shadow:0 0 0 3px rgba(123,194,66,.2)}
.evt-textarea{resize:vertical;min-height:60px;font-family:inherit;line-height:1.4}
.evt-date-wrap{position:relative;display:flex;align-items:stretch}
.evt-date-wrap .evt-input{padding-right:38px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.evt-date-pick{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;border-radius:6px;font-size:15px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);pointer-events:none;transition:background .12s,color .12s;z-index:1}
.evt-date-wrap:hover .evt-date-pick{background:var(--bg-hover);color:var(--text)}
.evt-date-native{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:34px;height:34px;opacity:0;cursor:pointer;z-index:2;border:none;padding:0;background:transparent}
.evt-date-native::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer;background:transparent}
.evt-date-native::-webkit-datetime-edit,.evt-date-native::-webkit-date-and-time-value{display:none}
input[type=date].evt-input{cursor:pointer;color-scheme:light}
[data-theme="dark"] input[type=date].evt-input{color-scheme:dark}
.evt-cats{display:flex;flex-wrap:wrap;gap:8px}
.evt-cat{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;background:var(--bg-soft);border:1.5px solid var(--border);border-radius:999px;font-size:12.5px;font-weight:600;color:var(--text-soft);cursor:pointer;transition:all .14s cubic-bezier(.4,0,.2,1);font-family:inherit;position:relative}
.evt-cat:hover{background:var(--bg-card);transform:translateY(-1px)}
.evt-cat.ativo{background:var(--bg-card);color:var(--text);border-color:currentColor;box-shadow:0 2px 8px rgba(0,0,0,.08);transform:translateY(-1px)}
.evt-cat.ativo .evt-cat-dot{transform:scale(1.2);box-shadow:0 0 0 3px var(--bg-card)}
.evt-cat-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;transition:transform .14s,box-shadow .14s}
/* === Rotinas === */
.rot-checklist-bloco{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px 18px;margin-bottom:16px;box-shadow:var(--shadow-sm)}
.rot-checklist-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:13px;font-weight:700;color:var(--text)}
.rot-checklist-cnt{font-size:11px;font-weight:700;padding:2px 9px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy);margin-left:6px}
[data-theme="dark"] .rot-checklist-cnt{background:rgba(123,194,66,.16);color:var(--c-green)}
.rot-checklist-lista{display:flex;flex-direction:column;gap:6px}
.rot-check-item{background:var(--bg-soft);border:1px solid var(--border);border-radius:8px;padding:8px 12px;transition:opacity .15s,background .15s}
.rot-check-item.feita{opacity:.55;background:var(--c-green-soft);border-color:var(--c-green-d)}
[data-theme="dark"] .rot-check-item.feita{background:rgba(123,194,66,.08);border-color:var(--c-green)}

/* ===== Widget flutuante de Rotinas ===== */
.rot-widget{position:fixed;right:22px;bottom:22px;z-index:8000;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
/* FAB */
.rot-widget-fab{position:relative;width:58px;height:58px;border-radius:50%;border:none;cursor:pointer;background:var(--c-navy,#2d2c6e);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.05) inset;transition:transform .18s,box-shadow .18s,background .2s}
.rot-widget-fab:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 14px 34px rgba(0,0,0,.4)}
[data-theme="dark"] .rot-widget-fab{background:var(--c-green,#7bc242);color:#0a0a0a}
.rot-widget.tudo-feito .rot-widget-fab{background:var(--c-green,#22c55e);color:#fff}
[data-theme="dark"] .rot-widget.tudo-feito .rot-widget-fab{background:var(--c-green,#7bc242);color:#0a0a0a}
.rot-widget-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-card,#fff);line-height:1}
.rot-widget-badge.completo{background:var(--c-green,#22c55e)}
.rot-widget.aberto .rot-widget-fab{transform:scale(.92);opacity:.9}
/* Painel */
.rot-widget-panel{width:330px;max-width:calc(100vw - 44px);background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.32);overflow:hidden;transform-origin:bottom right;animation:rotWidgetIn .2s cubic-bezier(.22,1,.36,1)}
@keyframes rotWidgetIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.rot-widget-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px}
.rot-widget-titulo{display:flex;align-items:center;gap:9px;font-size:15px;font-weight:700;color:var(--text)}
.rot-widget-cnt{font-size:11.5px;font-weight:800;color:var(--c-green-d,#16a34a);background:var(--c-green-soft,rgba(34,197,94,.13));padding:2px 9px;border-radius:999px}
[data-theme="dark"] .rot-widget-cnt{color:var(--c-green);background:rgba(123,194,66,.14)}
.rot-widget-x{background:transparent;border:none;color:var(--text-muted);font-size:22px;line-height:1;cursor:pointer;padding:0 4px;border-radius:6px;transition:background .15s,color .15s}
.rot-widget-x:hover{background:var(--bg-hover);color:var(--text)}
.rot-widget-prog{height:4px;background:var(--bg-soft);margin:0 16px;border-radius:999px;overflow:hidden}
.rot-widget-prog-fill{height:100%;width:0;background:linear-gradient(90deg,var(--c-green,#22c55e),var(--c-green-d,#16a34a));border-radius:999px;transition:width .4s cubic-bezier(.22,1,.36,1)}
.rot-widget-lista{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;max-height:min(58vh,440px);overflow-y:auto}
@media (max-width:560px){
  .rot-widget{right:14px;bottom:14px}
  .rot-widget-fab{width:52px;height:52px}
}
.rot-check-lbl{display:flex;align-items:flex-start;gap:10px;cursor:pointer;margin:0}
.rot-check-lbl input[type=checkbox]{width:18px;height:18px;accent-color:var(--c-green-d);cursor:pointer;flex-shrink:0;margin-top:1px}
[data-theme="dark"] .rot-check-lbl input[type=checkbox]{accent-color:var(--c-green)}
.rot-check-txt{display:flex;flex-direction:column;flex:1;min-width:0}
.rot-check-titulo{font-size:13px;font-weight:600;color:var(--text)}
.rot-check-item.feita .rot-check-titulo{text-decoration:line-through}
.rot-check-desc{font-size:11.5px;color:var(--text-muted);margin-top:2px}
/* Modal admin de rotinas */
.rot-modal{max-width:780px}
.rot-body{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px 22px;max-height:75vh;overflow-y:auto}
@media (max-width:800px){.rot-body{grid-template-columns:1fr}}
.rot-lista-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}
.rot-lista{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow-y:auto}
.rot-vazia{padding:18px 8px;text-align:center;color:var(--text-muted);font-size:13px;font-style:italic}
.rot-admin-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-soft);border:1px solid var(--border);border-radius:9px}
.rot-admin-card.inativa{opacity:.5}
.rot-admin-info{flex:1;min-width:0}
.rot-admin-info strong{font-size:13px;color:var(--text)}
.rot-admin-meta{font-size:11.5px;color:var(--text-muted);margin-top:2px}
.rot-admin-edit{padding:4px 10px;font-size:12px}
.rot-form-bloco{display:flex;flex-direction:column;gap:14px;padding:18px;background:var(--bg-soft);border:1px solid var(--border);border-radius:10px}
.rot-form-titulo{margin:0;font-size:14px;font-weight:700;color:var(--text)}
.rot-dias-sem{display:flex;flex-wrap:wrap;gap:6px}
.rot-dia-btn{padding:6px 12px;background:var(--bg-card);border:1.5px solid var(--border);border-radius:8px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .12s;font-family:inherit}
.rot-dia-btn.on{background:var(--c-green-d);color:#fff;border-color:var(--c-green-d)}
[data-theme="dark"] .rot-dia-btn.on{background:var(--c-green);border-color:var(--c-green)}
.rot-resp-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.rot-resp-chk{display:flex;align-items:center;gap:7px;padding:6px 10px;background:var(--bg-card);border:1px solid var(--border);border-radius:6px;cursor:pointer;font-size:12.5px;color:var(--text-soft)}
.rot-resp-chk input{accent-color:var(--c-navy);cursor:pointer}
[data-theme="dark"] .rot-resp-chk input{accent-color:var(--c-green)}
.rot-form-acoes{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bulk-modal{max-width:880px}
.bulk-body{display:flex;flex-direction:column;gap:18px;padding:20px 22px;max-height:75vh;overflow-y:auto}
.bulk-comum{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:14px 16px}
.bulk-comum-titulo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:12px}
.bulk-comum-titulo span{text-transform:none;letter-spacing:normal;font-weight:500;color:var(--text-faint);margin-left:4px}
.bulk-comum-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.bulk-detalhes{grid-column:1/-1}
.bulk-linhas-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.bulk-linhas-titulo{font-size:13px;font-weight:700;color:var(--text)}
.bulk-cnt{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy);font-size:11px;font-weight:700}
[data-theme="dark"] .bulk-cnt{background:rgba(123,194,66,.16);color:var(--c-green)}
.bulk-tabela-wrap{border:1px solid var(--border);border-radius:10px;overflow:hidden;max-height:280px;overflow-y:auto}
.bulk-tabela{width:100%;border-collapse:collapse;font-size:13px}
.bulk-tabela thead{position:sticky;top:0;z-index:1;background:var(--bg-card)}
.bulk-tabela th{padding:8px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap}
.bulk-tabela td{padding:5px;border-bottom:1px solid var(--border)}
.bulk-tabela tbody tr:last-child td{border-bottom:none}
.bulk-tabela tbody tr:hover{background:var(--bg-hover)}
.bulk-row-num{width:36px;color:var(--text-muted);font-weight:700;font-size:12px;text-align:center;font-variant-numeric:tabular-nums}
.bulk-cell-input,.bulk-cell-select{width:100%;padding:7px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);font-size:13px;font-family:inherit;transition:all .12s;box-sizing:border-box}
.bulk-cell-input:hover,.bulk-cell-select:hover{background:var(--bg-soft);border-color:var(--border)}
.bulk-cell-input:focus,.bulk-cell-select:focus{outline:none;background:var(--bg-card);border-color:var(--c-navy);box-shadow:0 0 0 2px var(--focus-ring)}
[data-theme="dark"] .bulk-cell-input:focus,[data-theme="dark"] .bulk-cell-select:focus{border-color:var(--c-green);box-shadow:0 0 0 2px rgba(123,194,66,.2)}
.bulk-row-del{width:30px;height:30px;border:none;background:transparent;color:var(--text-faint);border-radius:6px;cursor:pointer;font-size:16px;line-height:1;transition:all .12s}
.bulk-row-del:hover{background:var(--warn-soft);color:var(--warn)}
.bulk-hint{margin-top:8px;font-size:11.5px;color:var(--text-muted);font-style:italic}
@media (max-width:900px){.bulk-comum-grid{grid-template-columns:1fr 1fr}.bulk-detalhes{grid-column:1/-1}}
.dlg-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:99998;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .15s ease-out}
[data-theme="dark"] .dlg-overlay{background:rgba(0,0,0,.75)}
.dlg-box{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);width:100%;max-width:420px;padding:24px 26px 20px;animation:tbMenuIn .18s ease-out;text-align:center}
.dlg-icon{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;font-size:26px;line-height:1}
.dlg-icon-info{background:var(--c-navy-soft);color:var(--c-navy)}
.dlg-icon-pergunta{background:var(--c-navy-soft);color:var(--c-navy)}
.dlg-icon-perigo{background:var(--warn-soft);color:var(--warn)}
.dlg-icon-sucesso{background:var(--c-green-soft);color:var(--c-green-d)}
[data-theme="dark"] .dlg-icon-info,[data-theme="dark"] .dlg-icon-pergunta{background:rgba(123,194,66,.14);color:var(--c-green)}
[data-theme="dark"] .dlg-icon-sucesso{background:rgba(123,194,66,.14);color:var(--c-green)}
.dlg-title{margin:0 0 8px;font-size:17px;font-weight:700;color:var(--text);letter-spacing:-.01em}
.dlg-msg{margin:0 0 22px;font-size:13.5px;color:var(--text-soft);line-height:1.5;white-space:pre-wrap}
.dlg-actions{display:flex;justify-content:center;gap:10px}
.dlg-btn{padding:10px 22px;border:none;border-radius:9px;font-size:13.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s,transform .08s,box-shadow .12s;min-width:96px}
.dlg-btn:active{transform:scale(.97)}
.dlg-cancel{background:var(--bg-soft);color:var(--text-soft);border:1px solid var(--border)}
.dlg-cancel:hover{background:var(--bg-hover);color:var(--text)}
.dlg-ok{background:var(--c-navy);color:#fff}
.dlg-ok:hover{background:var(--c-navy-d);box-shadow:0 4px 12px rgba(45,44,110,.3)}
.dlg-box.tipo-perigo .dlg-ok{background:var(--warn)}
.dlg-box.tipo-perigo .dlg-ok:hover{background:#b91c1c;box-shadow:0 4px 12px rgba(220,38,38,.35)}
.dlg-box.tipo-sucesso .dlg-ok{background:var(--c-green-d)}
.dlg-box.tipo-sucesso .dlg-ok:hover{background:var(--c-green);box-shadow:0 4px 12px rgba(123,194,66,.35)}
.dlg-box.so-ok .dlg-cancel{display:none}
.toast-stack{position:fixed;bottom:24px;right:24px;z-index:99997;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.toast{pointer-events:auto;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--c-navy);border-radius:10px;box-shadow:var(--shadow-lg);font-size:13px;color:var(--text);min-width:240px;max-width:380px;display:flex;align-items:center;gap:10px;animation:toastIn .25s cubic-bezier(.25,1.1,.4,1)}
.toast.toast-info{border-left-color:var(--c-navy)}
.toast.toast-sucesso{border-left-color:var(--c-green-d)}
.toast.toast-aviso{border-left-color:var(--amber)}
.toast.toast-erro{border-left-color:var(--warn)}
.toast-ic{flex-shrink:0;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff}
.toast-info .toast-ic{background:var(--c-navy)}
.toast-sucesso .toast-ic{background:var(--c-green-d)}
.toast-aviso .toast-ic{background:var(--amber)}
.toast-erro .toast-ic{background:var(--warn)}
.toast-msg{flex:1;line-height:1.4}
.toast.saindo{animation:toastOut .25s ease-out forwards}
@keyframes toastIn{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@keyframes toastOut{to{opacity:0;transform:translateX(40px)}}
.dia-lista{ display: flex; flex-direction: column; gap: 8px; }
.dia-item{border:1px solid var(--border);border-left:4px solid var(--border-strong);border-radius:8px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:all .12s;background:var(--bg-card)}
.dia-item:hover{ box-shadow: var(--shadow-md); transform: translateY(-1px); }
.dia-item.atrasada{ background: var(--warn-soft); }
.dia-item.concluida{ opacity: .6; }
.dia-item-top{ display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dia-item-titulo{ font-size: 14px; font-weight: 800; color: var(--text); }
.dia-item-area{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);background:var(--neutral-soft);padding:2px 7px;border-radius:999px;white-space:nowrap}
.dia-item-meta{ font-size: 12px; color: var(--text-muted); }
.dia-item-meta:empty{ display: none; }
.dia-item-rod{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text)}
.dia-sem-resp{ color: var(--text-faint); font-style: italic; font-weight: 400; }
.dia-item-status{margin-left:auto;font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted)}
.dia-item.atrasada .dia-item-status{ background: var(--warn); color: #fff; }
.gantt-agrupar{ display: flex; align-items: center; gap: 6px; }
.gantt-agrupar label{ font-size: 11px; font-weight: 700; color: var(--text-muted); text-transform: uppercase; }
.gantt-agrupar select{ width: auto; min-width: 130px; }
.gantt-wrap{border:1px solid var(--border);border-radius:12px;overflow:auto;background:var(--bg-card)}
.gantt-tabela{ min-width: max-content; }
.gantt-row{ display: flex; align-items: stretch; border-bottom: 1px solid var(--border); }
.gantt-row:last-child{ border-bottom: none; }
.gantt-label{flex:0 0 200px;width:200px;padding:8px 10px;font-size:12px;font-weight:600;color:var(--text);border-right:1px solid var(--border);position:sticky;left:0;background:var(--bg-card);z-index:2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;display:flex;align-items:center}
.gantt-label:hover{ color: var(--c-navy); }
.gantt-header{ position: sticky; top: 0; z-index: 3; background: var(--bg-soft); }
.gantt-header .gantt-label{ background: var(--bg-soft); font-weight: 800; cursor: default; }
.gantt-escala{ display: flex; }
.gantt-dia{width:var(--gantt-col-w,30px);flex:0 0 var(--gantt-col-w,30px);text-align:center;padding:4px 0;border-right:1px solid var(--border);display:flex;flex-direction:column;line-height:1.1}
.gantt-dia.fds{ background: var(--bg-soft); }
.gantt-dia.hoje{ background: var(--success-soft); }
.gantt-dia-dow{ font-size: 9px; color: var(--text-muted); text-transform: uppercase; }
.gantt-dia-num{ font-size: 11px; font-weight: 700; color: var(--text); }
.gantt-trilha{ position: relative; display: flex; flex: 1; }
.gantt-cel{width:var(--gantt-col-w,30px);flex:0 0 var(--gantt-col-w,30px);border-right:1px solid var(--border);min-height:34px}
.gantt-cel.fds{ background: var(--bg-soft); }
.gantt-cel.hoje{ background: rgba(123,194,66,.12); box-shadow: inset 2px 0 0 var(--c-green),inset -2px 0 0 var(--c-green); }
.gantt-barra{position:absolute;top:6px;height:24px;border-radius:7px;cursor:pointer;color:#fff;display:flex;align-items:center;white-space:nowrap;overflow:hidden;box-shadow:0 2px 5px rgba(0,0,0,.16);transition:transform .12s,box-shadow .12s,filter .12s;background:var(--c-navy)}
.gantt-barra:hover{transform:translateY(-1px) scale(1.01);box-shadow:0 5px 14px rgba(0,0,0,.24);filter:brightness(1.06);z-index:5}
.gantt-barra.atrasada{background:var(--warn) !important;box-shadow:0 2px 5px rgba(239,68,68,.4)}
.gantt-barra.concluida{ opacity: .55; filter: grayscale(.3); }
.gantt-barra.sem-inicio{background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.18) 0,rgba(255,255,255,.18) 6px,transparent 6px,transparent 12px)}
.gantt-barra.corta-esq{ border-top-left-radius: 0; border-bottom-left-radius: 0; }
.gantt-barra.corta-dir{ border-top-right-radius: 0; border-bottom-right-radius: 0; }
.gantt-prog{position:absolute;left:0;top:0;bottom:0;background:rgba(0,0,0,.22);border-right:1px solid rgba(255,255,255,.35)}
.gantt-barra-rot{position:relative;z-index:1;padding:0 8px;font-size:10.5px;font-weight:700;text-shadow:0 1px 1px rgba(0,0,0,.25);overflow:hidden;text-overflow:ellipsis}
.gantt-fora{position:absolute;top:9px;left:6px;font-size:10px;font-weight:700;color:var(--text-muted)}
.gantt-grupo{padding:6px 10px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-soft);border-bottom:1px solid var(--border);position:sticky;left:0}
.lista-sec{ margin-top: 4px; }
.lista-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.lcard{background:var(--bg-card);border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:10px;padding:11px 13px;cursor:pointer;display:flex;flex-direction:column;gap:7px;transition:transform .12s,box-shadow .12s,border-color .12s}
.lcard:hover{ transform: translateY(-2px); box-shadow: var(--shadow-md); }
.lcard.prio-Alta { border-left-color: var(--alta); }
.lcard.prio-Media{ border-left-color: var(--media); }
.lcard.prio-Baixa{ border-left-color: var(--baixa); }
.lcard.atrasada{ background: var(--warn-soft); }
.lcard.concluida{ opacity: .62; }
.lcard-topo{ display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.lcard-num{ font-size: 11px; font-weight: 800; color: var(--text-muted); letter-spacing: .02em; }
.lcard-status{ flex-shrink: 0; }
.lcard-titulo{font-size:14.5px;font-weight:800;color:var(--text);line-height:1.25;letter-spacing:-.01em}
.lcard-meta{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcard-chips{ display: flex; flex-wrap: wrap; gap: 5px; align-items: center; }
.lcard-area{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted)}
.lcard-prazo{font-size:11px;font-weight:600;color:var(--text-soft);background:var(--bg-soft);padding:2px 8px;border-radius:999px}
.lcard-prazo.prazo-atraso { background: var(--warn-soft);   color: var(--warn); }
.lcard-prazo.prazo-hoje   { background: var(--c-navy-soft); color: var(--c-navy); }
.lcard-prazo.prazo-proximo{ background: var(--amber-soft);  color: #B45309; }
.lcard-ck{font-size:11px;font-weight:700;color:var(--text-muted);background:var(--neutral-soft);padding:2px 8px;border-radius:999px}
.lcard-ck.completa{ background: var(--success-soft); color: var(--c-green-d); }
.lcard-anexos{ display: flex; flex-wrap: wrap; gap: 5px; align-items: center; }
.lcard-anexo{display:inline-flex;align-items:center;gap:4px;max-width:100%;font-size:11.5px;font-weight:600;color:var(--c-navy);background:var(--c-navy-soft);padding:3px 9px;border-radius:6px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcard-anexo:hover{ text-decoration: underline; }
[data-theme="dark"] .lcard-anexo{ color: var(--c-green); }
.lcard-anexo-ic{ flex-shrink: 0; font-size: 11px; }
.lcard-anexo-mais{ font-size: 11px; font-weight: 700; color: var(--text-muted); }
.lcard-rod{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:1px;padding-top:7px;border-top:1px dashed var(--border)}
.lcard-resp{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lcard-sem-resp{ color: var(--text-faint); font-style: italic; font-weight: 400; }
.lcard .btn-concluir{ flex-shrink: 0; }
.revisao-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--amber-soft);border:1px solid var(--amber);border-radius:10px;padding:11px 14px;margin-bottom:14px}
.revisao-banner-txt{ font-size: 13px; font-weight: 700; color: #92400E; }
[data-theme="dark"] .revisao-banner-txt{ color: var(--amber); }
.revisao-banner-acoes{ display: flex; gap: 8px; }
.rev-btn-ok,.rev-btn-no{ padding: 8px 16px; font-size: 13px; font-weight: 700; }
.kanban-rev-acoes{ display: flex; gap: 6px; margin-top: 8px; }
.kanban-rev-btn{flex:1;padding:6px 8px;border:none;border-radius:7px;font-size:11.5px;font-weight:800;cursor:pointer;transition:filter .12s,transform .12s}
.kanban-rev-btn:hover{ filter: brightness(1.05); transform: translateY(-1px); }
.kanban-rev-btn.ok{ background: var(--c-green); color: #fff; }
.kanban-rev-btn.no{ background: var(--warn); color: #fff; }
.minhas-banner{background:linear-gradient(135deg,var(--c-navy) 0%,#1a1f3d 100%);border-radius:14px;padding:18px 22px;margin-bottom:14px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.mb-saud{display:flex;align-items:center;gap:12px}
.mb-avatar{width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#fff;border:2px solid rgba(255,255,255,.3);flex-shrink:0}
.mb-saud h2{margin:0;font-size:19px;font-weight:800;letter-spacing:-.01em}
.mb-saud p{margin:2px 0 0;font-size:12.5px;color:rgba(255,255,255,.7)}
.mb-saud strong{color:#fff}
.mb-stats{display:flex;gap:8px;flex-wrap:wrap}
.mb-stat{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}
.mb-stat b{font-weight:800;margin-right:4px}
.mb-stat.ruim{background:rgba(239,68,68,.22);border-color:rgba(239,68,68,.45)}
.mb-stat.aviso{background:rgba(245,158,11,.20);border-color:rgba(245,158,11,.45)}
.mb-stat.tempo{background:rgba(255,255,255,.07)}
/* Em "Minhas Tarefas" o responsavel e' sempre o usuario, esconde controles relacionados */
body[data-view="minhas"] #painelPorResponsavel,
body[data-view="minhas"] #sbFieldResp{display:none}
/* Toggle Cards/Lista */
.lista-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}
.lista-modos{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}
.lista-modo-btn{background:var(--bg-card);color:var(--text-muted);border:none;padding:6px 12px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .12s}
.lista-modo-btn:hover{background:var(--bg-hover)}
.lista-modo-btn.ativo{background:var(--c-navy);color:#fff}
[data-theme="dark"] .lista-modo-btn.ativo{background:var(--c-green);color:#0a0a0a}
/* Modo lista: cada card como linha horizontal compacta */
.lista-cards.modo-lista{display:flex;flex-direction:column;gap:4px}
.lista-cards.modo-lista .lcard{flex-direction:row;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 12px}
.lista-cards.modo-lista .lcard-topo{margin:0;gap:6px;flex-shrink:0}
.lista-cards.modo-lista .lcard-titulo{font-size:13.5px;flex:1;min-width:180px}
.lista-cards.modo-lista .lcard-meta{margin:0;font-size:11.5px;flex:1;min-width:140px}
.lista-cards.modo-lista .lcard-chips{margin:0;flex-shrink:0}
.lista-cards.modo-lista .lcard-anexos{margin:0;flex-shrink:0}
.lista-cards.modo-lista .lcard-rod{margin:0;padding:0;border:none;flex-shrink:0;gap:8px}
.modal-rep-overlay{position:fixed;inset:0;background:rgba(17,24,39,.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;animation:fadeIn .12s ease-out}
.modal-rep-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:20px 22px}
.modal-rep-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.modal-rep-head h3{margin:0;font-size:17px;color:var(--text)}
.modal-rep-x{background:none;border:none;font-size:24px;line-height:1;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:6px}
.modal-rep-x:hover{background:var(--bg-hover);color:var(--text)}
.modal-rep-sub{margin:0 0 14px;color:var(--text-muted);font-size:13px}
.modal-rep-opts{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.modal-rep-opt{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color var(--transition),background var(--transition)}
.modal-rep-opt:hover{border-color:var(--border-strong);background:var(--bg-soft)}
.modal-rep-opt input[type=checkbox]{margin-top:3px;accent-color:var(--c-navy);width:16px;height:16px;cursor:pointer;flex-shrink:0}
.modal-rep-opt-txt{display:flex;flex-direction:column;gap:2px;line-height:1.35}
.modal-rep-opt-txt strong{color:var(--text);font-size:14px;font-weight:600}
.modal-rep-opt-txt span{color:var(--text-muted);font-size:12px}
.modal-rep-opt:has(input:checked){border-color:var(--c-navy);background:var(--c-navy-soft)}
.modal-rep-obs{width:100%;border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-family:inherit;font-size:13px;color:var(--text);background:var(--bg-card);resize:vertical;margin-bottom:14px;box-sizing:border-box}
.modal-rep-obs:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.modal-rep-foot{display:flex;justify-content:flex-end;gap:8px}
.modal-rep-foot .btn-primario{background:var(--warn);color:#fff;border:none;padding:9px 16px;border-radius:var(--radius);font-weight:600;cursor:pointer}
.modal-rep-foot .btn-primario:hover{background:#b91c1c}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.coment-header{display:flex;align-items:center;margin-bottom:10px}
.coment-header label{font-weight:600;color:var(--text);font-size:13px}
.coment-lista{display:flex;flex-direction:column;gap:10px;margin-bottom:12px;max-height:260px;overflow-y:auto;padding-right:4px}
.coment-vazia{margin:0;color:var(--text-muted);font-size:12.5px;font-style:italic}
.coment-item{display:flex;gap:10px;padding:10px 12px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius);position:relative}
.coment-avatar{width:32px;height:32px;border-radius:50%;background:var(--c-navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;position:relative;overflow:hidden}
.coment-avatar-ini{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}
.coment-avatar-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;z-index:2;background:var(--bg-card)}
.coment-corpo{flex:1;min-width:0}
.coment-head{display:flex;align-items:center;gap:8px;margin-bottom:3px}
.coment-head strong{font-size:13px;color:var(--text);font-weight:600}
.coment-data{font-size:11px;color:var(--text-muted)}
.coment-texto{margin:0;color:var(--text-soft);font-size:13px;line-height:1.4;white-space:pre-wrap;word-wrap:break-word}
.coment-del{position:absolute;top:6px;right:8px;background:none;border:none;font-size:18px;color:var(--text-faint);cursor:pointer;line-height:1;padding:2px 6px;border-radius:4px}
.coment-del:hover{background:var(--warn-soft);color:var(--warn)}
.coment-form{display:flex;gap:8px;align-items:flex-end}
.coment-input{flex:1;border:1px solid var(--border);border-radius:var(--radius);padding:8px 10px;font-family:inherit;font-size:13px;background:var(--bg-card);color:var(--text);resize:vertical;min-height:38px;box-sizing:border-box}
.coment-input:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
.coment-add-btn{background:var(--c-navy);color:#fff;border:none;padding:9px 14px;border-radius:var(--radius);font-weight:600;font-size:13px;cursor:pointer;flex-shrink:0}
.coment-add-btn:hover{background:var(--c-navy-d)}
.coment-add-btn:disabled{opacity:.5;cursor:not-allowed}
.kanban-card-coment{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.4}
.lcard-coment{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted);font-size:11px;font-weight:600}
.app-loader{position:fixed;inset:0;z-index:99999;background:var(--bg);display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out}
.app-loader.fade-out{animation:fadeOut .35s ease-out forwards}
.app-loader-inner{display:flex;flex-direction:column;align-items:center;gap:28px}
.app-loader-txt{font-size:13px;color:var(--text-muted);font-weight:500;letter-spacing:.02em}
.ripple-loader{display:flex;gap:14px;align-items:center;justify-content:center;perspective:600px}
.ripple-box{width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,var(--c-navy) 0%,var(--c-navy-d) 100%);box-shadow:0 6px 14px rgba(45,44,110,.35);animation:rippleBox 1.6s ease-in-out infinite;will-change:transform,box-shadow}
[data-theme="dark"] .ripple-box{background:linear-gradient(135deg,#6c6ad8 0%,var(--c-navy) 100%);box-shadow:0 6px 14px rgba(108,106,216,.4)}
.ripple-box-logo{background:linear-gradient(135deg,var(--c-green) 0%,var(--c-green-d) 100%);box-shadow:0 6px 18px rgba(123,194,66,.4);display:flex;align-items:center;justify-content:center}
[data-theme="dark"] .ripple-box-logo{background:linear-gradient(135deg,var(--c-green) 0%,#5fa52b 100%);box-shadow:0 6px 18px rgba(123,194,66,.5)}
.ripple-box:nth-child(1){animation-delay:0s}
.ripple-box:nth-child(2){animation-delay:.15s}
.ripple-box:nth-child(3){animation-delay:.3s}
.ripple-box:nth-child(4){animation-delay:.45s}
.ripple-box:nth-child(5){animation-delay:.6s}
.ripple-svg{display:block}
.ripple-tri-1{fill:#000;animation:rippleColor1 1.6s ease-in-out infinite}
.ripple-tri-2{fill:#fff;animation:rippleColor2 1.6s ease-in-out infinite}
@keyframes rippleBox{0%,100%{transform:scale(1) translateZ(0);box-shadow:0 6px 14px rgba(45,44,110,.28)}50%{transform:scale(1.18) translateZ(0);box-shadow:0 14px 28px rgba(45,44,110,.42)}}
[data-theme="dark"] .ripple-box{animation-name:rippleBoxDark}
@keyframes rippleBoxDark{0%,100%{transform:scale(1);box-shadow:0 6px 14px rgba(108,106,216,.4)}50%{transform:scale(1.18);box-shadow:0 14px 28px rgba(108,106,216,.6)}}
.ripple-box-logo{animation-name:rippleBoxLogo!important}
@keyframes rippleBoxLogo{0%,100%{transform:scale(1);box-shadow:0 6px 18px rgba(123,194,66,.4)}50%{transform:scale(1.18);box-shadow:0 16px 32px rgba(123,194,66,.55)}}
@keyframes rippleColor1{0%,100%{fill:#000}50%{fill:#fff}}
@keyframes rippleColor2{0%,100%{fill:#fff}50%{fill:#000}}
@keyframes fadeOut{to{opacity:0;visibility:hidden}}
#viewInicio{display:flex;flex-direction:column;gap:20px;width:100%}
.ini-greeting{display:flex;align-items:center;gap:18px;padding:24px 26px;background:linear-gradient(135deg,var(--c-navy) 0%,#1a1f3d 100%);color:#fff;border-radius:16px;box-shadow:var(--shadow-md)}
[data-theme="dark"] .ini-greeting{background:linear-gradient(135deg,#1e1d3d 0%,#0a0c10 100%)}
.ini-avatar{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.15);border:2px solid rgba(255,255,255,.3);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.ini-avatar img{width:100%;height:100%;display:block}
.ini-greeting-txt{flex:1;min-width:0}
.ini-greeting-txt h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em;line-height:1.2}
.ini-resumo{margin:4px 0 0;font-size:13.5px;color:rgba(255,255,255,.78);line-height:1.4}
.ini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ini-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px 20px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s}
.ini-kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.ini-kpi-label{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}
.ini-kpi-value{font-size:32px;font-weight:800;color:var(--text);letter-spacing:-.02em;line-height:1.1}
.ini-kpi-delta{font-size:11px;font-weight:600;color:var(--text-muted)}
.ini-kpi-delta.delta-up{color:var(--c-green-d)}
.ini-kpi-delta.delta-down{color:var(--warn)}
[data-theme="dark"] .ini-kpi-delta.delta-up{color:var(--c-green)}
.ini-kpi-warn .ini-kpi-value{color:var(--warn)}
.ini-kpi-success .ini-kpi-value{color:var(--c-green-d)}
[data-theme="dark"] .ini-kpi-success .ini-kpi-value{color:var(--c-green)}
.ini-graficos{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:14px}
.ini-listas{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}
.ini-listas .ini-card{display:flex;flex-direction:column}
.ini-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px 18px;box-shadow:var(--shadow-sm)}
.ini-card-titulo{margin:0 0 12px;font-size:13px;font-weight:700;color:var(--text);letter-spacing:-.005em;display:flex;align-items:center;gap:8px}
.ini-card-cnt{font-size:11px;font-weight:800;color:var(--text-muted);background:var(--bg-soft);border:1px solid var(--border);min-width:20px;text-align:center;padding:1px 7px;border-radius:999px;line-height:1.5}
.ini-card-cnt:empty{display:none}
.ini-donut-wrap{display:flex;align-items:center;gap:14px}
.ini-donut{width:130px;height:130px;flex-shrink:0;color:var(--text)}
.ini-donut-legend{flex:1;display:flex;flex-direction:column;gap:6px}
.ini-leg-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-soft)}
.ini-leg-cor{width:10px;height:10px;border-radius:3px;flex-shrink:0}
.ini-leg-lbl{flex:1;color:var(--text)}
.ini-leg-val{color:var(--text-muted);font-weight:600;font-size:11.5px}
.ini-bars{display:flex;align-items:flex-end;gap:8px;height:160px;padding:8px 4px 0}
.ini-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}
.ini-bar-val{font-size:11px;font-weight:700;color:var(--text-muted);height:14px}
.ini-bar{width:100%;height:110px;display:flex;align-items:flex-end;background:var(--bg-soft);border-radius:6px;overflow:hidden}
.ini-bar-fill{width:100%;background:linear-gradient(180deg,var(--c-green) 0%,var(--c-green-d) 100%);border-radius:6px 6px 0 0;transition:height .5s cubic-bezier(.4,0,.2,1);min-height:4px}
.ini-bar-col.hoje .ini-bar-fill{background:linear-gradient(180deg,var(--c-navy) 0%,#1a1f3d 100%)}
[data-theme="dark"] .ini-bar-col.hoje .ini-bar-fill{background:linear-gradient(180deg,var(--c-green) 0%,#5fa52b 100%)}
.ini-bar-lbl{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.ini-bar-col.hoje .ini-bar-lbl{color:var(--c-navy);font-weight:700}
[data-theme="dark"] .ini-bar-col.hoje .ini-bar-lbl{color:var(--c-green)}
.ini-mini-list{display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;max-height:340px;overflow-y:auto;padding-right:6px;
  scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}
.ini-mini-list::-webkit-scrollbar{width:8px}
.ini-mini-list::-webkit-scrollbar-track{background:transparent;margin:2px 0}
.ini-mini-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid var(--bg-card);background-clip:padding-box}
.ini-mini-list::-webkit-scrollbar-thumb:hover{background:var(--text-faint);border:2px solid var(--bg-card);background-clip:padding-box}
.ini-mini-vazia{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:26px 8px;text-align:center;color:var(--text-muted);font-size:12.5px}
.ini-mini-vazia-ic{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--c-green-soft,rgba(34,197,94,.13));color:var(--c-green-d,#16a34a);font-size:16px;font-weight:800}
[data-theme="dark"] .ini-mini-vazia-ic{background:rgba(123,194,66,.14);color:var(--c-green)}
.ini-mini-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;cursor:pointer;background:var(--bg-soft);transition:background .12s,transform .1s;border-left:3px solid var(--border-strong)}
.ini-mini-item:hover{background:var(--bg-hover);transform:translateX(2px)}
.ini-mini-item.prio-Alta{border-left-color:var(--alta)}
.ini-mini-item.prio-Media{border-left-color:var(--media)}
.ini-mini-item.prio-Baixa{border-left-color:var(--baixa)}
.ini-mini-num{font-size:11px;font-weight:700;color:var(--text-muted);min-width:36px}
.ini-mini-info{flex:1;min-width:0}
.ini-mini-titulo{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ini-mini-meta{font-size:11.5px;color:var(--text-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ini-mini-prazo{font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;flex-shrink:0;color:var(--text-muted);background:var(--bg-soft)}
.ini-mini-prazo.atrasado{color:var(--warn);background:var(--warn-soft)}
.ini-mini-item.em-revisao{border-left:3px solid #f59e0b;padding-left:9px}
.ini-mini-cat{font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--c-navy-soft,rgba(45,44,110,.1));color:var(--c-navy,#2d2c6e);vertical-align:middle;margin-left:4px}
[data-theme="dark"] .ini-mini-cat{background:rgba(123,194,66,.12);color:var(--c-green)}
.ini-rev-acoes{display:inline-flex;gap:4px;flex-shrink:0;margin-left:6px}
.rev-btn.mini{flex:none;width:28px;height:28px;padding:0;border-radius:7px;font-size:13px;display:inline-flex;align-items:center;justify-content:center}
.ini-mini-prazo.hoje{color:#d98706;background:rgba(245,158,11,.14)}
.ini-mini-prazo.proximo{color:var(--c-navy);background:var(--c-navy-soft)}
[data-theme="dark"] .ini-mini-prazo.hoje{color:#fcd34d;background:rgba(245,158,11,.16)}
[data-theme="dark"] .ini-mini-prazo.proximo{color:#7db1ff;background:rgba(59,130,246,.16)}
@media (max-width:1100px){.ini-graficos{grid-template-columns:1fr 1fr}.ini-listas{grid-template-columns:1fr 1fr}.ini-kpis{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.ini-graficos{grid-template-columns:1fr}.ini-listas{grid-template-columns:1fr}.ini-kpis{grid-template-columns:1fr}}
.kanban-card-resp{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-soft)}
.kanban-card-resp img{width:20px;height:20px;border-radius:50%;background:var(--bg-soft);border:1px solid var(--border)}
.kanban-card-resp-nome{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kanban-card-resp-vazio{font-size:12px;color:var(--text-faint)}
/* Multiplos responsaveis: pilha de avatares */
.kanban-resp-stack{display:inline-flex;align-items:center}
.kanban-resp-av{width:20px;height:20px;border-radius:50%;background:var(--bg-soft);border:2px solid var(--bg-card);margin-left:-7px}
.kanban-resp-av:first-child{margin-left:0}
[data-theme="dark"] .kanban-resp-av{border-color:#0a0c10}
.kanban-resp-mais{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;margin-left:-7px;border-radius:999px;background:var(--c-navy,#2d2c6e);color:#fff;font-size:9.5px;font-weight:800;border:2px solid var(--bg-card)}
[data-theme="dark"] .kanban-resp-mais{background:var(--c-green);color:#0a0a0a;border-color:#0a0c10}
.cal-ev-av{display:inline-block;width:14px;height:14px;border-radius:50%;background-size:cover;background-position:center;background-color:var(--bg-soft);border:1px solid var(--border);margin-left:auto;flex-shrink:0}
.lista-modo-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-left:10px}
.modo-btn{padding:5px 10px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:14px}
.modo-btn.ativo{background:var(--c-navy-soft);color:var(--c-navy)}
[data-theme="dark"] .modo-btn.ativo{background:rgba(123,194,66,.14);color:var(--c-green)}
.lista-cards.modo-lista{display:flex;flex-direction:column;gap:2px}
.lista-cards.modo-lista .lcard{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;padding:8px 14px;margin:0;border-radius:6px;align-items:center}
.lista-cards.modo-lista .lcard-topo{display:contents}
.lista-cards.modo-lista .lcard-titulo{margin:0;font-size:13px}
.lista-cards.modo-lista .lcard-meta,.lista-cards.modo-lista .lcard-rod{display:flex;font-size:11.5px;margin:0;color:var(--text-muted);gap:8px}
.minhas-banner{background:linear-gradient(135deg,var(--c-navy) 0%,#1a1f3d 100%);border-radius:14px;padding:18px 22px;margin-bottom:14px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
[data-theme="dark"] .minhas-banner{background:linear-gradient(135deg,#1e1d3d 0%,#0a0c10 100%)}
.mb-saud{display:flex;align-items:center;gap:12px}
.mb-avatar{position:relative;width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#fff;border:2px solid rgba(255,255,255,.3);flex-shrink:0;overflow:hidden}
.mb-saud h2{margin:0;font-size:19px;font-weight:800;letter-spacing:-.01em}
.mb-saud p{margin:2px 0 0;font-size:12.5px;color:rgba(255,255,255,.7)}
.mb-stats{display:flex;gap:16px}
.mb-stat{display:flex;flex-direction:column;align-items:center;min-width:60px}
.mb-stat-num{font-size:22px;font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.1}
.mb-stat-lbl{font-size:10.5px;color:rgba(255,255,255,.7);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}
.kanban-card-area{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--neutral-soft);color:var(--text-muted)}
.kanban-card-area.area-CADASTROS{background:rgba(59,130,246,.12);color:#3b82f6}
.kanban-card-area.area-MIDIA{background:rgba(139,92,246,.12);color:#8b5cf6}
.kanban-card-area.area-REVISAO{background:rgba(245,158,11,.12);color:#f59e0b}
.kanban-card-area.area-PROMO{background:rgba(236,72,153,.12);color:#ec4899}

/* ===== Revisão nos cards (tag categoria, selo, ações hover) ===== */
.kanban-card-cat{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--c-navy-soft,rgba(45,44,110,.1));color:var(--c-navy,#2d2c6e);border:1px solid transparent}
[data-theme="dark"] .kanban-card-cat{background:rgba(123,194,66,.12);color:var(--c-green)}
/* destaque do card em revisão */
.kanban-card.em-revisao{border-left-color:#f59e0b;box-shadow:0 0 0 1px rgba(245,158,11,.25),var(--shadow-sm)}
.kanban-card.em-revisao.rev-atrasada{border-left-color:#ef4444;box-shadow:0 0 0 1px rgba(239,68,68,.35),0 4px 14px rgba(239,68,68,.18)}
.rev-selo{font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:5px;background:rgba(245,158,11,.16);color:#d98706;margin-right:auto}
.rev-selo.atrasada{background:rgba(239,68,68,.16);color:#dc2626;animation:revPulse 1.6s ease-in-out infinite}
[data-theme="dark"] .rev-selo{color:#fcd34d}
[data-theme="dark"] .rev-selo.atrasada{color:#fca5a5}
@keyframes revPulse{0%,100%{opacity:1}50%{opacity:.5}}
/* ações rápidas (aparecem no hover do card) */
.rev-acoes{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);max-height:0;opacity:0;overflow:hidden;transition:max-height .2s ease,opacity .2s ease,padding .2s ease;padding-top:0;border-top-color:transparent}
.kanban-card.em-revisao:hover .rev-acoes,.kanban-card.em-revisao:focus-within .rev-acoes{max-height:48px;opacity:1;padding-top:8px;border-top-color:var(--border)}
.rev-btn{flex:1;border:none;border-radius:7px;padding:7px 8px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .1s,filter .15s}
.rev-btn:hover{transform:translateY(-1px)}
.rev-aprovar{background:var(--c-green,#22c55e);color:#fff}
.rev-aprovar:hover{filter:brightness(1.08)}
.rev-corrigir{background:rgba(239,68,68,.12);color:#dc2626;border:1px solid rgba(239,68,68,.3)}
.rev-corrigir:hover{background:rgba(239,68,68,.18)}
[data-theme="dark"] .rev-corrigir{color:#fca5a5}
/* animação otimista de saída ao aprovar */
.kanban-card.rev-saindo,.lcard.rev-saindo{transform:translateX(40px) scale(.92);opacity:0;transition:all .3s ease;pointer-events:none}

/* ===== Promo + ADS ===== */
.promo-tag{font-size:10px;font-weight:800;letter-spacing:.03em;padding:2px 8px;border-radius:999px}
.promo-tag.tag-ads{background:rgba(236,72,153,.16);color:#db2777}
.promo-tag.tag-fim{background:rgba(34,197,94,.14);color:#16a34a}
[data-theme="dark"] .promo-tag.tag-ads{color:#f9a8d4;background:rgba(236,72,153,.2)}
[data-theme="dark"] .promo-tag.tag-fim{color:#7bc242;background:rgba(123,194,66,.16)}
/* ===== Relatórios ===== */
.rel-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:18px}
.rel-head h2{margin:0;font-size:24px;font-weight:800;color:var(--text)}
.rel-atualizado{font-size:12px;color:var(--text-muted)}
.rel-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:18px}
.rel-kpi{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;text-align:center;box-shadow:var(--shadow-sm)}
.rel-kpi b{display:block;font-size:30px;font-weight:800;color:var(--text);line-height:1}
.rel-kpi span{font-size:11.5px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.rel-kpi.warn b{color:var(--warn,#dc2626)} .rel-kpi.info b{color:#d98706} .rel-kpi.ok b{color:var(--c-green-d,#16a34a)}
.rel-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rel-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px;box-shadow:var(--shadow-sm)}
.rel-card h3{margin:0 0 14px;font-size:14px;font-weight:700;color:var(--text)}
.rel-bar{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:12.5px;color:var(--text-soft)}
.rel-bar-lbl{flex:0 0 130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rel-bar-track{flex:1;height:8px;background:var(--bg-soft);border-radius:999px;overflow:hidden}
.rel-bar-track.mini{height:7px} .rel-bar-track.big{height:12px;margin:8px 0}
.rel-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}
.rel-bar b{flex:0 0 28px;text-align:right;color:var(--text);font-size:12px}
.rel-pessoa{display:flex;align-items:center;gap:9px;margin-bottom:9px}
.rel-pessoa img{width:26px;height:26px;border-radius:50%;border:1px solid var(--border)}
.rel-pessoa span{flex:0 0 110px;font-size:12.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rel-pessoa b{flex:0 0 24px;text-align:right;font-size:13px;color:var(--text)}
.rel-linha{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px dashed var(--border);font-size:13px;color:var(--text-soft)}
.rel-linha span{flex:1} .rel-linha b{color:var(--text)} .rel-linha em{color:var(--text-muted);font-size:11px;font-style:normal;flex:0 0 32px;text-align:right}
.rel-promo-split{display:flex;gap:20px;margin-bottom:6px}
.rel-promo-num b{font-size:28px;font-weight:800;color:var(--text)}
.rel-promo-num span{font-size:12px;color:var(--text-muted);display:block}
.rel-promo-extra{display:flex;flex-direction:column;gap:3px;margin-top:8px;font-size:12px;color:var(--text-muted)}
.rel-vazio{font-size:13px;color:var(--text-muted);font-style:italic;margin:4px 0}
@media (max-width:900px){.rel-kpis{grid-template-columns:repeat(2,1fr)}.rel-grid{grid-template-columns:1fr}}
.kanban-card-destino{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;background:rgba(139,92,246,.14);color:#7c3aed}
[data-theme="dark"] .kanban-card-destino{color:#c4b5fd;background:rgba(139,92,246,.2)}
.promo-ciclo{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:var(--bg-soft);color:var(--text-muted)}
.promo-volta{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:rgba(245,158,11,.14);color:#d98706}
[data-theme="dark"] .promo-volta{color:#fcd34d;background:rgba(245,158,11,.18)}
/* botoes ADS / Finalizado (aparecem no hover do card em Em análise) */
.promo-acoes{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);max-height:0;opacity:0;overflow:hidden;transition:max-height .2s,opacity .2s,padding .2s;padding-top:0;border-top-color:transparent}
.kanban-card:hover .promo-acoes,.kanban-card:focus-within .promo-acoes{max-height:48px;opacity:1;padding-top:8px;border-top-color:var(--border)}
.promo-btn{flex:1;border:none;border-radius:7px;padding:7px 8px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .1s,filter .15s}
.promo-btn:hover{transform:translateY(-1px)}
.promo-ads{background:rgba(236,72,153,.14);color:#db2777;border:1px solid rgba(236,72,153,.35)}
.promo-ads:hover{background:rgba(236,72,153,.22)}
.promo-fim{background:var(--c-green,#22c55e);color:#fff}
.promo-fim:hover{filter:brightness(1.08)}
[data-theme="dark"] .promo-ads{color:#f9a8d4}
/* seletor de prazo A/B */
.promo-fin-box{max-width:420px}
.promo-prazo-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.promo-prazo{padding:14px 10px;border-radius:10px;border:1.5px solid var(--border-strong);background:var(--bg-soft);color:var(--text);font-size:14px;font-weight:700;cursor:pointer;transition:all .15s}
.promo-prazo:hover{border-color:var(--c-navy,#2d2c6e);background:var(--c-navy-soft,rgba(45,44,110,.08));transform:translateY(-1px)}
[data-theme="dark"] .promo-prazo:hover{border-color:var(--c-green);background:rgba(123,194,66,.1)}
/* lcard em revisão (lista / fila de revisão) */
.lcard.em-revisao{border-left-color:#f59e0b}
.lcard.em-revisao.rev-atrasada{border-left-color:#ef4444}
.lcard-cat{font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--c-navy-soft,rgba(45,44,110,.1));color:var(--c-navy,#2d2c6e)}
[data-theme="dark"] .lcard-cat{background:rgba(123,194,66,.12);color:var(--c-green)}
.lcard .rev-acoes{display:flex;gap:6px;margin-top:8px;max-height:0;opacity:0;overflow:hidden;transition:max-height .2s,opacity .2s}
.lcard.em-revisao:hover .rev-acoes,.lcard.em-revisao:focus-within .rev-acoes{max-height:48px;opacity:1}
/* ============================================================ */
/* Checklist estilo Trello                                       */
/* ============================================================ */
#checklistContainer{display:flex;flex-direction:column;gap:0}
.ck-progress-wrap{display:flex;align-items:center;gap:10px;padding:4px 0 12px;font-size:11.5px;font-variant-numeric:tabular-nums}
.ck-progress-pct{font-weight:700;color:var(--text-soft);min-width:30px}
.ck-progress-bar{flex:1;height:8px;background:var(--bg-soft);border-radius:999px;overflow:hidden;border:1px solid var(--border)}
.ck-progress-fill{height:100%;background:linear-gradient(90deg,var(--c-green) 0%,var(--c-green-d) 100%);border-radius:999px;transition:width .4s cubic-bezier(.4,0,.2,1)}
.ck-progress-frac{font-weight:600;color:var(--text-muted);min-width:38px;text-align:right}
.ck-vazia{margin:8px 0;color:var(--text-muted);font-size:12.5px;font-style:italic;text-align:center}
.ck-item{display:flex;flex-direction:column;gap:0;border-bottom:1px solid var(--border)}
.ck-item:last-child{border-bottom:none}
.ck-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;transition:background .12s;position:relative}
.ck-row:hover{background:var(--bg-hover)}
.ck-row:hover .ck-acoes,.ck-row:hover .ck-sub-del{opacity:1}
.ck-check{flex-shrink:0;width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s}
.ck-check:hover{border-color:var(--c-green);background:var(--c-green-soft)}
.ck-check.on{background:var(--c-green-d);border-color:var(--c-green-d)}
[data-theme="dark"] .ck-check.on{background:var(--c-green);border-color:var(--c-green)}
.ck-check-sub{width:14px;height:14px;border-width:1.5px}
.ck-texto-display{flex:1;font-size:13.5px;color:var(--text);cursor:text;padding:3px 0;line-height:1.3;min-height:20px}
.ck-row.feito .ck-texto-display{text-decoration:line-through;color:var(--text-muted)}
.ck-input{flex:1;padding:4px 8px;border:1px solid var(--c-navy);border-radius:5px;background:var(--bg-card);color:var(--text);font-size:13.5px;font-family:inherit;outline:none;box-shadow:0 0 0 2px var(--focus-ring)}
[data-theme="dark"] .ck-input{border-color:var(--c-green);box-shadow:0 0 0 2px rgba(123,194,66,.2)}
.ck-quem{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 2px;background:var(--bg-soft);border:1px solid var(--border);border-radius:999px;font-size:11px;color:var(--text-muted)}
.ck-quem img{width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card)}
.ck-quem-info{display:flex;flex-direction:column;line-height:1.15}
.ck-quem-nome{font-weight:600;color:var(--text-soft);font-size:11px}
.ck-quem-data{font-size:10px;color:var(--text-faint);font-variant-numeric:tabular-nums}
.ck-quem-sub{padding:1px 6px 1px 1px;gap:4px}
.ck-quem-sub img{width:14px;height:14px}
.ck-quem-sub .ck-quem-data{font-size:9.5px}
.ck-acoes{display:flex;gap:4px;opacity:0;transition:opacity .15s;margin-left:auto}
.ck-acao{padding:3px 8px;background:transparent;border:1px solid transparent;border-radius:5px;color:var(--text-muted);font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .12s}
.ck-acao:hover{background:var(--bg-card);border-color:var(--border)}
.ck-acao-del{padding:2px 7px;font-size:14px}
.ck-acao-del:hover{background:var(--warn-soft);color:var(--warn);border-color:var(--warn)}
.ck-subs{display:flex;flex-direction:column;gap:0;margin-left:28px;border-left:2px solid var(--border);padding-left:8px;margin-top:2px;margin-bottom:2px}
.ck-sub{padding:4px 8px}
.ck-sub .ck-texto-display{font-size:12.5px;color:var(--text-soft)}
.ck-sub.feito .ck-texto-display{color:var(--text-faint)}
.ck-sub-del{opacity:0;background:transparent;border:none;color:var(--text-faint);font-size:13px;cursor:pointer;width:20px;height:20px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .12s}
.ck-sub-del:hover{background:var(--warn-soft);color:var(--warn)}
.ck-sub .ck-input{font-size:12.5px}
/* Rotinas - tipo selector */
.rot-tipo-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.rot-tipo-card{display:flex;align-items:flex-start;gap:10px;padding:12px;border:2px solid var(--border);border-radius:10px;background:var(--bg-soft);cursor:pointer;text-align:left;transition:all .15s;font-family:inherit;color:var(--text)}
.rot-tipo-card:hover{border-color:var(--border-strong);background:var(--bg-card)}
.rot-tipo-card.ativo{border-color:var(--c-green-d);background:var(--c-green-soft)}
[data-theme="dark"] .rot-tipo-card.ativo{border-color:var(--c-green);background:rgba(123,194,66,.08)}
.rot-tipo-icone{font-size:22px;line-height:1;flex-shrink:0}
.rot-tipo-card strong{display:block;font-size:13px;color:var(--text);margin-bottom:2px}
.rot-tipo-card span{display:block;font-size:11.5px;color:var(--text-muted);line-height:1.3}
/* Tag de tipo no item da rotina */
.rot-tipo-tag{display:inline-block;font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--c-navy-soft);color:var(--c-navy);margin-left:6px;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}
[data-theme="dark"] .rot-tipo-tag{background:rgba(123,194,66,.14);color:var(--c-green)}
.rot-check-item.sync{border-left:3px solid var(--c-navy)}
[data-theme="dark"] .rot-check-item.sync{border-left-color:var(--c-green)}
/* Chip de quem marcou */
.rot-check-quem{display:inline-flex;align-items:center;gap:6px;padding:2px 8px 2px 2px;background:var(--bg-card);border:1px solid var(--border);border-radius:999px;margin-left:auto;flex-shrink:0}
.rot-check-quem img{width:20px;height:20px;border-radius:50%;background:var(--bg-soft)}
.rot-check-quem-info{display:flex;flex-direction:column;line-height:1.15}
.rot-check-quem-nome{font-size:11px;font-weight:600;color:var(--text-soft)}
.rot-check-quem-data{font-size:9.5px;color:var(--text-faint);font-variant-numeric:tabular-nums}
.rot-check-data{font-size:10.5px;color:var(--text-muted);margin-left:auto;flex-shrink:0;font-variant-numeric:tabular-nums}
.rot-check-lbl{display:flex;align-items:center;gap:10px;width:100%}
.rot-admin-tipo{font-weight:600;color:var(--c-navy)}
[data-theme="dark"] .rot-admin-tipo{color:var(--c-green)}
/* Histórico de atividade */
.hist-lista{display:flex;flex-direction:column;gap:6px;max-height:280px;overflow-y:auto}
.hist-item{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;background:var(--bg-soft);border-radius:8px;font-size:12.5px}
.hist-av img{width:24px;height:24px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card)}
.hist-info{flex:1;min-width:0}
.hist-linha{color:var(--text);line-height:1.4}
.hist-linha em{color:var(--text-muted);font-style:normal}
.hist-data{font-size:10.5px;color:var(--text-faint);margin-top:2px;font-variant-numeric:tabular-nums}
/* Menções em comentários */
.mencao{display:inline-block;padding:1px 6px;background:var(--c-navy-soft);color:var(--c-navy);border-radius:4px;font-weight:600}
[data-theme="dark"] .mencao{background:rgba(123,194,66,.14);color:var(--c-green)}
.mencao-menu{position:fixed;background:var(--bg-card);border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow-lg);padding:4px;z-index:99999;min-width:180px;animation:tbMenuIn .12s ease-out}
.mencao-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px}
.mencao-item:hover{background:var(--bg-hover)}
.mencao-item img{width:20px;height:20px;border-radius:50%}
/* Filtros salvos */
.filtros-salvos{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.filtros-salvos-titulo{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin:6px 0 2px;padding:0 2px}
.filtro-salvo-item{display:flex;gap:4px;align-items:stretch}
.filtro-aplicar{flex:1;padding:6px 10px;background:var(--bg-soft);border:1px solid var(--border);border-radius:7px;color:var(--text-soft);font-size:12px;font-weight:500;cursor:pointer;text-align:left;font-family:inherit}
.filtro-aplicar:hover{background:var(--bg-card);color:var(--text)}
.filtro-del{padding:0 9px;background:transparent;border:1px solid var(--border);border-radius:7px;color:var(--text-faint);font-size:14px;cursor:pointer;font-family:inherit}
.filtro-del:hover{background:var(--warn-soft);color:var(--warn);border-color:var(--warn)}
/* Mini-nav mes/ano no calendario */
.cal-sel{appearance:none;-webkit-appearance:none;background:transparent;border:1px solid var(--border);border-radius:8px;padding:6px 26px 6px 12px;font-size:15px;font-weight:700;color:var(--text);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='none' stroke='%239ca3af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3 4.5L6 7.5L9 4.5'/></svg>");background-repeat:no-repeat;background-position:right 8px center;margin-right:8px;font-family:inherit;transition:border-color .15s}
.cal-sel:hover{border-color:var(--border-strong);background-color:var(--bg-hover)}
.cal-sel:focus{outline:none;border-color:var(--c-navy);box-shadow:0 0 0 3px var(--focus-ring)}
[data-theme="dark"] .cal-sel:focus{border-color:var(--c-green)}
/* Modo TV / Apresentacao */
/* ============================================================
   Modo TV "Big Picture" — Steam-like full-screen shell
   ============================================================ */
.tv-bp{position:fixed;inset:0;z-index:99999;display:flex;flex-direction:column;background:#0a0c10;color:#E8EAEC;font-family:inherit;overflow:hidden;outline:none;animation:tvFade .3s ease-out}
.tv-bp-bg{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.tv-bp-blob{position:absolute;width:780px;height:780px;border-radius:50%;filter:blur(120px);opacity:.32;animation:tvBlob 22s ease-in-out infinite}
.tv-bp-blob.a{background:#7BC242;top:-180px;left:-180px}
.tv-bp-blob.b{background:#3b82f6;bottom:-200px;right:-200px;animation-delay:-11s}
@keyframes tvBlob{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(80px,-40px) scale(1.1)}}
.tv-bp > *{position:relative;z-index:1}
.tv-bp-top{display:flex;align-items:center;justify-content:space-between;padding:18px 36px 14px;border-bottom:1px solid rgba(255,255,255,.06)}
.tv-bp-brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:800;letter-spacing:.01em}
.tv-bp-brand em{font-style:normal;font-weight:500;color:#7BC242;letter-spacing:.06em;font-size:13px;margin-left:2px}
.tv-bp-status{display:flex;align-items:center;gap:12px}
.tv-bp-chip{font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.78);letter-spacing:.02em}
.tv-bp-chip b{color:#fff;margin-left:4px}
.tv-bp-clock{font-size:22px;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:.02em;padding:0 6px}
.tv-bp-close{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);color:#fff;font-size:22px;cursor:pointer;transition:background .15s,transform .15s}
.tv-bp-close:hover{background:rgba(255,255,255,.12);transform:scale(1.05)}

.tv-bp-rotbar{height:3px;background:rgba(255,255,255,.04);overflow:hidden;display:none}
.tv-bp-rotbar.ativo{display:block}
.tv-bp-rotfill{height:100%;width:0%;background:linear-gradient(90deg,#7BC242,#3b82f6);transition:width 1s linear}

.tv-bp-body{position:relative;min-height:0;overflow:hidden;flex:1 1 auto}

/* Handle na borda esquerda — sempre visivel, pulsa de leve pra indicar */
.tv-bp-handle{position:absolute;top:50%;left:0;transform:translateY(-50%);z-index:6;width:30px;height:84px;border:none;border-radius:0 14px 14px 0;background:rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.08);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:background .2s,width .2s,opacity .25s}
.tv-bp-handle:hover{background:rgba(123,194,66,.18);width:36px}
.tv-bp-handle span{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.55);transition:background .2s}
.tv-bp-handle:hover span{background:#7BC242}
.tv-bp.nav-aberta .tv-bp-handle{opacity:0;pointer-events:none}

/* Sidebar overlay (escondida por padrao, desliza) */
.tv-bp-nav{position:absolute;left:0;top:0;bottom:0;width:268px;z-index:7;display:flex;flex-direction:column;gap:6px;padding:24px 16px;background:rgba(9,11,15,.97);backdrop-filter:blur(16px);border-right:1px solid rgba(255,255,255,.08);box-shadow:14px 0 50px rgba(0,0,0,.5);transform:translateX(-104%);transition:transform .26s cubic-bezier(.22,1,.36,1)}
.tv-bp.nav-aberta .tv-bp-nav{transform:translateX(0)}
.tv-bp-nav-hint{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.4);font-weight:700;padding:4px 12px 12px}
.tv-bp-tab{display:grid;grid-template-columns:30px 1fr 22px;align-items:center;gap:10px;padding:13px 14px;border:1.5px solid transparent;border-radius:12px;background:transparent;color:rgba(255,255,255,.7);font-size:15px;font-weight:600;cursor:pointer;text-align:left;transition:background .15s,border-color .15s,color .15s,transform .15s}
.tv-bp-tab:hover{background:rgba(255,255,255,.04);color:#fff}
.tv-bp-tab.active{color:#fff}
.tv-bp-tab.active .tv-bp-tab-ic{filter:drop-shadow(0 0 8px rgba(123,194,66,.7))}
.tv-bp-tab.active .tv-bp-tab-lbl::after{content:'●';color:#7BC242;font-size:9px;margin-left:8px;vertical-align:middle}
/* foco de teclado no menu (Big Picture highlight) */
.tv-bp-tab.navfoco{background:rgba(123,194,66,.15);border-color:#7BC242;color:#fff;transform:translateX(3px);box-shadow:0 0 0 1px rgba(123,194,66,.25),0 8px 28px rgba(123,194,66,.22)}
.tv-bp-tab-ic{font-size:18px;color:#7BC242;text-align:center}
.tv-bp-tab-key{font-size:11px;color:rgba(255,255,255,.35);font-weight:700;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:5px;padding:1px 5px;background:rgba(0,0,0,.25)}

/* leve escurecida do conteudo quando o menu abre */
.tv-bp-cena{padding:28px 40px 24px 52px;overflow-y:auto;overflow-x:hidden;height:100%;transition:filter .26s ease;
  display:flex;flex-direction:column;justify-content:flex-start}
/* O bloco principal de cada cena cresce pra preencher a altura (sem vazio no topo) */
.tv-bp-dash-bot{flex:1 1 auto;min-height:0}
.tv-bp-grid{flex:0 0 auto;align-content:start}
.tv-bp-kanban{flex:1 1 auto;min-height:0}
.tv-bp-empty{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center}
.tv-bp.nav-aberta .tv-bp-cena{filter:brightness(.5) blur(1px)}
.tv-bp-cena::-webkit-scrollbar{width:8px}
.tv-bp-cena::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:8px}
.tv-bp-cena-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}
.tv-bp-cena-head h1{margin:0;font-size:42px;font-weight:800;letter-spacing:-.025em;background:linear-gradient(135deg,#fff 0%,#7BC242 120%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.tv-bp-cena-sub{color:rgba(255,255,255,.55);font-size:14px;font-weight:500;letter-spacing:.03em;text-transform:lowercase}

/* KPIs gigantes */
.tv-bp-kpis-xl{display:grid;grid-template-columns:repeat(7,1fr);gap:14px;margin-bottom:24px}
.tv-bp-kpi{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:18px 14px;display:flex;flex-direction:column;align-items:center;gap:4px;backdrop-filter:blur(8px)}
.tv-bp-kpi b{font-size:46px;font-weight:800;line-height:1;letter-spacing:-.03em;color:#fff}
.tv-bp-kpi span{font-size:11px;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.tv-bp-kpi.warn{background:rgba(220,38,38,.13);border-color:rgba(220,38,38,.3)}.tv-bp-kpi.warn b{color:#FCA5A5}
.tv-bp-kpi.info{background:rgba(245,158,11,.13);border-color:rgba(245,158,11,.3)}.tv-bp-kpi.info b{color:#FCD34D}
.tv-bp-kpi.ok{background:rgba(123,194,66,.12);border-color:rgba(123,194,66,.32)}.tv-bp-kpi.ok b{color:#A6E27A}

.tv-bp-dash-bot{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tv-bp-panel{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:20px 22px}
.tv-bp-panel h3{margin:0 0 14px;font-size:15px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.65);font-weight:700}
.tv-bp-toplist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.tv-bp-toplist li{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:6px 4px;font-size:15px}
.tv-bp-toplist img{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.12)}
.tv-bp-toplist b{font-size:22px;color:#7BC242;font-weight:800}
.tv-bp-toplist li.vazio{color:rgba(255,255,255,.4);display:block;text-align:center;padding:20px;font-style:italic}
.tv-bp-bar{display:grid;grid-template-columns:120px 1fr 50px;align-items:center;gap:14px;padding:8px 0;font-size:14px}
.tv-bp-bar > span{color:rgba(255,255,255,.7)}
.tv-bp-bar .bar{height:10px;background:rgba(255,255,255,.06);border-radius:6px;overflow:hidden}
.tv-bp-bar .bar > div{height:100%;background:linear-gradient(90deg,#7BC242,#3b82f6);border-radius:6px;transition:width .5s ease}
.tv-bp-bar b{text-align:right;color:#fff;font-weight:700}

/* Grids de tiles */
.tv-bp-grid{display:grid;gap:14px}
.tv-bp-grid-tarefas{grid-template-columns:repeat(4,minmax(0,1fr))}
.tv-bp-grid-pessoas{grid-template-columns:repeat(5,minmax(0,1fr))}
.tv-bp-grid-rotinas{grid-template-columns:repeat(3,minmax(0,1fr))}
.tv-bp-tile{background:rgba(255,255,255,.04);border:1.5px solid rgba(255,255,255,.07);border-radius:14px;padding:16px 16px 14px;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .25s ease;outline:none}
.tv-bp-tile:hover{background:rgba(255,255,255,.07)}
.tv-bp-tile.focado{border-color:#7BC242;background:rgba(123,194,66,.10);transform:translateY(-2px) scale(1.015);box-shadow:0 0 0 2px rgba(123,194,66,.25),0 14px 36px rgba(123,194,66,.22),inset 0 0 0 1px rgba(123,194,66,.4)}

.tv-bp-tile-tarefa header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.tv-bp-num{font-size:12px;font-weight:700;color:rgba(255,255,255,.45);letter-spacing:.04em}
.tv-bp-st{font-size:10px;font-weight:800;padding:3px 9px;border-radius:999px;letter-spacing:.06em;text-transform:uppercase}
.tv-bp-st.st-pend{background:rgba(148,163,184,.18);color:#cbd5e1}
.tv-bp-st.st-and,.tv-bp-st.st-emandamento{background:rgba(59,130,246,.18);color:#93c5fd}
.tv-bp-st.st-rev,.tv-bp-st.st-revisão,.tv-bp-st.st-revisao{background:rgba(245,158,11,.18);color:#FCD34D}
.tv-bp-st.st-ok,.tv-bp-st.st-concluido{background:rgba(123,194,66,.2);color:#A6E27A}
.tv-bp-tile-tarefa h4{margin:2px 0 4px;font-size:17px;font-weight:700;color:#fff;letter-spacing:-.01em;line-height:1.2}
.tv-bp-tile-tarefa p{margin:0 0 12px;font-size:13px;color:rgba(255,255,255,.6)}
.tv-bp-tile-tarefa p em{color:rgba(255,255,255,.35);font-style:italic}
.tv-bp-tile-tarefa footer{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid rgba(255,255,255,.06);padding-top:10px}
.tv-bp-prazo{font-size:12px;font-weight:700;color:rgba(255,255,255,.7)}
.tv-bp-prazo.warn{color:#FCA5A5}.tv-bp-prazo.info{color:#FCD34D}
.tv-bp-resp{display:flex;align-items:center;gap:6px;font-size:12px;color:rgba(255,255,255,.7)}
.tv-bp-resp img{width:22px;height:22px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15)}
.tv-bp-resp.sem{color:rgba(255,255,255,.35);font-style:italic}

.tv-bp-tile-pessoa{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 14px 18px}
.tv-bp-tile-pessoa .av{width:72px;height:72px;border-radius:50%;border:2.5px solid rgba(255,255,255,.15)}
.tv-bp-tile-pessoa.focado .av{border-color:#7BC242}
.tv-bp-tile-pessoa h4{margin:2px 0 0;font-size:15px;font-weight:700;color:#fff}
.tv-bp-pess-stats{display:flex;gap:14px;margin-top:6px}
.tv-bp-pess-stats span{display:flex;flex-direction:column;align-items:center;font-size:10px;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.tv-bp-pess-stats span b{font-size:22px;font-weight:800;color:#fff;line-height:1;margin-bottom:2px}
.tv-bp-pess-stats span.warn b{color:#FCA5A5}
.tv-bp-pess-stats span.info b{color:#FCD34D}

.tv-bp-tile-rot{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;padding:16px}
.tv-bp-rot-check{width:48px;height:48px;border-radius:50%;border:2.5px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:24px;color:rgba(255,255,255,.55);font-weight:700;transition:all .2s}
.tv-bp-tile-rot.feita .tv-bp-rot-check{background:#7BC242;border-color:#7BC242;color:#0a0c10}
.tv-bp-tile-rot.feita h4{text-decoration:line-through;opacity:.55}
.tv-bp-rot-info h4{margin:0 0 4px;font-size:16px;color:#fff;font-weight:700}
.tv-bp-rot-info span{font-size:12px;color:rgba(255,255,255,.55)}

/* Kanban */
.tv-bp-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tv-bp-col{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}
.tv-bp-col header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:8px}
.tv-bp-col h3{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.7)}
.tv-bp-col header span{font-size:13px;font-weight:700;color:#7BC242;background:rgba(123,194,66,.13);border:1px solid rgba(123,194,66,.3);padding:1px 9px;border-radius:999px}
.tv-bp-mini{padding:10px 12px;border-radius:8px;background:rgba(255,255,255,.04);border:1.5px solid transparent;cursor:pointer;display:flex;flex-direction:column;gap:3px}
.tv-bp-mini.focado{border-color:#7BC242;box-shadow:0 0 0 2px rgba(123,194,66,.2)}
.tv-bp-mini strong{font-size:13px;color:#fff;font-weight:700}
.tv-bp-mini span{font-size:11px;color:rgba(255,255,255,.55)}
.tv-bp-mini.vazio{cursor:default;color:rgba(255,255,255,.25);text-align:center;font-style:italic;border:1px dashed rgba(255,255,255,.1)}

.tv-bp-empty{text-align:center;padding:30px 20px;font-size:20px;color:rgba(255,255,255,.4)}

/* Rodape de atalhos */
.tv-bp-foot{display:flex;justify-content:center;gap:24px;padding:12px 36px;background:rgba(0,0,0,.4);border-top:1px solid rgba(255,255,255,.06);font-size:12px;color:rgba(255,255,255,.55);letter-spacing:.02em}
.tv-bp-foot kbd{display:inline-block;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:5px;padding:2px 7px;font-size:11px;font-weight:700;font-family:inherit;color:#fff;margin:0 3px}

/* Detalhe overlay */
.tv-bp-detail{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);z-index:100000;display:flex;align-items:center;justify-content:center;padding:60px;animation:tvFade .2s ease-out}
.tv-bp-detail[hidden]{display:none}
.tv-bp-detail-card{background:#13161a;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:32px 36px;max-width:900px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.tv-bp-detail-card header{display:flex;align-items:center;gap:14px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.06)}
.tv-bp-detail-card header h2{margin:0;font-size:28px;font-weight:800;color:#fff;flex:1}
.tv-bp-detail-card .av{width:50px;height:50px;border-radius:50%;border:2px solid rgba(255,255,255,.15)}
.tv-bp-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}
.tv-bp-detail-grid > div{background:rgba(255,255,255,.04);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.tv-bp-detail-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.45);font-weight:600}
.tv-bp-detail-grid b{font-size:16px;color:#fff;font-weight:700}
.tv-bp-detail-desc{margin-bottom:18px;background:rgba(255,255,255,.03);border-radius:10px;padding:14px 16px}
.tv-bp-detail-desc span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.45);font-weight:600;display:block;margin-bottom:6px}
.tv-bp-detail-desc p{margin:0;font-size:14px;color:rgba(255,255,255,.85);line-height:1.5;white-space:pre-wrap}
.tv-bp-detail-ck{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:rgba(255,255,255,.03);border-radius:10px;font-size:14px;color:rgba(255,255,255,.7)}
.tv-bp-detail-ck > div.ok{color:#A6E27A;text-decoration:line-through;opacity:.7}
.tv-bp-detail-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.tv-bp-detail-list > div{padding:10px 14px;background:rgba(255,255,255,.04);border-radius:8px;font-size:14px;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:8px}
.tv-bp-detail-list span{margin-left:auto;font-size:12px;font-weight:700;color:rgba(255,255,255,.6)}
.tv-bp-detail-list span.warn{color:#FCA5A5}
.tv-bp-detail-list .vazio{color:rgba(255,255,255,.4);justify-content:center;font-style:italic}
.tv-bp-detail-card footer{margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);text-align:center;font-size:12px;color:rgba(255,255,255,.5)}
.tv-bp-detail-card footer kbd{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:5px;padding:2px 7px;color:#fff;font-weight:700;margin:0 3px}

@media (max-width: 1280px){
  .tv-bp-grid-tarefas{grid-template-columns:repeat(3,1fr)}
  .tv-bp-grid-pessoas{grid-template-columns:repeat(4,1fr)}
  .tv-bp-kpis-xl{grid-template-columns:repeat(4,1fr)}
}

/* Estilos antigos (mantidos pra compatibilidade caso outra view use) */
.tv-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#0a0c10 0%,#1a1f3d 100%);color:#fff;z-index:99999;padding:36px 48px;display:flex;flex-direction:column;font-family:inherit;animation:tvFade .3s ease-out}
@keyframes tvFade{from{opacity:0}to{opacity:1}}
.tv-close{position:absolute;top:20px;right:24px;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}
.tv-close:hover{background:rgba(255,255,255,.2);transform:scale(1.05)}
.tv-clock{position:absolute;top:24px;left:32px;font-size:24px;font-weight:700;color:rgba(255,255,255,.9);font-variant-numeric:tabular-nums}
.tv-content{flex:1;display:flex;flex-direction:column;gap:40px;margin-top:60px;max-width:1600px;width:100%;align-self:center}
.tv-header{display:flex;justify-content:space-between;align-items:baseline}
.tv-header h1{margin:0;font-size:52px;font-weight:800;letter-spacing:-.02em;background:linear-gradient(135deg,#7BC242 0%,#fff 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.tv-data{font-size:18px;color:rgba(255,255,255,.7);text-transform:capitalize}
.tv-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.tv-kpi{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px 20px;display:flex;flex-direction:column;align-items:center;gap:6px;backdrop-filter:blur(8px);transition:transform .2s}
.tv-kpi:hover{transform:translateY(-3px)}
.tv-kpi.warn{background:rgba(220,38,38,.15);border-color:rgba(220,38,38,.3)}
.tv-kpi.info{background:rgba(245,158,11,.15);border-color:rgba(245,158,11,.3)}
.tv-kpi-val{font-size:64px;font-weight:800;line-height:1;letter-spacing:-.03em}
.tv-kpi.warn .tv-kpi-val{color:#FCA5A5}
.tv-kpi.info .tv-kpi-val{color:#FCD34D}
.tv-kpi-lbl{font-size:13px;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.tv-ranking h2{font-size:22px;font-weight:700;margin:0 0 16px;color:rgba(255,255,255,.85)}
.tv-ranking-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.tv-pessoa{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:18px;display:flex;flex-direction:column;align-items:center;gap:8px}
.tv-pessoa img{width:64px;height:64px;border-radius:50%;border:2px solid rgba(255,255,255,.15)}
.tv-pessoa strong{font-size:14px;font-weight:600}
.tv-pessoa span{font-size:24px;font-weight:800;color:#7BC242}

