/* ── Goldplay Font ──────────────────────────────────────────────────────────── */
@font-face{font-family:'Goldplay';src:url('/fonts/Goldplay-Regular.otf')format('opentype');font-weight:400;font-style:normal}
@font-face{font-family:'Goldplay';src:url('/fonts/Goldplay-Medium.otf')format('opentype');font-weight:500;font-style:normal}
@font-face{font-family:'Goldplay';src:url('/fonts/Goldplay-SemiBold.otf')format('opentype');font-weight:600;font-style:normal}
@font-face{font-family:'Goldplay';src:url('/fonts/Goldplay-Bold.otf')format('opentype');font-weight:700;font-style:normal}

:root{
  --bg:#0e1014;
  --panel:#181c24;
  --panel-2:#1e2330;
  --text:#f0f2f8;
  --muted:#6b7585;
  --border:rgba(255,255,255,.07);
  --accent:#F4035C;
  --accent-2:#FF6600;
  --accent-grad:linear-gradient(135deg,#F4035C 0%,#FF6600 100%);
  --accent-soft:linear-gradient(135deg,rgba(244,3,92,.16) 0%,rgba(255,102,0,.16) 100%);
  --warn:#fb7185;
  --ok:#34d399;
  --amber:#f59e0b;
  --shadow:0 20px 60px rgba(0,0,0,.55);
  --radius:12px;
}
*{box-sizing:border-box}
body{
  margin:0;
  background:
    radial-gradient(1200px 700px at 5% 0%,rgba(244,3,92,.06) 0%,transparent 60%),
    radial-gradient(900px 500px at 95% 5%,rgba(255,102,0,.05) 0%,transparent 55%),
    var(--bg);
  color:var(--text);
  font:14px/1.5 'Goldplay',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-weight:400;
  min-height:100vh;
}

/* ── Header ─────────────────────────────────────────────────────────────────── */
.header{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:10px 28px;
  border-bottom:1px solid var(--border);
  background:rgba(14,16,20,.93);
  backdrop-filter:blur(20px);
  position:sticky;top:0;z-index:20;
}
.header__brand{display:flex;align-items:center;gap:14px}
.header__logo{height:38px;max-width:160px;width:auto;object-fit:contain;display:block}
.header__title{
  font-size:20px;font-weight:700;letter-spacing:-.02em;
  background:var(--accent-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.header__sub{
  font-size:11px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;
  color:var(--muted);margin-top:2px;
}
.header__controls{display:flex;align-items:center;gap:8px}

/* ── Toolbar ─────────────────────────────────────────────────────────────────── */
.toolbar{
  display:flex;align-items:center;justify-content:flex-start;gap:12px;
  padding:8px 28px;
  border-bottom:1px solid var(--border);
  background:rgba(12,14,18,.75);
  position:sticky;top:61px;z-index:19;
  backdrop-filter:blur(12px);
  flex-wrap:wrap;
}
.tabs{display:flex;gap:4px;flex:1;justify-content:center;flex-wrap:nowrap}
.tab{
  padding:6px 16px;border-radius:999px;border:1px solid transparent;
  background:transparent;color:var(--muted);font-size:13px;font-weight:600;
  cursor:pointer;transition:color .15s,background .15s,border-color .15s;
  white-space:nowrap;font-family:'Goldplay',sans-serif;
  display:inline-flex;align-items:center;gap:6px;
}
.tab:hover{color:var(--text);background:rgba(255,255,255,.05)}
.tab--active{background:var(--accent-soft);border-color:rgba(244,3,92,.28);color:var(--text)}
.filters{display:flex;gap:8px;flex-wrap:wrap;width:100%}

/* ── Controls ────────────────────────────────────────────────────────────────── */
.input{
  height:34px;padding:0 10px;border-radius:8px;
  border:1px solid var(--border);background:rgba(24,28,36,.8);
  color:var(--text);outline:none;font-size:13px;min-width:200px;
  font-family:'Goldplay',sans-serif;
}
.input:focus{border-color:rgba(244,3,92,.4)}
.btn{
  height:34px;padding:0 16px;border-radius:8px;
  border:1px solid rgba(244,3,92,.28);background:rgba(244,3,92,.08);
  color:var(--text);font-size:13px;font-weight:600;cursor:pointer;
  transition:background .15s;white-space:nowrap;font-family:'Goldplay',sans-serif;
  display:inline-flex;align-items:center;gap:6px;
}
.btn:hover{background:rgba(244,3,92,.16)}
.btn--tv{border-color:rgba(255,102,0,.32);background:rgba(255,102,0,.07)}
.btn--tv:hover{background:rgba(255,102,0,.16)}

/* ── Main ───────────────────────────────────────────────────────────────────── */
.main{max-width:none;padding:16px 24px 32px}

/* ── KPIs ───────────────────────────────────────────────────────────────────── */
.kpis{
  display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));
  gap:10px;margin-bottom:16px;
}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.kpis{grid-template-columns:repeat(2,1fr)}}
.kpi{
  background:var(--panel);
  border:1px solid var(--border);border-radius:var(--radius);
  padding:10px 16px;box-shadow:var(--shadow);position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;
  user-select:none;
}
.kpi::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--accent-grad);opacity:.38;transition:opacity .2s;
}
.kpi:hover{border-color:rgba(244,3,92,.22);background:var(--panel-2)}
.kpi--active{
  border-color:rgba(244,3,92,.55) !important;
  background:linear-gradient(160deg,rgba(244,3,92,.14),rgba(255,102,0,.07)) !important;
  box-shadow:0 0 0 1px rgba(244,3,92,.18),var(--shadow) !important;
}
.kpi--active::before{opacity:1}
.kpi--warn .kpi__value{color:var(--warn)}
.kpi--warn::before{background:var(--warn);opacity:.55}
.kpi--warn.kpi--active{border-color:rgba(251,113,133,.5) !important}
.kpi__meta{display:flex;align-items:center;gap:6px}
.kpi__icon{font-size:16px;display:inline-flex;align-items:center;color:var(--text)}
.kpi__label{color:var(--text);font-size:12px;font-weight:600;letter-spacing:.04em}
.kpi__value{font-size:28px;font-weight:700;letter-spacing:-.03em}

