.daily-things-panel .task{gap:10px;min-height:46px;margin-top:10px;padding:4px 0}
.daily-things-panel .task-check{flex:none}
.daily-task-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}
.daily-task-copy .task-name{font-size:12px;font-weight:650;line-height:1.4}
.daily-task-copy small{font-size:10px;line-height:1.45;color:#73816f;font-weight:400}
.daily-task-icon{color:#91a786;flex:none}.daily-task-icon .icon{width:17px;height:17px}
.daily-things-panel .task.done .daily-task-copy{opacity:.65}
.daily-reset-note{font-size:10px;line-height:1.5;text-align:center;color:#788574;margin:10px 0 0}
.daily-kindness-intro{line-height:1.65;color:#62715b}.daily-kindness-options{display:grid;gap:10px}
.daily-kindness-options .button{width:100%;justify-content:center}.daily-kindness-options p{font-size:13px;line-height:1.55;margin:0 0 12px;color:#62715b}
dialog.level-celebration{width:min(440px,calc(100vw - 24px));max-width:440px;max-height:calc(100dvh - 24px);padding:0;border:1px solid #ebdfb9;border-radius:28px;background:#fffdf5;color:#364d3d;overflow:auto;overscroll-behavior:contain;box-shadow:0 28px 100px #163b394a;margin:auto}
.level-celebration::backdrop{background:#2341368a;backdrop-filter:blur(5px)}
.level-celebration-card{position:relative;isolation:isolate;padding:26px 26px 22px;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 50% 22%,#fff6cc 0,transparent 55%),linear-gradient(165deg,#fffef8,#f0f7e9)}
.level-close{position:absolute;right:12px;top:12px;z-index:3;border:0;background:#ffffffab;border-radius:50%;width:36px;height:36px;color:#677962}
.level-eyebrow{margin:0 24px 7px;color:#869273;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.level-celebration h2{font-size:clamp(25px,6vw,32px);line-height:1.2;margin:0;overflow-wrap:anywhere;color:#40563f}
.level-pet-stage{height:183px;width:220px;max-width:100%;position:relative;margin:4px auto -5px;display:grid;place-items:center}
.level-halo{position:absolute;width:158px;height:158px;border-radius:50%;background:radial-gradient(circle,#fffdf4 0 45%,#fde7a9a6 62%,#f5c87800 73%);box-shadow:0 0 48px #edc3655c}
.level-halo::after{content:"";position:absolute;inset:-12px;border:1px solid #dab9657a;border-radius:50%}
.level-pet-jump{position:relative;display:block;z-index:1;transform-origin:50% 90%}
.level-pet-jump .creature-portrait{width:162px;height:162px;display:block;filter:drop-shadow(0 9px 7px #9b975128)}
.level-sparkles{position:absolute;inset:0;pointer-events:none}
.level-sparkle{position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px;font-size:17px;font-style:normal;color:#d9a642;transform:rotate(var(--spark-angle)) translateY(-88px) rotate(calc(-1 * var(--spark-angle)));text-shadow:0 0 9px #fff6a1}
.level-number{font-size:45px;line-height:1.1;color:#506e49;letter-spacing:-.04em;font-weight:750;margin:0 0 15px;text-shadow:0 2px #fff}
.level-number span{font-size:22px;letter-spacing:-.02em;font-weight:550}
.level-reward-heading{font-size:12px;color:#7e866e;margin:0 0 10px}
.level-capacities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;text-align:left}
.level-capacity{display:flex;align-items:center;gap:7px;background:#ffffffb8;border:1px solid #e2e8d7;border-radius:12px;padding:9px 10px;min-width:0}
.level-capacity>.icon{flex:none;width:18px;height:18px;color:#a2b38a}.level-capacity>span{min-width:0;font-size:11px;font-weight:650;line-height:1.4}
.level-capacity small{display:block;font-size:9px;font-weight:400;color:#7e8774;white-space:nowrap}.level-capacity strong{margin-left:auto;font-size:17px;color:#729661}
.level-growth{display:flex;justify-content:center;align-items:center;gap:7px;font-size:12px;color:#829244;margin:10px 0 0}
.level-coin-gift{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:center;gap:3px 7px;background:#fff4cfa3;border:1px solid #eddeae;border-radius:13px;padding:10px;margin:12px 0 16px;color:#967124}
.level-coin-gift>.icon{width:21px;height:21px}.level-coin-gift strong{font-size:18px}.level-coin-gift span{grid-column:1/-1;font-size:10px;color:#928467}
.level-continue{width:100%;justify-content:center;min-height:44px}
.level-celebration[data-motion="on"]{animation:level-arrive .36s ease-out both}
.level-celebration[data-motion="on"] .level-pet-jump{animation:level-jump 1.15s .15s ease-in-out 2}
.level-celebration[data-motion="on"] .level-halo{animation:level-shine 1.6s ease-in-out 3}
.level-celebration[data-motion="on"] .level-sparkle{animation:level-twinkle 1.3s var(--spark-delay) ease-in-out 3}
.level-celebration[data-motion="on"] .level-number{animation:level-arrive .5s .35s ease-out both}
.level-celebration[data-motion="on"] .level-rewards{animation:level-reveal .5s 1.4s ease-out both}
@keyframes level-arrive{from{opacity:0;transform:scale(.91)}to{opacity:1;transform:scale(1)}}
@keyframes level-jump{0%,100%{transform:translateY(0) scale(1)}18%{transform:translateY(3px) scale(1.04,.96)}45%{transform:translateY(-17px) rotate(-4deg)}72%{transform:translateY(-7px) rotate(3deg)}88%{transform:translateY(2px) scale(1.02,.98)}}
@keyframes level-shine{0%,100%{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.08)}}
@keyframes level-twinkle{0%,100%{opacity:.35;filter:brightness(1)}50%{opacity:1;filter:brightness(1.3)}}
@keyframes level-reveal{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:380px){.level-celebration-card{padding:24px 16px 18px}.level-capacity{gap:5px;padding:8px}.level-capacity>.icon{width:15px;height:15px}}
@media(max-height:720px){.level-celebration-card{padding-top:20px}.level-pet-stage{height:140px}.level-pet-jump .creature-portrait{width:128px;height:128px}.level-halo{width:122px;height:122px}.level-sparkle{transform:rotate(var(--spark-angle)) translateY(-70px) rotate(calc(-1 * var(--spark-angle)))}.level-number{font-size:36px;margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.level-celebration,.level-celebration *{animation:none!important;transition:none!important}}
