/* Konvertlar shablon uslubiga mos: bir xil mexanika, turlicha bosma qog‘oz va muhr. */
.gate .gate-brand{position:relative;display:block;width:min(170px,48vw);flex-shrink:0;line-height:0}
.gate .gate-logo{display:block;width:100%;height:auto;max-height:61px;object-fit:contain;opacity:1}
@supports ((mask-image:url("/img/nixa-wordmark.png")) or (-webkit-mask-image:url("/img/nixa-wordmark.png"))){.gate-brand-themed .gate-logo{visibility:hidden}.gate-brand-themed:after{content:"";position:absolute;inset:0;background:var(--tx);background:linear-gradient(125deg,var(--tx),var(--gl));-webkit-mask:url("/img/nixa-wordmark.png") center/contain no-repeat;mask:url("/img/nixa-wordmark.png") center/contain no-repeat}}
.gate .gate-silent{border:1px solid var(--line);border-radius:999px;padding:10px 18px;min-height:44px;background:var(--card);color:var(--tx);font:500 12px var(--fb);cursor:pointer}.gate .gate-silent:focus-visible{outline:3px solid var(--tx);outline-offset:3px}
.inv-gate-active,.inv-gate-active body{overflow:hidden}.gate{overflow-y:auto;overscroll-behavior:contain}.gate:focus{outline:none}
@media(max-height:560px){.gate{gap:10px;padding:16px}.gate .gate-brand{width:120px}.gate .env{width:min(260px,64vw,42vh);flex-shrink:0}.gate .gate-names{font-size:24px}.gate .gate-silent{padding:6px 14px}}
.gate .env-letter{color:var(--tx);background:var(--p1);border:1px solid color-mix(in srgb,var(--gl) 45%,#fff);box-shadow:0 8px 18px rgba(0,0,0,.09)}
.gate .env-seal{animation:none;box-shadow:0 6px 20px rgba(0,0,0,.18),inset 0 0 0 4px rgba(255,255,255,.18)}
.gate .env-seal:focus-visible{outline:3px solid var(--tx);outline-offset:4px}
.gate.gate-national .env{filter:drop-shadow(0 20px 25px rgba(33,39,32,.15))}
.gate.gate-national .env-letter{background:repeating-linear-gradient(45deg,var(--p1) 0 22px,color-mix(in srgb,var(--p1) 94%,var(--gl)) 22px 23px);border:2px solid var(--gl)}
.gate.gate-national .env-front{background:linear-gradient(145deg,color-mix(in srgb,var(--gl) 22%,#fff),color-mix(in srgb,var(--gl) 45%,#fff))}
.gate.gate-national .env-seal{border-radius:14px;transform:translate(-50%,-50%) rotate(45deg)}
.gate.gate-national .env-seal svg{transform:rotate(-45deg)}
.gate.gate-national .env-seal:hover{transform:translate(-50%,-50%) rotate(45deg) scale(1.06)}
.gate.gate-luxury .env-back{background:color-mix(in srgb,var(--gl) 18%,#161722);border:1px solid var(--gl)}
.gate.gate-luxury .env-letter{background:color-mix(in srgb,var(--p1) 94%,var(--tx));border:1px solid var(--gl)}
.gate.gate-luxury .env-front{background:linear-gradient(120deg,color-mix(in srgb,var(--p1) 70%,#111),color-mix(in srgb,var(--p2) 70%,#111))}
.gate.gate-luxury .env-flap{background:linear-gradient(180deg,var(--gl),color-mix(in srgb,var(--gl) 55%,#111))}
.gate.gate-luxury .env-seal{border:2px double var(--gl);background:color-mix(in srgb,var(--p1) 72%,#111);color:var(--gl)}
.gate.gate-minimal .env-back,.gate.gate-minimal .env-front,.gate.gate-minimal .env-flap{border-radius:2px}
.gate.gate-minimal .env-letter{border-radius:0;background:var(--p1)}
.gate.gate-minimal .env-seal{border-radius:2px;box-shadow:0 4px 9px rgba(0,0,0,.12)}
.gate.gate-modern .env{transform:rotate(-2deg)}
.gate.gate-modern .env-front{background:linear-gradient(125deg,color-mix(in srgb,var(--gl) 25%,#fff),color-mix(in srgb,var(--gl) 55%,#fff))}
.gate.gate-modern .env-seal{border-radius:16px;transform:translate(-50%,-50%) rotate(12deg)}
.gate.gate-modern .env-seal:hover{transform:translate(-50%,-50%) rotate(12deg) scale(1.06)}
.gate.gate-classic .env-letter{outline:1px solid var(--gl);outline-offset:-8px;border-radius:2px}
.gate.gate-classic .env-seal{border-radius:7px;background:var(--gl)}
.gate.gate-parents .env-letter .small{letter-spacing:.08em;font-size:10px}
.gate.gate-parents .gate-names{font-family:var(--fd);font-size:29px}
.gate.gate-parents .env-seal svg{width:29px;height:29px}
.gate .env.open .env-seal{opacity:0;transform:translate(-50%,-50%) scale(.5);pointer-events:none}
@media(prefers-reduced-motion:reduce){.gate.gate-modern .env{transform:none}}

/* Keep the cover readable; reserve a clear path for the complete invitation card. */
.gate .gate-names{display:flex;flex-direction:column;align-items:center;gap:2px;max-width:100%;font-family:var(--fs);font-size:clamp(36px,10vw,46px);line-height:1.15;color:var(--tx);overflow-wrap:anywhere}
.gate .gate-names>.n{display:block;max-width:100%}.gate .gate-names>.amp{font-size:24px;line-height:1;color:var(--gl)}
.gate .gate-guest{max-width:100%;overflow-wrap:anywhere}
.gate .env{flex-shrink:0;transition:transform 1.35s cubic-bezier(.22,.61,.25,1) .35s}
.gate .gate-brand,.gate .gate-names,.gate>.hint,.gate .gate-silent,.gate .gate-guest{transition:opacity .35s ease,transform .45s ease}
.gate.is-opening .gate-brand{opacity:0;transform:translateY(-14px);pointer-events:none}
.gate.is-opening .gate-names,.gate.is-opening>.hint,.gate.is-opening .gate-silent,.gate.is-opening .gate-guest{opacity:0;transform:translateY(10px);pointer-events:none}
.gate.is-opening .env{transform:translateY(var(--envelope-shift,0px)) rotate(0deg)}
.gate .env-flap{backface-visibility:hidden;transition:transform .95s cubic-bezier(.4,0,.2,1) .2s,z-index 0s .65s;transform-style:preserve-3d}
.gate .env-letter{overflow:hidden;transition:transform 1.3s cubic-bezier(.25,.65,.2,1) .65s,box-shadow 1.2s ease .65s;transform-origin:50% 100%;gap:5px;padding:14px}
.gate .env:not(.open) .env-letter{visibility:hidden}
.gate .env.open .env-letter{transform:translateY(var(--letter-rise,calc(-111% - 12px)));box-shadow:0 18px 36px #0003}
.gate .env-seal{transition:opacity .3s ease,transform .4s ease}
.gate .env-letter .small{font-size:10px;letter-spacing:.04em;line-height:1.3;color:var(--tx2)}
.gate .env-letter .names{font-size:clamp(26px,8vw,32px);line-height:1.08;color:var(--tx);width:100%;margin:2px 0;overflow-wrap:normal;word-break:normal}
.gate .env-letter .names .n{white-space:nowrap;overflow-wrap:normal;word-break:normal;max-width:100%}
.gate .env-letter .names .amp{font-size:18px;line-height:1.05}
.gate .env-letter .env-date{font-size:20px}
@media(max-height:740px){.gate{gap:12px;padding:18px}.gate .gate-brand{width:140px}.gate .env{width:min(300px,82vw)}.gate .gate-names{font-size:clamp(34px,10vw,42px)}}
@media(max-height:560px){.gate{gap:9px;padding:16px;justify-content:flex-start}.gate .gate-brand{width:104px}.gate .env{width:min(230px,64vw);max-height:162px}.gate .gate-names{flex-direction:row;flex-wrap:wrap;justify-content:center;column-gap:7px;font-size:30px}.gate .gate-names>.amp{font-size:22px}.gate .env-letter{gap:3px;padding:8px}.gate .env-letter .small{font-size:8px}.gate .env-letter .names{font-size:23px}.gate .env-letter .names .amp{font-size:13px}.gate .env-letter .env-date{font-size:15px}.gate .gate-silent{padding:6px 14px}}
.inv-gate-active main.content,.inv-gate-active .langs,.inv-gate-active .music{visibility:hidden}
.inv-revealing main.content{animation:invitation-reveal .5s ease both}
@keyframes invitation-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.gate .gate-brand,.gate .gate-names,.gate>.hint,.gate .gate-silent,.gate .gate-guest,.gate .env,.gate .env-flap,.gate .env-letter,.gate .env-seal{transition:none}.gate .env.open .env-letter,.gate.is-opening .env{transform:none}.inv-revealing main.content{animation:none}}
