.week-days{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;margin:18px 0}.week-days article{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 55%,var(--line));border-radius:13px;padding:14px;display:flex;flex-direction:column;gap:3px;cursor:pointer;box-shadow:0 5px 14px color-mix(in srgb,var(--primary) 13%,transparent);transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease}.week-days article:hover,.week-days article:focus{background:color-mix(in srgb,var(--primary) 23%,var(--surface));border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 24%,transparent),0 8px 20px color-mix(in srgb,var(--primary) 22%,transparent);outline:none;transform:translateY(-2px)}.week-days article.selected{background:color-mix(in srgb,var(--primary) 42%,var(--surface));border:2px solid var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent),0 10px 24px color-mix(in srgb,var(--primary) 34%,transparent);transform:translateY(-3px)}.week-days article.selected span,.week-days article.selected strong{color:color-mix(in srgb,var(--primary) 75%,var(--text));font-weight:900}.week-days span{font-weight:800}.week-days small{color:var(--muted)}.week-days strong{font-size:16px;margin-top:6px}.week-days em{font-size:11px;color:var(--muted);font-style:normal}.day-history .table{margin-bottom:0}.row-actions{display:flex;align-items:center;gap:7px}.row-actions form{margin:0}.edit-action{padding:6px 10px;font-size:13px}.centered-save{display:flex;justify-content:center;margin-top:42px;padding-top:8px}.save-rate-button{min-width:230px;animation:saveButtonIn .55s ease both;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.save-rate-button:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 35%,transparent);filter:brightness(1.08)}.save-rate-button:active{transform:translateY(0) scale(.98)}@keyframes saveButtonIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.save-rate-button{animation:none;transition:none}}@media(max-width:900px){.week-days{grid-template-columns:repeat(4,1fr)}}@media(max-width:600px){.week-days{grid-template-columns:repeat(2,1fr)}.save-rate-button{width:100%}}

