:root{--navy:#0b1f4b;--gold:#c9a227;--bg:#f4f5f9}
*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Helvetica,Arial,sans-serif;background:var(--bg);color:#1a1a2e}
.center{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--navy)}
.card{background:#fff;border-radius:10px;padding:16px;margin:10px 0;box-shadow:0 1px 4px #0002;border-top:3px solid var(--gold)}
.login{width:340px;display:flex;flex-direction:column;gap:8px}.login h2{color:var(--navy);margin:0}
header{background:var(--navy);color:#fff;display:flex;gap:14px;align-items:center;padding:10px 16px;flex-wrap:wrap}header b{color:var(--gold)}
nav button{background:none;color:#fff;border:0;padding:6px 10px;cursor:pointer;border-bottom:2px solid transparent}nav button.on{border-color:var(--gold);color:var(--gold)}
main{padding:12px 18px;max-width:1300px;margin:auto}
button{background:var(--navy);color:#fff;border:0;border-radius:6px;padding:7px 12px;cursor:pointer}button.gold{background:var(--gold);color:var(--navy);font-weight:600}button.sm{padding:3px 8px;font-size:12px}
input,select,textarea{border:1px solid #c8cbd8;border-radius:6px;padding:6px 8px;font:inherit;width:100%}textarea{min-height:60px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}label{font-size:12px;color:#555;display:block}
table{width:100%;border-collapse:collapse;font-size:14px}th{background:var(--navy);color:var(--gold);text-align:left}th,td{padding:5px 7px;border-bottom:1px solid #e3e5ee}
h3{color:var(--navy);margin:4px 0 8px;border-bottom:1px solid var(--gold);padding-bottom:4px}.muted{color:#777;font-size:12px}.err{color:#b00}
.pill{background:var(--gold);color:var(--navy);border-radius:10px;padding:2px 8px;font-size:12px}.verify{background:#ffe7a8;color:#7a5b00;border-radius:4px;padding:0 4px;font-size:11px}
.ur{font-family:"Noto Nastaliq Urdu","Jameel Noori Nastaleeq","Noto Naskh Arabic",serif;direction:rtl}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:900px){.cols{grid-template-columns:1fr}}
#print{display:none}
@media print{@page{size:A4;margin:0}body{background:#fff}#app,#login{display:none!important}#print{display:block}
.page{width:210mm;height:297mm;position:relative;background:url(assets/letterhead.png) center/100% 100% no-repeat;-webkit-print-color-adjust:exact;print-color-adjust:exact;page-break-after:always;overflow:hidden}
.body{position:absolute;top:50mm;left:14mm;right:14mm;bottom:72mm;font-size:10.5pt;overflow:hidden}
.body h4{margin:3px 0;color:var(--navy);font-size:10.5pt}.body table{font-size:10pt}.body th{background:#fff;color:var(--navy);border-bottom:1px solid var(--navy)}.body td{padding:2px 4px}
.disc{position:absolute;bottom:62mm;left:14mm;right:14mm;font-size:8pt;text-align:center;color:#555}.sig{position:absolute;bottom:66mm;right:16mm;text-align:right;font-size:9.5pt}}
[hidden]{display:none!important}
.pk{position:relative;border:1px solid #c8cbd8;border-radius:6px;padding:4px;background:#fff;margin-bottom:6px}.pk input{border:0;padding:4px}.pk input:focus{outline:none}
.chips{display:flex;flex-wrap:wrap;gap:4px}.chip{background:var(--navy);color:#fff;border-radius:12px;padding:2px 8px;font-size:12px}.chip b{color:var(--gold);cursor:pointer;margin-left:4px}
.dd{position:absolute;left:0;right:0;top:100%;z-index:20;background:#fff;border:1px solid var(--gold);border-radius:6px;max-height:280px;overflow:auto;box-shadow:0 4px 12px #0003}
.dd div{padding:5px 8px;cursor:pointer;font-size:13px}.dd div.hi,.dd div:hover{background:#fdf5dc}
.rcols{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-top:8px}.rf{margin-bottom:6px}.qp{width:auto;font-size:12px;padding:2px;margin-left:6px}
.photos{display:flex;flex-direction:column;gap:8px}.ph{border:1px solid #ddd;border-radius:6px;padding:4px}.phimg{height:120px;display:flex;align-items:center;justify-content:center;background:#f0f1f6}.phimg img{max-width:100%;max-height:120px}
.btnl{background:var(--navy);color:#fff;border-radius:6px;padding:3px 8px;cursor:pointer;font-size:12px;display:inline-block}details{margin:4px 0}summary{font-weight:600;color:var(--navy);cursor:pointer}
@media print{.rg{width:100%;font-size:inherit;border:1px solid #0b1f4b}.rg th,.rf2 th{background:#eef0f7!important;color:#0b1f4b;text-align:left;white-space:nowrap;font-weight:600;width:1%}.rg td,.rg th,.rf2 td,.rf2 th{padding:1px 4px;border:1px solid #ccd;vertical-align:top}
.rf2{width:100%;font-size:inherit;border-collapse:collapse}.pcols{display:grid;grid-template-columns:1fr 44mm;gap:3mm;margin-top:2mm}.pcols h4{margin:0 0 2px}
.pph{display:flex;flex-direction:column;gap:1.5mm}.pph img,.pph .noimg{width:44mm;height:28mm;object-fit:cover;border:1px solid #999;display:block}.pph small{font-size:7pt;display:block;text-align:center}}

/* print layout rules also applied on screen so fitPrint can measure offscreen */
#print .page{width:210mm;height:297mm;position:relative;background:url(assets/letterhead.png) center/100% 100% no-repeat;-webkit-print-color-adjust:exact;print-color-adjust:exact;page-break-after:always;overflow:hidden}
#print .body{position:absolute;top:50mm;left:14mm;right:14mm;bottom:72mm;font-size:10.5pt;overflow:hidden}
#print .body h4{margin:3px 0;color:#0b1f4b;font-size:inherit}#print .body table{font-size:inherit;border-collapse:collapse}#print .body td{padding:2px 4px}
#print .rg{width:100%;border:1px solid #0b1f4b}#print .rg th,#print .rf2 th{background:#eef0f7;color:#0b1f4b;text-align:left;white-space:nowrap;font-weight:600;width:1%}
#print .rg td,#print .rg th,#print .rf2 td,#print .rf2 th{padding:1px 4px;border:1px solid #ccd;vertical-align:top}#print .rf2{width:100%}
#print .pcols{display:grid;grid-template-columns:1fr 44mm;gap:3mm;margin-top:2mm}#print .pcols h4{margin:0 0 2px}
#print .pph{display:flex;flex-direction:column;gap:1.5mm}#print .pph img,#print .pph .noimg{width:44mm;height:28mm;object-fit:cover;border:1px solid #999;display:block}#print .pph small{font-size:7pt;display:block;text-align:center}
#print .disc{position:absolute;bottom:62mm;left:14mm;right:14mm;font-size:8pt;text-align:center;color:#555}#print .sig{position:absolute;bottom:66mm;right:16mm;text-align:right;font-size:9.5pt}
.sg{border:1px solid #e3e5ee;border-radius:6px;padding:4px 8px;margin:6px 0}.st{font-size:12px}.st td{padding:2px}.st input,.st select{padding:3px;font-size:12px}
#print .mini{width:100%;border-collapse:collapse;font-size:.92em}#print .mini th,#print .mini td{border:1px solid #ccd;padding:0 3px;background:#fff;color:#000;font-weight:normal}#print .mini th{background:#f4f5fa;font-weight:600}
#print .fh{text-align:center!important;background:#0b1f4b!important;color:#c9a227!important}
.cb{position:relative}.cb input{padding-right:24px}.cbar,.pk .cbar{position:absolute;right:7px;top:50%;transform:translateY(-50%);color:var(--navy);font-size:11px;cursor:pointer;user-select:none}.pk .cbar{top:auto;bottom:9px;transform:none}
.cb .dd div{padding:5px 8px;cursor:pointer;font-size:13px}.cb .dd div:hover,.cb .dd div.hi{background:#fdf5dc}
select{cursor:pointer}
@font-face{font-family:"Noto Nastaliq Urdu";src:url(assets/fonts/NotoNastaliqUrdu.ttf) format("truetype");font-display:swap}
.ur{line-height:2}.rxu{font-size:1.05em;line-height:2.1;margin-top:1px}
.vgrid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:12px;align-items:start}.vright{position:sticky;top:8px}
@media(max-width:1100px){.vgrid{grid-template-columns:1fr}.vright{position:static}}
.pvbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.pvwrap{width:397px;height:562px;overflow:hidden;border:1px solid #bbb;box-shadow:0 2px 8px #0003;background:#fff}
.pv{transform:scale(.5);transform-origin:0 0;width:210mm}
.pv .page{width:210mm;height:297mm;position:relative;background:url(assets/letterhead.png) center/100% 100% no-repeat;overflow:hidden}
.pv .body{position:absolute;top:50mm;left:14mm;right:14mm;bottom:72mm;font-size:10.5pt;overflow:hidden}.pv .body h4{margin:3px 0;color:#0b1f4b;font-size:inherit}.pv .body table{font-size:inherit;border-collapse:collapse}.pv .body td{padding:2px 4px}
.pv .disc{position:absolute;bottom:62mm;left:14mm;right:14mm;font-size:8pt;text-align:center;color:#555}.pv .sig{position:absolute;bottom:66mm;right:16mm;text-align:right;font-size:9.5pt}
.rxr{display:flex;gap:6px;align-items:flex-start;margin:4px 0}.rxl{width:80px;flex:none;color:#556;font-size:13px;padding-top:8px}.rxc{display:flex;flex-wrap:wrap;gap:5px}
.rc{min-height:38px;min-width:44px;padding:4px 12px;border:1px solid #9bb0c4;border-radius:19px;background:#f7f9fc;color:#123;cursor:pointer;font-size:14px}.rc.ur{font-size:15px;padding:0 12px}
.rc.on{background:#0b1f4b;color:#fff;border-color:#0b1f4b}.rc.add{border-style:dashed;color:#777}.rc:focus{outline:3px solid #c9a227}
.big{min-height:40px;font-size:14px}.urbox{width:100%;font-size:17px;background:#fff8e1}.warn{background:#fff3cd;border:1px solid #e0a800;padding:6px;border-radius:6px;margin:4px 0}
.rxsel{margin:6px 0;font-size:15px}.qpk{width:100%;margin:2px 0;font-size:13px;background:#f3f6fb}
#print .rxu{line-height:2.1}
.advp ul{columns:2;column-gap:6mm;margin:2px 0;padding-right:4mm;padding-left:0;line-height:1.75}.advp li{break-inside:avoid;margin:0}
.body.tight .rxu,.body.tight .advp ul{line-height:1.6}
.btnup{display:inline-flex;align-items:center;padding:8px 14px;border-radius:6px;background:#0b1f4b;color:#fff;cursor:pointer}.btnup.gold{background:#c9a227;color:#000}
.sm2{min-height:30px;font-size:12px;padding:2px 9px}
.repgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-top:8px}.repc{border:1px solid #d6dbe6;border-radius:8px;padding:6px;background:#fafbfd}
.rthumb{height:110px;display:flex;align-items:center;justify-content:center;background:#eef1f7;border-radius:6px;cursor:pointer;overflow:hidden}.rthumb img{max-width:100%;max-height:110px}
.pdfic{width:62px;height:80px;background:#c62828;color:#fff;font-weight:bold;display:flex;align-items:flex-end;justify-content:center;padding-bottom:10px;border-radius:4px 16px 4px 4px;box-shadow:0 2px 4px #0003}
.rmeta{font-size:12px;margin:4px 0;line-height:1.4}.tg{display:inline-block;background:#e8ecf7;color:#0b1f4b;border-radius:10px;padding:0 7px;font-size:11px;margin:1px}
#viewer{position:fixed;inset:0;z-index:100;background:#000c;display:flex;flex-direction:column}#viewer[hidden]{display:none}.vwbar{display:flex;gap:8px;align-items:center;background:#0b1f4b;color:#fff;padding:8px 12px;flex-wrap:wrap}
#viewer iframe{flex:1;border:0;background:#fff}.vwimg{flex:1;overflow:auto;text-align:center;background:#222}.vwimg img{max-width:100%}
.lt{border-collapse:collapse;width:100%;font-size:13px}.lt td,.lt th{padding:4px 6px;border-bottom:1px solid #eee;text-align:left}.lt tr.abn td{color:#c62828;font-weight:600}.fl{color:#c62828;font-weight:bold}
.tlg{display:grid;grid-template-columns:1fr 1.3fr;gap:16px}@media(max-width:900px){.tlg{grid-template-columns:1fr}}.tlg h4{margin:8px 0 3px;color:#0b1f4b}
.tlv{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.tli{min-width:200px;border-left:4px solid #c9a227;background:#fafbfd;padding:6px 8px;border-radius:4px;font-size:12.5px}
.cmp{width:100%;border-collapse:collapse;font-size:12.5px}.cmp td,.cmp th{padding:3px 6px;border-bottom:1px solid #eee;text-align:left}.cmp tr.new td{background:#e7f6ea}.cmp tr.stop td{background:#fde8e8;text-decoration:line-through}.cmp tr.stop td:last-child{text-decoration:none}.cmp tr.chg td{background:#fff3cd}
.alg{color:#c62828;font-weight:600}.advlist{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;direction:rtl;background:#fffdf3;padding:6px;border-radius:6px}.mgr{background:#f6f7fb;padding:8px;border-radius:6px}
#pvFit{font-size:12px;margin-top:4px}
.rxl2{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:3mm}.rxl2 .rxen{white-space:nowrap}.rxl2 .rxu{margin-right:auto;margin-left:0;text-align:right;flex:1 1 45%;line-height:1.9}
.advp ul{list-style-position:inside;padding:0}.body.tight .rxu,.body.tight .advp ul{line-height:1.55}.body td{padding:1px 3px}
.by{font-size:11px;color:#6b7a99;font-weight:normal;font-style:italic}
#ciModal{position:fixed;inset:0;background:#0b1f4b88;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding-top:4vh;overflow:auto}#ciModal[hidden]{display:none}
.cibox{background:#fff;border-radius:10px;padding:16px 20px;width:min(900px,95vw);box-shadow:0 10px 40px #0005}.cibox h4{margin:12px 0 6px;color:#0b1f4b}
.steps{display:flex;gap:6px;margin:4px 0 6px}.steps span{flex:1;text-align:center;padding:5px;border-radius:6px;background:#eef1f7;font-size:12px;color:#6b7a99}.steps span.on{background:#0b1f4b;color:#fff}
.card.queue{border-left:4px solid #c9a227}
/* v2 */
#hsearch{flex:1;min-width:220px;max-width:480px}.gs{position:relative}.gs input{width:100%}
.gsr{position:absolute;left:0;right:0;top:100%;background:#fff;color:#222;border:1px solid #ccd;border-radius:8px;box-shadow:0 8px 24px #0003;z-index:80;max-height:60vh;overflow:auto}
.gsi{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:6px 8px;border-bottom:1px solid #eee;cursor:pointer;flex-wrap:wrap}.gsi.on,.gsi:hover{background:#eef1f7}.gsa{display:flex;gap:4px}
.ci2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0}.ci2 button{background:#eef1f7;color:var(--navy);padding:14px;font-size:17px;font-weight:600;border:2px solid transparent;text-align:left}.ci2 button.on{border-color:var(--gold);background:#fff8e1}.ci2 small{display:block;font-weight:normal;font-size:12px;color:#667}
button.big{font-size:16px;padding:10px 16px}.homebar{border-left:4px solid var(--gold)}.pnob{background:var(--navy);color:var(--gold);border-radius:6px;padding:1px 6px;font-size:13px}
#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px;opacity:0;transition:.3s;z-index:99;pointer-events:none}#toast.show{opacity:1}
.noproc #procCard{display:none!important}
.pv .page.ppm{background:none}.pv .page.ppm::before{content:'';position:absolute;inset:0;background:url(assets/letterhead.png) center/100% 100% no-repeat;opacity:.3;pointer-events:none}
#print .page.ppm{background:none!important}#print .page.ppm .body{color:#000}
.talign .tbox{position:absolute;border:0.3mm dashed #000}.talign .tl{position:absolute;top:1mm;left:1mm;font-size:8pt}.talign .br{position:absolute;bottom:1mm;right:1mm;font-size:8pt}.talign .rl{position:absolute;left:2mm;font-size:6pt;border-top:0.2mm solid #000;width:6mm}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:760px){
 header{padding:8px;gap:6px}header>b{font-size:14px;width:100%}nav{display:flex;overflow-x:auto;width:100%}nav button{white-space:nowrap;padding:6px 8px}#hsearch{order:5;max-width:none;width:100%}
 main{padding:6px!important}.card{padding:10px!important;margin:6px 0!important}.grid{grid-template-columns:1fr 1fr!important}.cols{display:block!important}
 .row{flex-wrap:wrap}input,select,textarea,button{font-size:16px}button.sm{font-size:13px;padding:6px 9px}table{font-size:13px}
 .cibox{width:100vw;min-height:100vh;border-radius:0;padding:12px}#ciModal{padding-top:0}.ci2 button{font-size:15px;padding:10px}
 .vleft,.vright{width:100%!important;max-width:none!important;flex:none!important}.vlay,.vwrap{display:block!important}.pv{overflow:auto}
 .queue table th:nth-child(3),.queue table td:nth-child(3),.queue table th:nth-child(5),.queue table td:nth-child(5){display:none}
}
@media (max-width:420px){.grid{grid-template-columns:1fr!important}}
@media print{#toast,#ciModal,#viewer,.gsr{display:none!important}}
@media (max-width:760px){#main input,#main select,#main textarea{max-width:100%!important;min-width:0!important}#main .card.row>input,#main .card.row>select{width:auto!important;flex:1 1 140px}#main .card.row>h3{flex:1 1 100%!important}}
@media (max-width:1100px){.vgrid{grid-template-columns:minmax(0,1fr)!important}.vleft,.vright{min-width:0}}
@media (max-width:430px){.pvwrap{zoom:.84;margin:0 auto}}@media (max-width:370px){.pvwrap{zoom:.76}}

.vkey label{font-weight:700;color:#0b1f4b}.vkey input{border:2px solid #c9a227!important}
.vkey .row{flex-wrap:nowrap}.vkey .row input{min-width:0;flex:1}

.body>div:last-child>div:last-child{display:flex;flex-direction:column}.rxtail{margin-top:auto;padding-top:4px}
.pv .body,#print .body{display:flex;flex-direction:column}.pv .body>div:last-child,#print .body>div:last-child{flex:1 1 auto;min-height:0}

.chl{max-height:260px;overflow:auto;border:1px solid #ddd;border-radius:6px;padding:4px;margin-top:6px}.chi{display:block;padding:3px 4px;color:#222}.chi:has(input:checked){background:#fff7d6}

#cloudB{position:fixed;left:8px;bottom:8px;z-index:50;font:12px system-ui;padding:3px 9px;border-radius:12px;cursor:pointer;background:#fff3cd;color:#664d03;border:1px solid #e6c65c}#cloudB.cb-ok{background:#d1f2dc;color:#0f5132;border-color:#7cc79a}#cloudB.cb-err{background:#f8d7da;color:#842029;border-color:#e08a92}#cloudB.cb-busy{background:#dbe7ff;color:#0b1f4b}@media print{#cloudB{display:none!important}}
