.my-punches-open{white-space:nowrap;font-size:12px!important;padding:8px 10px!important;min-height:36px}
.my-punches-summary{margin-top:18px;padding-top:18px;border-top:1px solid #dce3ed}
.my-punches-summary-title,.my-punches-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.my-punches-summary-title>strong{font-size:15px}.my-punches-summary-title button{font-size:12px}
.my-punches-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.my-punches-counts>div{border:1px solid #dce3ed;border-radius:10px;padding:14px 16px;background:#f8fafc}
.my-punches-counts span{display:block;font-size:12px;color:#526175;margin-bottom:7px}
.my-punches-counts strong{display:block;font-size:24px;line-height:1.2;font-variant-numeric:tabular-nums;color:#15283e}
.my-punches-meta{font-size:12px!important;color:#526175;line-height:1.6;margin:12px 0!important}
dialog.my-punches-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 24px));max-width:760px;max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid #dce3ed;border-radius:16px;background:#fff;color:#15283e;box-shadow:0 24px 80px #0003;overflow:auto}
.my-punches-dialog::backdrop{background:#0f172a88}
.my-punches-heading{align-items:flex-start}.my-punches-heading h2{font-size:22px;margin:0 0 6px}.my-punches-heading p{font-size:13px;margin:0;color:#526175}
.my-punches-dialog button{cursor:pointer;min-height:40px;border:1px solid #dce3ed;border-radius:8px;background:#f8fafc;color:inherit;padding:8px 12px;font:inherit;font-size:13px}
.my-punches-dialog :focus-visible,.my-punches-open:focus-visible{outline:3px solid #b0161a;outline-offset:3px}
.my-punches-filters{display:flex;gap:10px;align-items:flex-end;margin:20px 0 12px;flex-wrap:wrap}.my-punches-filters label{display:grid;gap:6px;flex:1;font-size:12px;font-weight:600}
.my-punches-filters input{min-height:40px;box-sizing:border-box;width:100%;min-width:150px;border:1px solid #ccd5e2;border-radius:8px;padding:8px 10px;background:#fff;color:inherit;font:inherit}
.my-punches-message{font-size:13px;line-height:1.6;color:#526175}.my-punches-message:empty{display:none}
.my-punches-table-wrap{overflow:auto;margin-top:16px;border:1px solid #dce3ed;border-radius:10px;max-height:380px}
.my-punches-dialog table{width:100%;border-collapse:collapse;table-layout:auto;margin:0;font-size:13px}
.my-punches-dialog th{text-align:left;background:#f1f5f9;color:#526175;font-size:12px;position:sticky;top:0;z-index:1}
.my-punches-dialog th,.my-punches-dialog td{padding:13px 14px;border:0;border-bottom:1px solid #e5eaf1;vertical-align:top}
.my-punches-dialog tr:last-child td{border-bottom:0}.my-punches-dialog time{display:block;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}
.my-punches-dialog td small{display:block;font-size:11px;color:#526175;margin-top:4px;line-height:1.5}.my-punches-dialog td>strong{font-size:12px;font-weight:600}
.my-punches-badge{display:inline-block;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:700;background:#eef2f6;color:#475569}.my-punches-badge.in{background:#dcfce7;color:#166534}.my-punches-badge.out{background:#fff1f2;color:#9f1239}
.my-punches-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.dark .my-punches-dialog,.dark .my-punches-filters input{background:#17202e;color:#f1f5f9;border-color:#38465a}
.dark .my-punches-counts>div,.dark .my-punches-dialog th,.dark .my-punches-dialog button{background:#202c3c;color:#f1f5f9;border-color:#38465a}
.dark .my-punches-counts strong{color:#f1f5f9}.dark .my-punches-meta,.dark .my-punches-message,.dark .my-punches-counts span,.dark .my-punches-heading p,.dark .my-punches-dialog td small{color:#b7c4d6}
@media(max-width:540px){dialog.my-punches-dialog{padding:16px}.my-punches-counts{gap:8px}.my-punches-counts>div{padding:12px 10px}.my-punches-counts span{font-size:11px}.my-punches-counts strong{font-size:22px}.my-punches-dialog th,.my-punches-dialog td{padding:10px 8px}.my-punches-heading h2{font-size:20px}.my-punches-open{font-size:11px!important;padding:6px 8px!important}.my-punches-filters label{flex-basis:100%}}

/* Override generic portal table minimums inside this compact, private history. */
.shrms-ui .my-punches-dialog table{min-width:0;width:100%;table-layout:fixed}
.shrms-ui .my-punches-dialog th,.shrms-ui .my-punches-dialog td{white-space:normal;padding:13px 14px;overflow-wrap:anywhere}
.shrms-ui .my-punches-dialog th:first-child{width:32%}.shrms-ui .my-punches-dialog th:nth-child(2){width:23%}
@media(max-width:540px){.shrms-ui .my-punches-dialog th,.shrms-ui .my-punches-dialog td{padding:10px 8px}.shrms-ui .my-punches-dialog th:first-child{width:37%}.shrms-ui .my-punches-dialog th:nth-child(2){width:28%}.my-punches-badge{font-size:10px;padding:5px 6px}}
