.invite { margin: 0; min-height: 100vh; font-family: Georgia, "Times New Roman", serif; }
.invite a { color: inherit; }
.invite-inner { max-width: 640px; margin: 0 auto; padding: 2rem 1.25rem 4rem; }
.ornament {
  height: 28px; margin: 0 auto 1.5rem;
  background-repeat: no-repeat; background-position: center; opacity: 0.85;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='28' fill='none'%3E%3Cpath stroke='%23c9a24a' stroke-width='1.4' d='M10 14c20-18 40 18 60 0s40 18 60 0 40 18 60 0 40 18 20 0'/%3E%3C/svg%3E");
}
.invite h1 { font-size: clamp(2rem, 7vw, 3.1rem); line-height: 1.2; font-weight: 400; margin: 0 0 0.6rem; text-align: center; }
.dear { text-align: center; font-size: 1.25rem; margin: 0 0 1rem; }
.cover { width: 100%; border-radius: 16px; margin: 1rem 0; max-height: 360px; object-fit: cover; }
.host-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
.host-grid img { width: 100%; border-radius: 12px; object-fit: cover; aspect-ratio: 1; }
.album-video { width: 100%; border-radius: 12px; background: #000; }
.invite .type { text-align: center; letter-spacing: 0.14em; text-transform: uppercase; font-size: 0.8rem; margin-bottom: 1.2rem; }
.invite .lead { font-size: 1.15rem; line-height: 1.55; white-space: pre-wrap; }
.invite section { margin-top: 2.2rem; }
.invite h2 { font-size: 1.05rem; letter-spacing: 0.08em; text-transform: uppercase; margin: 0 0 0.6rem; }
.big-btn {
  display: flex; align-items: center; justify-content: center;
  min-height: 52px; width: 100%; margin: 0.5rem 0; border-radius: 999px;
  font: inherit; font-size: 1.15rem; text-decoration: none; border: 0; cursor: pointer;
}
.btn-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.6rem; }
.map-row, .cal-row { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.map-row a, .cal-row a {
  min-height: 48px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 1rem; border-radius: 999px; text-decoration: none; border: 1px solid currentColor;
}
.invite label { display: block; margin: 0.9rem 0 0.35rem; font-size: 1rem; }
.invite input, .invite textarea, .invite select {
  width: 100%; min-height: 48px; font: inherit; font-size: 1.05rem;
  padding: 0.55rem 0.75rem; border-radius: 12px; box-sizing: border-box;
}
.invite .choice { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
.invite .choice label {
  min-height: 48px; margin: 0; display: flex; align-items: center; justify-content: center;
  border-radius: 999px; border: 1px solid currentColor; cursor: pointer;
}
.invite .choice input { display: none; }
.foot { margin-top: 3rem; font-size: 0.9rem; text-align: center; opacity: 0.8; }
.complaint { font-size: 0.85rem; opacity: 0.7; }
.count { font-size: 1.4rem; text-align: center; letter-spacing: 0.04em; }
.lang-mini { text-align: center; margin-bottom: 1rem; }
.lang-mini a { margin: 0 0.4rem; }

.invite-nury { background: #0f2a2e; color: #f4ead8; }
.invite-nury .accent { color: #c9a24a; }
.invite-nury .big-btn, .invite-nury .choice label:has(input:checked) { background: #c9a24a; color: #0f2a2e; }
.invite-nury input, .invite-nury textarea { background: #16363c; color: #f4ead8; border: 1px solid #3d5c62; }

.invite-qara { background: #111; color: #f7f4ee; }
.invite-qara .accent { color: #f0d48a; }
.invite-qara .big-btn, .invite-qara .choice label:has(input:checked) { background: #f7f4ee; color: #111; }
.invite-qara input, .invite-qara textarea { background: #1c1c1c; color: #f7f4ee; border: 1px solid #444; }

.invite-kok { background: #123047; color: #eef6f4; }
.invite-kok .accent { color: #d4b36a; }
.invite-kok .big-btn, .invite-kok .choice label:has(input:checked) { background: #d4b36a; color: #123047; }
.invite-kok input, .invite-kok textarea { background: #1a3d58; color: #eef6f4; border: 1px solid #2c5674; }

.invite-sholpan { background: #3b2a22; color: #f8eedd; }
.invite-sholpan .accent { color: #e0b15a; }
.invite-sholpan .big-btn, .invite-sholpan .choice label:has(input:checked) { background: #e0b15a; color: #3b2a22; }
.invite-sholpan input, .invite-sholpan textarea { background: #4a352b; color: #f8eedd; border: 1px solid #6a4c3b; }

.invite-merey { background: #2a1518; color: #f6ead8; }
.invite-merey .accent { color: #d7a441; }
.invite-merey .big-btn, .invite-merey .choice label:has(input:checked) { background: #d7a441; color: #2a1518; }
.invite-merey input, .invite-merey textarea { background: #3a1e22; color: #f6ead8; border: 1px solid #5a3238; }

@media (max-width: 640px) {
  .btn-row { grid-template-columns: 1fr; }
}

/* Полоса предпросмотра дизайна (/templates/<тип>/<дизайн>/) */
.preview-bar {
  position: sticky; top: 0; z-index: 20;
  display: flex; align-items: center; gap: 0.6rem; flex-wrap: wrap;
  padding: 0.6rem 0.9rem;
  background: rgba(10, 18, 20, 0.92); color: #fff;
  font: 600 0.9rem/1.2 system-ui, sans-serif;
  backdrop-filter: blur(10px);
}
.preview-bar a { color: #fff; text-decoration: none; }
.preview-bar .pb-home { font-weight: 800; margin-right: 0.3rem; }
.preview-bar .pb-list { display: flex; gap: 0.35rem; overflow-x: auto; flex: 1; scrollbar-width: none; }
.preview-bar .pb-list a { padding: 0.45rem 0.8rem; border-radius: 999px; border: 1px solid rgba(255,255,255,0.25); white-space: nowrap; }
.preview-bar .pb-list a[aria-current="true"] { background: #fff; color: #0f2a2e; }
.preview-bar .pb-cta { padding: 0.55rem 1rem; border-radius: 999px; background: #c9a24a; color: #1d1605 !important; white-space: nowrap; }
@media (max-width: 640px) { .preview-bar .pb-cta { width: 100%; text-align: center; } }

/* Организатор видит неоплаченный дизайн */
.owner-lock {
  position: sticky; top: 0; z-index: 25;
  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0.5rem 1rem;
  padding: 0.7rem 1rem; background: #1d1605; color: #f6e7c1;
  font: 600 0.92rem/1.35 system-ui, sans-serif; text-align: center;
}
.owner-lock a { padding: 0.45rem 0.9rem; border-radius: 999px; background: #c9a24a; color: #1d1605; text-decoration: none; font-weight: 800; }
