:root{--bg:#f4f7f7;--card:#fff;--ink:#12302f;--mute:#5b7473;--line:#d6e2e1;--brand:#0f766e;--brand-d:#0b5a54;--bad:#b42318;--ok:#157f3b;--warn:#fff4d6}
@media (prefers-color-scheme:dark){:root{--bg:#0e1b1b;--card:#152626;--ink:#e6f2f1;--mute:#97b3b1;--line:#27403f;--brand:#2bb3a7;--brand-d:#5fd0c5;--bad:#ff8a80;--ok:#6fdc8c;--warn:#3a3317}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.45 system-ui,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}
.top{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--brand);color:#fff}
.top a{color:#fff;text-decoration:none}.brand{font-weight:700}.top nav{display:flex;gap:16px}
.proto{background:var(--warn);padding:6px 16px;font-size:13px;text-align:center}
main{max-width:760px;margin:0 auto;padding:16px}
h1{font-size:22px;margin:4px 0 12px}h2{font-size:18px;margin:20px 0 8px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:10px 0}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}
.mute{color:var(--mute);font-size:14px}
label{display:block;margin:12px 0 4px;font-weight:600;font-size:14px}
input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:inherit}
textarea{min-height:90px}
.btn{display:inline-block;padding:12px 16px;border:0;border-radius:10px;background:var(--brand);color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;min-height:44px}
.btn.sec{background:transparent;color:var(--brand-d);border:1px solid var(--brand)}
.btn.bad{background:var(--bad);color:#fff}
.btn.sm{padding:8px 12px;min-height:36px;font-size:14px}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.err{background:#fde7e5;color:#7a1810;border-radius:10px;padding:10px 12px;margin:10px 0}
.ok{background:#e3f6e8;color:#0f5d28;border-radius:10px;padding:10px 12px;margin:10px 0}
.list a.item{display:block;color:inherit;text-decoration:none}
.chip{display:inline-block;padding:2px 10px;border-radius:99px;background:var(--line);font-size:13px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.thumb{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--card);text-align:center;font-size:12px}
.thumb img{width:100%;height:90px;object-fit:cover;display:block;cursor:pointer}
.thumb .pdf{height:90px;display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px}.stat b{display:block;font-size:24px}
.lock{position:fixed;inset:0;background:var(--brand);display:flex;align-items:center;justify-content:center;padding:16px;z-index:10}
.lock[hidden]{display:none}
.lock .box{background:var(--card);color:var(--ink);border-radius:16px;padding:24px;width:100%;max-width:340px;text-align:center}
.lock input{text-align:center;font-size:26px;letter-spacing:8px}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px;gap:10px}
.overlay img{max-width:100%;max-height:80vh;object-fit:contain}
[hidden]{display:none!important}
.tag{display:inline-block;padding:3px 10px;border-radius:99px;background:var(--line);font-size:13px;margin:6px 0}
.tag.bad{background:#fde7e5;color:#7a1810;font-weight:600}
.notes{white-space:pre-wrap}
.due{color:var(--bad);font-weight:700}
.check{display:flex;gap:10px;align-items:center;font-weight:600;margin:14px 0}
.check input{width:auto;min-width:22px;height:22px}
.card.warn{background:var(--warn)}
.card.ok{background:#e3f6e8;color:#0f5d28}
.viewer{max-height:45vh;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#000;touch-action:pan-x pan-y pinch-zoom;margin:8px 0}
.viewer img{width:100%;display:block}
@media (prefers-color-scheme:dark){.tag.bad{background:#4a1d19;color:#ffb4ab}.card.ok{background:#16351f;color:#a6e8b9}}
/* documents */
.doc-sheet{background:#fff;color:#000;padding:24px;border:1px solid #999;max-width:720px;margin:0 auto}
.doc-head{text-align:center;border-bottom:2px solid #000;margin-bottom:12px}
.doc-head h1{font-size:24px;margin:0}.doc-head h2{font-size:17px;margin:4px 0 8px}
.doc-table{width:100%;border-collapse:collapse}
.doc-table th,.doc-table td{border:1px solid #444;padding:8px;text-align:left;font-size:14px;vertical-align:top}
.doc-table th{width:38%;background:#eee}
.doc-sign{margin-top:48px;text-align:right}.doc-sign div{display:inline-block;border-top:1px solid #000;padding-top:4px;min-width:200px;text-align:center}
.doc-sign span{font-size:12px}
.doc-note{font-size:12px;margin-top:24px}
@media print{
  body{background:#fff}
  .top,.proto,.noprint,.lock{display:none!important}
  main{padding:0;max-width:none}
  .doc-sheet{border:0;padding:0}
}

.tabs{display:flex;gap:6px;margin:8px 0}.tab{flex:1;padding:10px 6px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}
.tab.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.caseline{margin-top:4px;font-size:14px}
.tablewrap{overflow-x:auto}.reg{width:100%;border-collapse:collapse;font-size:14px}
.reg th,.reg td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:top}.reg th{background:var(--card)}.reg td.num{text-align:right;white-space:nowrap}
.reg tr.cx td{background:var(--warn)}.reg a{color:var(--brand-d);font-weight:600;text-decoration:none}

/* birth certificate */
.cert{position:relative;overflow:hidden;background:#fff;color:#1c2b2a;max-width:720px;margin:0 auto;border:1px solid #e3e3e3;padding:0 0 18px;font:15px/1.5 Georgia,'Times New Roman',serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cert-head{display:block;width:100%;height:auto}
.cert-title{text-align:center;margin:18px 24px 6px}
.cert-title h1{font-size:30px;letter-spacing:.5px;margin:0;color:#0b4d3f;font-weight:600}
.cert-ur{font:22px 'Noto Nastaliq Urdu','Jameel Noori Nastaleeq','Urdu Typesetting','Segoe UI',serif;color:#b0345a;margin-top:2px}
.cert-title:after{content:'';display:block;width:90px;height:3px;border-radius:3px;background:linear-gradient(90deg,#2f8f6b,#e86a92);margin:10px auto 0}
.cert-lead{margin:14px 32px;text-align:center;font-size:16px}
.cert-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;margin:10px 32px}
.cert-grid h3{margin:0 0 4px;font:600 12px/1.2 system-ui,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#b0345a}
.cert-row{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid #f0d9e0;font-size:14px}
.cert-row span{color:#5b6f6d}.cert-row b{font-weight:600;text-align:right}
.cert-comp{margin:10px 32px;font-size:14px}
.cert-ur-text{margin:16px 32px;padding:10px 0;border-top:1px solid #f0d9e0;font:17px/2.1 'Noto Nastaliq Urdu','Jameel Noori Nastaleeq','Urdu Typesetting','Segoe UI',serif;text-align:right}
.cert-sign{display:flex;justify-content:space-between;gap:40px;margin:34px 32px 18px;font:13px system-ui,sans-serif}
.cert-sign>div{flex:1;text-align:center}.cert-sign i{display:block;border-top:1px solid #1c2b2a;margin-bottom:4px}.cert-sign span{color:#5b6f6d;font-size:12px}
.cert-foot{margin:0 32px;text-align:center;font:12px system-ui,sans-serif;color:#44585a}
.cert-rule{height:4px;border-radius:4px;background:linear-gradient(90deg,#2f8f6b,#a9c29a,#f2a7bd,#e86a92);margin-bottom:8px}
.cert-small{font-size:11px;color:#6b7b7a;margin-top:4px}
.cert.demo:after{content:'DEMO \2014  NOT VALID';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:700 56px system-ui,sans-serif;color:rgba(176,52,90,.16);transform:rotate(-24deg);pointer-events:none;text-align:center}
@media (max-width:560px){.cert-grid{grid-template-columns:1fr}.cert-title h1{font-size:24px}}
@media print{.cert{border:0;max-width:none}@page{margin:8mm}}

/* permanent letterhead */
.lh{margin-bottom:4px}
.lh-top{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(#000 78%,transparent);mask-image:linear-gradient(#000 78%,transparent)}
.lh-contact{display:flex;flex-wrap:wrap;gap:2px 18px;justify-content:center;padding:0 20px;margin-top:-4px;font:13px system-ui,sans-serif;color:#1c2b2a}
.lh-team{margin:10px 20px 0;padding:8px 12px 10px;background:#fbe3ea;border-radius:14px;font:12px/1.35 system-ui,sans-serif;color:#33403f}
.lh-label{display:inline-block;background:#f6c9d6;color:#8c1f45;font:700 12px Georgia,serif;padding:2px 10px;border-radius:8px;margin-bottom:6px}
.lh-docs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.lh-doc b{font:700 14px Georgia,serif;color:#0b4d3f}.lh-doc .q{color:#8c1f45;font-weight:600}.lh-doc .h{color:#8c1f45;margin-top:2px}
.cert-grid.one{grid-template-columns:1fr;margin-top:0}
.cert .doc-table{width:calc(100% - 64px);margin:8px 32px}
.cert .doc-table th,.cert .doc-table td{border:0;border-bottom:1px solid #f0d9e0;font-size:14px;color:#1c2b2a}
.cert .doc-table th{background:transparent;color:#5b6f6d;font-weight:400;width:40%}
@media (max-width:560px){.lh-docs{grid-template-columns:1fr}}
