.theme-korean-blossom{--font-display:var(--font-noto-serif-kr), serif;--font-heading:var(--font-gowun-batang), serif;--font-body:var(--font-gowun-dodum), sans-serif;--font-script:var(--font-great-vibes), cursive;font-family:var(--font-body);--color-primary:#ec4899;--color-primary-dark:#be185d;--color-primary-light:#fdf2f8;--color-primary-hover:#9d174d;--color-secondary:#6e8b76;--color-secondary-light:#eaf2ec;--color-accent:#d4af37;--color-accent-soft:#fbf5e6;--color-bg:#faf7f5;--theme-bg:#faf7f5;--theme-bg-alt:#fdf4f7;--color-surface:#fff;--color-surface-muted:#f7eff2;--color-surface-card:#fffffff0;--hero-bg-gradient:radial-gradient(ellipse at 15% 20%, #fde8f0bf 0%, transparent 55%), radial-gradient(ellipse at 85% 15%, #fbcfe88c 0%, transparent 60%), radial-gradient(circle at 50% 40%, #ffffffb3 0%, transparent 70%), linear-gradient(180deg, #fdf4f7 0%, #faf7f5 55%, #faf7f5 100%);--color-text:#2d2126;--color-text-muted:#6e5561;--color-text-subtle:#9c8490;--color-border:#ede2e6;--color-border-strong:#d8c2cb;--color-border-blossom:#fbcfe8;--color-border-gold:#e2c97c;--radius-sm:.375rem;--radius-md:.75rem;--radius-lg:1.25rem;--radius-xl:1.75rem;--radius-full:9999px;--shadow-card:0 2px 10px #be185d0d, 0 0 0 1px var(--color-border);--shadow-card-hover:0 10px 28px #be185d1f, 0 0 0 1px var(--color-border-blossom)}.theme-korean-blossom .font-display{font-family:var(--font-noto-serif-kr), serif!important}.theme-korean-blossom .font-heading{font-family:var(--font-gowun-batang), serif!important}.theme-korean-blossom .font-body{font-family:var(--font-gowun-dodum), sans-serif!important}.theme-korean-blossom .font-script{font-family:var(--font-great-vibes), cursive!important}.theme-korean-blossom{background-color:var(--color-bg);color:var(--color-text)}.theme-korean-blossom .hero-gradient-bg{background:var(--hero-bg-gradient)}.theme-korean-blossom .hero-glow-blob{filter:blur(50px);pointer-events:none;z-index:1;background:radial-gradient(circle,#f472b64d 0%,#fdf2f826 60%,#0000 80%);width:600px;height:400px;animation:8s ease-in-out infinite alternate kb-glow-pulse;position:absolute;top:10%;left:50%;transform:translate(-50%)}@keyframes kb-glow-pulse{0%{opacity:.5;transform:translate(-50%)scale(.95)}to{opacity:.85;transform:translate(-50%)scale(1.1)}}.theme-korean-blossom .hero-tree-frame{pointer-events:none;z-index:2;height:100%;position:absolute;top:0;left:0;right:0;overflow:hidden}.theme-korean-blossom .hero-tree-asset{opacity:.96;filter:drop-shadow(0 6px 20px #ec48991f);transform-origin:0 0;width:320px;max-width:75vw;height:auto;animation:10s ease-in-out infinite alternate kb-branch-sway;position:absolute;top:-10px;left:-15px}@media (min-width:640px){.theme-korean-blossom .hero-tree-asset{width:520px;max-width:60vw;top:-20px;left:-20px}}@media (min-width:1024px){.theme-korean-blossom .hero-tree-asset{width:680px;max-width:52vw;top:-30px;left:-20px}}@media (min-width:1280px){.theme-korean-blossom .hero-tree-asset{width:820px;max-width:48vw;top:-40px;left:-20px}}.theme-korean-blossom .hero-tree-branch-right{opacity:.92;filter:drop-shadow(0 6px 18px #ec48991a);transform-origin:100% 0;width:260px;max-width:65vw;height:auto;animation:12s ease-in-out infinite alternate kb-branch-sway-reverse;position:absolute;top:-10px;right:-15px}@media (min-width:640px){.theme-korean-blossom .hero-tree-branch-right{width:420px;max-width:48vw;top:-20px;right:-25px}}@media (min-width:1024px){.theme-korean-blossom .hero-tree-branch-right{width:520px;max-width:38vw;top:-25px;right:-30px}}@media (min-width:1280px){.theme-korean-blossom .hero-tree-branch-right{width:620px;max-width:34vw;top:-30px;right:-30px}}@keyframes kb-branch-sway{0%{transform:rotate(0)scale(1)}50%{transform:rotate(1.2deg)scale(1.008)}to{transform:rotate(-.8deg)scale(.995)}}@keyframes kb-branch-sway-reverse{0%{transform:rotate(0)scale(1)}50%{transform:rotate(-1.4deg)scale(1.01)}to{transform:rotate(.9deg)scale(.996)}}.theme-korean-blossom .petal-field{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.theme-korean-blossom .petal{will-change:transform, opacity;transform-origin:50%;filter:drop-shadow(0 2px 4px #be185d1f);position:absolute}.theme-korean-blossom .petal--drift-right{animation:linear infinite kb-petal-fall-right}.theme-korean-blossom .petal--drift-left{animation:linear infinite kb-petal-fall-left}.theme-korean-blossom .petal--flutter{animation:ease-in-out infinite kb-petal-fall-flutter}.theme-korean-blossom .petal--gentle{animation:ease-in-out infinite kb-petal-fall-gentle}@keyframes kb-petal-fall-right{0%{opacity:0;transform:translateY(-30px)rotate(0)rotateY(0)scale(.85)}8%{opacity:.95}30%{transform:translate(35px,28vh)rotate(110deg)rotateY(180deg)scale(1.05)}60%{opacity:.85;transform:translate(75px,62vh)rotate(230deg)rotateY(360deg)scale(.95)}90%{opacity:.65}to{opacity:0;transform:translate(120px,105vh)rotate(360deg)rotateY(540deg)scale(.8)}}@keyframes kb-petal-fall-left{0%{opacity:0;transform:translateY(-30px)rotate(0)rotateX(0)scale(.9)}8%{opacity:.95}30%{transform:translate(-30px,30vh)rotate(-95deg)rotateX(160deg)scale(1.02)}65%{opacity:.8;transform:translate(-70px,68vh)rotate(-220deg)rotateX(320deg)scale(.92)}90%{opacity:.55}to{opacity:0;transform:translate(-105px,105vh)rotate(-360deg)rotateX(480deg)scale(.75)}}@keyframes kb-petal-fall-flutter{0%{opacity:0;transform:translateY(-25px)rotate(0)scale(.85)}10%{opacity:.9}25%{transform:translate(25px,22vh)rotate(45deg)scale(1.1)}50%{transform:translate(-20px,48vh)rotate(-60deg)scale(.88)}75%{opacity:.75;transform:translate(35px,76vh)rotate(80deg)scale(1.02)}to{opacity:0;transform:translate(10px,105vh)rotate(160deg)scale(.75)}}@keyframes kb-petal-fall-gentle{0%{opacity:0;transform:translateY(-20px)rotate(0)scale(.9)}12%{opacity:.85}35%{transform:translate(15px,32vh)rotate(35deg)scale(1)}70%{opacity:.7;transform:translate(-15px,70vh)rotate(-25deg)scale(.95)}to{opacity:0;transform:translate(10px,105vh)rotate(50deg)scale(.8)}}.theme-korean-blossom .hero-couple-names{letter-spacing:-.015em;line-height:1.15}.theme-korean-blossom .hero-couple-name{transition:transform .3s;display:inline-block}.theme-korean-blossom .hero-ampersand-wrapper{justify-content:center;align-items:center;gap:.75rem;margin:.5rem 0;display:flex}.theme-korean-blossom .hero-ampersand-line{background:linear-gradient(90deg, transparent, var(--color-primary), transparent);width:42px;height:1px}.theme-korean-blossom .hero-ampersand{font-family:var(--font-great-vibes), cursive;color:var(--color-primary-dark);font-size:2.25rem;line-height:1}@media (min-width:640px){.theme-korean-blossom .hero-ampersand{font-size:3.5rem}.theme-korean-blossom .hero-ampersand-line{width:68px}}.theme-korean-blossom .hero-btn-primary{color:#fff;background:linear-gradient(135deg,#ec4899 0%,#be185d 100%);border:1px solid #ffffff40;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 14px #be185d40}.theme-korean-blossom .hero-btn-primary:hover{background:linear-gradient(135deg,#db2777 0%,#9d174d 100%);transform:translateY(-1px);box-shadow:0 6px 20px #be185d59}.theme-korean-blossom .hero-btn-outline{color:var(--color-primary-dark);border:1px solid var(--color-border-blossom);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd9;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #be185d0f}.theme-korean-blossom .hero-btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary-hover);background:#fff;transform:translateY(-1px);box-shadow:0 4px 14px #be185d1f}.theme-korean-blossom .countdown-box{border:1px solid var(--color-border-blossom);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 14px #be185d0f;border-radius:1rem!important}.theme-korean-blossom .countdown-box:hover{border-color:var(--color-primary);background:#fff;transform:translateY(-2px);box-shadow:0 8px 22px #be185d1f}.theme-korean-blossom .countdown-number{color:var(--color-primary-dark);font-weight:600;font-family:var(--font-noto-serif-kr), serif!important}.theme-korean-blossom .countdown-label{color:var(--color-text-muted);letter-spacing:.15em;font-family:var(--font-gowun-dodum), sans-serif!important}.theme-korean-blossom .countdown-subheading{color:var(--color-primary-dark);font-style:italic;font-family:var(--font-gowun-batang), serif!important}@keyframes kb-digit-pop{0%{transform:scale(1)}50%{color:#ec4899;transform:scale(1.16)}to{transform:scale(1)}}.theme-korean-blossom .countdown-digit-pop{animation:.32s cubic-bezier(.34,1.56,.64,1) both kb-digit-pop}.theme-korean-blossom .loading-screen{background-color:var(--color-bg)}.theme-korean-blossom .loading-progress-rail{background-color:var(--color-border-blossom);border-radius:9999px}.theme-korean-blossom .loading-progress-fill{background:linear-gradient(90deg,#fbcfe8,#ec4899,#be185d);border-radius:9999px;box-shadow:0 0 10px #be185d73}.theme-korean-blossom .loading-glow{background-color:#ec48994d}.theme-korean-blossom .rsvp-card{border:1px solid var(--color-border-blossom);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-family:var(--font-body);background:#fffffff2;padding:2.25rem 2rem;box-shadow:0 12px 36px #be185d14;border-radius:1.5rem!important}@media (min-width:640px){.theme-korean-blossom .rsvp-card{padding:2.75rem 2.5rem}}.theme-korean-blossom .rsvp-heading{color:var(--color-text);letter-spacing:-.01em;font-size:2rem;font-family:var(--font-gowun-batang), serif!important}.theme-korean-blossom .rsvp-subheading{color:var(--color-primary-dark);font-family:var(--font-gowun-dodum), sans-serif}.theme-korean-blossom .rsvp-label{color:var(--color-text-muted);font-size:.875rem;font-weight:500}.theme-korean-blossom .rsvp-input{border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-body);background-color:#faf6f3;transition:all .2s;border-radius:.75rem!important}.theme-korean-blossom .rsvp-input:focus{border-color:var(--color-primary);background-color:#fff;outline:none;box-shadow:0 0 0 3px #ec489940}.theme-korean-blossom .rsvp-btn-option{color:var(--color-text-muted);border:1px solid var(--color-border);font-family:var(--font-body);background-color:#faf6f3;transition:all .2s;border-radius:9999px!important}.theme-korean-blossom .rsvp-btn-option:hover{border-color:var(--color-border-blossom);color:var(--color-text);background-color:#fff}.theme-korean-blossom .rsvp-btn-option-active{font-family:var(--font-body);box-shadow:0 2px 8px #be185d40;background-color:var(--color-primary-dark)!important;color:#fff!important;border:1px solid var(--color-primary-dark)!important;border-radius:9999px!important}.theme-korean-blossom .rsvp-btn-submit{color:#fff;font-family:var(--font-body);background:linear-gradient(135deg,#ec4899 0%,#be185d 100%);border:1px solid #fff3;font-weight:600;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #be185d40;border-radius:9999px!important}.theme-korean-blossom .rsvp-btn-submit:hover{background:linear-gradient(135deg,#db2777 0%,#9d174d 100%);transform:translateY(-1px);box-shadow:0 6px 22px #be185d59}.theme-korean-blossom .rsvp-checkbox{accent-color:var(--color-primary-dark);border-radius:.25rem!important}.theme-korean-blossom .rsvp-success-icon-wrapper{color:var(--color-primary-dark);background-color:#fdf2f8;border-radius:9999px!important}.theme-korean-blossom .rsvp-heart-icon{color:var(--color-primary-dark);fill:var(--color-primary-dark)}.theme-korean-blossom .wishes-wall-section{background:var(--color-surface);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:6rem 1.5rem;position:relative}.theme-korean-blossom .wishes-section-header{text-align:center;flex-direction:column;align-items:center;gap:.75rem;max-width:48rem;margin:0 auto 3.5rem;display:flex}.theme-korean-blossom .wishes-section-eyebrow{letter-spacing:.25em;text-transform:uppercase;color:var(--color-primary-dark);font-size:.75rem;font-weight:600;font-family:var(--font-body), sans-serif;display:block}.theme-korean-blossom .wishes-section-title{color:var(--color-text);margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:700;line-height:1.2;font-family:var(--font-gowun-batang), serif!important}.theme-korean-blossom .wishes-section-divider{background:linear-gradient(90deg, transparent, var(--color-primary), transparent);border-radius:9999px;width:4rem;height:2px;margin:.25rem auto 0}.theme-korean-blossom .wishes-section-count{color:var(--color-text-muted);font-size:.8125rem;font-family:var(--font-gowun-dodum), sans-serif;margin-top:.25rem}.theme-korean-blossom .wishes-scroll-track{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;align-items:stretch;gap:1rem;margin-left:-1.5rem;margin-right:-1.5rem;padding:.5rem 1.5rem 1.5rem;scroll-padding-left:1.5rem;display:flex;overflow:auto hidden}.theme-korean-blossom .wishes-scroll-track::-webkit-scrollbar{display:none}.theme-korean-blossom .wishes-scroll-slide{scroll-snap-align:start;flex:0 0 80vw;max-width:320px}.theme-korean-blossom .wishes-grid{display:none}@media (min-width:640px){.theme-korean-blossom .wishes-scroll-track{display:none}.theme-korean-blossom .wishes-grid{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:1.25rem;max-width:56rem;margin:0 auto;display:grid}}@media (min-width:1024px){.theme-korean-blossom .wishes-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.theme-korean-blossom .wish-card{border:1px solid var(--color-border-blossom);background:#fffffff0;border-radius:1.25rem;flex-direction:column;justify-content:space-between;height:100%;padding:1.75rem 1.5rem;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 4px 16px #be185d0d}.theme-korean-blossom .wish-card:hover{border-color:var(--color-primary);background:#fff;transform:translateY(-2px);box-shadow:0 10px 28px #be185d1f}.theme-korean-blossom .wish-quote-mark{color:var(--color-primary);font-family:var(--font-gowun-batang), serif;opacity:.65;font-size:1.5rem;line-height:1}.theme-korean-blossom .wish-message{color:var(--color-text);font-family:var(--font-gowun-batang), serif;font-size:1rem;font-style:italic;line-height:1.6}.theme-korean-blossom .wish-author{color:var(--color-primary-dark);font-family:var(--font-gowun-dodum), sans-serif;letter-spacing:.05em;text-align:right;margin-top:1rem;font-size:.875rem;font-weight:600}.theme-korean-blossom .wish-expand-btn{color:var(--color-primary-dark);font-family:var(--font-gowun-dodum), sans-serif;font-size:.8125rem;font-weight:600;transition:color .2s}.theme-korean-blossom .wish-expand-btn:hover{color:var(--color-primary-hover);text-decoration:underline}.theme-korean-blossom .wishes-empty{text-align:center;border:1px dashed var(--color-border-blossom);background:#ffffffb3;border-radius:1.25rem;padding:3rem 1.5rem}.theme-korean-blossom .wishes-empty-text{font-family:var(--font-gowun-batang), serif;color:var(--color-primary-dark);font-size:1.25rem;font-weight:600}.theme-korean-blossom .wishes-empty-sub{font-family:var(--font-gowun-dodum), sans-serif;color:var(--color-text-muted);margin-top:.5rem;font-size:.875rem}.theme-korean-blossom .wishes-load-more-wrapper{text-align:center;margin-top:2.5rem;display:none}@media (min-width:640px){.theme-korean-blossom .wishes-load-more-wrapper{display:block}}.theme-korean-blossom .wishes-load-more{border:1.5px solid var(--color-primary-dark);color:var(--color-primary-dark);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;min-width:10rem;padding:.625rem 1.75rem;font-size:.875rem;font-weight:600;transition:all .25s;display:inline-flex}.theme-korean-blossom .wishes-load-more:hover:not(:disabled){background:var(--color-primary-dark);color:#fff;transform:translateY(-1px);box-shadow:0 4px 16px #be185d40}.theme-korean-blossom .wishes-load-more:disabled{opacity:.65;cursor:not-allowed}.theme-korean-blossom .wishes-spinner{border:2px solid;border-top-color:#0000;border-radius:9999px;width:1rem;height:1rem;animation:.7s linear infinite kb-spin;display:inline-block}@keyframes kb-spin{to{transform:rotate(360deg)}}.theme-korean-blossom .schedule-card-anim{border:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border-radius:1.25rem;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 16px #be185d0d}.theme-korean-blossom .schedule-card-anim:hover{border-color:var(--color-border-blossom);background:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #be185d1a}.theme-korean-blossom .schedule-badge-date{color:var(--color-primary-dark);border:1px solid var(--color-border-blossom);background-color:#fdf2f8}.theme-korean-blossom .schedule-badge-time{color:var(--color-secondary);background-color:var(--color-secondary-light);border:1px solid #cadcd0}.theme-korean-blossom .pinterest-gallery-wrapper{background:0 0}.theme-korean-blossom .pinterest-gallery-item{border:4px solid #fff;border-radius:1rem;transition:all .35s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 6px 20px #be185d14}.theme-korean-blossom .pinterest-gallery-item:hover{transform:scale(1.02);box-shadow:0 12px 32px #be185d29}.theme-korean-blossom .pinterest-gallery-item:nth-child(3n+1){transform:rotate(.6deg)}.theme-korean-blossom .pinterest-gallery-item:nth-child(3n+2){transform:rotate(-.5deg)}.theme-korean-blossom .pinterest-gallery-item:hover{transform:rotate(0)scale(1.02)!important}.theme-korean-blossom .section-divider-line{background:linear-gradient(90deg, transparent, var(--color-primary), transparent);height:2px}.theme-korean-blossom .kb-anim{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.theme-korean-blossom .kb-fade-up{transform:translateY(22px)}.theme-korean-blossom .kb-visible{opacity:1!important;transform:translateY(0)!important}.theme-korean-blossom .kb-delay-100{transition-delay:.1s}.theme-korean-blossom .kb-delay-200{transition-delay:.2s}.theme-korean-blossom .kb-delay-300{transition-delay:.3s}.theme-korean-blossom .kb-delay-400{transition-delay:.4s}@media (prefers-reduced-motion:reduce){.theme-korean-blossom .hero-tree-asset,.theme-korean-blossom .hero-tree-branch-right{animation:none!important}.theme-korean-blossom .petal{display:none!important}.theme-korean-blossom .hero-glow-blob{animation:none!important}.theme-korean-blossom .kb-anim{opacity:1!important;transition:none!important;transform:none!important}}