/* ── Error ──────────────────────────────────────────────────────────────────── */
.error{
  padding:12px 16px;border-radius:var(--radius);
  border:1px solid rgba(251,113,133,.28);background:rgba(251,113,133,.07);
  color:#ffd6de;margin-bottom:14px;white-space:pre-wrap;font-size:13px;
}

/* ── Panel ──────────────────────────────────────────────────────────────────── */
.panel{
  background:var(--panel);
  border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow);overflow:hidden;
}
.panel__head{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 18px;border-bottom:1px solid var(--border);
}
.panel__title{font-size:14px;font-weight:700;letter-spacing:-.01em}
.panel__count{font-size:12px;color:var(--muted);font-weight:500}
.table-wrap{overflow:auto}
.table{width:100%;border-collapse:collapse;table-layout:fixed}
.table col.col-id      { width:76px }
.table col.col-title   { width:auto }
.table col.col-estado  { width:178px }
.table col.col-produto { width:106px }
.table col.col-resp    { width:126px }
.table col.col-data    { width:100px }
.table col.col-updated { width:118px }
.table col.col-prazo   { width:100px }
th,td{text-align:left;padding:9px 15px;border-bottom:1px solid var(--border);vertical-align:middle;overflow:hidden;white-space:nowrap}
th{
  position:sticky;top:0;background:rgba(12,15,20,.98);z-index:2;
  font-size:11px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted);font-weight:600;
}

/* ── Parent / Child rows ─────────────────────────────────────────────────────── */
.row--parent td{background:rgba(20,25,38,.5)}
.row--parent:hover td{background:rgba(26,32,52,.65)}
.row--child td{background:rgba(14,18,28,.4)}
.row--child:hover td{background:rgba(18,24,40,.55)}

/* Zebra alternating rows */
.row--alt.row--parent td{background:rgba(26,32,50,.6)}
.row--alt.row--parent:hover td{background:rgba(32,40,64,.7)}
.row--alt.row--child td{background:rgba(20,26,42,.5)}
.row--alt.row--child:hover td{background:rgba(24,32,52,.6)}

/* Stale row borders */
.stale-warn td:first-child{border-left:2px solid var(--amber)}
.stale-critical td:first-child{border-left:2px solid var(--warn)}

