/* Daily approval screen (approve.js) */
.ap-h1 { white-space: nowrap; }
.ap-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
@media (min-width: 900px) { .ap-tiles { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; } }
.ap-tile { text-align: left; font: inherit; color: var(--text); cursor: pointer; padding: 14px 16px; gap: 4px; }
.ap-tile.on { border-color: var(--accent); }
.ap-tn { font-size: 26px; line-height: 32px; }
.ap-tn.txt { font-size: 18px; line-height: 32px; font-family: inherit; font-weight: 700; }
.ap-tile.t-g .ap-tn { color: var(--green); }
.ap-tile.t-a .ap-tn { color: var(--amber); }
.ap-tile.t-r .ap-tn { color: var(--red); }
.ap-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; align-items: start; }
@media (min-width: 1100px) { .ap-grid { grid-template-columns: minmax(0, 1fr) 320px; } }
.ap-side { display: flex; flex-direction: column; gap: 14px; }
.ap-bar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 8px 0; }
.ap-search { flex: 1 1 220px; min-width: 0; }
.ap-chips { flex: 0 1 auto; }
.ap-tb th.ap-s { cursor: pointer; user-select: none; white-space: nowrap; }
.ap-tb th { white-space: nowrap; }
.ap-tb .tags { display: flex; gap: 4px; flex-wrap: wrap; }
.ap-why { max-width: 200px; display: inline-block; text-align: right; }
.ap-list { display: flex; flex-direction: column; gap: 8px; }
.ap-late { text-decoration: none; color: inherit; }
.rc-list { display: flex; flex-direction: column; gap: 6px; max-height: 240px; overflow: auto; }
.rc-so { display: flex; flex-direction: column; gap: 2px; text-align: left; font: inherit; color: var(--text); background: var(--panel-2);
  border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; cursor: pointer; }
.rc-so.on { border-color: var(--accent); background: var(--accent-soft); }
.rc-so:disabled { opacity: .5; cursor: not-allowed; }
@media (max-width: 560px) { .ap-h1 { white-space: normal; } .ap-why { text-align: left; max-width: none; } .ap-tb.stackable td.r { text-align: left; } }

/* Review fixes: Line column gets room; Action buttons stay in one row (desktop table only) */
@media (min-width: 561px) {
  .ap-tb td:first-child { min-width: 260px; }
  .ap-tb td:last-child { white-space: nowrap; }
  .ap-tb .acts { display: flex; flex-wrap: nowrap; gap: 4px; justify-content: flex-end; }
  .ap-tb .acts .btn { white-space: nowrap; padding: 0 8px; min-height: 30px; font-size: 12px; }
}
