@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(./playfair-display-cyrillic-600-normal-oLY6jnZ7.woff2)format("woff2"),url(./playfair-display-cyrillic-600-normal-DbWAkkgN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(./playfair-display-vietnamese-600-normal-ICsRR-qJ.woff2)format("woff2"),url(./playfair-display-vietnamese-600-normal-BPJkAZPN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(./playfair-display-latin-ext-600-normal-CEjQclLc.woff2)format("woff2"),url(./playfair-display-latin-ext-600-normal-BumBfC1v.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(./playfair-display-latin-600-normal-CZLGqjJe.woff2)format("woff2"),url(./playfair-display-latin-600-normal-CxxueQ0Z.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(./playfair-display-cyrillic-700-normal-Dw3uKy19.woff2)format("woff2"),url(./playfair-display-cyrillic-700-normal-Dk1mTcxf.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(./playfair-display-vietnamese-700-normal-CaKJSIny.woff2)format("woff2"),url(./playfair-display-vietnamese-700-normal-Cr1rw0mr.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(./playfair-display-latin-ext-700-normal-C58ejOkc.woff2)format("woff2"),url(./playfair-display-latin-ext-700-normal-D5HUU8GT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(./playfair-display-latin-700-normal-CuDiGg7c.woff2)format("woff2"),url(./playfair-display-latin-700-normal-Bc_1Q1cG.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:600;src:url(./playfair-display-cyrillic-600-italic-DsJAm2wE.woff2)format("woff2"),url(./playfair-display-cyrillic-600-italic-D0MPwuIc.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:600;src:url(./playfair-display-vietnamese-600-italic-CM5tQ_QU.woff2)format("woff2"),url(./playfair-display-vietnamese-600-italic-DzX7eaGQ.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:600;src:url(./playfair-display-latin-ext-600-italic-Bg2sus4m.woff2)format("woff2"),url(./playfair-display-latin-ext-600-italic-Bkjhfatk.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:600;src:url(./playfair-display-latin-600-italic-Bvp5b4iR.woff2)format("woff2"),url(./playfair-display-latin-600-italic-BFV_U8S6.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-cyrillic-ext-400-normal-CKQhgFwn.woff2)format("woff2"),url(./great-vibes-cyrillic-ext-400-normal-CzcHves0.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-cyrillic-400-normal-C-wcqNJs.woff2)format("woff2"),url(./great-vibes-cyrillic-400-normal-DtFXCWjq.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-greek-ext-400-normal-Caxd-0sC.woff2)format("woff2"),url(./great-vibes-greek-ext-400-normal-I8uMZwKr.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-vietnamese-400-normal-a2O3jU53.woff2)format("woff2"),url(./great-vibes-vietnamese-400-normal-Cxbm9Uac.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-ext-400-normal-CsjMq8GN.woff2)format("woff2"),url(./great-vibes-latin-ext-400-normal-wh4xxCIu.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-400-normal-q5-78SH_.woff2)format("woff2"),url(./great-vibes-latin-400-normal-BAZ173uY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(./nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(./nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(./nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(./nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(./nunito-latin-400-normal-DKg4f3fz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(./nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(./nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(./nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(./nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(./nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(./nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(./nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(./nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(./nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(./caveat-cyrillic-ext-700-normal-CrK2-ngJ.woff2)format("woff2"),url(./caveat-cyrillic-ext-700-normal-DjFGiEhD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(./caveat-cyrillic-700-normal-BIyejhEL.woff2)format("woff2"),url(./caveat-cyrillic-700-normal-Bhcx9qBB.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(./caveat-latin-ext-700-normal-DFbRgDry.woff2)format("woff2"),url(./caveat-latin-ext-700-normal-DjJQd59I.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(./caveat-latin-700-normal-D8_1Nw6V.woff2)format("woff2"),url(./caveat-latin-700-normal-cPyBTTZN.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--orange:#c50;--gold:#e3a857;--cranberry:#900;--brown:#6e473b;--linen:#fdfbf7;--cream:#fbf3e4;--cream-soft:#fbf3e4e6;--ink:#3a2418;--pill-1:#e07a2a;--pill-2:#f2c46d;--glass:#46281857;--halo:0 1px 2px #28140abf, 0 0 18px #28140a8c;--font-display:"Playfair Display", Georgia, serif;--font-script:"Great Vibes", "Playfair Display", cursive;--font-ui:"Nunito", system-ui, sans-serif;--font-hand:"Caveat", "Nunito", cursive;--ease-out:cubic-bezier(.16, 1, .3, 1);--tb:0px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:#2a1a12;height:100%;margin:0;overflow:hidden}body{font-family:var(--font-ui);color:var(--cream);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#scene{left:0;right:0;top:var(--tb);width:100%;height:calc(100% - var(--tb));touch-action:none;outline:none;display:block;position:fixed}#ui{inset:0;top:var(--tb);height:calc(100% - var(--tb));pointer-events:none;position:fixed;transform:translateZ(0)}#ui>*{pointer-events:auto}[hidden]{display:none!important}button{font:inherit;color:inherit;cursor:pointer}input,textarea{font:inherit}.display{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;overflow-wrap:break-word;margin:0;font-weight:700;line-height:1.08}.eyebrow{font:800 .7rem/1 var(--font-ui);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);text-shadow:var(--halo);align-items:center;gap:8px;margin:0 0 .65rem;display:inline-flex}.eyebrow:before{content:"🍁";letter-spacing:0;font-size:.85rem}.eyebrow:empty:before{content:none}.hand{font-family:var(--font-hand);font-weight:700}.script{font-family:var(--font-script);font-weight:400}.screen{place-items:center;padding:24px;display:grid;position:fixed;inset:0}#loader{z-index:50;transition:opacity .9s var(--ease-out);background:radial-gradient(90% 60% at 30% 100%,#cc55008c,#0000 70%),linear-gradient(#3a2418,#5a3424)}#loader.done{opacity:0;pointer-events:none}.loader-inner{justify-items:center;gap:18px;display:grid}.loader-ring{width:112px;height:112px;position:relative}.loader-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.loader-ring circle{fill:none;stroke-width:3px}.loader-ring .track{stroke:#ffffff24}.loader-ring .bar{stroke:var(--gold);stroke-linecap:round;stroke-dasharray:327;stroke-dashoffset:327px;transition:stroke-dashoffset .4s var(--ease-out)}.loader-pct{font:700 1.4rem var(--font-display);place-items:center;display:grid;position:absolute;inset:0}.loader-text{font:700 1.6rem var(--font-hand);opacity:.9;margin:0}.float-type{isolation:isolate;color:var(--cream);text-shadow:var(--halo);position:relative}.float-type:before{content:"";z-index:-1;pointer-events:none;-webkit-backdrop-filter:blur(9px)saturate(1.1);background:radial-gradient(closest-side,#2d180c6b,#2d180c29 62%,#0000);position:absolute;inset:-38px -56px;-webkit-mask-image:radial-gradient(closest-side,#000 52%,#0000);mask-image:radial-gradient(closest-side,#000 52%,#0000)}.float-type .display{background:linear-gradient(100deg,#fff8ec,#f9e2b8 60%,#f2c46d);color:#0000;text-shadow:none;filter:drop-shadow(0 2px 10px #28140ab3);-webkit-background-clip:text;background-clip:text}#intro{pointer-events:none;padding:0;display:block}.intro-float{text-align:center;pointer-events:auto;will-change:transform;width:min(580px,100vw - 32px);animation:fade-in 1.6s var(--ease-out) both;position:absolute;top:0;left:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.intro-float h1{font-size:clamp(2.2rem,6vw,4rem)}.intro-float .family{font-family:var(--font-script);background:linear-gradient(100deg,#ffd9a0,#f2a04e);color:#0000;-webkit-background-clip:text;background-clip:text;padding:0 .1em;font-size:1.3em;font-weight:400;line-height:1.15;display:block}.rotating{color:var(--cream);margin:.3rem 0 0;font-size:2rem}.hand-word{color:#ffc98a;text-align:left;min-width:4ch;transition:opacity .35s, transform .35s var(--ease-out);display:inline-block}.hand-word.out{opacity:0;transform:translateY(-8px)rotate(-3deg)}.intro-who{font:600 1.05rem var(--font-ui);color:var(--cream-soft);margin:10px 0 0}.hint{opacity:.85;margin:10px 0 0;font-size:.82rem}.intro-float .btn-float{margin-top:18px}.btn-float{height:46px;font:800 .95rem/1 var(--font-ui);letter-spacing:.01em;color:#fff8ec;background:var(--glass);-webkit-backdrop-filter:blur(12px)saturate(1.3);touch-action:manipulation;transition:transform .25s var(--ease-out), box-shadow .25s var(--ease-out), background .25s;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:0 22px 0 18px;display:inline-flex;position:relative;box-shadow:0 8px 24px -10px #1e0e06a6}.btn-float.primary{color:#3a1e0e;background:linear-gradient(120deg, var(--pill-1), var(--pill-2));box-shadow:0 10px 30px -8px #e07a2abf,inset 0 1px #ffffff73}.btn-float.primary:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#f2a04659,#0000);border-radius:999px;animation:2.6s ease-in-out infinite breathe;position:absolute;inset:-10px}.btn-float:hover,.btn-float:focus-visible{outline:none;transform:translateY(-2px);box-shadow:0 14px 34px -10px #e07a2abf}.btn-float:active{transform:scale(.96)}.btn-float.big{height:56px;padding:0 30px 0 24px;font-size:1.08rem}.btn-float.small{height:38px;padding:0 16px;font-size:.85rem}.btn-float[disabled]{opacity:.45;cursor:default;transform:none}.btn-float[disabled]:before{display:none}.btn-float .spark{font-size:1.05em;animation:2.2s ease-in-out infinite twinkle;display:inline-block}.btn-float.done{color:#fff;background:#6ea05a80}@keyframes breathe{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}@keyframes twinkle{0%,to{transform:rotate(0)scale(1)}50%{transform:rotate(18deg)scale(1.18)}}#chapter{pointer-events:none;will-change:transform;z-index:2;width:max-content;max-width:min(400px,100vw - 32px);position:fixed;top:0;left:0}#chapter-card{pointer-events:auto;text-align:left;transition:opacity .45s var(--ease-out), transform .45s var(--ease-out)}#chapter.pending #chapter-card{opacity:0;pointer-events:none;transform:translateY(8px)}#chapter-card h2{font-size:clamp(1.9rem,3.3vw,2.6rem)}#chapter-card .eyebrow:empty,#chapter-card h2:empty,#chapter-card .card-body:empty{display:none}.card-body{max-width:38ch;color:var(--cream-soft);margin-top:10px;font-size:1rem;line-height:1.6}.card-body p{margin:.5rem 0 0}.card-body .hand{color:var(--cream);font-size:1.6rem;line-height:1.22}.card-body .script{color:#ffd9a0;font-size:2rem;line-height:1.1}.card-body small{color:#fbf3e4c7}.card-actions,.float-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.card-actions:empty{display:none}.reveal-in{animation:reveal .8s var(--ease-out) both}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.letter p{margin:.55rem 0 0}.letter .greet{font:700 1.7rem var(--font-hand);color:var(--cream);margin:0}.letter .sign{font:700 1.5rem var(--font-hand);margin-top:.9rem}.letter .from{font:400 2.1rem/1 var(--font-script);color:#ffd9a0;margin-top:.15rem}.details{gap:10px;margin-top:4px;display:grid}.details .big-day{font:700 clamp(1.7rem, 3.6vw, 2.3rem)/1.05 var(--font-display);color:#ffe2b0}.details .row{grid-template-columns:1.7em 1fr;align-items:start;gap:6px;font-size:1rem;display:grid}.details .row b{color:var(--cream);font-weight:800}.details .ico{font-size:1.15rem;line-height:1.4}.headcount{font:800 .86rem var(--font-ui);color:var(--cream-soft);flex-wrap:wrap;gap:6px 14px;margin-top:10px;display:flex}.headcount span{align-items:center;gap:6px;display:inline-flex}.headcount i{border-radius:50%;width:9px;height:9px;display:inline-block}.names{scrollbar-width:thin;flex-wrap:wrap;gap:8px;max-height:min(42vh,330px);margin-top:12px;padding:4px 2px 8px;display:flex;overflow:auto}.name-chip{height:40px;font:800 .92rem var(--font-ui);color:#fff8ec;background:var(--glass);-webkit-backdrop-filter:blur(10px);transition:transform .2s var(--ease-out), background .2s;border:0;border-radius:999px;align-items:center;gap:7px;padding:0 14px;display:inline-flex;box-shadow:0 6px 18px -10px #140a04b3}.name-chip:hover{background:#cc55008c;transform:translateY(-2px)}.name-chip.taken{opacity:.55;cursor:default}.name-chip.taken:hover{background:var(--glass);transform:none}.name-chip.mine{background:linear-gradient(120deg, var(--pill-1), var(--pill-2));color:#3a1e0e}.name-chip small{opacity:.85;font-weight:600}.rsvp{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.answer{font:800 .92rem var(--font-ui);border-radius:999px;align-items:center;gap:8px;margin-top:10px;padding:8px 14px;display:inline-flex}.answer.yes{background:#6ea05a80}.answer.no{background:#99000073}.answer.wait{background:var(--glass)}.thanks-field{resize:none;width:min(360px,100%);min-width:min(260px,100%);min-height:64px;font:700 1.45rem/1.2 var(--font-hand);color:#fff8ec;-webkit-backdrop-filter:blur(10px);background:#4628186b;border:0;border-radius:18px;outline:none;margin-top:8px;padding:10px 14px;display:block;box-shadow:inset 0 0 0 1.5px #f2c46d59}.thanks-field::placeholder{color:#fbf3e48c}.thanks-field:focus{box-shadow:inset 0 0 0 2px var(--gold)}.field-count{opacity:.7;margin-top:4px;font-size:.75rem;display:block}.dishes{scrollbar-width:thin;scroll-snap-type:x proximity;flex-wrap:nowrap;gap:7px;max-width:min(380px,100%);margin-top:10px;padding:2px 2px 8px;display:flex;overflow-x:auto}.dish-chip{scroll-snap-align:start;white-space:nowrap;min-height:36px;font:700 .86rem var(--font-ui);color:#fff8ec;background:var(--glass);-webkit-backdrop-filter:blur(10px);text-align:left;border:0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:6px 13px;display:inline-flex}.dish-chip.mine{background:linear-gradient(120deg, var(--pill-1), var(--pill-2));color:#3a1e0e}.dish-chip.taken{opacity:.6;cursor:default}.dish-chip small{opacity:.8;font-weight:600}.who-switch{font:700 .8rem var(--font-ui);color:var(--cream-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.who-switch button{height:30px;font:800 .8rem var(--font-ui);color:#fff8ec;background:var(--glass);border:0;border-radius:999px;padding:0 12px}.who-switch button.on{background:linear-gradient(120deg, var(--pill-1), var(--pill-2));color:#3a1e0e}#dock{left:50%;bottom:max(12px, env(safe-area-inset-bottom));z-index:6;width:min(720px,100vw - 16px);animation:rise .5s var(--ease-out) both;gap:8px;display:grid;position:fixed;transform:translate(-50%)}@keyframes rise{0%{opacity:0;transform:translate(-50%,16px)}}.dock-tabs{scrollbar-width:none;gap:6px;padding:2px 4px 4px;display:flex;overflow-x:auto}.dock-tabs::-webkit-scrollbar{display:none}.dock-tab{height:34px;font:800 .82rem var(--font-ui);color:#fff8ec;-webkit-backdrop-filter:blur(12px);background:#3c201280;border:0;border-radius:999px;flex:none;padding:0 14px}.dock-tab.on{background:linear-gradient(120deg, var(--pill-1), var(--pill-2));color:#3a1e0e}.dock-opts{-webkit-backdrop-filter:blur(14px)saturate(1.2);scrollbar-width:thin;scroll-snap-type:x proximity;background:#2d180c6b;border-radius:22px;gap:8px;padding:8px 6px 10px;display:flex;overflow-x:auto}.opt{width:70px;font:700 .7rem var(--font-ui);color:#fff8ec;scroll-snap-align:center;transition:transform .2s var(--ease-out), background .2s;background:#ffffff14;border:0;border-radius:16px;flex:none;justify-items:center;gap:3px;padding:8px 4px 6px;display:grid}.opt .em{font-size:1.7rem;line-height:1}.opt.on{box-shadow:inset 0 0 0 2px var(--gold);background:#f2c46d66;transform:translateY(-2px)}.swatch{scroll-snap-align:center;width:46px;height:46px;transition:transform .2s var(--ease-out);border:3px solid #ffffff40;border-radius:50%;flex:none;box-shadow:0 4px 12px -4px #00000080}.swatch.on{box-shadow:0 0 0 3px var(--gold);border-color:#fff8ec;transform:scale(1.12)}.dock-row{justify-content:center;gap:8px;display:flex}.dock-row .btn-float{height:42px}.bubble{z-index:3;pointer-events:none;max-width:min(300px,74vw);color:var(--ink);will-change:transform;background:#fdfbf7f0;border-radius:20px;padding:12px 16px 13px;transition:opacity .3s;position:fixed;top:0;left:0;box-shadow:0 14px 30px -12px #1e0e0699}.bubble:after{content:"";background:inherit;border-radius:3px;width:18px;height:18px;position:absolute;bottom:-9px;left:50%;transform:translate(-50%)rotate(45deg)}.bubble .b-name{font:800 .74rem var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--orange);display:block}.bubble .b-text{font:700 1.35rem/1.15 var(--font-hand);margin-top:3px;display:block}.bubble .b-meta{font:700 .78rem var(--font-ui);color:var(--brown);margin-top:4px;display:block}.bubble.out{opacity:0}#nav{left:50%;bottom:max(14px, env(safe-area-inset-bottom));width:min(460px,100% - 24px);text-shadow:var(--halo);align-items:center;gap:14px;display:flex;position:fixed;transform:translate(-50%)}.nav-btn{color:#fff8ec;background:var(--glass);-webkit-backdrop-filter:blur(12px)saturate(1.3);width:48px;height:48px;transition:transform .25s var(--ease-out), opacity .25s;border:0;border-radius:50%;flex:none;place-items:center;font-size:1.7rem;display:grid;box-shadow:0 8px 24px -10px #1e0e06b3}.nav-btn.primary{color:#3a1e0e;background:linear-gradient(120deg, var(--pill-1), var(--pill-2))}.nav-btn:hover{transform:scale(1.1)}.nav-btn:active{transform:scale(.92)}.nav-btn:disabled{opacity:.25;cursor:default;transform:none}.nav-mid{flex:1;justify-items:center;gap:7px;min-width:0;display:grid}.nav-title{font:italic 600 1.12rem var(--font-display);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.nav-dots{gap:4px;width:100%;display:flex}.nav-dots i{cursor:pointer;background:#ffffff40;border-radius:3px;flex:1;height:3px;transition:background .3s}.nav-dots i.done{background:#f2c46dbf}.nav-dots i.on{background:linear-gradient(90deg, var(--pill-1), var(--pill-2));box-shadow:0 0 10px #f2a046cc}.nav-count{display:none}body.dressing #nav,body.dressing #scene-logo,body.in-corner #scene-logo{opacity:0;pointer-events:none;transition:opacity .3s}#topbar{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));z-index:4;gap:8px;display:flex;position:fixed}.icon-btn{color:#fff8ec;background:var(--glass);-webkit-backdrop-filter:blur(12px);width:44px;height:44px;transition:transform .2s var(--ease-out);border:0;border-radius:50%;place-items:center;font-size:1.15rem;display:grid}.icon-btn:hover{transform:scale(1.1)}.brand-eyebrow img{width:auto;height:20px;display:block}.float-type .eyebrow.brand-eyebrow:before{content:none}#scene-logo{z-index:2;left:50%;top:calc(max(14px, env(safe-area-inset-top)) + 54px);opacity:.95;pointer-events:none;filter:drop-shadow(0 2px 6px #1e0e0699);width:auto;height:clamp(22px,5.6vw,32px);transition:opacity .5s;position:fixed;transform:translate(-50%)}body.reading #scene-logo,body.card-high #scene-logo{opacity:0}.sheet{-webkit-backdrop-filter:blur(4px);animation:fade .4s var(--ease-out) both;z-index:20;background:#1e100880;grid-template-columns:minmax(0,1fr);place-items:center;padding:16px;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.sheet>*{justify-self:center;min-width:0;max-width:100%}.close{position:absolute;top:12px;right:12px}.credits{width:min(640px,100%);max-height:80vh;color:var(--cream);background:#301c10e6;border-radius:26px;padding:34px 32px;position:relative;overflow:auto;box-shadow:0 30px 80px -20px #0a0402cc}.credits h2{margin-bottom:8px;font-size:2rem}.credits h3{font:800 .76rem var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:22px 0 8px}.credits ul{color:var(--cream-soft);margin:0;padding-left:18px;font-size:.9rem;line-height:1.55}.credits a{color:#ffc98a}.credits .lede{color:var(--cream-soft);line-height:1.6}.guests-panel{width:min(720px,100%);max-height:min(88vh,900px);color:var(--cream);background:#301c10f0;border-radius:26px;padding:26px 22px 20px;position:relative;overflow:auto;box-shadow:0 30px 80px -20px #0a0402cc}.guests-panel h2{font-size:1.9rem}.guests-panel .lede{color:var(--cream-soft);margin:6px 0 0;font-size:.92rem;line-height:1.5}.gp-section{margin-top:18px}.gp-section h3{font:800 .74rem var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 8px}.gp-rows{gap:6px;display:grid}.gp-row{background:#ffffff0d;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;padding:6px 6px 6px 8px;display:grid}.gp-row input[type=text]{width:100%;min-width:0;height:36px;font:700 .95rem var(--font-ui);color:#fff8ec;background:#ffffff1a;border:0;border-radius:10px;outline:none;padding:0 10px}.gp-row input[type=text]:focus{box-shadow:inset 0 0 0 2px var(--gold)}.seg{background:#ffffff1a;border-radius:10px;display:inline-flex;overflow:hidden}.seg button{min-width:36px;height:36px;font:800 .78rem var(--font-ui);color:#fff8ecbf;background:0 0;border:0;padding:0 9px}.seg button.on{background:linear-gradient(120deg, var(--pill-1), var(--pill-2));color:#3a1e0e}.gp-x{color:#fff;background:#99000059;border:0;border-radius:10px;width:36px;height:36px;font-weight:800}.gp-status{font:700 .76rem var(--font-ui);color:var(--cream-soft);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px 10px;padding:0 4px 2px;display:flex}.gp-status .tag{background:#ffffff14;border-radius:999px;padding:3px 8px}.gp-status .tag.yes{background:#6ea05a73}.gp-status .tag.no{background:#99000073}.gp-status button{height:26px;font:800 .72rem var(--font-ui);color:#fff8ec;background:#ffffff1f;border:0;border-radius:999px;padding:0 10px}@media (max-width:460px){.gp-row{grid-template-columns:auto auto minmax(0,1fr) auto}.gp-row input[type=text]{grid-area:1/1/auto/4}.gp-row .gp-x{grid-area:1/4}.gp-row .seg{grid-row:2}.gp-row .gp-status{grid-row:3}}.gp-add{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.gp-paste{width:100%;min-height:90px;font:600 .92rem/1.4 var(--font-ui);color:#fff8ec;resize:vertical;background:#ffffff14;border:0;border-radius:14px;outline:none;margin-top:8px;padding:10px 12px}.toggle{font:700 .92rem var(--font-ui);background:#ffffff0d;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.toggle+.toggle{margin-top:6px}.toggle small{color:var(--cream-soft);margin-top:2px;font-size:.78rem;font-weight:600;display:block}.switch{background:#ffffff2e;border:0;border-radius:999px;flex:none;width:50px;height:30px;transition:background .2s;position:relative}.switch:after{content:"";width:24px;height:24px;transition:transform .25s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch[aria-checked=true]{background:linear-gradient(120deg, var(--pill-1), var(--pill-2))}.switch[aria-checked=true]:after{transform:translate(20px)}.dish-edit{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.dish-edit span{height:32px;font:700 .84rem var(--font-ui);background:#ffffff1a;border-radius:999px;align-items:center;gap:4px;padding:0 4px 0 12px;display:inline-flex}.dish-edit span button{color:#fff;background:#ffffff26;border:0;border-radius:50%;width:24px;height:24px;font-weight:800}.dish-add{gap:6px;margin-top:8px;display:flex}.dish-add input{min-width:0;height:38px;font:700 .92rem var(--font-ui);color:#fff8ec;background:#ffffff1a;border:0;border-radius:12px;outline:none;flex:1;padding:0 12px}.gp-foot{background:linear-gradient(#301c1000,#301c10 30%);flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:18px -22px -20px;padding:12px 22px 16px;display:flex;position:sticky;bottom:-20px}.gp-count{font:700 .84rem var(--font-ui);color:var(--cream-soft);align-self:center;margin-right:auto}#viewfinder{z-index:5;pointer-events:none;animation:fade .5s var(--ease-out) both;position:fixed;inset:0}.vf-frame{width:var(--vfw,80vw);height:var(--vfh,60vh);border-radius:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #140a0461}.vf-frame i{filter:drop-shadow(0 0 4px #140a04e6);border:0 solid #fffaf0f2;width:34px;height:34px;position:absolute}.vf-frame i:first-child{border-top-width:3px;border-left-width:3px;border-top-left-radius:8px;top:-2px;left:-2px}.vf-frame i:nth-child(2){border-top-width:3px;border-right-width:3px;border-top-right-radius:8px;top:-2px;right:-2px}.vf-frame i:nth-child(3){border-bottom-width:3px;border-left-width:3px;border-bottom-left-radius:8px;bottom:-2px;left:-2px}.vf-frame i:nth-child(4){border-bottom-width:3px;border-right-width:3px;border-bottom-right-radius:8px;bottom:-2px;right:-2px}.vf-count{font:700 clamp(5rem, 22vw, 11rem)/1 var(--font-display);color:#fff8ec;text-shadow:0 6px 30px #140a04b3;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vf-count.pop{animation:count-pop .9s var(--ease-out) both}@keyframes count-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(1.6)}30%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.85)}}.vf-controls{left:0;right:0;bottom:calc(max(26px, env(safe-area-inset-bottom)) + 10px);pointer-events:none;justify-items:center;gap:12px;display:grid;position:absolute}.vf-hint{font:700 1.6rem var(--font-hand);text-align:center;margin:0;padding:0 16px}.vf-shutter-wrap{pointer-events:auto;position:relative}.vf-shutter{width:78px;height:78px;transition:transform .15s var(--ease-out);background:0 0;border:4px solid #fff8ec;border-radius:50%;padding:5px;box-shadow:0 0 0 6px #fff8ec2e,0 8px 26px #140a0499}.vf-shutter span{background:radial-gradient(circle at 35% 30%,#ffe2b0,#e07a2a);border-radius:50%;width:100%;height:100%;display:block}.vf-shutter:hover{transform:scale(1.06)}.vf-shutter:active{transform:scale(.9)}.vf-pointer{filter:drop-shadow(0 4px 10px #140a04b3);pointer-events:none;font-size:2.4rem;animation:1.1s ease-in-out infinite tap;position:absolute;top:100%;left:50%;transform:translate(-30%,4px)}@keyframes tap{0%,to{transform:translate(-30%,14px)}50%{transform:translate(-30%,-6px)scale(.92)}}#viewfinder.shot .vf-controls{opacity:0;transition:opacity .2s}#finale{pointer-events:none;align-items:start;padding-top:11vh}.finale-card{pointer-events:auto;text-align:center;animation:reveal 1.4s var(--ease-out) both}.finale-title{padding:0 12px;font-size:clamp(2.4rem,7.4vw,5.2rem)}.finale-title .fam{font-family:var(--font-script);font-size:.85em;font-weight:400;display:block}.finale-sub{margin:8px 0 0;font-size:2rem}.finale-card .float-actions{justify-content:center}body.ui-hidden #finale,body.ui-hidden #nav,body.ui-hidden #topbar,body.ui-hidden #chapter,body.ui-hidden #toast,body.ui-hidden .owner-bar,body.ui-hidden #bubble{transition:opacity .4s;opacity:0!important;pointer-events:none!important}.ui-show{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));z-index:6;height:40px;font:800 .85rem var(--font-ui);color:#fff8ec;opacity:.8;background:var(--glass);-webkit-backdrop-filter:blur(12px);border:0;border-radius:999px;padding:0 16px;position:fixed}.hud-banner{z-index:8;text-align:center;pointer-events:none;width:max-content;max-width:92vw;animation:.7s cubic-bezier(.2,1.6,.4,1) both banner-in;position:fixed;top:26%;left:50%;transform:translate(-50%)}.hud-banner .hb-title{font:700 clamp(2.2rem, 7vw, 4.4rem)/1.05 var(--font-display);background:linear-gradient(100deg,#fff8ec,#ffd9a0 55%,#f2a04e);color:#0000;filter:drop-shadow(0 4px 16px #1e0e06cc);-webkit-background-clip:text;background-clip:text;margin:0}.hud-banner .hb-sub{font:700 1.7rem var(--font-hand);color:var(--cream);text-shadow:var(--halo);margin:8px 0 0}.hud-banner.out{opacity:0;transition:opacity .6s,transform .6s;transform:translate(-50%,-12px)}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,20px)scale(.6)}}.pull-meter{z-index:6;background:#fff3;border-radius:99px;width:min(280px,70vw);height:10px;position:fixed;bottom:120px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 0 12px #140a0499}.pull-meter i{background:linear-gradient(90deg, var(--gold), var(--orange));width:0;height:100%;transition:width 60ms linear;display:block}#toast{z-index:30;font:800 .92rem var(--font-ui);color:#fff8ec;-webkit-backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .4s, transform .4s var(--ease-out);text-align:center;background:#301c10d9;border-radius:999px;max-width:calc(100vw - 32px);padding:10px 18px;position:fixed;top:22px;left:50%;transform:translate(-50%,-16px)}#toast.on{opacity:1;transform:translate(-50%)}@media (max-aspect-ratio:11/10){#chapter{width:calc(100vw - 32px)}#chapter-card{text-align:center}.card-body{margin-inline:auto}.card-actions,.rsvp,.names,.who-switch{justify-content:center}.dishes{margin-inline:auto}.details .row{text-align:left}.thanks-field{margin-inline:auto}}@media (max-width:720px),(max-height:520px){#chapter{max-width:min(340px,100vw - 32px)}#chapter-card h2{font-size:1.75rem}.card-body{font-size:.95rem}.card-body .hand{font-size:1.45rem}.btn-float{font-size:.9rem}#nav{gap:10px}.float-type:before{inset:-30px -24px}.opt{width:64px}}@media (max-height:560px){#chapter-card h2{font-size:1.45rem}.card-body{font-size:.86rem;line-height:1.45}.card-actions{margin-top:10px}.btn-float{height:40px}}.editor-toolbar{z-index:40;padding:8px max(12px, env(safe-area-inset-left)) 6px;padding-top:max(8px, env(safe-area-inset-top));color:var(--cream);font:700 .84rem/1.3 var(--font-ui);background:#28160cf2;position:fixed;top:0;left:0;right:0;box-shadow:0 6px 24px -10px #0a0402cc}.tb-row{flex-wrap:wrap;gap:6px;display:flex}.editor-toolbar button{min-height:40px;font:800 .86rem var(--font-ui);color:var(--cream);background:#ffffff1f;border:0;border-radius:999px;flex:auto;padding:0 14px}.editor-toolbar button.tb-main{color:#3a1e0e;background:linear-gradient(120deg, var(--pill-1), var(--pill-2))}.editor-toolbar button.tb-quiet{color:#ffc4b0;background:#ffffff0f}.editor-toolbar button:disabled{opacity:.5}.tb-status{opacity:.85;min-height:1.3em;padding-top:4px;font-size:.76rem;display:block}.tb-question{margin:0 0 6px}.inline-editable{outline-offset:3px;cursor:text;-webkit-text-fill-color:currentColor;border-radius:4px;outline:1.5px dashed #f2c46db3}.display .inline-editable,.display.inline-editable{-webkit-text-fill-color:transparent}.inline-editable:focus{outline:2px solid var(--gold)}[data-kind=date].inline-editable{cursor:pointer}.date-picker{z-index:70;opacity:.01;position:fixed}.owner-bar{top:max(14px, env(safe-area-inset-top));left:max(14px, env(safe-area-inset-left));scrollbar-width:none;z-index:4;flex-wrap:nowrap;align-items:center;gap:6px;max-width:calc(100vw - 230px);display:flex;position:fixed;overflow-x:auto}.owner-bar::-webkit-scrollbar{display:none}body.editing .owner-bar{display:none}.mode-label{white-space:nowrap;text-overflow:ellipsis;min-width:0;font:800 .72rem var(--font-ui);color:var(--cream-soft);-webkit-backdrop-filter:blur(10px);background:#28160c80;border-radius:999px;flex:0 auto;padding:7px 12px;overflow:hidden}.mode-label:empty{display:none}.owner-btn{height:34px;font:800 .8rem var(--font-ui);color:#fff8ec;white-space:nowrap;background:var(--glass);-webkit-backdrop-filter:blur(12px);border:0;border-radius:999px;flex:none;padding:0 14px}.owner-btn.primary{color:#3a1e0e;background:linear-gradient(120deg, var(--pill-1), var(--pill-2))}@media (max-width:620px){.mode-label{display:none}.owner-bar{top:calc(max(14px, env(safe-area-inset-top)) + 52px);max-width:calc(100vw - 28px)}body:has(.owner-bar:not([hidden]) .owner-btn:not([hidden])) #scene-logo{top:calc(max(14px, env(safe-area-inset-top)) + 98px)}body:has(.owner-bar:not([hidden]) .owner-btn:not([hidden])) #finale{padding-top:calc(11vh + 36px)}}body:has(#finale:not([hidden])) #scene-logo{opacity:0}.mode-gate{z-index:60;background:radial-gradient(90% 60% at 30% 100%,#cc550080,#0000 70%),linear-gradient(#3a2418,#5a3424)}.mode-gate.quiet{pointer-events:none;background:0 0}.gate-card{text-align:center;justify-items:center;gap:14px;width:min(380px,100%);display:grid}.gate-card h1{font-size:2.3rem}.gate-card .lede{color:var(--cream-soft);margin:0;line-height:1.55}.gate-card input{width:100%;height:50px;font:700 1rem var(--font-ui);color:#fff8ec;text-align:center;background:#ffffff1f;border:0;border-radius:999px;outline:none;padding:0 18px}.gate-card input:focus{box-shadow:inset 0 0 0 2px var(--gold)}.gate-status{color:#ffc4b0;min-height:1.2em;margin:0;font-size:.86rem}.share-link-dialog{width:min(480px,100vw - 32px);color:var(--cream);background:#301c10f7;border:0;border-radius:24px;padding:26px 22px 20px;box-shadow:0 30px 80px -20px #0a0402d9}.share-link-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#140a048c}.share-link-dialog h2{color:#ffe2b0;font-size:1.8rem}.share-link-dialog p{color:var(--cream-soft);font-size:.92rem;line-height:1.5}#share-url{font:700 .86rem var(--font-ui);word-break:break-all;-webkit-user-select:all;user-select:all;background:#ffffff14;border-radius:14px;margin:12px 0 14px;padding:12px 14px;display:block}.link-status{min-height:1.2em;margin:8px 0 0}@media (max-aspect-ratio:11/10){#chapter-card .card-body{overscroll-behavior:contain;scrollbar-width:thin;max-height:40vh;padding-bottom:2px;overflow-y:auto}#chapter-card.float-type:before{background:radial-gradient(closest-side,#28140aad,#28140a5c 64%,#0000)}#chapter-card .card-body.more{-webkit-mask-image:linear-gradient(#000 calc(100% - 34px),#0000);mask-image:linear-gradient(#000 calc(100% - 34px),#0000)}.letter p{font-size:.93rem;line-height:1.5}.letter .greet{font-size:1.5rem}.letter .from{font-size:1.8rem}#chapter-card h2{font-size:1.6rem}.card-actions{margin-top:12px}}#scene-hint{left:50%;bottom:calc(max(20px, env(safe-area-inset-bottom)) + 92px);z-index:6;-webkit-backdrop-filter:blur(10px);color:var(--cream);font:700 .92rem var(--font-ui);white-space:nowrap;animation:fade .35s var(--ease-out) both;background:#28160cb8;border-radius:999px;align-items:center;gap:12px;padding:8px 8px 8px 18px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 24px #140a0466}#scene-hint[hidden]{display:none}.lightbox{z-index:40;-webkit-backdrop-filter:blur(6px);animation:fade .3s var(--ease-out) both;cursor:zoom-out;background:#140a04d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lightbox img{border:10px solid #fbf6ec;border-bottom-width:34px;border-radius:4px;max-width:min(92vw,1100px);max-height:82vh;transform:rotate(-1deg);box-shadow:0 18px 60px #00000080}.lightbox .icon-btn{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));position:fixed}.lightbox.out{opacity:0;transition:opacity .25s}html.embed #owner-bar,html.embed #editor-toolbar,html.embed #toast,html.embed #scene-hint{display:none!important}
