/* ============================================================
   Personalization Journey V2 — focused mobile-first task flow
   ============================================================ */
.pj{--iv:#faf6f1;--card:#fff;--blush:#f6e7e2;--blush2:#fdf4f1;--brown:#7c4a37;--brown-d:#603626;--gold:#c9a24b;
    --ink:#2c2320;--ink2:#93857c;--line:#efe6dd;--sel:#dda490;
    max-width:640px;margin:0 auto;padding:0 16px;color:var(--ink);
    min-height:100dvh;display:flex;flex-direction:column}
/* رأس مضغوط */
.pj-top{display:flex;align-items:center;gap:12px;padding:8px 0}
.pj-back{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink2);
    display:grid;place-items:center;text-decoration:none;flex:none;cursor:pointer}
.pj-brand{font-weight:800;color:var(--brown);line-height:1.1}.pj-brand small{display:block;font-size:.6rem;color:var(--ink2);font-weight:700}
/* تقدّم مضغوط */
.pj-prog{padding:6px 0 4px}
.pj-prog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.pj-prog-step{font-size:.8rem;font-weight:800;color:var(--brown)}
.pj-dots{display:flex;gap:7px}.pj-dot{width:26px;height:6px;border-radius:99px;background:var(--line);transition:.3s}
.pj-dot.on{background:linear-gradient(90deg,var(--brown),var(--sel))}
/* خطوات — تملأ المساحة فتلتصق منطقة الإجراء بالأسفل */
.pj-steps{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}
.pj-step{display:none;animation:pjin .35s ease both}
/* توسّط رأسيّ للخطوات القصيرة (تركيبة متعمّدة، بلا فراغ سفليّ)؛ الطويلة تلتصق بالأعلى وتُمرَّر */
.pj-step.is-active{display:flex;flex-direction:column;flex:1;justify-content:center}
@keyframes pjin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.pj-flex{display:none}
.pj-h{font-size:1.5rem;font-weight:800;margin:6px 0 6px;line-height:1.3}
.pj-final-h{font-size:1.5rem;font-weight:800;margin:2px 0 10px}
.pj-sub{color:var(--ink2);line-height:1.7;margin:0 0 16px}
.pj-help{text-align:center;color:var(--brown-d);font-size:.86rem;line-height:1.6;margin:14px 0 0;background:var(--blush2);
    border:1px solid var(--blush);border-radius:14px;padding:11px 14px}
