*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg-deep:#050812;--bg-mid:#0a0f1c;--text:#dce2ee;--text-dim:#7c8ca5;--text-faint:#4a5a70;--text-muted:#2e3d52;--accent:#d4a030;--accent-dim:rgba(212,160,48,0.1);--card-bg:rgba(8,12,24,0.55);--card-border:rgba(124,140,165,0.06);--glow-gold:0 0 20px rgba(212,160,48,0.08)}
html{scroll-behavior:smooth}
body{width:100%;min-height:100vh;background:var(--bg-deep);color:var(--text);font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Hiragino Sans GB','Microsoft YaHei',sans-serif;overflow-x:hidden;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.stars-bg{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse at 20% 50%,#0e1628 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,#120e24 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,#061018 0%,transparent 50%),var(--bg-deep)}
.stars-bg::before,.stars-bg::after{content:'';position:absolute;inset:0;background-image:radial-gradient(1px 1px at 10% 20%,rgba(255,255,255,0.45),transparent),radial-gradient(1px 1px at 30% 70%,rgba(255,255,255,0.3),transparent),radial-gradient(1px 1px at 50% 30%,rgba(255,255,255,0.4),transparent),radial-gradient(1px 1px at 70% 80%,rgba(255,255,255,0.2),transparent),radial-gradient(1px 1px at 90% 40%,rgba(255,255,255,0.35),transparent),radial-gradient(1.5px 1.5px at 15% 85%,rgba(255,255,255,0.55),transparent),radial-gradient(1.5px 1.5px at 85% 15%,rgba(255,255,255,0.45),transparent),radial-gradient(1px 1px at 45% 55%,rgba(255,255,255,0.2),transparent),radial-gradient(1px 1px at 65% 25%,rgba(255,255,255,0.3),transparent),radial-gradient(1px 1px at 25% 45%,rgba(255,255,255,0.2),transparent);background-size:100% 100%;animation:twinkle 8s ease-in-out infinite alternate}
.stars-bg::after{background-image:radial-gradient(1px 1px at 5% 60%,rgba(255,255,255,0.3),transparent),radial-gradient(1px 1px at 35% 15%,rgba(255,255,255,0.4),transparent),radial-gradient(1px 1px at 55% 75%,rgba(255,255,255,0.2),transparent),radial-gradient(1px 1px at 75% 45%,rgba(255,255,255,0.45),transparent),radial-gradient(1px 1px at 95% 85%,rgba(255,255,255,0.3),transparent),radial-gradient(2px 2px at 50% 10%,rgba(255,255,255,0.6),transparent),radial-gradient(1.5px 1.5px at 20% 90%,rgba(255,255,255,0.35),transparent);animation-delay:-4s}
@keyframes twinkle{0%{opacity:0.35}100%{opacity:0.85}}
.back-link{position:fixed;top:1.5rem;left:1.5rem;z-index:100;font-size:.8rem;font-weight:500;color:var(--text-dim);text-decoration:none;padding:.5rem 1rem;background:rgba(8,12,24,0.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(124,140,165,0.06);border-radius:10px;transition:all .25s ease}
.back-link:hover{color:var(--accent);border-color:rgba(212,160,48,0.2);box-shadow:var(--glow-gold)}
.site-footer{text-align:center;padding:2.5rem 1rem 3rem;color:var(--text-faint);font-size:.75rem;letter-spacing:.05em}

/* ---- Page layout ---- */
.plan-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:5rem 1.5rem}
.plan-title{font-size:1.6rem;font-weight:300;letter-spacing:.08em;color:var(--text);margin-bottom:3rem}
.plan-goal{font-size:3rem;font-weight:200;letter-spacing:.06em;color:var(--accent);margin-bottom:0.5rem}
.plan-goal-label{font-size:.85rem;color:var(--text-dim);letter-spacing:.12em;margin-bottom:3.5rem}
.plan-date{font-size:1rem;color:var(--text-faint);letter-spacing:.06em;margin-bottom:3rem;font-weight:300}
.plan-countdown{display:flex;flex-direction:column;align-items:center;gap:.5rem}
.plan-countdown-num{font-size:7rem;font-weight:100;font-variant-numeric:tabular-nums;color:var(--text);background:linear-gradient(180deg,#eef2fc 0%,var(--text-dim) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:.04em}
.plan-countdown-label{font-size:.8rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint)}
@media(max-width:600px){
.plan-title{font-size:1.2rem;margin-bottom:2rem}
.plan-goal{font-size:2rem}
.plan-countdown-num{font-size:4rem}
}
