/* Sevi · direção «Tinta e Telha» (auditoria de design de 18 out 2026).
   Tinta: texto e ações. Telha: marca, Adicionar e o «agora». Verde: só dinheiro. Vermelho: só atraso. */
:root{
  --bg:#FAF8F4; --surface:#FFFFFF; --surface-2:#F3F0EA; --line:#E6E1D8; --line-2:#D5CFC4;
  --ink:#16211E; --ink-2:#3E4643; --ink-3:#5E6662;
  --acao:#16211E; --acao-forte:#0B1210; --suave:#EFECE6; --tinta-fundo:#16211E;
  --telha:#E8683A; --telha-clara:#F08A5D; --telha-texto:#9A3B16; --telha-suave:#FBE6DA; --ligacao:#9A3B16;
  --dinheiro:#1E6B47; --dinheiro-bg:#E3F1E8;
  --atencao-bg:#FBE6DA; --atencao:#9A3B16; --risco-bg:#FBE4E1; --risco:#B3261E; --risco-forte:#C8321F;
  --ok-bg:#E3F1E8; --ok:#1E6B47; --info-bg:#E5ECFB; --info:#2448A8;
  /* Os dois lados do negócio: comprador, vendedor (proprietário) e equipa */
  --comprador:#24467A; --comprador-bg:#E4ECF7; --comprador-anel:#5677A8;
  --vendedor:#6B4E0E; --vendedor-bg:#F3EBD5; --vendedor-anel:#B8892A;
  --equipa:#5B3A8C; --equipa-bg:#EEE7F7; --equipa-anel:#8A6CB8;
  --r-campo:12px; --r-cartao:18px; --r-folha:24px;
  --f-titulo:'Bricolage Grotesque',system-ui,-apple-system,'Segoe UI',sans-serif;
  /* Movimento (emil-design-eng / apple-design): ease-out forte para responder, curva de gaveta para a folha */
  --ease-out:cubic-bezier(.23,1,.32,1); --ease-drawer:cubic-bezier(.32,.72,0,1);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
button,input,select,textarea{font-family:inherit;color:inherit}
/* Controlos, não conteúdo: sem seleção ao manter o dedo e sem atraso de toque (mobile-native) */
button,.btn,.chip,.act,.navi,.navi-captar,.redondo,.linha-menu,.abas button,.avatar,summary{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
:focus-visible{outline:2px solid var(--acao);outline-offset:2px;border-radius:10px}
a{color:var(--ligacao)}
.num{font-variant-numeric:tabular-nums}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.ic-s{width:16px;height:16px}.ic-l{width:26px;height:26px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Estrutura: pensada para telemóvel; no computador fica uma coluna centrada. */
#app{min-height:100dvh;max-width:560px;margin:0 auto;display:flex;flex-direction:column}
.pagina{flex-grow:1;display:flex;flex-direction:column;gap:22px;padding:16px 16px 120px}
.topo{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:12px}
h1.titulo{margin:0;font-family:var(--f-titulo);font-size:30px;line-height:34px;font-weight:700;letter-spacing:-.02em}
.sec{margin:0;font-size:18px;line-height:24px;font-weight:700}
.sub{margin:0;font-size:17px;line-height:24px;color:var(--ink-2)}
.meta{font-size:14px;line-height:20px;color:var(--ink-3)}
.lbl{font-size:13px;line-height:16px;font-weight:600;color:var(--ink-3)}
.texto{margin:0;font-size:16px;line-height:24px;color:var(--ink-2)}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 18px;border-radius:var(--r-campo);font-size:16px;font-weight:600;border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .16s var(--ease-out),background-color .15s var(--ease-out),border-color .15s var(--ease-out)}
.btn:active{transform:scale(.97)}
.btn-p{background:var(--acao);color:#fff}.btn-p:active{background:var(--acao-forte)}
.btn-s{background:var(--surface);color:var(--ink);border-color:var(--line-2)}
.btn-g{background:var(--surface);color:var(--ink);border-color:var(--line-2)}
.btn-t{background:transparent;color:var(--ligacao);padding:0 10px}
.btn-d{background:var(--surface);color:var(--risco);border-color:#F0C4BD}
.btn-grande{height:56px;font-size:17px;border-radius:14px;width:100%}
.btn-largo{width:100%}
.btn[disabled],.btn[aria-busy="true"]{opacity:.6;cursor:default;transform:none}
.btn[aria-disabled="true"]{opacity:.45;cursor:default;transform:none;pointer-events:none}
.redondo{width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .16s var(--ease-out)}
.redondo:active,.chip:active,.act:active,.linha-menu:active,.abas button:active{transform:scale(.97)}
.avatar{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700;font-size:15px;border:none;cursor:pointer}

/* Cartões, estados */
.cartao{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-cartao);padding:16px;display:flex;flex-direction:column;gap:12px}
.assistente{display:flex;flex-direction:row;gap:12px;align-items:flex-start}
.marca-ia{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:var(--telha);flex-shrink:0}
.marca-ia span{width:8px;height:8px;border-radius:999px;background:var(--ink)}
.vazio{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:28px 12px}
.vazio .circ{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:999px;background:var(--suave);color:var(--acao-forte)}
.vazio h2{margin:0;font-size:22px;line-height:28px}
.barra{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.barra div{height:8px;border-radius:999px;background:var(--acao)}

/* Campos e escolhas */
.campo{display:flex;flex-direction:column;gap:6px}
.campo .ajuda{font-size:13px;line-height:18px;color:var(--ink-3);margin-top:-2px}
.campo input{min-width:0;height:48px;border:1px solid var(--line-2);border-radius:var(--r-campo);padding:0 14px;font-size:16px;background:var(--surface)}
.campo input:focus{outline:none;border:2px solid var(--acao);padding:0 13px;box-shadow:0 0 0 4px var(--suave)}
.campo-grande{display:flex;align-items:center;height:72px;padding:0 18px;border:2px solid var(--acao);border-radius:16px;background:var(--surface)}
.campo-grande input{flex-grow:1;width:100%;border:none;outline:none;background:transparent;font-size:34px;font-weight:700}
.campo-grande span{font-size:26px;font-weight:700;color:var(--ink-3)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 15px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);font-size:15px;font-weight:600;cursor:pointer;transition:transform .16s var(--ease-out),background-color .18s var(--ease-out),border-color .18s var(--ease-out),color .18s var(--ease-out)}
.chip[aria-pressed="true"]{background:var(--acao);border-color:var(--acao);color:#fff}
.erro{display:flex;gap:6px;align-items:center;font-size:14px;color:var(--risco)}
.separador{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:14px}
.separador::before,.separador::after{content:"";flex-grow:1;height:1px;background:var(--line)}
.abas{display:grid;grid-template-columns:1fr 1fr;background:var(--surface-2);border-radius:12px;padding:4px}
.abas button{height:40px;border:none;border-radius:9px;background:transparent;font-size:15px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:background-color .18s var(--ease-out),color .18s var(--ease-out),box-shadow .18s var(--ease-out),transform .16s var(--ease-out)}
.abas button[aria-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px rgba(22,33,30,.12)}
.progresso{flex-grow:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.progresso span{height:6px;border-radius:999px;background:var(--line)}
.progresso span.feito{background:var(--acao)}

/* Navegação inferior */
nav.barra-nav{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:center;background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:saturate(1.8) blur(18px);backdrop-filter:saturate(1.8) blur(18px);border-top:1px solid color-mix(in srgb,var(--line) 85%,transparent);padding-bottom:env(safe-area-inset-bottom)}
nav.barra-nav .itens{display:flex;justify-content:space-around;align-items:flex-end;width:100%;max-width:560px;height:66px;padding:0 6px 8px}
.navi{display:flex;flex-direction:column;align-items:center;gap:4px;width:72px;font-size:13px;font-weight:600;color:var(--ink-3);text-decoration:none}
.navi .pill{display:flex;align-items:center;justify-content:center;width:52px;height:30px;border-radius:999px;transition:background-color .2s var(--ease-out),transform .16s var(--ease-out)}
.navi:active .pill{transform:scale(.9)}
.navi{transition:color .15s var(--ease-out)}
.navi[aria-current="page"]{color:var(--ink)}
.navi[aria-current="page"] .pill{background:var(--acao);color:#fff}
.navi-captar{display:flex;flex-direction:column;align-items:center;gap:4px;width:80px;font-size:13px;font-weight:600;color:var(--ink);text-decoration:none}
.navi-captar span{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:20px;background:var(--telha);color:var(--ink);margin-top:-26px;box-shadow:0 6px 16px rgba(22,33,30,.18);transition:transform .16s var(--ease-out),box-shadow .2s var(--ease-out)}
.navi-captar:active span{transform:scale(.93);box-shadow:0 3px 10px rgba(22,33,30,.18)}

/* Folha inferior e aviso */
.fundo{position:fixed;inset:0;z-index:30;background:rgba(22,33,30,.48);display:flex;align-items:flex-end;justify-content:center;animation:aparecer .2s var(--ease-out);transition:opacity .24s var(--ease-out)}
.fundo.a-fechar{opacity:0}
.folha{width:100%;max-width:560px;max-height:92dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border-radius:var(--r-folha) var(--r-folha) 0 0;padding:10px 16px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:16px;box-shadow:0 -8px 32px rgba(22,33,30,.16);animation:subir .36s var(--ease-drawer);transition:transform .3s var(--ease-drawer)}
.fundo.a-fechar .folha{transform:translateY(100%)}
/* A pega: uma faixa larga para o polegar, com a barra desenhada ao centro */
.folha .puxador{position:relative;align-self:stretch;flex-shrink:0;height:24px;margin:-10px -16px -10px;touch-action:none;cursor:grab}
.folha .puxador::before{content:"";position:absolute;left:50%;top:10px;width:40px;height:5px;margin-left:-20px;border-radius:999px;background:var(--line-2)}
.linha-menu{display:flex;align-items:center;gap:14px;min-height:56px;padding:0 4px;font-size:16px;font-weight:600;color:var(--ink);text-decoration:none;border:none;border-bottom:1px solid var(--surface-2);background:none;width:100%;text-align:left;cursor:pointer}
.linha-menu .ib{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--suave);color:var(--acao-forte)}
.aviso{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:40;display:flex;align-items:center;gap:10px;min-height:52px;padding:0 18px;border-radius:14px;background:var(--ink);color:#fff;font-size:15px;font-weight:600;box-shadow:0 8px 24px rgba(22,33,30,.22);max-width:calc(100% - 32px);animation:aviso-entra .22s var(--ease-out);transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}
.aviso.a-sair{opacity:0;transform:translateX(-50%) translateY(8px)}
@keyframes aviso-entra{from{opacity:0;transform:translateX(-50%) translateY(10px)}}
.aviso .ic{color:var(--telha)}
@keyframes aparecer{from{opacity:0}to{opacity:1}}
@keyframes subir{from{transform:translateY(100%)}}

/* Ajuda */
.passos{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:16px;line-height:24px;color:var(--ink-2)}

/* Etapa 3: pessoas, estados e ações */
button.navi-captar{background:none;border:none;padding:0;cursor:pointer;font-family:inherit}
.badge{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap}
.b-atraso{background:var(--risco-bg);color:var(--risco)}
.b-hoje{background:var(--atencao-bg);color:var(--atencao)}
.b-neutro{background:var(--surface-2);color:var(--ink-2)}
.b-sem{background:var(--surface);color:var(--ink-2);border:1.5px dashed #8E948F}
.b-prometido{background:var(--ink);color:#fff}
.acoes3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.acoes5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.act{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:58px;border-radius:12px;font-size:14px;font-weight:600;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;cursor:pointer;padding:0 2px;font-family:inherit;transition:transform .16s var(--ease-out),border-color .15s var(--ease-out),background-color .15s var(--ease-out)}
.acoes5 .act{height:66px;font-size:12px;letter-spacing:-.01em;white-space:nowrap}
.act-p{background:var(--acao);border-color:var(--acao);color:#fff}
.act-s{background:var(--surface);border-color:var(--line-2);color:var(--ink)}
.act[aria-disabled="true"]{opacity:.45;pointer-events:none}
.av{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;flex-shrink:0;background:var(--suave);color:var(--acao-forte)}
.lista{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-cartao);overflow:hidden}
.linha{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 14px;border-bottom:1px solid var(--surface-2);color:var(--ink);text-decoration:none;transition:background-color .15s var(--ease-out)}
a.linha:active{background:var(--surface-2)}
.linha:last-child{border-bottom:none}
.linha .corpo{flex-grow:1;display:flex;flex-direction:column;gap:2px;min-width:0}
.linha .nome{font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pesquisa{display:flex;align-items:center;gap:10px;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink-3)}
.pesquisa input{flex-grow:1;border:none;outline:none;background:transparent;font-size:16px;color:var(--ink);min-width:0}
.rolar{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none}
.rolar::-webkit-scrollbar{display:none}
.rolar .chip{flex-shrink:0}
textarea{font-family:inherit}
.campo textarea{border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;font-size:16px;resize:vertical;background:var(--surface)}
.linha-tempo{display:flex;flex-direction:column}
.lt{display:flex;gap:14px}
.lt .trilho{display:flex;flex-direction:column;align-items:center;width:36px;flex-shrink:0}
.lt .ponto{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:var(--surface-2);color:var(--ink-2)}
.lt .fio{width:2px;flex-grow:1;background:var(--line);margin:4px 0}
.lt .txt{display:flex;flex-direction:column;gap:2px;padding-bottom:18px;min-width:0}
.barra-fixa{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:center;background:color-mix(in srgb,var(--surface) 84%,transparent);-webkit-backdrop-filter:saturate(1.8) blur(18px);backdrop-filter:saturate(1.8) blur(18px);border-top:1px solid var(--line);padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
.barra-fixa .dentro{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:528px}
details.mais summary{cursor:pointer;color:var(--ligacao);font-weight:600;list-style:none;min-height:44px;display:flex;align-items:center}
details.mais summary::-webkit-details-marker{display:none}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--acao);outline-offset:1px}

/* Efeitos de passar o rato só onde há rato (no toque ficavam presos depois de tocar) */
@media (hover:hover) and (pointer:fine){
  .btn-p:hover{background:var(--acao-forte)}
  .btn-g:hover,.act:hover,.chip:not([aria-pressed="true"]):hover,.redondo:hover{border-color:var(--ink-3)}
  .btn-s:hover{border-color:var(--ink-3)}
  a.linha:hover,.linha-menu:hover{background:var(--surface-2)}
  .navi:hover{color:var(--ink)}
}
/* Menos transparência e mais contraste, quando o telemóvel o pede */
@media (prefers-reduced-transparency:reduce){
  nav.barra-nav,.barra-fixa{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}
}
@media (prefers-contrast:more){
  :root{--line:var(--line-2);--ink-3:var(--ink-2)}
}

/* Backoffice do operador: contas, ficha, saúde, registo, feedback */
.b-ok{background:var(--ok-bg);color:var(--ok)}
.pilha{display:flex;flex-direction:column;gap:14px}
.circ-solta{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:999px;background:var(--suave);color:var(--acao-forte)}
.dois{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.voltar{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-weight:600;text-decoration:none}
.atalhos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
@media (min-width:560px){.atalhos{grid-template-columns:repeat(4,minmax(0,1fr))}}
.atalhos .btn{padding:0 8px;font-size:15px}
.conta{gap:12px}
.conta-ligacao{display:flex;flex-direction:column;gap:4px;min-height:44px;color:inherit;text-decoration:none;min-width:0}
.conta-linha{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}
.conta-nome{overflow-wrap:anywhere;min-width:0}
.conta-email{overflow-wrap:anywhere;margin:0}
.interruptor{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer}
.interruptor>span{display:flex;flex-direction:column;gap:2px;min-width:0}
.interruptor input{appearance:none;-webkit-appearance:none;flex-shrink:0;width:52px;height:32px;border-radius:999px;background:var(--line-2);position:relative;cursor:pointer;margin:6px 0;transition:background-color .18s var(--ease-out)}
.interruptor input::after{content:"";position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:999px;background:#fff;box-shadow:0 1px 3px rgba(22,33,30,.25);transition:transform .18s var(--ease-out)}
.interruptor input:checked{background:var(--acao)}
.interruptor input:checked::after{transform:translateX(20px)}
.interruptor input:disabled{opacity:.5;cursor:default}
.acesso{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;background:var(--suave);color:var(--ink-2);border-radius:var(--r-cartao);padding:10px 14px;font-size:14px;line-height:20px}
.acesso a,.acesso button{font-weight:600;color:inherit;text-decoration:underline;white-space:nowrap;background:none;border:0;padding:0;font:inherit;font-weight:600;cursor:pointer;min-height:28px}
.acesso-urgente{background:var(--atencao-bg);color:var(--atencao)}
.acesso-fim{background:var(--risco-bg);color:var(--risco)}
.password-temp{font:700 26px/1.4 ui-monospace,monospace;letter-spacing:.06em;text-align:center;margin:0;user-select:all;-webkit-user-select:all}
.linha-evento{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-bottom:1px solid var(--line)}
.linha-evento:last-child{border-bottom:none}
.estado-ok{color:var(--ok)}.estado-mau{color:var(--risco)}
textarea.caixa{min-height:140px;border:1px solid var(--line-2);border-radius:var(--r-campo);padding:12px 14px;font-size:16px;line-height:24px;background:var(--surface);resize:vertical}
textarea.caixa:focus{outline:none;border:2px solid var(--acao);padding:11px 13px;box-shadow:0 0 0 4px var(--suave)}
.ligacao-44{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:600;align-self:flex-start}
.seletor{height:48px;border:1px solid var(--line-2);border-radius:var(--r-campo);padding:0 12px;font-size:16px;background:var(--surface);width:100%;min-width:0}
/* Uso do piloto: grelha de 4 semanas por conta e barras do total */
a.uso-conta{color:inherit;text-decoration:none;gap:8px;min-height:44px}
.uso-resumo{font-size:17px;line-height:24px;font-weight:700}
.uso-grelha{display:flex;flex-direction:column;gap:6px;padding:4px 0}
.uso-semana{display:grid;grid-template-columns:52px 1fr 36px;align-items:center;gap:8px}
.uso-rotulo{font-size:13px;line-height:16px}
.uso-dias{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;max-width:260px}
.uso-dia{height:18px;border-radius:5px;background:var(--surface-2);border:1px solid var(--line)}
.uso-dia.on{background:var(--acao);border-color:var(--acao)}
.uso-n{font-size:13px;font-weight:700;color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums}
.uso-barras{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}
.uso-barra{display:flex;flex-direction:column;align-items:center;gap:4px}
.uso-barra .uso-n{text-align:center}
.uso-coluna{display:flex;align-items:flex-end;width:100%;max-width:56px;height:72px;border-radius:8px;background:var(--surface-2)}
.uso-coluna span{display:block;width:100%;min-height:4px;border-radius:8px;background:var(--acao)}
@media (hover:hover) and (pointer:fine){a.uso-conta:hover{border-color:var(--ink-3)}}
/* Avisos: título, hora e interruptor numa linha; a hora é um campo nativo de relógio. */
.aviso-linha{display:flex;align-items:center;gap:12px;min-height:56px}
.aviso-texto{flex-grow:1;display:flex;flex-direction:column;gap:2px;min-width:0;cursor:pointer}
.aviso-hora{height:40px;min-width:118px;border:1px solid var(--line-2);border-radius:var(--r-campo);padding:0 10px;font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;background:var(--surface);color:var(--ink)}
.aviso-hora:focus{outline:none;border:2px solid var(--acao);padding:0 9px;box-shadow:0 0 0 4px var(--suave)}
.aviso-hora:disabled{opacity:.45}

/* Sevi: valores em euros, «em jogo», papéis e linhas do Hoje */
.valor{font-family:var(--f-titulo);font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.euros{color:var(--dinheiro);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.marca{display:inline-flex;align-items:baseline;gap:4px;font-family:var(--f-titulo);font-weight:700;letter-spacing:-.045em;line-height:1}
.marca i{display:inline-block;width:.23em;height:.23em;border-radius:999px;background:var(--telha)}
.em-jogo{background:var(--tinta-fundo);color:#FAF8F4;border-radius:22px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:12px;text-decoration:none}
.em-jogo .rot{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--telha-clara)}
.em-jogo .sec-meta{font-size:13px;color:#B9C0BC}
.em-jogo .grande{font-family:var(--f-titulo);font-size:42px;line-height:44px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.em-jogo .trilho{height:6px;border-radius:999px;background:#33403C;overflow:hidden}
.em-jogo .trilho div{height:6px;border-radius:999px;background:var(--telha)}
.rotulo{margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.icone-btn{width:52px;height:52px;flex-shrink:0;border-radius:14px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .16s var(--ease-out)}
.icone-btn:active{transform:scale(.95)}
.av.p-comprador{background:var(--comprador-bg);color:var(--comprador);box-shadow:inset 0 0 0 2px var(--comprador-anel)}
.av.p-vendedor{background:var(--vendedor-bg);color:var(--vendedor);box-shadow:inset 0 0 0 2px var(--vendedor-anel)}
.av.p-equipa{background:var(--equipa-bg);color:var(--equipa);box-shadow:inset 0 0 0 2px var(--equipa-anel)}
.av.p-outro{background:var(--suave);color:var(--ink-2)}
.linha .estado-atraso{color:var(--risco);font-weight:600}
.etapas{display:grid;gap:4px}
.etapas span{height:6px;border-radius:999px;background:var(--line)}
.etapas span.on{background:var(--acao)}
.funil{display:grid;gap:4px;align-items:end;height:58px}
.funil span{border-radius:6px;background:var(--line);min-height:4px}
.funil span.on{background:var(--vendedor-anel)}
.funil.comprador span.on{background:var(--comprador-anel)}
.funil.equipa span.on{background:var(--equipa-anel)}
.alerta-linha{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 14px;border-radius:16px;background:var(--risco-bg);color:var(--ink);text-decoration:none;font-size:15px;font-weight:600}
.alerta-linha .ponto{width:10px;height:10px;border-radius:999px;background:var(--risco);flex-shrink:0}
.proximo-passo{background:var(--telha-suave);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:12px}
.proximo-passo .rot{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--telha-texto)}
.entrar{min-height:100dvh;box-sizing:border-box;background:var(--tinta-fundo);color:#FAF8F4;display:flex;flex-direction:column;padding:40px 24px calc(28px + env(safe-area-inset-bottom))}
.entrar a{color:var(--telha-clara)}
.entrar .btn-claro{background:#FAF8F4;color:var(--ink)}
.entrar .btn-contorno{background:transparent;color:#FAF8F4;border:1.5px solid #4A5753}
.entrar .cartao{background:#1C2421;border-color:#2C3632;color:#ECE8E0}
.entrar .cartao .lbl{color:#B9C0BC}
.entrar .erro{color:#F4A39B}
.entrar .abas button{color:#C9CFCB}
.entrar .abas button[aria-selected="true"]{color:var(--ink)}
.entrar .campo input{color:var(--ink);background:#FAF8F4}
