.ticket-round-nav .balance { -webkit-touch-callout:none; user-select:none; touch-action:manipulation; height:48px; grid-template-rows:repeat(3,min-content); border-color:#667b99; }
.ticket-round-nav .balance.on-duty { background:#fb923c; color:#431407; border-color:#ea580c; }
.ticket-round-nav .balance.on-duty.idling { background:#fef3c7; color:#92400e; border-color:#f59e0b; }
.attendance-idle .attendance-dot { background:#f59e0b; }
.attendance-state { display:block; margin-top:2px; font-size:9px; font-weight:850; line-height:1.2; }
.attendance-name-picker { position:fixed; z-index:200; box-sizing:border-box; width:210px; height:42px; padding:0 10px; border:1px solid #94a3b8; border-radius:8px; background:white; color:#172033; font-size:16px; }
.attendance-name-picker[hidden] { display:none!important; }
.attendance-card { margin-bottom:12px; padding:16px; border:1px solid #d6deea; border-radius:12px; background:white; }
.attendance-card h3 { display:flex; align-items:center; gap:7px; margin:0 0 12px; color:#253751; font-size:15px; }
.attendance-card h3 small { margin-left:auto; color:#64748b; font-size:12px; }
.attendance-dot { width:8px; height:8px; border-radius:50%; background:#22835a; }
.attendance-names { display:flex; flex-wrap:wrap; gap:8px; }
.attendance-person { display:flex; flex-direction:column; gap:4px; padding:9px 12px; border:1px solid #d5e7dd; border-radius:9px; background:#f0faf4; color:#235139; font-size:13px; font-weight:850; overflow-wrap:anywhere; }
.attendance-person small { color:#64748b; font-size:10px; font-weight:700; }
.attendance-empty { margin:4px 0 12px; color:#64748b; font-size:12px; line-height:1.7; }
