/* Form Builder: controls + exact-size page preview. Urdu fonts self-hosted (SIL OFL 1.1, see /tools/assets/fonts/OFL.txt). */
@font-face{font-family:"FB Nastaliq";src:url(/tools/assets/fonts/NotoNastaliqUrdu.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:"FB Naskh";src:url(/tools/assets/fonts/NotoNaskhArabic.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
.ur{font-family:"FB Nastaliq","Noto Nastaliq Urdu","Jameel Noori Nastaleeq","Urdu Typesetting",serif;direction:rtl;unicode-bidi:isolate}
/* ---- layout ---- */
.fb-grid{display:grid;gap:22px;margin-top:14px}
@media(min-width:1000px){.fb-grid{grid-template-columns:400px minmax(0,1fr);align-items:start}.fb-prev{position:sticky;top:72px}}
.fb-step{background:var(--mist);border-radius:18px;padding:14px 16px;margin-bottom:12px}
.fb-step>summary{cursor:pointer;font-weight:700;list-style:none;display:flex;align-items:center;gap:10px}.fb-step>summary::-webkit-details-marker{display:none}.fb-step>summary::after{content:"+";margin-left:auto;font-weight:400;font-size:1.3rem;color:var(--ink2)}.fb-step[open]>summary::after{content:"−"}
.fb-step .hud{display:block;margin-bottom:8px}
.fb-step h3{margin:6px 0 10px;font-size:1.05rem}
#fb-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}
#fb-tabs .chip{padding:7px 12px;min-height:34px;font-size:.84rem}
#fb-q{margin-bottom:10px}
#fb-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto;padding:2px}
.fb-tc{font:inherit;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:border-color .15s,transform .1s}
.fb-tc b{font-size:.9rem;line-height:1.25}.fb-tc .ur{font-size:.92rem;color:var(--ink2);text-align:right;line-height:1.7}.fb-tc small{color:var(--ink2);font-size:.72rem}
.fb-tc:hover{border-color:var(--g)}.fb-tc.on{border-color:var(--g);box-shadow:0 0 0 3px rgba(10,143,85,.18);background:#f2fbf6}
.fb-seg{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:var(--pill);padding:3px;gap:2px;margin:4px 0 12px}
.fb-seg button{font:inherit;font-weight:600;font-size:.88rem;border:0;background:none;border-radius:var(--pill);padding:7px 14px;cursor:pointer;color:var(--ink);min-height:36px}
.fb-seg button[aria-pressed=true]{background:var(--g);color:#fff}
.fb-in{margin-bottom:10px}.fb-in label{font-size:.86rem;margin-bottom:4px}.fb-in label .ur{font-weight:500;color:var(--ink2);font-size:.95rem;margin-left:6px;line-height:1.6}
.fb-in input,.fb-in select,.fb-in textarea{background:#fff;min-height:42px;padding:9px 12px;font-size:.95rem}.fb-in textarea{min-height:60px}
.fb-opts{display:flex;flex-wrap:wrap;gap:6px 14px}.fb-opts .ck{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:.9rem;margin:0}.fb-opts input{width:18px;height:18px;min-height:0;padding:0;margin:0}
#fb-fill{max-height:520px;overflow:auto;padding-right:4px}
#fb-design .row{margin-bottom:8px}#fb-design label{font-size:.84rem}#fb-design input,#fb-design select{background:#fff;min-height:42px;padding:8px 12px;font-size:.92rem}
#fb-design .ck{display:flex;align-items:center;gap:8px;font-weight:500;margin-top:6px}#fb-design .ck input{width:18px;height:18px;min-height:0;padding:0;margin:0}
#fb-desc{min-height:90px;background:#fff;font-size:.92rem}
.fb-eg{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fb-eg .chip{font-size:.8rem;padding:6px 10px;min-height:32px}
#fb-edit{display:grid;gap:8px;max-height:420px;overflow:auto;margin-top:10px}
.fb-er{display:grid;grid-template-columns:auto 1fr;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px}
.fb-er .ctl{display:flex;flex-direction:column;gap:4px}.fb-er .main{display:grid;gap:6px}
.fb-er input,.fb-er select,.fb-er textarea{min-height:36px;padding:6px 10px;font-size:.86rem;background:var(--mist);border-radius:10px}.fb-er textarea{min-height:48px}
.icon-btn.sm{width:30px;height:30px;font-size:.85rem}.icon-btn.x{color:#d70015}.icon-btn[disabled]{opacity:.35;cursor:default}
.fb-addrow{display:grid;grid-template-columns:1fr 1fr auto;gap:6px;margin-top:10px}.fb-addrow input,.fb-addrow select{min-height:40px;background:#fff;font-size:.88rem}
.fb-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}.fb-bar .btn{padding:10px 16px;min-height:42px;font-size:.92rem}.fb-bar .pc{margin-left:auto;font-size:.84rem;color:var(--ink2)}
.btn.ghost{--c:#fff;--cd:#d0d0d5;color:var(--ink);border:1px solid var(--line)}
.fb-stage{position:relative;overflow:hidden;background:#e4e8ec;border-radius:14px;min-height:420px}.fb-stage .fb-wait{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#4a4a4f;margin:0}.fb-stage.ready .fb-wait{display:none}.fb-ctl .hint a{text-decoration:underline;text-underline-offset:2px}
.fb-pages{position:absolute;left:0;top:0;transform-origin:0 0;padding:0}
/* ---- the printed page ---- */
.fb-page{position:relative;background:#fff;color:#111;letter-spacing:0;box-sizing:border-box;padding:14mm 16mm;margin:0 0 6mm;box-shadow:0 2px 12px rgba(0,0,0,.18);overflow:hidden;font-family:Arial,Helvetica,sans-serif;line-height:1.35}
.fb-page.a4{width:210mm;height:297mm}.fb-page.legal{width:215.9mm;height:355.6mm}
.fb-body{height:calc(100% - 8mm);overflow:hidden}
.fb-measure{position:absolute!important;left:-30000px!important;top:0;visibility:hidden;height:auto!important;margin:0}.fb-measure .fb-body{height:auto;overflow:visible}
.fs-9 .fb-page{font-size:9pt}.fs-10 .fb-page{font-size:10pt}.fs-11 .fb-page{font-size:11pt}.fs-12 .fb-page{font-size:12pt}.fs-13 .fb-page{font-size:13pt}
.fb-page .ur{font-family:"FB Nastaliq","Noto Nastaliq Urdu","Jameel Noori Nastaleeq","Urdu Typesetting",serif;line-height:1.9;font-size:1.02em}
.uf-naskh .fb-page .ur{font-family:"FB Naskh","Noto Naskh Arabic",Arial,sans-serif;line-height:1.5;font-size:1.1em}
.fb-page[dir=rtl]{text-align:start}
.fb-page .lab{display:flex;gap:2mm 4mm;align-items:baseline}.fb-page .lab b{font-weight:600}
.bi-side .fb-page .lab{justify-content:space-between}.bi-stack .fb-page .lab{flex-direction:column;gap:0;align-items:flex-start}.bi-stack .fb-page[dir=ltr] .lab .ur{align-self:flex-end}
.fb-head{display:flex;align-items:center;gap:5mm;margin-bottom:5mm;padding-bottom:2mm;border-bottom:2px solid #111}.fb-head.nohead{border-bottom:0;padding-bottom:0;margin-bottom:2mm}
.fb-head .logo{width:22mm;height:22mm;object-fit:contain;flex:0 0 auto}.fb-head .mid{flex:1;text-align:center;min-width:0}
.fb-head .org{font-weight:800;font-size:1.35em}.fb-head h2{margin:1mm 0 0;font-size:1.18em;font-weight:700;letter-spacing:0}.fb-page h3{letter-spacing:0}.fb-head h2 .lab{justify-content:center;gap:2mm 6mm;flex-wrap:wrap}.fb-head h2 .lab b{flex:0 1 auto}.fb-head h2 .ur{font-weight:600}
.fb-photo{width:35mm;height:45mm;border:1px solid #111;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.82em;color:#444;overflow:hidden}.fb-photo img{width:100%;height:100%;object-fit:cover}.fb-photo small{font-size:.75em;color:#666}.fb-photo .lab{flex-direction:column;gap:0}
.fb-f{display:flex;align-items:flex-end;gap:3mm;margin-bottom:2.6mm;break-inside:avoid}.fb-f>.lab{flex:0 0 34%;padding-bottom:.35mm}.fb-f>.val{flex:1;min-height:1.65em;word-break:break-word}
.fb-f.boxes{align-items:center}.fb-f.ml{align-items:flex-start}.fb-f.ml>.lab{padding-top:.5mm}
.val.lines{border-bottom:1px solid #111;padding:0 1mm}.val.boxes{border:1px solid #111;padding:.9mm 2mm;min-height:2.3em;display:flex;align-items:center}.val.plain{border-bottom:1px dotted #aaa;padding:0 1mm}
.val .ph{color:#767676;font-size:.75em}
.val.cells{display:inline-flex;gap:0;direction:ltr}.val.cells i{display:inline-block;width:5.4mm;height:7.2mm;border:1px solid #111;margin-right:-1px;text-align:center;font-style:normal;line-height:7.2mm;font-size:.95em}
.val.cells i:nth-child(5),.val.cells i:nth-child(12){margin-right:1.8mm}
.val[class*=lines-]{display:flex;flex-direction:column;gap:0}.val[class*=lines-] .ln{display:block;min-height:1.95em;border-bottom:1px solid #111;font-style:normal}
.val.boxes[class*=lines-]{padding:0 2mm}.val.boxes[class*=lines-] .ln{border-bottom:1px dotted #777}.val.boxes[class*=lines-] .ln:last-child{border-bottom:0}
.val.plain[class*=lines-] .ln{border-bottom:1px dotted #aaa}
.fb-row2{display:grid;grid-template-columns:1fr 1fr;gap:0 6mm;margin-bottom:2.6mm;break-inside:avoid}.fb-row2 .fb-f{margin-bottom:0}.fb-row2 .fb-f>.lab{flex-basis:40%}
.fb-f.opts{align-items:flex-start}.val.opts{display:flex;flex-wrap:wrap;gap:1.5mm 6mm;border:0;padding:0}
.opt{display:inline-flex;align-items:center;gap:1.6mm}.opt .bx{width:4.2mm;height:4.2mm;border:1px solid #111;display:inline-flex;align-items:center;justify-content:center;font-size:.8em;font-style:normal;line-height:1;flex:0 0 auto}
.fb-h{font-size:1.06em;font-weight:700;margin:3.5mm 0 2.6mm;padding-bottom:1mm;border-bottom:1.5px solid #111;break-after:avoid}.fb-h .lab{justify-content:space-between}
.st-boxes .fb-h{background:#ececec;border:1px solid #111;padding:1.2mm 2.5mm}
.fb-tw{margin:1mm 0 3.2mm;break-inside:avoid}.fb-tl{font-weight:700;margin-bottom:1.2mm}
.fb-t{width:100%;border-collapse:collapse;table-layout:fixed}.fb-t th,.fb-t td{border:1px solid #111;padding:1.1mm 1.6mm;text-align:start;vertical-align:middle;word-break:break-word}
.fb-t th{background:#efefef;font-weight:600;text-align:center;color:#111}.fb-t th .lab{justify-content:center;flex-direction:column;gap:0;align-items:center}.fb-t td{height:7.4mm}
.fb-t.small{font-size:.68em}.fb-t.small th,.fb-t.small td{padding:.4mm .2mm;height:6mm;text-align:center;overflow:hidden}.fb-t.small th:nth-child(2),.fb-t.small td:nth-child(2){text-align:start}
.fb-t.hasr th:first-child{width:9mm}.fb-t.small th:first-child{width:6.5mm}.fb-t.small th:nth-child(2){width:34mm}
.fb-p{margin-bottom:2.8mm;white-space:normal}.fb-p .en,.fb-p .ur{display:block}.fb-p .ur{text-align:start}.fb-p.b{font-weight:700}.fb-p.a-right{text-align:end}.fb-p.a-center{text-align:center}.fb-p.a-left{text-align:start}
.fb-p.side{display:grid;grid-template-columns:1fr 1fr;gap:0 7mm;align-items:start}.fb-p.side .en{grid-column:1}.fb-p.side .ur{grid-column:2}
.fb-p.a-right.side .ur,.fb-p.a-center.side .ur{text-align:inherit}
.fb-note{font-size:.84em;color:#333;font-style:italic;margin:1mm 0 2.5mm}.fb-note .ur{font-style:normal;display:block}
.fb-decl{border:1px solid #111;padding:2mm 3mm;margin:3mm 0;break-inside:avoid}.fb-decl .lab.dl{font-weight:700;margin-bottom:1mm}.fb-decl p{margin:0}.fb-decl .ur{display:block}
.st-lines .fb-decl,.st-plain .fb-decl{border:0;border-top:1px solid #111;padding-left:0;padding-right:0}
.fb-signrow{display:flex;gap:6mm;justify-content:flex-end;margin:8mm 0 3mm;break-inside:avoid}.fb-signrow.n2,.fb-signrow.n3{justify-content:space-between}
.fb-sign{width:58mm;text-align:center}.fb-sign .line{display:block;border-top:1px solid #111;margin-bottom:1mm}.fb-sign .lab{justify-content:center;gap:0 3mm;font-size:.92em}
.fb-foot{position:absolute;left:16mm;right:16mm;bottom:6mm;display:flex;justify-content:space-between;gap:4mm;font-size:.78em;color:#555;border-top:1px solid #ddd;padding-top:1mm}
.fb-foot .ft{font-family:Arial,Helvetica,sans-serif}
@media(max-width:520px){#fb-pick{grid-template-columns:1fr}.fb-addrow{grid-template-columns:1fr 1fr}.fb-addrow .btn{grid-column:1/-1}.fb-bar .pc{margin-left:0;width:100%}}
@media print{
body.fb-printing>*:not(main){display:none!important}body.fb-printing main>*:not(#tool-panel){display:none!important}body.fb-printing #tool-panel>*:not(.fb-grid){display:none!important}body.fb-printing .fb-grid>*:not(.fb-prev){display:none!important}body.fb-printing .fb-prev>*:not(.fb-stage){display:none!important}
body.fb-printing,body.fb-printing main,body.fb-printing .wrap{width:auto!important;margin:0!important;padding:0!important}body.fb-printing #tool-panel{margin:0!important;padding:0!important;box-shadow:none!important;border-radius:0!important;background:none!important}
body.fb-printing .fb-grid{display:block!important;margin:0!important}body.fb-printing .fb-prev{position:static!important}
body.fb-printing .fb-stage{position:static!important;height:auto!important;min-height:0!important;background:none!important;overflow:visible!important;border-radius:0!important}
body.fb-printing .fb-pages{position:static!important;transform:none!important;left:0!important}
body.fb-printing .fb-page{box-shadow:none!important;margin:0!important;break-after:page;page-break-after:always}body.fb-printing .fb-page:last-child{break-after:auto;page-break-after:auto}
}
