/* Дневен отчет и присъствие */

/* превключване на дати */
.date-nav { display: flex; align-items: center; gap: 6px; background: var(--surface); border-radius: var(--radius); box-shadow: var(--shadow); padding: 4px 6px; }
.date-nav .icon-btn { font-size: 1.8rem; text-decoration: none; color: var(--text); flex: none; }
.date-nav-label { flex: 1; min-width: 0; display: grid; text-align: center; }
.date-nav-label b { overflow-wrap: anywhere; }
.date-nav .btn-sm { flex: none; }

/* карти на отчета */
.dcard-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 40px; }
.dcard-head .card-title { margin: 0; }
.dcard-head .btn-sm { min-width: 48px; min-height: 44px; }
.dlist { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.dlist li { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; border-bottom: 1px solid var(--line); padding-bottom: 6px; overflow-wrap: anywhere; }
.dlist li:last-child { border-bottom: 0; padding-bottom: 0; }
.dlist li > b { flex: none; white-space: nowrap; }
.dlist-num { list-style: decimal; padding-left: 1.4em; }
.dlist-num li { display: list-item; }
.dlist-num .badge { margin-right: 4px; }

/* редове в панелите */
.drow { display: grid; gap: 8px; padding: 10px; border-radius: 12px; background: var(--surface); border: 1px solid var(--line); }
.drow-title { font-weight: 700; overflow-wrap: anywhere; }
.drow-ctrl { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: flex-end; }
.drow-field { display: grid; gap: 2px; }
.chips-wrap { display: flex; flex-wrap: wrap; gap: 8px; }
.chips-wrap .chip { white-space: normal; text-align: left; min-height: 42px; max-width: 100%; }
.chip-sm { min-height: 40px; padding: 4px 12px; font-size: .9rem; }

/* въпроси за деня */
.survey-q { display: grid; gap: 6px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.survey-q:last-child { border-bottom: 0; }
.survey-q > span { font-weight: 600; }
.survey-q .seg { max-width: 260px; }
.survey-q .btn-sm { justify-self: start; }
.miss { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.miss li { padding: 8px 12px; border-radius: 10px; font-weight: 600; }
.miss-block { background: var(--err-soft); color: var(--err); }
.miss-warn { background: var(--warn-soft); color: var(--warn); }
.ok-text { color: var(--ok); font-weight: 700; }

/* присъствие */
.att-group { gap: 8px; }
.att-group-head { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 52px; background: transparent; border: 0; padding: 0; text-align: left; cursor: pointer; color: inherit; }
.att-group-head .badge.accent { margin-left: 6px; }
.att-caret { font-size: 1.2rem; color: var(--muted); }
.att-row { display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; align-items: center; padding: 8px; border-radius: 12px; background: var(--surface-2); }
.att-row.present { background: var(--ok-soft); }
.att-row.absent { background: var(--err-soft); }
.att-toggle { width: 56px; height: 56px; border-radius: 14px; border: 2px solid var(--line); background: var(--surface); font-size: 1.6rem; font-weight: 800; cursor: pointer; color: var(--muted); grid-row: span 2; align-self: start; }
.att-toggle.present { background: var(--ok); border-color: var(--ok); color: #fff; }
.att-toggle.absent { background: var(--err); border-color: var(--err); color: #fff; }
.att-toggle[disabled] { cursor: default; opacity: .85; }
.att-who { display: flex; align-items: center; gap: 10px; min-width: 0; }
.att-name { display: grid; min-width: 0; }
.att-name b { overflow-wrap: anywhere; }
.att-extra { grid-column: 2; min-width: 0; }
.att-reasons { display: flex; flex-wrap: wrap; gap: 6px; }
.att-note { margin-top: 4px; }

/* месечна таблица */
.att-month-wrap { max-width: 100%; }
table.att-month { font-size: .8rem; width: auto; min-width: 100%; }
.att-month th, .att-month td { padding: 4px 5px; text-align: center; white-space: nowrap; }
.att-month .att-name-col { text-align: left; position: sticky; left: 0; background: var(--surface); z-index: 1; min-width: 130px; max-width: 170px; white-space: normal; }
.att-month .we { background: var(--surface-2); }
.att-month td.abs { color: var(--err); font-weight: 700; }
.att-month tfoot th, .att-month tfoot td { font-weight: 800; border-top: 2px solid var(--line); }
.att-pos { font-size: .72rem; color: var(--muted); font-weight: 400; }

/* печат на месечната таблица */
.print-page table.att-print { font-size: 7.5pt; }
.print-page .att-print th, .print-page .att-print td { padding: .6mm .8mm; text-align: center; font-size: 7.5pt; }
.print-page .att-print .att-name-col { text-align: left; min-width: 32mm; }
.print-page .att-print .we { background: #eee; }
.print-page .att-print .att-pos { font-size: 6.5pt; color: #444; }