/* ── ID cells ────────────────────────────────────────────────────────────────── */
.id-cell a{
  font-family:ui-monospace,"Cascadia Code",Menlo,monospace;
  font-size:11px;font-weight:700;text-decoration:none;white-space:nowrap;
  background:var(--accent-grad);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.id-cell a:hover{opacity:.8}
.id-cell--child{padding-left:28px !important;color:var(--muted);font-size:12px}
.id-cell--child a{font-size:11px}

/* ── Toggle button ───────────────────────────────────────────────────────────── */
.toggle-btn{
  width:18px;height:18px;border-radius:4px;border:1px solid var(--border);
  background:rgba(244,3,92,.1);color:var(--muted);font-size:9px;
  cursor:pointer;margin-right:6px;padding:0;display:inline-flex;
  align-items:center;justify-content:center;transition:background .15s;
  vertical-align:middle;
}
.toggle-btn:hover{background:rgba(244,3,92,.22);color:var(--text)}

/* ── Stale badge ─────────────────────────────────────────────────────────────── */
.stale-badge{
  display:inline-flex;align-items:center;gap:3px;
  padding:1px 6px;border-radius:999px;font-size:10px;font-weight:600;
  margin-left:5px;vertical-align:middle;
}
.stale--warn{background:rgba(245,158,11,.12);color:var(--amber);border:1px solid rgba(245,158,11,.26)}
.stale--critical{background:rgba(251,113,133,.12);color:var(--warn);border:1px solid rgba(251,113,133,.26)}

/* ── Chips / Badges ──────────────────────────────────────────────────────────── */
.chip{
  display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;
  border:1px solid var(--border);background:rgba(24,28,40,.7);
  font-size:11px;font-weight:600;color:var(--text);white-space:nowrap;
}
.chip--warn{border-color:rgba(251,113,133,.36);background:rgba(251,113,133,.1);color:#ffd6de}
.chip--ok{border-color:rgba(52,211,153,.3);background:rgba(52,211,153,.08);color:#a7f3d0}
.chip--amber{border-color:rgba(245,158,11,.3);background:rgba(245,158,11,.08);color:#fcd34d}
.chip--purple{border-color:rgba(167,139,250,.36);background:rgba(167,139,250,.1);color:#c4b5fd}

/* ── Title cell ──────────────────────────────────────────────────────────────── */
/* aplicado no div DENTRO do td, não no td em si */
.cell--title{display:flex;align-items:center;gap:6px;overflow:hidden}
.cell--title__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}

/* ── Data cell ───────────────────────────────────────────────────────────────── */
.cell--data{color:var(--text);font-size:13px;white-space:nowrap}

/* ── Type badges ─────────────────────────────────────────────────────────────── */
.badge-tipo{
  display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;
  font-size:10px;font-weight:600;white-space:nowrap;margin-right:4px;
}
.badge-tipo--demanda{background:rgba(59,130,246,.13);color:#93c5fd;border:1px solid rgba(59,130,246,.26)}
.badge-tipo--acao{background:rgba(16,185,129,.13);color:#6ee7b7;border:1px solid rgba(16,185,129,.26)}
.badge-tipo--melhoria{background:rgba(245,158,11,.13);color:#fcd34d;border:1px solid rgba(245,158,11,.26)}
.badge-tipo--oportunidade{background:linear-gradient(135deg,rgba(255,102,0,.16),rgba(244,3,92,.16));color:#fca5a5;border:1px solid rgba(244,3,92,.26)}

/* ── Feed button ─────────────────────────────────────────────────────────────── */
.btn-feed{
  background:none;border:none;padding:0 2px;cursor:pointer;
  font-size:13px;color:#fff;opacity:.42;transition:opacity .15s;line-height:1;flex-shrink:0;
}
.btn-feed:hover{opacity:1}

/* ── Modal ───────────────────────────────────────────────────────────────────── */
.modal-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100;
  display:flex;align-items:center;justify-content:center;padding:24px;
}
.modal-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow);width:100%;max-width:640px;max-height:80vh;
  display:flex;flex-direction:column;overflow:hidden;
}
.modal-card__header{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;border-bottom:1px solid var(--border);flex-shrink:0;
}
.modal-card__title{font-size:15px;font-weight:700;letter-spacing:-.01em}
.modal-close-btn{
  background:none;border:none;color:var(--muted);font-size:16px;
  cursor:pointer;padding:2px 6px;border-radius:6px;transition:color .15s,background .15s;
}
.modal-close-btn:hover{color:var(--text);background:rgba(255,255,255,.07)}
.modal-card__body{overflow-y:auto;flex:1;padding:8px 0}
.modal-loading,.modal-empty{color:var(--muted);font-size:13px;padding:24px 18px;text-align:center}
.modal-error{color:var(--warn);font-size:13px;padding:16px 18px}
.comment-item{padding:12px 18px;border-bottom:1px solid var(--border)}
.comment-item:last-child{border-bottom:none}
.comment-meta{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.comment-author{font-size:12px;font-weight:700;color:var(--text)}
.comment-date{font-size:11px;color:var(--muted)}
.comment-text{font-size:13px;color:var(--text);white-space:pre-wrap;line-height:1.5}

/* ── Review — Comparativo Mensal ─────────────────────────────────────────────── */
.review-section-label{
  font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  color:var(--muted);margin:0 0 10px;
}
.review-months{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}
@media(max-width:1000px){.review-months{grid-template-columns:repeat(2,1fr)}}
.month-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  padding:16px 18px;box-shadow:var(--shadow);position:relative;overflow:hidden;
}
.month-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:var(--accent-grad);opacity:.28;
}
.month-card--current{border-color:rgba(244,3,92,.3)}
.month-card--current::before{opacity:.9}
.month-card__label{
  font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  color:var(--muted);margin-bottom:14px;display:flex;align-items:center;gap:6px;
}
.current-tag{
  padding:1px 7px;border-radius:999px;
  background:rgba(244,3,92,.14);color:var(--accent);font-size:10px;
  border:1px solid rgba(244,3,92,.28);font-weight:700;
}
.month-stats{display:flex;flex-direction:column;gap:12px}
.month-stat{display:flex;align-items:center;justify-content:space-between;gap:8px}
.month-stat__info{display:flex;align-items:center;gap:7px}
.month-stat__icon{font-size:13px;width:18px;text-align:center}
.month-stat__label{font-size:12px;color:var(--muted);font-weight:500}
.month-stat__right{display:flex;align-items:baseline;gap:5px}
.month-stat__value{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1}
.month-stat__value--ok{color:var(--ok)}
.month-stat__value--warn{color:var(--warn)}
.month-stat__value--amber{color:var(--amber)}
.month-stat__value--muted{color:var(--muted)}
.month-stat__trend{font-size:12px;font-weight:700}
.trend--good{color:var(--ok)}
.trend--bad{color:var(--warn)}
.trend--neutral{color:var(--muted)}

/* ── Review — Tabela por Responsável ────────────────────────────────────────── */
.review-resp-wrap{overflow:auto}
.review-resp-table{width:100%;border-collapse:separate;border-spacing:0;min-width:500px}
.review-resp-table th{
  font-size:11px;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted);font-weight:600;padding:8px 14px;
  border-bottom:1px solid var(--border);background:transparent;position:static;
}
.review-resp-table td{
  padding:10px 14px;border-bottom:1px solid var(--border);
  font-size:13px;color:var(--text);vertical-align:middle;
}
.review-resp-table tr:last-child td{border-bottom:none}
.review-resp-table tr:hover td{background:rgba(255,255,255,.025)}
.resp-name{font-weight:600;font-size:13px}
.resp-num{font-weight:700;font-size:16px}
.resp-num--ok{color:var(--ok)}
.resp-num--warn{color:var(--warn)}
.resp-num--muted{color:var(--muted)}
.resp-bar-wrap{width:80px;height:5px;background:rgba(255,255,255,.07);border-radius:99px;overflow:hidden;display:inline-block;vertical-align:middle}
.resp-bar{height:100%;border-radius:99px;background:var(--accent-grad)}

/* ── Misc ───────────────────────────────────────────────────────────────────── */
.muted{color:var(--muted)}
.empty{color:var(--muted);font-size:13px;padding:24px 16px;text-align:center}
.footer{color:var(--muted);font-size:12px;padding:12px 2px;margin-top:4px}
.metrics-loading{color:var(--muted);font-size:13px;padding:40px 0;text-align:center}

/* ── SVG Icons ───────────────────────────────────────────────────────────────── */
.icon-svg{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}

/* ── Toolbar — Review mode (oculta filtros irrelevantes) ─────────────────────── */
.toolbar--review-mode #filter,
.toolbar--review-mode #assignee-filter,
.toolbar--review-mode #state-filter,
.toolbar--review-mode #date-from,
.toolbar--review-mode #date-to{display:none}

/* ── Aba Atenção ─────────────────────────────────────────────────────────────── */
.atencao-wrap{display:flex;flex-direction:column;gap:24px;padding:24px 28px}
.atencao-section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.atencao-section__head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.02)}
.atencao-section__title{font-size:14px;font-weight:700;letter-spacing:-.01em}
.atencao-section__sub{font-size:12px;font-weight:600;color:var(--muted);background:rgba(255,255,255,.06);padding:2px 10px;border-radius:999px}
.atencao-section__desc{padding:8px 18px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border)}
.atencao-empty{padding:20px 18px;font-size:13px;color:var(--muted);font-style:italic}
.atencao-card{padding:14px 18px;border-bottom:1px solid var(--border);transition:background .12s}
.atencao-card:last-child{border-bottom:none}
.atencao-card:hover{background:rgba(255,255,255,.025)}
.atencao-card__top{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.atencao-card__id{font-size:12px;font-weight:700;color:var(--accent);text-decoration:none;font-family:monospace}
.atencao-card__id:hover{text-decoration:underline}
.atencao-card__summary{font-size:13px;font-weight:500;margin-bottom:8px;line-height:1.4}
.atencao-card__meta{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted);margin-bottom:10px}
.meta-warn{color:var(--warn)}