/* Días en rojo con mayor movimiento y selección destacada. */
.week-days article{background:color-mix(in srgb,#d92d3b 16%,var(--surface));border-color:color-mix(in srgb,#d92d3b 62%,var(--line));box-shadow:0 6px 16px #d92d3b1f;animation:weekDayIn .5s cubic-bezier(.2,.8,.2,1) both;transition:transform .28s cubic-bezier(.2,.8,.2,1),background .25s ease,border-color .25s ease,box-shadow .25s ease,filter .25s ease}
.week-days article:nth-child(2){animation-delay:.05s}.week-days article:nth-child(3){animation-delay:.1s}.week-days article:nth-child(4){animation-delay:.15s}.week-days article:nth-child(5){animation-delay:.2s}.week-days article:nth-child(6){animation-delay:.25s}.week-days article:nth-child(7){animation-delay:.3s}
.week-days article:hover,.week-days article:focus{background:color-mix(in srgb,#e32636 30%,var(--surface));border-color:#e32636;box-shadow:0 0 0 3px #e3263633,0 14px 28px #b9172940;transform:translateY(-7px) scale(1.035);filter:saturate(1.15)}
.week-days article.selected{background:color-mix(in srgb,#e32636 55%,var(--surface));border-color:#ff3344;box-shadow:0 0 0 4px #ff334438,0 15px 32px #b9172952;transform:translateY(-5px) scale(1.025);animation:weekDayIn .5s cubic-bezier(.2,.8,.2,1) both,selectedDayPulse 1.8s ease-in-out .55s infinite}
.week-days article.selected span,.week-days article.selected strong{color:color-mix(in srgb,#b80f20 78%,var(--text));font-weight:900}
@keyframes weekDayIn{from{opacity:0;transform:translateY(18px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes selectedDayPulse{0%,100%{box-shadow:0 0 0 3px #ff33442e,0 12px 26px #b9172947}50%{box-shadow:0 0 0 7px #ff33441f,0 18px 36px #b9172966}}
@media(prefers-reduced-motion:reduce){.week-days article,.week-days article.selected{animation:none;transition:none}.week-days article:hover,.week-days article:focus,.week-days article.selected{transform:none}}

/* Paleta gris: texto blanco y selección más intensa. */
.week-days article{background:linear-gradient(145deg,#707782,#555c66);border-color:#8c949f;box-shadow:0 6px 16px #30343a38;color:#fff}
.week-days article span,.week-days article strong,.week-days article small,.week-days article em{color:#fff;text-shadow:0 1px 2px #0007}
.week-days article:hover,.week-days article:focus{background:linear-gradient(145deg,#626a74,#434951);border-color:#d6d9dd;box-shadow:0 0 0 3px #aeb4bb42,0 14px 28px #25292f59;filter:brightness(1.08)}
.week-days article.selected{background:linear-gradient(145deg,#41474f,#24282e);border-color:#fff;box-shadow:0 0 0 4px #bfc4ca42,0 15px 32px #1f232966;animation:weekDayIn .5s cubic-bezier(.2,.8,.2,1) both,selectedGrayPulse 1.8s ease-in-out .55s infinite}
.week-days article.selected span,.week-days article.selected strong,.week-days article.selected small,.week-days article.selected em{color:#fff}
@keyframes selectedGrayPulse{0%,100%{box-shadow:0 0 0 3px #d5d8dc38,0 12px 26px #20242a52}50%{box-shadow:0 0 0 7px #d5d8dc26,0 18px 36px #15181d73}}
@media(prefers-reduced-motion:reduce){.week-days article.selected{animation:none}}

.week-days article.selected{background:linear-gradient(145deg,#24282e,#0d0f12);border-color:#f4f5f6;box-shadow:0 0 0 4px #7f879142,0 16px 34px #090b0d8c}

/* Días con el degradado azul de los botones. */
.week-days article{background:linear-gradient(135deg,#1d5fd1,#2f80ed);border-color:#4e96f2;color:#fff;box-shadow:0 7px 18px #246fd03d}
.week-days article span,.week-days article strong,.week-days article small{color:#fff;text-shadow:0 1px 2px #0b327080}
.week-days article .tip-status{font-weight:750;text-shadow:0 1px 2px #09275099}.week-days article .tip-status.positive{color:#b8f5ce}.week-days article .tip-status.negative{color:#ffb5bc}
.week-days article:hover,.week-days article:focus{background:linear-gradient(135deg,#174ca9,#2874db);border-color:#8ec2ff;box-shadow:0 0 0 3px #4d9cff38,0 14px 28px #174a9f59;filter:brightness(1.08)}
.week-days article.selected{background:linear-gradient(135deg,#123b87,#08275f);border-color:#d8eaff;box-shadow:0 0 0 4px #4d9cff42,0 16px 34px #071d4b75}
.week-days article.selected span,.week-days article.selected strong,.week-days article.selected small{color:#fff}.week-days article.selected .tip-status.positive{color:#a7f3c3}.week-days article.selected .tip-status.negative{color:#ffabb3}
@keyframes selectedGrayPulse{0%,100%{box-shadow:0 0 0 3px #4d9cff35,0 12px 26px #071d4b66}50%{box-shadow:0 0 0 7px #4d9cff25,0 18px 36px #071d4b8a}}
/* Borde oscuro para el indicador de propina de cada día. */
.week-days article .tip-status{display:inline-flex;align-self:flex-start;padding:3px 7px;border:1px solid #111820;border-radius:7px;background-color:#07101d2e;box-shadow:0 2px 5px #0002}
/* Contorno real de 1 px en las letras de Propina, sin recuadro. */
.week-days article .tip-status{display:inline;border:0;border-radius:0;padding:0;background:transparent;box-shadow:none;-webkit-text-stroke:1px #111;paint-order:stroke fill;text-shadow:none}