/* REGRA Pilot — protótipo navegável do sistema completo. Cores do logo oficial. */
:root{
  --navy:#001B33; --navy-700:#0A2A45; --navy-600:#12395A; --navy-500:#1D4A70;
  --gold:#E8B118; --gold-deep:#D0821C; --gold-text:#96690C;
  --gold-grad:linear-gradient(135deg,#E8B118,#D0821C);
  --white:#fff; --paper:#F5F8FA; --paper-2:#EBF1F6;
  --text:#12283C; --muted:#4E6478; --faint:#8299AB;
  --line:#E2EAF0; --line-2:#CFDDE7;
  --ok:#1B9E5A; --warn:#D97706; --danger:#DC2626; --info:#2563EB;
  --r:10px; --r-lg:14px;
  --sh:0 1px 3px rgba(0,27,51,.06); --sh-2:0 10px 30px rgba(0,27,51,.10);
  --fh:'Poppins',ui-sans-serif,system-ui,'Segoe UI',sans-serif;
  --fb:'Roboto',ui-sans-serif,system-ui,'Segoe UI',sans-serif;
  --ease:cubic-bezier(.22,.68,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);font-family:var(--fb);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--fh);margin:0;line-height:1.2;color:var(--navy);letter-spacing:-.01em}
p{margin:0}
img{display:block;max-width:100%}
button{font:inherit;cursor:pointer}

/* ---------------- layout ---------------- */
.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}

