:root{--c-p10: color-mix(in srgb, var(--c-primary) 10%, transparent);--c-p20: color-mix(in srgb, var(--c-primary) 20%, transparent);--c-p40: color-mix(in srgb, var(--c-primary) 40%, transparent);--c-s10: color-mix(in srgb, var(--c-secondary) 10%, transparent);--c-glow: 0 0 40px color-mix(in srgb, var(--c-primary) 30%, transparent);--c-glow-sm: 0 0 16px color-mix(in srgb, var(--c-primary) 22%, transparent)}:root --c-primary:{{COLOR_PRIMARY}}:root --c-secondary:{{COLOR_SECONDARY}}:root --c-bg:{{COLOR_BG}}:root --c-surface:{{COLOR_SURFACE}}:root --c-text:{{COLOR_TEXT}}:root --c-muted:{{COLOR_TEXT_MUTED}}:root{--c-bg: #F5E9E2;--c-surface: #FCF7F4;--c-primary: #9C8473;--c-muted: #BAA699;--c-text: #5C4D43;--c-p10: rgba(156, 132, 115, .1);--c-p20: rgba(156, 132, 115, .2);--c-p40: rgba(156, 132, 115, .4);--c-s10: rgba(252, 247, 244, .6);--c-secondary: #C28B74;--c-glow-sm: 0 2px 8px rgba(156, 132, 115, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{direction:rtl;scroll-behavior:smooth}body{font-family:Scheherazade New,serif;background-color:var(--c-bg);color:var(--c-text);direction:rtl;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,.bismillah,.site-title,.form-title,button,footer{font-family:Amiri,serif}.msg-meta{font-family:monospace}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--c-bg)}::-webkit-scrollbar-thumb{background:var(--c-p40);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--c-primary)}::selection{background:var(--c-p40);color:var(--c-text)}.glass-card{background:linear-gradient(145deg,color-mix(in srgb,var(--c-surface) 92%,var(--c-primary) 8%),color-mix(in srgb,var(--c-surface) 97%,transparent));border:1px solid var(--c-p20);border-radius:20px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 32px #9c847326,inset 0 1px 0 var(--c-p10),inset 0 -1px #0000000d;position:relative;overflow:hidden}.glass-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--c-p40),transparent);pointer-events:none}.corner-decorated:before,.corner-decorated:after{content:"❧";position:absolute;font-size:2rem;color:var(--c-primary);opacity:.55;line-height:1}.corner-decorated:before{top:.8rem;right:.8rem}.corner-decorated:after{bottom:.8rem;left:.8rem;transform:scaleX(-1)}.name-underline{display:block;height:1px;background:var(--c-primary);transform:scaleX(0);transform-origin:right center}#root{position:relative;z-index:1;min-height:100vh}.site-content{max-width:720px;margin:0 auto;padding:clamp(1rem,3vw,2rem);padding-top:2rem}textarea{font-family:Scheherazade New,serif;font-size:1.15rem;min-height:160px;width:100%;background:color-mix(in srgb,var(--c-surface) 80%,transparent);border:1px solid var(--c-p20);border-radius:12px;padding:1rem 1.2rem;color:var(--c-text);resize:vertical;transition:border-color .3s,box-shadow .3s;outline:none;direction:rtl}textarea:focus{border-color:var(--c-primary);box-shadow:0 0 0 4px var(--c-p10),var(--c-glow-sm)}textarea.shake{animation:shake .4s ease}textarea::placeholder{color:var(--c-muted);opacity:.6}.btn-send{width:100%;padding:1rem 2rem;margin-top:1rem;background:linear-gradient(135deg,var(--c-primary),color-mix(in srgb,var(--c-primary) 85%,#fff 15%),var(--c-primary));background-size:200% 100%;border:none;border-radius:12px;color:var(--c-bg);font-family:Amiri,serif;font-size:1.3rem;font-weight:700;cursor:pointer;letter-spacing:.05em;transition:background-position .5s,transform .2s,box-shadow .3s;box-shadow:0 4px 20px var(--c-p20);position:relative;overflow:hidden;will-change:transform}.btn-send:hover:not(:disabled){background-position:100% 0;transform:translateY(-3px);box-shadow:0 8px 32px var(--c-p40)}.btn-send:active:not(:disabled){transform:translateY(0)}.btn-send:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px}.btn-send:disabled{opacity:.6;cursor:not-allowed}.char-counter-row{text-align:left;font-family:monospace;font-size:.82rem;margin-top:.4rem;color:var(--c-muted);transition:color .3s;direction:ltr;unicode-bidi:bidi-override}.char-counter-row.warning{color:var(--c-secondary)}.char-counter-row.maxed{color:#ef4444}.shortcut-hint{text-align:center;color:var(--c-muted);font-size:.8rem;margin-top:.5rem;opacity:.7}@media (hover: none){.shortcut-hint{display:none}}.btn-loading-inner{display:flex;align-items:center;justify-content:center;gap:.6rem}.skeleton-card{height:80px;border-radius:12px;background:linear-gradient(90deg,var(--c-p10) 25%,var(--c-p20) 50%,var(--c-p10) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;margin-bottom:.9rem}.empty-state{text-align:center;padding:2rem}.empty-state .dove-emoji{font-size:2.5rem;display:block;margin-bottom:.8rem;will-change:transform}.empty-state p{font-family:Amiri,serif;font-size:1rem;color:var(--c-muted)}.message-card-inner{border-right:3px solid var(--c-primary);padding:1rem 1.3rem;margin-bottom:.9rem;will-change:transform;cursor:default}.msg-text{font-family:Scheherazade New,serif;font-size:1.1rem;color:var(--c-text);line-height:1.9}.msg-meta{font-family:monospace;font-size:.78rem;color:var(--c-p40);margin-top:.4rem}.bism-char,.site-title,.groom-name,.bride-name,.ornament-dot,#invitationCard,#formCard,#messagesSection{opacity:0;will-change:opacity,transform}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--c-p20);text-align:center;padding:clamp(2rem,5vw,4rem) 1rem clamp(1.5rem,3vw,2.5rem)}.bismillah{font-family:Amiri,serif;font-size:clamp(1rem,2.5vw,1.4rem);color:var(--c-primary);letter-spacing:.15em;margin-bottom:.8rem;display:block}.bism-char{display:inline-block}.site-title{font-family:Amiri,serif;font-size:clamp(2rem,6vw,3.5rem);font-weight:700;background:linear-gradient(135deg,var(--c-primary),#fff 40%,var(--c-primary) 60%,var(--c-text));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 4s ease-in-out infinite;display:block;margin:.4rem 0}.groom-name{font-family:Scheherazade New,serif;font-size:clamp(1rem,2.5vw,1.3rem);color:var(--c-primary);margin:.5rem 0 0;display:block}.ornament-dot{font-size:1.4rem;color:var(--c-primary);display:block;margin:.2rem 0;will-change:transform}.bride-name{font-family:Scheherazade New,serif;font-size:clamp(1rem,2.5vw,1.3rem);color:var(--c-muted);margin:0 0 .5rem;display:block}.verse-block{text-align:center;margin-bottom:1.5rem;font-family:Amiri,serif;font-size:1.3rem;line-height:2.2;color:var(--c-text)}.verse-word{display:inline}.verse-ref{display:block;font-size:.9rem;color:var(--c-muted);margin-top:.5rem;font-style:italic}.invite-prose{text-align:center;font-family:Amiri,serif;font-size:1.1rem;line-height:2;color:var(--c-text)}.invite-prose .highlight-name{font-size:1.35rem;font-weight:700;color:var(--c-primary);display:inline-block;position:relative;margin:0 .2rem}.invite-prose .highlight-bride{font-size:1.25rem;font-style:italic;color:var(--c-muted);display:inline-block;position:relative;margin:0 .2rem}.gold-rule{border:none;height:1px;background:linear-gradient(90deg,transparent,var(--c-p40),transparent);margin:1.2rem auto;width:70%}.site-footer{border-top:1px solid var(--c-p10);padding:1.5rem 1rem;text-align:center}.footer-text{font-family:Amiri,serif;color:var(--c-primary);opacity:.45;animation:footerPulse 3s ease-in-out infinite;font-size:1rem}.success-box{display:none;flex-direction:column;align-items:center;gap:.8rem;padding:2rem;background:var(--c-s10);border:1px solid var(--c-p20);border-radius:14px}.success-emoji{font-size:3rem;will-change:transform}.success-text{font-family:Amiri,serif;font-size:1.4rem;color:var(--c-primary);text-align:center}.error-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:9000;display:none;background:color-mix(in srgb,var(--c-secondary) 90%,#000 10%);color:#fff;padding:.8rem 1.8rem;border-radius:12px;font-family:Amiri,serif;font-size:1rem;box-shadow:0 8px 32px #00000026;white-space:nowrap}.feed-title{font-family:Amiri,serif;font-size:1.6rem;color:var(--c-primary);text-align:center;margin-bottom:1.5rem;will-change:transform,opacity}.form-title{font-family:Amiri,serif;font-size:1.4rem;color:var(--c-primary);text-align:center;margin-bottom:1.5rem;will-change:transform,opacity}.bg-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;will-change:opacity}@media (max-width: 640px){.glass-card{border-radius:14px}.site-content{padding:1rem .8rem .8rem}}@keyframes shimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}@keyframes shake{0%{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}to{transform:translate(0)}}@keyframes pulse{0%{opacity:.45}50%{opacity:.8}to{opacity:.45}}@keyframes draw{0%{stroke-dashoffset:var(--path-length, 1000)}to{stroke-dashoffset:0}}@keyframes goldBorderShimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes footerPulse{0%{opacity:.45}50%{opacity:.75}to{opacity:.45}}@keyframes spinnerRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
