.gradehoras{table-layout:fixed}.gradehoras th[scope=row]{width:30%;min-width:220px;font-weight:400}.gradehoras thead th.dia{text-align:center;width:84px}.gradehoras thead th.semana{width:96px}.gradehoras .hoje{background:var(--amber-bg);box-shadow:inset 0 2px 0 var(--amber-dark)}.gradehoras thead th.hoje{color:var(--warn-fg)}.gradehoras thead th .marca-hoje{text-transform:uppercase;letter-spacing:.08em;font-size:10px;display:block}.gradehoras td.celula{padding:2px}.gradehoras td.celula input{border-radius:var(--r-sm);width:100%;min-height:44px;color:var(--text-strong);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:1px solid #0000;padding:6px 8px;font-family:inherit;font-size:14px}.gradehoras td.celula input:hover{border-color:var(--border-forte)}.gradehoras td.celula input:focus-visible{border-color:var(--foco);background:var(--surface);outline:2px solid var(--foco);outline-offset:1px}.gradehoras td.celula input::placeholder{color:#0000}.gradehoras td.celula input:focus::placeholder{color:var(--text-muted)}.gradehoras td.celula.gravando input{background:var(--surface-2)}.gradehoras td.celula.salvo input{background:var(--credito-bg)}.gradehoras td.celula.falhou input{background:var(--debito-bg);border-color:var(--danger-txt)}@media (prefers-reduced-motion:no-preference){.gradehoras td.celula input{transition:background .18s,border-color .12s}}.gradehoras tr.naoprojeto th[scope=row]{color:var(--text-muted)}.gradehoras tr.primeira-naoprojeto>*{border-top:2px solid var(--border)}.gradehoras .atividade{border:1px dashed var(--border-forte);border-radius:var(--r-sm);width:100%;color:var(--text-muted);background:0 0;margin-top:4px;padding:3px 6px;font-family:inherit;font-size:11px;display:block}.gradehoras .atividade:focus-visible{border-style:solid;border-color:var(--foco);color:var(--text);outline:2px solid var(--foco);outline-offset:1px}.medidor{align-items:center;gap:var(--e2);flex-wrap:wrap;font-size:13px;display:flex}.medidor .trilho{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;width:200px;height:8px;display:block;overflow:hidden}.medidor .trilho>i{background:var(--olive);height:100%;display:block}.medidor .trilho>i.falta{background:var(--amber)}@media (max-width:900px){.gradehoras th[scope=row]{z-index:1;background:var(--card);min-width:180px;position:sticky;left:0}.gradehoras thead th.dia{width:72px}}
