.estado { text-align: center; padding: 22px 16px 18px; }
.estado .etiqueta-estado { font-size: .85rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.estado .reloj { font-size: 3.2rem; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -.02em; margin: 6px 0 2px; }
.estado .desde { color: var(--suave); margin-bottom: 18px; }
.estado.fuera .etiqueta-estado { color: var(--suave); }
.estado.dentro .etiqueta-estado { color: var(--entrada); }
.estado.pausa .etiqueta-estado { color: var(--pausa); }

.boton-fichar { width: 100%; min-height: 84px; font-size: 1.3rem; border-radius: 18px; border: 0; color: #fff; box-shadow: 0 6px 16px rgba(0,0,0,.15); }
.boton-fichar.entrada { background: var(--entrada); }
.boton-fichar.salida { background: var(--salida); }
.boton-fichar.pausa_fin { background: var(--pausa); }
.boton-fichar svg { width: 30px; height: 30px; }
.secundario { width: 100%; margin-top: 10px; min-height: 52px; }

.resumen { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.resumen div { background: var(--fondo); border-radius: 12px; padding: 10px 12px; }
.resumen b { display: block; font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.resumen span { font-size: .8rem; color: var(--suave); }

.ev { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid var(--linea); }
.ev:last-child { border-bottom: 0; }
.ev .h { font-weight: 700; font-variant-numeric: tabular-nums; min-width: 52px; }
.ev .t { flex: 1; }

.dia { cursor: pointer; }
.dia .cab { display: flex; justify-content: space-between; gap: 8px; }
.dia .horas { font-variant-numeric: tabular-nums; font-weight: 700; }
.dia .detalle { font-size: .88rem; color: var(--suave); margin-top: 2px; }
.dia .inc { color: var(--salida); font-size: .82rem; margin-top: 3px; }

.selector-mes { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.selector-mes button { min-width: 44px; }
.texto-legal { font-size: .88rem; max-height: 46vh; overflow: auto; background: var(--fondo); border-radius: 12px; padding: 12px 14px; }
.texto-legal h3 { font-size: .92rem; margin-top: 10px; }
.secundario svg, button svg { width: 20px; height: 20px; flex-shrink: 0; }
.boton-fichar svg { width: 30px; height: 30px; }
.pestanas button svg { width: 22px; height: 22px; }
