*{box-sizing:border-box}:root{--ink:#654653;--muted:#987987;--rose:#b85c78;--glass:rgba(255,255,255,.58);--line:rgba(255,255,255,.78)}html{min-height:100%;background:#fff1f5}body{margin:0;min-height:100vh;color:var(--ink);font-family:"DM Sans",sans-serif;background:radial-gradient(ellipse at 10% 5%,#ffe0eb 0,transparent 42%),radial-gradient(ellipse at 90% 25%,#e9e2f8 0,transparent 40%),linear-gradient(145deg,#fff5f7,#f9eff8 55%,#fff4f1);overflow-x:hidden}.ambient{position:fixed;z-index:0;pointer-events:none;border-radius:50%;filter:blur(2px);opacity:.45}.ambient-one{width:170px;height:170px;background:#f5c7d8;top:22%;left:-95px}.ambient-two{width:220px;height:220px;background:#dcd0f2;right:-130px;top:58%}.page-shell{position:relative;z-index:1;width:min(100% - 28px,760px);margin:0 auto;padding:34px 0 26px}.hero{text-align:center;padding:4px 10px 22px}.eyebrow,.section-kicker{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rose);font-weight:600}.tiny-heart{font-size:1rem;margin-right:5px}h1{font-family:"Playfair Display",serif;font-size:clamp(2.25rem,9vw,3.65rem);font-weight:500;line-height:1.1;margin:12px 0 10px;letter-spacing:-.04em}h1 span{color:var(--rose);font-style:italic}.subtitle{max-width:340px;margin:0 auto;color:var(--muted);font-size:.94rem;line-height:1.65}.glass{background:var(--glass);border:1px solid var(--line);box-shadow:0 14px 45px rgba(155,99,125,.10),inset 0 1px 0 rgba(255,255,255,.85);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.timer-card{border-radius:25px;padding:20px 16px 17px;text-align:center}.timer-heading{font-size:.83rem;letter-spacing:.08em;text-transform:uppercase;color:var(--rose);font-weight:600}.heart-pulse{display:inline-block;margin-right:7px;animation:pulse 1.8s ease-in-out infinite}.timer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:17px 0 12px}.timer-grid div{display:flex;flex-direction:column;gap:4px}.timer-grid strong{font-family:"Playfair Display",serif;font-weight:500;font-size:clamp(1.55rem,7vw,2.2rem);line-height:1;color:#784b5c;font-variant-numeric:tabular-nums}.timer-grid span{font-size:.69rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.timer-note{font-size:.78rem;color:#a17d8d;margin:0}.diary-section{margin-top:29px}.section-heading{display:flex;align-items:center;justify-content:space-between;padding:0 5px 12px}.little-sparkle{color:#d69ab0}.pagination{display:flex;align-items:center;justify-content:space-between;gap:8px}.pagination-top{margin-bottom:12px}.page-button{border:1px solid rgba(207,151,174,.35);background:rgba(255,255,255,.48);color:#a15c77;border-radius:999px;padding:10px 13px;font:500 .78rem "DM Sans",sans-serif;cursor:pointer;min-height:40px}.page-button:disabled{opacity:.35;cursor:not-allowed}.story-card{border-radius:26px;padding:23px 20px 20px;min-height:250px;animation:appear .35s ease}.story-date{text-align:center;color:#b17a91;font-size:.76rem;letter-spacing:.06em}.story-card h2{text-align:center;font-family:"Playfair Display",serif;font-weight:500;font-size:1.55rem;margin:9px 0 12px;color:#754b5b}.story-divider{text-align:center;color:#d89bb2;font-size:.95rem;margin:0 0 15px}.story-content{font-size:1rem;line-height:1.9;overflow-wrap:anywhere;color:#694d58}.thought{margin:0 0 17px;white-space:pre-wrap}.thought:last-child{margin-bottom:0}.thought-time{display:block;font-size:.72rem;letter-spacing:.04em;color:#b08a9a;margin:0 0 5px}.story-end{text-align:center;margin-top:24px;padding-top:15px;border-top:1px solid rgba(210,163,183,.25);font-family:"Playfair Display",serif;font-style:italic;color:#b17a91;font-size:.9rem}.story-end span,.footer-note span{color:#d58eaa}.pagination-bottom{margin-top:14px}.page-button-primary{background:linear-gradient(135deg,#e9b4c8,#d89bb7);color:#fff;border-color:transparent;box-shadow:0 6px 16px rgba(199,126,157,.2)}.footer-note{text-align:center;color:#b18b9b;font-size:.76rem;margin:24px 0 0;letter-spacing:.03em}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.13)}}@keyframes appear{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(min-width:600px){.page-shell{padding-top:52px}.hero{padding-bottom:28px}.timer-card{padding:24px 30px}.story-card{padding:32px 38px}.story-content{font-size:1.05rem}.page-button{padding:11px 17px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}