/* Painel de tarefas do NythOT. Usa os tokens do design system NYTH (ds/). Sem estilos inline: a CSP não os permite. */
body{min-height:100vh}
.login-page{display:grid;place-items:center;padding:var(--space-6);background:radial-gradient(120% 80% at 50% 0%,var(--umber-850),var(--bg) 60%)}
.login{width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-3)}
.login__sigil{opacity:.95;margin-bottom:var(--space-2)}
.login__wordmark{font:var(--type-wordmark);font-size:var(--text-3xl);letter-spacing:var(--tracking-wordmark);color:var(--parchment-100);margin:0 0 var(--space-4)}
.login__form{width:100%;display:flex;flex-direction:column;gap:var(--space-4);text-align:left;padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--elevation-raised)}
.login__foot{font:var(--type-caption);color:var(--text-muted);margin-top:var(--space-2)}

.top{position:sticky;top:0;z-index:var(--z-sticky);background:rgba(13,11,10,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--border)}
.top__in{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:60px;flex-wrap:wrap;padding-block:var(--space-2)}
.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:inherit}
.brand__name{font:600 var(--text-lg)/1 var(--font-display);letter-spacing:var(--tracking-wordmark);color:var(--parchment-100)}
.brand__sub{font:700 var(--text-xs)/1 var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-accent);padding-left:var(--space-3);border-left:1px solid var(--border-strong)}
.top__right{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}
.top__right form{margin:0}
.who{font:var(--type-ui-sm);color:var(--text-secondary)}
.fresh{font:var(--type-ui-sm);color:var(--text-muted);padding:2px 10px;border:1px solid var(--border);border-radius:var(--radius-pill)}
.fresh.is-ok{color:var(--success);border-color:var(--success-border);background:var(--success-bg)}
.fresh.is-stale{color:var(--warning);border-color:var(--warning-border);background:var(--warning-bg)}

.main{display:flex;flex-direction:column;gap:var(--space-10);padding-block:var(--space-8) var(--space-12)}
.main>section{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}
.sect{font:700 var(--text-sm)/1.2 var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-accent);margin:0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}
.hint{font:var(--type-caption);color:var(--text-muted)}
.notice{padding:var(--space-4);border:1px solid var(--warning-border);background:var(--warning-bg);color:var(--warning);border-radius:var(--radius-card);font:var(--type-ui)}
.panel,.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--elevation-card);padding:var(--space-5);min-width:0}

/* status */
.st-Feito{--c:var(--success);--cb:var(--success-bg)}
.st-Em-andamento{--c:var(--info);--cb:var(--info-bg)}
.st-Bloqueado{--c:var(--warning);--cb:var(--warning-bg)}
.st-Backlog{--c:var(--stone-400);--cb:rgba(138,131,120,.14)}
.pill{display:inline-block;padding:1px 9px;border-radius:var(--radius-pill);font:700 var(--text-xs)/1.5 var(--font-ui);letter-spacing:var(--tracking-label);color:var(--c);background:var(--cb);white-space:nowrap}

.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-4)}
.card h3{font:600 var(--text-lg)/1.2 var(--font-display);letter-spacing:var(--tracking-display);margin:0;display:flex;justify-content:space-between;gap:var(--space-3);align-items:baseline}
.card h3 a{color:inherit;text-decoration:none}
.card h3 a:hover{color:var(--text-accent)}
.card .total{font:var(--type-numeric);color:var(--text-muted);white-space:nowrap}
.bar{display:flex;height:10px;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-inset);margin:var(--space-4) 0 var(--space-3);box-shadow:var(--shadow-inset)}
.bar i{display:block;height:100%;background:var(--c)}
.legend{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);font:var(--type-ui-sm);color:var(--text-secondary)}
.legend b{font-variant-numeric:tabular-nums;color:var(--text)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c);margin-right:6px}

.attention{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--space-4)}
.list h3{font:700 var(--text-sm)/1.2 var(--font-ui);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-secondary);margin:0 0 var(--space-3);display:flex;justify-content:space-between}
.list h3 span{font-variant-numeric:tabular-nums;color:var(--text-muted)}
.list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.list li{padding:var(--space-2) 0;border-top:1px solid var(--border-subtle);min-width:0}
.list li:first-child{border-top:0}
.list a{text-decoration:none;color:var(--text)}
.list a:hover .t{color:var(--text-accent)}
.code{font:700 var(--text-xs)/1.3 var(--font-ui);letter-spacing:var(--tracking-label);color:var(--text-accent);font-variant-numeric:tabular-nums;white-space:nowrap}
.t{display:block;font:var(--type-ui-sm);overflow-wrap:anywhere}
.meta{display:block;font:var(--type-caption);color:var(--text-muted)}
.empty{font:italic 400 var(--text-base)/1.4 var(--font-serif);color:var(--text-muted);margin:0}

.stage{display:grid;grid-template-columns:minmax(120px,190px) 1fr auto;gap:var(--space-4);align-items:center;padding:var(--space-2) 0;border-top:1px solid var(--border-subtle)}
.stage:first-child{border-top:0}
.stage .bar{margin:0}
.stage .n{font:var(--type-numeric);color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}
.stage a{color:var(--text);text-decoration:none;font:var(--type-ui-sm)}
.stage a:hover{color:var(--text-accent)}

.sugg-counts{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-bottom:var(--space-4)}
.sugg-counts div{display:flex;flex-direction:column}
.sugg-counts b{font:600 var(--text-2xl)/1 var(--font-display);font-variant-numeric:tabular-nums}
.sugg-counts span{font:700 var(--text-xs)/1.4 var(--font-ui);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}

.filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}
.filters .rv-field{min-width:130px;flex:1 1 130px;max-width:210px}
.count{font:var(--type-ui-sm);color:var(--text-muted);margin:0}
.tablewrap{overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card)}
table{border-collapse:collapse;width:100%;min-width:900px}
th{position:sticky;top:0;text-align:left;font:700 var(--text-xs)/1.2 var(--font-ui);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);padding:var(--space-3);border-bottom:1px solid var(--border-strong);background:var(--surface);white-space:nowrap}
td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-subtle);vertical-align:top;font:var(--type-ui-sm)}
tbody tr:hover{background:var(--state-hover-overlay)}
tr:last-child td{border-bottom:0}
td.title{min-width:280px;max-width:520px;overflow-wrap:anywhere}
td a{color:var(--text);text-decoration:none}
td a:hover{color:var(--text-accent);text-decoration:underline}
.pr{font:700 var(--text-xs)/1.4 var(--font-ui);color:var(--text-muted)}
.pr-P0{color:var(--danger)}
.child{padding-left:var(--space-4);color:var(--text-secondary)}

.codes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:var(--space-3)}
.codechip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card)}
.codechip span{display:flex;flex-direction:column;min-width:0}
.codechip small{font:700 var(--text-2xs)/1.3 var(--font-ui);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted)}
.codechip b{font:700 var(--text-sm)/1.3 var(--font-ui);color:var(--text-accent);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.codechip button{flex:none}
.foot{padding-block:var(--space-6);border-top:1px solid var(--border-subtle);font:var(--type-caption);color:var(--text-muted)}

@media (max-width:640px){
  .stage{grid-template-columns:1fr;gap:var(--space-2)}
  .brand__sub{display:none}
}
