/* estilo base e responsivo */ 
*{box-sizing:border-box;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,"Inter",Roboto,"Helvetica Narrow",Arial,sans-serif;}
body{margin:0;background:#eef3f8;color:#1e293b;font-size:14px;line-height:1.4;}
.hidden{display:none!important;}
.hidden-file{display:none!important;}
.full{width:100%;}
.fade-in{animation:fadeIn .6s ease both;}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.profile-change{font-size:11px;color:#0b5ed7;cursor:pointer;text-decoration:underline;display:inline-block;margin-top:4px;}
.profile-change:hover{color:#0847a9;}
.layout{display:flex;min-height:100vh;}
.sidebar{width:200px;background:linear-gradient(#ffffff,#eef3f8);border-right:1px solid #cbd5e1;padding:16px;display:flex;flex-direction:column;gap:12px;}
.sidebar-logo-fit{width:96px;max-width:96px;max-height:96px;object-fit:contain;border-radius:6px;margin:0 auto 8px auto;}
.profile-box{text-align:center;padding-bottom:16px;border-bottom:1px solid #cbd5e1;}
.profile-photo{width:96px;height:96px;border-radius:100px;background:#6b7280;color:#fff;font-size:12px;line-height:1.3;display:flex;align-items:center;justify-content:center;text-align:center;margin:0 auto 8px auto;padding:8px;background-size:cover;background-position:center;}
.profile-info{font-size:13px;}
.profile-name{font-weight:600;color:#1e293b;}
.profile-role{color:#64748b;font-size:12px;}
.side-btn{width:100%;border:0;border-radius:4px;padding:8px 10px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;text-align:left;}
.btn-blue{background:#0074c7;box-shadow:0 2px 4px rgba(0,0,0,.15);}
.btn-blue-light{background:#0086d9;box-shadow:0 2px 4px rgba(0,0,0,.15);}
.btn-red{background:#c70f0f;box-shadow:0 2px 4px rgba(0,0,0,.2);}
.btn-gray-sm{background:#475569;color:#fff;padding:6px 10px;font-size:12px;font-weight:500;border-radius:4px;border:0;cursor:pointer;}
.btn-gray-sm:hover{background:#1e293b;}
.btn-blue:hover{background:#0847a9;}
.btn-red:hover{background:#b91c1c;}
.content-area{flex:1;padding:16px;background:linear-gradient(#eef3f8 0%,rgba(255,255,255,0) 400px);}
.content-view{display:block;}
.content-view.hidden{display:none;}
.panel{background:#fff;border:1px solid #d1d9e6;border-radius:4px;box-shadow:0 4px 10px rgba(0,0,0,.05);margin-bottom:16px;padding:16px;}
.panel-header{border-bottom:1px solid #d1d9e6;margin:-16px -16px 16px -16px;padding:12px 16px;background:linear-gradient(to right,#f8fafc 0%,#eef3f8 100%);border-radius:4px 4px 0 0;font-weight:600;color:#1e293b;font-size:15px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;}
.content-header{background:#fff;border:1px solid #d1d9e6;border-radius:4px;box-shadow:0 4px 10px rgba(0,0,0,.05);margin-bottom:16px;}
.header-top{padding:16px;border-bottom:1px solid #d1d9e6;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;}
.header-left{display:flex;gap:12px;align-items:flex-start;}
.logo{height:32px;object-fit:contain;}
.login-logo{height:48px;}
.logo-small{height:28px;object-fit:contain;}
.page-title{margin:0;font-size:20px;font-weight:600;color:#1e293b;}
.page-desc{margin:2px 0 0 0;color:#475569;font-size:13px;line-height:1.3;}
.page-desc strong{font-weight:600;color:#1e293b;}
.cards-row{display:flex;flex-wrap:wrap;gap:12px;padding:16px;}
.kpi-card{flex:1;min-width:150px;background:#fff;border:1px solid #d1d9e6;border-radius:4px;box-shadow:0 4px 8px rgba(0,0,0,.04),0 2px 2px rgba(0,0,0,.03);display:flex;align-items:center;padding:12px;}
.kpi-icon{width:38px;height:38px;border-radius:6px;color:#fff;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;margin-right:10px;}
.kpi-text{flex:1;}
.kpi-label{font-size:12px;color:#475569;line-height:1.2;margin-bottom:4px;}
.kpi-value{font-size:20px;font-weight:600;color:#1e293b;line-height:1.1;}
.kpi-roxo .kpi-icon{background:#6f42c1;}
.kpi-verde .kpi-icon{background:#198754;}
.kpi-laranja .kpi-icon{background:#fd7e14;}
.kpi-amarelo .kpi-icon{background:#facc15;color:#1e293b;font-weight:700;}
.two-panels{display:flex;flex-wrap:wrap;gap:16px;}
.panel-form{flex:0 0 260px;max-width:260px;}
.panel-table{flex:1;min-width:260px;}
.gestor-flex{display:flex;flex-wrap:wrap;gap:16px;}
.gestor-col-form{flex:0 0 260px;max-width:260px;}
.gestor-col-cards{flex:1;min-width:260px;}
.form-group{margin-bottom:12px;}
.form-group label{display:block;font-size:13px;font-weight:600;color:#1e293b;margin-bottom:4px;}
.input{width:100%;border:1px solid #94a3b8;border-radius:4px;padding:8px 10px;font-size:13px;line-height:1.4;color:#1e293b;background:#fff;}
.input:focus{outline:2px solid #0ea5e9;border-color:#0ea5e9;}
.textarea{min-height:70px;resize:vertical;}
.input-sm{padding:6px 8px;font-size:12px;max-width:200px;}
.btn{border:0;border-radius:4px;cursor:pointer;font-weight:600;line-height:1.2;font-size:13px;padding:8px 12px;display:inline-block;text-align:center;color:#fff;}
.table-wrapper{overflow-x:auto;border:1px solid #d1d9e6;border-radius:4px;background:#fff;box-shadow:0 4px 10px rgba(0,0,0,.03);}
.task-table{width:100%;border-collapse:collapse;min-width:600px;font-size:13px;}
.task-table thead tr{background:#f8fafc;}
.task-table th,.task-table td{border-bottom:1px solid #d1d9e6;padding:10px 12px;text-align:left;vertical-align:top;color:#1e293b;}
.task-table th{font-size:13px;font-weight:600;}
.th-sub{font-weight:400;color:#475569;font-size:11px;}
.w40{width:40%;}
.w-actions{width:180px;min-width:180px;}
.action-bar{display:flex;flex-wrap:wrap;gap:6px;max-width:120px;}
.action-btn{flex:0 0 calc(50% - 3px);text-align:center;border-radius:4px;color:#fff;font-size:12px;font-weight:500;line-height:1.2;padding:8px 0;cursor:pointer;border:0;}
.btn-ok{background:#0b5ed7;}
.btn-wait{background:#facc15;color:#1e293b;font-weight:600;}
.btn-edit{background:#198754;}
.btn-del{background:#dc2626;}
.btn-chat{background:#8b5cf6;} 
.btn-whats{background:#25D366; color:#fff;}
.action-btn:hover{filter:brightness(.9);}
.flag-aguarda{background:#facc15;color:#1e293b;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;display:inline-block;line-height:1.2;margin-left:4px;}
.flag-atrasada{background:#dc2626;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;display:inline-block;line-height:1.2;margin-left:4px;}
.resp-wrapper{display:flex;align-items:flex-start;gap:8px;line-height:1.2;}
.resp-foto{width:32px;height:32px;border-radius:999px;background:#6b7280;background-size:cover;background-position:center;border:1px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.25);flex-shrink:0;}
.resp-info{font-size:12px;color:#1e293b;}
.resp-nome{font-weight:600;color:#1e293b;}
.resp-cargo{font-size:11px;color:#475569;}
.msg-error{font-size:12px;color:#dc2626;margin-top:8px;min-height:16px;}
.msg-ok{font-size:12px;color:#198754;margin-top:6px;min-height:16px;text-align:left;}
.footer{text-align:center;font-size:12px;color:#475569;padding:16px 0 0;}
.filtros-linha{display:flex;flex-wrap:wrap;gap:8px;}
.history-filtros{display:flex;flex-wrap:wrap;gap:8px;}

/* LOGIN SCREEN */
.login-screen-bg{
  min-height:100vh;
  width:100%;
  background-image:url('background.png');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  display:flex;
  align-items:center;
  justify-content: center;
  opacity: 1;
  transition: opacity 1s ease;
}
.login-screen-bg.hidden-start { display: none; opacity: 0; }
.login-screen-bg.active { display: flex; opacity: 1; }

@media (max-width: 768px) {
  .login-screen-bg { background-image: url('background_mobile.png'); }
}

.login-position-wrapper{ width:100%; display:flex; align-items:center; justify-content: center; }
.login-wrapper{
  max-width:320px;
  background:rgba(255,255,255,0.9);
  border-radius:6px;
  box-shadow:0 20px 40px rgba(0,0,0,.25);
  border:1px solid rgba(255,255,255,0.6);
  backdrop-filter:blur(4px);
}
.login-card-compact{ margin: 0; }
.login-header{margin-bottom:16px;text-align:center;}
.login-title{font-size:18px;font-weight:600;color:#1e293b;margin:8px 0 4px;}
.login-sub{font-size:13px;margin:0;color:#475569;}

/* INTRO VIDEO */
.intro-overlay {
  position: fixed; top: 0; left: 0; width: 100vw; height: 100vh;
  background-color: #000; z-index: 999999;
  display: flex; align-items: center; justify-content: center;
  transition: opacity 0.5s ease;
}
.intro-overlay video { width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.fade-out-overlay { opacity: 0; }

.modal{position:fixed;left:0;top:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:9999;}
.modal.hidden{display:none;}
.modal-card{background:#fff;border-radius:6px;box-shadow:0 20px 50px rgba(0,0,0,.3);padding:16px;width:90%;max-width:320px;}
.modal-card h3{margin:0 0 12px;font-size:16px;font-weight:600;color:#1e293b;}
.modal-actions{display:flex;justify-content:space-between;gap:8px;}
.colab-card-grid{display:flex;flex-wrap:wrap;gap:16px;}
.colab-card{background:#e5e5e5;border:1px solid #bfbfbf;border-radius:6px;box-shadow:0 4px 8px rgba(0,0,0,.08);width:260px;max-width:100%;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;}
.colab-foto{width:110px;height:110px;border-radius:999px;background:#6b7280;background-size:cover;background-position:center;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;font-size:13px;color:#1e293b;font-weight:500;}
.colab-nome{margin-top:12px;font-size:15px;font-weight:600;color:#1e293b;line-height:1.2;}
.colab-cargo{font-size:13px;color:#475569;margin-top:4px;}
.colab-kpis{margin-top:12px;display:flex;width:100%;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.15);font-size:12px;font-weight:600;color:#fff;text-align:center;}
.colab-kpi-block{flex:1;padding:8px 4px;line-height:1.2;}
.kpi-pend{background:#0b5ed7;color:#fff;}
.kpi-aguard{background:#facc15;color:#1e293b;}
.kpi-atras{background:#dc2626;color:#fff;}
.colab-kpi-num{font-size:16px;font-weight:700;display:block;}
.colab-actions-inline{margin-top:12px;display:flex;gap:8px;}
.colab-edit-btn,.colab-del-btn{border:0;border-radius:4px;color:#fff;font-size:12px;font-weight:600;padding:6px 10px;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,.2);}
.colab-del-btn{background:#dc2626;}
.colab-edit-btn{background:#198754;}
.colab-del-btn:hover,.colab-edit-btn:hover{filter:brightness(.9);}
.crono-header{background:#0074c7;color:#fff;padding:16px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;box-shadow:0 4px 10px rgba(0,0,0,.2);}
.crono-header img{height:48px;max-width:120px;object-fit:contain;background:#fff;border-radius:4px;padding:6px;}
.crono-header-title{font-size:18px;font-weight:600;line-height:1.3;}
.crono-wrapper{padding:16px;}
.crono-grid{display:flex;flex-wrap:wrap;gap:16px;}
.crono-card{background:#fff;border:1px solid #d1d9e6;border-radius:6px;box-shadow:0 4px 10px rgba(0,0,0,.07);width:320px;max-width:100%;padding:16px;}
.crono-top{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid #d1d9e6;padding-bottom:12px;margin-bottom:12px;}
.crono-foto{width:64px;height:64px;border-radius:999px;background:#6b7280;background-size:cover;background-position:center;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.25);}
.crono-id{flex:1;min-width:0;}
.crono-nome{font-size:15px;font-weight:600;color:#1e293b;line-height:1.2;}
.crono-cargo{font-size:13px;color:#475569;line-height:1.3;margin-top:2px;}
.crono-tarefas-section{font-size:13px;margin-bottom:12px;}
.crono-sec-title{display:flex;align-items:center;gap:6px;font-weight:600;margin-bottom:4px;line-height:1.2;}
.crono-sec-title span.badge-pend{background:#0b5ed7;color:#fff;}
.crono-sec-title span.badge-aguard{background:#facc15;color:#1e293b;font-weight:700;}
.crono-sec-title span.badge-atras{background:#dc2626;color:#fff;}
.crono-sec-title span.badge{border-radius:4px;padding:2px 6px;font-size:11px;line-height:1.2;min-width:70px;text-align:center;}
.crono-list{border-left:2px solid #d1d9e6;padding-left:8px;}
.crono-item{margin-bottom:8px;line-height:1.3;color:#1e293b;}
.crono-item-titulo{font-weight:600;}
.crono-item-prazo{font-size:12px;color:#475569;}
.toast{position:fixed;right:16px;bottom:16px;background:#1e293b;color:#fff;font-size:13px;font-weight:600;line-height:1.3;padding:10px 14px;border-radius:6px;box-shadow:0 20px 40px rgba(0,0,0,.4);z-index:99999;opacity:0;transform:translateY(10px);transition:all .25s ease;}
.toast.show{opacity:1;transform:translateY(0);}
@media(max-width:900px){
  .two-panels{flex-direction:column;}
  .panel-form{max-width:100%;flex:1;}
  .gestor-flex{flex-direction:column;}
  .gestor-col-form{max-width:100%;flex:1;}
  .gestor-col-cards{min-width:100%;}
}
@media(max-width:700px){
  .sidebar{width:180px;}
  .header-top{flex-direction:column;align-items:flex-start;}
}

/* ======================================================
   PRODUTOS & BRINDES
   ====================================================== */
.produtos-layout{display:flex;flex-direction:column;gap:16px;}
@media(min-width:880px){.produtos-layout{flex-direction:row;align-items:flex-start;}.produtos-form{flex:0 0 320px;}.produtos-lista{flex:1;}}
.produtos-grid{display:flex;flex-wrap:wrap;gap:12px;}
.produtos-empty{font-size:13px;color:#64748b;}
.produto-card{background:#f8fafc;border:1px solid #d1d9e6;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;box-shadow:0 2px 6px rgba(15,23,42,.08);min-width:220px;}
.produto-thumb{width:52px;height:52px;border-radius:12px;background:#e2e8f0;background-size:cover;background-position:center;flex-shrink:0;}
.produto-info{flex:1;min-width:0;}
.produto-nome{font-size:14px;font-weight:600;color:#0f172a;margin-bottom:2px;}
.produto-meta{font-size:11px;color:#64748b;}
.produto-actions{flex-shrink:0;}
.produto-del-btn{border:0;border-radius:6px;padding:6px 10px;font-size:11px;cursor:pointer;background:#dc2626;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2);}
.produto-del-btn:hover{filter:brightness(.9);}

.brindes-layout{display:flex;flex-direction:column;gap:16px;}
@media(min-width:880px){.brindes-layout{flex-direction:row;align-items:flex-start;}.brindes-form{flex:0 0 320px;}.brindes-lista{flex:1;}}
.brindes-grid{display:flex;flex-wrap:wrap;gap:12px;}
.brindes-empty{font-size:13px;color:#64748b;}
.brinde-card{background:#f8fafc;border:1px solid #d1d9e6;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px;box-shadow:0 2px 6px rgba(15,23,42,.08);min-width:220px;}
.brinde-thumb{width:52px;height:52px;border-radius:12px;background:#e2e8f0;background-size:cover;background-position:center;flex-shrink:0;}
.brinde-info{flex:1;min-width:0;}
.brinde-nome{font-size:14px;font-weight:600;color:#0f172a;margin-bottom:2px;}
.brinde-meta{font-size:11px;color:#64748b;}
.brinde-actions{flex-shrink:0;}
.brinde-del-btn{border:0;border-radius:6px;padding:6px 10px;font-size:11px;cursor:pointer;background:#dc2626;color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2);}
.brinde-del-btn:hover{filter:brightness(.9);}


/* Membros Patrocinados & CHAT STYLES */
.membros-list-col{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.membro-card{background:#ffffff;border:1px solid #d1d9e6;border-radius:6px;padding:10px 12px;font-size:13px;box-shadow:0 2px 4px rgba(15,23,42,0.04);}
.membro-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.membro-card-nome{font-weight:600;color:#0f172a;flex:1;}
.membro-card-status{font-size:11px;border-radius:999px;padding:2px 8px;}
.membro-badge-pendente{background:#fef3c7;color:#92400e;}
.membro-badge-analise{background:#dbeafe;color:#1e40af;}
.membro-badge-aprovado{background:#dcfce7;color:#166534;}
.membro-card-body{font-size:12px;color:#475569;}
.membro-card-actions{margin-top:6px;display:flex;gap:6px;}
.btn-xs{font-size:11px;padding:4px 8px;border-radius:4px;border:1px solid #cbd5e1;background:#f1f5f9;cursor:pointer;}
.btn-xs:hover{background:#e2e8f0;}
.btn-danger{color:#dc2626;border-color:#fca5a5;background:#fef2f2;}
.btn-danger:hover{background:#fee2e2;}
.btn-green{color:#166534;border-color:#86efac;background:#f0fdf4;}
.btn-green:hover{background:#dcfce7;}
.subsection-title{margin:8px 0 4px;font-size:13px;font-weight:600;color:#1f2937;}
.badge-alert{background:#ef4444;color:#fff;font-size:11px;padding:1px 6px;border-radius:999px;margin-left:6px;vertical-align:middle;}

/* CHAT MODAL */
.chat-modal-card {
  width: 90%; max-width: 400px;
  background: #fff; border-radius: 8px;
  display: flex; flex-direction: column;
  height: 80vh; max-height: 600px;
  box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);
  overflow: hidden;
}
.chat-header {
  padding: 12px 16px; background: #0b3d91; color: #fff;
  display: flex; justify-content: space-between; align-items: center;
  font-weight: 600;
}
.chat-close { cursor: pointer; font-size: 20px; }
.chat-body {
  flex: 1; overflow-y: auto; padding: 16px;
  background: #f1f5f9; display: flex; flex-direction: column; gap: 8px;
}
.chat-bubble {
  max-width: 80%; padding: 8px 12px; border-radius: 8px; font-size: 13px; line-height: 1.4;
  position: relative; word-wrap: break-word;
}
.chat-bubble.others {
  align-self: flex-start; background: #fff; border: 1px solid #e2e8f0; color: #1e293b;
  border-bottom-left-radius: 0;
}
.chat-bubble.mine {
  align-self: flex-end; background: #0b5ed7; color: #fff; border: 1px solid #0b5ed7;
  border-bottom-right-radius: 0;
}
.chat-meta {
  font-size: 10px; margin-top: 4px; opacity: 0.7; text-align: right;
}
.chat-footer {
  padding: 10px; background: #fff; border-top: 1px solid #e2e8f0;
  display: flex; gap: 8px;
}