@font-face{font-family:Thmanyah Sans;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-sans/woff2/thmanyah-sans-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Sans;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-sans/woff2/thmanyah-sans-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Sans;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-sans/woff2/thmanyah-sans-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Sans;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-sans/woff2/thmanyah-sans-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Sans;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-sans/woff2/thmanyah-sans-Black.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Display;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-display/woff2/thmanyah-serif-display-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Display;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-display/woff2/thmanyah-serif-display-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Display;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-display/woff2/thmanyah-serif-display-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Display;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-display/woff2/thmanyah-serif-display-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Display;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-display/woff2/thmanyah-serif-display-Black.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Text;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-text/woff2/thmanyah-serif-text-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Text;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-text/woff2/thmanyah-serif-text-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Text;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-text/woff2/thmanyah-serif-text-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Text;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-text/woff2/thmanyah-serif-text-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}@font-face{font-family:Thmanyah Serif Text;src:url(https://cdn.jsdelivr.net/gh/engdawood/thmanyah-font-web@4266a9d/fonts/thmanyah-serif-text/woff2/thmanyah-serif-text-Black.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap;unicode-range:U+6??,U+750-77F,U+8A0-8FF,U+FB50-FDFF,U+FE70-FEFF,U+20-7F,U+A0-FF,U+100-24F,U+250-2AF}.font-thmanyah-sans{font-family:Thmanyah Sans,sans-serif}.font-thmanyah-serif-display{font-family:Thmanyah Serif Display,serif}.font-thmanyah-serif-text{font-family:Thmanyah Serif Text,serif}.font-weight-light{font-weight:300}.font-weight-regular{font-weight:400}.font-weight-medium{font-weight:500}.font-weight-bold{font-weight:700}.font-weight-black{font-weight:900}:root{--bg-primary:#fcfbfa;--bg-secondary:#f7f4ee;--bg-card:#ffffffd9;--color-primary:#4c3660;--color-primary-dark:#372448;--color-primary-light:#70548a;--color-gold:#bfa163;--color-gold-light:#dfcb9f;--color-gold-dark:#987a3e;--color-gold-subtle:#bfa16326;--color-text:#3c3247;--color-text-muted:#6e647c;--color-text-soft:#948b9f;--color-border:#bfa16347;--color-border-subtle:#70548a24;--color-success:#3c7d58;--color-success-bg:#3c7d581a;--color-error:#9b3d4d;--color-error-bg:#9b3d4d1a;--font-serif:"Thmanyah Serif Display", "Thmanyah", "Noto Naskh Arabic", "Amiri", "Arial", serif;--font-serif-text:"Thmanyah Serif Text", "Thmanyah", "Noto Naskh Arabic", "Amiri", serif;--font-sans:"Thmanyah Sans", "Thmanyah", "Noto Naskh Arabic", "Arial", sans-serif;--envelope-bg:#f8f4fc;--envelope-flap-bg:#f2e9f8;--envelope-border:#70548a33;--envelope-shadow:0 16px 40px #4c36601f;--wax-seal-color:#bfa163;--wax-seal-border:#987a3e;--paper-overlay-bg:#fbf9f5;--shadow-sm:0 2px 8px #4c36600d;--shadow-md:0 6px 20px #4c366012;--shadow-lg:0 12px 35px #4c366017;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--min-touch-target:44px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;direction:rtl;width:100%;min-height:100vh;line-height:1.7;overflow-x:hidden}#root{flex-direction:column;align-items:center;width:100%;min-height:100vh;display:flex;overflow-x:hidden}.invitation-app-root{flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;display:flex;position:relative;overflow-x:hidden}h1,h2,h3{font-family:var(--font-serif);color:var(--color-primary);font-weight:700;line-height:1.35}.floral-divider{justify-content:center;align-items:center;width:100%;max-width:220px;margin:.75rem auto 1.25rem;display:flex}.divider-svg{width:100%;height:20px}.envelope-overlay{z-index:1000;background-color:var(--paper-overlay-bg,#fbf9f5);padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));justify-content:center;align-items:center;transition:opacity .5s cubic-bezier(.4,0,.2,1),visibility .5s;display:flex;position:fixed;inset:0;overflow:hidden}.envelope-overlay-fadeout{opacity:0;visibility:hidden;pointer-events:none}.envelope-overlay-bg{opacity:.45;pointer-events:none;background-image:radial-gradient(#e6ded2 .75px,#0000 .75px),radial-gradient(#dfd4c5 .75px,#fbf9f5 .75px);background-position:0 0,12px 12px;background-size:24px 24px;position:absolute;inset:0}.envelope-central-container{z-index:2;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:420px;display:flex}.envelope-wrapper{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;box-sizing:border-box;outline:none;flex-direction:column;align-items:center;width:100%;max-width:360px;padding:12px;display:flex}.envelope-wrapper:focus-visible .envelope-body{box-shadow:0 0 0 3px var(--color-gold), var(--envelope-shadow)}.envelope-perspective{perspective:1000px;justify-content:center;width:100%;display:flex}.envelope-body{background:var(--envelope-bg);border-radius:var(--radius-sm);width:clamp(270px,84vw,340px);height:clamp(175px,54vw,215px);box-shadow:var(--envelope-shadow);border:1px solid var(--envelope-border);transition:transform .3s,box-shadow .3s;position:relative;overflow:visible}.envelope-wrapper:hover:not(.envelope-opening) .envelope-body{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.envelope-interior{border-radius:var(--radius-sm);z-index:1;background:#ebe0f2;position:absolute;inset:0}.envelope-card{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:90%;height:90%;box-shadow:var(--shadow-md);z-index:2;box-sizing:border-box;text-align:center;background:#fff;justify-content:center;align-items:center;padding:1rem;transition:transform .65s cubic-bezier(.25,1,.5,1) .35s,opacity .4s;display:flex;position:absolute;top:8px;left:5%}.envelope-card-rise{z-index:6;transform:translateY(-85px)scale(1.03);box-shadow:0 20px 45px #4c366033}.envelope-card-inner{flex-direction:column;justify-content:center;align-items:center;gap:.3rem;display:flex}.card-mini-seal{border:1px dashed var(--color-gold);width:34px;height:34px;font-family:var(--font-serif);color:var(--color-gold-dark);background:var(--color-gold-subtle);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.card-mini-names{font-family:var(--font-serif);color:var(--color-primary);font-size:1.1rem;font-weight:700}.card-mini-date{color:var(--color-text-muted);font-size:.75rem}.envelope-pocket{z-index:3;pointer-events:none;border-radius:var(--radius-sm);position:absolute;inset:0;overflow:hidden}.pocket-svg{width:100%;height:100%;display:block}.envelope-flap{transform-origin:top;width:100%;height:125px;transform-style:preserve-3d;z-index:4;transition:transform .65s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0}.envelope-flap-open{z-index:1;transform:rotateX(-180deg)}.flap-svg{filter:drop-shadow(0 3px 4px #4c366014);width:100%;height:100%;display:block}.wax-seal{cursor:pointer;z-index:5;border-radius:50%;width:52px;height:52px;transition:opacity .3s;animation:2.8s ease-in-out infinite sealBreathe;position:absolute;top:118px;left:50%;transform:translate(-50%,-50%)}.wax-seal-outer-ring{background:radial-gradient(circle at 35% 35%,#f2e4c4,#c7aa70 65%,#94773d 100%);border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;box-shadow:0 4px 14px #94773d59,inset 0 1px 2px #fff9}.wax-seal-inner-ring{border:1px dashed #fff9;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.wax-seal-letters{font-family:var(--font-serif);color:#372448;text-shadow:0 1px 1px #fff6;letter-spacing:.5px;font-size:1.1rem;font-weight:700}@keyframes sealBreathe{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-50%)scale(1.04)}}.envelope-prompt{color:var(--color-primary-light);font-family:var(--font-sans);border-radius:var(--radius-full);border:1px solid var(--color-border-subtle);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffbf;align-items:center;gap:.6rem;margin-top:2rem;padding:.6rem 1.4rem;font-size:clamp(.95rem,2.5vw,1.05rem);font-weight:500;transition:opacity .3s;animation:2.4s ease-in-out infinite promptPulse;display:inline-flex}.envelope-prompt-hidden{opacity:0;pointer-events:none}.prompt-sparkle{color:var(--color-gold);font-size:.85rem}@keyframes promptPulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}.floating-audio-btn{bottom:max(1.5rem, env(safe-area-inset-bottom));left:max(1.5rem, env(safe-area-inset-left));z-index:99;width:46px;height:46px;min-width:var(--min-touch-target);min-height:var(--min-touch-target);border:1px solid var(--color-border);box-shadow:var(--shadow-md);color:var(--color-primary);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-radius:50%;justify-content:center;align-items:center;transition:all .25s;display:flex;position:fixed}.floating-audio-btn:hover,.floating-audio-btn:focus-visible{border-color:var(--color-gold);color:var(--color-primary-dark);box-shadow:var(--shadow-lg);outline:none;transform:scale(1.08)}.audio-icon{width:20px;height:20px}.hero-reveal-wrapper{width:100%;min-height:100vh;padding:max(1.5rem, env(safe-area-inset-top)) 1rem max(2rem, env(safe-area-inset-bottom));box-sizing:border-box;justify-content:center;align-items:center;transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);display:flex}.hero-reveal-hidden{opacity:0;pointer-events:none;transform:scale(.97)}.hero-reveal-visible{opacity:1;pointer-events:auto;transform:scale(1)}.hero-section{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.hero-card-frame{border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:580px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-sizing:border-box;text-align:center;background:#fffffff0;margin:auto;padding:clamp(2rem,6vw,3.5rem) clamp(1.25rem,5vw,2.5rem);position:relative}.hero-frame-border{border-radius:calc(var(--radius-lg) - 6px);pointer-events:none;border:1px dashed #bfa16359;position:absolute;inset:10px}.hero-container{flex-direction:column;align-items:center;width:100%;display:flex}.hero-monogram-container{margin-bottom:1.25rem;animation:4s ease-in-out infinite alternate floatSubtle}.hero-invitation-prefix{font-family:var(--font-serif);color:var(--color-gold-dark);letter-spacing:.5px;margin-bottom:.4rem;font-size:clamp(1.15rem,3.2vw,1.45rem)}.hero-names-wrapper{width:100%;margin:.75rem 0 1rem}.hero-couple-names{color:var(--color-primary);text-shadow:0 1px 3px #4c366014;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;font-size:clamp(2.2rem,7vw,3.6rem);display:flex}.groom-name,.bride-name{white-space:nowrap}.name-connector{color:var(--color-gold);font-size:clamp(1.6rem,5vw,2.6rem);font-style:italic;font-weight:400}.hero-reception-phrase{font-family:var(--font-serif-text);color:var(--color-text);max-width:480px;margin:.5rem auto 1.5rem;font-size:clamp(.95rem,2.7vw,1.15rem);line-height:1.8}.hero-event-details-grid{background:var(--color-gold-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;width:100%;margin-bottom:1.5rem;padding:.85rem 1.25rem;display:flex}.hero-detail-item{flex-direction:column;align-items:center;display:flex}.detail-label{color:var(--color-text-muted);margin-bottom:.15rem;font-size:.75rem;font-weight:500}.detail-value{color:var(--color-primary);font-size:clamp(.9rem,2.4vw,1.05rem);font-weight:700}.hero-detail-divider{color:var(--color-gold);align-items:center;font-size:.75rem;display:flex}.hero-spiritual-section{margin-top:.75rem}.hero-basmala{font-family:var(--font-serif);color:var(--color-gold-dark);letter-spacing:.5px;margin-bottom:.6rem;font-size:clamp(1.15rem,3.2vw,1.5rem)}.hero-quran-verse{font-family:var(--font-serif-text);color:var(--color-text-muted);max-width:480px;margin:0 auto;font-size:clamp(.85rem,2.3vw,.95rem);font-style:normal;line-height:1.8}@keyframes floatSubtle{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
