:root { --ink:#442f35; --muted:#93777d; --rose:#d87989; --cream:#fff8f7; --line:#f0dcdf; --card:#ffffffcc; }
* { box-sizing:border-box; }
body { margin:0; min-height:100dvh; color:var(--ink); background:radial-gradient(circle at 5% 5%,#ffe5e4 0,transparent 28rem),radial-gradient(circle at 94% 18%,#fbe8d6 0,transparent 24rem),var(--cream); font:16px/1.65 ui-rounded,"SF Pro Rounded","PingFang SC",system-ui,sans-serif; }
main { width:min(900px,calc(100% - 32px)); margin:0 auto; padding:44px 0 24px; display:grid; gap:16px; }
.card { position:relative; overflow:hidden; padding:26px; border:1px solid #fff; border-radius:24px; background:var(--card); box-shadow:0 12px 40px #96666d12; backdrop-filter:blur(10px); }
.hero { min-height:320px; display:flex; flex-direction:column; justify-content:center; isolation:isolate; }
.eyebrow,.section-label { margin:0 0 7px; color:var(--rose); font-size:11px; font-weight:750; letter-spacing:.14em; }
h1 { z-index:1; margin:0; font-family:Georgia,"Songti SC",serif; font-size:clamp(42px,8vw,76px); line-height:1.06; letter-spacing:.04em; }
h1 i { padding:0 10px; color:#e8a4ac; font-size:.55em; font-style:normal; vertical-align:middle; }
.intro { z-index:1; margin:14px 0 25px; color:var(--muted); }
.days { z-index:1; display:flex; align-items:center; gap:12px; }
.days strong { color:var(--rose); font:700 clamp(42px,7vw,64px)/1 Georgia,serif; }
.days span { color:var(--muted); font-size:13px; line-height:1.45; }.days b { color:var(--ink); }
.orb { position:absolute; z-index:-1; border-radius:50%; filter:blur(1px); }.orb-one { width:245px;height:245px;right:-70px;top:-80px;background:#ffe2df; }.orb-two { width:136px;height:136px;right:120px;bottom:-85px;background:#fbeaca; }
.grid { display:grid; grid-template-columns:1.45fr 1fr; gap:16px; }.note-card blockquote { margin:8px 0 8px; font:italic 26px/1.45 Georgia,"Songti SC",serif; }.signature { margin:0; color:var(--muted); font-size:13px; }.anniversary-card { display:flex; flex-direction:column; }.anniversary-card strong { margin-top:7px; font-size:20px; }.anniversary-card span { color:var(--muted); }.tiny-hearts { margin-top:auto; padding-top:30px; color:#eca9b1; letter-spacing:6px; }
.section-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:12px; }.section-heading h2 { margin:0; font:28px Georgia,"Songti SC",serif; }.section-heading > span { color:#c3a4a9; font-size:12px; }.memory-list { display:grid; gap:10px; }.memory { display:grid; grid-template-columns:76px 1fr; gap:14px; padding:13px 0; border-top:1px dashed var(--line); }.memory time { color:var(--rose); font-size:13px; font-weight:700; }.memory strong,.memory p { display:block; margin:0; }.memory p { color:var(--muted); font-size:14px; }.promise { background:linear-gradient(125deg,#fff0ef,#fffaf5); text-align:center; }.promise p:last-child { max-width:560px; margin:7px auto 0; font:italic 19px/1.7 Georgia,"Songti SC",serif; }
footer { padding:0 16px 36px; color:#b7989f; text-align:center; font-size:12px; letter-spacing:.08em; }
@media (max-width:600px) { main { width:min(100% - 20px,900px); padding-top:16px; gap:10px; }.card { padding:21px; border-radius:19px; }.hero { min-height:295px; }.grid { grid-template-columns:1fr; gap:10px; }.anniversary-card { min-height:160px; }.memory { grid-template-columns:65px 1fr; gap:10px; }.note-card blockquote { font-size:23px; } }