/* ---------------- sidebar ---------------- */
.side{background:var(--navy);color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.side-top{padding:22px 20px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.side-top img{height:22px;width:auto}
.side-top .sub{margin-top:9px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-family:var(--fh);font-weight:600}
.tenant{padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.1)}
.tenant label{display:block;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:7px;font-family:var(--fh)}
.tenant select{
  width:100%;padding:9px 11px;border-radius:var(--r);border:1px solid rgba(255,255,255,.18);
  background:var(--navy-700);color:#fff;font-family:var(--fh);font-size:13.5px;font-weight:500;
}
.nav{padding:14px 12px;flex:1;overflow-y:auto}
.nav-item{
  display:flex;align-items:center;gap:12px;width:100%;text-align:left;
  padding:11px 12px;margin-bottom:3px;border:none;border-radius:var(--r);
  background:none;color:rgba(255,255,255,.72);font-family:var(--fh);font-size:14px;font-weight:500;
  transition:background .2s var(--ease),color .2s var(--ease);
}
.nav-item svg{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-item:hover{background:rgba(255,255,255,.07);color:#fff}
.nav-item.on{background:var(--gold-grad);color:#20160A;font-weight:600}
.nav-item .count{
  margin-left:auto;font-size:11.5px;padding:1px 8px;border-radius:99px;
  background:rgba(255,255,255,.14);color:#fff;font-weight:600;
}
.nav-item.on .count{background:rgba(0,27,51,.18);color:#20160A}
.nav-sep{margin:14px 12px 8px;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.35);font-family:var(--fh)}
.side-foot{padding:16px 20px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;color:rgba(255,255,255,.42)}

/* ---------------- main ---------------- */
.main{min-width:0;display:flex;flex-direction:column}
.topbar{
  background:#fff;border-bottom:1px solid var(--line);padding:0 30px;height:66px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:10;
}
.topbar h1{font-size:19px}
.topbar .sub{font-size:12.5px;color:var(--faint);margin-top:1px}
.top-actions{display:flex;align-items:center;gap:10px}
.view{padding:26px 30px 60px}
.view[hidden]{display:none}

/* ---------------- componentes ---------------- */
.btn{
  display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:var(--r);
  border:1px solid var(--line-2);background:#fff;color:var(--navy);
  font-family:var(--fh);font-size:13.5px;font-weight:600;text-decoration:none;
  transition:all .2s var(--ease);
}
.btn:hover{border-color:var(--gold);color:var(--gold-text);box-shadow:var(--sh)}
.btn-gold{background:var(--gold-grad);border-color:transparent;color:#20160A}
.btn-gold:hover{color:#20160A;transform:translateY(-1px);box-shadow:0 6px 16px rgba(208,130,28,.3)}
.btn-navy{background:var(--navy);border-color:transparent;color:#fff}
.btn-navy:hover{color:#fff;background:var(--navy-700)}
.btn-sm{padding:6px 12px;font-size:12.5px}

.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh)}
.card-head{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px}
.card-head h3{font-size:15.5px}
.card-body{padding:20px}

.grid{display:grid;gap:18px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}

.stat{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--sh)}
.stat .lbl{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);font-family:var(--fh);font-weight:600}
.stat .val{font-family:var(--fh);font-size:29px;font-weight:600;color:var(--navy);margin-top:7px;line-height:1}
.stat .delta{font-size:12.5px;margin-top:7px;color:var(--muted)}
.stat .delta.up{color:var(--ok)} .stat .delta.down{color:var(--danger)}

.badge{display:inline-block;padding:2px 10px;border-radius:99px;font-size:11.5px;font-family:var(--fh);font-weight:600;white-space:nowrap}
.b-new{background:#FEF3D0;color:#8A5F0A}
.b-contacted{background:#DBEAFE;color:#1E40AF}
.b-booked{background:#EDE9FE;color:#5B21B6}
.b-won{background:#D1FAE5;color:#065F46}
.b-lost{background:#F1F5F9;color:#64748B}
.b-ok{background:#D1FAE5;color:#065F46}
.b-due{background:#FEE2E2;color:#991B1B}
.b-pend{background:#FEF3D0;color:#8A5F0A}
.b-ai{background:var(--navy);color:var(--gold)}

.table{width:100%;border-collapse:collapse}
.table th{
  text-align:left;font-family:var(--fh);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--faint);padding:11px 20px;border-bottom:1px solid var(--line);white-space:nowrap;
}
.table td{padding:14px 20px;border-bottom:1px solid var(--line);vertical-align:middle}
.table tr:last-child td{border-bottom:none}
.table tbody tr{transition:background .15s var(--ease)}
.table tbody tr:hover{background:var(--paper)}
.table .who{font-family:var(--fh);font-weight:600;color:var(--navy)}
.table .sm{font-size:12.5px;color:var(--faint)}
.tw{overflow-x:auto}

.chan{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}
.chan i{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:700;color:#fff;font-family:var(--fh)}
.c-ig{background:linear-gradient(45deg,#F09433,#DC2743,#BC1888)}
.c-ph{background:#0F766E} .c-tx{background:#2563EB} .c-em{background:#7C3AED}
.c-web{background:var(--navy)} .c-ad{background:#DB2777} .c-ref{background:#059669}

.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.chip{
  padding:7px 14px;border-radius:99px;border:1px solid var(--line-2);background:#fff;
  font-family:var(--fh);font-size:13px;font-weight:500;color:var(--muted);transition:all .2s var(--ease);
}
.chip:hover{border-color:var(--gold);color:var(--navy)}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.chip .n{opacity:.6;margin-left:5px}

/* radar */
.attn{display:flex;gap:14px;padding:15px 20px;border-bottom:1px solid var(--line);align-items:flex-start;transition:background .15s var(--ease)}
.attn:last-child{border-bottom:none}
.attn:hover{background:var(--paper)}
.attn-ico{width:34px;height:34px;border-radius:9px;flex:none;display:grid;place-items:center;font-size:15px}
.a-red{background:#FEE2E2} .a-amber{background:#FEF3D0} .a-blue{background:#DBEAFE}
.attn b{display:block;font-family:var(--fh);font-size:14.5px;color:var(--navy)}
.attn span{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.attn .act{margin-left:auto;flex:none}

/* pipeline */
.kanban{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:14px;overflow-x:auto;padding-bottom:8px}
.col{background:var(--paper-2);border-radius:var(--r-lg);padding:12px;min-height:340px}
.col-h{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 12px}
.col-h b{font-family:var(--fh);font-size:13px;color:var(--navy)}
.col-h .n{font-size:11.5px;background:#fff;border-radius:99px;padding:1px 9px;color:var(--muted);font-weight:600}
.deal{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:13px;margin-bottom:9px;box-shadow:var(--sh);transition:all .2s var(--ease);cursor:default}
.deal:hover{transform:translateY(-2px);box-shadow:var(--sh-2);border-color:var(--line-2)}
.deal b{display:block;font-family:var(--fh);font-size:13.5px;color:var(--navy)}
.deal .svc{font-size:12px;color:var(--faint);margin-top:2px}
.deal .row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.deal .val{font-family:var(--fh);font-weight:600;font-size:13px;color:var(--navy)}

/* conversa */
.conv{display:grid;grid-template-columns:290px 1fr;gap:0;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);background:#fff;box-shadow:var(--sh)}
.conv-list{border-right:1px solid var(--line);max-height:600px;overflow-y:auto}
.conv-item{padding:14px 16px;border-bottom:1px solid var(--line);width:100%;text-align:left;background:none;border-left:3px solid transparent;transition:background .15s var(--ease)}
.conv-item:hover{background:var(--paper)}
.conv-item.on{background:var(--paper);border-left-color:var(--gold)}
.conv-item b{display:block;font-family:var(--fh);font-size:13.5px;color:var(--navy)}
.conv-item .prev{font-size:12.5px;color:var(--faint);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conv-item .meta{display:flex;align-items:center;gap:8px;margin-top:7px}
.thread{padding:20px;max-height:600px;overflow-y:auto;background:var(--paper)}
.msg{max-width:76%;margin-bottom:14px;padding:12px 15px;border-radius:14px;font-size:14px;line-height:1.55}
.msg.them{background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}
.msg.us{background:var(--navy);color:#fff;margin-left:auto;border-bottom-right-radius:4px}
.msg .t{display:block;font-size:11px;margin-top:6px;opacity:.55}
.ai-box{margin:18px 20px 20px;border:1.5px solid var(--gold);border-radius:var(--r-lg);background:#FFFDF6;padding:16px}
.ai-box .h{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.ai-box .h b{font-family:var(--fh);font-size:13.5px;color:var(--navy)}
.ai-box p{font-size:14px;color:var(--text)}
.ai-box .acts{display:flex;gap:9px;margin-top:14px;flex-wrap:wrap}

/* agenda */
.week{display:grid;grid-template-columns:64px repeat(6,1fr);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.week .hd{background:var(--paper);padding:11px 8px;text-align:center;font-family:var(--fh);font-size:12px;font-weight:600;color:var(--navy);border-bottom:1px solid var(--line)}
.week .hd span{display:block;font-size:11px;color:var(--faint);font-weight:400}
.week .hr{padding:8px;font-size:11.5px;color:var(--faint);text-align:right;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.week .cell{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:52px;padding:4px}
.appt{border-radius:7px;padding:6px 8px;font-size:11.5px;line-height:1.35;height:100%;border-left:3px solid}
.appt b{display:block;font-family:var(--fh);font-size:12px}
.ap-w{background:#FEF3D0;border-color:var(--gold);color:#7A5309}
.ap-l{background:#D1FAE5;border-color:var(--ok);color:#065F46}
.ap-c{background:#DBEAFE;border-color:var(--info);color:#1E40AF}

/* automações */
.auto{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid var(--line)}
.auto:last-child{border-bottom:none}
.auto b{display:block;font-family:var(--fh);font-size:14px;color:var(--navy)}
.auto span{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.sw{margin-left:auto;flex:none;width:44px;height:25px;border-radius:99px;background:var(--line-2);position:relative;border:none;transition:background .25s var(--ease)}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .25s var(--ease)}
.sw.on{background:var(--ok)}
.sw.on::after{transform:translateX(19px)}

/* aviso de protótipo */
.proto{
  background:var(--navy);color:#fff;padding:11px 30px;font-size:13px;
  display:flex;align-items:center;gap:11px;justify-content:center;text-align:center;
}
.proto b{color:var(--gold);font-family:var(--fh)}
.tag-demo{background:var(--gold);color:#20160A;font-family:var(--fh);font-weight:700;font-size:10px;letter-spacing:.1em;padding:2px 7px;border-radius:4px}

.empty{padding:50px 20px;text-align:center;color:var(--faint)}
.empty b{display:block;font-family:var(--fh);color:var(--navy);font-size:15px;margin-bottom:6px}

@media (max-width:1100px){ .g4{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:1fr} .conv{grid-template-columns:1fr} .conv-list{max-height:220px;border-right:none;border-bottom:1px solid var(--line)} }
@media (max-width:820px){ .app{grid-template-columns:1fr} .side{position:static;height:auto} .nav{display:flex;overflow-x:auto;padding:10px} .nav-item{white-space:nowrap} .nav-sep{display:none} .g2,.g4{grid-template-columns:1fr} .view{padding:20px 16px 50px} .topbar{padding:0 16px} }
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* ---------------- ajustes do painel real ---------------- */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
label{display:block;margin:0 0 16px;font-family:var(--fh);font-size:13px;font-weight:600;color:var(--muted)}
input,select,textarea{
  width:100%;margin-top:6px;padding:10px 12px;font-family:var(--fb);font-size:14.5px;color:var(--text);
  background:#fff;border:1px solid var(--line-2);border-radius:var(--r);
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,177,24,.16)}
textarea{resize:vertical}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:6px}
.form-actions .right{margin-left:auto}
.alert{background:#FEE2E2;border:1px solid #FCA5A5;color:#991B1B;padding:11px 14px;border-radius:var(--r);margin-bottom:16px;font-size:14px}
.ok-msg{background:#D1FAE5;border:1px solid #6EE7B7;color:#065F46;padding:11px 14px;border-radius:var(--r);margin-bottom:16px;font-size:14px}
.auth{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:20px;padding:40px 20px;background:var(--navy)}
.auth .box{background:#fff;border-radius:var(--r-lg);padding:30px;width:min(430px,92vw);box-shadow:0 20px 60px rgba(0,0,0,.3)}
.auth img{height:26px}
.auth h1{font-size:22px;margin-bottom:16px}
.auth .hint{font-size:13px;color:var(--faint);margin-bottom:16px}
a.plain{color:var(--gold-text);text-decoration:underline;text-underline-offset:3px}
.soon-box{max-width:620px}
.soon-box .why{margin-top:14px;color:var(--muted)}
.soon-box .mean{margin-top:16px;padding:16px 18px;border-left:3px solid var(--gold);background:var(--paper-2);border-radius:0 var(--r) var(--r) 0;font-size:14.5px}
.nav-item.dim{opacity:.5}
.link-row{display:flex;gap:8px;align-items:center}
.mini{font-size:12px;color:var(--faint)}
.day-col{min-width:0}
.day-h{font-family:var(--fh);font-size:12.5px;font-weight:600;color:var(--navy);padding:10px;background:var(--paper);border-bottom:1px solid var(--line);text-align:center}
.day-h span{display:block;font-size:11px;color:var(--faint);font-weight:400}
.day-body{padding:8px;min-height:130px;border-right:1px solid var(--line)}
.week7{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff}
.ev{display:block;border-radius:7px;padding:7px 9px;font-size:11.5px;line-height:1.35;margin-bottom:6px;border-left:3px solid;text-decoration:none}
.ev b{display:block;font-family:var(--fh);font-size:12px}
.ev-unconfirmed{background:#DBEAFE;border-color:var(--info);color:#1E40AF}
.ev-confirmed{background:#FEF3D0;border-color:var(--gold);color:#7A5309}
.ev-done{background:#D1FAE5;border-color:var(--ok);color:#065F46}
.ev-noshow{background:#FEE2E2;border-color:var(--danger);color:#991B1B}
.ev-cancelled{background:#F1F5F9;border-color:#94A3B8;color:#64748B;text-decoration:line-through}

/* correcao: itens de menu e links de tabela sem sublinhado */
.nav-item,.side a,.table a.who,.deal a{text-decoration:none}
.table a.who:hover,.deal a:hover b{color:var(--gold-text)}
