/* Attendance is a single mobile-first workflow; never an extra permanent page. */
.attendance-home{margin:0 0 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}
.attendance-home h2{margin:0 0 5px;font-size:20px}
.attendance-home p{margin:0;color:var(--muted,#68796f);overflow-wrap:anywhere}
.attendance-home button{flex:none;min-height:48px;font-size:16px}
.attendance-sheet{z-index:125}
.attendance-sheet .panel{max-width:860px;width:100%;font-size:16px;line-height:1.65;overflow-wrap:anywhere;padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}
.attendance-sheet *{box-sizing:border-box;min-width:0}
.attendance-sheet [hidden]{display:none!important}
.attendance-sheet .section-head{align-items:flex-start;gap:12px}
.attendance-sheet h2{font-size:23px;margin:0}
.attendance-sheet h3{font-size:19px;margin:0 0 10px}
.attendance-sheet h4{font-size:17px;margin:0 0 8px}
.attendance-sheet p{margin:8px 0}
.attendance-sheet button,.attendance-sheet input,.attendance-sheet select,.attendance-sheet textarea{font-size:16px;font-family:inherit;max-width:100%}
.attendance-sheet button{min-height:44px;white-space:normal;line-height:1.45;touch-action:manipulation}
.attendance-sheet input,.attendance-sheet select,.attendance-sheet textarea{width:100%;padding:11px 12px;border:1px solid var(--line,#dce5df);border-radius:11px;background:#fff;color:var(--ink,#173a2e)}
.attendance-sheet input[type=checkbox]{width:21px;height:21px;flex:none;accent-color:var(--green,#16815c);margin:3px 0 0}
.attendance-sheet .attendance-check{display:flex;align-items:flex-start;gap:10px;margin:14px 0}
.attendance-field{display:block;margin:13px 0}
.attendance-field>span{display:block;font-weight:700;margin-bottom:5px}
.attendance-field>small{display:block;color:var(--muted,#68796f);margin-top:5px}
.attendance-tabs,.attendance-actions{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}
.attendance-tabs button{flex:1 1 auto;border:1px solid var(--line,#dce5df);border-radius:12px;padding:10px 13px;background:#fff;color:var(--ink,#173a2e)}
.attendance-tabs button[aria-selected=true]{background:var(--green,#176347);color:#fff;border-color:var(--green,#176347)}
.attendance-box{padding:17px;border:1px solid var(--line,#dce5df);border-radius:17px;margin:15px 0;background:#fff}
.attendance-note{padding:14px;background:#f0f6f2;border-radius:13px;color:#345449}
.attendance-status{padding:13px 15px;border-radius:12px;white-space:pre-wrap;margin:12px 0;background:#eef7f1;color:#1d644a}
.attendance-status.error{background:#fff0e9;color:#9f3925}
.attendance-meta{color:var(--muted,#68796f);font-size:14px}
.attendance-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.attendance-kpi{padding:14px;border-radius:13px;background:#f3f7f4}
.attendance-kpi b,.attendance-kpi small{display:block}
.attendance-kpi b{font-size:21px}
.attendance-row{padding:13px 0;border-top:1px solid var(--line,#dce5df)}
.attendance-row:first-child{border-top:0}
.attendance-row>strong,.attendance-row>small{display:block}
.attendance-help{margin:16px 0;border:1px solid var(--line,#dce5df);border-radius:13px;padding:12px 14px}
.attendance-help summary{cursor:pointer;font-weight:700;min-height:32px}
.attendance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}
.attendance-full{grid-column:1/-1}
.attendance-clock-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.attendance-clock-actions button{min-height:62px;font-size:18px;font-weight:700}
.attendance-sheet .attendance-list{max-width:100%;overflow-wrap:anywhere}
.attendance-sheet .attendance-chip{display:inline-block;padding:3px 9px;background:#edf5ef;border-radius:8px;margin:3px 4px 3px 0;font-size:14px}
.attendance-sheet .attendance-warn{background:#fff0e8;color:#a54d2e}
.attendance-sheet .attendance-empty{padding:18px 0;color:var(--muted,#68796f)}
@media(max-width:600px){
 .attendance-home{align-items:flex-start;padding:17px;gap:10px}
 .attendance-home h2{font-size:19px}
 .attendance-home button{padding:10px 13px}
 .attendance-sheet .panel{padding-left:18px;padding-right:18px;border-radius:23px 23px 0 0}
 .attendance-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .attendance-tabs button{flex-basis:40%}
 .attendance-sheet .attendance-actions>button{flex:1 1 auto}
}
