/* =========================================================
   IMPRESSA DOC — PHASE 2 BILLING MODAL
   ========================================================= */

.phase2-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(10,11,12,.72);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  overflow:auto;
}
.phase2-modal.is-open{display:flex;}
.phase2-dialog{
  width:min(1020px,100%);
  max-height:calc(100vh - 56px);
  overflow:auto;
  border-radius:20px;
  background:#fff;
  box-shadow:0 36px 100px rgba(0,0,0,.34);
}
.phase2-head{
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:28px 30px 20px;
  background:#111;
  color:#fff;
}
.phase2-title{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:28px;}
.phase2-sub{margin:8px 0 0;color:rgba(255,255,255,.62);font-size:11px;line-height:1.55;}
.phase2-close{
  width:36px;height:36px;border-radius:50%;
  border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);
  color:#fff;font-size:22px;cursor:pointer;
}
.phase2-cycle{
  display:flex;gap:8px;padding:18px 30px 0;
}
.phase2-cycle button{
  padding:9px 12px;border:1px solid #ddd8cf;border-radius:8px;background:#fff;
  color:#555;font-size:10px;font-weight:700;cursor:pointer;
}
.phase2-cycle button.is-active{background:#111;color:#c8a96a;border-color:#111;}
.billing-status{margin:14px 30px 0;padding:10px 12px;border-radius:8px;background:#faf8f3;color:#666;font-size:10px;}
.phase2-plans{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:22px 30px;
}
.phase2-plan{
  position:relative;display:flex;flex-direction:column;padding:22px;
  border:1px solid #e0ddd5;border-radius:14px;background:#fff;
}
.phase2-plan.is-featured{border-color:#c8a96a;box-shadow:0 0 0 3px rgba(200,169,106,.09);}
.phase2-badge{
  position:absolute;right:14px;top:14px;padding:5px 8px;border-radius:999px;
  background:#c8a96a;color:#111;font-size:7px;font-weight:800;text-transform:uppercase;
}
.phase2-plan h3{margin:0 0 10px;font-size:13px;}
.phase2-price{font-size:27px;font-weight:800;color:#111;}
.phase2-period{margin-top:3px;color:#888;font-size:9px;}
.phase2-features{list-style:none;padding:0;margin:17px 0 22px;display:grid;gap:8px;}
.phase2-features li{font-size:10px;color:#555;}
.phase2-features li::before{content:"✓";color:#a88443;font-weight:800;margin-right:7px;}
.phase2-plan .btn{margin-top:auto;justify-content:center;}
.phase2-note{padding:0 30px 26px;color:#999;font-size:9px;}
@media(max-width:820px){
  .phase2-modal{padding:14px;align-items:flex-start;}
  .phase2-dialog{max-height:none;margin:14px 0;}
  .phase2-plans{grid-template-columns:1fr;padding:18px;}
  .phase2-head{padding:24px 20px 18px;}
  .phase2-cycle{padding:16px 20px 0;}
  .billing-status{margin:12px 20px 0;}
}
