/* Studio FB · visual do sistema: Notion (páginas, tabelas, barra lateral) + Trello (quadros e cartões).
   Laranja do Studio só no que é ação. Os módulos usam as variáveis e classes daqui.
   Os nomes antigos das variáveis (--texto, --suave, --laranja...) continuam valendo para as páginas públicas. */
:root{
  --f:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI Variable Display","Segoe UI",Helvetica,Arial,sans-serif;
  --fundo:#fff;--lado:#F8F8F7;--solido:#fff;--cartao:#fff;--hover:rgba(55,53,47,.06);--hover2:rgba(55,53,47,.1);
  --texto:#37352F;--suave:#787774;--fraco:#A5A29C;--linha:#E9E9E7;--neutro-bg:#F1F1EF;--inp:rgba(242,241,238,.6);
  --sombra:0 1px 2px rgba(15,15,15,.06);--sombra-alta:0 0 0 1px rgba(15,15,15,.05),0 3px 6px rgba(15,15,15,.1),0 9px 24px rgba(15,15,15,.2);
  --laranja:#FF6600;--laranja-bg:#FDEBDD;--laranja-txt:#D9730D;--pri:#FF6600;--pri-txt:#fff;--sel:rgba(255,102,0,.06);
  --verde:#448361;--verde-bg:#DBEDDB;--amarelo:#CB912F;--amarelo-bg:#FDECC8;--vermelho:#D44C47;--vermelho-bg:#FFE2DD;--azul:#337EA9;--azul-bg:#D3E5EF;
  /* etiquetas do Notion (fundo / texto) */
  --t-gray:#E3E2E0;--t-grayt:#32302C;--t-brown:#EEE0DA;--t-brownt:#442A1E;--t-orange:#FADEC9;--t-oranget:#49290E;--t-yellow:#FDECC8;--t-yellowt:#402C1B;
  --t-green:#DBEDDB;--t-greent:#1C3829;--t-blue:#D3E5EF;--t-bluet:#183347;--t-purple:#E8DEEE;--t-purplet:#412454;--t-red:#FFE2DD;--t-redt:#5D1715;
  /* quadro do Trello */
  --lista:#F1F2F4;--cs:0 1px 1px rgba(9,30,66,.25),0 0 1px rgba(9,30,66,.31);--ct:#172B4D;--cm:#626F86;
  --L-green:#4BCE97;--L-yellow:#F5CD47;--L-orange:#FEA362;--L-red:#F87168;--L-purple:#9F8FEF;--L-blue:#579DFF;--L-sky:#6CC3E0;--L-lime:#94C748;--L-gray:#DCDFE4;--Lt:#172B4D;
  --n-ok:#1F845A;--n-ate:#B38600;--n-ruim:#C9372C;
  --raio:6px;color-scheme:light;
}
[data-tema=escuro]{
  --fundo:#191919;--lado:#202020;--solido:#252525;--cartao:#202020;--hover:rgba(255,255,255,.055);--hover2:rgba(255,255,255,.09);
  --texto:rgba(255,255,255,.86);--suave:#9B9B9B;--fraco:#6F6F6F;--linha:#2F2F2F;--neutro-bg:#252525;--inp:rgba(255,255,255,.055);
  --sombra:0 1px 2px rgba(0,0,0,.3);--sombra-alta:0 0 0 1px rgba(255,255,255,.07),0 3px 6px rgba(0,0,0,.3),0 9px 24px rgba(0,0,0,.5);
  --laranja-bg:rgba(255,102,0,.16);--laranja-txt:#FF8A3D;--sel:rgba(255,102,0,.1);
  --verde:#4DAB7A;--verde-bg:#243D30;--amarelo:#D9A441;--amarelo-bg:#56452A;--vermelho:#E06C66;--vermelho-bg:#522E2A;--azul:#5E9FD0;--azul-bg:#1F3448;
  --t-gray:#3A3A3A;--t-grayt:#e8e8e8;--t-brown:#4A3228;--t-brownt:#f1e2da;--t-orange:#5C3B23;--t-oranget:#ffe6d1;--t-yellow:#56452A;--t-yellowt:#fbecc9;
  --t-green:#243D30;--t-greent:#d9f2df;--t-blue:#1F3448;--t-bluet:#d6e9f7;--t-purple:#3C2D49;--t-purplet:#eedcf7;--t-red:#522E2A;--t-redt:#ffdcd7;
  --lista:#1D2125;--cs:0 1px 1px rgba(3,4,4,.5),0 0 1px rgba(3,4,4,.5);--ct:#B6C2CF;--cm:#8C9BAB;
  --L-green:#216E4E;--L-yellow:#7F5F01;--L-orange:#A54800;--L-red:#AE2E24;--L-purple:#5E4DB2;--L-blue:#0055CC;--L-sky:#206A83;--L-lime:#4C6B1F;--L-gray:#454F59;--Lt:#DEE4EA;
  --n-ok:#4BCE97;--n-ate:#F5CD47;--n-ruim:#F87168;
  color-scheme:dark;
}
[data-tema=escuro] .cartao-q{background:#22272B}
*{box-sizing:border-box;margin:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;background:var(--fundo)}
body{font:14px/1.5 var(--f);background:var(--fundo);color:var(--texto);min-height:100vh;-webkit-font-smoothing:antialiased}
button,select,input,textarea{font:inherit;color:inherit}
input,select,textarea{font-size:16px}
a{color:inherit}
svg.i{width:18px;height:18px;flex:none}

/* ---------- casca: barra lateral + conteúdo ---------- */
.app{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.lado{background:var(--lado);position:sticky;top:0;height:100vh;overflow:auto;padding:8px;display:flex;flex-direction:column;gap:1px;font-weight:500;color:var(--suave);z-index:30}
.ws{display:flex;align-items:center;gap:9px;height:38px;padding:0 8px;color:var(--texto);font-weight:600;text-decoration:none;border-radius:6px;margin-bottom:2px}
.ws img{width:24px;height:24px;border-radius:6px;flex:none}
.ws{white-space:nowrap;overflow:hidden}
.si{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px;border-radius:6px;text-decoration:none;color:inherit;border:0;background:none;width:100%;cursor:pointer;text-align:left}
.si:hover{background:var(--hover)}
.si .pi{width:20px;height:20px;display:grid;place-items:center;flex:none;color:var(--fraco)}
.si .pi svg{width:18px;height:18px}
.si span.n{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.si b{font-weight:500;font-size:12px;color:var(--fraco)}
.si b.alerta{background:var(--laranja);color:#fff;border-radius:8px;padding:0 6px;line-height:16px}
.si kbd{font:500 11px var(--f);color:var(--fraco)}
.si.on{background:var(--hover);color:var(--texto)}
.sec{font-size:12px;font-weight:500;color:var(--fraco);padding:16px 8px 4px}
.lado .pe{margin-top:auto;padding-top:8px;display:flex;flex-direction:column;gap:1px}
.eu{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px;border-radius:6px;cursor:pointer;border:0;background:none;width:100%;text-align:left;color:var(--texto)}
.eu:hover{background:var(--hover)}
.av{width:24px;height:24px;border-radius:50%;display:inline-grid;place-items:center;font:600 10px var(--f);color:#fff;flex:none;letter-spacing:0}
.conteudo{min-width:0;display:flex;flex-direction:column}
.barra{height:45px;display:flex;align-items:center;gap:6px;padding:0 12px;color:var(--fraco);position:sticky;top:0;background:var(--fundo);z-index:20}
.barra .cr{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden}
.barra .cr b{color:var(--texto);font-weight:400}
.barra .sp{flex:1}
.ic-btn{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;color:var(--suave);border:0;background:none;cursor:pointer;text-decoration:none;flex:none}
.ic-btn:hover{background:var(--hover)}
.ic-btn svg{width:18px;height:18px}
#btMenu{display:none}

/* ---------- página no estilo Notion ---------- */
main.pag{padding:0 56px 96px;width:100%;max-width:1180px;margin:0 auto}
main.pag.larga{max-width:none;padding:0 0 24px}
main.pag.larga .pg-cab{padding:0 48px}
.pg-cab{padding-top:16px}
.pg-ic{width:56px;height:56px;border-radius:10px;display:grid;place-items:center;background:var(--t-orange);color:var(--laranja-txt)}
.pg-ic svg{width:32px;height:32px;stroke-width:1.6}
h1{font-size:34px;line-height:1.2;font-weight:700;letter-spacing:-.01em;margin-top:8px}
h2{font-size:24px;font-weight:700;letter-spacing:-.01em;line-height:1.25}
h3{font-size:18px;font-weight:600;letter-spacing:-.005em}
.sub,.desc{color:var(--suave);font-size:15px;margin-top:4px}
.cab-acoes{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.vistas{display:flex;align-items:center;gap:2px;margin-top:16px;border-bottom:1px solid var(--linha);flex-wrap:wrap}
.vw{white-space:nowrap;display:flex;align-items:center;gap:6px;height:32px;padding:0 8px;color:var(--suave);font-weight:500;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;cursor:pointer;text-decoration:none}
.vw:hover{color:var(--texto)}
.vw svg{width:16px;height:16px}
.vw em{font-style:normal;color:var(--fraco);font-weight:400}
.vw.on{color:var(--texto);border-bottom-color:var(--texto)}
.vistas .sp{flex:1}
.ferr{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 0}
.titulo-sec{font-size:20px;font-weight:600;margin:32px 0 8px;display:flex;align-items:center;gap:8px}
.titulo-sec .mais-link{margin-left:auto;font-size:14px;font-weight:500;color:var(--suave);text-decoration:none}
.titulo-sec .mais-link:hover{color:var(--texto)}
.linha{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.muted{color:var(--suave)}.fraco{color:var(--fraco)}.pq{font-size:13px}

/* ---------- controles ---------- */
.btn{border:1px solid var(--linha);background:var(--fundo);border-radius:6px;height:32px;padding:0 12px;font-weight:500;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;color:var(--texto);white-space:nowrap;transition:background .12s}
.btn:hover{background:var(--hover)}
.btn svg{width:16px;height:16px}
.btn.pri,.btn.lar{background:var(--laranja);border-color:var(--laranja);color:#fff}
.btn.pri:hover,.btn.lar:hover{background:#E85D00}
.btn.cinza{background:var(--hover);border-color:transparent}
.btn.cinza:hover{background:var(--hover2)}
.btn.sem{border-color:transparent;background:none;color:var(--suave)}
.btn.sem:hover{background:var(--hover);color:var(--texto)}
.btn.peq{height:28px;padding:0 10px;font-size:13px}
.btn.perigo{color:var(--vermelho)}
.btn.zap{background:#25D366;border-color:#25D366;color:#fff}
.btn:disabled{opacity:.5;cursor:default}
.campo{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.campo label{font-size:12px;font-weight:500;color:var(--suave)}
.inp,select.inp,textarea.inp{background:var(--inp);border:1px solid var(--linha);border-radius:6px;padding:0 10px;height:36px;width:100%;outline:none;color:var(--texto)}
textarea.inp{min-height:90px;resize:vertical;padding:8px 10px;height:auto;line-height:1.5}
.inp:focus{border-color:rgba(255,102,0,.55);box-shadow:0 0 0 3px rgba(255,102,0,.14)}
.chip{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:14px;border:1px solid var(--linha);color:var(--suave);font-size:13px;font-weight:500;background:none;cursor:pointer;white-space:nowrap}
.chip:hover{background:var(--hover)}
.chip svg{width:14px;height:14px}
.chip.on{background:rgba(255,102,0,.08);border-color:rgba(255,102,0,.35);color:var(--laranja-txt)}
.busca-in{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:6px;color:var(--fraco)}
.busca-in input{border:0;background:none;outline:none;width:180px;font-size:14px;color:var(--texto)}
.busca-in:focus-within{background:var(--hover)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button{border:1px solid var(--linha);background:none;border-radius:14px;height:30px;padding:0 12px;font-weight:500;font-size:14px;cursor:pointer;color:var(--suave)}
.chips button:hover{background:var(--hover)}
.chips button.on{background:var(--laranja);border-color:var(--laranja);color:#fff}

/* ---------- etiquetas ---------- */
.pill{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:3px;font-size:13px;line-height:20px;white-space:nowrap;background:var(--t-gray);color:var(--t-grayt);max-width:100%;overflow:hidden;text-overflow:ellipsis}
.pill.orange{background:var(--t-orange);color:var(--t-oranget)}.pill.yellow{background:var(--t-yellow);color:var(--t-yellowt)}
.pill.green{background:var(--t-green);color:var(--t-greent)}.pill.blue{background:var(--t-blue);color:var(--t-bluet)}
.pill.purple{background:var(--t-purple);color:var(--t-purplet)}.pill.red{background:var(--t-red);color:var(--t-redt)}.pill.brown{background:var(--t-brown);color:var(--t-brownt)}
.lb{display:inline-block;height:16px;padding:0 8px;border-radius:4px;font-size:12px;font-weight:600;line-height:16px;color:var(--Lt);white-space:nowrap;background:var(--L-gray);max-width:100%;overflow:hidden;text-overflow:ellipsis}
.lb.green{background:var(--L-green)}.lb.yellow{background:var(--L-yellow)}.lb.orange{background:var(--L-orange)}.lb.red{background:var(--L-red)}
.lb.purple{background:var(--L-purple)}.lb.blue{background:var(--L-blue)}.lb.sky{background:var(--L-sky)}.lb.lime{background:var(--L-lime)}
.anel{display:inline-flex;align-items:center;gap:5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.anel svg{width:15px;height:15px;flex:none}
.anel.ok{color:var(--n-ok)}.anel.ate{color:var(--n-ate)}.anel.ruim{color:var(--n-ruim)}.anel.sem{color:var(--fraco)}
/* compatibilidade (páginas públicas e telas antigas) */
.tag{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:3px;font-size:13px;white-space:nowrap;background:var(--t-gray);color:var(--t-grayt)}
.tag.lar{background:var(--t-orange);color:var(--t-oranget)}.tag.ok{background:var(--t-green);color:var(--t-greent)}
.tag.ate{background:var(--t-yellow);color:var(--t-yellowt)}.tag.ruim{background:var(--t-red);color:var(--t-redt)}.tag.az{background:var(--t-blue);color:var(--t-bluet)}
.cartao{background:var(--cartao);border:1px solid var(--linha);border-radius:8px}
.bloco{background:var(--neutro-bg);border-radius:8px;padding:16px}
.callout{display:flex;gap:12px;background:var(--neutro-bg);border-radius:6px;padding:16px 16px 16px 12px;line-height:1.6}
.callout .ci{width:24px;height:24px;display:grid;place-items:center;color:var(--laranja-txt);flex:none}
.callout b{display:block}

/* ---------- tabela do Notion ---------- */
.tabela{overflow-x:auto}
table.tab{width:100%;border-collapse:collapse;font-size:14px}
.tab th{font-weight:400;color:var(--suave);text-align:left;height:34px;padding:0 8px;border-bottom:1px solid var(--linha);border-right:1px solid var(--linha);white-space:nowrap}
.tab th:last-child,.tab td:last-child{border-right:0}
.tab th span{display:inline-flex;align-items:center;gap:6px}
.tab th svg{width:15px;height:15px;color:var(--fraco)}
.tab td{height:38px;padding:4px 8px;border-bottom:1px solid var(--linha);border-right:1px solid var(--linha);white-space:nowrap;vertical-align:middle}
.tab tbody tr{cursor:pointer}
.tab tbody tr:hover td{background:var(--hover)}
.tab td.nm{font-weight:500}
.tab td.nm>div{display:flex;align-items:center;gap:8px}
.tab td.nm .av{width:22px;height:22px;font-size:9px}
.tab .num{font-variant-numeric:tabular-nums;color:var(--suave)}
.tab-pe{display:flex;align-items:center;gap:6px;padding:8px;color:var(--fraco);font-size:12px}
.tab-pe b{color:var(--suave);font-weight:500}
.tab-pe .sp{flex:1}

/* ---------- menu suspenso ---------- */
.menu-pop{position:fixed;z-index:70;background:var(--solido);border-radius:8px;box-shadow:var(--sombra-alta);padding:6px;min-width:220px;max-width:320px;max-height:60vh;overflow:auto}
.menu-pop .mi{display:flex;align-items:center;gap:8px;width:100%;min-height:30px;padding:4px 8px;border-radius:5px;border:0;background:none;text-align:left;cursor:pointer;color:var(--texto);font-size:14px}
.menu-pop .mi:hover,.menu-pop .mi.foco{background:var(--hover)}
.menu-pop .mi svg{width:16px;height:16px;color:var(--suave)}
.menu-pop .mi .ok{margin-left:auto;color:var(--laranja-txt)}
.menu-pop .mt{font-size:12px;color:var(--fraco);padding:6px 8px 2px}
.menu-pop .sep{height:1px;background:var(--linha);margin:4px 0}

/* ---------- janelas ---------- */
.fundo-modal{position:fixed;inset:0;background:rgba(15,15,15,.6);z-index:50;display:flex;justify-content:center;align-items:flex-start;padding:48px 16px;overflow:auto}
.modal{background:var(--fundo);border-radius:10px;box-shadow:var(--sombra-alta);width:min(560px,100%);padding:24px;margin:auto 0}
.modal h2{font-size:20px;margin-bottom:16px}
.modal .acoes{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.paleta{width:min(620px,100%);padding:0;overflow:hidden;margin:0}
.paleta .pb-in{display:flex;align-items:center;gap:10px;padding:0 16px;height:52px;border-bottom:1px solid var(--linha);color:var(--fraco)}
.paleta .pb-in input{flex:1;border:0;outline:none;background:none;font-size:17px;color:var(--texto)}
.paleta .pb-res{max-height:60vh;overflow:auto;padding:6px}
.paleta .pr{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;text-decoration:none;color:inherit}
.paleta .pr.foco,.paleta .pr:hover{background:var(--hover)}
.paleta .pr small{color:var(--fraco);margin-left:auto;font-size:12px;white-space:nowrap}
.paleta .pr span.t{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.paleta .pg-grupo{font-size:12px;color:var(--fraco);padding:8px 10px 2px}
.paleta .pr .pi{color:var(--fraco);display:grid;place-items:center;width:24px}

/* ---------- avisos (com desfazer) ---------- */
#avisos{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:80;display:flex;flex-direction:column;gap:8px;align-items:center}
.aviso{background:#2F2F2F;color:#fff;padding:0 6px 0 16px;min-height:40px;border-radius:8px;font-weight:500;font-size:14px;box-shadow:var(--sombra-alta);animation:sobe .2s ease;display:flex;align-items:center;gap:10px}
.aviso:not(:has(button)){padding-right:16px}
.aviso button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:5px;height:28px;padding:0 10px;font-weight:600;cursor:pointer}
.aviso button:hover{background:rgba(255,255,255,.2)}
.aviso.erro{background:var(--vermelho)}
@keyframes sobe{from{opacity:0;transform:translateY(8px)}}

.vazio{padding:40px 20px;text-align:center;color:var(--suave)}
.carregando{padding:60px;text-align:center;color:var(--fraco)}
.rolar-x{overflow-x:auto}

/* tema: cortina da esquerda para a direita */
::view-transition-old(root){animation:none;mix-blend-mode:normal}
::view-transition-new(root){mix-blend-mode:normal;animation:cortina-tema .45s cubic-bezier(.45,0,.55,1) both;-webkit-mask:linear-gradient(90deg,#000 33.34%,transparent 41.67%) 0 0/300% 100% no-repeat;mask:linear-gradient(90deg,#000 33.34%,transparent 41.67%) 0 0/300% 100% no-repeat}
@keyframes cortina-tema{from{-webkit-mask-position:62.5% 0;mask-position:62.5% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}

@media (max-width:900px){
  .app{grid-template-columns:minmax(0,1fr)}
  .lado{position:fixed;left:0;top:0;bottom:0;width:280px;transform:translateX(-100%);transition:transform .2s ease;box-shadow:var(--sombra-alta)}
  body.menu-aberto .lado{transform:none}
  body.menu-aberto::after{content:'';position:fixed;inset:0;background:rgba(15,15,15,.4);z-index:25}
  #btMenu{display:grid}
  main.pag{padding:0 16px 80px}
  main.pag.larga .pg-cab{padding:0 16px}
  h1{font-size:28px}
  .pg-ic{width:44px;height:44px}.pg-ic svg{width:26px;height:26px}
  .busca-in input{width:120px}
  .fundo-modal{padding:12px}
}

/* ---------- quadro do Trello (usado por vários setores) ---------- */
.quadro{display:flex;gap:12px;overflow-x:auto;padding:12px 48px 16px;align-items:flex-start;min-height:calc(100vh - 250px)}
.lista{width:272px;flex:none;background:var(--lista);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 240px)}
.lista.alvo{box-shadow:inset 0 0 0 2px var(--laranja)}
.lh{display:flex;align-items:center;gap:8px;padding:4px 8px 0;font-weight:600;color:var(--ct)}
.lh .dt{width:8px;height:8px;border-radius:50%}
.lh .cnt{margin-left:auto;font-weight:500;font-size:12px;color:var(--cm)}
.lsub{font-size:12px;color:var(--cm);padding:0 8px;margin-top:-6px}
.lista .cards{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:1px 2px 2px;margin:0 -2px}
.lvazia{font-size:13px;color:var(--cm);padding:8px;text-align:center}
.lmais{border:0;background:none;color:var(--cm);font-size:13px;font-weight:500;padding:8px;border-radius:8px;cursor:pointer}
.lmais:hover{background:rgba(9,30,66,.08);color:var(--ct)}
.cartao-q{background:#fff;border-radius:8px;box-shadow:var(--cs);padding:8px 12px;color:var(--ct);display:flex;flex-direction:column;gap:6px;cursor:pointer;text-decoration:none;outline:none;transition:box-shadow .12s}
.cartao-q:hover,.cartao-q:focus-visible{box-shadow:0 0 0 2px var(--laranja)}
.cartao-q.arrastando{opacity:.5;transform:rotate(2deg)}
.lbs{display:flex;gap:4px;flex-wrap:wrap}
.lbs.grandes .lb{height:28px;line-height:28px;font-size:13px;padding:0 10px}
.cq-nome{font-size:14px;line-height:20px;font-weight:500}
.cq-bd{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--cm);min-width:0}
.cq-bd>span{display:flex;align-items:center;gap:4px;white-space:nowrap}
.cq-bd svg{width:14px;height:14px}
.cq-bd .anel svg{width:14px;height:14px}
.cq-bd .sp{flex:1}
.cq-u{min-width:0;overflow:hidden}
.cq-bd .fav{color:#E2B203}.cq-bd .fav svg{fill:currentColor}
.due{border-radius:3px;padding:0 4px;height:20px;font-weight:500}
.due.hoje{background:var(--L-yellow);color:var(--Lt)}
.due.late{background:var(--L-red);color:var(--Lt)}
.due.ok{background:var(--L-green);color:var(--Lt)}
.disc{width:18px;height:18px;border-radius:4px;display:inline-grid;place-items:center;font:700 10px var(--f);color:#fff;flex:none}

.lista .cards{scrollbar-width:thin}
@media (max-width:900px){
  .quadro{padding:12px 16px 16px;scroll-snap-type:x mandatory}
  .lista{width:min(300px,82vw);scroll-snap-align:start;max-height:calc(100vh - 230px)}
}

/* ---------- atividade, propriedades e botões de resultado (vários setores) ---------- */
.cm-ativ{display:flex;flex-direction:column;gap:14px}
.cm-com,.cm-ev{display:flex;gap:10px;align-items:flex-start}
.cm-com small,.cm-ev small{color:var(--fraco);font-size:12px}
.cm-ev{font-size:13px;color:var(--suave);align-items:center}
.cm-ev b{color:var(--texto);font-weight:600}
.cm-bal{background:var(--hover);border-radius:8px;padding:8px 12px;margin-top:4px;white-space:pre-wrap}
.btn.r-ok{background:var(--L-green);border-color:transparent;color:var(--Lt)}
.btn.r-ok:hover{filter:brightness(.95);background:var(--L-green)}
.btn.r-2f{background:var(--L-purple);border-color:transparent;color:var(--Lt)}
.btn.r-2f:hover{filter:brightness(.95);background:var(--L-purple)}
.props{display:flex;flex-direction:column;margin-top:18px;max-width:760px}
.pr{display:flex;align-items:center;min-height:34px;font-size:14px}
.pr .k{width:190px;display:flex;align-items:center;gap:8px;color:var(--suave);flex:none}
.pr .k svg{width:16px;height:16px;color:var(--fraco)}
.pr .v{flex:1;padding:4px 6px;min-width:0}
/* regras da senha nova */
.regras-senha{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:13px;color:var(--suave)}
.regras-senha li::before{content:"○";display:inline-block;width:18px;color:var(--fraco)}
.regras-senha li.ok{color:var(--texto)}
.regras-senha li.ok::before{content:"✓";color:#2E9E6B;font-weight:700}
.erro-senha{background:var(--L-red);color:var(--Lt);border-radius:6px;padding:8px 12px;font-size:14px;font-weight:500;margin:0 0 8px}
