.day5-screen{padding-bottom:calc(7rem + env(safe-area-inset-bottom))}
.day5-content{width:min(100%,720px);margin:auto;color:#513a36}
.d5-page{position:relative;padding:1.05rem;border:1px solid #dfc6b7;border-radius:28px;background:linear-gradient(145deg,#fffaf0,#f5e5de);box-shadow:0 16px 42px #74324718;overflow:hidden;animation:d5-in .45s ease both}
.d5-page:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background:repeating-linear-gradient(4deg,transparent 0 9px,#9c6b5e22 10px 11px)}
.d5-page>*{position:relative}.d5-kicker{margin:0;color:#a35c71;font-size:.72rem;font-weight:900;letter-spacing:.18em}.d5-page h1{margin:.35rem 0 .8rem;color:#78364b;font:700 clamp(1.9rem,8vw,3rem)/1 Georgia,serif}.d5-copy{white-space:pre-line;line-height:1.65}.d5-page button{min-height:48px}.d5-actions{display:grid;gap:.65rem;margin-top:1rem}
.d5-hero{position:relative;height:310px;margin:1rem 0;border-radius:24px;overflow:hidden;box-shadow:0 12px 28px #66324635}.d5-hero img{width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:saturate(.88)}.d5-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 48%,#3f1e2a99)}
.d5-tape:before,.d5-tape:after{content:"";position:absolute;z-index:3;width:72px;height:22px;background:#e7c8a8aa;top:-8px}.d5-tape:before{left:8%;transform:rotate(-8deg)}.d5-tape:after{right:8%;transform:rotate(8deg)}
.d5-progress{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.8rem}.d5-thumbs{display:flex;gap:.35rem}.d5-thumb{width:34px;height:34px;border:2px solid #e4c9bf;border-radius:7px;background:#fff}.d5-thumb.done{border-color:#bd7d8e;background:#f1d8df}.d5-thumb.done:after{content:"✓";display:grid;place-items:center;height:100%;color:#7f3650;font-weight:900}
.d5-board-wrap{position:relative;width:min(100%,430px);aspect-ratio:1;margin:1rem auto}.d5-ghost{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.12;border-radius:18px}.d5-board{position:absolute;inset:0;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;border:5px solid #fff;border-radius:18px;background:#e1c9c2;box-shadow:0 12px 30px #60323b25;overflow:hidden}
.d5-tile{position:relative;min-height:0!important;padding:0!important;border:0!important;border-radius:4px!important;background-image:var(--photo)!important;background-size:300% 300%!important;background-position:calc(var(--x)*50%) calc(var(--y)*50%)!important;transition:transform .25s ease,filter .25s ease}.d5-tile.selected{outline:4px solid #f8d671;outline-offset:-4px;filter:brightness(1.08)}.d5-tile.solved{animation:d5-spark .55s ease}.d5-empty{background-image:none!important;background:#f8eee8!important;box-shadow:inset 0 0 0 2px #d8bdb5}
.d5-rotate{transform:rotate(calc(var(--turn)*90deg));transition:transform .25s ease}.d5-feedback{min-height:2.8rem;padding:.7rem;border-radius:12px;background:#f0dbdd;white-space:pre-line}.d5-hint{display:none;margin:.7rem auto;width:130px;height:130px;object-fit:cover;border:5px solid #fff;box-shadow:0 7px 18px #5b29342c}.d5-hint.show{display:block}
.d5-polaroid{margin:1rem auto;padding:10px 10px 42px;width:min(88%,380px);transform:rotate(-2deg);background:#fff;box-shadow:0 12px 28px #4f2c3528;animation:d5-card .55s ease}.d5-polaroid img{display:block;width:100%;max-height:480px;object-fit:cover;border-radius:2px}
.d5-classified{padding:1rem;border:2px dashed #8a4659;border-radius:18px;background:#f4e4cf;text-align:center}.d5-classified img{width:min(100%,340px);max-height:520px;object-fit:cover;object-position:center;border:8px solid #fff;box-shadow:0 8px 20px #43241f33}.d5-stamp{display:inline-block;padding:.35rem .6rem;border:3px solid #9c3f58;color:#9c3f58;font-weight:900;transform:rotate(-5deg)}
.d5-spotlight{position:relative;min-height:420px;margin:1rem 0;border-radius:22px;background:radial-gradient(circle at var(--sx,50%) var(--sy,50%),#fff8dc 0 70px,#3a2230ee 145px);overflow:hidden}.d5-favourite{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;mix-blend-mode:soft-light;opacity:.65}.d5-object{position:absolute;width:62px!important;min-height:62px!important;border-radius:50%!important;background:#fff5!important;border:1px solid #fff7!important;font-size:1.8rem}.d5-object[data-object="flower"]{left:12%;top:18%}.d5-object[data-object="ribbon"]{right:12%;top:22%}.d5-object[data-object="envelope"]{left:16%;bottom:18%}.d5-object[data-object="frame"]{right:18%;bottom:18%}.d5-object[data-object="gift"]{left:calc(50% - 31px);top:45%;box-shadow:0 0 25px #ffd56e}.d5-missing{position:absolute;left:37%;top:36%;width:28%;height:28%;border-radius:26% 44% 32% 40%;background:#f8eee8aa;border:3px dashed #fff}.d5-piece{position:absolute;left:36%;top:35%;width:30%;height:30%;border:4px solid #fff;border-radius:26% 44% 32% 40%;background-image:var(--photo);background-size:357% 357%;background-position:50% 50%;animation:d5-snap .6s ease}
.d5-collage{position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin:1rem 0;padding:1rem;background:#ead7ca;border-radius:20px}.d5-collage-card{padding:6px 6px 24px;background:#fff;box-shadow:0 8px 16px #5f32332a;transform:rotate(var(--r));transition:transform .3s ease}.d5-collage-card img{width:100%;aspect-ratio:1;object-fit:cover}.d5-centre{grid-column:1/-1;width:76%;margin:auto;transform:rotate(1deg);border:4px solid #fff;border-radius:5px;box-shadow:0 10px 24px #51293833;overflow:hidden}.d5-centre img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 45%}.d5-centre.blank{min-height:180px;display:grid;place-items:center;background:#f9eee6;border-style:dashed}
.d5-note{padding:1rem;border:1px solid #ddc1b1;border-radius:18px;background:#fffdf7;box-shadow:0 8px 20px #5d323214;font:1.02rem/1.7 "Segoe Print","Bradley Hand",cursive;white-space:pre-line}.d5-reward{text-align:center}.d5-reward-flower{position:relative;font-size:5rem;animation:d5-bloom .8s ease}.d5-reward-flower:after{content:"🧩";position:absolute;left:50%;top:30%;font-size:1.1rem}
.day5-flower span{position:relative}.day5-flower.bloomed span:before{content:"🌷";font-size:1.7rem}.day5-flower.bloomed .flower-puzzle:after{content:"🧩";position:absolute;left:-14px;top:-7px;font-size:.63rem}.day5-flower.empty span:before{content:"·"}.day5-home-status{margin:-.45rem 0 .75rem;color:#8a5060;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
@keyframes d5-in{from{opacity:0;transform:translateY(16px)}}@keyframes d5-spark{50%{filter:brightness(1.25);transform:scale(.98)}}@keyframes d5-card{from{opacity:0;transform:translateY(28px) rotate(-4deg)}}@keyframes d5-snap{from{transform:scale(.5) rotate(-12deg);opacity:.3}}@keyframes d5-bloom{from{transform:scale(.25);opacity:0}}
@media(max-width:520px){.day5-screen{padding-inline:.7rem}.d5-page{padding:.85rem;border-radius:22px}.d5-page button{width:100%;white-space:normal}.d5-progress{align-items:flex-start;flex-direction:column}.d5-hero{height:270px}.d5-collage{gap:.45rem;padding:.7rem}.d5-centre{width:88%}}
@media(prefers-reduced-motion:reduce){.day5-content *,.day5-content *:before,.day5-content *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
