.pp-live-preview { margin:0 0 24px; padding:22px; background:#f7f9fd; border:1px solid #dce5f2; border-radius:12px; }
.pp-preview-heading { display:flex; gap:16px; justify-content:space-between; align-items:flex-start; margin-bottom:16px; }
.pp-preview-heading h2 { margin:0 0 7px; font-size:19px; color:#2e4565; }
.pp-preview-heading p,.pp-source-note p { font-size:13px; line-height:1.8; margin:6px 0; color:#65758c; }
.pp-preview-heading .btn { flex-shrink:0; }
.pp-source-note { border-left:3px solid #d5ad67; padding:12px 16px; background:#fffaf0; margin:14px 0 18px; border-radius:4px; color:#795b2e; }
.pp-source-note summary { cursor:pointer; font-size:13px; padding:7px 0; }
.pp-source-note ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 22px; padding-left:20px; font-size:12px; line-height:1.7; }
.pp-preview-status { color:#61738e; padding:16px 0; line-height:1.8; }
.pp-preview-error { padding:14px 16px; color:#a74442; background:#fff2f0; border:1px solid #f1d7d3; border-radius:7px; line-height:1.8; }
.pp-live-preview .pp-panel { margin-bottom:0; }
.pp-evidence-heading { border-top:1px solid #e0e7ef; padding-top:20px; }
.pp-period-inputs { min-width:1040px; width:100%; border-collapse:collapse; }
.pp-period-inputs th { white-space:nowrap; padding:10px; text-align:left; font-size:12px; color:#687b94; background:#f5f7fb; }
.pp-period-inputs td { padding:8px; border-bottom:1px solid #e8edf5; vertical-align:top; }
.pp-period-inputs .field { position:relative; margin:0; min-width:110px; }
.pp-period-inputs input { width:100%; }
.pp-period-inputs .field label { position:absolute; top:0; left:0; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.pp-period-scroll { overflow:auto; max-width:100%; border:1px solid #e0e7ef; border-radius:7px; }
.pp-period-scroll:focus-visible { outline:3px solid #7a9de1; outline-offset:2px; }
.pp-period-add { margin-top:12px; }
@media(max-width:760px) {
  .pp-live-preview { padding:15px; }
  .pp-preview-heading { flex-direction:column; }
  .pp-source-note ul { grid-template-columns:1fr; }
  .pp-savebar,.pp-savebar .pp-actions { flex-direction:column; align-items:stretch; }
  .pp-tabs { flex-wrap:wrap; }
  .pp-tabs button { flex-basis:40%; }
}
