@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{color-scheme:dark;--bg:#260e1c;--ink:#f9e6e9;--muted:#c3a0ae;--pink:#eab1c1;--line:#f3cad524;--paper:#f8ebe7;--dark:#441c2b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ffcae4;outline-offset:6px}header{position:relative;z-index:2;max-width:1500px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:30px 5vw;border-bottom:1px solid var(--line)}.wordmark{font:italic 32px 'Cormorant Garamond',Georgia,serif;color:var(--ink);text-decoration:none}.wordmark span{font:14px sans-serif;vertical-align:top;margin-left:8px}.date{font:32px 'Cormorant Garamond',Georgia,serif;display:flex;align-items:center;gap:10px}.date span{font:12px 'DM Sans',sans-serif;letter-spacing:2px}.sound{background:none;border:1px solid var(--line);color:var(--ink);border-radius:30px;padding:10px 16px;font-size:14px}.sound[aria-pressed=true]{background:var(--pink);color:var(--dark)}.grain{position:fixed;inset:0;pointer-events:none;opacity:.15;z-index:5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.3' d='M0 0h200v200H0z'/%3E%3C/svg%3E")}.cover{position:relative;min-height:calc(100svh - 103px);max-width:1500px;margin:auto;display:flex;align-items:center;padding:60px 8vw 100px;isolation:isolate;overflow:hidden}.cover-copy{z-index:1;max-width:680px}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:500;color:var(--pink);margin:0 0 25px}h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h1{font-size:clamp(52px,6.8vw,100px);line-height:1.02;letter-spacing:-2px;margin:0 0 26px}h1 em{color:var(--pink);font-weight:400}p{line-height:1.8}.intro{color:var(--muted);margin:28px 0}.primary{display:inline-flex;align-items:center;gap:34px;border:0;border-radius:4px;background:var(--pink);color:var(--dark);padding:18px 24px;font-weight:500;transition:transform .2s,background .2s}.primary:hover{background:#f7cdda;transform:translateY(-2px)}.primary span{font-size:22px}.whisper{font:italic 19px 'Cormorant Garamond',Georgia,serif;color:var(--muted);margin-top:22px}.art{position:absolute;width:63%;height:100%;right:0;top:0;z-index:-1;background:radial-gradient(ellipse at 70% 45%,#73304370,transparent 65%);background-size:cover;background-position:center}.art-shade{position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 70%)}.art-note{position:absolute;right:10%;bottom:18%;font:italic 36px 'Cormorant Garamond',Georgia,serif;transform:rotate(-10deg);color:#f4c4d0}.bottom-note{position:absolute;bottom:30px;left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px;color:var(--muted)}.hidden{display:none!important}#surprise{max-width:1100px;margin:0 auto;padding:65px 24px 20px;animation:arrive .8s both}.birthday-heading{text-align:center}.birthday-heading h1{font-size:clamp(49px,6vw,76px)}.birthday-heading p:last-child{color:var(--muted)}.chapters{display:flex;justify-content:center;gap:0;margin:42px auto 34px;border-bottom:1px solid var(--line);max-width:780px}.chapters button{background:none;border:none;border-bottom:2px solid transparent;padding:20px 25px;color:var(--muted);font-size:12px}.chapters button span{font-size:15px;margin-left:10px}.chapters button.active{color:var(--ink);border-color:var(--pink)}.panel-wrap{max-width:780px;margin:auto}.panel{animation:arrive .5s both}.letter{background:var(--paper);color:var(--dark);padding:45px 60px;box-shadow:0 20px 70px #10000d30;transform:rotate(-.6deg)}.letter-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px;border-bottom:1px solid #441c2b30;padding-bottom:20px}.letter-top span:last-child{color:#a74868;font-size:20px}.letter h2{font-style:italic;font-size:42px;margin:30px 0 24px}.letter p{line-height:1.95}.signature{font:italic 26px/1.4 'Cormorant Garamond',Georgia,serif;margin-top:28px}.signature span{font-size:24px}.wishes{padding:28px 25px}.panel h2{font-size:clamp(33px,4vw,46px);line-height:1.15;font-weight:400}.wish{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:15px 0}.wish>span{font:italic 30px 'Cormorant Garamond',Georgia,serif;color:var(--pink);margin-top:13px}.wish p{max-width:530px}.closing{font:italic 25px 'Cormorant Garamond',Georgia,serif;color:var(--pink);margin-top:36px}.music{text-align:center;padding:35px 30px 45px;background:linear-gradient(140deg,#532338,#301320);border:1px solid var(--line)}.music h2{margin:22px}.music-lines{font:72px Georgia,serif;color:var(--pink);margin:35px 0}.music p{color:var(--muted)}.music-caption{font-size:13px}footer{text-align:center;color:var(--muted);font-size:13px;line-height:1.8;padding:45px 0 15px}footer span{color:var(--pink)}footer button{display:block;margin:18px auto 0;background:none;border:0;color:var(--muted);text-decoration:underline;font-size:13px;padding:10px}.confetto{position:fixed;top:-20px;width:7px;height:11px;background:var(--pink);z-index:10;pointer-events:none;animation:fall var(--duration) linear forwards}#confetti{pointer-events:none}@keyframes fall{to{transform:translate(var(--drift),110vh) rotate(700deg)}}@keyframes arrive{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}@media(max-width:700px){header{padding:20px 22px}.wordmark{font-size:28px}.date{font-size:27px}.date span{font-size:12px;letter-spacing:1px}.sound{padding:9px 12px}.sound span{display:none}.cover{min-height:calc(100svh - 81px);padding:65px 26px 85px;align-items:flex-start}.cover h1{font-size:clamp(51px,12.5vw,76px);letter-spacing:-1.5px;line-height:1.07}.cover-copy{max-width:100%}.eyebrow{font-size:12px;letter-spacing:1.8px}.intro{font-size:15px;max-width:300px}.art{width:100%;opacity:.4;background-position:62% center}.art-shade{background:linear-gradient(90deg,var(--bg) 6%,#260e1c88 65%,transparent)}.art-note{display:none}.bottom-note{left:26px;right:26px;font-size:12px;letter-spacing:.7px}.bottom-note span:last-child{display:none}#surprise{padding:48px 18px 20px}.birthday-heading h1{font-size:50px;letter-spacing:-1px}.birthday-heading p:last-child{font-size:14px}.chapters{margin-top:28px}.chapters button{padding:16px 9px;flex:1}.chapters button span{font-size:14px;display:block;margin:6px 0 0}.letter{padding:28px 26px;transform:none}.letter p{font-size:16px}.letter h2{font-size:36px}.signature span{font-size:23px}.wishes{padding:16px 8px}.wish{gap:18px}.music{padding:30px 18px}.primary{padding:17px 22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.confetto{display:none}}

/* Bright pink and plum, inspired by the birthday reference. */
:root{--bg:#340d38;--ink:#fff1fa;--muted:#ecd0e4;--pink:#f9b7da;--line:#ffd4f538;--dark:#511e43}
body{background:linear-gradient(110deg,#210925 0%,#741073 53%,#e600ad 100%);background-attachment:fixed}
.art{background-image:url('rose-bow.png');background-size:cover;background-position:70% center;mix-blend-mode:lighten}
.art-shade{background:linear-gradient(90deg,#340d38,transparent 65%)}
.primary{background:#bcf19e;color:#25451a;border-radius:28px;box-shadow:0 4px 0 #63914755}.primary:hover{background:#d7ffbf}
.cover{background:linear-gradient(90deg,#21092555,transparent)}
.music{background:linear-gradient(130deg,#440d55aa,#ce078aaa)}
.video-wrap{aspect-ratio:16/9;margin:30px auto 22px;border:7px solid #daae66;box-shadow:0 0 0 2px #8e612b,0 0 0 5px #f5d99d,0 16px 35px #17001655;max-width:620px;background:#200f28}
.video-wrap iframe{width:100%;height:100%;display:block;border:0}.music h3{font:32px 'Cormorant Garamond',Georgia,serif;margin:25px 0 4px}.music .artist{font-size:14px;margin:0 0 25px}.youtube-link{color:var(--ink);font-size:14px;text-underline-offset:5px}
@media(max-width:700px){.art{opacity:.5;mix-blend-mode:lighten}.art-shade{background:linear-gradient(90deg,#210925 0%,#400d4380 60%,transparent)}.video-wrap{border-width:5px}.cover-copy{position:relative}.cover h1{max-width:560px}}

.gallery{text-align:center;padding:25px 12px}.gallery h2{margin:12px 0}.gallery-note{color:var(--muted);margin-bottom:38px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;align-items:start;padding:8px}.photo-frame{min-width:0;background:#fff0eb;border:7px solid #c69b50;outline:2px solid #f4dba4;box-shadow:inset 0 0 0 2px #7c5426,0 12px 22px #16051c55;padding:6px;color:#672749;transform:rotate(-2deg);transition:transform .2s}.photo-frame:nth-child(2n){transform:rotate(2deg)}.photo-frame:hover{transform:rotate(0) translateY(-5px)}.photo-frame img{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#2c1525}.photo-frame>span{display:flex;justify-content:space-between;padding:12px 5px 5px;font-size:13px;letter-spacing:2px}.photo-frame i{font-size:20px;font-style:normal}#photo-dialog{border:1px solid var(--line);border-radius:8px;background:#280d29;color:var(--ink);padding:16px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}#photo-dialog::backdrop{background:#140617e8;backdrop-filter:blur(5px)}#photo-dialog[open]{display:flex;flex-direction:column;align-items:center;gap:12px}#full-photo{max-height:calc(100dvh - 160px);max-width:100%;width:auto;object-fit:contain}#close-photo{align-self:flex-end}#photo-dialog button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 13px;border-radius:24px;font-size:14px}.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}#photo-count{font-size:14px;white-space:nowrap}body.photo-open{overflow:hidden}@media(max-width:700px){.chapters button{padding:15px 5px}.chapters button span{font-size:13px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.gallery{padding:20px 0}.photo-frame{border-width:5px;padding:4px}.photo-controls{gap:10px}}@media(max-width:360px){.photo-grid{grid-template-columns:1fr;max-width:250px;margin:auto}}

.screen-reader-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.writing-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 0;font-size:13px;color:#79475f}.writing-controls button{background:transparent;border:1px solid #79475f55;border-radius:22px;padding:9px 13px;color:#642841;font-size:13px;flex-shrink:0}.writing-controls button:hover{background:#ead0d8}.signature-pending{visibility:hidden}.current-line::after{content:' ';display:inline-block;border-right:2px solid #a84376;height:1em;vertical-align:-.12em;margin-left:3px;animation:writing-cursor .8s step-end infinite}#written-letter{min-height:90px}.birthday-magic{text-align:center;margin:38px 0 0}.birthday-magic button{color:var(--ink);border:1px solid var(--line);border-radius:28px;padding:15px 24px;background:#ffffff0d;transition:transform .2s,background .2s}.birthday-magic button:hover{transform:translateY(-3px);background:#ffffff20}.birthday-magic button:active{transform:scale(.97)}.primary:active{transform:scale(.97)}.photo-frame:focus-visible{outline:3px solid #c8ffb0;outline-offset:6px}#full-photo{user-select:none;-webkit-user-select:none}@keyframes writing-cursor{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.current-line::after{animation:none}.birthday-magic button:hover{transform:none}}

/* Envelope opening and icon-based surprise menu. */
.script-title{font-family:'Great Vibes','Cormorant Garamond',Georgia,serif;font-size:clamp(48px,6.8vw,88px);font-weight:400;line-height:1.3;letter-spacing:0;color:#ffe8f5;text-shadow:0 2px 18px #d444af66}
.cover.envelope-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px 85px;min-height:calc(100svh - 104px);overflow:visible;background:none}
.envelope-screen .eyebrow{margin-bottom:22px}.envelope-screen .script-title{margin:0 0 48px}.envelope-button{position:relative;display:block;width:260px;height:165px;border:0;background:transparent;perspective:900px;padding:0;isolation:isolate;filter:drop-shadow(0 16px 26px #1a001950);transition:transform .3s}
.envelope-button:hover{transform:translateY(-6px) rotate(-2deg)}.envelope-body{position:absolute;inset:0;background:#fff5d8;border:1px solid #dfcda9;z-index:3;clip-path:polygon(0 0,50% 51%,100% 0,100% 100%,0 100%)}
.envelope-button::before{content:'';position:absolute;inset:0;background:#eadab6;border:1px solid #d3bc8a;z-index:0}.envelope-flap{position:absolute;inset:0;background:linear-gradient(#fff9e7,#f2e5bf);clip-path:polygon(0 0,100% 0,50% 55%);transform-origin:top;z-index:4;transition:transform .65s ease,z-index 0s .3s;backface-visibility:visible}
.envelope-seal{position:absolute;z-index:5;top:43%;left:calc(50% - 20px);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,#dd41c5,#980a98 65%,#570658);border:2px solid #c853b9;color:#ffcaf2;font-size:25px;box-shadow:0 2px 5px #46054250;transition:opacity .25s,transform .4s}
.envelope-letter{position:absolute;inset:12px 15px 10px;background:#fffaf0;color:#803965;display:flex;align-items:center;justify-content:center;font:32px 'Great Vibes',cursive;border:1px solid #ead8bd;z-index:2;transition:transform .6s .35s}
.opening-envelope .envelope-flap{transform:rotateX(180deg);z-index:1}.opening-envelope .envelope-seal{opacity:0;transform:scale(.7)}.opening-envelope .envelope-letter{transform:translateY(-70px)}.opening-envelope .envelope-button{transform:translateY(16px)}.envelope-hint{font:26px 'Great Vibes',cursive;color:var(--pink);margin-top:35px;animation:hint-pulse 2.6s ease-in-out infinite}
#surprise{max-width:1200px;padding-top:35px}.surprise-menu{text-align:center;min-height:calc(100svh - 260px);display:flex;flex-direction:column;justify-content:center;padding:40px 0 30px;animation:arrive .75s both}.surprise-menu h1{margin:0 0 40px}.surprise-menu .eyebrow{margin-bottom:15px}
.chapters.surprise-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:900px;border:0;margin:0 auto;gap:20px;padding:10px 10px 25px}.chapters.surprise-choices button{min-width:0;position:relative;padding:22px 5px;background:transparent;border:0;display:flex;flex-direction:column;align-items:center;gap:15px;color:#ffe7f8;animation:choice-arrive .7s both;transition:transform .25s}.surprise-choices button:nth-child(2){animation-delay:.12s}.surprise-choices button:nth-child(3){animation-delay:.24s}.surprise-choices button:nth-child(4){animation-delay:.36s}
.chapters.surprise-choices .choice-icon{font-family:'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:82px;line-height:1.2;margin:0;display:block;filter:drop-shadow(0 0 14px #ffdab75c);transition:transform .3s,filter .3s}.chapters.surprise-choices .choice-label{font:30px 'Great Vibes','Cormorant Garamond',serif;margin:0;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}.surprise-choices button:hover .choice-icon,.surprise-choices button:focus-visible .choice-icon{transform:translateY(-9px) rotate(-6deg) scale(1.08);filter:drop-shadow(0 0 24px #ffe4baaa)}.surprise-choices button:active{transform:scale(.94)}.menu-hint{color:var(--muted);font-size:14px;margin-top:16px}.panel-toolbar{max-width:780px;margin:0 auto 25px}.back-button{background:#bcf19e;color:#25451a;border:0;border-radius:24px;padding:12px 20px;font-size:14px}.detail-view .birthday-magic{margin-top:30px}#surprise:not(.detail-view) .birthday-magic,#surprise:not(.detail-view) footer{margin-top:0;padding-top:0}#surprise:not(.detail-view) .panel-wrap{display:none}
@keyframes hint-pulse{50%{opacity:.55;transform:translateY(3px)}}@keyframes choice-arrive{from{opacity:0;transform:translateY(28px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){.cover.envelope-screen{min-height:calc(100svh - 82px);padding:50px 20px 70px}.envelope-screen .script-title{font-size:clamp(44px,11vw,65px);margin-bottom:50px}.envelope-button{width:240px;height:155px}#surprise{padding-top:25px}.surprise-menu{padding:30px 0;min-height:calc(100svh - 245px)}.surprise-menu .script-title{font-size:clamp(42px,10.8vw,65px);margin-bottom:25px}.chapters.surprise-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;max-width:450px}.chapters.surprise-choices button{padding:14px 3px;gap:8px}.chapters.surprise-choices .choice-icon{font-size:70px}.chapters.surprise-choices .choice-label{font-size:28px}.menu-hint{margin:5px 0 0}}@media(prefers-reduced-motion:reduce){.envelope-hint{animation:none}.opening-envelope .envelope-letter,.opening-envelope .envelope-flap{transition:none}.surprise-choices button:hover .choice-icon{transform:none}}

/* Scrapbook stickers stay in the margins, away from text and controls. */
.envelope-screen,.surprise-menu{position:relative;isolation:isolate}.sticker-scatter{position:absolute;inset:0;pointer-events:none;user-select:none;z-index:-1;overflow:hidden}.cute-sticker{position:absolute;display:block;font-family:'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:clamp(38px,5.5vw,76px);line-height:1.3;filter:drop-shadow(2px 0 0 #fff5fa) drop-shadow(-2px 0 0 #fff5fa) drop-shadow(0 2px 0 #fff5fa) drop-shadow(0 -2px 0 #fff5fa) drop-shadow(0 8px 10px #25002040);animation:sticker-float 5s ease-in-out infinite;transform:rotate(var(--tilt,0deg));opacity:.94}.sticker-bow{left:9%;top:8%;--tilt:-17deg}.sticker-bear{right:9%;top:57%;--tilt:14deg;animation-delay:-1.6s}.sticker-flower{left:15%;bottom:15%;--tilt:-12deg;animation-delay:-2.5s}.sticker-heart{right:11%;top:12%;--tilt:15deg;animation-delay:-3.2s}.sticker-star{left:7%;top:49%;font-size:clamp(26px,3.5vw,45px);--tilt:8deg;animation-delay:-.8s}.sticker-berry{right:27%;bottom:9%;font-size:clamp(28px,3.8vw,48px);--tilt:22deg;animation-delay:-4s}.surprise-menu .sticker-bow{left:2%;top:4%}.surprise-menu .sticker-heart{right:2%;top:5%}.surprise-menu .sticker-bear{right:1%;top:auto;bottom:3%;font-size:50px}.surprise-menu .sticker-flower{left:4%;bottom:4%;font-size:45px}.surprise-menu .sticker-star{left:22%;top:3%;font-size:28px}.surprise-menu .sticker-berry{right:23%;bottom:1%;font-size:29px}@keyframes sticker-float{0%,100%{transform:translateY(0) rotate(var(--tilt,0deg))}50%{transform:translateY(-9px) rotate(calc(var(--tilt,0deg) + 5deg))}}@media(max-width:700px){.cute-sticker{font-size:43px}.sticker-bow{left:7%;top:4%}.sticker-heart{right:7%;top:6%}.sticker-bear{right:6%;top:auto;bottom:10%;font-size:51px}.sticker-flower{left:8%;bottom:12%;font-size:43px}.sticker-star{left:5%;top:47%;font-size:25px}.sticker-berry{right:9%;bottom:39%;font-size:28px}.surprise-menu{padding-top:65px;padding-bottom:65px}.surprise-menu .sticker-bow{left:4%;top:0;font-size:36px}.surprise-menu .sticker-heart{right:5%;top:0;font-size:35px}.surprise-menu .sticker-star{left:47%;top:0;font-size:24px}.surprise-menu .sticker-bear{right:5%;bottom:0;font-size:37px}.surprise-menu .sticker-flower{left:5%;bottom:0;font-size:33px}.surprise-menu .sticker-berry{right:47%;bottom:0;font-size:25px}}@media(prefers-reduced-motion:reduce){.cute-sticker{animation:none}}

/* Piya's pink palette. */
:root{color-scheme:light;--bg:#ffd1e4;--ink:#621738;--muted:#7e3554;--pink:#a51e59;--line:#ad3b702e;--paper:#fff7fb;--dark:#621738}
body{background:radial-gradient(ellipse at 20% 15%,#fff1f7 0,transparent 48%),radial-gradient(ellipse at 85% 65%,#ff9fc9 0,transparent 58%),linear-gradient(135deg,#ffe1ee,#ffc0dc 60%,#ffb3d4);background-attachment:fixed}
header{border-bottom-color:#c6568626}.script-title{color:#9d2055;text-shadow:0 2px 0 #fff2f8,0 8px 24px #d9428720}.eyebrow{color:#8f2954}.chapters.surprise-choices button{color:#8d2450}.envelope-hint{color:#8d2450}.envelope-button::before{background:#e9a9c4;border-color:#d28ca9}.envelope-body{background:#fff1f7;border-color:#e2b0c5}.envelope-flap{background:linear-gradient(#fff8fc,#f4c7db)}.envelope-letter{background:#fffafb;color:#98345d;border-color:#ecc3d6}.envelope-seal{background:radial-gradient(circle at 30% 25%,#ff8dbf,#d93282 65%,#a61558);border-color:#f88dbc;color:#fff2f9}
.primary,.back-button{background:#b92162;color:#fff6fb;box-shadow:0 4px 0 #8e1a4f25}.primary:hover,.back-button:hover{background:#9d1a52}.sound{background:#fff0f777;border-color:#b241733b}.sound[aria-pressed=true]{background:#b92162;color:#fff6fb}.letter{box-shadow:0 20px 70px #a3336920}.letter-top{border-color:#b943762d}.letter-top span:last-child{color:#bd2e70}.music{background:linear-gradient(135deg,#fff0f8dd,#ffb8d8dd);border-color:#cf6b982f}.music p{color:var(--muted)}.photo-frame{border-color:#e1a4b8;outline-color:#fff3f8;background:#fff4f9;box-shadow:inset 0 0 0 2px #b76b88,0 12px 22px #a333692a}.video-wrap{border-color:#e1a4b8;box-shadow:0 0 0 2px #b76b88,0 0 0 5px #fff0f7,0 16px 35px #a3336930}.birthday-magic button{background:#fff1f780;border-color:#b9437644}.birthday-magic button:hover{background:#fff7fb}.wish{border-color:#b943762d}.closing{color:#9d2055}.writing-controls{color:#7e3554}.writing-controls button{color:#84244e;border-color:#b9437655}.writing-controls button:hover{background:#ffe0ef}#photo-dialog{background:#fff0f7;color:#621738;border-color:#d685a8}#photo-dialog::backdrop{background:#541331d9}#photo-dialog button{color:#621738;border-color:#b9437644}button:focus-visible,a:focus-visible,.photo-frame:focus-visible{outline-color:#84244e}
