@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-ext-400-normal-W3Dto7M0.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-400-normal-DLdKLAvx.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-400-normal-DD2KOZkl.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-400-normal-CVFrM67f.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-vietnamese-400-normal-6K-YXo6g.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-400-normal-4uxlocMh.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-ext-400-italic-BEGvmv_3.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-400-italic-C_Uk1MUY.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-cyrillic-400-italic-D3GtrbRZ.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-400-italic-AH1vqu4S.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-vietnamese-400-italic-BoXDRTEW.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-400-italic-CJpMwFnN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-ext-400-italic-BdEzgT7i.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-400-italic-CQvLaSWn.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-ext-600-normal-BMhMHfrj.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-ext-600-normal-CsIYWmWK.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-cyrillic-600-normal-C2atO-64.woff2) format("woff2"),url(/assets/cormorant-garamond-cyrillic-600-normal-FNmA3REe.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-vietnamese-600-normal-BoXdMtcr.woff2) format("woff2"),url(/assets/cormorant-garamond-vietnamese-600-normal-C4HEjEaf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:400;src:url(/assets/playfair-display-cyrillic-400-normal-CjW2EstV.woff2) format("woff2"),url(/assets/playfair-display-cyrillic-400-normal-ZiRag6zj.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-vietnamese-400-normal-BV2APVTb.woff2) format("woff2"),url(/assets/playfair-display-vietnamese-400-normal-BbvUAu4N.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-ext-400-normal-BxlSGspa.woff2) format("woff2"),url(/assets/playfair-display-latin-ext-400-normal-qdZwdvNS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:400;src:url(/assets/playfair-display-latin-400-normal-CFtfchNt.woff2) format("woff2"),url(/assets/playfair-display-latin-400-normal-DHYHbkg3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:600;src:url(/assets/playfair-display-cyrillic-600-normal-oLY6jnZ7.woff2) format("woff2"),url(/assets/playfair-display-cyrillic-600-normal-DbWAkkgN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-vietnamese-600-normal-ICsRR-qJ.woff2) format("woff2"),url(/assets/playfair-display-vietnamese-600-normal-BPJkAZPN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-ext-600-normal-CEjQclLc.woff2) format("woff2"),url(/assets/playfair-display-latin-ext-600-normal-BumBfC1v.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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(/assets/playfair-display-latin-600-normal-CZLGqjJe.woff2) format("woff2"),url(/assets/playfair-display-latin-600-normal-CxxueQ0Z.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:400;src:url(/assets/playfair-display-cyrillic-400-italic-drKdN10-.woff2) format("woff2"),url(/assets/playfair-display-cyrillic-400-italic-24vVh5t9.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/playfair-display-vietnamese-400-italic-CD15TOr5.woff2) format("woff2"),url(/assets/playfair-display-vietnamese-400-italic-Cpv4sfwY.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/playfair-display-latin-ext-400-italic-zVOgzDMq.woff2) format("woff2"),url(/assets/playfair-display-latin-ext-400-italic-CZOjvne0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:400;src:url(/assets/playfair-display-latin-400-italic-LeeEXsx5.woff2) format("woff2"),url(/assets/playfair-display-latin-400-italic-hIeePEuE.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pinyon Script;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pinyon-script-vietnamese-400-normal-D9IEVGR9.woff2) format("woff2"),url(/assets/pinyon-script-vietnamese-400-normal-DsnOr8jX.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Pinyon Script;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pinyon-script-latin-ext-400-normal-DzUoH_k9.woff2) format("woff2"),url(/assets/pinyon-script-latin-ext-400-normal-Cu_llAZZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Pinyon Script;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/pinyon-script-latin-400-normal-HCoaxbyT.woff2) format("woff2"),url(/assets/pinyon-script-latin-400-normal-3W0BoeAr.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sage-ink: #262d22;--sage-deep: #3d4836;--sage: #5d6b51;--sage-soft: #a9b59c;--paper: #f8efdc;--paper-2: #f1e3c6;--cream: #fbf5e8;--ink: #3b2a20;--ink-soft: #6b5544;--blush: #f2b9b0;--rose: #e2877c;--burgundy: #7b2433;--gold: #c19a45;--gold-bright: #e8cf8a;--font-display: "Playfair Display", "Bodoni Moda", Georgia, serif;--font-body: "Cormorant Garamond", "Cormorant", Garamond, Georgia, serif;--font-script: "Pinyon Script", "Snell Roundhand", cursive;--shadow-soft: 0 18px 50px -24px rgba(10, 14, 8, .7);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--sage-deep);color:var(--cream);font-family:var(--font-body);font-size:19px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,textarea,select{font:inherit;color:inherit}img{max-width:100%}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.1;margin:0}kbd{font-family:var(--font-body);font-size:.75em;border:1px solid currentColor;border-radius:4px;padding:0 .35em;opacity:.7;margin-left:.4em}.script{font-family:var(--font-script);font-size:2.1rem;line-height:1;color:var(--blush);margin:0}.eyebrow{font-family:var(--font-body);font-weight:600;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-bright);margin:0}.hint{font-size:.9rem;color:var(--ink-soft);font-style:italic;margin:.25rem 0 0}.error{color:#ffd2c8;font-style:italic;text-align:center}.backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.backdrop__paper{position:absolute;inset:0;background:radial-gradient(120% 80% at 50% 0%,rgba(232,207,138,.1),transparent 60%),radial-gradient(90% 70% at 50% 110%,rgba(20,24,16,.65),transparent 70%),var(--sage-deep)}.backdrop__paper:after{content:"";position:absolute;inset:0;opacity:.16;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.backdrop__vine{position:absolute;top:-18px;right:-70px;width:min(430px,34vw);opacity:.92;animation:sway 9s ease-in-out infinite alternate;transform-origin:70% 0}.backdrop__bouquet{position:absolute;left:-50px;bottom:-60px;width:min(330px,34vw);opacity:.95;transform:rotate(8deg)}.backdrop.is-dim .backdrop__bouquet{opacity:.28;transition:opacity .6s ease}.backdrop.is-quiet .backdrop__paper{background:var(--sage-deep)}@keyframes sway{0%{transform:rotate(-1.2deg)}to{transform:rotate(1.2deg)}}.petals{position:absolute;inset:0}.petal{position:absolute;top:-40px;left:calc(8% + var(--i) * 10.5%);width:14px;height:11px;border-radius:80% 0;background:linear-gradient(135deg,#fbd3cc,var(--blush));opacity:0;animation:fall calc(14s + var(--i) * 1.7s) linear infinite;animation-delay:calc(var(--i) * -2.3s)}@keyframes fall{0%{transform:translate3d(0,-5vh,0) rotate(0);opacity:0}10%{opacity:.75}to{transform:translate3d(12vw,110vh,0) rotate(540deg);opacity:0}}@media(prefers-reduced-motion:reduce){.petals,.backdrop__vine{animation:none;display:none}}.app{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:max(24px,env(safe-area-inset-top)) 16px max(32px,env(safe-area-inset-bottom))}.app--shed{justify-content:flex-start}.loading{display:grid;place-items:center;min-height:50vh}.panel{position:relative;background:linear-gradient(180deg,var(--cream),var(--paper));color:var(--ink);border-radius:6px;box-shadow:var(--shadow-soft),inset 0 0 0 1px #c19a4559}.panel .script{color:var(--rose)}.panel .eyebrow{color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:48px;padding:.6em 1.5em;border-radius:999px;border:1px solid transparent;font-family:var(--font-display);font-size:1rem;letter-spacing:.04em;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease,opacity .2s;-webkit-tap-highlight-color:transparent;white-space:nowrap}.btn:disabled{opacity:.5;cursor:default}.btn:not(:disabled):hover{transform:translateY(-1px)}.btn:focus-visible,.link:focus-visible,.chip--button:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.btn--primary{background:linear-gradient(180deg,#f6c9c0,var(--blush) 55%,#e9a69b);color:#4a1c22;box-shadow:0 10px 24px -12px #7b2433cc,inset 0 1px #fff9}.btn--ghost{background:#fbf5e80f;border-color:#e8cf8a8c;color:var(--cream)}.panel .btn--ghost{border-color:#7b243359;color:var(--burgundy);background:transparent}.btn--choice{background:var(--cream);color:var(--ink);border-color:#c19a4599;font-size:1.15rem}.btn--danger{background:transparent;color:#9b2c2c;border-color:#9b2c2c66;margin-right:auto}.btn--small{min-height:38px;padding:.35em 1.1em;font-size:.9rem}.btn--talk{min-width:220px;touch-action:none;user-select:none}.btn--talk:active{transform:scale(.97);box-shadow:0 0 0 6px #f2b9b059}.icon{width:1.15em;height:1.15em;flex:none}.link{background:none;border:0;padding:.25em 0;cursor:pointer;color:inherit;text-decoration:underline;text-decoration-color:#e8cf8a99;text-underline-offset:.25em;font-style:italic}.field{width:100%;border:1px solid rgba(107,85,68,.3);border-radius:4px;background:#fff9;color:var(--ink);padding:.6em .8em;font-size:1.05rem;transition:border-color .2s,box-shadow .2s}.field:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #c19a4540}.field--big{font-family:var(--font-display);font-size:1.6rem;text-align:center;border-width:0 0 1px;border-radius:0;background:transparent;padding:.3em .2em}.field--big:focus{box-shadow:none}textarea.field{resize:vertical;line-height:1.45}.chip{display:inline-block;font-family:var(--font-body);font-weight:600;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;padding:.2em .7em;margin-left:.6em;border-radius:999px;border:1px solid currentColor;vertical-align:middle;color:var(--rose)}.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip--button{margin:0;cursor:pointer;background:#f2b9b02e;color:var(--burgundy);border-color:#7b243340;font-family:var(--font-body);font-style:italic;font-weight:400;letter-spacing:0;text-transform:none;font-size:1rem;padding:.3em .9em}.dots:after{content:"";display:inline-block;width:1.4em;text-align:left;animation:dots 1.4s steps(4,end) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}.welcome{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(18px,3.2vh,34px);max-width:720px;width:100%}.welcome__title .script{font-size:clamp(2.2rem,6vw,3.4rem);margin-bottom:-.1em}.welcome__title h1{font-size:clamp(2.9rem,10vw,5.6rem);letter-spacing:-.01em;color:var(--cream);text-shadow:0 2px 30px rgba(0,0,0,.25)}.welcome__title .eyebrow{margin-top:.9rem}.welcome__lede{font-size:clamp(1.15rem,2.6vw,1.4rem);font-style:italic;color:#fbf5e8d9;max-width:30ch;margin:0}.welcome__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.welcome__footer{display:flex;align-items:center;gap:10px;font-style:italic;font-size:.9rem;color:#fbf5e88c}.seal{width:38px;height:38px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35));-webkit-tap-highlight-color:transparent}.fan{position:relative;width:min(440px,86vw);height:clamp(220px,34vh,330px)}.fan__card{position:absolute;left:50%;bottom:0;width:clamp(130px,22vh,200px);margin-left:calc(clamp(130px,22vh,200px)/-2);transform-origin:50% 120%;animation:float 6s ease-in-out infinite}.fan__card--0{transform:rotate(-14deg) translate(-18%);animation-delay:-1s}.fan__card--1{z-index:1;transform:translateY(-6%);animation-delay:-3s}.fan__card--2{transform:rotate(14deg) translate(18%);animation-delay:-5s}@keyframes float{0%,to{translate:0 0}50%{translate:0 -8px}}.step{width:min(560px,100%);padding:clamp(28px,6vw,48px) clamp(20px,5vw,44px);display:flex;flex-direction:column;gap:18px;text-align:center;animation:rise .5s ease both}.step:before{content:"";position:absolute;top:-14px;left:50%;width:120px;height:28px;transform:translate(-50%) rotate(-3deg);background:#e7decdbf;box-shadow:0 1px 3px #0000001f}.step h2{font-size:clamp(1.6rem,4.6vw,2.2rem);color:var(--ink)}.step__actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:4px}.choices{display:flex;flex-direction:column;gap:10px;align-items:stretch}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.shuffle{display:flex;flex-direction:column;align-items:center;gap:22px;padding:6vh 0}.shuffle__deck{position:relative;width:150px;aspect-ratio:2 / 3}.shuffle__deck img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:6px;box-shadow:0 10px 24px -10px #0009;animation:riffle 1.6s ease-in-out infinite;animation-delay:calc(var(--i) * .16s)}@keyframes riffle{0%,to{transform:translate(0) rotate(0)}30%{transform:translate(calc((var(--i) - 2) * 26px),-12px) rotate(calc((var(--i) - 2) * 7deg))}60%{transform:translate(0) rotate(0)}}.reading{width:min(1100px,100%);display:flex;flex-direction:column;align-items:center;gap:12px}.reading__question{font-family:var(--font-display);font-style:italic;font-size:clamp(1.05rem,2.2vw,1.3rem);text-align:center;color:#fbf5e8cc;margin:0;max-width:50ch}.reading__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:10px}.spread{width:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.spread__greeting{font-family:var(--font-display);font-style:italic;font-size:clamp(1.1rem,2.2vw,1.4rem);text-align:center;max-width:60ch;margin:0;animation:rise .6s ease both}.spread__cards{list-style:none;margin:0;padding:0;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,3vw,40px)}.spread__slot{display:flex;flex-direction:column;align-items:center;gap:10px;animation:deal .7s cubic-bezier(.2,.9,.3,1.15) both}@keyframes deal{0%{opacity:0;transform:translateY(-40px) rotate(-6deg) scale(.9)}to{opacity:1;transform:none}}.spread__position{margin:0;text-align:center;display:flex;flex-direction:column}.spread__position span{font-family:var(--font-script);font-size:1.6rem;line-height:1;color:var(--blush)}.spread__position small{font-style:italic;font-size:.85rem;color:#fbf5e8a6}.holo.spread__card{width:min(250px,100%,26vh)}.spread__text{width:100%;max-width:340px;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .7s ease .4s,transform .7s ease .4s}.spread__text.is-shown{opacity:1;transform:none}.spread__text h3{font-size:1.12rem;color:var(--gold-bright);letter-spacing:.04em}.spread__title{font-family:var(--font-display);font-style:italic;font-size:1.05rem;margin:.2rem 0 0;color:var(--cream)}.spread__meaning{margin:.25rem 0 0;font-size:.92rem;font-style:italic;line-height:1.35;color:#e8cf8ad9}.spread__message{margin:.3rem 0 0;font-size:1.02rem;line-height:1.42;color:#fbf5e8e6}.spread__message.is-pending{opacity:.6}.spread__finale{width:min(720px,100%);display:flex;flex-direction:column;align-items:center;gap:22px;animation:rise .8s ease both}.spread__synthesis{font-size:clamp(1.2rem,2.6vw,1.4rem);text-align:center;margin:0;line-height:1.55}.bloom{display:flex;gap:18px;align-items:center;background:linear-gradient(180deg,var(--cream),var(--paper));color:var(--ink);border-radius:6px;padding:16px 22px 16px 10px;box-shadow:var(--shadow-soft),inset 0 0 0 1px #c19a4559;max-width:560px}.bloom .eyebrow{color:var(--gold)}.bloom__sprig{width:92px;flex:none;margin:-24px 0 -18px;filter:drop-shadow(0 6px 8px rgba(0,0,0,.15))}.bloom__flower{font-family:var(--font-display);font-size:1.6rem;text-transform:capitalize;margin:.1rem 0 .15rem;color:var(--burgundy)}.bloom__why{margin:0;font-style:italic;font-size:1.05rem}.blessing{font-family:var(--font-script);font-size:clamp(1.9rem,5vw,2.6rem);color:var(--blush);text-align:center;line-height:1.25;margin:0;max-width:24ch}.lightbox{position:fixed;inset:0;z-index:50;background:#141810d1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;animation:fade .3s ease both}.lightbox__inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.lore{margin:10px auto 0;max-width:400px;display:grid;gap:8px;text-align:left}.lore div{opacity:.55}.lore div.is-drawn{opacity:1}.lore dt{font-family:var(--font-body);font-weight:600;font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-bright)}.lore dd{margin:0;font-style:italic;font-size:1rem;line-height:1.35}.holo.lightbox__card{width:min(400px,82vw,46vh)}.lightbox__caption .spread__title{font-size:1.35rem}.lightbox__close{position:absolute;top:-8px;right:-8px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(232,207,138,.6);background:var(--sage-deep);color:var(--cream);font-size:1.6rem;line-height:1;cursor:pointer;z-index:2}@keyframes fade{0%{opacity:0}}.voice{width:min(1100px,100%);display:flex;flex-direction:column;align-items:center;gap:22px}.oracle{--level: 0;display:flex;flex-direction:column;align-items:center;gap:16px;transition:transform .6s ease}.oracle__orb{position:relative;width:clamp(180px,34vh,280px);aspect-ratio:1;border-radius:50%;transform:scale(calc(1 + var(--level) * .08));transition:width .6s ease,transform .08s linear}.oracle__orb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;box-shadow:0 0 0 2px #e8cf8acc,0 0 0 9px #e8cf8a1f,0 0 calc(30px + var(--level) * 90px) calc(var(--level) * 20px) #f2b9b08c,0 20px 50px -20px #000000b3;animation:turn 60s linear infinite}.oracle__orb:after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1px dashed rgba(232,207,138,.45);animation:turn 40s linear infinite reverse}.oracle--connecting .oracle__orb{animation:breathe 2.4s ease-in-out infinite}.oracle--hearing .oracle__orb img{box-shadow:0 0 0 2px var(--gold-bright),0 0 0 9px #e8cf8a4d,0 0 60px 6px #e8cf8a73,0 20px 50px -20px #000000b3}.oracle--thinking .oracle__orb{animation:breathe 1.6s ease-in-out infinite}.oracle--ended .oracle__orb{filter:grayscale(.6) brightness(.7)}@keyframes turn{to{transform:rotate(360deg)}}@keyframes breathe{50%{transform:scale(.95);opacity:.85}}.oracle__status{margin:0;font-family:var(--font-display);font-style:italic;font-size:1.2rem;color:#fbf5e8d9}.oracle__seeker{margin:-10px 0 0;font-family:var(--font-script);font-size:2rem;color:var(--blush)}.voice.has-cards .oracle{flex-direction:row;gap:14px}.voice.has-cards .oracle__orb{width:64px}.voice.has-cards .oracle__orb:after{inset:-6px}.voice.has-cards .oracle__seeker{margin:0}.captions{width:min(680px,100%);text-align:center;min-height:3.2em}.captions__oracle{margin:0;font-size:clamp(1.15rem,2.8vw,1.45rem);font-style:italic;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.voice.has-cards .captions__oracle{-webkit-line-clamp:2;font-size:1.1rem}.captions__you{margin:6px 0 0;font-size:.95rem;color:#fbf5e899}.voice__controls{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;justify-content:center;position:sticky;bottom:max(12px,env(safe-area-inset-bottom));z-index:5;padding:10px 14px;border-radius:999px;background:#262d22bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.shed{width:min(1180px,100%);display:flex;flex-direction:column;gap:20px}.shed__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.shed__header h1{font-size:clamp(2rem,5vw,2.8rem)}.shed__header .script{font-size:1.6rem}.shed__exit{display:flex;gap:18px}.tabs{display:flex;gap:4px;background:#0000002e;padding:4px;border-radius:999px}.tabs button{border:0;background:transparent;padding:.45em 1.2em;border-radius:999px;cursor:pointer;text-transform:capitalize;font-family:var(--font-display);color:#fbf5e8bf}.tabs button.is-active{background:var(--cream);color:var(--ink)}.shed__empty{padding:32px;text-align:center}.guests{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;align-items:start}.guests__list{padding:14px;display:flex;flex-direction:column;gap:10px;position:sticky;top:16px;max-height:calc(100dvh - 32px)}.guests__tools{display:flex;gap:8px}.guests__list ul{list-style:none;margin:0;padding:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.guests__list li button{width:100%;text-align:left;border:0;background:transparent;border-radius:4px;padding:8px 10px;cursor:pointer;display:flex;flex-direction:column}.guests__list li button span{font-size:.9rem;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guests__list li button:hover,.guests__list li button.is-active{background:#f2b9b04d}.editor{display:flex;flex-direction:column;gap:20px}.editor__form,.settings{padding:22px;display:flex;flex-direction:column;gap:16px}.editor__form label,.settings label{display:flex;flex-direction:column;gap:6px}.settings fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.settings legend{margin-bottom:6px}.settings .radio{flex-direction:row;align-items:baseline;gap:10px}.settings .radio strong{text-transform:capitalize;margin-right:6px}.preview{padding:18px;display:flex;flex-direction:column;gap:12px}.preview__bar{display:flex;gap:8px}.panel .spread,.log .spread{color:var(--ink)}.panel .spread__position span{color:var(--rose)}.panel .spread__position small,.panel .spread__meaning{color:var(--ink-soft)}.panel .spread__message,.panel .spread__title,.panel .spread__text h3{color:var(--ink)}.panel .spread__text h3{color:var(--burgundy)}.panel .blessing{color:var(--rose)}.log{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.log li{padding:4px 8px}.log__row{width:100%;display:grid;grid-template-columns:180px 1fr auto;gap:12px;text-align:left;background:none;border:0;padding:10px 8px;cursor:pointer;color:var(--ink)}.log__meta{color:var(--ink-soft);font-size:.9rem}.log li .spread{padding:8px 8px 20px}@media(max-width:760px){body{font-size:18px}.spread__cards{grid-template-columns:1fr;gap:34px}.spread__slot{display:grid;grid-template-columns:38% 1fr;grid-template-areas:"pos pos" "card text";align-items:start;gap:10px 16px}.spread__position{grid-area:pos;flex-direction:row;align-items:baseline;gap:10px}.holo.spread__card{grid-area:card;width:100%}.spread__text{grid-area:text;text-align:left;max-width:none}.spread__text h3{font-size:1.1rem}.spread__message{font-size:1.05rem}.bloom{padding:14px 16px 14px 6px}.bloom__sprig{width:70px}.guests{grid-template-columns:1fr}.guests__list{position:static;max-height:40vh}.log__row{grid-template-columns:1fr auto}.log__row>span:nth-child(2){display:none}.voice__controls{border-radius:22px}.backdrop__bouquet{width:150px;left:-40px;bottom:-40px;opacity:.6}.backdrop__vine{width:52vw;right:-40px;top:-24px;opacity:.8}.welcome{padding-top:36px}.fan__card{width:min(34vw,150px);margin-left:calc(min(34vw,150px)/-2)}.fan{height:min(58vw,250px)}}@media(max-height:640px)and (min-width:761px){.fan{height:200px}}.fullscreen{position:fixed;top:max(14px,env(safe-area-inset-top));left:14px;z-index:40;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(232,207,138,.45);background:#262d228c;color:var(--cream);cursor:pointer;opacity:.7;transition:opacity .2s,background .2s;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.fullscreen:hover,.fullscreen:focus-visible{opacity:1;background:#262d22d9;outline:none}.fullscreen svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.holo{--rx: 0deg;--ry: 0deg;--mx: 50%;--my: 50%;--posx: 50%;--posy: 50%;--hyp: 0;--o: 0;--radius: 4.2% / 2.8%;--flip: 0deg;--space: 5%;position:relative;aspect-ratio:2 / 3;width:100%;perspective:900px;transform:translateZ(.1px);-webkit-tap-highlight-color:transparent;user-select:none;touch-action:pan-y;outline:none}.holo.is-hidden{--flip: 180deg}.holo[role=button]{cursor:pointer}.holo:focus-visible .holo__rotator{box-shadow:0 0 0 3px var(--gold-bright),0 22px 44px -18px #12160ebf}.holo__rotator{position:absolute;inset:0;border-radius:var(--radius);transform-style:preserve-3d;transform:rotateY(calc(var(--ry) + var(--flip))) rotateX(var(--rx));transition:transform .9s cubic-bezier(.3,1.25,.45,1);box-shadow:0 calc(10px + var(--hyp) * 8px) calc(28px + var(--hyp) * 16px) -14px #12160ebf,0 2px 6px #12160e59;will-change:transform}.holo:hover .holo__rotator,.holo.is-gyro .holo__rotator{transition:transform .12s linear}.holo__face{position:absolute;inset:0;border-radius:var(--radius);overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#2f2a1d;isolation:isolate}.holo__back{transform:rotateY(180deg)}.holo__face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.holo__front img.is-reversed{transform:rotate(180deg)}.holo__face:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px #ffecb4bf,inset 0 0 0 5px #3c280a59,inset 0 0 0 6px #e8cf8a8c,inset 0 0 36px #1e140559;z-index:5}.holo__shine{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;background-image:repeating-linear-gradient(0deg,#ff7a75 calc(var(--space) * 1),#ffed61 calc(var(--space) * 2),#a8ff61 calc(var(--space) * 3),#85fff7 calc(var(--space) * 4),#7a95ff calc(var(--space) * 5),#d875ff calc(var(--space) * 6),#ff7a75 calc(var(--space) * 7)),repeating-linear-gradient(133deg,#0e152e,#8fa3a3 3.8%,#8fc1c1,#8fa3a3 5.2%,#0e152e 10% 12%),radial-gradient(farthest-corner circle at var(--mx) var(--my),rgba(0,0,0,.1) 12%,rgba(0,0,0,.15) 20%,rgba(0,0,0,.25) 120%);background-position:0% var(--posy),var(--posx) var(--posy),center;background-size:200% 700%,300% 100%,200% 100%;background-blend-mode:screen,hue,hard-light;mix-blend-mode:color-dodge;filter:brightness(calc(.45 + var(--hyp) * .25)) contrast(1.5) saturate(1.1);opacity:calc(var(--o) * .85);-webkit-mask-image:var(--art);mask-image:var(--art);-webkit-mask-size:cover;mask-size:cover;mask-mode:luminance}.holo__shine--back{-webkit-mask-image:url(/cards/back.webp);mask-image:url(/cards/back.webp)}.holo__glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;background-image:radial-gradient(farthest-corner circle at var(--mx) var(--my),rgba(255,250,235,.75) 8%,rgba(255,245,225,.45) 22%,rgba(10,8,4,.55) 95%);mix-blend-mode:overlay;opacity:calc(var(--o) * .75)}.holo__frame{position:absolute;inset:0;z-index:4;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:5.5% 7%;container-type:inline-size}.holo__numeral,.holo__name{font-family:var(--font-display);color:#3a2716;background:linear-gradient(180deg,#fbf3df,#efdfbd);border:1px solid rgba(160,120,50,.85);box-shadow:0 0 0 2px #fbf3dfa6,0 0 0 3px #a0783299,0 4px 10px #1e140559;white-space:nowrap}.holo__numeral{font-size:max(9px,7.5cqi);letter-spacing:.12em;padding:.15em .6em;border-radius:999px}.holo__name{font-size:max(9px,8.2cqi);letter-spacing:.1em;text-transform:uppercase;padding:.35em .9em .3em;border-radius:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.holo__name.is-long{font-size:max(8px,6.4cqi);letter-spacing:.06em}@media(prefers-reduced-motion:reduce){.holo__rotator{transition:transform .3s ease}}
