/* Painel Íris da Lua: barra lateral escura, conteúdo claro. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--noite:#1f1b33;--noite2:#2c2748;--iris:#7a6bb5;--bg:#f4f1ec;--card:#fff;--tinta:#272336;--cinza:#6b667a;--linha:rgba(39,35,54,.12);--lua:#e9d9a8;--ok:#2e7d5b;--aviso:#b7791f;--erro:#a8402f;--sans:"Jost",system-ui,sans-serif;--display:"Cormorant Garamond",serif;--r:12px}
body{font-family:var(--sans);background:var(--bg);color:var(--tinta);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}
h1,h2,.kpi b,.funil b,.ag-barra .tit,.barra b{font-variant-numeric:lining-nums}
h1{font-family:var(--display);font-size:2.2rem;font-weight:600;line-height:1.05}h2{font-family:var(--display);font-size:1.45rem;font-weight:600;margin-bottom:10px;line-height:1.1}h3{font-size:1rem;margin:14px 0 6px}
.muted{color:var(--cinza)}.small{font-size:.8rem}.nowrap{white-space:nowrap}code{background:rgba(39,35,54,.07);padding:1px 6px;border-radius:4px;font-size:.85em}
.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.lado{background:var(--noite);color:#e9e5f2;padding:20px 14px;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column}
.lado-marca{display:flex;gap:10px;align-items:center;color:var(--lua);padding:0 8px 18px}.lado-marca span{display:flex;flex-direction:column;line-height:1}.lado-marca b{font-family:var(--display);font-size:1.5rem;color:#fff}.lado-marca small{font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;opacity:.6;margin-top:3px}
.lado-g{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;opacity:.5;margin:16px 10px 4px}
.lado nav a{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:8px;font-size:.92rem;color:rgba(233,229,242,.8)}
.lado nav a:hover{background:rgba(255,255,255,.07)}.lado nav a.on{background:rgba(233,217,168,.16);color:#fff;font-weight:500}
.nb{background:var(--lua);color:var(--noite);border-radius:999px;font-size:.7rem;padding:0 7px;min-width:20px;text-align:center;font-weight:600}
.lado-pe{margin-top:auto;padding:16px 10px 0;display:grid;gap:4px;font-size:.82rem;border-top:1px solid rgba(255,255,255,.1)}.lado-pe a{opacity:.8}.lado-pe a:hover{opacity:1}.lado-pe span{opacity:.55}
.barra{display:flex;align-items:center;gap:14px;padding:12px clamp(16px,3vw,32px);background:var(--card);border-bottom:1px solid var(--linha);position:sticky;top:0;z-index:20}.barra b{font-family:var(--display);font-size:1.3rem;margin-right:auto}.menu-bt{display:none;background:none;border:0;font-size:1.4rem}
.pm{padding:24px clamp(16px,3vw,32px) 48px;max-width:1360px}.pf{text-align:center;color:var(--cinza);font-size:.76rem;padding:14px}.pf a{text-decoration:underline}
.pm-h{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.pm-h p{color:var(--cinza);margin-top:4px}
.flash{padding:11px 14px;border-radius:10px;margin-bottom:14px;background:#e6f4ec;color:#1d5a40;border:1px solid #bfe0cd}.flash.erro{background:#fbe9e5;color:#8a2f20;border-color:#f0c4bb}
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:9px;font-weight:500;font-size:.88rem;border:1px solid transparent;white-space:nowrap;background:none}
.btn-p{background:var(--noite);color:#fff}.btn-p:hover{background:var(--noite2)}.btn-s{background:#fff;border-color:var(--linha)}.btn-s:hover{border-color:var(--iris)}.btn-peq{padding:6px 12px;font-size:.82rem}
.btn-perigo{color:var(--erro);background:#fbe9e5;border-color:#f0c4bb}.btn-zap{background:#e6f6ec;color:#17623a;border-color:#bde3cc}
.card{background:var(--card);border:1px solid var(--linha);border-radius:var(--r);padding:18px;margin-bottom:16px}.card-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.card-h h2{margin:0}.card-h a{font-size:.84rem;color:var(--iris);font-weight:500}
.duas{display:grid;grid-template-columns:1.5fr 1fr;gap:16px;align-items:start}.coluna{display:grid;gap:0}.tres{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}
.kpi{background:var(--card);border:1px solid var(--linha);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:2px}.kpi b{font-family:var(--display);font-size:2.3rem;font-weight:600;line-height:1}.kpi span{font-size:.8rem;color:var(--cinza)}.kpi.alerta{border-color:var(--iris);background:#f6f3fc}
.lista li a,.lista li>div{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--linha)}.lista{list-style:none}.lista li:first-child a,.lista li:first-child>div{border-top:0}
.lista b{display:block;font-size:.92rem}.lista span.muted,.lista time{font-size:.78rem;color:var(--cinza)}
.vazio{color:var(--cinza);padding:18px 0;text-align:center}
.st{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;background:#eee;color:#555;white-space:nowrap}
.st-confirmado,.st-convertido{background:#e6f4ec;color:#1d5a40}.st-pendente,.st-novo{background:#fff3da;color:#8a5a00}.st-cancelado,.st-faltou,.st-perdido{background:#fbe9e5;color:#8a2f20}.st-concluido{background:#ece9f7;color:#3f3478}.st-contatado{background:#e5eefb;color:#25508f}.st-qualificado{background:#f1e8fb;color:#5b2d91}
.abas{display:flex;gap:4px;flex-wrap:wrap}.abas a{padding:6px 12px;border-radius:8px;font-size:.86rem;font-weight:500;color:var(--cinza)}.abas a.on{background:var(--noite);color:#fff}.abas small{opacity:.65;margin-left:3px}
.filtros{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;align-items:center}.busca{display:flex;gap:6px;flex-wrap:wrap}
input,select,textarea{padding:8px 11px;border-radius:8px;border:1px solid var(--linha);background:#fff;width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--iris);border-color:transparent}
.busca input,.busca select{width:auto}input[type=checkbox]{width:auto}
.tabela-card{overflow:auto;padding:6px 0}.tabela{width:100%;border-collapse:collapse;font-size:.9rem}.tabela th{text-align:left;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cinza);padding:8px 14px;font-weight:500}.tabela td{padding:10px 14px;border-top:1px solid var(--linha);vertical-align:top}.tabela tbody tr{cursor:pointer}.tabela tbody tr:hover,.tabela tr.sel{background:#f6f3fc}
.form-p{display:grid;gap:12px}.form-p label,.grade label{display:grid;gap:5px;font-size:.82rem;font-weight:500;color:var(--cinza)}.form-p label.check,.grade label.check{display:flex;align-items:center;gap:8px;color:var(--tinta);font-size:.9rem}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.grade .larga{grid-column:1/-1}.acoes{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.dados{display:grid;gap:8px;margin-bottom:14px}.dados div{display:grid;grid-template-columns:96px 1fr;gap:10px}.dados dt{color:var(--cinza);font-size:.8rem}.dados dd{word-break:break-word}.pre{white-space:pre-wrap}
.detalhe{position:sticky;top:70px}.fechar{font-size:1.6rem;line-height:1;color:var(--cinza)}
.nota{padding:8px 0;border-top:1px solid var(--linha);font-size:.88rem}.nota small{color:var(--cinza);display:block}
.funil{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:14px}.funil a{background:var(--card);border:1px solid var(--linha);border-radius:10px;padding:10px 12px;display:grid}.funil a.on{border-color:var(--noite);background:#f6f3fc}.funil b{font-family:var(--display);font-size:1.8rem;line-height:1}.funil span{font-size:.76rem;color:var(--cinza)}
.barras{display:grid;gap:8px;list-style:none}.barras li{display:grid;grid-template-columns:1fr 2fr auto;gap:10px;align-items:center;font-size:.84rem}.barras i{display:block;height:8px;border-radius:4px;background:rgba(39,35,54,.08);position:relative;overflow:hidden}.barras i::after{content:"";position:absolute;inset:0;width:var(--w);background:var(--iris);border-radius:4px}
.cor{width:22px;height:22px;border-radius:50%;display:inline-block;vertical-align:middle;border:2px solid #fff;box-shadow:0 0 0 1px var(--linha)}
.escala{display:grid;grid-template-columns:110px auto 1fr 1fr;gap:6px 10px;align-items:center;font-size:.9rem}.escala input[type=time]{width:100%}
.chk-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 14px}
.larga{grid-column:1/-1}

/* agenda (grade de horários) */
.ag-barra{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.ag-barra .tit{font-family:var(--display);font-size:1.5rem;font-weight:600;margin:0 6px}
.ag-grade{display:flex;background:var(--card);border:1px solid var(--linha);border-radius:var(--r);overflow:auto;--h:68px}
.ag-horas{flex:none;width:52px;border-right:1px solid var(--linha);position:sticky;left:0;background:var(--card);z-index:3}
.ag-horas div{height:var(--h);font-size:.72rem;color:var(--cinza);padding:2px 6px;border-top:1px solid var(--linha)}.ag-horas .topo,.ag-col .topo{height:44px;border:0;position:sticky;top:0;background:var(--card);z-index:2;border-bottom:1px solid var(--linha)}
.ag-col{flex:1;min-width:150px;border-right:1px solid var(--linha);position:relative}.ag-col:last-child{border-right:0}.ag-col .topo{display:flex;flex-direction:column;justify-content:center;padding:0 10px;font-size:.84rem;font-weight:500}.ag-col .topo small{color:var(--cinza);font-weight:400}.ag-col .topo.hoje{color:var(--iris)}
.ag-corpo{position:relative;cursor:cell;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--h) - 1px),var(--linha) calc(var(--h) - 1px),var(--linha) var(--h))}
.ag-fora{position:absolute;left:0;right:0;background:repeating-linear-gradient(135deg,rgba(39,35,54,.05) 0 6px,transparent 6px 12px);pointer-events:none}
.ag-bloq{position:absolute;left:2px;right:2px;border-radius:6px;background:repeating-linear-gradient(135deg,rgba(168,64,47,.15) 0 6px,rgba(168,64,47,.06) 6px 12px);font-size:.72rem;color:#8a2f20;padding:2px 6px;overflow:hidden;cursor:default}
.ag-bl{position:absolute;left:3px;right:3px;border-radius:7px;padding:3px 7px;font-size:.76rem;line-height:1.25;overflow:hidden;color:#fff;background:var(--c,#7a6bb5);border-left:4px solid rgba(0,0,0,.25);cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.15)}
.ag-bl b{display:block;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-bl.pendente{opacity:.65;outline:2px dashed rgba(0,0,0,.35);outline-offset:-2px}.ag-bl.concluido{filter:saturate(.5)}.ag-bl.cancelado,.ag-bl.faltou{display:none}
.ag-agora{position:absolute;left:0;right:0;height:2px;background:var(--erro);z-index:1}.ag-agora::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--erro)}
.legenda{display:flex;gap:14px;flex-wrap:wrap;font-size:.8rem;color:var(--cinza);margin-top:10px}

/* login */
.login-body{display:grid;place-items:center;min-height:100vh;background:var(--noite)}.login{width:min(400px,92vw);background:#fff;border-radius:16px;padding:30px}.login-marca{display:flex;gap:12px;align-items:center;color:var(--noite);margin-bottom:20px}.login-marca b{font-family:var(--display);font-size:1.6rem;display:block;line-height:1}.login-marca span{font-size:.8rem;color:var(--cinza)}
.login-form{display:grid;gap:12px}.login-form label{display:grid;gap:5px;font-size:.84rem;font-weight:500}.login-dica{font-size:.78rem;color:var(--cinza)}.login-volta{margin-top:14px;font-size:.84rem;text-align:center}.btn-bloco{width:100%;justify-content:center;padding:12px}

@media(max-width:980px){
  .app{grid-template-columns:1fr}.lado{position:fixed;left:0;top:0;bottom:0;width:240px;z-index:50;transform:translateX(-100%);transition:transform .25s}.lado.aberto{transform:none}.menu-bt{display:block}
  .duas,.tres{grid-template-columns:1fr}.funil{grid-template-columns:repeat(2,1fr)}.detalhe{position:static}
}