.pj-label{font-weight:800;font-size:.88rem;margin:14px 0 4px}
.pj-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px}
.pj-ta{width:100%;border:1.5px solid var(--line);border-radius:16px;padding:15px;font:inherit;font-size:1rem;background:#fff;color:var(--ink);resize:none;line-height:1.8}
.pj-ta:focus{outline:none;border-color:var(--sel);box-shadow:0 0 0 4px rgba(221,164,144,.15)}
.pj-count{text-align:end;font-size:.72rem;color:var(--ink2);margin-top:4px}
.pj-ai-btn{width:100%;background:var(--blush2);border:1.5px solid var(--blush);color:var(--brown);font-weight:800;font-family:inherit;padding:13px;border-radius:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px}
.pj-ai-sugg{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.pj-sugg{background:var(--blush2);border:1px solid var(--blush);border-radius:14px;padding:13px}
.pj-sugg p{margin:0 0 10px;line-height:1.7;font-size:.95rem}.pj-sugg-act{display:flex;gap:8px}
.pj-mini{border:none;background:var(--brown);color:#fff;font-weight:800;font-family:inherit;padding:8px 14px;border-radius:10px;cursor:pointer;font-size:.85rem}
.pj-mini.ghost{background:#fff;color:var(--brown);border:1px solid var(--sel)}
/* وسائط */
.pj-media{display:flex;align-items:center;gap:12px;padding:15px;border:1.5px solid var(--line);border-radius:16px;background:#fff;margin-bottom:12px}
.pj-media-ic{width:48px;height:48px;border-radius:50%;background:var(--blush2);color:var(--brown);display:grid;place-items:center;font-size:1.2rem;flex:none}
.pj-media-b{flex:1}.pj-media-b b{display:block;font-size:.98rem}.pj-media-b span{font-size:.8rem;color:var(--ink2)}
.pj-rec{border:none;background:var(--brown);color:#fff;font-weight:800;font-family:inherit;padding:10px 16px;border-radius:12px;cursor:pointer;flex:none}
.pj-rec.on{background:#c0392b}
.pj-chip-ok{color:#16a34a;font-weight:800;font-size:.82rem}.pj-del{background:none;border:none;color:#c0392b;cursor:pointer;font-weight:700;font-size:.82rem}
audio,video{width:100%;margin-top:10px;border-radius:12px}
/* إضافات */
.pj-addon{display:flex;align-items:center;gap:12px;padding:15px;border:1.5px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;margin-bottom:10px;transition:.15s}
.pj-addon.on{border-color:var(--brown);background:var(--blush2);box-shadow:0 4px 16px rgba(124,74,55,.1)}
.pj-addon-ic{width:44px;height:44px;border-radius:12px;background:var(--blush2);color:var(--brown);display:grid;place-items:center;font-size:1.15rem;flex:none}
.pj-addon-b{flex:1}.pj-addon-b b{display:block}.pj-addon-b span{font-size:.8rem;color:var(--ink2)}
.pj-addon-price{font-weight:700;color:var(--ink2);font-size:.85rem}
.pj-addon.on .pj-addon-price{color:var(--brown)}
.pj-check{width:24px;height:24px;border-radius:50%;border:2px solid var(--line);flex:none;display:grid;place-items:center;color:#fff;font-size:.7rem;opacity:0;transition:.15s}
.pj-addon.on .pj-check{background:var(--brown);border-color:var(--brown);opacity:1}
.pj-in{width:100%;border:1.5px solid var(--line);border-radius:14px;padding:13px 14px;font:inherit;background:#fff;margin-top:8px}
.pj-in:focus{outline:none;border-color:var(--sel)}
/* خطوة 4 — خياران */
.pj-choice2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:6px}
.pj-choice{background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:18px 12px;text-align:center;cursor:pointer;font-family:inherit;transition:.15s}
.pj-choice.sel{border-color:var(--brown);background:var(--blush2);box-shadow:0 6px 20px rgba(124,74,55,.12)}
.pj-choice-ic{font-size:1.9rem;display:block;margin-bottom:6px}
.pj-choice b{display:block;font-size:1.05rem;color:var(--ink)}.pj-choice span{font-size:.78rem;color:var(--ink2)}
/* خطوة 5 — الذروة العاطفيّة */
.pj-final-top{text-align:center;margin-bottom:16px}
.pj-final-heart{font-size:2rem}
.pj-review-img{width:150px;height:150px;border-radius:22px;object-fit:cover;background:var(--blush2);margin:2px auto 10px;box-shadow:0 14px 34px rgba(124,74,55,.18)}
.pj-final-title{font-weight:800;font-size:1.35rem}
.pj-review-ctx{display:inline-flex;gap:6px;align-items:center;background:linear-gradient(135deg,#fbf3df,#fdf4f1);border:1px solid #f0e2bf;color:#8a6a1f;font-weight:800;font-size:.82rem;padding:5px 12px;border-radius:99px;margin-top:8px}
.pj-review-ctx i{color:var(--gold)}
.pj-touch-title{font-weight:800;color:var(--ink2);font-size:.82rem;margin-bottom:6px}
.pj-touch{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.pj-touch:last-child{border-bottom:none}
.pj-touch-em{font-size:1.3rem;flex:none;width:28px;text-align:center}
.pj-touch-b{flex:1}.pj-touch-b b{display:block;font-size:.95rem}.pj-touch-b small{color:var(--ink2);font-size:.85rem}
.pj-edit{color:var(--brown);font-weight:800;font-size:.82rem;background:none;border:none;cursor:pointer}
.pj-smartcard{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,#fbf3ef,#f6e7e2);border:1px solid var(--blush);border-radius:18px;padding:15px;margin:14px 0}
.pj-smartcard-ic{font-size:1.6rem;flex:none}
.pj-smartcard b{display:block;font-size:1rem}.pj-smartcard span{font-size:.86rem;color:var(--brown-d);line-height:1.6}
.pj-total{display:flex;flex-direction:column;gap:6px;margin:0;padding:15px;background:var(--card);border:1px solid var(--line);border-radius:16px}
.pj-total .row{display:flex;justify-content:space-between;font-size:.92rem;color:var(--ink2)}
.pj-total .grand{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:800;color:var(--ink);padding-top:8px;border-top:1px solid var(--line)}
.pj-err{color:#c0392b;font-size:.85rem;margin-top:8px}
/* منطقة إجراء ملتصقة — تبقى ظاهرة دائمًا */
.pj-actions{position:sticky;bottom:0;z-index:20;margin:0 -16px;padding:10px 16px calc(12px + env(safe-area-inset-bottom,0));
    background:rgba(250,246,241,.97);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
.pj-skip{display:block;width:100%;text-align:center;background:none;border:none;color:var(--ink2);font-weight:700;font-size:.9rem;cursor:pointer;margin-bottom:8px}
.pj-skip:hover{color:var(--brown)}
.pj-bar{display:flex;align-items:center;gap:12px}
.pj-bar-price{font-weight:800;font-size:1.1rem;white-space:nowrap}.pj-bar-price small{font-size:.7rem;color:var(--ink2);font-weight:700}
.pj-cta{flex:1;border:none;cursor:pointer;background:linear-gradient(135deg,var(--brown),var(--brown-d));color:#fff;font-family:inherit;font-size:1rem;font-weight:800;padding:15px;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:8px}
/* رفيق الهديّة — ديسكتوب فقط */
.pj-aside{display:none}
.pj-aside img,.pj-aside-ph{width:100%;border-radius:14px;aspect-ratio:1/1;object-fit:cover;background:var(--blush2);margin-bottom:12px}
.pj-aside-ph{display:grid;place-items:center;font-size:3rem}
.pj-aside-title{font-weight:800;font-size:1.05rem}
.pj-aside-ctx{color:var(--gold);font-weight:800;font-size:.82rem;margin:2px 0 12px}
.pj-aside-price{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;padding-bottom:12px;border-bottom:1px solid var(--line)}
.pj-aside-price span{color:var(--ink2);font-size:.85rem;font-weight:700}.pj-aside-price b{font-size:1.15rem}
.pj-aside-sum{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.pj-aside-sum>div{display:flex;justify-content:space-between;font-size:.88rem}
.pj-aside-sum span{color:var(--ink2)}.pj-aside-sum b{color:var(--brown)}

@media (prefers-reduced-motion:reduce){.pj-step{animation:none}}

/* ============ ديسكتوب — عمودان ============ */
@media (min-width:1024px){
  .pj{max-width:1000px;min-height:auto;display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;padding:8px 16px 48px}
  .pj-top{grid-column:1;position:static}
  .pj-prog{grid-column:1}
  .pj-steps{grid-column:1;display:block;flex:none}
  .pj-actions{grid-column:1;position:static;margin:20px 0 0;padding:0;background:none;border:none}
  .pj-step.is-active{display:block;flex:none}
  .pj-flex{display:none}
  .pj-aside{display:block;grid-column:2;grid-row:1 / span 4;position:sticky;top:16px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px}
  .pj-bar{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 16px}
}
