body{background:#fafafa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;margin:0}h1{margin-top:2rem;text-align:center}:root{--bg:#f6f7fb;--bg-grad:#fbfcff;--card:#fff;--card-sub:#f2f5fb;--text:#1c2430;--muted:#6b7686;--line:#1218261f;--line-strong:#1218262e;--accent:#ff7aa2;--accent-ink:#6f1030;--focus:#8bc6ff}*{box-sizing:border-box;min-width:0}#root,body,html{height:100%;width:100%}body,html{background:radial-gradient(1200px 600px at 10% -10%,#fbfcff 0,#f6f7fb 60%);background:radial-gradient(1200px 600px at 10% -10%,var(--bg-grad) 0,var(--bg) 60%);color:#1c2430;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Inter,system-ui,sans-serif;margin:0;overflow-x:hidden}iframe,img{display:block;height:auto;max-width:100%}a{color:inherit}.app-shell{display:grid;grid-template-rows:64px 1fr;min-height:100%;width:100%}.topbar{-webkit-backdrop-filter:saturate(130%) blur(12px);backdrop-filter:saturate(130%) blur(12px);background:#ffffffa6;border-bottom:1px solid #1218261f;border-bottom:1px solid var(--line);height:64px;justify-content:space-between;padding-left:calc(12px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));position:-webkit-sticky;position:sticky;top:0;z-index:20}.brand,.topbar{align-items:center;display:flex}.brand{background:none;border:0;border-radius:10px;color:#1c2430;color:var(--text);cursor:pointer;font-weight:800;gap:10px;letter-spacing:.2px;padding:8px}.brand:hover{background:#0000000a}.logo{border-radius:7px;height:28px;width:28px}.nav{display:flex;flex-wrap:wrap;gap:8px}.navlink{align-items:center;border:1px solid #0000;border-radius:12px;color:#1c2430;color:var(--text);display:inline-flex;padding:8px 12px;text-decoration:none}.navlink:hover{border-color:#1218261f;border-color:var(--line)}.navlink.active{background:#fff;border-color:#1218262e;border-color:var(--line-strong)}.content{grid-gap:16px;display:grid;gap:16px;justify-items:center;max-width:100vw;padding:16px calc(clamp(12px,5vw,24px) + env(safe-area-inset-right)) 16px calc(clamp(12px,5vw,24px) + env(safe-area-inset-left));width:100%}.card,.card-sub{border:1px solid #1218261f;border:1px solid var(--line);border-radius:16px;max-width:960px;padding:clamp(12px,3.2vw,20px);width:100%}.card{background:#fff;background:var(--card);box-shadow:0 12px 30px #191e3c14,inset 0 1px 0 #fff9}.card-sub{background:linear-gradient(180deg,#fff,#f2f5fb);background:linear-gradient(180deg,#fff,var(--card-sub));box-shadow:0 10px 26px #191e3c12}.section-title{font-size:18px;font-weight:800;letter-spacing:.2px;margin:6px 0 12px}.countdown-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(5,minmax(110px,1fr))}@media (max-width:820px){.countdown-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));justify-content:center}}.tile{background:#fff;border:1px solid #1218261f;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 24px #1e284614;padding:14px 10px;text-align:center}.value{color:#1c2430;color:var(--text);font-size:clamp(22px,5vw,30px);font-weight:900;letter-spacing:.6px}.label{font-size:11px;letter-spacing:.32px;margin-top:6px;text-transform:uppercase}.grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(136px,1fr));width:100%}@media (max-width:480px){.grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:340px){.grid{grid-template-columns:1fr}}.movie-card{background:#fff;border:1px solid #1218261f;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.movie-card:hover{box-shadow:0 18px 36px #2832501f;transform:translateY(-2px)}.poster{position:relative}.movie-card img{aspect-ratio:2/3;object-fit:cover;width:100%}.actions{bottom:8px;display:flex;gap:6px;left:8px;opacity:0;position:absolute;right:8px;transition:opacity .18s ease}.poster:hover .actions{opacity:1}.btn{background:#fff;border:1px solid #1218262e;border:1px solid var(--line-strong);border-radius:10px;color:#1c2430;color:var(--text);cursor:pointer;flex:1 1;font-size:12px;font-weight:650;padding:8px 10px}.btn.primary{background:#ff7aa2;background:var(--accent);border-color:#ff7aa2;border-color:var(--accent);color:#fff}.btn.neutral{background:#eef2f8}.btn:focus{outline:2px solid #8bc6ff;outline:2px solid var(--focus);outline-offset:2px}.movie-card .meta{color:#6b7686;color:var(--muted);font-size:13px;padding:10px 10px 12px}.row{display:flex;flex-wrap:wrap;gap:8px;width:100%}.row>*{min-width:0}.input{background:#fff;border:1px solid #1218262e;border:1px solid var(--line-strong);border-radius:12px;box-shadow:inset 0 2px 0 #00000005;color:#1c2430;color:var(--text);flex:1 1;min-width:200px;padding:11px 12px}.input:focus{outline:2px solid #8bc6ff;outline:2px solid var(--focus);outline-offset:2px}.select{background:#fff;border:1px solid #1218262e;border:1px solid var(--line-strong);border-radius:12px;color:#1c2430;color:var(--text);padding:11px 12px}.select:focus{outline:2px solid #8bc6ff;outline:2px solid var(--focus);outline-offset:2px}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.toolbar .select{flex:1 1;min-width:140px}@media (max-width:480px){.topbar{height:56px}.brand{padding:6px}.nav{gap:6px}.navlink{padding:6px 10px}.content{padding:12px}}.tz-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.tz-who{color:#6b7686;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.2px;margin-bottom:4px}.tz-time{font-size:clamp(22px,5vw,30px)}@media (max-width:480px){.tz-grid{grid-template-columns:1fr}}.list{grid-gap:10px;display:grid;gap:10px}.list.compact .list-item{padding:10px 12px}.list-day{border-top:1px solid #1218261f;border-top:1px solid var(--line);margin-top:6px;padding-top:8px}.list-day-title{color:#6b7686;color:var(--muted);font-size:13px;font-weight:800;margin-bottom:4px}.list-item{align-items:center;background:#fff;border:1px solid #1218261f;border:1px solid var(--line);border-radius:12px;display:flex;gap:8px;justify-content:space-between;padding:12px 14px}.list-time{font-weight:700;min-width:120px}.list-time,.list-title{color:#1c2430;color:var(--text)}.list-title{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip{background:#fff;border:1px solid #1218262e;border:1px solid var(--line-strong);border-radius:999px;color:#1c2430;color:var(--text);font-size:12px;padding:4px 8px}.chip-ac{background:#ffe7ef;border-color:#ffc7d8;color:#5c0e27}.chip-na{background:#eaf5ff;border-color:#cfe9ff;color:#0c355d}.chip-who{background:#f3f4f7;border-color:#1218261f;border-color:var(--line);color:#3a404b}.form.v{grid-gap:10px;display:grid;gap:10px}.label{color:#6b7686;color:var(--muted);font-size:12px;margin-bottom:4px}.radio{align-items:center;color:#1c2430;color:var(--text);display:flex;font-size:14px;gap:6px}.bday-screen{display:grid;height:100vh;inset:0;overflow:hidden;place-items:center;position:fixed;width:100vw;z-index:999}.bday-bg{animation:bgShift 12s ease-in-out infinite alternate;background:conic-gradient(from 180deg at 50% 50%,#ff7aa2,#8bc6ff,#ffd08a,#b9f5d0,#d9b8ff,#ff7aa2);filter:saturate(110%) contrast(105%);inset:-10%;position:absolute}@keyframes bgShift{0%{filter:blur(24px) saturate(1.1);transform:scale(1.05) rotate(0deg)}to{filter:blur(28px) saturate(1.2);transform:scale(1.2) rotate(12deg)}}.bday-grain{animation:grainShift 1.6s steps(2) infinite;background-image:radial-gradient(circle at 20% 30%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 80% 70%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 40% 80%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 60% 20%,#0000002e 0 1px,#0000 1px);background-size:3px 3px,3px 3px,3px 3px,3px 3px;inset:0;mix-blend-mode:overlay;opacity:.12;pointer-events:none;position:absolute}@keyframes grainShift{0%{transform:translate(0)}to{transform:translate(-2%,-2%)}}.present-cta{background:#0000;border:none;cursor:pointer;height:min(88vw,420px);outline:none;padding:0;position:relative;transform:translateZ(0);width:min(88vw,560px)}.present-cta:focus-visible{border-radius:18px;outline:3px solid #8bc6ff;outline:3px solid var(--focus,#8bc6ff)}.gift-box{background:#ffffffe6;border:1px solid #0000001f;border-radius:18px;box-shadow:0 40px 90px #10102859,inset 0 1px 0 #fffc;height:100%;overflow:hidden;position:relative;width:100%}.gift-lid{background:linear-gradient(180deg,#ffffffd9,#fff9);border:1px solid #00000024;border-bottom:0;border-radius:18px 18px 0 0;box-shadow:0 22px 40px #0000002e;height:72px;left:0;position:absolute;right:0;top:-72px;transform:perspective(800px) rotateX(0deg);transform-origin:bottom center;transition:transform .9s cubic-bezier(.2,.9,.2,1),opacity .3s ease}.rib-horz,.rib-vert{background:#ff7aa2;background:var(--accent,#ff7aa2);box-shadow:inset 0 0 0 1px #0000001f;position:absolute}.rib-vert{border-radius:10px;bottom:0;left:50%;top:-72px;transform:translateX(-50%);width:22px}.rib-horz{border-radius:10px;height:22px;left:0;right:0;top:50%;transform:translateY(-50%)}.gift-tag{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff;border:1px dashed #0000002e;border-radius:10px;bottom:12px;color:#0000008c;font-size:12px;padding:7px 10px;position:absolute;right:12px}.present-cta.open .gift-lid{opacity:.95;transform:perspective(800px) rotateX(128deg) translateY(-6px)}.present-cta.open .gift-box{animation:boxLift .9s cubic-bezier(.2,.9,.2,1)}@keyframes boxLift{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.01)}to{transform:translateY(0) scale(1)}}.bday-hero{animation:heroIn .5s ease forwards;color:#101318;display:grid;inset:0;padding:24px;place-items:center;position:absolute;text-align:center}@keyframes heroIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.bday-hero h1{background:linear-gradient(92deg,#101318,#101318e6);-webkit-background-clip:text;background-clip:text;color:#0000;filter:drop-shadow(0 8px 22px rgba(0,0,0,.15));font-size:clamp(28px,9vw,80px);font-weight:900;letter-spacing:.5px;line-height:1.02;margin:0 0 6px;text-shadow:0 2px 28px #ffffff59}.bday-hero p{color:#101318cc;font-size:clamp(14px,3.2vw,20px);margin:0}body,html{overscroll-behavior:none}.slides-hero{color:#101318;color:var(--ink,#101318);display:grid;height:100vh;inset:0;overflow:hidden;place-items:center;position:fixed;width:100vw;z-index:999}.slides-hero-bg{animation:slidesHeroFloat 14s ease-in-out infinite alternate;background:radial-gradient(1200px 800px at 20% -10%,var(--mono-a),#0000 60%),radial-gradient(1000px 600px at 90% 110%,var(--mono-b),#0000 60%),linear-gradient(160deg,var(--mono-c),var(--mono-b));filter:saturate(108%) contrast(104%) blur(10px);inset:-12%;position:absolute}@keyframes slidesHeroFloat{0%{transform:scale(1.04) translateZ(0) rotate(.2deg)}to{transform:scale(1.16) translate3d(-2%,-1%,0) rotate(1deg)}}.slides-hero-grain{animation:slidesGrainDrift 1.6s steps(2) infinite;background-image:radial-gradient(circle at 14% 22%,#00000029 0 1px,#0000 1px),radial-gradient(circle at 82% 72%,#00000029 0 1px,#0000 1px),radial-gradient(circle at 48% 88%,#00000029 0 1px,#0000 1px),radial-gradient(circle at 60% 16%,#00000029 0 1px,#0000 1px);background-size:3px 3px,3px 3px,3px 3px,3px 3px;inset:0;mix-blend-mode:overlay;opacity:.14;pointer-events:none;position:absolute}@keyframes slidesGrainDrift{0%{transform:translate(0)}to{transform:translate(-2%,-1%)}}.slides-hero-inner{padding:clamp(12px,4vw,24px);position:relative;text-align:center;width:min(96vw,1100px)}.slides-hero-title{background:linear-gradient(92deg,#101318,color-mix(in oklab,#101318 90%,#000 10%));background:linear-gradient(92deg,var(--ink,#101318),color-mix(in oklab,var(--ink,#101318) 90%,#000 10%));-webkit-background-clip:text;background-clip:text;color:#0000;filter:drop-shadow(0 10px 24px rgba(0,0,0,.12));font-size:clamp(26px,6.8vw,64px);font-weight:900;letter-spacing:.4px;line-height:1.02;margin:0 0 clamp(12px,2.8vw,18px);text-shadow:0 2px 28px #ffffff4d}.slides-hero-center{margin:clamp(14px,5vw,28px) 0 clamp(10px,3vw,16px)}.metric{color:#101318;color:var(--ink,#101318);font-size:clamp(48px,18vw,200px);font-weight:1000;letter-spacing:-.5px;line-height:.92}.slides-hero-sub{color:#2d3440;color:var(--ink2,#2d3440);font-size:clamp(13px,2.6vw,20px);margin:0 auto;max-width:860px;opacity:.9}.love-giant{margin:0 auto;width:min(90vw,900px)}.love-giant .track{background:#ffffffc7;border:1px solid #1013181f;border-radius:999px;box-shadow:inset 0 2px 0 #00000008;height:clamp(22px,5vw,36px);width:100%}.love-giant .fill{animation:lovePulse 2.2s ease-in-out infinite alternate;background:linear-gradient(90deg,var(--mono-c),var(--mono-b));border-right:1px solid #10131824;bottom:0;box-shadow:0 0 32px color-mix(in oklab,var(--mono-b) 60%,#0000);left:0;position:absolute;top:0;width:130%}@keyframes lovePulse{0%{filter:saturate(1);transform:scaleX(1)}to{filter:saturate(1.06);transform:scaleX(1.03)}}.love-giant .shine{animation:shineSweep 1.9s linear infinite;background-image:linear-gradient(120deg,#fff0,#ffffff61 48%,#fff0);inset:0;mix-blend-mode:screen;position:absolute}@keyframes shineSweep{0%{transform:translateX(-60%)}to{transform:translateX(60%)}}.love-giant .note{font-size:clamp(11px,2.6vw,14px);margin-top:8px;opacity:.75}.love-giant .note,.slides-hero-hint{color:#2d3440;color:var(--ink2,#2d3440)}.slides-hero-hint{font-size:12px;margin-top:clamp(12px,3vw,18px);opacity:.7;-webkit-user-select:none;user-select:none}.slides-hero-cta{margin-top:clamp(14px,3.2vw,20px)}.btn.big{border-radius:12px;font-size:14px;padding:12px 18px}.slides-edge-left,.slides-edge-right{bottom:0;position:absolute;top:0;width:16%}.slides-edge-left{left:0}.slides-edge-right{right:0}@media (max-width:520px){.slides-edge-left,.slides-edge-right{width:22%}}.love-giant{grid-gap:12px;display:grid;gap:12px;justify-items:center}.love-giant .track{background:#ffffff26;border-radius:16px;height:32px;overflow:hidden;position:relative;width:80%}.love-giant .fill{background:linear-gradient(90deg,#ff7aa2,var(--mono-b));background:linear-gradient(90deg,var(--accent),var(--mono-b));border-radius:16px;height:100%}.love-giant .overflow-glow{animation:pulse 2.5s infinite;background:radial-gradient(circle at 50% 50%,#ff7aa2 0,#0000 70%);background:radial-gradient(circle at 50% 50%,var(--accent) 0,#0000 70%);inset:-20% -10%;opacity:.25;position:absolute}.love-giant .note{color:var(--ink2);font-size:14px;opacity:.8}@keyframes pulse{0%,to{opacity:.25}50%{opacity:.55}}.presents-wrap{display:grid;min-height:calc(100vh - 64px);overflow:hidden;place-items:center;position:relative;width:100%}@media (max-width:480px){.presents-wrap{min-height:calc(100vh - 56px)}}.presents-bg{animation:presentsFloat 14s ease-in-out infinite alternate;background:radial-gradient(1200px 800px at 15% -10%,#ffe7f0 0,#0000 60%),radial-gradient(1100px 700px at 110% 90%,#e8f3ff 0,#0000 60%),linear-gradient(160deg,#fff6fb,#f4f9ff);filter:saturate(108%) contrast(104%) blur(8px);inset:-10%;position:absolute;z-index:0}@keyframes presentsFloat{0%{transform:scale(1.04) translateZ(0) rotate(.2deg)}to{transform:scale(1.12) translate3d(-1%,-1%,0) rotate(.8deg)}}.presents-grain{animation:presentsGrain 1.6s steps(2) infinite;background-image:radial-gradient(circle at 14% 22%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 82% 72%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 48% 88%,#0000002e 0 1px,#0000 1px),radial-gradient(circle at 60% 16%,#0000002e 0 1px,#0000 1px);background-size:3px 3px,3px 3px,3px 3px,3px 3px;inset:0;mix-blend-mode:overlay;opacity:.12;pointer-events:none;position:absolute;z-index:1}@keyframes presentsGrain{0%{transform:translate(0)}to{transform:translate(-2%,-1%)}}.presents-inner{padding:clamp(12px,4vw,24px);position:relative;width:min(96vw,1100px);z-index:2}.presents-head{margin-bottom:clamp(10px,3vw,18px);text-align:center}.presents-title{background:linear-gradient(92deg,#111,#333);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(26px,6.8vw,56px);font-weight:900;letter-spacing:.3px;line-height:1.02;margin:0 0 6px;text-shadow:0 2px 28px #ffffff40}.presents-sub{color:#6b7686;color:var(--muted);font-size:clamp(12px,2.8vw,16px);margin:0}.presents-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:980px){.presents-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.presents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.presents-grid{grid-template-columns:1fr}}.gift{background:#fff;border:1px solid #1218261f;border:1px solid var(--line);border-radius:18px;color:inherit;display:grid;isolation:isolate;min-height:180px;overflow:hidden;place-items:center;position:relative;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;will-change:transform,box-shadow}.gift:hover{box-shadow:0 20px 40px #191e3c26;transform:translateY(-2px)}.gift:active{transform:translateY(0)}.gift-bg{animation:giftFloat 10s ease-in-out infinite alternate;background:radial-gradient(600px 400px at 20% 10%,#fee7f2 0,#0000 60%),radial-gradient(600px 400px at 90% 90%,#fcc5e0 0,#0000 60%),linear-gradient(160deg,#fdedf5,#fff);background:radial-gradient(600px 400px at 20% 10%,hsl(var(--gift-hue,330) 92% 95%) 0,#0000 60%),radial-gradient(600px 400px at 90% 90%,hsl(var(--gift-hue,330) 90% 88%) 0,#0000 60%),linear-gradient(160deg,hsl(var(--gift-hue,330) 80% 96%),#fff);filter:blur(10px) saturate(110%);inset:-20%;position:absolute;z-index:0}@keyframes giftFloat{0%{transform:scale(1.05) translateZ(0)}to{transform:scale(1.12) translate3d(-1%,-1%,0)}}.gift-face{padding:18px 14px;position:relative;text-align:center;z-index:1}.gift-emoji{font-size:clamp(24px,5.8vw,40px);margin-bottom:6px}.gift-title{font-size:clamp(16px,3.8vw,20px);font-weight:800;letter-spacing:.2px}.gift-sub{color:#6b7686;color:var(--muted);font-size:clamp(12px,2.8vw,14px);margin-top:6px}.presents-footer{display:grid;margin-top:clamp(16px,4vw,24px);place-items:center}.present-fab{background:#ff7aa2;background:var(--accent);border-radius:50%;bottom:20px;box-shadow:0 6px 20px #00000040;color:#fff;font-size:28px;padding:12px 14px;position:fixed;right:20px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease;z-index:1000}.present-fab:hover{box-shadow:0 8px 24px #00000059;transform:scale(1.1)}.floating-present{animation:present-bob 2.5s ease-in-out infinite;background:none;border:none;bottom:20px;cursor:pointer;font-size:3.5rem;position:fixed;right:20px;transition:transform .2s ease;z-index:1000}.floating-present:hover{transform:scale(1.1)}@keyframes present-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}
/*# sourceMappingURL=main.ad0ea414.css.map*/