/* ── Quick Comment ───────────────────────────────────────────────────────────── */
.quick-comment{margin-top:4px}
.quick-comment__input{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;color:var(--text);font:13px/1.5 'Goldplay',sans-serif;padding:8px 10px;resize:vertical;transition:border-color .15s}
.quick-comment__input:focus{outline:none;border-color:rgba(244,3,92,.4)}
.quick-comment__row{display:flex;align-items:center;gap:10px;margin-top:6px}
.quick-comment__status{font-size:12px;color:var(--muted)}
.btn--sm{padding:4px 12px;font-size:12px;gap:5px}

/* ── Aba Novo Card ───────────────────────────────────────────────────────────── */
.form-wrap{display:flex;justify-content:center;padding:40px 28px}
.form-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:32px;width:100%;max-width:680px;display:flex;flex-direction:column;gap:20px}
.form-card__title{font-size:18px;font-weight:700;letter-spacing:-.02em;background:var(--accent-grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.form-card__sub{font-size:12px;color:var(--muted);margin-top:-12px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-label{font-size:13px;font-weight:600;color:var(--text)}
.form-hint{font-size:12px;color:var(--muted);line-height:1.4}
.form-select,.form-input{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;color:var(--text);font:14px/1.5 'Goldplay',sans-serif;padding:10px 12px;transition:border-color .15s;width:100%}
.form-select:focus,.form-input:focus{outline:none;border-color:rgba(244,3,92,.4)}
.form-select option{background:#1e2330;color:var(--text)}
.form-textarea{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;color:var(--text);font:13px/1.5 'Goldplay',sans-serif;padding:10px 12px;resize:vertical;transition:border-color .15s;width:100%}
.form-textarea:focus{outline:none;border-color:rgba(244,3,92,.4)}
.form-status{min-height:22px;font-size:13px}
.form-error{color:var(--warn)}
.form-success{color:var(--ok)}
.form-info{color:var(--muted)}
.form-success a{color:var(--accent);text-decoration:none}
.form-success a:hover{text-decoration:underline}
.btn--primary{background:var(--accent-grad);border:none;color:#fff;font-weight:700;padding:10px 20px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-family:'Goldplay',sans-serif;font-size:14px;transition:opacity .15s}
.btn--primary:hover{opacity:.9}
.btn--primary:disabled{opacity:.5;cursor:not-allowed}

/* ── Tooltip ─────────────────────────────────────────────────────────────────── */
.tooltip-wrap{position:relative;display:inline-flex;align-items:center;gap:4px}
.tooltip-wrap .tooltip{
  position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);
  background:rgba(22,27,40,.98);border:1px solid var(--border);border-radius:8px;
  padding:8px 12px;font-size:12px;color:var(--text);white-space:normal;
  width:260px;pointer-events:none;opacity:0;transition:opacity .18s;z-index:60;
  line-height:1.5;text-transform:none;letter-spacing:0;font-weight:400;
}
.tooltip-wrap:hover .tooltip{opacity:1}
.tooltip-icon{color:var(--muted);cursor:default;display:inline-flex;align-items:center}

/* ── Review — Snapshot row ───────────────────────────────────────────────────── */
.review-snapshot{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
@media(max-width:900px){.review-snapshot{grid-template-columns:repeat(2,1fr)}}
.snapshot-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);
  padding:12px 16px;display:flex;flex-direction:column;gap:2px;
}
.snapshot-card__label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.snapshot-card__value{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.snapshot-card__sub{font-size:11px;color:var(--muted);margin-top:1px}
.snapshot-card--warn .snapshot-card__value{color:var(--warn)}
.snapshot-card--ok .snapshot-card__value{color:var(--ok)}

/* distribuição por tipo dentro de snapshot */
.type-dist{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
.type-dist-item{
  display:flex;align-items:center;gap:4px;
  font-size:11px;color:var(--muted);
}
.type-dist-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.type-dist-dot--demanda{background:#93c5fd}
.type-dist-dot--melhoria{background:#fcd34d}
.type-dist-dot--acao{background:#6ee7b7}
.type-dist-dot--oportunidade{background:#fca5a5}

/* health bar dentro da tabela de responsáveis */
.health-bar-wrap{display:flex;align-items:center;gap:7px;min-width:100px}
.health-bar-track{flex:1;height:5px;background:rgba(255,255,255,.07);border-radius:99px;overflow:hidden}
.health-bar-fill{height:100%;border-radius:99px;transition:width .3s}
.health-bar-fill--ok{background:var(--ok)}
.health-bar-fill--warn{background:var(--amber)}
.health-bar-fill--bad{background:var(--warn)}
.health-pct{font-size:11px;color:var(--muted);white-space:nowrap;width:34px;text-align:right}

/* ── Review — Tabela mensal por tipo ────────────────────────────────────────── */
.review-type-table{width:100%;border-collapse:collapse;font-size:13px}
.review-type-table th,.review-type-table td{padding:7px 12px;border-bottom:1px solid var(--border);white-space:nowrap}
.review-type-table thead tr:first-child th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;text-align:center;border-bottom:none}
.review-type-table thead tr:first-child th:first-child{text-align:left}
.review-type-table thead tr:last-child th{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;text-align:center}
.review-type-table thead tr:last-child th:first-child{text-align:left}
.review-type-table td{text-align:center;color:var(--text)}
.review-type-table td:first-child{text-align:left;color:var(--muted);font-size:12px}
.review-type-table tr.current-month td{font-weight:700;background:rgba(244,3,92,.04)}
.review-type-table tr.current-month td:first-child{color:var(--text)}
td.rt-sal--ok{color:var(--ok)}
td.rt-sal--warn{color:var(--warn)}
td.rt-sal--muted{color:var(--muted)}
td.rt-con{color:var(--ok)}
.rt-type-sep{border-right:1px solid rgba(255,255,255,.18) !important}

/* ── Daily ───────────────────────────────────────────────────────────────────── */
.daily-header{
  display:flex;align-items:center;gap:12px;
  padding:16px 0 20px;flex-wrap:wrap;
}
.daily-header__day{font-size:18px;font-weight:700;text-transform:capitalize}
.daily-header__range{
  background:var(--accent-soft);
  border:1px solid rgba(244,3,92,.3);
  color:var(--accent);
  font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  padding:3px 10px;border-radius:20px;
}
.daily-header__note{font-size:12px;color:var(--muted)}

.daily-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(290px,1fr));
  gap:16px;
}

.daily-card{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:18px 20px;
  display:flex;flex-direction:column;gap:14px;
}
.daily-card__info{display:flex;align-items:center;gap:12px}
.daily-avatar{
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:700;color:#fff;letter-spacing:.02em;
}
.daily-card__name{font-size:14px;font-weight:600}

.daily-week{display:flex;gap:6px}
.daily-week__day{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1}
.daily-week__label{font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.daily-week__dot{
  width:22px;height:22px;border-radius:50%;
  border:1.5px solid var(--border);
  background:transparent;
  display:flex;align-items:center;justify-content:center;
  font-size:9px;font-weight:700;color:#fff;
  transition:background .2s;
}
.daily-week__day--active .daily-week__dot{border-color:transparent}

.daily-issues{display:flex;flex-direction:column;gap:8px}
.daily-issue{
  display:flex;align-items:flex-start;gap:7px;
  font-size:12px;line-height:1.45;flex-wrap:wrap;
}
.daily-issue .badge-tipo{font-size:9px;padding:1px 5px;border-radius:4px;flex-shrink:0;margin-top:1px}
.daily-issue__id{
  color:var(--accent);font-weight:600;
  text-decoration:none;white-space:nowrap;flex-shrink:0;
}
.daily-issue__id:hover{text-decoration:underline}
.daily-issue__status{font-size:10px;flex-shrink:0;margin-top:1px}
.daily-issue__title{color:var(--text);flex:1;min-width:120px}
.daily-empty{font-size:12px;color:var(--muted);padding:6px 0;font-style:italic}
