.petaria-modal-backdrop{
  position:fixed;
  inset:0;
  background:rgba(7,11,17,0.62);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:12000;
}
.petaria-modal-backdrop.is-open{ display:flex; }
.petaria-modal{
  width:min(460px, calc(100vw - 24px));
  background:linear-gradient(180deg, rgba(28,34,48,0.98) 0%, rgba(17,22,33,0.98) 100%);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:22px;
  box-shadow:0 24px 60px rgba(0,0,0,0.42);
  overflow:hidden;
  color:#eef3ff;
}
.petaria-modal-header{
  padding:18px 20px 8px;
  font-size:22px;
  font-weight:900;
  line-height:1.25;
}
.petaria-modal-body{
  padding:0 20px 18px;
  color:rgba(238,243,255,0.88);
  font-size:16px;
  line-height:1.65;
  white-space:pre-line;
}
.petaria-modal-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  padding:0 20px 20px;
}
.petaria-modal-btn{
  min-width:108px;
  border:none;
  border-radius:999px;
  padding:12px 18px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  transition:transform .12s ease, opacity .12s ease, box-shadow .12s ease;
}
.petaria-modal-btn:hover{ transform:translateY(-1px); }
.petaria-modal-btn:active{ transform:translateY(0); }
.petaria-modal-btn.primary{
  background:linear-gradient(180deg, #8fd8ff 0%, #5aa9ff 100%);
  color:#0d2242;
  box-shadow:0 10px 24px rgba(82,145,255,0.32);
}
.petaria-modal-btn.secondary{
  background:rgba(255,255,255,0.08);
  color:#eef3ff;
  border:1px solid rgba(255,255,255,0.08);
}
.petaria-modal-close{
  position:absolute;
  top:12px;
  right:12px;
  width:36px;
  height:36px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,0.08);
  color:#fff;
  cursor:pointer;
  font-size:18px;
  line-height:1;
}
.petaria-modal-shell{ position:relative; }
.petaria-modal-btn[disabled]{
  opacity:.68;
  cursor:not-allowed;
  transform:none;
}


