.my-attendance{width:100%;padding:0 10px}.my-attendance__header{margin-bottom:32px}.my-attendance__header h1{font-size:clamp(1.25rem,4vw,1.75rem);font-weight:900}.my-attendance__hero{padding:clamp(1.5rem,6vw,3rem);text-align:center;margin-bottom:24px}.my-attendance__hero h2{font-size:clamp(3rem,15vw,5rem);font-weight:900;margin:0 0 8px;color:var(--text-main)}.my-attendance__hero>p{color:var(--text-muted);font-size:14px}.my-attendance__status{font-size:13px;font-weight:700;margin:20px 0 16px}.my-attendance__status.is-working{color:var(--success)}.my-attendance__status.is-paused{color:var(--orange)}.my-attendance__status.is-muted{color:var(--text-dim)}.my-attendance__actions{display:flex;justify-content:center}.my-attendance__clock-button{padding:14px 32px;min-height:52px;border:0;border-radius:9999px;color:#fff;font-weight:700;cursor:pointer}.my-attendance__clock-button.is-entry{background:var(--success)}.my-attendance__clock-button.is-exit{background:var(--danger)}.my-attendance__complete{padding:14px 36px;background:var(--success-tint);color:var(--success);border-radius:12px;font-weight:800}.my-attendance__live-card{background:var(--success-tint);border-radius:16px;padding:16px 40px;max-width:300px;margin:0 auto 20px}.my-attendance__live-card>span,.my-attendance__live-card>small{display:block;font-size:10px;color:var(--success);font-weight:800}.my-attendance__live-card>strong{display:block;font-size:clamp(1.8rem,8vw,3rem);font-variant-numeric:tabular-nums}.my-attendance__progress{height:4px;background:var(--surface-muted);border-radius:4px;margin:10px 0 6px;overflow:hidden}.my-attendance__progress i{display:block;height:100%;background:var(--success)}.my-attendance__card{padding:0;overflow:hidden;margin-bottom:24px}.my-attendance__card-header{padding:12px 16px;background:var(--surface-muted);font-size:12px;font-weight:800;text-transform:uppercase}.my-attendance__event{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--border)}.my-attendance__event span{font-size:12px;color:var(--text-dim);flex:1}.my-attendance__event small{color:var(--text-dim)}.my-attendance__section{margin:32px 0}.my-attendance__section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.my-attendance__section-title h4,.my-attendance__subtitle{font-size:11px;color:var(--text-dim);text-transform:uppercase;font-weight:800}.my-attendance__section-title>.nav-badge{background:var(--accent);color:var(--ink);border:0;cursor:pointer}.my-attendance__notice{padding:20px;border-left:4px solid var(--accent);font-size:12px;color:var(--text-dim);margin-bottom:20px}.my-attendance__empty,.my-attendance__loading,.my-attendance__error{padding:20px;text-align:center;color:var(--text-dim);font-size:12px}.my-attendance__error{color:var(--danger)}.my-attendance table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.my-attendance th,.my-attendance td{padding:12px 16px;border-top:1px solid var(--border);vertical-align:top}.my-attendance th{background:var(--surface-muted);color:var(--text-dim);text-transform:uppercase;font-size:10px}.my-attendance td small{display:block;color:var(--text-dim);margin-top:3px}.my-attendance__vacation{color:var(--success)!important}.my-attendance__month-nav>div{display:flex;align-items:center;gap:8px}.my-attendance__month-nav button{padding:5px 10px;background:var(--surface-muted);border:1px solid var(--border);color:var(--text-strong);border-radius:8px;cursor:pointer}.my-attendance__month-nav span{min-width:130px;text-align:center;font-weight:800}.my-attendance-modal{position:fixed;inset:0;z-index:99998;display:flex;align-items:center;justify-content:center;background:rgba(2,6,23,.35);padding:16px}.my-attendance-modal__dialog{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:28px;width:100%;max-width:520px;box-shadow:0 24px 64px rgba(0,0,0,.6);max-height:90vh;overflow:auto}.my-attendance-modal__dialog h3{font-size:17px;margin-bottom:6px}.my-attendance-modal__dialog>p{font-size:12px;color:var(--text-dim);margin-bottom:20px}.my-attendance-modal__dialog label{display:block;font-size:11px;font-weight:800;color:var(--text-dim);margin:12px 0}.my-attendance-modal__dialog input,.my-attendance-modal__dialog select,.my-attendance-modal__dialog textarea{width:100%;padding:11px;margin-top:6px;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--text-strong);box-sizing:border-box}.my-attendance-modal__checkbox{display:flex!important;align-items:center;gap:8px}.my-attendance-modal__checkbox input{width:auto;margin:0}.my-attendance-modal__close{position:absolute;right:20px;top:20px;background:none;border:0;color:var(--text-dim);cursor:pointer}.my-attendance-modal__options{display:flex;flex-direction:column;gap:8px}.my-attendance-modal__options button{display:flex;align-items:center;gap:12px;padding:12px;background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;color:var(--text-strong);text-align:left;cursor:pointer}.my-attendance-modal__options button.is-selected{border-color:var(--accent);background:var(--gold-tint)}.my-attendance-modal__options button:disabled{opacity:.45;cursor:not-allowed}.my-attendance-modal__options span,.my-attendance-modal__options small{display:block}.my-attendance-modal__options small{color:var(--text-dim);margin-top:2px}.my-attendance-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.my-attendance-modal__actions button{padding:12px 18px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);color:var(--text-strong);font-weight:800;cursor:pointer}.my-attendance-modal__actions button:last-child{background:var(--accent);color:var(--ink)}
#salida-no-comida-confirm{margin-top:14px;padding:12px;background:var(--warning-tint);border:1px solid var(--orange);border-radius:10px}#salida-no-comida-confirm small{display:block;color:var(--text-dim);margin-top:4px}.my-attendance__week{background:var(--surface-muted)}.my-attendance__week-exit{color:var(--orange)!important}.my-attendance .is-working{color:var(--success)}.my-attendance .is-paused{color:var(--orange)}
@media(max-width:700px){.my-attendance{padding:0}.my-attendance__section-title{align-items:flex-start;flex-wrap:wrap}.my-attendance__live-card{padding:16px 20px}.my-attendance th,.my-attendance td{padding:10px}}

/* El modal de corrección conserva la presentación anterior a la modularización. */
.my-attendance-modal--correction{z-index:10000;background:transparent;padding:20px}
.my-attendance-correction{max-width:500px;padding:36px;border:1px solid var(--blue);box-shadow:0 0 50px var(--gold-tint);background:var(--surface)!important}
.my-attendance-correction h2{margin:0 0 6px;font-size:22px;font-weight:900;color:var(--text-strong)}
.my-attendance-correction>p{margin:0 0 22px;font-size:13px;color:var(--text-dim)}
.my-attendance-correction__field{margin-bottom:18px}
.my-attendance-correction__field>label,.my-attendance-correction__dynamic-fields label,.my-attendance-correction__time-grid label{display:block;margin:0 0 7px;font-size:10px;line-height:1.2;color:var(--text-dim);font-weight:800;letter-spacing:.5px;text-transform:uppercase}
.my-attendance-correction select,.my-attendance-correction input,.my-attendance-correction textarea{width:100%;margin:0;padding:11px 14px;background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;color:var(--text-strong);font:inherit;font-size:14px;font-weight:700;box-sizing:border-box}
.my-attendance-correction textarea{resize:none;font-size:13px;font-weight:400}
.my-attendance-correction__dynamic-fields{margin-bottom:18px}
.my-attendance-correction__time-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:12px}
.my-attendance-correction__approval{margin-bottom:22px;padding:13px 16px;background:var(--gold-tint);border:1px solid var(--gold-tint);border-radius:10px}
.my-attendance-correction__approval p{margin:0 0 8px;font-size:12px;line-height:1.6;font-weight:700;color:var(--text-primary)}
.my-attendance-correction__approval ol{margin:0;padding-left:18px;font-size:12px;line-height:1.85;color:var(--text-primary)}
.my-attendance-correction .my-attendance-modal__actions{display:flex;gap:12px;margin-top:0}
.my-attendance-correction .my-attendance-modal__actions button{flex:1;padding:13px;background:transparent;border:1px solid var(--border);border-radius:12px;color:var(--text-dim);font-weight:700}
.my-attendance-correction .my-attendance-modal__actions button:last-child{background:var(--blue);border-color:var(--blue);color:var(--ink);font-weight:900}
@media(max-width:560px){.my-attendance-correction{padding:28px 22px}.my-attendance-correction__time-grid{grid-template-columns:1fr}}
/* Jerarquia visual de estados restaurada tras la modularizacion. */
.my-attendance__status-badge,.my-attendance__validation,.my-attendance__history-status{align-items:center;display:inline-flex;font-weight:800;gap:5px;white-space:nowrap}
.my-attendance__status-badge{border-radius:999px;min-height:32px;padding:4px 12px;text-transform:uppercase}
.my-attendance__status-badge.is-pending{background:var(--gold-tint);color:var(--gold-strong)}
.my-attendance__status-badge.is-approved{background:var(--success-tint);color:var(--success)}
.my-attendance__status-badge.is-rejected{background:var(--danger-tint);color:var(--danger)}
.my-attendance__status-badge.is-neutral{background:var(--surface-muted);color:var(--text-dim)}
.my-attendance__validation.is-approved{background:var(--success-tint);border-radius:999px;color:var(--success);min-height:32px;padding:4px 12px;text-transform:uppercase}
.my-attendance__validation.is-rejected{background:var(--danger-tint);border-radius:999px;color:var(--danger);min-height:32px;padding:4px 12px;text-transform:uppercase}
.my-attendance__validation.is-pending{color:var(--text-dim);font-weight:600}
.my-attendance__movement{align-items:baseline;display:flex;gap:7px;white-space:nowrap}
.my-attendance__movement.is-entry{color:var(--success)}
.my-attendance__movement.is-exit{color:var(--orange)}
.my-attendance__movement.is-complete{color:var(--text-strong)}
.my-attendance__week-total{align-items:center;display:inline-flex;gap:5px}
.my-attendance__week-total.is-positive,.my-attendance__week-delta.is-positive{color:var(--success)!important}
.my-attendance__week-total.is-negative,.my-attendance__week-delta.is-negative{color:var(--orange)!important}
.my-attendance__history-status.is-working{background:var(--blue-glow);border-radius:999px;color:var(--text-strong);min-height:32px;padding:4px 12px;text-transform:uppercase}.my-attendance__history-status.is-complete{color:var(--success)}
.my-attendance__history-status.is-warning{color:var(--orange)}

.my-attendance__card.table-responsive{overflow-x:auto;overflow-y:hidden}
