.language-selector-wrapper{z-index:100;position:fixed;top:1.5rem;right:2rem}@media (max-width:600px){.language-selector-wrapper{top:1rem;right:1rem}}:root{--color-accent-mom:#e11d48;--color-accent-dad:#2563eb;--color-bg:#fafaf9;--color-surface:#fff;--color-border:#e7e5e4;--color-text-primary:#1c1917;--color-text-secondary:#57534e;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}body{background:var(--color-bg)}.home-container{background:var(--color-surface);min-height:100vh}.hero-section{border-bottom:1px solid var(--color-border);text-align:center;background:linear-gradient(#fafaf9 0%,#fff 100%);padding:3rem 1.5rem}.hero-title{font-family:var(--font-handwriting);color:var(--color-text-primary);margin-top:.5rem;margin-bottom:1.5rem;font-size:clamp(3rem,8vw,5rem);line-height:1.1}.hero-subtitle{color:var(--color-text-secondary);max-width:42rem;margin:0 auto;font-size:1.125rem;line-height:1.6}.content-container{max-width:64rem;margin:0 auto;padding:4rem 1.5rem}.parent-grid{gap:2rem;display:grid}@media (min-width:768px){.parent-grid{grid-template-columns:repeat(2,1fr)}}.parent-card{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:12px;padding:2.5rem;text-decoration:none;transition:all .2s}.parent-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.parent-card.mom:hover{border-color:var(--color-accent-mom);background:linear-gradient(#fff1f2 0%,#fff 100%)}.parent-card.dad:hover{border-color:var(--color-accent-dad);background:linear-gradient(#eff6ff 0%,#fff 100%)}.card-accent{border-radius:9999px;width:4rem;height:.25rem;margin-bottom:2rem}.card-accent.mom{background:linear-gradient(to right,#fda4af,var(--color-accent-mom))}.card-accent.dad{background:linear-gradient(to right,#93c5fd,var(--color-accent-dad))}.card-title{font-family:var(--font-handwriting);color:var(--color-text-primary);margin-bottom:1rem;font-size:2.5rem;transition:color .2s}.parent-card.mom:hover .card-title{color:var(--color-accent-mom)}.parent-card.dad:hover .card-title{color:var(--color-accent-dad)}.card-description{color:var(--color-text-secondary);margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.card-link{align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;transition:gap .2s;display:inline-flex}.parent-card.mom .card-link{color:var(--color-accent-mom)}.parent-card.dad .card-link{color:var(--color-accent-dad)}.parent-card:hover .card-link{gap:.75rem}.page-header{border-bottom:1px solid var(--color-border);background:linear-gradient(#fafaf9 0%,#fff 100%);padding:3rem 1.5rem}.back-link{color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.875rem;text-decoration:none;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--color-text-primary)}.page-accent{border-radius:9999px;width:5rem;height:.25rem;margin-bottom:2rem}.page-accent.mom{background:linear-gradient(to right,#fda4af,var(--color-accent-mom))}.page-accent.dad{background:linear-gradient(to right,#93c5fd,var(--color-accent-dad))}.page-title{font-family:var(--font-handwriting);margin-bottom:1rem;font-size:clamp(2.5rem,6vw,4rem)}.page-title.mom{color:var(--color-accent-mom)}.page-title.dad{color:var(--color-accent-dad)}.page-subtitle{color:var(--color-text-secondary);font-size:1.125rem;line-height:1.6}.chapter-grid{gap:1rem;display:grid}@media (min-width:768px){.chapter-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media (min-width:1024px){.chapter-grid{grid-template-columns:repeat(3,1fr)}}.chapter-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:1.25rem;min-height:160px;padding:2rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #00000005}.chapter-card:before{content:"";background:linear-gradient(to right,transparent,var(--color-border),transparent);height:3px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.chapter-card:hover{border-color:#a8a29e;transform:translateY(-6px);box-shadow:0 20px 40px -10px #0000001f,0 10px 20px -8px #00000014}.chapter-card:hover:before{transform:scaleX(1)}.chapter-card.mom:hover{border-color:#e11d4866;box-shadow:0 20px 40px -10px #e11d4826,0 10px 20px -8px #e11d481a}.chapter-card.mom:hover:before{background:linear-gradient(to right,transparent,var(--color-accent-mom),transparent)}.chapter-card.dad:hover{border-color:#2563eb66;box-shadow:0 20px 40px -10px #2563eb26,0 10px 20px -8px #2563eb1a}.chapter-card.dad:hover:before{background:linear-gradient(to right,transparent,var(--color-accent-dad),transparent)}.chapter-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.chapter-icon-wrapper{background:linear-gradient(135deg,#f5f5f4 0%,#e7e5e4 100%);border:1px solid #d6d3d1;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;transition:all .3s;display:flex}.chapter-card:hover .chapter-icon-wrapper{transform:scale(1.08)rotate(-3deg);box-shadow:0 8px 16px #0000001a}.chapter-card.mom:hover .chapter-icon-wrapper{border-color:var(--color-accent-mom);background:linear-gradient(135deg,#fda4af 0%,#fb7185 100%);box-shadow:0 8px 20px #e11d4866}.chapter-card.dad:hover .chapter-icon-wrapper{border-color:var(--color-accent-dad);background:linear-gradient(135deg,#60a5fa 0%,#3b82f6 100%);box-shadow:0 8px 20px #2563eb66}.chapter-icon{color:#78716c;width:28px;height:28px;transition:color .3s}.chapter-card.mom:hover .chapter-icon,.chapter-card.dad:hover .chapter-icon{color:#fff}.chapter-content{flex-direction:column;flex:1;gap:.75rem;display:flex}.chapter-title{font-family:var(--font-serif);color:var(--color-text-primary);letter-spacing:-.01em;font-size:1.25rem;font-weight:600;line-height:1.3;transition:color .3s}.chapter-card.mom:hover .chapter-title{color:var(--color-accent-mom)}.chapter-card.dad:hover .chapter-title{color:var(--color-accent-dad)}.chapter-description{color:var(--color-text-secondary);letter-spacing:-.005em;font-size:.9375rem;line-height:1.6}@media (max-width:767px){.hero-section{padding:3rem 1.5rem}.content-container,.page-header{padding:2rem 1.5rem}.parent-card{padding:2rem}.chapter-card{padding:1.5rem}}.welcome-card{background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow-md);border-radius:16px;margin-bottom:4rem;padding:3rem;position:relative;overflow:hidden}.welcome-accent{border-radius:9999px;width:100%;height:4px;margin-bottom:2rem}.welcome-accent.mom{background:linear-gradient(to right,var(--color-accent-mom),#fda4af)}.welcome-accent.dad{background:linear-gradient(to right,var(--color-accent-dad),#60a5fa)}.welcome-title{font-family:var(--font-handwriting);color:var(--color-text-primary);margin-bottom:1.5rem;font-size:3rem}.progress-section{border:1px solid var(--color-border);background:linear-gradient(135deg,#fafaf9 0%,#f5f5f4 100%);border-radius:12px;margin-bottom:2rem;padding:1.5rem}.progress-stats{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.progress-number{color:var(--color-text-primary);font-size:1rem;font-weight:600}.progress-percent{font-size:1.5rem;font-weight:700;font-family:var(--font-handwriting)}.welcome-card.mom .progress-percent{color:var(--color-accent-mom)}.welcome-card.dad .progress-percent{color:var(--color-accent-dad)}.progress-bar-container{background:#e7e5e4;border-radius:999px;width:100%;height:12px;overflow:hidden;box-shadow:inset 0 2px 4px #0000000d}.progress-bar-fill{border-radius:999px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.progress-bar-fill.mom{background:linear-gradient(90deg,var(--color-accent-mom)0%,#fb7185 100%);box-shadow:0 2px 8px #e11d484d}.progress-bar-fill.dad{background:linear-gradient(90deg,var(--color-accent-dad)0%,#60a5fa 100%);box-shadow:0 2px 8px #2563eb4d}.progress-bar-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-hint{color:var(--color-text-secondary);text-align:center;margin-top:.75rem;font-size:.875rem;font-style:italic}.welcome-message{color:var(--color-text-secondary);flex-direction:column;gap:1.25rem;font-size:1.125rem;line-height:1.7;display:flex}.welcome-message p{margin:0}.welcome-signature{color:var(--color-text-primary);margin-top:.5rem;font-size:1.25rem;font-weight:500}.welcome-actions{flex-direction:column;align-items:center;gap:1rem;margin-top:2.5rem;display:flex}.begin-button{background:var(--color-surface);color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:12px;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 2px 8px #0000000d}.begin-button:hover{border-color:#0000;transform:translateY(-2px)}.begin-button.mom:hover{background:linear-gradient(135deg,var(--color-accent-mom)0%,#fb7185 100%);color:#fff;box-shadow:0 8px 24px #e11d484d}.begin-button.dad:hover{background:linear-gradient(135deg,var(--color-accent-dad)0%,#3b82f6 100%);color:#fff;box-shadow:0 8px 24px #2563eb4d}.gallery-link-button{color:var(--color-text-secondary);border:1px solid var(--color-border);background:0 0;border-radius:10px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.gallery-link-button:hover{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-accent);transform:translateY(-1px)}.gallery-link-button svg{flex-shrink:0}.welcome-chapters-section{margin-top:3rem}.chapters-section-title{font-family:var(--font-serif);color:var(--color-text-primary);text-align:center;margin-bottom:2rem;font-size:1.5rem;font-weight:600}.full-completion-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.full-completion-card{text-align:center;background:#fff;border-radius:24px;width:90%;max-width:500px;padding:4rem 3rem;animation:.4s cubic-bezier(.34,1.56,.64,1) slideUp;position:relative;overflow:visible;box-shadow:0 25px 50px -12px #00000040}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.full-completion-card.mom{border:3px solid var(--color-accent-mom)}.full-completion-card.dad{border:3px solid var(--color-accent-dad)}.completion-confetti{pointer-events:none;position:absolute;inset:-40px 0 0;overflow:visible}.completion-confetti span{opacity:.9;font-size:2rem;animation:3s ease-in-out infinite float;position:absolute}.completion-confetti span:first-child{animation-delay:0s;top:20%;left:10%}.completion-confetti span:nth-child(2){animation-delay:.2s;top:40%;left:20%}.completion-confetti span:nth-child(3){animation-delay:.4s;top:10%;left:30%}.completion-confetti span:nth-child(4){animation-delay:.6s;top:30%;right:30%}.completion-confetti span:nth-child(5){animation-delay:.8s;top:50%;right:20%}.completion-confetti span:nth-child(6){animation-delay:1s;top:15%;right:10%}.completion-confetti span:nth-child(7){animation-delay:1.2s;top:60%;left:15%}.completion-confetti span:nth-child(8){animation-delay:1.4s;top:70%;left:25%}.completion-confetti span:nth-child(9){animation-delay:1.6s;top:50%;left:35%}.completion-confetti span:nth-child(10){animation-delay:1.8s;top:60%;right:35%}.completion-confetti span:nth-child(11){animation-delay:2s;top:70%;right:25%}.completion-confetti span:nth-child(12){animation-delay:2.2s;top:45%;right:15%}.completion-confetti span:nth-child(13){animation-delay:2.4s;top:35%;left:5%}.completion-confetti span:nth-child(14){animation-delay:2.6s;top:25%;left:40%}.completion-confetti span:nth-child(15){animation-delay:2.8s;top:65%;right:5%}.completion-confetti span:nth-child(16){animation-delay:.3s;top:20%;right:40%}.completion-confetti span:nth-child(17){animation-delay:.7s;top:5%;left:50%}.completion-confetti span:nth-child(18){animation-delay:1.1s;top:75%;right:50%}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-20px)rotate(180deg)}}.completion-main-title{font-family:var(--font-handwriting);color:var(--color-text-primary);margin-bottom:1rem;font-size:3rem;line-height:1.2}.completion-stats{justify-content:center;gap:2rem;margin-top:2rem;display:flex}.completion-stat{flex-direction:column;align-items:center;gap:.5rem;display:flex}.stat-number{font-family:var(--font-handwriting);color:var(--color-text-primary);font-size:3rem;font-weight:700}.full-completion-card.mom .stat-number{color:var(--color-accent-mom)}.full-completion-card.dad .stat-number{color:var(--color-accent-dad)}.stat-label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem}@media (max-width:600px){.full-completion-card{padding:3rem 2rem}.completion-main-title{font-size:2.25rem}.stat-number{font-size:2.5rem}}.full-completion-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;background:#0006;justify-content:center;align-items:center;padding:1.5rem;animation:.3s overlayFadeIn;display:flex;position:fixed;inset:0}.full-completion-overlay.hiding{animation:.5s forwards overlayFadeOut}@keyframes overlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}.full-completion-card{background:var(--color-surface);text-align:center;border-radius:24px;width:100%;max-width:500px;padding:3rem;animation:.5s cubic-bezier(.34,1.56,.64,1) cardEnter;position:relative;box-shadow:0 25px 50px -12px #00000040}@keyframes cardEnter{0%{opacity:0;transform:scale(.8)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.completion-confetti{pointer-events:none;justify-content:space-around;align-items:center;width:100%;height:120px;display:flex;position:absolute;top:-60px;left:0}.completion-confetti span{filter:drop-shadow(0 2px 4px #0000001a);font-size:2.5rem;animation:3s ease-in-out infinite confettiFall;display:inline-block}.completion-confetti span:first-child{animation-delay:0s}.completion-confetti span:nth-child(2){animation-delay:.3s}.completion-confetti span:nth-child(3){animation-delay:.6s}.completion-confetti span:nth-child(4){animation-delay:.9s}.completion-confetti span:nth-child(5){animation-delay:1.2s}.completion-confetti span:nth-child(6){animation-delay:1.5s}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}50%{opacity:.8;transform:translateY(30px)rotate(180deg)}to{opacity:1;transform:translateY(0)rotate(360deg)}}.completion-accent{border-radius:9999px;width:5rem;height:.25rem;margin:0 auto 2rem}.completion-accent.mom{background:linear-gradient(to right,#fda4af,var(--color-accent-mom))}.completion-accent.dad{background:linear-gradient(to right,#93c5fd,var(--color-accent-dad))}.completion-main-title{font-family:var(--font-handwriting);margin-bottom:1rem;font-size:2.5rem;line-height:1.2}.completion-main-title.mom{color:var(--color-accent-mom)}.completion-main-title.dad{color:var(--color-accent-dad)}.completion-subtitle{color:var(--color-text-secondary);margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.completion-stats{border:1px solid var(--color-border);background:linear-gradient(135deg,#fafaf9 0%,#f5f5f4 100%);border-radius:12px;justify-content:center;gap:2rem;padding:1.5rem;display:flex}.completion-stat{text-align:center}.stat-number{font-family:var(--font-handwriting);font-size:2.5rem;font-weight:700;line-height:1;display:block}.stat-number.mom{color:var(--color-accent-mom)}.stat-number.dad{color:var(--color-accent-dad)}.stat-label{color:var(--color-text-secondary);margin-top:.5rem;font-size:.875rem;display:block}@media (max-width:600px){.full-completion-card{padding:2rem}.completion-main-title,.completion-confetti span{font-size:2rem}.completion-stats{flex-direction:column;gap:1rem}}