.petaria-reward-backdrop{
  position:fixed;
  inset:0;
  z-index:12050;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(15,23,42,.65);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.petaria-reward-backdrop.is-open{ display:flex; }
.petaria-reward-shell{
  position:relative;
  width:min(420px,100%);
  padding:24px 22px 20px;
  border-radius:24px;
  background:linear-gradient(180deg,#fffdf5 0%,#ffffff 100%);
  border:1px solid rgba(251,191,36,.45);
  box-shadow:0 30px 80px rgba(15,23,42,.35);
  text-align:center;
  overflow:hidden;
  animation:petariaRewardPop .45s ease;
}
.petaria-reward-shell:before{
  content:'';
  position:absolute;
  left:-10%;
  right:-10%;
  top:-80px;
  height:180px;
  background:radial-gradient(circle,rgba(251,191,36,.30) 0%,rgba(251,191,36,0) 70%);
}
.petaria-reward-close{
  position:absolute;
  top:10px;
  right:10px;
  width:36px;
  height:36px;
  border:0;
  border-radius:999px;
  background:#eff6ff;
  color:#0f172a;
  font-size:26px;
  line-height:1;
  cursor:pointer;
}
.petaria-reward-badge{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  border-radius:999px;
  background:#fef3c7;
  color:#92400e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.petaria-reward-orb{
  position:absolute;
  left:50%;
  top:86px;
  transform:translateX(-50%);
  width:180px;
  height:180px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(96,165,250,.30) 0%,rgba(59,130,246,.18) 35%,rgba(59,130,246,0) 72%);
  filter:blur(2px);
  animation:petariaRewardPulse 2.4s ease-in-out infinite;
}
.petaria-reward-photo-wrap{
  position:relative;
  z-index:1;
  width:156px;
  height:156px;
  margin:18px auto 14px;
  border-radius:999px;
  padding:10px;
  background:linear-gradient(180deg,#fef3c7,#fde68a);
  box-shadow:0 14px 38px rgba(245,158,11,.28);
}
.petaria-reward-photo-wrap.no-image{
  display:flex;
  align-items:center;
  justify-content:center;
}
.petaria-reward-photo{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:999px;
  background:#fff;
  padding:8px;
  animation:petariaRewardFloat 2.2s ease-in-out infinite;
}
.petaria-reward-fallback{
  width:100%;
  height:100%;
  border-radius:999px;
  display:none;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#0f172a;
  font-size:72px;
  line-height:1;
  animation:petariaRewardFloat 2.2s ease-in-out infinite;
}
.petaria-reward-label{
  position:relative;
  z-index:1;
  font-size:13px;
  font-weight:700;
  color:#92400e;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.petaria-reward-name{
  position:relative;
  z-index:1;
  margin-top:8px;
  font-size:28px;
  line-height:1.15;
  font-weight:900;
  color:#0f172a;
}
.petaria-reward-meta{
  position:relative;
  z-index:1;
  margin-top:10px;
  color:#475569;
}
.petaria-reward-actions{
  position:relative;
  z-index:1;
  margin-top:18px;
  display:flex;
  justify-content:center;
}
.petaria-reward-btn{
  border:0;
  border-radius:999px;
  padding:12px 22px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  background:linear-gradient(180deg,#8fd8ff 0%,#5aa9ff 100%);
  color:#0d2242;
  box-shadow:0 10px 24px rgba(82,145,255,0.25);
}
@keyframes petariaRewardPop{
  0%{opacity:0;transform:translateY(14px) scale(.92)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes petariaRewardPulse{
  0%,100%{transform:translateX(-50%) scale(.92);opacity:.65}
  50%{transform:translateX(-50%) scale(1.06);opacity:1}
}
@keyframes petariaRewardFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}
@media (max-width:640px){
  .petaria-reward-backdrop{ padding:14px; }
  .petaria-reward-shell{ padding:22px 16px 18px; border-radius:20px; }
  .petaria-reward-name{ font-size:24px; }
  .petaria-reward-photo-wrap{ width:132px; height:132px; }
}


.petaria-secure-wrap{
  display:grid;
  gap:14px;
}
.petaria-secure-text{
  color:rgba(238,243,255,0.88);
}
.petaria-secure-input{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.12);
  background:rgba(255,255,255,0.06);
  color:#fff;
  font-size:18px;
  font-weight:700;
  letter-spacing:1px;
  outline:none;
  box-sizing:border-box;
}
.petaria-secure-input:focus{
  border-color:rgba(124,211,255,0.75);
  box-shadow:0 0 0 3px rgba(59,130,246,0.2);
}
.petaria-secure-kbd{
  display:grid;
  gap:8px;
}
.petaria-secure-row{
  display:grid;
  grid-template-columns:repeat(10, minmax(0, 1fr));
  gap:6px;
}
.petaria-secure-row:last-child{
  grid-template-columns:1.3fr 2fr;
}
.petaria-secure-key{
  border:none;
  border-radius:12px;
  background:rgba(255,255,255,0.08);
  color:#fff;
  font-size:14px;
  font-weight:800;
  padding:10px 6px;
  cursor:pointer;
}
.petaria-secure-key:hover{
  background:rgba(255,255,255,0.14);
}
.petaria-secure-key-wide{
  grid-column:span 2;
}
.petaria-secure-key-xl{
  min-width:0;
}
.petaria-secure-key-space{
  min-width:0;
}
@media (max-width: 640px){
  .petaria-modal{
    width:min(520px, calc(100vw - 16px));
  }
  .petaria-modal-header{
    font-size:20px;
  }
  .petaria-secure-row{
    grid-template-columns:repeat(5, minmax(0, 1fr));
  }
  .petaria-secure-key-wide{
    grid-column:span 2;
  }
}
