/* PRO Predictor v2 — Modal (FULL, with flash banner) */
.ppv2-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.56);display:none;z-index:10000;}
.ppv2-modal-backdrop.active{display:block;}
.ppv2-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(680px,92vw);background:#fff;color:#0f172a;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.35);overflow:hidden;z-index:10001;}
.ppv2-modal-header{padding:12px 16px;background:#1e2a5a;color:#e9eefc;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.ppv2-modal-title{font-weight:800;font-size:16px;}
.ppv2-modal-close{background:transparent;border:none;color:#e9eefc;font-size:18px;cursor:pointer;}
.ppv2-modal-body{padding:14px 16px;max-height:60vh;overflow:auto;}
.ppv2-modal-footer{padding:12px 16px;display:flex;justify-content:flex-end;gap:8px;border-top:1px solid rgba(0,0,0,.08);}
.ppv2-btn{background:#1e2a5a;color:#e9eefc;border:none;border-radius:10px;padding:8px 12px;font-weight:700;cursor:pointer;}
.ppv2-btn.ghost{background:#fff;color:#0f172a;border:1px solid rgba(0,0,0,.12);}
.ppv2-btn:active{transform:translateY(1px);}
.ppv2-form{display:grid;grid-template-columns:1fr;gap:10px;}
.ppv2-field{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#f7f7fb;border:1px solid rgba(0,0,0,.06);padding:8px 10px;border-radius:10px;}
.ppv2-field .label{font-size:13px;font-weight:700;}
.ppv2-field .hint{font-size:12px;color:#475569;margin-left:auto;margin-right:8px;}
.ppv2-field input[type="number"],.ppv2-field select{padding:6px 8px;border-radius:8px;border:1px solid rgba(0,0,0,.14);}
.ppv2-field input[type="number"]{width:90px;}
.ppv2-check{display:flex;align-items:center;gap:8px;}

/* Flash banner (inside modal, top-center) */
.ppv2-flash{
  position:absolute; left:50%; top:10px; transform:translateX(-50%);
  background:#16a34a; color:#fff; font-weight:800; font-size:12px;
  padding:8px 12px; border-radius:999px; box-shadow:0 10px 30px rgba(0,0,0,.2);
  opacity:0; pointer-events:none; transition:opacity .25s ease;
}
.ppv2-flash.show{ opacity:1; }
.ppv2-flash.err{ background:#dc2626; }
