.pk-greetings{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  box-sizing:border-box;
  margin-top:10px;
  min-height:58px;
  padding:14px 16px;
  background:linear-gradient(90deg,rgba(2,10,24,.98),rgba(4,20,38,.98),rgba(2,10,24,.98));
  border-top:1px solid rgba(255,215,0,.28);
  border-bottom:1px solid rgba(255,215,0,.28);
  color:#fff;
  overflow:hidden;
}
.pk-greetings-label{
  flex:0 0 auto;
  font-weight:900;
  color:#ffd84d;
}
.pk-greetings-viewport{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  white-space:nowrap;
  padding:4px 0;
}
.pk-greetings-track{
  display:inline-block;
  min-width:100%;
}
.pk-greetings-loop{
  display:inline-block;
  padding-left:100%;
  animation:pkGreetingsMarquee 42s linear infinite;
  will-change:transform;
}
.pk-greetings:hover .pk-greetings-loop{animation-play-state:paused}
.pk-greeting-item{
  display:inline-block;
  position:relative;
  font-size:.96rem;
  line-height:1.6;
  padding:4px 0;
  text-shadow:0 1px 2px #000;
}
.pk-greeting-sep{color:#ffd84d;padding:0 14px}
.pk-greetings-empty{color:#aebfd1}
.pk-greetings-open{
  flex:0 0 auto;
  border:1px solid rgba(255,215,0,.52);
  background:#151205;
  color:#fff;
  border-radius:10px;
  padding:8px 13px;
  font-weight:800;
  cursor:pointer;
}
.pk-greetings-open:hover{background:#2b2508}

@keyframes pkGreetingsMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-100%)}
}

.pk-greetings-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:2147483200;
  display:none;
  align-items:flex-start;
  justify-content:center;
  overflow-y:auto;
  padding:24px 18px;
  box-sizing:border-box;
  background:rgba(0,5,12,.78);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.pk-greetings-modal-backdrop.is-open{display:flex}
