/* Futshop Parceiros — identidade da loja. Base: protótipo modelo-A (aprovado), refinado. */
@font-face{font-family:Archivo;font-style:italic;font-weight:800;font-display:swap;src:url(/static/fonts/archivo-latin-800-italic.woff2) format("woff2")}
@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(/static/fonts/poppins-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-style:normal;font-weight:500;font-display:swap;src:url(/static/fonts/poppins-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(/static/fonts/poppins-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(/static/fonts/poppins-latin-700-normal.woff2) format("woff2")}

:root{
  --preto:#080812;--preto2:#13132A;--borda-escura:#2A2A48;
  --fundo:#F3F4F6;--cartao:#FFFFFF;--borda:#E5E7EB;--linha:#EEF0F3;--borda-campo:#CBD5E1;
  --titulo:#0F172A;--corpo:#1E293B;--sec:#475569;
  --azul:#055DFF;--azul-h:#0446C2;--azul-claro:#7FA6FF;--menu:#C9CCE0;--sel:#F0F5FF;
  --ok:#0F766E;--ok-bg:#DDF3F0;--warn:#B45309;--warn-bg:#FEF3C7;--off:#334155;--off-bg:#E2E8F0;
  --info:#0446C2;--info-bg:#E6EEFF;--erro:#B91C1C;--erro-bg:#FEE2E2;
  --raio:12px;--sombra:0 1px 2px rgba(15,23,42,.04),0 1px 1px rgba(15,23,42,.03);
  --ease:cubic-bezier(.23,1,.32,1);
  color-scheme:only light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fundo);font-family:Poppins,system-ui,sans-serif;color:var(--corpo);font-size:14px;line-height:1.5}
a{color:var(--azul)}a:hover{color:var(--azul-h)}
h1,h2,h3,p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--azul);outline-offset:2px;border-radius:6px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}

