:root{--bg-1: #faf6f0;--bg-2: #eef6ff;--bg-3: #fff0f5;--bg-4: #fef9f0;--ink: #1e1726;--ink-soft: rgba(30, 23, 38, .68);--ink-muted: rgba(30, 23, 38, .46);--rose: #e04b6f;--rose-2: #ff85a5;--sun: #f0c060;--mint: #5ecbb8;--sky: #7dbfef;--lavender: #a8a4ff;--card: rgba(255, 255, 255, .72);--card-border: rgba(30, 23, 38, .08);--shadow-sm: 0 8px 32px rgba(30, 23, 38, .08), 0 2px 8px rgba(30, 23, 38, .04);--shadow-md: 0 16px 48px rgba(30, 23, 38, .12), 0 4px 16px rgba(30, 23, 38, .06);--shadow-lg: 0 32px 80px rgba(30, 23, 38, .18), 0 8px 24px rgba(30, 23, 38, .08);--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--ring: rgba(224, 75, 111, .45);--font-body: "Space Grotesk", sans-serif;--font-title: "Cormorant Garamond", serif;--font-script: "Marck Script", cursive;--accent: linear-gradient(135deg, var(--rose), var(--sun), var(--mint));--accent-soft: linear-gradient(135deg, rgba(224, 75, 111, .22), rgba(240, 192, 96, .18), rgba(94, 203, 184, .18));--fx-speed: .4s;--mx: 50%;--my: 44%;--scroll-p: 0;--spot-x: 50%;--spot-y: 50%}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--ink);background:linear-gradient(152deg,var(--bg-1) 0%,var(--bg-2) 32%,var(--bg-3) 68%,var(--bg-4) 100%);background-attachment:fixed;line-height:1.65;letter-spacing:.015em;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-title);line-height:1.04;letter-spacing:-.02em}img,video{display:block;max-width:100%}button,input{color:inherit;font-family:inherit}::-moz-selection{background:#e4527333}::selection{background:#e4527333}*:focus-visible{outline:2px solid var(--ring);outline-offset:3px}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:1200;background:#ffffff2e;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.scroll-progress-fill{display:block;height:100%;width:100%;transform-origin:left center;transform:scaleX(var(--scroll-p));background:linear-gradient(90deg,var(--rose),var(--sun),var(--mint),var(--sky));background-size:240% 100%;animation:progressFlow 5s linear infinite;box-shadow:0 0 18px #e4527361}body:before,body:after{content:"";position:fixed;pointer-events:none;z-index:-2}body:before{top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at var(--mx) var(--my),rgba(255,245,210,.35),transparent 36%),radial-gradient(circle at 10% 15%,rgba(228,82,115,.22),transparent 42%),radial-gradient(circle at 85% 10%,rgba(115,209,193,.2),transparent 42%),radial-gradient(circle at 70% 82%,rgba(142,200,243,.3),transparent 46%);transition:background .25s linear}body:after{inset:8% 12% auto;height:280px;border-radius:999px;background:linear-gradient(90deg,#fff0,#ffffff8c,#fff0);filter:blur(30px)}body::-webkit-scrollbar{width:12px}body::-webkit-scrollbar-track{background:#ffffff61}body::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(var(--rose),var(--sun),var(--mint));border:2px solid rgba(255,255,255,.65)}body[data-theme=dark]::-webkit-scrollbar-track{background:#09111ddb}body[data-theme=dark]::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#799ccef0,#61b2a7f0,#d092b0eb);border-color:#080f1ae6}body[data-theme=dark]{--ink: #ecf2ff;--ink-soft: rgba(207, 220, 242, .9);--ink-muted: rgba(171, 190, 217, .86);--card: rgba(14, 22, 34, .92);--card-border: rgba(126, 156, 198, .28);--shadow-sm: 0 14px 32px rgba(0, 0, 0, .48);--shadow-md: 0 24px 60px rgba(0, 0, 0, .58);--shadow-lg: 0 38px 92px rgba(0, 0, 0, .66);--ring: rgba(152, 193, 255, .72);--bs-body-color: #ecf2ff;--bs-secondary-color: rgba(188, 205, 230, .9);--bs-card-color: #ecf2ff;--bs-list-group-color: #e5eeff;--bs-list-group-bg: rgba(10, 18, 30, .92);--bs-border-color: rgba(117, 149, 194, .3);background:linear-gradient(156deg,#060d18,#0b1422 45%,#101d30);color-scheme:dark}body[data-theme=dark]:before{background:radial-gradient(circle at var(--mx) var(--my),rgba(112,155,221,.28),transparent 38%),radial-gradient(circle at 12% 18%,rgba(63,109,181,.28),transparent 44%),radial-gradient(circle at 84% 10%,rgba(78,152,147,.2),transparent 42%),radial-gradient(circle at 68% 86%,rgba(116,133,186,.24),transparent 48%)}body[data-theme=dark]:after{background:linear-gradient(90deg,#fff0,#6382b433,#fff0)}body[data-theme=dark] .gridlines{opacity:.11;background-image:linear-gradient(rgba(210,227,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(210,227,255,.08) 1px,transparent 1px)}body[data-theme=dark] .theme-label,body[data-theme=dark] .small-label,body[data-theme=dark] .lead,body[data-theme=dark] .hero-note,body[data-theme=dark] .eyebrow{color:var(--ink-soft)}body[data-theme=dark] .card{background:linear-gradient(165deg,#0d1521f0,#131e30e6);border-color:#7e9cc64d;color:var(--ink)}body[data-theme=dark] .hero-copy,body[data-theme=dark] .hero-stage{background:linear-gradient(165deg,#0c1522f2,#141f32e6);border-color:#819ec952;box-shadow:var(--shadow-md);color:var(--ink)}body[data-theme=dark] .hero-copy:before{background:radial-gradient(circle,rgba(198,171,123,.18),transparent 68%)}body[data-theme=dark] .top-ribbon,body[data-theme=dark] .theme-toggle,body[data-theme=dark] .hero-note{background:#0b1320c7;border-color:#7e9eca57;color:var(--ink)}body[data-theme=dark] .section-head h3,body[data-theme=dark] .title,body[data-theme=dark] .hero-card h2,body[data-theme=dark] .card-kicker,body[data-theme=dark] .birthday-today,body[data-theme=dark] a{color:var(--ink)}body[data-theme=dark] .ribbon-title{color:#ffc6da}body[data-theme=dark] .tag,body[data-theme=dark] .date-chip,body[data-theme=dark] .mood-message,body[data-theme=dark] .rel-sub-text{background:#0d1725e6;color:#e3eeffed;border-color:#7a9ac557}body[data-theme=dark] .date-chip,body[data-theme=dark] .tag{color:#ecf3fff0}body[data-theme=dark] .orbit-line,body[data-theme=dark] .love-wave{stroke:#c4ddff9e}body[data-theme=dark] .orbit-line-main,body[data-theme=dark] .love-wave-soft{stroke:#9fe0cd94}body[data-theme=dark] .orbit-heart,body[data-theme=dark] .orbit-dot{fill:#ffd9c8}body[data-theme=dark] .countdown-item,body[data-theme=dark] .list-group-item,body[data-theme=dark] .mood-btn,body[data-theme=dark] .media-tile,body[data-theme=dark] .photo-item{background:#0a121eeb;border-color:#7595c24d}body[data-theme=dark] .period-tile{background:linear-gradient(160deg,#0e1826eb,#121f32e0);border-color:#7b9dc961;box-shadow:0 10px 22px #0000004d}body[data-theme=dark] .period-number{color:#ffd5c8}body[data-theme=dark] .period-label{color:#c0d1e8db}body[data-theme=dark] .timeline-chip{background:linear-gradient(130deg,#0d1827f0,#142337e0);border-color:#7c9fcb6b;color:#ecf3fff2}body[data-theme=dark] .countdown-item{background:linear-gradient(160deg,#0c1523f0,#121f32e6)}body[data-theme=dark] .countdown-item-days{background:linear-gradient(155deg,#131f30f2,#162638e6);border-color:#7ea1ce70}body[data-theme=dark] .countdown-target-chip,body[data-theme=dark] .countdown-live-chip{background:#0c1623eb;border-color:#7a9cc861;color:#cedff7eb}body[data-theme=dark] .live-dot{background:#ffd5c8;box-shadow:0 0 #ffd5c85c}body[data-theme=dark] .heart-btn{border-color:#7ea0cc8f;background:radial-gradient(circle at 32% 24%,#233651fa,#1a273df0 56%,#121d2ff0);box-shadow:0 18px 34px #00000057,inset 0 -10px 22px #789dd233}body[data-theme=dark] .heart-btn svg{fill:#ffd8c9;filter:drop-shadow(0 8px 12px rgba(255,196,179,.2))}body[data-theme=dark] .heart-btn:before{border-color:#82a5d27a;box-shadow:0 0 #7ea5d95c}body[data-theme=dark] .heart-btn:after{background:conic-gradient(from 0deg,transparent 0 35%,rgba(167,205,255,.54) 48%,transparent 62%)}body[data-theme=dark] .countdown-number,body[data-theme=dark] .rel-main-text{color:#ffd5c8}body[data-theme=dark] .countdown-label,body[data-theme=dark] .text-muted,body[data-theme=dark] .mood-message{color:#bccde6e6!important}body[data-theme=dark] .list-group-item,body[data-theme=dark] .countdown-item,body[data-theme=dark] .mood-btn{color:var(--ink)}body[data-theme=dark] .spark-track,body[data-theme=dark] .divider-wave,body[data-theme=dark] .mood-arc,body[data-theme=dark] .media-loop{stroke:#b0daff9e}body[data-theme=dark] .spark-track-soft,body[data-theme=dark] .divider-wave-soft{stroke:#9bd7c699}body[data-theme=dark] .spark-dot,body[data-theme=dark] .mood-star,body[data-theme=dark] .media-orb{fill:#ffd8b8}body[data-theme=dark] .mood-ripple{stroke:#a7dcff94}body[data-theme=dark] .mood-ripple-b{stroke:#a8dace94}body[data-theme=dark] .media-lattice-line{stroke:#a2d6ff8a}body[data-theme=dark] .media-lattice-line-b{stroke:#9bd2c68a}body[data-theme=dark] .media-lattice-dot{fill:#ffd0af}body[data-theme=dark] .ring-line{stroke:#9dd2ff75}body[data-theme=dark] .ring-line-b{stroke:#a1d8cb6b}body[data-theme=dark] .comet-trace{stroke:#a3d7ffa8}body[data-theme=dark] .comet-dot{fill:#ffd7ba}body[data-theme=dark] .slider{--background: #16253a}body[data-theme=dark] .switch input:checked+.slider{background:#3a6da9}body[data-theme=dark] .switch input:checked~.decoration{background:#dbe9ff;box-shadow:-12px 0 #dbe9ff,-6px 0 0 1.6px #dbe9ff,5px 15px 0 1px #dbe9ff,1px 17px #dbe9ff,10px 17px #dbe9ff}body[data-theme=dark] .page:before{background:linear-gradient(90deg,#95c4ff2e,#8ad0c033,#f7c5a424);opacity:.44}body[data-theme=dark] .title span{background:linear-gradient(120deg,#ffc7da,#f3d8a5,#9ec8ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body[data-theme=dark] .hero-pulse-line,body[data-theme=dark] .mini-pill{background:#0e1928d6;border-color:#7c9cc957;color:#d5e3f7eb}body[data-theme=dark] .pulse-dot{background:#ffc4d4;box-shadow:0 0 #ffc4d466}body[data-theme=dark] .constellation-line{stroke:#a8d8ff85}body[data-theme=dark] .constellation-line-soft{stroke:#9ed8c785}body[data-theme=dark] .constellation-star{fill:#ffd8b8}body[data-theme=dark] .hero-copy-sigil-line{stroke:#a5d6ff80}body[data-theme=dark] .hero-copy-sigil-dot{fill:#ffd5baeb}body[data-theme=dark] .stage-spotlight{background:radial-gradient(circle at var(--spot-x) var(--spot-y),rgba(150,194,255,.24),rgba(108,151,217,.12) 26%,transparent 48%);mix-blend-mode:screen}body[data-theme=dark] .hero-sparkle-line{stroke:#addcff94}body[data-theme=dark] .hero-sparkle-line-b{stroke:#a0d8c98a}body[data-theme=dark] .hero-sparkle-dot{fill:#ffd7b8}body[data-theme=dark] .aurora{opacity:.24}body[data-theme=dark] .aurora-1{background:linear-gradient(95deg,#5d91dc61,#5dab9e3d,#dca8bb2e)}body[data-theme=dark] .aurora-2{background:linear-gradient(102deg,#7eb6f542,#6a92d638,#dcb79d29)}body[data-theme=dark] .noise-layer{opacity:.07;background-image:radial-gradient(rgba(155,189,236,.15) .8px,transparent .8px),radial-gradient(rgba(255,255,255,.1) .8px,transparent .8px)}body[data-theme=dark] .scroll-progress{background:#040a12d1}body[data-theme=dark] .scroll-progress-fill{background:linear-gradient(90deg,#f8b8cb,#efd9ad,#9dd7c8,#8fb9f4);box-shadow:0 0 16px #85b5eb61}.ambient{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;overflow:hidden}.gridlines{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.24;background-image:linear-gradient(rgba(33,26,42,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(33,26,42,.05) 1px,transparent 1px);background-size:120px 120px}.orb{position:absolute;border-radius:50%;filter:blur(36px);opacity:.68;animation:orbFloat 14s ease-in-out infinite alternate}.orb-1{width:300px;height:300px;left:-90px;top:-70px;background:#e452735c}.orb-2{width:380px;height:380px;right:-120px;bottom:10px;background:#73d1c152;animation-delay:-4s}.orb-3{width:260px;height:260px;right:18%;top:34%;background:#8ec8f35c;animation-delay:-8s}.aurora{position:absolute;pointer-events:none;filter:blur(54px);mix-blend-mode:screen;opacity:.42}.aurora-1{width:58vw;height:24vw;min-width:540px;min-height:240px;left:-14vw;top:8vh;background:linear-gradient(95deg,#e4527373,#f2c56752,#73d1c157);transform:rotate(-9deg);animation:auroraFloat 19s ease-in-out infinite alternate}.aurora-2{width:54vw;height:22vw;min-width:520px;min-height:220px;right:-18vw;bottom:4vh;background:linear-gradient(105deg,#8ec8f357,#b9b6ff42,#e4527342);transform:rotate(8deg);animation:auroraFloatAlt 23s ease-in-out infinite alternate-reverse}.noise-layer{position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;pointer-events:none;opacity:.12;mix-blend-mode:soft-light;background-image:radial-gradient(rgba(33,26,42,.16) .8px,transparent .8px),radial-gradient(rgba(255,255,255,.2) .8px,transparent .8px);background-size:3px 3px,4px 4px;background-position:0 0,1px 1px;animation:noiseShift .8s steps(2) infinite}.ambient-rings-svg,.ambient-comets-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.65;pointer-events:none}.ring-line{fill:none;stroke:#e4527347;stroke-width:2.1;stroke-linecap:round;stroke-dasharray:8 11}.ring-line-a{animation:ambientRingRotate 24s linear infinite}.ring-line-b{stroke:#73d1c157;animation:ambientRingRotate 32s linear infinite reverse}.ring-line-c{stroke:#f2c5674d;animation:ambientRingRotate 28s linear infinite}.comet-trace{fill:none;stroke:#e452737a;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:7 14}.comet-trace-a{animation:cometFlow 10s linear infinite}.comet-trace-b{stroke:#73d1c18f;animation:cometFlow 13s linear infinite reverse}.comet-dot{fill:#f2c567f2}.comet-dot-a{animation:cometDotPulse 4.2s ease-in-out infinite}.comet-dot-b{animation:cometDotPulse 3.4s ease-in-out infinite reverse}.cursor-glow{position:fixed;top:0;left:0;width:220px;height:220px;margin-left:-110px;margin-top:-110px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.55) 0%,rgba(242,197,103,.18) 30%,rgba(228,82,115,.08) 52%,transparent 72%);filter:blur(2px);opacity:0;z-index:6;transition:opacity .24s ease;mix-blend-mode:screen}body.has-pointer .cursor-glow{opacity:.7}body[data-theme=dark] .cursor-glow{background:radial-gradient(circle,rgba(165,206,255,.5) 0%,rgba(109,148,212,.22) 38%,rgba(255,175,205,.16) 56%,transparent 72%);mix-blend-mode:plus-lighter}.page{max-width:1200px;margin:0 auto;padding:32px 28px 100px;display:grid;gap:28px;position:relative;z-index:2;isolation:isolate}.page:before{content:"";position:absolute;inset:-40px 10% auto;height:180px;border-radius:999px;background:linear-gradient(90deg,#e452732e,#f2c56733,#73d1c12e);filter:blur(30px);opacity:.45;z-index:-1;animation:pageAuraShift 8s ease-in-out infinite alternate}.fx-reveal{opacity:0;filter:blur(10px) saturate(.85);transition:opacity .8s ease,filter .8s ease;transition-delay:var(--reveal-delay, 0ms)}.fx-reveal.is-visible{opacity:1;filter:blur(0) saturate(1)}.card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);backdrop-filter:blur(24px) saturate(1.3);-webkit-backdrop-filter:blur(24px) saturate(1.3);position:relative;overflow:hidden;transition:transform var(--fx-speed) cubic-bezier(.23,1,.32,1),box-shadow var(--fx-speed) cubic-bezier(.23,1,.32,1),border-color var(--fx-speed) ease;transform-style:preserve-3d;--card-rx: 0deg;--card-ry: 0deg;--card-raise: 0px;--card-scale: 1;transform:perspective(1200px) rotateX(var(--card-rx)) rotateY(var(--card-ry)) translateY(var(--card-raise)) scale(var(--card-scale))}.card:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent);opacity:.85;background-size:200% 100%;animation:accentSweep 9s linear infinite}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 85% 18%,rgba(228,82,115,.11),transparent 45%),radial-gradient(circle at 12% 82%,rgba(115,209,193,.11),transparent 45%);opacity:0;transition:opacity .35s ease;pointer-events:none}.card:hover{--card-raise: -8px;--card-scale: 1.012;box-shadow:var(--shadow-lg);border-color:#e04b6f47}.card:hover:after{opacity:1}.top-ribbon{padding:20px 26px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;isolation:isolate;overflow:hidden}.ribbon-meta{display:grid;gap:4px;position:relative;z-index:2}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;color:var(--ink-soft)}.ribbon-title{margin:0;font-family:var(--font-script);font-size:clamp(2.2rem,4.5vw,3rem);line-height:.95;color:var(--rose);text-shadow:0 2px 20px rgba(224,75,111,.15)}.ribbon-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:2}.ribbon-spark-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.75;z-index:1}.spark-track{fill:none;stroke:#e4527373;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:10 14;animation:sparkFlow 10s linear infinite}.spark-track-soft{stroke:#73d1c17a;stroke-width:2;stroke-dasharray:6 12;animation-duration:13s}.spark-dot{fill:#f2c567f2}.spark-dot-main{animation:sparkDot 4s ease-in-out infinite}.spark-dot-secondary{animation:sparkDot 3.4s ease-in-out infinite reverse}.hero-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.hero-copy{padding:clamp(28px,4.5vw,50px);border-radius:var(--radius-lg);background:linear-gradient(160deg,#ffffffd9,#ffedf4b8);border:1px solid rgba(30,23,38,.08);box-shadow:var(--shadow-md);display:grid;align-content:center;gap:18px;position:relative;overflow:hidden;transform:translateZ(0)}.hero-copy:before{content:"";position:absolute;width:240px;height:240px;right:-90px;top:-120px;background:radial-gradient(circle,rgba(242,197,103,.35),transparent 68%);pointer-events:none}.hero-copy:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.38) 48%,transparent 66%);transform:translate(-120%);animation:heroShine 8s ease-in-out infinite;pointer-events:none}.hero-copy-sigil-svg{position:absolute;right:-36px;top:-28px;width:220px;height:118px;pointer-events:none;opacity:.8}.hero-copy-sigil-line{fill:none;stroke:#e4527359;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:8 12;animation:sigilFlow 10s linear infinite}.hero-copy-sigil-dot{fill:#f2c567f2;transform-origin:center;animation:sigilPulse 2.8s ease-in-out infinite}.hero-copy-sigil-dot.dot-b{animation-duration:2.2s;animation-direction:reverse}.hero-copy-sigil-dot.dot-c{animation-duration:3.2s}.title{font-size:clamp(3rem,6.5vw,5rem);line-height:.88;text-wrap:balance;letter-spacing:-.03em}.title span{background:var(--accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:180% 180%;animation:gradientShift 6s ease-in-out infinite}.hero-pulse-line{display:inline-flex;align-items:center;gap:10px;width:-moz-fit-content;width:fit-content;padding:5px 12px;border-radius:999px;border:1px solid rgba(228,82,115,.22);background:#ffffffbd;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 #e4527361;animation:pulseWave 2s ease-out infinite}.hero-mini-grid{display:flex;flex-wrap:wrap;gap:8px}.mini-pill{padding:5px 10px;border-radius:999px;border:1px solid rgba(33,26,42,.1);background:#ffffffb8;font-size:.72rem;letter-spacing:.06em;color:var(--ink-soft);animation:miniFloat 4.8s ease-in-out infinite}.mini-pill:nth-child(2){animation-delay:-1.6s}.mini-pill:nth-child(3){animation-delay:-2.9s}.lead{margin:0;max-width:48ch;color:var(--ink-soft);font-size:1.02rem;line-height:1.7}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero-note{margin:0;padding:10px 16px;border-radius:999px;background:#ffffffb8;border:1px solid rgba(33,26,42,.1);color:var(--ink-soft);font-size:.9rem}.hero-stage{--spot-x: 50%;--spot-y: 50%;position:relative;display:grid;place-items:center;min-height:440px;border-radius:var(--radius-lg);padding:28px;background:linear-gradient(165deg,#ffffffe6,#f3faffb3);border:1px solid rgba(30,23,38,.07);box-shadow:var(--shadow-md);overflow:hidden}.hero-stage:before{content:"";position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle at 50% 45%,rgba(228,82,115,.23),rgba(242,197,103,.12) 58%,transparent 74%);filter:blur(10px);z-index:0;animation:haloPulse 5.8s ease-in-out infinite}.stage-spotlight{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;pointer-events:none;z-index:1;background:radial-gradient(circle at var(--spot-x) var(--spot-y),rgba(255,255,255,.36),rgba(242,197,103,.14) 24%,transparent 46%);mix-blend-mode:soft-light;opacity:.92;transition:background .16s ease-out}.hero-orbit-svg,.hero-wave-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.hero-constellation-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.78}.hero-sparkle-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.72}.hero-orbit-svg{animation:orbitDrift 8s ease-in-out infinite alternate}.orbit-line{fill:none;stroke:#e4527366;stroke-width:2;stroke-linecap:round}.orbit-line-main{stroke:#73d1c170;stroke-dasharray:10 16;animation:orbitStroke 8s linear infinite}.orbit-line-secondary{stroke-dasharray:8 12;animation:orbitStroke 10s linear infinite reverse}.orbit-heart{fill:#e45273e6;filter:drop-shadow(0 0 10px rgba(228,82,115,.38));transform-origin:310px 230px;animation:heartBeatGlow 2.6s ease-in-out infinite}.orbit-dot{fill:#f2c567f2}.orbit-dot-main{animation:orbitDot 6.6s ease-in-out infinite}.orbit-dot-secondary{animation:orbitDot 5.2s ease-in-out infinite reverse}.hero-wave-svg{inset:auto 8% 10px;width:auto;height:46%;opacity:.75}.love-wave{fill:none;stroke:#e4527373;stroke-width:3;stroke-dasharray:11 14;stroke-linecap:round;animation:waveFlow 8s linear infinite}.love-wave-soft{stroke:#73d1c180;stroke-width:2;stroke-dasharray:6 12;animation-duration:12s}.constellation-line{fill:none;stroke:#e4527357;stroke-width:1.8;stroke-dasharray:5 8;animation:constellationFlow 6.6s linear infinite}.constellation-line-soft{stroke:#73d1c161;animation-duration:8.9s}.constellation-star{fill:#f2c567f5}.star-a{animation:twinkle 2.4s ease-in-out infinite}.star-b{animation:twinkle 2s ease-in-out infinite reverse}.star-c{animation:twinkle 2.8s ease-in-out infinite}.star-d{animation:twinkle 2.2s ease-in-out infinite reverse}.star-e{animation:twinkle 1.9s ease-in-out infinite}.star-f{animation:twinkle 2.6s ease-in-out infinite reverse}.hero-sparkle-line{fill:none;stroke:#ffffff8c;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:7 12}.hero-sparkle-line-a{animation:sparkleFlow 7.8s linear infinite}.hero-sparkle-line-b{stroke:#73d1c19e;animation:sparkleFlow 9.6s linear infinite reverse}.hero-sparkle-dot{fill:#ffe59ff2}.hero-sparkle-dot-a{animation:sparkleDot 2.6s ease-in-out infinite}.hero-sparkle-dot-b{animation:sparkleDot 2.2s ease-in-out infinite reverse}.hero-card{position:relative;z-index:2;width:min(100%,380px);padding:28px;border-radius:26px;background:linear-gradient(155deg,#fffffff7,#ffe6f0e6);border:1px solid rgba(224,75,111,.16);box-shadow:var(--shadow-lg);display:grid;gap:14px}.hero-card h2{font-size:clamp(2.2rem,4.5vw,2.8rem);letter-spacing:-.02em}.card-kicker{margin:0;font-size:.66rem;text-transform:uppercase;letter-spacing:.25em;color:var(--ink-soft)}.rel-stats{display:grid;gap:10px}.period-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.period-tile{position:relative;overflow:hidden;display:grid;justify-items:center;gap:4px;padding:12px 8px;border-radius:16px;border:1px solid rgba(224,75,111,.16);background:linear-gradient(160deg,#ffffffeb,#ffecf4db);box-shadow:0 8px 24px #e04b6f1a;transition:transform .35s cubic-bezier(.23,1,.32,1),box-shadow .35s ease}.period-tile:hover{transform:translateY(-3px);box-shadow:0 14px 32px #e04b6f29}.period-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.52) 50%,transparent 68%);transform:translate(-130%);transition:transform .7s ease}.hero-card:hover .period-tile:after{transform:translate(130%)}.period-number{font-size:clamp(1.25rem,3vw,1.65rem);line-height:1;font-weight:700;letter-spacing:.04em;color:var(--rose)}.period-label{font-size:.62rem;line-height:1.05;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.rel-main-text{font-size:clamp(1.15rem,2.8vw,1.55rem);font-family:var(--font-title);color:var(--rose);line-height:1.12}.rel-sub-text{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:7px 13px;border-radius:999px;border:1px solid rgba(33,26,42,.12);background:linear-gradient(130deg,#ffffffd6,#fff4f8c2);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.countdown-card,.gallery-card,.mood-card,.media-card{padding:28px}.gallery-card{background:linear-gradient(160deg,#ffffffeb,#eef9ffc7)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:20px;position:relative}.section-head:after{content:"";position:absolute;left:0;bottom:-8px;width:74px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--rose),rgba(115,209,193,.28),transparent);transition:width .3s ease}.card:hover .section-head:after{width:118px}.section-head h3{font-size:clamp(1.4rem,2.5vw,2rem);letter-spacing:-.015em}.tag{padding:5px 12px;border-radius:999px;border:1px solid rgba(228,82,115,.2);background:#ffffffbf;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#211a2ac7}.date-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid rgba(228,82,115,.24);background:#fffc;color:var(--rose);text-decoration:none;font-size:.82rem;font-weight:600}.timeline-chip{justify-self:start;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-color:#e4527357;background:linear-gradient(130deg,#ffffffdb,#ffeef6d1)}.timeline-chip:before{content:"❤";font-size:.78rem;opacity:.86}.secret-link{--mag-x: 0px;--mag-y: 0px;transform:translate(var(--mag-x),var(--mag-y));transition:transform .25s ease,box-shadow .25s ease}.secret-link:hover,.secret-link:focus-visible{transform:translate(var(--mag-x),calc(var(--mag-y) - 2px));box-shadow:0 12px 24px #e4527333}.birthday-countdown{text-align:center;display:grid;gap:10px}.countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.countdown-grid-premium{gap:10px}.countdown-item{position:relative;overflow:hidden;border-radius:var(--radius-sm);border:1px solid rgba(30,23,38,.06);background:linear-gradient(160deg,#ffffffe0,#f5faffc7);box-shadow:var(--shadow-sm);padding:14px 8px;transition:transform .35s cubic-bezier(.23,1,.32,1),border-color .3s ease,box-shadow .35s ease}.countdown-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.52) 50%,transparent 68%);transform:translate(-130%);transition:transform .7s ease}.countdown-item:hover{transform:translateY(-4px);border-color:#e04b6f3d;box-shadow:0 18px 40px #e04b6f29}.countdown-item:hover:after{transform:translate(130%)}.countdown-item-days{border-color:#e4527352;background:linear-gradient(155deg,#fff1f7eb,#fffbf0cc)}.countdown-number{display:block;font-size:clamp(1.5rem,3vw,2rem);line-height:1;color:var(--rose);font-weight:700}.countdown-label{margin-top:4px;display:block;font-size:.63rem;text-transform:uppercase;letter-spacing:.16em;color:var(--ink-soft)}.countdown-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.countdown-target-chip,.countdown-live-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;border:1px solid rgba(33,26,42,.12);background:#ffffffbd;font-size:.64rem;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft)}.countdown-target-chip{border-color:#e452733d}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--rose);box-shadow:0 0 #e4527366;animation:liveDotPulse 2.2s ease-out infinite}.birthday-today{font-family:var(--font-title);font-size:clamp(1.5rem,3vw,2rem);color:var(--rose);animation:celebratePulse 1.2s ease-in-out infinite}.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-item{margin:0;aspect-ratio:1 / 1;overflow:hidden;border-radius:var(--radius-md);border:1px solid rgba(30,23,38,.06);background:#ffffffd1;box-shadow:var(--shadow-sm);position:relative;transition:transform .4s cubic-bezier(.23,1,.32,1),box-shadow .4s ease}.photo-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(130deg,transparent 34%,rgba(255,255,255,.5) 48%,transparent 68%);transform:translate(-120%);transition:transform .65s ease}.photo-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .55s cubic-bezier(.23,1,.32,1)}.photo-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.photo-item:hover img{transform:scale(1.08)}.photo-item:hover:after{transform:translate(120%)}.section-wave-divider{pointer-events:none;height:96px;margin:-8px 2px 0}.section-wave-svg{width:100%;height:100%}.divider-wave{fill:none;stroke:#e4527366;stroke-width:3;stroke-linecap:round;stroke-dasharray:10 14;animation:dividerFlow 11s linear infinite}.divider-wave-soft{stroke:#73d1c173;stroke-width:2.2;stroke-dasharray:6 12;animation-duration:14s}.content-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px}.mood-card{display:grid;gap:14px;position:relative;overflow:hidden}.mood-card .section-head,.mood-row,.mood-message,.mood-history{position:relative;z-index:2}.mood-sky-svg{position:absolute;left:0;right:0;top:0;width:100%;height:96px;pointer-events:none;opacity:.7}.mood-ripple-svg{position:absolute;inset:auto 0 0;width:100%;height:116px;pointer-events:none;opacity:.72}.mood-arc{fill:none;stroke:#e4527366;stroke-width:3;stroke-linecap:round;stroke-dasharray:10 14;animation:moodArcFlow 9s linear infinite}.mood-star{fill:#f2c567f2}.mood-star-a{animation:moodStarPulse 2.8s ease-in-out infinite}.mood-star-b{animation:moodStarPulse 2.3s ease-in-out infinite reverse}.mood-star-c{animation:moodStarPulse 3.1s ease-in-out infinite}.mood-ripple{fill:none;stroke:#73d1c170;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:8 12}.mood-ripple-a{animation:moodRippleFlow 7.8s linear infinite}.mood-ripple-b{stroke:#e4527361;animation:moodRippleFlow 9.4s linear infinite reverse}.mood-row{display:flex;flex-wrap:wrap;gap:8px}.mood-btn{--mag-x: 0px;--mag-y: 0px;border:1px solid rgba(30,23,38,.08);background:#ffffffd9;border-radius:999px;font-size:1.6rem;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .35s cubic-bezier(.23,1,.32,1),border-color .3s ease,background .3s ease,box-shadow .35s ease;transform:translate(var(--mag-x),var(--mag-y))}.mood-btn:hover{transform:translate(var(--mag-x),calc(var(--mag-y) - 4px));border-color:#e04b6f40;box-shadow:var(--shadow-md)}.mood-btn.active{border-color:#e04b6f66;background:linear-gradient(135deg,#e04b6f26,#f0c0602e);box-shadow:0 16px 38px #e04b6f33,inset 0 0 0 1px #e04b6f14}.mood-btn:active{transform:translate(var(--mag-x),var(--mag-y)) scale(.95)}.mood-message{margin:0;padding:14px 18px;border-radius:var(--radius-sm);border:1px solid rgba(30,23,38,.08);background:#ffffffc7;color:var(--ink-soft);min-height:76px;display:grid;align-content:center;line-height:1.6;font-size:.95rem}.small-label{margin:0 0 8px;text-transform:uppercase;letter-spacing:.17em;font-size:.66rem;color:#211a2a94}.list-group{margin:0;padding:0;list-style:none;display:grid;gap:8px}.list-group-item{border-radius:14px;border:1px solid rgba(30,23,38,.06);background:#ffffffd9;box-shadow:var(--shadow-sm);padding:10px 14px;transition:transform .35s cubic-bezier(.23,1,.32,1)}.list-group-item:hover{transform:translateY(-2px)}.list-group-item{position:relative;overflow:hidden}.list-group-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 36%,rgba(255,255,255,.5) 50%,transparent 68%);transform:translate(-120%);transition:transform .8s ease;pointer-events:none}.list-group-item:hover:after{transform:translate(120%)}.media-card{background:linear-gradient(160deg,#ffffffeb,#ffedf4b8);position:relative;overflow:hidden}.media-card .section-head,.media-grid{position:relative;z-index:2}.media-glow-svg{position:absolute;top:0;right:0;width:180px;height:110px;pointer-events:none;opacity:.72}.media-lattice-svg{position:absolute;left:10px;bottom:6px;width:56%;height:34%;pointer-events:none;opacity:.54;z-index:1}.media-loop{fill:none;stroke:#e452736b;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:10 13;animation:mediaLoopFlow 8.5s linear infinite}.media-orb{fill:#f2c567e6;animation:mediaOrbFloat 3.4s ease-in-out infinite}.media-orb-soft{animation-duration:2.8s;animation-direction:reverse}.media-lattice-line{fill:none;stroke:#e452734d;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:6 9}.media-lattice-line-a{animation:latticeFlow 8.8s linear infinite}.media-lattice-line-b{stroke:#73d1c15c;animation:latticeFlow 10.4s linear infinite reverse}.media-lattice-dot{fill:#f2c567e0;animation:latticeDotPulse 3s ease-in-out infinite}.media-lattice-dot.dot-b{animation-duration:2.2s;animation-direction:reverse}.media-lattice-dot.dot-c{animation-duration:2.6s}.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.media-tile{margin:0;border-radius:var(--radius-md);overflow:hidden;border:1px solid rgba(30,23,38,.06);background:#fffc;box-shadow:var(--shadow-sm);transition:transform .4s cubic-bezier(.23,1,.32,1),border-color .3s ease,box-shadow .4s ease;position:relative}.media-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 32%,rgba(255,255,255,.46) 48%,transparent 70%);transform:translate(-120%);transition:transform .7s ease;pointer-events:none}.media-tile img,.media-tile video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;aspect-ratio:1 / 1}.media-tile:hover{transform:translateY(-5px) scale(1.02);border-color:#e04b6f38;box-shadow:var(--shadow-md)}.media-tile:hover:after{transform:translate(120%)}.video-tile video{aspect-ratio:3 / 4}.theme-toggle{--mag-x: 0px;--mag-y: 0px;display:inline-flex;align-items:center;gap:10px;padding:7px 12px;border-radius:999px;border:1px solid rgba(33,26,42,.12);background:#ffffffa8;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;transform:translate(var(--mag-x),var(--mag-y))}.theme-toggle:hover{transform:translate(var(--mag-x),calc(var(--mag-y) - 2px));box-shadow:0 16px 30px #e4527324;border-color:#e4527338}.theme-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-soft)}.switch{position:relative;width:3.5em;height:2em;display:inline-block;cursor:pointer;font-size:17px}.switch input{width:0;height:0;opacity:0}.slider{--background: #242833;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:30px;background:var(--background);transition:.45s}.slider:before{content:"";position:absolute;left:10%;bottom:14%;width:1.4em;height:1.4em;border-radius:50%;box-shadow:inset 8px -4px #eeefd7,-4px 1px 4px #dadada;background:var(--background);transition:.45s}.decoration{position:absolute;right:20%;top:15%;width:2px;height:2px;border-radius:50%;background:#e8ee65;box-shadow:-8px 10px #e8ee65,9px 14px #e8ee65,-18px 1px #e8ee65,-20px 10px #e8ee65,-8px 23px #e8ee65,-15px 25px #e8ee65;transition:all .45s}.switch input:focus-visible+.slider{box-shadow:0 0 0 3px var(--ring)}.switch input:checked+.slider{background:#4d89d3}.switch input:checked+.slider:before{transform:translate(100%);box-shadow:inset 15px -4px 0 15px #efdf2b,0 0 10px #efdf2b}.switch input:checked~.decoration{transform:translate(-20px);width:10px;height:10px;background:#fff;box-shadow:-12px 0 #fff,-6px 0 0 1.6px #fff,5px 15px 0 1px #fff,1px 17px #fff,10px 17px #fff}.heart-btn{--mag-x: 0px;--mag-y: 0px;width:70px;height:70px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:radial-gradient(circle at 32% 24%,#fff,#ffe3ee 54%,#ffd0e2);box-shadow:0 20px 40px #e04b6f38,0 8px 16px #e04b6f1f,inset 0 -10px 22px #e04b6f1a;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .35s cubic-bezier(.23,1,.32,1),box-shadow .35s ease;position:relative;overflow:visible;transform:translate(var(--mag-x),var(--mag-y))}.heart-btn svg{width:34px;height:34px;fill:var(--rose);position:relative;z-index:2;filter:drop-shadow(0 6px 8px rgba(228,82,115,.3))}.heart-btn:before{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:50%;border:1px solid rgba(228,82,115,.28);box-shadow:0 0 #e4527357;animation:heartHaloPulse 2.8s ease-out infinite}.heart-btn:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 35%,rgba(255,255,255,.62) 48%,transparent 62%);opacity:.7;mix-blend-mode:soft-light;z-index:1;animation:heartSheenSpin 5.2s linear infinite;pointer-events:none}.heart-btn:hover{transform:translate(var(--mag-x),calc(var(--mag-y) - 6px)) scale(1.08);box-shadow:0 28px 52px #e04b6f47,0 12px 20px #e04b6f29,inset 0 -12px 20px #e04b6f2e}.heart-btn:hover:after{opacity:.95}.heart-btn.clicked{animation:heartPop .55s ease}.heart-burst{position:fixed;width:10px;height:10px;border-radius:50%;pointer-events:none;z-index:7;background:radial-gradient(circle,#fffffff2,#e45273e6);box-shadow:0 0 10px #e4527373;animation:burstFly .85s ease-out forwards}.hearts-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.falling-heart{position:absolute;color:#e452738c;text-shadow:0 3px 8px rgba(228,82,115,.26);animation:fall linear forwards}.falling-heart.wobble{animation:fall linear forwards,wobble 2.1s ease-in-out infinite}#loader-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 30% 20%,rgba(255,179,208,.28),transparent 50%),radial-gradient(ellipse at 75% 80%,rgba(133,216,229,.22),transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(240,192,96,.1),transparent 60%),linear-gradient(152deg,#fdf6ef,#edf5ff,#fff0f6,#fef8ef);display:grid;place-items:center;justify-content:center;align-content:center;box-sizing:border-box;padding:clamp(10px,2.8vw,24px);transition:opacity .9s cubic-bezier(.23,1,.32,1),visibility .9s cubic-bezier(.23,1,.32,1),transform .9s cubic-bezier(.23,1,.32,1),filter .9s cubic-bezier(.23,1,.32,1)}#loader-overlay.loader-exit{opacity:0;transform:scale(1.04);filter:blur(8px);visibility:hidden;pointer-events:none}#loader-overlay:before,#loader-overlay:after{content:"";position:absolute;pointer-events:none}#loader-overlay:before{inset:8% -10% auto;height:200px;border-radius:999px;background:linear-gradient(90deg,#fff0,#fff9,#fff0);filter:blur(28px);animation:loaderDrift 7s ease-in-out infinite alternate}#loader-overlay:after{width:480px;height:480px;right:-140px;bottom:-160px;border-radius:50%;background:radial-gradient(circle,rgba(224,75,111,.15),rgba(240,192,96,.08) 40%,transparent 70%);filter:blur(20px);animation:loaderBloom 10s ease-in-out infinite}body[data-theme=dark] #loader-overlay{background:radial-gradient(ellipse at 30% 20%,rgba(108,151,214,.22),transparent 50%),radial-gradient(ellipse at 75% 80%,rgba(85,156,147,.18),transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(180,140,100,.08),transparent 60%),linear-gradient(152deg,#060e1a,#0a1320,#0f1c30,#0b1524)}body[data-theme=dark] #loader-overlay:before{background:linear-gradient(90deg,#fff0,#7393c93d,#fff0)}body[data-theme=dark] #loader-overlay:after{background:radial-gradient(circle,rgba(122,173,236,.18),rgba(128,198,185,.08) 40%,transparent 70%)}.loader-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.loader-glow{position:absolute;border-radius:50%;filter:blur(50px);opacity:.55}.loader-glow-a{width:50vw;height:50vw;max-width:500px;max-height:500px;left:-12vw;top:-8vh;background:radial-gradient(circle,rgba(224,75,111,.4),rgba(240,192,96,.2) 50%,transparent 70%);animation:loaderGlowA 8s ease-in-out infinite alternate}.loader-glow-b{width:45vw;height:45vw;max-width:460px;max-height:460px;right:-10vw;bottom:-6vh;background:radial-gradient(circle,rgba(94,203,184,.35),rgba(125,191,239,.15) 50%,transparent 70%);animation:loaderGlowB 10s ease-in-out infinite alternate-reverse}.loader-glow-c{width:30vw;height:30vw;max-width:320px;max-height:320px;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(168,164,255,.25),rgba(255,133,165,.1) 50%,transparent 70%);animation:loaderGlowC 12s ease-in-out infinite}.loader-noise{position:absolute;top:-15%;right:-15%;bottom:-15%;left:-15%;opacity:.1;background-image:radial-gradient(rgba(30,23,38,.14) .6px,transparent .6px),radial-gradient(rgba(255,255,255,.18) .6px,transparent .6px);background-size:3px 3px,4px 4px;background-position:0 0,1.5px 1.5px;mix-blend-mode:soft-light;animation:noiseShift .8s steps(2) infinite}body[data-theme=dark] .loader-glow{opacity:.4}body[data-theme=dark] .loader-glow-a{background:radial-gradient(circle,rgba(95,147,220,.36),rgba(85,164,154,.14) 50%,transparent 70%)}body[data-theme=dark] .loader-glow-b{background:radial-gradient(circle,rgba(126,182,245,.28),rgba(106,146,214,.1) 50%,transparent 70%)}body[data-theme=dark] .loader-glow-c{background:radial-gradient(circle,rgba(168,164,255,.2),rgba(215,168,191,.08) 50%,transparent 70%)}body[data-theme=dark] .loader-noise{opacity:.06;background-image:radial-gradient(rgba(155,189,236,.12) .6px,transparent .6px),radial-gradient(rgba(255,255,255,.08) .6px,transparent .6px)}.loader-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.loader-particle{position:absolute;border-radius:50%;opacity:0;animation:loaderParticleFloat 6s ease-in-out infinite}.loader-particle.p1{width:6px;height:6px;background:#e04b6fb3;left:15%;top:20%;animation-delay:0s;box-shadow:0 0 12px #e04b6f66}.loader-particle.p2{width:4px;height:4px;background:#f0c060cc;left:78%;top:15%;animation-delay:.8s;box-shadow:0 0 10px #f0c06066}.loader-particle.p3{width:5px;height:5px;background:#5ecbb8b3;left:85%;top:65%;animation-delay:1.5s;box-shadow:0 0 12px #5ecbb866}.loader-particle.p4{width:3px;height:3px;background:#a8a4ffcc;left:10%;top:75%;animation-delay:2.2s;box-shadow:0 0 8px #a8a4ff66}.loader-particle.p5{width:5px;height:5px;background:#ff85a5b3;left:45%;top:10%;animation-delay:.4s;box-shadow:0 0 10px #ff85a566}.loader-particle.p6{width:4px;height:4px;background:#7dbfefb3;left:65%;top:85%;animation-delay:1.8s;box-shadow:0 0 10px #7dbfef66}.loader-particle.p7{width:3px;height:3px;background:#f0c060b3;left:30%;top:88%;animation-delay:2.8s;box-shadow:0 0 8px #f0c0604d}.loader-particle.p8{width:4px;height:4px;background:#e04b6f99;left:92%;top:40%;animation-delay:3.4s;box-shadow:0 0 10px #e04b6f4d}.loader-stack{position:relative;z-index:2;width:min(440px,88vw);display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:center;gap:16px;padding:40px 32px 28px;border-radius:34px;border:1px solid rgba(224,75,111,.12);background:linear-gradient(165deg,#fffffff0,#fff0f6d1,#fff8f0c2);box-shadow:0 48px 120px #1e17262e,0 16px 40px #e04b6f1a,0 2px 4px #1e17260a,inset 0 1px #ffffffe6;backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);overflow:hidden;animation:loaderCardEntrance 1s cubic-bezier(.16,1,.3,1) both}.loader-stack:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 34%,rgba(255,255,255,.45) 50%,transparent 66%);transform:translate(-120%);animation:loaderSheen 5s ease-in-out infinite;animation-delay:1s}.loader-stack:after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--rose),var(--sun),var(--mint),var(--sky),var(--lavender));background-size:300% 100%;animation:loaderTopBar 3s linear infinite}body[data-theme=dark] .loader-stack{border-color:#7da0cd3d;background:linear-gradient(165deg,#0a131ff5,#101c2deb,#0e1624e6);box-shadow:0 52px 120px #0000008c,0 18px 40px #00000040,0 2px 4px #0000001a,inset 0 1px #95b8ec1f}.loader-heart-wrapper{position:relative;width:130px;height:130px;display:grid;place-items:center;margin-bottom:4px}.loader-heart-wrapper:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:50%;background:radial-gradient(circle,rgba(224,75,111,.12),transparent 70%);filter:blur(12px);animation:loaderHeartGlow 2.8s ease-in-out infinite}.loader-heart-svg{width:56px;height:56px;position:relative;z-index:2;filter:drop-shadow(0 8px 20px rgba(224,75,111,.35))}.loader-heart-path{fill:var(--rose);animation:loaderHeartBeat 1.4s cubic-bezier(.215,.61,.355,1) infinite;transform-origin:center}.loader-heart-pulse{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:2px solid rgba(224,75,111,.18);animation:loaderHeartRing 2.4s ease-out infinite}.loader-heart-pulse-2{animation-delay:.8s;border-color:#f0c06024}body[data-theme=dark] .loader-heart-path{fill:#ffc4d8}body[data-theme=dark] .loader-heart-pulse{border-color:#8bb3e62e}body[data-theme=dark] .loader-heart-pulse-2{border-color:#80c6b924}body[data-theme=dark] .loader-heart-svg{filter:drop-shadow(0 8px 20px rgba(136,182,238,.3))}body[data-theme=dark] .loader-heart-wrapper:before{background:radial-gradient(circle,rgba(136,182,238,.14),transparent 70%)}.loader-logo{width:min(320px,72vw)}.logo-svg{width:100%;height:auto}.logo-text{font-family:var(--font-script);font-size:95px;fill:none;stroke:var(--rose);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke;filter:drop-shadow(0 6px 20px rgba(224,75,111,.2));stroke-dasharray:1200;stroke-dashoffset:1200;animation:strokeDraw 3.2s ease-in-out forwards,logoFillIn .8s ease 1.6s forwards}body[data-theme=dark] .logo-text{stroke:#ffc7da;filter:drop-shadow(0 6px 20px rgba(136,182,238,.2));animation:strokeDraw 3.2s ease-in-out forwards,logoFillInDark .8s ease 1.6s forwards}.loader-status-wrap{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 18px;width:min(360px,100%);margin-inline:auto;border-radius:999px;background:#ffffff8c;border:1px solid rgba(224,75,111,.1);box-shadow:0 4px 16px #1e17260a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.loader-status-dot{width:7px;height:7px;border-radius:50%;background:var(--rose);flex-shrink:0;animation:loaderStatusDotPulse 1.5s ease-out infinite}.loader-status{margin:0;max-width:34ch;text-align:center;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#1e172694;transition:opacity .3s ease}body[data-theme=dark] .loader-status-wrap{background:#0e1826a6;border-color:#7da0cd29;box-shadow:0 4px 16px #00000026}body[data-theme=dark] .loader-status-dot{background:#ffc4d8}body[data-theme=dark] .loader-status{color:#c4d5eed1}.loader-progress-track{width:min(320px,76vw);height:10px;border-radius:999px;border:1px solid rgba(224,75,111,.14);background:#ffffffa6;box-shadow:inset 0 1px 4px #1e17260f,0 2px 8px #1e172608;position:relative;overflow:hidden;margin-inline:auto}.loader-progress-fill{display:block;height:100%;border-radius:999px;transform-origin:left center;transform:scaleX(0);background:linear-gradient(90deg,var(--rose),var(--sun),var(--mint),var(--sky));background-size:250% 100%;animation:loaderBarShift 3s linear infinite;position:relative;box-shadow:0 0 12px #e04b6f4d}.loader-progress-glow{position:absolute;top:-3px;bottom:-3px;left:0;right:0;border-radius:999px;background:linear-gradient(90deg,transparent 40%,rgba(224,75,111,.35),rgba(240,192,96,.25));filter:blur(6px);pointer-events:none;transform-origin:left center;transform:scaleX(0);transition:transform .08s linear}.loader-progress-meta{width:min(320px,76vw);display:flex;align-items:center;justify-content:space-between;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:#1e17267a;margin-inline:auto}.loader-progress-value{font-variant-numeric:tabular-nums;font-weight:600;font-size:.72rem;color:var(--rose);text-shadow:0 1px 8px rgba(224,75,111,.15)}.loader-progress-label{letter-spacing:.2em;opacity:.7}body[data-theme=dark] .loader-progress-track{border-color:#7b9dc947;background:#0b1420e6;box-shadow:inset 0 1px 4px #00000040,0 2px 8px #0000001a}body[data-theme=dark] .loader-progress-fill{background:linear-gradient(90deg,#ffc3d7,#f3d7a5,#9ed2c6,#9bc4f7)}body[data-theme=dark] .loader-progress-glow{background:linear-gradient(90deg,transparent,rgba(139,179,230,.3),rgba(128,198,185,.2))}body[data-theme=dark] .loader-progress-meta{color:#bed0e8b3}body[data-theme=dark] .loader-progress-value{color:#ffc4d8;text-shadow:0 1px 8px rgba(136,182,238,.2)}.loader-hearts{display:flex;justify-content:center;width:100%;gap:6px;font-size:.95rem;margin-top:6px}.loader-hearts span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(224,75,111,.12);background:#fff9;animation:loaderHeartBubble 2s ease-in-out infinite;transition:transform .2s ease}.loader-hearts span:hover{transform:scale(1.15)}body[data-theme=dark] .loader-hearts span{color:#ffd9c6;border-color:#7ea0cc47;background:#0d1726d1}.loader-hearts span:nth-child(1){animation-delay:0s}.loader-hearts span:nth-child(2){animation-delay:.15s}.loader-hearts span:nth-child(3){animation-delay:.3s}.loader-hearts span:nth-child(4){animation-delay:.45s}.loader-hearts span:nth-child(5){animation-delay:.6s}@keyframes loaderBloom{0%,to{transform:scale(.9);opacity:.38}50%{transform:scale(1.1);opacity:.62}}@keyframes loaderDrift{0%{transform:translate3d(-3%,0,0)}to{transform:translate3d(3%,-4%,0)}}@keyframes loaderGlowA{0%{transform:translate(0) scale(1);opacity:.5}50%{transform:translate(5vw,3vh) scale(1.15);opacity:.7}to{transform:translate(-3vw,-2vh) scale(.95);opacity:.45}}@keyframes loaderGlowB{0%{transform:translate(0) scale(1);opacity:.45}50%{transform:translate(-4vw,-3vh) scale(1.1);opacity:.6}to{transform:translate(3vw,2vh) scale(.9);opacity:.4}}@keyframes loaderGlowC{0%,to{transform:translate(-50%,-50%) scale(.85);opacity:.3}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.5}}@keyframes loaderSheen{0%,30%{transform:translate(-120%)}60%{transform:translate(120%)}to{transform:translate(120%)}}@keyframes loaderTopBar{0%{background-position:0% 50%}to{background-position:300% 50%}}@keyframes loaderCardEntrance{0%{opacity:0;transform:translateY(40px) scale(.92);filter:blur(12px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes loaderHeartBeat{0%{transform:scale(1)}15%{transform:scale(1.22)}30%{transform:scale(1)}45%{transform:scale(1.14)}60%{transform:scale(1)}to{transform:scale(1)}}@keyframes loaderHeartGlow{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:.8;transform:scale(1.1)}}@keyframes loaderHeartRing{0%{transform:translate(-50%,-50%) scale(.6);opacity:.6}to{transform:translate(-50%,-50%) scale(1.6);opacity:0}}@keyframes loaderStatusDotPulse{0%{transform:scale(.9);box-shadow:0 0 #e04b6f66}70%{transform:scale(1.1);box-shadow:0 0 0 8px #e04b6f00}to{transform:scale(.9);box-shadow:0 0 #e04b6f00}}@keyframes loaderParticleFloat{0%{opacity:0;transform:translateY(0) scale(.5)}15%{opacity:.9}50%{transform:translateY(-30px) scale(1.2);opacity:.7}85%{opacity:.3}to{opacity:0;transform:translateY(-60px) scale(.4)}}@keyframes loaderHeartBubble{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-8px) scale(1.06)}}@keyframes loaderBarShift{0%{background-position:0% 50%}to{background-position:250% 50%}}@keyframes pageAuraShift{0%{transform:translate(-2%) scale(.98);opacity:.38}to{transform:translate(2%) scale(1.02);opacity:.58}}@keyframes progressFlow{0%{background-position:0% 50%}to{background-position:240% 50%}}@keyframes auroraFloat{0%{transform:translateZ(0) rotate(-8deg) scale(1)}to{transform:translate3d(4vw,-3vh,0) rotate(8deg) scale(1.08)}}@keyframes auroraFloatAlt{0%{transform:translateZ(0) rotate(7deg) scale(1)}to{transform:translate3d(-3vw,3vh,0) rotate(-7deg) scale(1.07)}}@keyframes noiseShift{0%{transform:translate(0)}to{transform:translate(-1.5%,1.5%)}}@keyframes accentSweep{0%{background-position:0% 50%}to{background-position:200% 50%}}@keyframes heroShine{0%,30%{transform:translate(-120%)}50%{transform:translate(120%)}to{transform:translate(120%)}}@keyframes sigilFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-220}}@keyframes sigilPulse{0%,to{transform:scale(.9);opacity:.72}50%{transform:scale(1.25);opacity:1}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes pulseWave{0%{transform:scale(.95);box-shadow:0 0 #e4527373}70%{transform:scale(1);box-shadow:0 0 0 12px #e4527300}to{box-shadow:0 0 #e4527300}}@keyframes miniFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes haloPulse{0%,to{transform:scale(.94);opacity:.72}50%{transform:scale(1.05);opacity:.92}}@keyframes ambientRingRotate{0%{stroke-dashoffset:0}to{stroke-dashoffset:-360}}@keyframes cometFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-240}}@keyframes cometDotPulse{0%,to{transform:scale(1);opacity:.86}50%{transform:scale(1.24);opacity:1}}@keyframes constellationFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-110}}@keyframes twinkle{0%,to{transform:scale(.9);opacity:.7}50%{transform:scale(1.28);opacity:1}}@keyframes orbFloat{0%{transform:translate(0) scale(1)}to{transform:translate(24px,-28px) scale(1.08)}}@keyframes orbitDrift{0%{transform:translateY(5px) rotate(-1deg)}to{transform:translateY(-5px) rotate(1deg)}}@keyframes orbitStroke{0%{stroke-dashoffset:0}to{stroke-dashoffset:-240}}@keyframes orbitDot{0%,to{transform:translateY(0) scale(1);opacity:.95}50%{transform:translateY(-8px) scale(1.12);opacity:1}}@keyframes heartBeatGlow{0%,to{transform:scale(1);opacity:.9}45%{transform:scale(1.12);opacity:1}65%{transform:scale(.96);opacity:.93}}@keyframes waveFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-260}}@keyframes sparkleFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-180}}@keyframes sparkleDot{0%,to{transform:scale(.9);opacity:.75}50%{transform:scale(1.3);opacity:1}}@keyframes sparkFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-240}}@keyframes sparkDot{0%,to{transform:translateY(0) scale(1);opacity:.9}50%{transform:translateY(-6px) scale(1.12);opacity:1}}@keyframes dividerFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-230}}@keyframes moodArcFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-220}}@keyframes moodRippleFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-160}}@keyframes moodStarPulse{0%,to{transform:scale(.95);opacity:.8}50%{transform:scale(1.25);opacity:1}}@keyframes mediaLoopFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-180}}@keyframes latticeFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-120}}@keyframes latticeDotPulse{0%,to{transform:scale(.95);opacity:.8}50%{transform:scale(1.2);opacity:1}}@keyframes mediaOrbFloat{0%,to{transform:translateY(0);opacity:.9}50%{transform:translateY(-5px);opacity:1}}@keyframes celebratePulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes liveDotPulse{0%{transform:scale(.95);box-shadow:0 0 #e4527366}70%{transform:scale(1.1);box-shadow:0 0 0 10px #e4527300}to{box-shadow:0 0 #e4527300}}@keyframes heartHaloPulse{0%{transform:scale(.92);opacity:.74}70%{transform:scale(1.08);opacity:.14}to{transform:scale(1.12);opacity:0}}@keyframes heartSheenSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heartPop{0%{transform:translate(var(--mag-x),var(--mag-y)) scale(1)}40%{transform:translate(var(--mag-x),var(--mag-y)) scale(1.16)}to{transform:translate(var(--mag-x),var(--mag-y)) scale(1)}}@keyframes burstFly{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(var(--dx, 0px),var(--dy, -50px)) scale(.2)}}@keyframes fall{0%{transform:translateY(-10vh) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(110vh) rotate(360deg);opacity:0}}@keyframes wobble{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes strokeDraw{0%{stroke-dashoffset:1200;opacity:.3}50%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes logoFillIn{0%{fill:transparent}to{fill:var(--rose);stroke-width:1.5}}@keyframes logoFillInDark{0%{fill:transparent}to{fill:#ffc7da;stroke-width:1.5}}@keyframes heartFloat{0%,to{transform:translateY(0) scale(1);opacity:.82}50%{transform:translateY(-9px) scale(1.08);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:fadeInUp .8s ease both}.love-quote-section{margin:8px 0}.quote-card{padding:40px 36px;text-align:center;background:linear-gradient(155deg,#ffffffe0,#ffebf4c2,#fff8eeb8);border:1px solid rgba(224,75,111,.12);position:relative;overflow:hidden}.quote-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 30%,rgba(224,75,111,.1),transparent 50%),radial-gradient(circle at 80% 70%,rgba(94,203,184,.08),transparent 50%);pointer-events:none}.quote-deco-svg{position:absolute;left:20px;top:8px;width:60px;height:60px;color:var(--rose);pointer-events:none}.quote-text{margin:0;padding:0;font-family:var(--font-title);font-size:clamp(1.25rem,2.8vw,1.7rem);font-weight:500;font-style:italic;line-height:1.5;color:var(--ink);max-width:52ch;margin-inline:auto;position:relative;z-index:2}.quote-author{display:block;margin-top:16px;font-family:var(--font-script);font-size:1.1rem;color:var(--rose);font-style:normal;position:relative;z-index:2}body[data-theme=dark] .quote-card{background:linear-gradient(155deg,#0c1421f0,#121c2ce6,#0e1826e0);border-color:#7e9ec947}body[data-theme=dark] .quote-glow{background:radial-gradient(circle at 20% 30%,rgba(139,179,230,.12),transparent 50%),radial-gradient(circle at 80% 70%,rgba(128,198,185,.08),transparent 50%)}body[data-theme=dark] .quote-text{color:var(--ink)}body[data-theme=dark] .quote-author,body[data-theme=dark] .quote-deco-svg{color:#ffc7da}.site-footer{margin-top:16px;padding:40px 28px 32px;text-align:center;background:linear-gradient(160deg,#ffffffd1,#ffeef6b3,#fff8eea8);border:1px solid rgba(224,75,111,.1);position:relative;overflow:hidden}.footer-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 50%,rgba(224,75,111,.08),transparent 60%);pointer-events:none}.footer-content{position:relative;z-index:2}.footer-heart-icon{margin:0 0 10px;font-size:2rem;line-height:1;animation:heartBeatGlow 2.6s ease-in-out infinite}.footer-text{margin:0;font-family:var(--font-title);font-size:clamp(1.3rem,3vw,1.8rem);font-weight:600;color:var(--ink);letter-spacing:-.01em}.footer-sub{margin:6px 0 0;font-size:.82rem;color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase}.footer-divider{width:60px;height:2px;margin:18px auto;border-radius:999px;background:var(--accent);opacity:.6}.footer-copy{margin:0;font-size:.72rem;color:var(--ink-muted);letter-spacing:.16em;text-transform:uppercase}body[data-theme=dark] .site-footer{background:linear-gradient(165deg,#0a121ff0,#101a2ae6);border-color:#7e9ec947}body[data-theme=dark] .footer-glow{background:radial-gradient(circle at 50% 50%,rgba(139,179,230,.1),transparent 60%)}body[data-theme=dark] .footer-text{color:var(--ink)}body[data-theme=dark] .footer-sub,body[data-theme=dark] .footer-copy{color:#bccde6b3}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}.cursor-glow{display:none!important}}@media (pointer: coarse){.cursor-glow{display:none}}@media (max-width: 1024px){.hero-layout{grid-template-columns:1fr}.birthday-card{grid-area:birth}.my-birthday-card{grid-area:mine}.gallery-card{grid-area:gallery}.tamagotchi-card{grid-area:tama}.info-grid{grid-template-columns:1fr 1fr;grid-template-areas:"birth mine" "gallery gallery" "tama tama"}.content-grid{grid-template-columns:1fr}.hero-stage{min-height:360px}.quote-text{font-size:clamp(1.15rem,2.5vw,1.5rem)}}@media (max-width: 760px){.scroll-progress{height:2px}.loader-stack{width:min(370px,90vw);padding:26px 20px 18px;border-radius:26px;gap:10px}.loader-heart-wrapper{width:100px;height:100px}.loader-heart-svg{width:44px;height:44px}.loader-particles{transform:scale(.75)}.loader-logo{width:min(290px,78vw)}.logo-text{font-size:78px}.loader-status{font-size:.68rem;letter-spacing:.11em}.loader-status-wrap{padding:5px 12px}.loader-progress-track,.loader-progress-meta{width:min(300px,100%)}.loader-hearts span{width:24px;height:24px;font-size:.84rem}.page{padding:16px 14px 60px;gap:18px}.top-ribbon{padding:14px 16px;display:grid;grid-template-columns:1fr auto;row-gap:10px;align-items:center;position:sticky;top:10px;z-index:15}body[data-theme=dark] .top-ribbon{background:#080f19e0;border-color:#799ac861;box-shadow:0 14px 32px #00000080;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.ribbon-meta{grid-column:1 / -1}.ribbon-actions{width:100%;justify-content:space-between;display:grid;grid-template-columns:1fr auto;gap:8px}.theme-toggle{justify-self:start}body[data-theme=dark] .theme-toggle{background:#0c1624eb;border-color:#7697c55c}.secret-link{justify-self:end}body[data-theme=dark] .secret-link{background:#0c1624e6;border-color:#7697c55c;color:#e9f1fff0}.hero-copy,.hero-stage,.countdown-card,.gallery-card,.mood-card,.media-card{padding:22px;border-radius:22px}.hero-layout{grid-template-columns:1fr;gap:14px}.hero-stage{order:1;min-height:260px}.hero-copy{order:2;text-align:center;justify-items:center;gap:16px}.hero-pulse-line,.hero-mini-grid{justify-content:center}.title{font-size:clamp(2.4rem,12vw,3.2rem)}.hero-wave-svg{inset:auto 4% 10px;height:40%}.hero-copy-sigil-svg{width:170px;height:92px;right:-30px;top:-24px}.hero-constellation-svg{opacity:.58}.hero-actions{justify-content:center;width:100%}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"gallery gallery" "tama tama" "birth mine";gap:14px}.tamagotchi-status{grid-template-columns:1fr}.countdown-card .countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.countdown-card .countdown-number{font-size:1.45rem}.countdown-meta{gap:6px}.countdown-target-chip,.countdown-live-chip{padding:6px 9px;font-size:.58rem;letter-spacing:.12em}.period-grid{gap:6px}.period-number{font-size:1.1rem}.period-label{font-size:.56rem;letter-spacing:.12em}.heart-btn{width:64px;height:64px}.section-wave-divider{height:68px;margin-top:-2px}.content-grid{grid-template-columns:1fr;gap:14px}.media-card{order:1}.mood-card{order:2}.media-grid{grid-auto-flow:column;grid-auto-columns:minmax(180px,64vw);grid-template-columns:none;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.media-tile{scroll-snap-align:start}.media-lattice-svg{width:76%;opacity:.4}.mood-row{display:grid;width:100%;grid-template-columns:repeat(5,minmax(0,1fr))}.mood-btn{width:100%;justify-content:center;padding:10px 0;font-size:1.4rem}.theme-label{display:none}.quote-card{padding:28px 22px}.quote-text{font-size:clamp(1.1rem,3.5vw,1.35rem)}.site-footer{padding:32px 20px 24px}.footer-text{font-size:clamp(1.15rem,4vw,1.5rem)}}@media (max-width: 480px){.loader-heart-wrapper{width:78px;height:78px}.loader-heart-svg{width:36px;height:36px}.loader-heart-pulse{border-width:1.5px}.loader-particles{transform:scale(.55);opacity:.5}.loader-logo{width:min(260px,80vw)}.logo-text{font-size:66px}.loader-status{font-size:.62rem}.loader-status-wrap{padding:4px 10px}.loader-progress-track{height:9px}.loader-progress-meta{font-size:.58rem}.top-ribbon{top:6px;padding:10px 12px}.ribbon-actions{grid-template-columns:1fr}.secret-link{justify-self:start}body[data-theme=dark] .secret-link{width:100%;justify-content:center}.hero-actions{flex-direction:column;align-items:center}.hero-note{width:100%;text-align:center}.hero-mini-grid{gap:6px}.countdown-meta{display:grid;grid-template-columns:1fr}.countdown-target-chip,.countdown-live-chip{justify-content:center;width:100%}.heart-btn{width:60px;height:60px}.hero-copy-sigil-svg,.media-lattice-svg{display:none}.info-grid{grid-template-columns:1fr;grid-template-areas:"gallery" "tama" "birth" "mine"}.tamagotchi-actions,.photo-gallery{grid-template-columns:1fr}.media-grid{grid-auto-columns:minmax(180px,78vw)}.mood-btn{font-size:1.3rem}.quote-card{padding:24px 18px}.quote-text{font-size:1.05rem}.quote-deco-svg{width:44px;height:44px;left:12px;top:4px}.site-footer{padding:28px 16px 20px}.footer-heart-icon{font-size:1.6rem}}.page-transition{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:0}.page-transition.active{pointer-events:all;opacity:1}.page-transition-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#1a1232,#0f0e17);transform:scale(0);border-radius:50%;transition:transform .6s cubic-bezier(.4,0,.2,1)}.page-transition.active .page-transition-bg{transform:scale(3);border-radius:0}.page-transition-emoji{position:relative;z-index:1;font-size:4rem;opacity:0;transform:scale(.3) rotate(-20deg);transition:opacity .3s .25s,transform .5s .25s cubic-bezier(.34,1.56,.64,1)}.page-transition.active .page-transition-emoji{opacity:1;transform:scale(1) rotate(0)}.tama-open-link{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:10px 22px;border-radius:999px;background:linear-gradient(135deg,#e452731f,#a78bfa1f);border:1px solid rgba(228,82,115,.25);color:var(--rose, #e45273);text-decoration:none;font-size:.88rem;font-weight:600;transition:all .3s ease;cursor:pointer}.tama-open-link:hover{background:linear-gradient(135deg,#e4527338,#a78bfa38);border-color:#e4527373;transform:translateY(-2px);box-shadow:0 8px 24px #e4527333}body[data-theme=dark] .tama-open-link{background:linear-gradient(135deg,#ff6b9d26,#a78bfa26);border-color:#ff6b9d4d;color:#ff6b9d}body[data-theme=dark] .tama-open-link:hover{background:linear-gradient(135deg,#ff6b9d40,#a78bfa40);box-shadow:0 8px 24px #ff6b9d40}.tama-link{border-color:#a78bfa4d!important;background:linear-gradient(130deg,#ffffffdb,#eeebffd1)!important}body[data-theme=dark] .tama-link{background:#a78bfa1f!important;border-color:#a78bfa4d!important;color:#a78bfa!important}body.spring-holiday{--rose: #e8598c;--rose-2: #ff8ab5;--sun: #f5c842;--mint: #78d4a6;--bg-3: #fff2f6}body.spring-holiday:before{background:radial-gradient(circle at var(--mx) var(--my),rgba(255,220,240,.4),transparent 36%),radial-gradient(circle at 10% 15%,rgba(232,89,140,.2),transparent 42%),radial-gradient(circle at 85% 10%,rgba(120,212,166,.22),transparent 42%),radial-gradient(circle at 70% 82%,rgba(245,200,66,.18),transparent 46%)}body.spring-holiday .scroll-progress-fill{background:linear-gradient(90deg,#e8598c,#f5c842,#78d4a6,#ff8ab5);background-size:240% 100%}body.spring-holiday .falling-heart{color:#e8598c80;text-shadow:0 3px 10px rgba(232,89,140,.2)}body[data-theme=dark].spring-holiday:before{background:radial-gradient(circle at var(--mx) var(--my),rgba(232,89,140,.18),transparent 38%),radial-gradient(circle at 12% 18%,rgba(200,80,130,.2),transparent 44%),radial-gradient(circle at 84% 10%,rgba(120,212,166,.15),transparent 42%),radial-gradient(circle at 68% 86%,rgba(245,200,66,.12),transparent 48%)}.march8-banner{position:relative;overflow:hidden;padding:44px 36px 40px;text-align:center;background:linear-gradient(155deg,#fff0f5f2,#fff8ebe6,#f0fff5e0);border:1.5px solid rgba(232,89,140,.2);margin-bottom:22px;animation:march8FadeIn 1s ease-out forwards}@keyframes march8FadeIn{0%{opacity:0;transform:translateY(30px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.march8-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(232,89,140,.12),transparent 50%),radial-gradient(circle at 70% 80%,rgba(120,212,166,.1),transparent 50%),radial-gradient(circle at 50% 50%,rgba(245,200,66,.08),transparent 40%);pointer-events:none}.march8-flowers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.march8-flower{position:absolute;font-size:1.6rem;opacity:.2;animation:march8Float 6s ease-in-out infinite}.m8f-1{top:10%;left:5%;animation-delay:0s;font-size:2rem}.m8f-2{top:15%;right:8%;animation-delay:1s;font-size:1.4rem}.m8f-3{bottom:15%;left:10%;animation-delay:2s}.m8f-4{bottom:10%;right:12%;animation-delay:.5s;font-size:1.8rem}.m8f-5{top:50%;left:2%;animation-delay:3s;font-size:1.3rem}.m8f-6{top:40%;right:3%;animation-delay:1.5s;font-size:1.5rem}@keyframes march8Float{0%,to{transform:translateY(0) rotate(0);opacity:.2}50%{transform:translateY(-12px) rotate(8deg);opacity:.35}}.march8-content{position:relative;z-index:2}.march8-badge{display:inline-block;padding:6px 20px;border-radius:999px;background:linear-gradient(135deg,#e8598c,#f5c842);color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;box-shadow:0 4px 18px #e8598c4d}.march8-title{font-family:var(--font-title);font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:700;line-height:1.15;color:var(--ink);margin-bottom:14px;letter-spacing:-.02em}.march8-text{font-size:clamp(.95rem,1.6vw,1.1rem);line-height:1.7;color:var(--ink-soft);max-width:56ch;margin:0 auto 20px}.march8-emoji-row{display:flex;justify-content:center;gap:12px;font-size:1.5rem}.march8-emoji-row span{animation:march8Bounce 2s ease-in-out infinite}.march8-emoji-row span:nth-child(1){animation-delay:0s}.march8-emoji-row span:nth-child(2){animation-delay:.15s}.march8-emoji-row span:nth-child(3){animation-delay:.3s}.march8-emoji-row span:nth-child(4){animation-delay:.45s}.march8-emoji-row span:nth-child(5){animation-delay:.6s}.march8-emoji-row span:nth-child(6){animation-delay:.75s}@keyframes march8Bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}body[data-theme=dark] .march8-banner{background:linear-gradient(155deg,#280f1cf2,#1e190ce6,#0e1e16e0);border-color:#e8598c4d}body[data-theme=dark] .march8-glow{background:radial-gradient(circle at 30% 20%,rgba(232,89,140,.15),transparent 50%),radial-gradient(circle at 70% 80%,rgba(120,212,166,.1),transparent 50%),radial-gradient(circle at 50% 50%,rgba(245,200,66,.06),transparent 40%)}body[data-theme=dark] .march8-title{color:var(--ink)}body[data-theme=dark] .march8-badge{background:linear-gradient(135deg,#d4508a,#ddb33e);box-shadow:0 4px 18px #d4508a59}body[data-theme=dark] .march8-text{color:var(--ink-soft)}body.spring-holiday .quote-card{background:linear-gradient(155deg,#fff2f6eb,#fffaebd1,#f0fff8c2);border-color:#e8598c2e}body.spring-holiday .quote-author{color:#e8598c}body[data-theme=dark].spring-holiday .quote-card{background:linear-gradient(155deg,#230e18f0,#19160ae6,#0c1c14e0);border-color:#e8598c40}body[data-theme=dark].spring-holiday .quote-author{color:#ff9ec0}.flower-burst{font-size:16px;background:none;width:auto;height:auto;border-radius:0;box-shadow:none;animation:flowerBurstFly 1.1s ease-out forwards}@keyframes flowerBurstFly{0%{opacity:1;transform:translate(0) scale(.5) rotate(0)}60%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1.2) rotate(180deg)}}
