*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-rounded: ui-rounded, "SF Pro Rounded", var(--font-body);--color-lavender: #c9b6e4;--color-lavender-soft: #e7d9f7;--color-blush: #f6d3de;--color-sky: #cfe8f3;--color-surface: #fffbf7;--color-text: #3a3540;--color-text-muted: #6b6575;--color-glow: rgba(190, 170, 220, .28);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--color-lavender: #6f5a94;--color-lavender-soft: #4a3d63;--color-blush: #5f4152;--color-sky: #3c5568;--color-surface: #2b2438;--color-text: #f1ebfa;--color-text-muted: #c3b8d6;--color-glow: rgba(20, 14, 30, .45)}}body{min-height:100dvh;font-family:var(--font-body);color:var(--color-text);background:linear-gradient(135deg,var(--color-lavender-soft) 0%,var(--color-blush) 50%,var(--color-sky) 100%);background-size:200% 200%;animation:drift 24s ease-in-out infinite}@keyframes drift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media(prefers-reduced-motion:reduce){body{animation:none}}.page{max-width:80ch;margin-inline:auto;padding:2rem}.day{display:flex;flex-direction:column;align-items:stretch;gap:1.75rem;max-width:40rem;margin-inline:auto;padding:3rem 1.5rem 4rem}.day__header{text-align:center;animation:float 8s ease-in-out infinite}.day__greeting{font-family:var(--font-rounded);color:var(--color-text-muted);font-size:1.05rem}.day__title{font-family:var(--font-rounded);font-weight:600;font-size:clamp(2rem,6vw,2.75rem);line-height:1.3;margin-top:.25rem}.banner{display:flex;align-items:center;justify-content:center;gap:.6rem;background:var(--color-surface);border:1px solid rgba(255,255,255,.6);border-radius:999px;padding:.9rem 1.5rem;text-align:center;font-family:var(--font-rounded);box-shadow:0 0 28px var(--color-glow);animation:float 6s ease-in-out infinite,fade-in .6s ease-out}.banner__icon{font-size:1.2rem}@keyframes fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--color-surface);border:1px solid rgba(255,255,255,.6);border-radius:28px;padding:2rem;box-shadow:0 0 32px var(--color-glow);display:flex;flex-direction:column;gap:1rem}.card__label{font-family:var(--font-rounded);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}.card--devotion .card__text{font-family:var(--font-rounded);font-size:1.3rem;line-height:1.7}.card__reference{color:var(--color-text-muted);font-style:italic}.pill{align-self:flex-start;font-family:var(--font-rounded);font-weight:600;border:none;border-radius:999px;padding:.85rem 1.75rem;background:linear-gradient(135deg,var(--color-lavender),var(--color-blush));color:var(--color-text);cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}.pill:hover{transform:translateY(-2px);box-shadow:0 0 24px var(--color-glow)}.pill--done{background:linear-gradient(135deg,var(--color-sky),var(--color-lavender-soft))}.field{font-family:var(--font-rounded);font-weight:600;color:var(--color-text-muted);font-size:.9rem}.field__textarea{min-height:5rem;resize:vertical;border:1px solid var(--color-lavender-soft);border-radius:18px;padding:.9rem 1.1rem;background:#ffffff80;color:var(--color-text);font-family:var(--font-body);line-height:1.6}.field__textarea:focus,.field__time:focus{outline:2px solid var(--color-lavender);outline-offset:2px}.field__time{align-self:flex-start;border:1px solid var(--color-lavender-soft);border-radius:999px;padding:.6rem 1.1rem;background:#ffffff80;color:var(--color-text)}.switch{display:flex;align-items:center;gap:.6rem;font-family:var(--font-rounded)}.switch input{width:1.2rem;height:1.2rem;accent-color:var(--color-lavender)}
