/* ============================================================
   PROPOSAL-FINALE — Evlilik Teklifi Finali (Amiral Sahne)
   ============================================================ */
.blk-wrap[data-block="proposal-finale"]{
  background:
    radial-gradient(900px 520px at 50% 8%, rgba(212,175,55,.14), transparent 62%),
    radial-gradient(700px 420px at 82% 88%, rgba(255,71,126,.07), transparent 60%),
    linear-gradient(180deg, #0B0D12, #12151E 60%, #0B0D12);
  padding:max(36px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(44px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  width:100%;
  max-width:100vw;
  box-sizing:border-box;
  overflow:hidden;
}
.pf-inner{max-width:min(720px, 100%); width:100%; margin:0 auto; position:relative; box-sizing:border-box;}
.pf-stage{position:relative; animation:pfFadeIn .7s cubic-bezier(.16,1,.3,1);}
@keyframes pfFadeIn{from{opacity:0; transform:translateY(24px);} to{opacity:1; transform:translateY(0);}}

.pf-badge{
  display:inline-flex; align-items:center; gap:10px;
  font-size:.72rem; font-weight:700; letter-spacing:.26em; text-transform:uppercase;
  color:var(--blk-accent,#D4AF37);
  border:1px solid rgba(212,175,55,.35); background:rgba(212,175,55,.07);
  padding:8px 18px; border-radius:40px; margin-bottom:34px;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}

/* --- Yüzük kutusu --- */
.pf-box{position:relative; width:190px; height:150px; margin:0 auto 36px;}
.pf-box-lid{
  position:absolute; top:0; left:12px; right:12px; height:58px;
  background:linear-gradient(180deg, #2a2416, #171208);
  border:1.5px solid rgba(212,175,55,.75); border-radius:14px 14px 6px 6px;
  display:flex; align-items:center; justify-content:center;
  color:var(--blk-accent,#D4AF37); font-size:1.5rem;
  box-shadow:0 14px 34px rgba(0,0,0,.55), inset 0 1px 0 rgba(243,229,171,.35);
  z-index:2;
  animation:pfLidFloat 3.4s ease-in-out infinite;
}
@keyframes pfLidFloat{0%,100%{transform:translateY(0) rotate(0deg);} 50%{transform:translateY(-7px) rotate(-1.2deg);}}
.pf-box-body{
  position:absolute; bottom:0; left:0; right:0; height:100px;
  background:linear-gradient(180deg, #1c1810, #0e0c07);
  border:1.5px solid rgba(212,175,55,.5); border-radius:10px 10px 16px 16px;
  box-shadow:0 22px 44px rgba(0,0,0,.6), inset 0 0 40px rgba(212,175,55,.08);
}
.pf-box-glow{
  position:absolute; left:50%; bottom:6px; transform:translateX(-50%);
  width:70%; height:34px; border-radius:50%;
  background:radial-gradient(closest-side, rgba(243,229,171,.5), transparent);
  filter:blur(6px);
  animation:pfGlowPulse 2.2s ease-in-out infinite;
}
@keyframes pfGlowPulse{0%,100%{opacity:.55;} 50%{opacity:1;}}
.pf-box-ribbon{
  position:absolute; top:46px; left:50%; transform:translateX(-50%);
  width:34px; height:62px; z-index:3;
  background:linear-gradient(180deg, #ff477e, #d6336c);
  clip-path:polygon(50% 0, 100% 34%, 78% 100%, 50% 76%, 22% 100%, 0 34%);
  filter:drop-shadow(0 6px 14px rgba(255,71,126,.45));
}

.pf-question{
  font-family:'Cinzel', Georgia, serif;
  font-size:clamp(1.7rem, 5.2vw, 2.7rem); font-weight:600;
  color:#F4F5F7; line-height:1.32; margin:0 0 16px;
  text-shadow:0 2px 34px rgba(212,175,55,.22);
}
.pf-sub{color:#A8AEB8; font-size:1rem; line-height:1.7; max-width:520px; margin:0 auto 40px;}

/* --- Buton arenası --- */
.pf-arena{
  position:relative; min-height:130px; display:flex; flex-direction:column;
  align-items:center; justify-content:flex-start; gap:16px;
}
.pf-yes{
  display:inline-flex; align-items:center; gap:12px;
  padding:16px 42px; border:none; border-radius:50px; cursor:pointer;
  font-family:inherit; font-size:1.06rem; font-weight:800; letter-spacing:.02em;
  color:#0B0D12;
  background:linear-gradient(135deg, #F3E5AB, #D4AF37 55%, #B38F26);
  box-shadow:0 14px 38px rgba(212,175,55,.35), inset 0 1px 0 rgba(255,255,255,.5);
  transition:transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s;
}
.pf-yes:hover{box-shadow:0 18px 48px rgba(212,175,55,.5);}
.pf-no{
  padding:12px 30px; border-radius:50px; cursor:pointer;
  font-family:inherit; font-size:.95rem; font-weight:600;
  color:#C7CBD4; background:rgba(255,255,255,.05);
  border:1.5px solid rgba(255,255,255,.22);
  backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  transition:transform .18s, opacity .18s;
}
.pf-no.pf-escaped{position:absolute; z-index:5;}
.pf-hint{margin-top:22px; color:#6E7480; font-size:.85rem; font-style:italic;}

/* --- Kabul sahnesi --- */
.pf-confetti{position:fixed; inset:0; pointer-events:none; z-index:60;}
.pf-accept-head{text-align:center; margin-bottom:34px;}
.pf-accept-ring{
  width:92px; height:92px; margin:0 auto 22px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:2.3rem; color:#0B0D12;
  background:radial-gradient(circle at 32% 28%, #F3E5AB, #D4AF37 62%, #9d7c1f);
  box-shadow:0 0 0 8px rgba(212,175,55,.15), 0 18px 44px rgba(0,0,0,.5), 0 0 44px rgba(212,175,55,.45);
  animation:pfRingPop .8s cubic-bezier(.34,1.56,.64,1);
}
@keyframes pfRingPop{0%{transform:scale(0);} 100%{transform:scale(1);}}
.pf-accept-title{
  font-family:'Cinzel', Georgia, serif;
  font-size:clamp(1.5rem, 4.6vw, 2.2rem); font-weight:700; letter-spacing:.06em;
  color:var(--blk-accent,#D4AF37); margin:0 0 14px;
}
.pf-accept-msg{color:#A8AEB8; font-size:1rem; line-height:1.7; max-width:520px; margin:0 auto;}

/* --- Söz senedi kartı --- */
.pf-details{
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
    #12151E;
  border:1px solid rgba(212,175,55,.4);
  border-radius:22px; padding:34px 30px 26px; position:relative;
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  box-shadow:0 26px 60px rgba(0,0,0,.55);
  overflow:hidden;
}
.pf-details::before{
  content:""; position:absolute; inset:9px;
  border:1px solid rgba(212,175,55,.22); border-radius:15px; pointer-events:none;
}
.pf-deed-eyebrow{
  text-align:center; font-size:.72rem; font-weight:700; letter-spacing:.34em;
  color:var(--blk-accent,#D4AF37); margin-bottom:18px;
}
.pf-deed-names{
  text-align:center;
  font-family:'Cinzel', Georgia, serif;
  font-size:clamp(1.6rem, 5vw, 2.3rem); font-weight:600; color:#F4F5F7;
  margin-bottom:24px; display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap;
}
.pf-deed-amp{color:#ff477e; font-size:1.2rem; animation:pfBeat 1.4s ease-in-out infinite;}
@keyframes pfBeat{0%,100%{transform:scale(1);} 12%{transform:scale(1.28);} 24%{transform:scale(1);}}
.pf-deed-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:22px;}
.pf-deed-cell{
  background:rgba(212,175,55,.06); border:1px solid rgba(212,175,55,.18);
  border-radius:14px; padding:14px 16px; text-align:left;
}
.pf-deed-cell-full{grid-column:1 / -1;}
.pf-deed-label{display:block; font-size:.66rem; font-weight:700; letter-spacing:.24em; color:var(--blk-accent,#D4AF37); margin-bottom:6px;}
.pf-deed-value{display:block; color:#E8EAEF; font-size:.98rem; line-height:1.55;}
.pf-deed-footer{
  display:flex; justify-content:space-between; align-items:center; gap:12px;
  border-top:1px dashed rgba(212,175,55,.3); padding-top:16px;
  color:#A8AEB8; font-size:.9rem;
}
.pf-deed-stamp{
  font-family:'Cinzel', Georgia, serif;
  border:2px solid rgba(255,71,126,.65); color:#ff477e;
  padding:6px 14px; border-radius:8px; font-weight:700; letter-spacing:.2em;
  transform:rotate(-7deg); font-size:.8rem;
  box-shadow:0 0 18px rgba(255,71,126,.18);
}

/* --- Aksiyonlar --- */
.pf-actions{display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-top:26px;}
.pf-map-btn, .pf-deed-btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:13px 26px; border-radius:40px; cursor:pointer;
  font-family:inherit; font-size:.93rem; font-weight:700;
  color:#0B0D12; text-decoration:none; border:none;
  background:linear-gradient(135deg, #F3E5AB, #D4AF37 55%, #B38F26);
  box-shadow:0 12px 30px rgba(212,175,55,.28);
  transition:transform .2s, box-shadow .2s;
}
.pf-map-btn:hover, .pf-deed-btn:hover{transform:translateY(-2px); box-shadow:0 16px 40px rgba(212,175,55,.4);}
.pf-deed-btn-ghost{
  color:#E8EAEF; background:transparent;
  border:1.5px solid rgba(255,255,255,.25); box-shadow:none;
}
.pf-deed-btn-ghost:hover{background:rgba(255,255,255,.06); box-shadow:none;}
.pf-sent-note{
  margin-top:22px; color:#6EE7A0; font-size:.92rem;
  display:flex; align-items:center; justify-content:center; gap:8px;
}

@media(max-width:640px){
  .pf-details{
    padding:24px 16px 20px;
    border-radius:18px;
    width:100%;
    box-sizing:border-box;
  }
  .pf-deed-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .pf-arena{
    min-height:140px;
    width:100%;
    gap:12px;
  }
  .pf-yes{
    width:100%;
    max-width:280px;
    min-height:50px;
    justify-content:center;
    font-size:1rem;
    padding:14px 24px;
    box-sizing:border-box;
  }
  .pf-no{
    min-height:44px;
    padding:12px 24px;
  }
  .pf-actions{
    flex-direction:column;
    width:100%;
  }
  .pf-map-btn, .pf-deed-btn{
    width:100%;
    min-height:48px;
    justify-content:center;
    box-sizing:border-box;
  }
  .pf-box{
    width:160px;
    height:135px;
    margin:0 auto 28px;
  }
  .pf-box-lid{
    height:50px;
    font-size:1.3rem;
  }
  .pf-box-body{
    height:88px;
  }
}

@media(max-width:380px){
  .pf-details{
    padding:20px 12px 16px;
  }
  .pf-deed-cell{
    padding:12px 10px;
  }
}