/* faixa de simulação: impossível de não ver */
.sim{position:sticky;top:0;z-index:60;background:var(--erro);color:#fff;text-align:center;font-weight:700;font-size:13px;letter-spacing:.02em;padding:7px 12px}
.sim b{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;letter-spacing:.04em}

.app{display:flex;min-height:100vh}
.side{width:244px;flex-shrink:0;padding:22px 14px;background:var(--preto);display:flex;flex-direction:column;gap:4px;position:sticky;top:33px;height:calc(100vh - 33px)}
.main{flex:1;min-width:0;padding:28px 32px 100px}
.wrap{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:20px}
.brand{display:flex;flex-direction:column;gap:2px;padding:0 12px 22px;text-decoration:none}
.brand .f{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:22px;color:#fff;letter-spacing:.01em;line-height:1}
.brand .p{font-size:10px;font-weight:600;letter-spacing:.22em;color:var(--azul-claro)}
.brand.adm .p{color:#FCA5A5}
.nav{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;border-radius:10px;font-size:14px;font-weight:500;color:var(--menu);text-decoration:none;transition:background .15s var(--ease),color .15s var(--ease)}
.nav:hover{background:var(--preto2);color:#fff}
.nav[aria-current=page]{background:var(--preto2);color:#fff;font-weight:600;box-shadow:inset 3px 0 0 var(--azul)}
.nav svg{width:18px;height:18px;flex-shrink:0;opacity:.85}
.nav .cont{margin-left:auto;font-size:11px;font-weight:700;background:var(--warn-bg);color:var(--warn);border-radius:999px;padding:1px 8px}
.side .fim{margin-top:auto;display:flex;flex-direction:column;gap:14px}
.precobox{border:1px solid var(--borda-escura);border-radius:10px;padding:12px;color:#fff;font-size:13px}
.precobox .k{font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--azul-claro);margin-bottom:4px}
.precobox .s{color:var(--menu);font-size:12px;margin-top:4px}
.user{display:flex;align-items:center;gap:10px;border-top:1px solid var(--borda-escura);padding:14px 10px 0}
.avatar{width:36px;height:36px;border-radius:50%;background:var(--azul);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}
.user .n{color:#fff;font-weight:600;font-size:13px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}
.linkbtn{background:none;border:0;padding:0;color:var(--azul-claro);font-size:12px;cursor:pointer;text-decoration:none}
.linkbtn:hover{color:#fff;text-decoration:underline}
.mtop,.tabbar{display:none}

/* tipografia de página */
.cab{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.title{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:30px;line-height:1.1;text-transform:uppercase;color:var(--titulo);letter-spacing:.005em}
.sub{color:var(--sec);margin-top:4px;max-width:62ch}
.h2{font-size:16px;font-weight:600;color:var(--titulo)}
.muted{color:var(--sec)}
.small{font-size:12px}
.num{text-align:right;font-variant-numeric:tabular-nums}
.tab-num{font-variant-numeric:tabular-nums}
.grande{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:40px;line-height:1.05;color:var(--titulo);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.medio{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:26px;line-height:1.1;color:var(--titulo);font-variant-numeric:tabular-nums}
.pos{color:var(--ok);font-weight:600}
.neg{color:var(--titulo);font-weight:600}

/* cartões e grades */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.card{background:var(--cartao);border:1px solid var(--borda);border-radius:var(--raio);padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--sombra);min-width:0}
.card.escuro{background:var(--preto);border-color:var(--preto);color:#fff}
.card.escuro .k{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--azul-claro)}
.card.escuro .medio,.card.escuro .grande{color:#fff}
.card.escuro .s{color:var(--menu)}
.card .topo{display:flex;justify-content:space-between;align-items:center;gap:12px}
.duo{display:flex;gap:28px;flex-wrap:wrap}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--linha)}
.row:last-child{border-bottom:none}
.row .l{min-width:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.vazio{padding:28px 12px;text-align:center;color:var(--sec)}
.vazio .h2{margin-bottom:4px}

/* botões */
.btn,.btn2,.btnw,.btnd{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .15s var(--ease),border-color .15s var(--ease),transform .12s var(--ease)}
.btn{border:none;background:var(--azul);color:#fff}
.btn:hover{background:var(--azul-h);color:#fff}
.btn2{border:1px solid var(--borda-campo);background:#fff;color:var(--titulo)}
.btn2:hover{border-color:#94A3B8;color:var(--titulo)}
.btnw{border:1.5px solid var(--warn);background:#fff;color:var(--warn);font-weight:700}
.btnw:hover{background:var(--warn-bg);color:var(--warn)}
.btnd{border:1.5px solid var(--erro);background:#fff;color:var(--erro);font-weight:700}
.btnd:hover{background:var(--erro-bg)}
.btn:active,.btn2:active,.btnw:active,.btnd:active,.mini:active,.bbtn:active{transform:scale(.97)}
.btn[disabled],.btn2[disabled],.bbtn[disabled],.mini[disabled]{opacity:.55;cursor:not-allowed;transform:none}
.btn.cheio{width:100%}
.mini{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:8px;border:1px solid var(--borda-campo);background:#fff;color:var(--titulo);font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;text-decoration:none}
.mini:hover{border-color:#94A3B8;color:var(--titulo)}
.mini.warn{border-color:var(--warn);color:var(--warn)}
.mini.azul{border-color:var(--azul);color:var(--azul)}
.acoes{display:flex;gap:10px;flex-wrap:wrap}
.carregando{position:relative;color:transparent!important;pointer-events:none}
.carregando::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.45);border-top-color:#fff;animation:gira .7s linear infinite}
.btn2.carregando::after,.mini.carregando::after{border-color:rgba(15,23,42,.2);border-top-color:var(--titulo)}
@keyframes gira{to{transform:rotate(360deg)}}

/* chips e pílulas */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.fchip{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--borda-campo);background:#fff;font-size:13px;font-weight:600;color:var(--off);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .15s var(--ease),color .15s var(--ease)}
.fchip:hover{border-color:#94A3B8;color:var(--titulo)}
.fchip[aria-pressed=true],.fchip[aria-current=true]{background:var(--preto);border-color:var(--preto);color:#fff}
.chip{min-height:44px;padding:0 16px;border-radius:10px;border:1px solid var(--borda-campo);background:#fff;font-size:14px;font-weight:600;color:var(--titulo);cursor:pointer}
.chip:hover{border-color:var(--azul)}
.pill{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap;display:inline-block;line-height:1.5}
.ok{color:var(--ok);background:var(--ok-bg)}
.warn{color:var(--warn);background:var(--warn-bg)}
.off{color:var(--off);background:var(--off-bg)}
.info{color:var(--info);background:var(--info-bg)}
.err{color:var(--erro);background:var(--erro-bg)}
.st{display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.st .m{font-size:12px;color:var(--sec)}
.plat{display:inline-flex;align-items:center;justify-content:center;width:34px;height:24px;border-radius:6px;background:var(--preto);color:#fff;font-family:Archivo,sans-serif;font-weight:800;font-style:italic;font-size:11px;flex-shrink:0}

/* faixas */
.faixa{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;border-radius:var(--raio);padding:16px 20px;border:1px solid}
.faixa.warn{background:#FFFBEB;border-color:#FDE68A}
.faixa.err{background:#FEF2F2;border-color:#FECACA}
.faixa.info{background:#F5F8FF;border-color:#C7D7FE}
.faixa.ok{background:#F0FAF8;border-color:#A7E3D9}
.faixa .t{font-weight:600;color:var(--titulo)}
.faixa .d{color:var(--sec);font-size:13px}

/* formulários */
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field label,.lbl{font-size:13px;font-weight:600;color:var(--titulo)}
.field .ajuda{font-size:12px;color:var(--sec)}
.input,select.input,textarea.input{min-height:46px;border-radius:10px;border:1px solid var(--borda-campo);padding:0 14px;font-size:15px;color:var(--titulo);background:#fff;width:100%;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}
textarea.input{padding:10px 14px;min-height:90px;resize:vertical}
.input:hover{border-color:#94A3B8}
.input:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(5,93,255,.18)}
.input[aria-invalid=true]{border-color:var(--erro)}
.input.big{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:24px;min-height:58px;font-variant-numeric:tabular-nums}
.input.codigo{letter-spacing:.4em;font-size:22px;font-weight:700;text-align:center;max-width:240px}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.form .full{grid-column:1/-1}
.erro-campo{font-size:12px;color:var(--erro);font-weight:500}
.msg{border-radius:10px;padding:12px 14px;font-size:13px;font-weight:500}
.msg.err{background:var(--erro-bg);color:var(--erro)}
.msg.ok{background:var(--ok-bg);color:var(--ok)}
.msg.info{background:var(--info-bg);color:var(--info)}
.check{display:flex;gap:10px;align-items:flex-start;font-size:13px}
.check input{width:20px;height:20px;accent-color:var(--azul);margin-top:1px;flex-shrink:0}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg label{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:64px;padding:0 14px;border-radius:10px;border:1px solid var(--borda-campo);background:#fff;font-weight:700;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg input:checked+span{color:#fff}
.seg label:has(input:checked){background:var(--preto);border-color:var(--preto);color:#fff}
.seg label:has(input:focus-visible){outline:3px solid var(--azul);outline-offset:2px}
.medidor{height:6px;border-radius:3px;background:var(--off-bg);overflow:hidden}
.medidor i{display:block;height:100%;width:0;background:var(--erro);transition:width .2s var(--ease),background .2s}
.medidor[data-n="2"] i{background:var(--warn)}
.medidor[data-n="3"] i,.medidor[data-n="4"] i{background:var(--ok)}

/* tabela */
.tbox{overflow-x:auto;border:1px solid var(--borda);border-radius:var(--raio);background:#fff;box-shadow:var(--sombra)}
table.t{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
table.t.larga{min-width:1080px}
.t th{text-align:left;font-weight:600;color:var(--sec);font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:12px 14px;border-bottom:1px solid var(--borda);background:#F8FAFC;white-space:nowrap}
.t th.num{text-align:right}
.t th button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;min-height:24px}
.t th button:focus-visible{outline:3px solid var(--azul);outline-offset:2px;border-radius:4px}
.t th[aria-sort] button::after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent}
.t th[aria-sort=ascending] button::after{border-bottom:5px solid currentColor}
.t th[aria-sort=descending] button::after{border-top:5px solid currentColor}
.t td{padding:12px 14px;border-bottom:1px solid var(--linha);vertical-align:middle;white-space:nowrap;background:#fff}
.t tr:last-child td{border-bottom:none}
.t tr.sel td{background:var(--sel)}
.t tbody tr:hover td{background:#F8FAFC}
.t tbody tr.sel:hover td{background:#E8F0FF}
.t .cb{width:44px;padding-right:0}
.t .cb input{width:18px;height:18px;accent-color:var(--azul);cursor:pointer;vertical-align:middle}
.t .cb label{display:inline-flex;width:44px;height:44px;margin:-13px 0 -13px -13px;align-items:center;justify-content:center;cursor:pointer}
.conta{display:flex;align-items:center;gap:10px}
.bar{height:6px;border-radius:3px;background:var(--off-bg);overflow:hidden;width:120px}
.bar i{display:block;height:100%;background:var(--azul);border-radius:3px;width:0}
.bar.cheia i{background:var(--info)}
.lib{display:flex;flex-direction:column;gap:5px}
.lib span{font-size:12px;color:var(--sec)}
.rodape-t{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:var(--sec);font-size:13px}
.pag{display:flex;gap:8px;align-items:center}
.skel td{color:transparent}
.skel td::before{content:"";display:block;height:14px;border-radius:4px;background:linear-gradient(90deg,#EEF0F3,#F8FAFC,#EEF0F3);background-size:200% 100%;animation:brilho 1.2s ease-in-out infinite}
@keyframes brilho{to{background-position:-200% 0}}
.busca{min-width:240px;flex:0 1 300px}
.filtros{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}

/* barra de ações em massa */
.bulk{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--preto);color:#fff;border-radius:var(--raio);padding:10px 12px 10px 18px;position:sticky;top:44px;z-index:30;box-shadow:0 8px 24px rgba(8,8,18,.18);animation:sobe .2s var(--ease)}
@keyframes sobe{from{opacity:0;transform:translateY(6px)}}
.bulk .q{font-weight:700;margin-right:6px}
.bulk .todas{color:var(--azul-claro);background:none;border:0;cursor:pointer;font-weight:600;text-decoration:underline;padding:0 4px;min-height:38px}
.bbtn{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:8px;border:1px solid var(--borda-escura);background:var(--preto2);color:#fff;font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;text-decoration:none}
.bbtn:hover{border-color:var(--azul);color:#fff}
.bbtn.danger{border-color:#7F1D1D;color:#FCA5A5}
.bbtn.danger:hover{border-color:#F87171}
.bbtn.limpar{background:transparent;border-color:transparent;color:var(--menu);margin-left:auto}
.painel{background:#fff;border:1px solid var(--borda);border-radius:var(--raio);padding:18px 20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 8px 24px rgba(15,23,42,.06);animation:sobe .2s var(--ease)}
.progresso{height:8px;border-radius:4px;background:var(--off-bg);overflow:hidden}
.progresso i{display:block;height:100%;background:var(--azul);width:0;transition:width .3s var(--ease)}
.result{max-height:320px;overflow:auto;border:1px solid var(--linha);border-radius:10px}
.result .row{padding:9px 12px}

/* passos (importar / tutorial) */
.passos{display:flex;gap:8px;flex-wrap:wrap;counter-reset:p}
.passos li{list-style:none;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--sec)}
.passos li::before{counter-increment:p;content:counter(p);width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--off-bg);color:var(--off);font-size:12px}
.passos li[aria-current=step]{color:var(--titulo)}
.passos li[aria-current=step]::before{background:var(--azul);color:#fff}
.passos li.feito::before{background:var(--ok);color:#fff}
.passos li+li::after{content:none}
.tut img{width:100%;border-radius:10px;border:1px solid var(--borda);display:block}
.dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:13px}
.dl dt{color:var(--sec)}.dl dd{margin:0;color:var(--titulo);font-weight:500;overflow-wrap:anywhere}
.faq details{border-bottom:1px solid var(--linha);padding:4px 0}
.faq summary{cursor:pointer;font-weight:600;color:var(--titulo);min-height:44px;display:flex;align-items:center;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";margin-left:auto;font-size:20px;color:var(--sec);transition:transform .2s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{color:var(--corpo);padding:0 0 12px;max-width:70ch}
.termos{max-width:75ch}
.termos h2{font-size:16px;margin:22px 0 6px;color:var(--titulo)}
.termos p,.termos li{margin:6px 0;color:var(--corpo)}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--preto);color:#fff;border-radius:10px;padding:12px 18px;font-weight:600;z-index:90;box-shadow:0 8px 24px rgba(8,8,18,.3);animation:sobe .2s var(--ease)}

/* tela de entrada (sem menu) */
.solo{min-height:calc(100vh - 33px);display:flex;align-items:center;justify-content:center;padding:32px 16px;background:var(--fundo)}
.solo .caixa{width:100%;max-width:440px;display:flex;flex-direction:column;gap:18px}
.solo .caixa.larga{max-width:720px}
.solo .marca{display:flex;align-items:baseline;gap:10px;justify-content:center;background:var(--preto);border-radius:var(--raio);padding:18px}
.solo .marca .f{font-family:Archivo,sans-serif;font-style:italic;font-weight:800;font-size:26px;color:#fff}
.solo .marca .p{font-size:11px;font-weight:600;letter-spacing:.22em;color:var(--azul-claro)}
.solo .marca.adm .p{color:#FCA5A5}

/* celular */
@media (max-width:760px){
  .side{display:none}
  .main{padding:0 0 96px}
  .wrap{padding:0 16px;gap:16px}
  .mtop{display:flex;justify-content:space-between;align-items:center;margin:0 -16px;padding:12px 16px;background:var(--preto)}
  .mtop .brand{padding:0;flex-direction:row;align-items:baseline;gap:10px}
  .mtop .ajudab{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:1px solid var(--borda-escura);background:var(--preto2);color:#fff;font-weight:700;text-decoration:none}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:var(--preto);padding:0 4px env(safe-area-inset-bottom)}
  .tab{flex:1;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:12px;font-weight:500;color:var(--menu);text-decoration:none}
  .tab svg{width:20px;height:20px}
  .tab[aria-current=page]{color:#fff;font-weight:700;box-shadow:inset 0 3px 0 var(--azul)}
  .grid,.grid2{grid-template-columns:1fr}
  .title{font-size:24px}
  .grande{font-size:34px}
  .t td.fixa,.t th.fixa{position:sticky;left:0;z-index:2;box-shadow:1px 0 0 var(--linha)}
  .t td.cb,.t th.cb{position:sticky;left:0;z-index:3}
  .t td.cb+td.fixa,.t th.cb+th.fixa{left:44px}
  .busca{flex:1 1 100%}
  .bulk{top:33px;border-radius:0;margin:0 -16px;padding:10px 16px}
  .bulk .bbtn.limpar{margin-left:0}
  .cab .acoes{width:100%}
  .cab .acoes>*{flex:1}
  .row.quebra{flex-wrap:wrap}
  .lista-hoje .row{align-items:flex-start}
  .lista-hoje .v{white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.m20{font-size:20px}.pre{white-space:pre-wrap}.centro{text-align:center}.limpo{border:0;padding:0;margin:0}.azul-txt{color:var(--azul)!important}
.card.interno{padding:14px;gap:4px;box-shadow:none}
#contas-app{min-width:0;display:flex;flex-direction:column;gap:16px}
.wrap>*{min-width:0}
.tbox{max-width:100%}
a.pill{text-decoration:none}a.pill:hover{filter:brightness(.96)}
.precobox .lin{display:flex;justify-content:space-between;gap:8px}
.tbox{position:relative}
table.t.larga{min-width:960px}
.t td,.t th{padding:12px 12px}
@media (min-width:1500px){.t td,.t th{padding:12px 14px}}
.st .m{white-space:normal;min-width:23ch;max-width:52ch}
#contas-app>div:empty{display:none}

/* ===== rodada 2 (lente visual) ===== */
.app{min-height:calc(100vh - 33px)}
.topo{display:flex;justify-content:space-between;align-items:center;gap:12px}
.painel .topo .mini{flex-shrink:0}
ol.passos{padding:0;margin:0}
.sim-curto{display:none}
.macoes{display:flex;gap:8px}
.macoes svg{width:20px;height:20px}
.menu-cel .row{text-decoration:none;color:var(--titulo);font-weight:600;min-height:52px}
.menu-cel .row svg{width:20px;height:20px;color:var(--sec)}
.tut img{height:auto;max-width:100%}
input[type=file].input{padding:8px 10px;font-size:14px;display:flex;align-items:center}
input[type=file].input::file-selector-button{min-height:34px;margin-right:12px;padding:0 14px;border-radius:8px;border:1px solid var(--borda-campo);background:#fff;color:var(--titulo);font:600 13px Poppins,system-ui,sans-serif;cursor:pointer}
.result .row{flex-wrap:wrap}
.result .row>span:last-child{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
[data-passo=feito]:not([hidden]){display:flex;flex-direction:column;gap:14px}
.bar{background:#CBD5E1}
.brand.adm .p,.solo .marca.adm .p{color:var(--azul-claro)}
/* tabela de contas cabe no desktop: conta fixa à esquerda, ação fixa à direita */
table.t.contas{min-width:920px}
table.t.contas.com-parceiro{min-width:1040px}
.t.contas .bar{width:96px}
.t.contas td.fixa,.t.contas th.fixa{position:sticky;left:44px;z-index:2;box-shadow:1px 0 0 var(--linha)}
.t.contas td.cb,.t.contas th.cb{position:sticky;left:0;z-index:3}
.t.contas td.acao,.t.contas th.acao{position:sticky;right:0;z-index:2;box-shadow:-1px 0 0 var(--linha)}
.t.contas th.fixa,.t.contas th.cb,.t.contas th.acao{background:#F8FAFC}
/* admin mais denso */
.adm .card{padding:16px;gap:12px}
.adm .grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.adm .grid2{gap:12px}
.adm .card .vazio{padding:16px 8px}
@media (max-width:760px){
  .sim-longo{display:none}.sim-curto{display:inline}
  .mtop .macoes .ajudab{width:44px;height:44px}
  .mini,.bbtn,.fchip,.chip{min-height:44px}
  .t th button{min-height:44px}
  .bulk{top:33px}
  /* extrato vira lista no celular: o quê + valor em destaque, resto embaixo */
  table.t.extrato{min-width:0}
  .t.extrato thead{display:none}
  .t.extrato,.t.extrato tbody{display:block}
  .t.extrato tr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"o v" "c n" "q p";gap:4px 12px;padding:12px 14px;border-bottom:1px solid var(--linha)}
  .t.extrato tr:last-child{border-bottom:none}
  .t.extrato td{padding:0;border:0;white-space:normal;position:static;box-shadow:none}
  .t.extrato td.o{grid-area:o;font-weight:600;color:var(--titulo)}
  .t.extrato td.v{grid-area:v;text-align:right;white-space:nowrap}
  .t.extrato td.c{grid-area:c}
  .t.extrato td.q{grid-area:q;font-size:12px;color:var(--sec)}
  .t.extrato td.n{grid-area:n;font-size:12px;color:var(--sec);text-align:right}
  .t.extrato td.p{grid-area:p;font-size:12px;color:var(--sec);text-align:right}
  .t.extrato td[colspan]{grid-column:1/-1}
}
.msg.warn{background:var(--warn-bg);color:var(--warn)}
/* contas no celular: cada conta vira um cartão (antes só cabiam a caixa, o login cortado e o botão — status, motivo
   e coins ficavam escondidos atrás das colunas fixas e nem rolando pro lado apareciam) */
@media (max-width:760px){
  table.t.contas,table.t.contas.com-parceiro{min-width:0;width:100%}
  .t.contas,.t.contas thead,.t.contas tbody{display:block}
  .t.contas thead tr{display:flex;align-items:center;overflow-x:auto;background:#F8FAFC;border-bottom:1px solid var(--borda)}
  .t.contas thead th,.t.contas thead th.cb,.t.contas thead th.fixa{flex:none;border-bottom:0;position:static;box-shadow:none;padding:4px 10px}
  .t.contas thead th.cb{padding-left:14px}
  .t.contas thead th.acao{display:none}
  .t.contas tbody tr{display:grid;grid-template-columns:44px max-content minmax(0,1fr) auto;align-items:center;
    grid-template-areas:"cb conta conta acao" "cb status status status" "cb parceiro parceiro parceiro" "cb saiu saiu saiu" "cb coins hoje hoje" "cb fica ultima ultima";
    gap:0 8px;padding:12px 14px 12px 0;border-bottom:1px solid var(--linha);background:#fff}
  .t.contas tbody tr.sel{background:var(--sel)}
  .t.contas tbody tr:last-child{border-bottom:none}
  .t.contas tbody td,.t.contas tbody td.cb,.t.contas tbody td.fixa,.t.contas tbody td.acao{display:block;padding:3px 0;border:0;white-space:normal;position:static;box-shadow:none;background:transparent!important;text-align:left;min-width:0}
  .t.contas tbody td.cb{grid-area:cb;align-self:start;padding:0 0 0 14px;width:auto}
  .t.contas tbody td.cb label{margin:0 0 0 -13px}
  .t.contas tbody td.fixa{grid-area:conta;font-weight:600;color:var(--titulo)}
  .t.contas tbody td.fixa .conta>span:last-child,.t.contas tbody td.fixa .conta>a{overflow-wrap:anywhere;min-width:0}
  .t.contas tbody td.acao{grid-area:acao;justify-self:end}
  .t.contas tbody td.c-status{grid-area:status}
  .t.contas tbody td.c-status .st{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px}
  .t.contas tbody td.c-status .st .m{min-width:0;font-size:13px}
  .t.contas tbody td.c-parceiro{grid-area:parceiro}
  .t.contas tbody td.c-saiu{grid-area:saiu}
  .t.contas tbody td.c-saiu .lib{flex-direction:row;align-items:center;gap:10px}
  .t.contas tbody td.c-coins{grid-area:coins}
  .t.contas tbody td.c-hoje{grid-area:hoje}
  .t.contas tbody td.c-fica{grid-area:fica}
  .t.contas tbody td.c-ultima{grid-area:ultima}
  .t.contas tbody td[data-rot]{font-size:13px;color:var(--corpo)}
  .t.contas tbody td.c-coins,.t.contas tbody td.c-fica{white-space:nowrap}
  .t.contas tbody td.c-hoje,.t.contas tbody td.c-ultima{padding-left:8px}
  .t.contas tbody td.cb{padding-left:10px}
  .t.contas tbody td[data-rot]::before{content:attr(data-rot) ": ";color:var(--sec)}
  .t.contas tbody td[colspan]{grid-column:1/-1;padding:0 0 0 14px}
  .t.contas tbody tr.skel{grid-template-areas:none;padding:14px}
  .t.contas tbody tr.skel td{grid-area:auto;padding:4px 0}
  .t.contas tbody tr.skel td:nth-child(n+7){display:none}
}
.irdia{display:inline-flex;align-items:center;gap:8px;margin-left:auto}
.irdia .input{width:auto;min-height:36px;padding:4px 10px}
@media (max-width:760px){.irdia{margin-left:0;flex:1 1 100%}.irdia .input{flex:1;min-height:44px}}
/* conferência da planilha no celular: o MOTIVO do ajuste fica embaixo da conta (antes ficava cortado, fora da tela) */
@media (max-width:760px){
  .t.conf thead{display:none}
  .t.conf,.t.conf tbody{display:block}
  .t.conf tr{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-template-areas:"l p c" "s s s";gap:6px 10px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--linha)}
  .t.conf tr:last-child{border-bottom:none}
  .t.conf td{padding:0;border:0;white-space:normal;text-align:left}
  .t.conf td:nth-child(1){grid-area:l;color:var(--sec);font-size:12px}
  .t.conf td:nth-child(1)::before{content:"Linha "}
  .t.conf td:nth-child(2){grid-area:p}
  .t.conf td:nth-child(3){grid-area:c;overflow-wrap:anywhere;font-weight:600}
  .t.conf td:nth-child(4){grid-area:s}
  .t.conf .st .m{min-width:0;font-size:13px}
}

/* importação: confirmar senha com espaço na ponta */
.confirma-senha{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:13px;font-weight:600;cursor:pointer;color:var(--titulo)}
.confirma-senha input{width:20px;height:20px;accent-color:var(--azul);flex-shrink:0}
/* de quando é o saldo (o saldo só muda com transferência ou atualização) */
.saldo-de{display:block;font-size:12px;font-weight:400;color:var(--sec);white-space:nowrap}
@media (max-width:760px){.t.contas tbody td.c-coins .saldo-de{display:block;white-space:normal}}
/* lista de dados (tela da conta no admin): a coluna do valor encolhe no celular em vez de empurrar a página pro lado */
.dl{grid-template-columns:max-content minmax(0,1fr)}
.dl dd .mini{white-space:normal;text-align:center;height:auto;padding-top:6px;padding-bottom:6px}
