/* ParsiVakil contract-generator engine styles — matches existing generators
   (.builder-form family) + output + Word/print. Works in dark & light theme. */
.pvc-wrap{max-width:1140px;margin:0 auto;padding:0 22px;display:grid;gap:26px}
@media(min-width:920px){.pvc-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}}
.builder-form{background:var(--dark-elev);border:1px solid var(--border-soft);border-radius:16px;padding:26px 24px}
.builder-form h3{font-size:16px;font-weight:800;color:var(--gold);margin:0 0 6px}
.builder-form .subtitle{font-size:13px;color:var(--muted);margin:0 0 20px;line-height:1.9}
.form-section{margin-bottom:22px}
.form-section-label{font-size:11px;font-weight:800;letter-spacing:2px;color:var(--gold);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-soft)}
.form-row{display:grid;gap:12px;margin-bottom:12px}
.form-row.two-col{grid-template-columns:1fr 1fr}
@media(max-width:520px){.form-row.two-col{grid-template-columns:1fr}}
.form-field label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px;font-weight:500}
.form-field input,.form-field textarea{width:100%;padding:10px 12px;background:var(--dark-soft);color:var(--cream);border:1px solid var(--border-soft);border-radius:8px;font:inherit;font-size:13px;font-family:"Vazirmatn",sans-serif;outline:none;transition:border .2s}
.form-field input:focus,.form-field textarea:focus{border-color:var(--gold)}
.form-field textarea{min-height:70px;resize:vertical;line-height:1.9}
.form-checkbox{display:flex;align-items:flex-start;gap:10px;padding:11px 13px;background:var(--dark-soft);border:1px solid var(--border-soft);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:border .2s}
.form-checkbox:hover{border-color:var(--border)}
.form-checkbox input{margin-top:3px;accent-color:var(--gold);width:16px;height:16px;flex-shrink:0}
.form-checkbox .fc-txt strong{display:block;font-size:13.5px;color:var(--cream);font-weight:700}
.form-checkbox .fc-txt span{font-size:12px;color:var(--muted);line-height:1.7}
.pvc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
/* output panel */
.pvc-output-wrap{position:sticky;top:80px}
.pvc-output{background:#fff;color:#1a1a1a;border-radius:14px;padding:34px 32px;min-height:300px;box-shadow:0 10px 40px rgba(0,0,0,.28);font-family:"Vazirmatn",sans-serif;line-height:2;font-size:13.5px;direction:rtl}
.pvc-output h2{font-size:18px;font-weight:900;text-align:center;margin:0 0 4px;color:#0A1628}
.pvc-output .pvc-sub{text-align:center;font-size:12px;color:#777;margin:0 0 24px}
.pvc-output h4{font-size:14.5px;font-weight:800;color:#0A1628;margin:20px 0 6px;border-right:3px solid var(--gold,#D4A84B);padding-right:9px}
.pvc-output p{margin:0 0 10px;text-align:justify}
.pvc-output .pvc-empty{color:#999;text-align:center;padding:60px 20px;font-size:14px}
.sig-row{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:40px;padding-top:20px;border-top:1px solid #d4cfc0}
.sig-row .sig-col{text-align:center;font-size:12.5px;color:#555}
.sig-row .sig-col .sig-line{margin-top:44px;border-top:1px dotted #999;padding-top:6px}
.pvc-hint{font-size:11.5px;color:var(--muted);margin-top:12px;text-align:center}
@media(max-width:919px){.pvc-output-wrap{position:static}}
/* print / word */
@media print{
  body *{visibility:hidden}
  .pvc-output,.pvc-output *{visibility:visible}
  .pvc-output{position:absolute;left:0;top:0;width:100%;box-shadow:none;border-radius:0;padding:0}
}

/* ---- AI risk analysis panel ---- */
#pvc-risk-btn{border-color:var(--border)!important}
.pvc-risk{margin-top:14px;background:rgba(212,168,75,.06);border:1px solid var(--border);border-radius:12px;padding:18px 20px;font-size:13.5px;line-height:2;color:var(--cream);direction:rtl}
.pvc-risk.pvc-loading{color:var(--muted);text-align:center}
.pvc-risk-head{font-size:14.5px;font-weight:800;color:var(--gold-light);margin-bottom:10px}
.pvc-risk p{margin:0 0 9px}
.pvc-risk strong{color:var(--gold-light);font-weight:800}
.pvc-risk-li{position:relative;padding-right:16px;margin:0 0 7px}
.pvc-risk-li::before{content:"◆";position:absolute;right:0;color:var(--gold);font-size:9px;top:6px}
.pvc-risk-warn{margin-top:12px!important;padding-top:10px;border-top:1px solid var(--border-soft);font-size:11.5px;color:var(--muted)}
.pvc-risk-quota{font-size:11.5px;color:var(--muted);text-align:center}
.pvc-dots::after{content:"…";animation:pvcdots 1.2s steps(4,end) infinite;display:inline-block;width:1em;text-align:right;overflow:hidden;vertical-align:bottom}
@keyframes pvcdots{0%{width:0}100%{width:1.2em}}
