/* Secret Santa (page secret-santa). Builds on wheel.css (cards, fields, switches, sticky bar, buttons) and the
   shared .lh-tl-card styles; logical properties only (RTL); print styles for the folded cards. */

.lh-ss .lh-tl-card { display: flex; flex-direction: column; gap: 10px; padding: 12px 16px 16px; background: var(--lh-surface); border: 1px solid var(--lh-border); border-radius: 16px; box-shadow: var(--lh-shadow-sm); }
.lh-ss .lh-tl-card__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 32px; }
.lh-ss .lh-tl-card__h { margin: 0; color: var(--lh-muted); font-size: .75rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
:lang(ar) .lh-ss .lh-tl-card__h { letter-spacing: 0; font-size: .875rem; }

.lh-ss-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin: 0; }
.lh-ss-col { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
@media (min-width: 900px) { .lh-ss-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 24px; } }

.lh-ss-names { min-height: 168px; font-size: 1rem; }
.lh-ss-count { color: var(--lh-brand-soft-ink, var(--lh-brand)); background: var(--lh-brand-soft, #ECE8FF); border-radius: 999px; padding: 4px 10px; font-size: .8125rem; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lh-ss-count.is-bad { color: var(--lh-danger, #C62828); background: color-mix(in srgb, var(--lh-danger, #C62828) 12%, transparent); }
.lh-ss-l { margin-block-start: 4px; font-weight: 650; font-size: .9375rem; }
.lh-ss-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.lh-ss-two > div { display: flex; flex-direction: column; gap: 6px; }
.lh-ss .lh-set__row--sw { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 12px; padding-block: 6px; }
.lh-ss .lh-set__l { font-weight: 650; }
.lh-ss .lh-set__help { grid-column: 1 / -1; margin: 0; color: var(--lh-muted); font-size: .8125rem; }
.lh-ss-privacy { display: flex; align-items: flex-start; gap: 8px; padding: 0 4px; }
.lh-ss-privacy .lh-ic { flex: none; width: 18px; height: 18px; margin-block-start: 1px; }

/* results */
.lh-ss-res { margin-block-start: 16px; scroll-margin-block-start: 72px; }
.lh-ss-res .lh-tl-card__h:focus { outline: none; }
.lh-ss-meta { color: var(--lh-muted); font-size: .8125rem; font-variant-numeric: tabular-nums; text-align: end; }
.lh-ss-list { list-style: none; margin: 0; padding: 0; }
.lh-ss-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; padding: 10px 2px; border-block-end: 1px solid var(--lh-border); }
.lh-ss-row:last-child { border-block-end: 0; }
.lh-ss-who { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; min-width: 0; cursor: pointer; }
.lh-ss-sent { width: 22px; height: 22px; flex: none; accent-color: var(--lh-success, #12805C); }
.lh-ss-name { font-weight: 750; font-size: 1.0625rem; overflow-wrap: anywhere; }
.lh-ss-sent:checked + .lh-ss-name { color: var(--lh-muted); text-decoration: line-through; text-decoration-thickness: 1px; }
.lh-ss-btns { display: inline-flex; flex-wrap: wrap; gap: 6px; }
.lh-ss-btns .lh-btn--sm { min-height: 44px; }
.lh-ss-wa { color: #128C4A; }
:root[data-theme="dark"] .lh-ss-wa { color: #3DD68C; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .lh-ss-wa { color: #3DD68C; } }
@media (max-width: 520px) {
  .lh-ss-btxt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .lh-ss-btns .lh-btn--sm { width: 44px; padding: 0; justify-content: center; }
}
.lh-ss-acts { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px 12px; padding-block-start: 6px; }
.lh-ss-all { flex: 1 1 260px; }
.lh-ss-all > summary { list-style: none; cursor: pointer; width: max-content; max-width: 100%; }
.lh-ss-all > summary::-webkit-details-marker { display: none; }
.lh-ss-all[open] > summary { margin-block-end: 8px; }
.lh-ss-all .lh-warn { margin-block-end: 8px; }
.lh-ss-pairs { margin: 10px 0 0; padding-inline-start: 1.4em; line-height: 1.9; font-weight: 650; }
.lh-ss-qr { display: block; margin: 8px auto; border-radius: 12px; background: #fff; }
.lh-ss-qr__help { text-align: center; }

/* reveal mode (a personal #s= link): the organizer UI is never shown */
.lh-ss-rev { display: none; }
html.ss-reveal .lh-ss-org { display: none; }
html.ss-reveal .lh-ss-rev { display: block; }
.lh-ss-rev__card {
  display: flex; flex-direction: column; align-items: center; gap: 12px; max-width: 560px; min-height: 340px; margin-inline: auto;
  padding: 28px 20px; border-radius: 24px; text-align: center; color: #fff;
  background: radial-gradient(120% 90% at 50% 0%, #7B61FF 0%, #5B3DF5 45%, #3B23B8 100%); box-shadow: 0 18px 50px rgba(59, 35, 184, .35);
}
.lh-ss-rev__ic { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 20px; background: rgba(255, 255, 255, .16); }
.lh-ss-rev__ic .lh-ic { width: 34px; height: 34px; }
.lh-ss-rev__wait { width: 60%; height: 18px; margin: 8px 0 0; border-radius: 9px; background: rgba(255, 255, 255, .18); }
.lh-ss-rev__ev { margin: 0; font-size: .8125rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; opacity: .85; }
:lang(ar) .lh-ss-rev__ev { letter-spacing: 0; }
.lh-ss-rev__hello { margin: 0; font-size: clamp(1.5rem, 6vw, 2rem); font-weight: 800; line-height: 1.2; }
.lh-ss-rev__intro, .lh-ss-rev__gives { margin: 0; font-size: 1.0625rem; opacity: .92; }
.lh-ss-rev__name { margin: 0; padding: 10px 22px; border-radius: 18px; background: #FFB800; color: #14151A; font-size: clamp(2rem, 10vw, 3.5rem); font-weight: 900; line-height: 1.15; overflow-wrap: anywhere; outline: none; animation: lh-ss-pop .45s cubic-bezier(.2, .9, .3, 1.3); }
.lh-ss-rev__facts { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 4px 0 0; }
.lh-ss-rev__facts > div { padding: 8px 14px; border-radius: 12px; background: rgba(255, 255, 255, .14); }
.lh-ss-rev__facts dt { font-size: .75rem; font-weight: 700; opacity: .85; }
.lh-ss-rev__facts dd { margin: 2px 0 0; font-weight: 800; }
.lh-ss-rev__msg { margin: 4px 0 0; padding: 10px 14px; border-radius: 12px; background: rgba(255, 255, 255, .1); max-width: 100%; overflow-wrap: anywhere; }
.lh-ss-rev__msg small { display: block; font-weight: 700; opacity: .8; }
.lh-ss-rev__secret { margin: 6px 0 0; font-weight: 700; }
.lh-ss-rev__id { margin: 0; font-size: .75rem; opacity: .7; font-variant-numeric: tabular-nums; }
.lh-ss-rev__bad { margin: 0; font-size: 1.0625rem; font-weight: 650; }
.lh-ss-go { margin-block-start: 8px; background: #fff !important; color: #3B23B8 !important; min-height: 56px; padding-inline: 24px; font-size: 1.0625rem; }
.lh-ss-own { margin-block-start: 6px; background: rgba(255, 255, 255, .14); border-color: rgba(255, 255, 255, .35); color: #fff; }
.lh-ss-own:hover { background: rgba(255, 255, 255, .22); }
@keyframes lh-ss-pop { from { transform: scale(.6); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .lh-ss-rev__name { animation: none; } }

/* printed cards (screen: hidden) — fold the bottom flap over the middle: only "For …" stays visible */
.lh-ss-print { display: none; }
@media print {
  html.ss-printing body * { visibility: hidden !important; }
  html.ss-printing .lh-ss-print, html.ss-printing .lh-ss-print * { visibility: visible !important; }
  html.ss-printing .lh-ss-print { display: grid; grid-template-columns: 1fr 1fr; gap: 8mm; position: absolute; inset-block-start: 0; inset-inline-start: 0; width: 100%; color: #000; }
  .lh-ss-print__help { grid-column: 1 / -1; margin: 0; font-size: 10pt; }
  .lh-ss-card { display: grid; grid-template-rows: 28mm 28mm 28mm; border: 1px solid #999; border-radius: 3mm; break-inside: avoid; page-break-inside: avoid; text-align: center; }
  .lh-ss-card > div { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1mm; padding: 2mm 4mm; }
  .lh-ss-card__for strong { font-size: 15pt; }
  .lh-ss-card__in { border-block: 1px dashed #666; }
  .lh-ss-card__in strong { font-size: 18pt; }
  .lh-ss-card small { font-size: 8.5pt; color: #444; }
  .lh-ss-card__flap span { font-size: 9pt; color: #666; }
}

/* a participant opening a personal link sees only the reveal card: no language suggestion over it */
html.ss-reveal .c-langbar { display: none !important; }