.pk-greetings-modal{
  width:min(660px,96vw);
  max-height:none;
  overflow:visible;
  box-sizing:border-box;
  position:relative;
  padding:24px;
  margin:auto 0;
  border-radius:18px;
  background:#081727;
  color:#fff;
  border:1px solid rgba(255,215,0,.45);
  box-shadow:0 25px 80px rgba(0,0,0,.6);
}
.pk-greetings-modal h3{margin:0 40px 6px 0;color:#ffd84d;font-size:1.35rem}
.pk-greetings-intro{margin:0 0 18px;color:#b9cadd}
.pk-greetings-close{
  position:absolute;
  right:12px;
  top:10px;
  border:0;
  background:transparent;
  color:#fff;
  font-size:30px;
  cursor:pointer;
}
.pk-greetings-modal label{display:block;font-weight:800;margin:12px 0 6px}
.pk-greetings-modal input,
.pk-greetings-modal textarea,
.pk-greetings-modal select{
  width:100%;
  box-sizing:border-box;
  border-radius:10px;
  border:1px solid #31465b;
  background:#06111d;
  color:#fff;
  padding:11px 12px;
  font:inherit;
}
.pk-greetings-modal textarea{min-height:105px;resize:vertical}
.pk-greetings-options{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:12px;
}

.pk-emoji-picker{
  margin:10px 0 6px;
  padding:10px;
  border:1px solid rgba(49,70,91,.9);
  border-radius:13px;
  background:rgba(4,17,31,.72);
}
.pk-emoji-picker-head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}
.pk-emoji-label{
  color:#e7f0fa;
  font-weight:900;
}
.pk-emoji-help{
  color:#8fa7bd;
  font-size:.82rem;
  font-weight:700;
}
.pk-emoji-tabs{
  display:flex;
  gap:6px;
  overflow-x:auto;
  padding:2px 0 8px;
  scrollbar-width:thin;
}
.pk-emoji-tab{
  flex:0 0 auto;
  border:1px solid #31465b;
  background:#071523;
  color:#c9d8e8;
  border-radius:999px;
  padding:7px 10px;
  font:inherit;
  font-size:.82rem;
  font-weight:850;
  cursor:pointer;
}
.pk-emoji-tab:hover{
  background:#10263a;
  color:#fff;
}
.pk-emoji-tab.is-active{
  border-color:rgba(255,216,77,.78);
  background:#2a2307;
  color:#ffd84d;
  box-shadow:0 0 0 2px rgba(255,216,77,.08);
}
.pk-emoji-panels{
  min-height:44px;
}
.pk-emoji-panel{
  display:none;
  flex-wrap:wrap;
  align-items:center;
  gap:7px;
}
.pk-emoji-panel.is-active{
  display:flex;
}
.pk-emoji-panel[hidden]{
  display:none !important;
}
.pk-emoji-btn{
  border:1px solid #31465b;
  background:#0b1d2f;
  color:#fff;
  border-radius:9px;
  min-width:38px;
  height:38px;
  padding:3px 7px;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  transition:transform .12s ease,background .12s ease,border-color .12s ease;
}
.pk-emoji-btn:hover{
  background:#142b42;
  border-color:#55718c;
  transform:scale(1.08);
}
.pk-emoji-btn:active{transform:scale(.96)}

.pk-greetings-preview-wrap{
  margin:16px 0 14px;
}
.pk-greetings-preview-label{
  margin-bottom:7px;
  color:#b9cadd;
  font-weight:800;
}
.pk-greetings-preview{
  position:relative;
  overflow:hidden;
  min-height:60px;
  display:flex;
  align-items:center;
  padding:14px 16px;
  border:1px solid rgba(255,215,0,.28);
  border-radius:12px;
  background:linear-gradient(90deg,#06111d,#0b2033,#06111d);
  font-size:1.05rem;
}
.pk-greetings-preview > span{position:relative;z-index:1}

/* ===== Veilige vaste teksteffecten ===== */
.pk-effect-content{
  position:relative;
  display:inline-block;
  padding:3px 0;
}

.pk-effect-text{
  position:relative;
  display:inline;
  color:inherit;
  font:inherit;
}

/* Emoji krijgen bewust GEEN tekst-effect. */
.pk-emoji-plain{
  display:inline-block;
  color:initial !important;
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  text-shadow:none !important;
  filter:none !important;
  opacity:1 !important;
  animation:none !important;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif !important;
}

.pk-effect-none .pk-effect-text{ }

.pk-effect-glow .pk-effect-text{
  text-shadow:0 0 5px currentColor,0 0 12px currentColor,0 0 22px currentColor;
}

.pk-effect-neon .pk-effect-text{
  text-shadow:0 0 2px #fff,0 0 7px currentColor,0 0 14px currentColor,0 0 25px currentColor;
  filter:saturate(1.35);
}

.pk-effect-shadow .pk-effect-text{
  text-shadow:2px 2px 0 rgba(0,0,0,.95),4px 4px 8px rgba(0,0,0,.65);
}

.pk-effect-pulse .pk-effect-text{
  display:inline-block;
  animation:pkGreetingPulse 1.7s ease-in-out infinite;
}
@keyframes pkGreetingPulse{
  0%,100%{opacity:1;filter:brightness(1)}
  50%{opacity:.72;filter:brightness(1.45)}
}

.pk-effect-rainbow .pk-effect-text{
  display:inline;
  color:transparent !important;
  background:linear-gradient(90deg,#ff4d4d,#ffd84d,#4dff88,#4dc3ff,#c46cff,#ff4dc4,#ff4d4d);
  background-size:240% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  animation:pkGreetingRainbow 4s linear infinite;
  text-shadow:none !important;
}
@keyframes pkGreetingRainbow{
  from{background-position:0 50%}
  to{background-position:240% 50%}
}

.pk-effect-sparkle .pk-effect-text{
  text-shadow:0 0 5px currentColor,0 0 12px currentColor;
}
.pk-effect-sparkle::after{
  content:'✦';
  position:absolute;
  left:-8px;
  top:-4px;
  color:#fff;
  font-size:.72em;
  pointer-events:none;
  text-shadow:0 0 7px #fff,0 0 12px currentColor;
  animation:pkGreetingSparkle 2.2s ease-in-out infinite;
}
@keyframes pkGreetingSparkle{
  0%{left:0%;opacity:0;transform:scale(.4) rotate(0deg)}
  15%{opacity:1}
  55%{opacity:1;transform:scale(1.25) rotate(150deg)}
  100%{left:96%;opacity:0;transform:scale(.5) rotate(300deg)}
}


/* ===== Extra effecten V7 ===== */
.pk-effect-gold .pk-effect-text{
  color:transparent !important;
  background:linear-gradient(90deg,#fff4a8,#ffd84d,#ffad1f,#fff0a0,#ffd84d);
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 0 9px rgba(255,199,40,.28);
  animation:pkGreetingGold 3.8s linear infinite;
}
@keyframes pkGreetingGold{
  from{background-position:0 50%}
  to{background-position:220% 50%}
}

.pk-effect-ice .pk-effect-text{
  color:transparent !important;
  background:linear-gradient(90deg,#ffffff,#bff4ff,#63dfff,#e9fdff,#8adfff);
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 0 8px rgba(105,229,255,.38);
  animation:pkGreetingIce 4.2s linear infinite;
}
@keyframes pkGreetingIce{
  from{background-position:220% 50%}
  to{background-position:0 50%}
}

.pk-effect-fire .pk-effect-text{
  color:transparent !important;
  background:linear-gradient(90deg,#fff36b,#ffb11b,#ff5a1f,#ff2d00,#ffd84d,#ff6b00);
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 0 8px rgba(255,80,0,.35);
  animation:pkGreetingFire 2.6s linear infinite;
}
@keyframes pkGreetingFire{
  from{background-position:0 50%}
  to{background-position:260% 50%}
}

.pk-effect-shimmer .pk-effect-text{
  color:transparent !important;
  background:linear-gradient(105deg,currentColor 0%,currentColor 38%,#ffffff 48%,#ffffff 52%,currentColor 62%,currentColor 100%);
  background-size:240% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  animation:pkGreetingShimmer 2.8s linear infinite;
}
@keyframes pkGreetingShimmer{
  from{background-position:220% 50%}
  to{background-position:-20% 50%}
}

.pk-effect-electric .pk-effect-text{
  text-shadow:0 0 3px #fff,0 0 8px #4dc3ff,0 0 15px #5f7cff,0 0 23px currentColor;
  animation:pkGreetingElectric 1.25s ease-in-out infinite;
}
@keyframes pkGreetingElectric{
  0%,100%{filter:brightness(1);text-shadow:0 0 3px #fff,0 0 8px #4dc3ff,0 0 15px #5f7cff,0 0 23px currentColor}
  50%{filter:brightness(1.5);text-shadow:0 0 4px #fff,0 0 12px #69e5ff,0 0 22px #6b5cff,0 0 30px currentColor}
}

.pk-effect-disco .pk-effect-text{
  animation:pkGreetingDisco 3s linear infinite;
  text-shadow:0 0 8px currentColor;
}
@keyframes pkGreetingDisco{
  0%{color:#ff4d7a}
  20%{color:#ffd84d}
  40%{color:#4dff88}
  60%{color:#4dc3ff}
  80%{color:#c46cff}
  100%{color:#ff4d7a}
}

.pk-effect-flicker .pk-effect-text{
  text-shadow:0 0 7px currentColor,0 0 15px currentColor;
  animation:pkGreetingFlicker 2.4s steps(1,end) infinite;
}
@keyframes pkGreetingFlicker{
  0%,18%,22%,62%,66%,100%{opacity:1;filter:brightness(1.15)}
  20%,64%{opacity:.42;filter:brightness(.8)}
  21%,65%{opacity:.82;filter:brightness(1.6)}
}

.pk-effect-outline .pk-effect-text{
  -webkit-text-stroke:.6px rgba(255,255,255,.78);
  text-shadow:1px 1px 0 rgba(0,0,0,.78),-1px -1px 0 rgba(0,0,0,.38),0 0 8px currentColor;
}

.pk-greetings-submit{
  width:100%;
  margin-top:14px;
  border:0;
  border-radius:11px;
  padding:12px 16px;
  font-weight:900;
  background:#ffd84d;
  color:#151000;
  cursor:pointer;
}
.pk-greetings-status{min-height:24px;margin-top:10px;color:#d8e7f5;font-weight:700}
.pk-greetings-modal-open{overflow:hidden}

@media(max-width:720px){
  .pk-greetings{gap:8px;min-height:54px;padding:12px 10px}
  .pk-greetings-label{display:none}
  .pk-greetings-open{padding:7px 9px;font-size:.84rem}
  .pk-greetings-options{grid-template-columns:1fr}
  .pk-greetings-loop{animation-duration:34s}
  .pk-greetings-modal{padding:20px 16px;margin:0}
  .pk-greetings-modal-backdrop{padding:12px 8px}
}

@media(prefers-reduced-motion:reduce){
  .pk-effect-pulse .pk-effect-text,
  .pk-effect-rainbow .pk-effect-text,
  .pk-effect-sparkle::after,
  .pk-effect-gold .pk-effect-text,
  .pk-effect-ice .pk-effect-text,
  .pk-effect-fire .pk-effect-text,
  .pk-effect-shimmer .pk-effect-text,
  .pk-effect-electric .pk-effect-text,
  .pk-effect-disco .pk-effect-text,
  .pk-effect-flicker .pk-effect-text{
    animation:none !important;
  }
}

/* ===== Alleen zichtbaar voor ingelogde beheerder: direct verwijderen uit ticker ===== */
.pk-greeting-admin-delete{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  margin-left:8px;
  padding:0;
  vertical-align:middle;
  border:1px solid rgba(255,120,120,.65);
  border-radius:999px;
  background:rgba(120,10,10,.88);
  color:#fff;
  font-size:13px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
}
.pk-greeting-admin-delete:hover{
  background:#c62828;
  transform:scale(1.08);
}
.pk-greeting-admin-delete:disabled{
  opacity:.55;
  cursor:wait;
}

/* ===== V6: berichten die wachten op goedkeuring, alleen zichtbaar voor admin ===== */
.pk-greeting-item-pending{
  opacity:.92;
  padding:4px 8px;
  border:1px dashed rgba(255,216,77,.72);
  border-radius:10px;
  background:rgba(255,216,77,.08);
}

.pk-greeting-pending-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  font-size:14px;
  vertical-align:middle;
  cursor:help;
}

.pk-greeting-admin-approve,
.pk-greeting-admin-reject{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  margin-left:5px;
  padding:0;
  vertical-align:middle;
  border-radius:999px;
  color:#fff;
  font-size:15px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
}

.pk-greeting-admin-approve{
  border:1px solid rgba(104,211,145,.8);
  background:rgba(20,120,65,.92);
}
.pk-greeting-admin-approve:hover{
  background:#1f9d55;
  transform:scale(1.08);
}

.pk-greeting-admin-reject{
  border:1px solid rgba(255,120,120,.8);
  background:rgba(150,20,20,.92);
}
.pk-greeting-admin-reject:hover{
  background:#d12b2b;
  transform:scale(1.08);
}

.pk-greeting-admin-approve:disabled,
.pk-greeting-admin-reject:disabled{
  opacity:.55;
  cursor:wait;
}
