/* تصاميم الدعوات: تتمدد حسب عرض الحاوية (وحدات cqw) */
.dz-wrap { container-type: inline-size; width: 100%; }
.dz { position: relative; aspect-ratio: 2 / 3; overflow: hidden; text-align: center; font-family: var(--font); }
.dz-ground { position: absolute; inset: 0; }
.dz-art { position: absolute; inset: 0; width: 100%; height: 100%; }
.dz-in > * { max-width: 100%; overflow-wrap: anywhere; flex-shrink: 0; }
.dz-in { position: absolute; inset: 15cqw 13cqw 11cqw; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2.2cqw; }
.dz .dz-pre { font-size: 3.5cqw; opacity: .78; line-height: 1.6; }
.dz-hosts { font-size: 4.1cqw; line-height: 1.65; }
.dz-hosts b { font-size: 5cqw; }
.dz .dz-title { font-family: var(--display); font-weight: 700; font-size: 10.5cqw; line-height: 1.35; margin: .5cqw 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.dz-guest { font-size: 4.8cqw; font-weight: 700; }
.dz-guest span { display: block; font-size: 3.2cqw; font-weight: 500; opacity: .75; }
.dz-date { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 3cqw; width: 100%; margin-top: 1cqw; }
.dz-date span { font-size: 3.7cqw; font-weight: 600; padding: 1.6cqw 0; border-block: .35cqw solid; border-color: var(--dz-line); }
.dz-date b { font-size: 11.5cqw; line-height: 1; font-variant-numeric: tabular-nums; }
.dz-hijri { font-size: 3.1cqw; opacity: .72; }
.dz-place { font-size: 4cqw; line-height: 1.7; font-weight: 600; }
.dz-note { font-size: 3.1cqw; opacity: .7; white-space: pre-line; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.dz-royal { background: radial-gradient(120% 80% at 50% 0%, #15503f 0%, #0b2b22 55%, #061812 100%); color: #f3ead6; --dz-line: rgba(214, 180, 106, .5); }
.dz-royal .dz-title, .dz-royal .dz-date b { color: #e5c57f; }
.dz-royal .dz-in { inset: 22cqw 15cqw 10cqw; }

.dz-ivory { background: linear-gradient(160deg, #fffaf0 0%, #f6eedc 100%); color: #4a3b22; --dz-line: rgba(176, 138, 67, .45); }
.dz-ivory .dz-title, .dz-ivory .dz-date b { color: #8a6a2c; }

.dz-botanic { background: linear-gradient(180deg, #fcfbf7, #f4f2ea); color: #3e4a3c; --dz-line: rgba(143, 169, 140, .6); }
.dz-botanic .dz-title, .dz-botanic .dz-date b { color: #5a7656; }
.dz-botanic .dz-in { inset: 13cqw 19cqw 11cqw; }

.dz-midnight { background: linear-gradient(170deg, #17223b 0%, #0d1424 100%); color: #ebe4d1; --dz-line: rgba(201, 168, 92, .45); }
.dz-midnight .dz-ground { background-size: 13cqw 13cqw; }
.dz-midnight .dz-title, .dz-midnight .dz-date b { color: #e3c47e; }

.dz-newborn { background: linear-gradient(170deg, #d9e8f6 0%, #eef1f8 55%, #f8e4ea 100%); color: #3d4a63; --dz-line: rgba(76, 106, 154, .35); }
.dz-newborn .dz-title, .dz-newborn .dz-date b { color: #4c6a9a; }

.dz-laurel { background: radial-gradient(110% 70% at 50% 10%, #5b1b29 0%, #3a0f19 60%, #26090f 100%); color: #f4e7d3; --dz-line: rgba(217, 178, 95, .45); }
.dz-laurel .dz-title, .dz-laurel .dz-date b { color: #ecc87c; }
.dz-laurel .dz-in { inset: 37cqw 13cqw 9cqw; gap: 1.8cqw; }

/* ===== التصاميم الإضافية ===== */
/* زواج */
.dz-pearl { background: linear-gradient(170deg, #ffffff 0%, #f3f1ed 100%); color: #4d4a45; --dz-line: rgba(185, 180, 172, .7); }
.dz-pearl .dz-title, .dz-pearl .dz-date b { color: #6f6a62; }
.dz-pearl .dz-in { inset: 17cqw 15cqw 12cqw; }

.dz-rose { background: linear-gradient(165deg, #fff4f2 0%, #fbe3e0 100%); color: #6a3d3f; --dz-line: rgba(199, 154, 91, .55); }
.dz-rose .dz-title, .dz-rose .dz-date b { color: #b07d3e; }
.dz-rose .dz-in { inset: 17cqw 15cqw 13cqw; }

.dz-sadu { background: #f6ecd8; color: #2a1d16; --dz-line: rgba(143, 29, 33, .45); }
.dz-sadu .dz-title, .dz-sadu .dz-date b { color: #8f1d21; }
.dz-sadu .dz-in { inset: 19cqw 15cqw 16cqw; }

.dz-marble { background: radial-gradient(120% 90% at 30% 20%, #2a2a2c 0%, #151516 60%, #0c0c0d 100%); color: #ece6da; --dz-line: rgba(200, 163, 90, .5); }
.dz-marble .dz-title, .dz-marble .dz-date b { color: #d8b56c; }
.dz-marble .dz-in { inset: 30cqw 14cqw 24cqw; }

.dz-andalus { background: radial-gradient(110% 80% at 50% 0%, #1d6a6a 0%, #0f4545 55%, #082c2c 100%); color: #f1ead8; --dz-line: rgba(213, 179, 107, .5); }
.dz-andalus .dz-title, .dz-andalus .dz-date b { color: #e3c47f; }
.dz-andalus .dz-in { inset: 31cqw 17cqw 9cqw; }

/* ملكة وخطوبة */
.dz-lavender { background: linear-gradient(180deg, #f7f4fc 0%, #ece6f7 100%); color: #4a3f66; --dz-line: rgba(156, 139, 196, .55); }
.dz-lavender .dz-title, .dz-lavender .dz-date b { color: #6d5aa6; }
.dz-lavender .dz-in { inset: 14cqw 14cqw 12cqw 20cqw; }

.dz-peach { background: linear-gradient(180deg, #fff6f0 0%, #fde8dc 100%); color: #6b4031; --dz-line: rgba(217, 143, 111, .5); }
.dz-peach .dz-title, .dz-peach .dz-date b { color: #c66e4b; }
.dz-peach .dz-in { inset: 28cqw 18cqw 9cqw; }

.dz-rings { background: linear-gradient(170deg, #fbf7ef 0%, #f1e7d4 100%); color: #4c3d27; --dz-line: rgba(184, 146, 90, .5); }
.dz-rings .dz-title, .dz-rings .dz-date b { color: #9a7438; }
.dz-rings .dz-in { inset: 32cqw 14cqw 10cqw; }

/* مواليد */
.dz-babygirl { background: linear-gradient(180deg, #ffe3ea 0%, #fff1f4 60%, #ffe9ef 100%); color: #6a3b4a; --dz-line: rgba(243, 159, 179, .55); }
.dz-babygirl .dz-title, .dz-babygirl .dz-date b { color: #d35d7f; }
.dz-babygirl .dz-in { inset: 26cqw 14cqw 22cqw; }

.dz-clouds { background: linear-gradient(180deg, #bfe0f7 0%, #e3f1fb 55%, #f4f9fd 100%); color: #2f4a66; --dz-line: rgba(76, 120, 170, .35); }
.dz-clouds .dz-title, .dz-clouds .dz-date b { color: #3a73b0; }
.dz-clouds .dz-in { inset: 30cqw 14cqw 24cqw; }

.dz-aqiqah { background: linear-gradient(180deg, #f3f7f1 0%, #e5eee2 100%); color: #3b4a39; --dz-line: rgba(155, 181, 154, .6); }
.dz-aqiqah .dz-title, .dz-aqiqah .dz-date b { color: #5d7d5a; }
.dz-aqiqah .dz-in { inset: 25cqw 15cqw 11cqw; }

/* تخرج */
.dz-gradcap { background: radial-gradient(110% 80% at 50% 0%, #1e2f5c 0%, #121d3c 60%, #0b1228 100%); color: #ece7da; --dz-line: rgba(226, 189, 107, .5); }
.dz-gradcap .dz-title, .dz-gradcap .dz-date b { color: #ecc977; }
.dz-gradcap .dz-in { inset: 34cqw 14cqw 9cqw; }

.dz-diploma { background: #ffffff; color: #1d2b4f; --dz-line: rgba(31, 63, 134, .35); }
.dz-diploma .dz-title, .dz-diploma .dz-date b { color: #1f3f86; }
.dz-diploma .dz-pre { color: #b48a35; opacity: 1; font-weight: 700; }
.dz-diploma .dz-in { inset: 32cqw 14cqw 11cqw; }

.dz-emerald { background: radial-gradient(120% 80% at 50% 0%, #0f6b4f 0%, #084a37 60%, #052e22 100%); color: #eef3e8; --dz-line: rgba(232, 200, 115, .5); }
.dz-emerald .dz-title, .dz-emerald .dz-date b { color: #f0d283; }
.dz-emerald .dz-in { inset: 28cqw 14cqw 12cqw; }

/* ميلاد */
.dz-balloons { background: linear-gradient(180deg, #fffaf0 0%, #fff3df 100%); color: #3c3550; --dz-line: rgba(91, 183, 201, .45); }
.dz-balloons .dz-title, .dz-balloons .dz-date b { color: #e0565a; }
.dz-balloons .dz-in { inset: 38cqw 14cqw 19cqw; }

.dz-confetti { background: #ffffff; color: #2f2b45; --dz-line: rgba(123, 108, 246, .35); }
.dz-confetti .dz-title, .dz-confetti .dz-date b { color: #7b6cf6; }
.dz-confetti .dz-in { inset: 22cqw 14cqw 22cqw; }

.dz-cake { background: linear-gradient(180deg, #ebf8f4 0%, #fdf2f5 100%); color: #3d3a4a; --dz-line: rgba(159, 214, 200, .8); }
.dz-cake .dz-title, .dz-cake .dz-date b { color: #e26d8b; }
.dz-cake .dz-in { inset: 40cqw 14cqw 11cqw; }

.dz-sunny { background: linear-gradient(180deg, #fff8d6 0%, #ffffff 70%); color: #3b3423; --dz-line: rgba(255, 183, 3, .5); }
.dz-sunny .dz-title, .dz-sunny .dz-date b { color: #ef7d00; }
.dz-sunny .dz-in { inset: 36cqw 14cqw 19cqw; }

/* عيد */
.dz-lanterns { background: radial-gradient(120% 90% at 50% 0%, #4a2a6e 0%, #2e1748 60%, #1b0d2c 100%); color: #f3ecdc; --dz-line: rgba(232, 192, 106, .5); }
.dz-lanterns .dz-title, .dz-lanterns .dz-date b { color: #f0cc79; }
.dz-lanterns .dz-in { inset: 42cqw 14cqw 12cqw; }

.dz-crescent { background: linear-gradient(170deg, #12454f 0%, #0a2b33 100%); color: #eef0e6; --dz-line: rgba(240, 213, 140, .45); }
.dz-crescent .dz-title, .dz-crescent .dz-date b { color: #f3d98f; }
.dz-crescent .dz-in { inset: 28cqw 16cqw 14cqw; }

/* رمضان */
.dz-ghabqa { background: radial-gradient(120% 90% at 50% 10%, #1c2a52 0%, #111a36 60%, #0a1024 100%); color: #f1ead6; --dz-line: rgba(227, 185, 100, .5); }
.dz-ghabqa .dz-title, .dz-ghabqa .dz-date b { color: #ecc671; }
.dz-ghabqa .dz-in { inset: 24cqw 14cqw 29cqw; gap: 1.8cqw; }

/* رسمية وأعمال */
.dz-corporate { background: #ffffff; color: #22303f; --dz-line: rgba(29, 111, 184, .3); }
.dz-corporate .dz-title { font-family: var(--font); font-weight: 700; font-size: 8.6cqw; color: #14324f; }
.dz-corporate .dz-date b { color: #1d6fb8; }
.dz-corporate .dz-pre { color: #1d6fb8; opacity: 1; font-weight: 600; }
.dz-corporate .dz-in { inset: 22cqw 13cqw 12cqw; }

.dz-opening { background: linear-gradient(180deg, #1b1b1f 0%, #26262c 100%); color: #f1ede5; --dz-line: rgba(191, 163, 106, .5); }
.dz-opening .dz-title { font-family: var(--font); font-weight: 700; font-size: 9cqw; color: #ffffff; }
.dz-opening .dz-date b { color: #d6b874; }
.dz-opening .dz-in { inset: 40cqw 14cqw 10cqw; }

/* عشاء ومناسبات */
.dz-olive { background: linear-gradient(180deg, #f7f6ef 0%, #ecebdf 100%); color: #3c3f2c; --dz-line: rgba(125, 139, 90, .5); }
.dz-olive .dz-title, .dz-olive .dz-date b { color: #5f6b3d; }
.dz-olive .dz-in { inset: 15cqw 21cqw 12cqw 14cqw; }
.dz-custom { background: #f3efe6; }
.dz-custom img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
