
:root{--blue:#0b3d91;--link:#0645ad;--line:#b9b9b9;--bg:#fff;--grey:#eeeeee;--saffron:#ff9933;--green:#138808;--red:#c00;--maroon:#7a1f2b}
*{box-sizing:border-box}
html{font-size:var(--fs,15px)}
body{margin:0;background:#dfe3e8;font:1rem/1.45 Verdana,Arial,sans-serif;color:#222}
a{color:var(--link)}
.page{max-width:980px;margin:0 auto;background:var(--bg);min-height:100vh;box-shadow:0 0 0 1px var(--line)}
.tri{height:6px;background:linear-gradient(90deg,var(--saffron) 33.3%,#fff 33.3% 66.6%,var(--green) 66.6%)}
.util{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;background:#222;color:#ddd;font-size:.72rem;padding:4px 10px}
.util a,.util button{color:#ddd;background:none;border:0;font:inherit;cursor:pointer;text-decoration:none;padding:0 4px}
.util button:hover,.util a:hover{text-decoration:underline}
.util .sep{opacity:.4}
.head{display:flex;align-items:center;gap:14px;padding:12px 14px;border-bottom:3px solid var(--blue)}
.seal{width:72px;height:72px;flex:none}
.head h1{margin:0;font:bold 1.35rem/1.2 Georgia,"Times New Roman",serif;color:var(--blue)}
.head .hi{font:bold 1.05rem "Noto Sans Devanagari",Mangal,sans-serif;color:var(--maroon)}
.head small{display:block;font-size:.72rem;color:#555;margin-top:2px}
.nav{display:flex;flex-wrap:wrap;background:var(--blue)}
.nav a{color:#fff;text-decoration:none;font-size:.78rem;font-weight:bold;padding:7px 12px;border-right:1px solid #2c5bb0}
.nav a.on,.nav a:hover{background:#ffcc00;color:#000}
.news{display:flex;border-bottom:1px solid var(--line);font-size:.78rem;background:#fffbe6}
.news b{background:var(--red);color:#fff;padding:5px 10px;white-space:nowrap}
.news marquee{padding:5px 0}
.new{display:inline-block;background:var(--red);color:#fff;font-size:.62rem;font-weight:bold;padding:0 3px;margin:0 3px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.crumb{font-size:.72rem;padding:6px 14px;color:#555;border-bottom:1px dotted var(--line)}
.wrap>*{min-width:0}
.wrap{display:grid;grid-template-columns:210px 1fr;gap:14px;padding:14px}
@media(max-width:720px){.wrap{grid-template-columns:1fr}.side{order:2}}
.box{border:1px solid var(--line);margin-bottom:14px}
.box h3{margin:0;background:var(--grey);border-bottom:1px solid var(--line);font-size:.8rem;padding:5px 8px;color:var(--blue)}
.box ul{margin:0;padding:6px 8px 8px 22px;font-size:.78rem}
.box li{margin:3px 0}
.box p{margin:6px 8px;font-size:.76rem}
.status{font-size:.78rem}
.status td{padding:3px 8px;border-top:1px solid #e3e3e3}
.open{color:var(--green);font-weight:bold}
h2{font:bold 1.1rem Georgia,serif;color:var(--maroon);margin:0 0 8px;border-bottom:1px solid var(--line);padding-bottom:4px}
.notice{border:1px solid #e0c36a;background:#fffbe6;padding:10px 12px;font-size:.82rem;margin-bottom:14px}
.applybtn{display:inline-block;background:var(--green);color:#fff;font-weight:bold;text-decoration:none;border:1px solid #0b5e05;padding:9px 18px;font-size:.92rem;margin:4px 0}
.applybtn:hover{background:#0f6e06}
.links{font-size:.78rem;margin:8px 0 0}
table.form{width:100%;border-collapse:collapse;font-size:.82rem;margin-bottom:12px}
table.form caption{text-align:left;background:var(--blue);color:#fff;font-weight:bold;padding:5px 8px;font-size:.8rem}
table.form th,table.form td{border:1px solid var(--line);padding:7px 8px;vertical-align:top;text-align:left}
table.form th{width:38%;background:#f6f6f6;font-weight:normal}
.req{color:var(--red)}
.hint{display:block;color:#666;font-size:.7rem;margin-top:2px}
input[type=text],textarea,select{width:100%;font:inherit;font-size:.85rem;border:1px solid #8a8a8a;padding:4px 5px;background:#fff;border-radius:0}
textarea{resize:vertical}
.radios label{display:inline-block;margin:0 12px 4px 0;white-space:nowrap}
.mand{font-size:.74rem;color:var(--red);margin:0 0 8px}
.captcha{display:flex;align-items:center;gap:10px;border:1px dashed #999;padding:8px;font-size:.75rem;color:#555;background:#fafafa}
.captcha span{font:italic bold 1.1rem "Courier New",monospace;letter-spacing:4px;background:repeating-linear-gradient(45deg,#ddd 0 4px,#eee 4px 8px);padding:3px 8px;color:#444;text-decoration:line-through}
.btns{display:flex;gap:8px;margin:12px 0}
.btns button{font:bold .82rem Verdana,sans-serif;padding:6px 18px;border:2px outset #ddd;background:#e9e9e9;cursor:pointer}
.btns button:active{border-style:inset}
.btns .sub{background:#1d5fbf;color:#fff;border-color:#3d7ae0 #0b3d91 #0b3d91 #3d7ae0}
.decl{font-size:.72rem;color:#444;border-top:1px dotted var(--line);padding-top:8px}
.foot{background:#2b2b2b;color:#bbb;font-size:.7rem;padding:12px 14px;line-height:1.6}
.foot a{color:#ddd}
.counter{font-family:"Courier New",monospace;background:#000;color:#0f0;padding:1px 5px;letter-spacing:2px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;padding:16px}
.modal.on{display:flex}
.modal div{background:#fff;border:1px solid #666;max-width:380px;font-size:.82rem}
.modal h4{margin:0;background:var(--blue);color:#fff;padding:5px 8px;font-size:.8rem}
.modal p{margin:12px}
.modal button{margin:0 12px 12px;font:bold .78rem Verdana;padding:4px 16px;border:2px outset #ddd;background:#e9e9e9}
.view{display:none}.view.on{display:block}

@font-face{font-family:LED;src:url(/fonts/vt323.woff2) format('woff2')}
/* deliberate sarkari roughness */
.head{background:linear-gradient(#fdfdfd,#e9eef7)}
.welcome{font:bold 1.05rem "Times New Roman",serif;color:#000;text-align:center;margin:2px 0 6px;text-decoration:underline}
.redline{color:#c00;font-weight:bold;text-decoration:underline;font-family:Arial,sans-serif}
.clickhere{font:bold .78rem Arial;color:#00f}
.uc{display:inline-flex;align-items:center;gap:6px;font:bold .7rem Arial;color:#000;background:repeating-linear-gradient(-45deg,#ffd400 0 8px,#111 8px 16px);padding:3px}
.uc span{background:#ffd400;padding:1px 4px}
.office-order{background:#fbf7ea;border:1px solid #cfc6a8;padding:10px 12px 12px;font:.82rem/1.5 "Courier New",monospace;transform:rotate(-.6deg);box-shadow:2px 3px 0 #ccc;margin:10px 0 14px;position:relative}
.seal-ink{position:absolute;right:14px;bottom:2px;width:136px;height:136px;transform:rotate(-14deg);opacity:.9;mix-blend-mode:multiply;pointer-events:none}
.sign{position:absolute;right:70px;bottom:22px;width:110px;opacity:.9;pointer-events:none}
@media(max-width:720px){.seal-ink{width:112px!important;height:112px!important}.sign{width:90px!important;right:44px!important}}
.side .box:nth-child(2){margin-left:-4px;width:calc(100% + 8px)}
.side h3{font-family:Arial}

/* token board: cheap aluminium-framed red LED dot-matrix, like a bank / RTO counter */
.dm-frame{background:linear-gradient(#c9ccd0,#8e9399 50%,#b5b9be);padding:9px;border-radius:3px;box-shadow:0 2px 0 #666,inset 0 1px 0 #eee;position:relative;margin:4px 0 26px}
.dm-frame:before,.dm-frame:after{content:"";position:absolute;top:3px;width:5px;height:5px;border-radius:50%;background:radial-gradient(#eee,#555)}
.dm-frame:before{left:3px}.dm-frame:after{right:3px}
.dm-brand{position:absolute;bottom:0;right:12px;font:bold 7px Arial;color:#444;letter-spacing:1px}
.dm{position:relative;background:#120202;border:2px solid #000;overflow:hidden;font-family:LED,monospace;color:#ff2b12;text-transform:uppercase;
 background-image:radial-gradient(circle,#3a0a06 1.2px,transparent 1.5px);background-size:4px 4px}
.dm:after{content:"";position:absolute;inset:0;pointer-events:none;
 background-image:radial-gradient(circle,transparent 1.6px,#120202 2px);background-size:4px 4px;opacity:.75}
.dm-cols{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #2a0603}
.dm-cols>div{padding:6px 10px 2px;border-right:1px solid #2a0603}
.dm-lbl{font-size:1.7rem;letter-spacing:2px;color:#ff3b1f;text-shadow:0 0 4px #ff2b12;min-height:1.3rem}
.dm-num{font-size:5.4rem;line-height:.95;letter-spacing:6px;color:#ff4a2a;text-shadow:0 0 3px #ff2b12,0 0 10px #ff2b12}
.dm-num.dim{opacity:.55}
.dm-num small{font-size:2.2rem;letter-spacing:2px}
.dm-run{padding:5px 0;font-size:1.5rem;color:#ffae00;text-shadow:0 0 5px rgba(255,174,0,.6);white-space:nowrap}
.dm-run span{display:inline-block;padding-left:100%;animation:run 22s linear infinite}
@keyframes run{to{transform:translateX(-100%)}}
.dm .dead{opacity:.35}
.tape{position:absolute;right:14px;bottom:-14px;transform:rotate(3deg);background:#fff;border:1px solid #ccc;font:bold .7rem "Comic Sans MS",cursive;color:#1a3cb0;padding:3px 7px;box-shadow:1px 1px 2px rgba(0,0,0,.25);z-index:2}
.tape:before{content:"";position:absolute;left:30%;top:-6px;width:36px;height:12px;background:rgba(240,235,200,.85);transform:rotate(3deg)}
@media(max-width:720px){.dm-num{font-size:3.4rem;letter-spacing:3px}.dm-num small{font-size:1.6rem}}
/* live register */
.reghead{display:flex;align-items:center;justify-content:space-between;gap:8px}
.live{font:bold .72rem Arial;color:#c00}.live i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#c00;margin-right:4px;animation:blink 1s steps(1) infinite}
.register{border:1px solid #999;background:#fffef5;font-size:.8rem;max-height:420px;overflow:hidden}
.reg{display:grid;grid-template-columns:62px 1fr auto;gap:10px;align-items:center;padding:9px 10px;border-bottom:1px solid #d8d2b8;background:linear-gradient(transparent 95%,#e7e1c6 95%)}
.reg .no{font:bold .7rem "Courier New",monospace;color:#555}
.reg .no em{display:block;font-style:normal;color:#999;font-weight:normal}
.reg .case{font-family:"Times New Roman",serif;font-size:.98rem;color:#111}
.reg .case small{display:block;font:.7rem Arial;color:#777}
.stamp{font:900 .8rem/1 Impact,"Arial Black",sans-serif;letter-spacing:1px;padding:5px 7px;border:3px solid;border-radius:3px;transform:rotate(var(--r,-8deg));opacity:.85;white-space:nowrap;mix-blend-mode:multiply;mask:repeating-linear-gradient(115deg,#000 0 3px,rgba(0,0,0,.7) 3px 5px)}
.s-NOC{color:#138808}.s-CONDITIONS{color:#b36b00}.s-OBJECTION{color:#c00}
.reg.fresh{animation:fresh 2.6s ease-out}
@keyframes fresh{0%{background:#ffef7a;transform:translateY(-100%)}12%{transform:none}100%{background:transparent}}
.reg.fresh .stamp{animation:thud .35s cubic-bezier(.2,2,.4,1) .25s both}
@keyframes thud{0%{transform:scale(2.4) rotate(0);opacity:0}100%{transform:rotate(var(--r,-8deg));opacity:.85}}
@media(max-width:720px){.reg{grid-template-columns:48px 1fr;}.reg .stamp{grid-column:2;justify-self:start}}

/* gov service tiles (Passport Seva / Parivahan style) */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0 6px}
@media(max-width:720px){.tiles{grid-template-columns:repeat(2,1fr)}}
.tile{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:#fff;font:bold .78rem/1.2 Arial,sans-serif;text-align:center;padding:12px 6px 10px;border-radius:6px;border:1px solid rgba(0,0,0,.3);
 background:linear-gradient(#ffffff55,#ffffff00 50%,#00000018 51%,#00000000) ,var(--c);box-shadow:0 2px 0 rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .12s,filter .12s}
.tile:hover{transform:translateY(-2px);filter:brightness(1.1)}
.tile:active{transform:translateY(1px);box-shadow:inset 0 2px 3px rgba(0,0,0,.3)}
.tile svg{width:34px;height:34px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 0 rgba(0,0,0,.3))}
.tile.main{position:relative;outline:2px dashed #ffcc00;outline-offset:2px}
.tile.main:after{content:"Click Here";position:absolute;top:-9px;right:-6px;background:#c00;color:#fff;font-size:.58rem;padding:1px 4px;border-radius:2px;animation:blink 1s steps(1) infinite}
.btns .sub,.btns button{border-radius:4px;border:1px solid #0a3478;background:linear-gradient(#5b93e6,#1d5fbf 50%,#164fa3 51%,#2a6fd6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 1px 1px rgba(0,0,0,.3);padding:7px 22px}
.btns button[type=reset]{border-color:#8a1010;background:linear-gradient(#f07a7a,#c62828 50%,#a81f1f 51%,#d33)}
.btns button:hover{filter:brightness(1.1)}
/* Latest orders box */
.orders{border:1px solid #9bb3d9;margin:6px 0 14px}
.orders h3{margin:0;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(#e8f0fc,#c9daf5);border-bottom:1px solid #9bb3d9;color:var(--blue);font:bold .85rem Arial;padding:6px 8px}
.orders h3 a{font-size:.7rem;font-weight:normal}
.ow{height:300px;overflow:hidden;position:relative;background:#fff}
.ol{margin:0;padding:0;list-style:none;animation:up 40s linear infinite}
.ow:hover .ol{animation-play-state:paused}
@keyframes up{to{transform:translateY(-50%)}}
.ol li{display:flex;gap:8px;padding:8px 10px;border-bottom:1px dotted #bbb;font:.8rem/1.4 Arial,sans-serif}
.ol li:before{content:"";flex:none;width:0;height:0;border:5px solid transparent;border-left:6px solid #c00;margin-top:4px}
.ol a{color:var(--link)}
.ol .v{font-weight:bold}
.ol .v-NOC{color:#138808}.ol .v-CONDITIONS{color:#b36b00}.ol .v-OBJECTION{color:#c00}
.pdf{display:inline-block;background:#d32f2f;color:#fff;font:bold .56rem Arial;padding:0 3px;border-radius:2px;vertical-align:1px}
.ol small{color:#777}

.track{max-width:560px}
.timeline{list-style:none;margin:14px 0;padding:0;border-left:3px solid #9bb3d9;font:.82rem Arial}
.timeline li{position:relative;padding:0 0 14px 18px}
.timeline li:before{content:"";position:absolute;left:-9px;top:2px;width:13px;height:13px;border-radius:50%;background:#138808;border:2px solid #fff;box-shadow:0 0 0 1px #138808}
.timeline li.no:before{background:#c62828;box-shadow:0 0 0 1px #c62828}
.timeline li.no{color:#555}
.timeline li.wait:before{background:#f2b100;box-shadow:0 0 0 1px #c89200}
.trk-err{color:#c00;font:bold .82rem Arial;border:1px solid #e3a3a3;background:#fff1f1;padding:8px 10px;margin-top:12px}
.timeline li.pend{color:#888}
.timeline small{display:block;color:#777}
.trk-res{display:none;border:1px solid var(--line);padding:10px 12px;margin-top:12px}
.trk-res.on{display:block}

@font-face{font-family:Hand;src:url(/fonts/permanent-marker.woff2) format('woff2')}
.scan{display:block;margin:8px 0 2px;padding:0;border:1px solid #999;background:#fff;cursor:zoom-in;width:100%;max-width:340px;box-shadow:1px 2px 4px rgba(0,0,0,.2)}
.scan .lbl{display:block;font:bold .62rem Arial;color:#555;text-align:left;padding:3px 6px;border-top:1px solid #ccc;background:#f4f4f4}
.pcard{position:relative;aspect-ratio:14/9;background:#f3e7c4;background-image:radial-gradient(rgba(120,90,40,.08) 1px,transparent 1px);background-size:3px 3px;display:grid;grid-template-columns:1.15fr 1fr;font-family:Hand,cursive;color:#1c2a6b;overflow:hidden;transform:rotate(-.8deg)}
.pcard .msg{padding:12% 6% 6% 7%;text-align:left;font-size:clamp(.58rem,2.4vw,.95rem);line-height:1.35;border-right:1px solid #b89a5a}
.pcard .addr{padding:30% 8% 0;display:flex;flex-direction:column;gap:14%}
.pcard .addr i{display:block;height:.75em;background:#111;transform:rotate(-1deg)}
.pcard .addr i:nth-child(2){width:80%}.pcard .addr i:nth-child(3){width:60%}
.pcard .pin{display:flex;gap:3px;margin-top:6%}.pcard .pin b{width:12%;aspect-ratio:1;border:1px solid #b33;background:#111}
.pcard .stamp2{position:absolute;right:5%;top:6%;width:17%;aspect-ratio:4/5;background:#fff;border:2px dotted #fff;outline:1px solid #ccc;display:flex;flex-direction:column;align-items:center;justify-content:center;font:bold .5rem Arial;color:#b5651d;background:linear-gradient(#e9a36a,#c4602a);color:#fff}
.pcard .pmark{position:absolute;right:16%;top:12%;width:24%;aspect-ratio:1;border:2px solid rgba(30,30,30,.55);border-radius:50%;font:bold .42rem Arial;color:rgba(30,30,30,.6);display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(-12deg)}
.pcard .pch{position:absolute;left:7%;top:3%;font:bold .45rem Arial;color:#8a6a2a;letter-spacing:1px}
.modal div.big{max-width:min(640px,94vw)}.modal div.big .pcard .msg{font-size:clamp(.8rem,2.6vw,1.2rem)}

/* ---- live-site additions ---- */
[hidden]{display:none!important}
.radios label{cursor:pointer}
.radios input{margin-right:3px}
.count{display:block;text-align:right;font-size:.68rem;color:#777}
.err{color:#c00;font:bold .8rem Arial;min-height:1em;margin:6px 0}
.btns button:disabled{filter:grayscale(1);opacity:.6;cursor:not-allowed}
.preview-only{font-size:.75rem;background:#fff3cd;border:1px dashed #c9a227;padding:6px 8px;margin:0 0 10px;display:flex;gap:8px;align-items:center}
.preview-only select{width:auto}
.panel{border:1px solid var(--line);margin:0 0 14px}
.panel>h3{margin:0;background:var(--blue);color:#fff;font:bold .82rem Arial;padding:6px 9px}
.panel>.in{padding:12px}
.waiting{text-align:center}
.waiting .dm-num{font-size:3.6rem}
.waiting .dm-cols>div{text-align:center}

@keyframes nod{50%{transform:rotate(-6deg) translateY(2px)}}
.waiting p{font:.85rem Arial;margin:6px 0}
.ts{display:flex;justify-content:center;margin:8px 0}
.tshint{color:#c00;font:bold .78rem Arial}
.certwrap{border:1px solid #999;background:#f4f4f4;padding:8px;box-shadow:2px 3px 0 #ccc}
.certwrap img{display:block;width:100%;height:auto}
.already{background:#fffbe6;border:1px solid #e0c36a;padding:8px 10px;font-size:.8rem}
.actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.btn{font:bold .8rem Verdana,sans-serif;border-radius:4px;border:1px solid #0a3478;background:linear-gradient(#5b93e6,#1d5fbf 50%,#164fa3 51%,#2a6fd6);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 1px 1px rgba(0,0,0,.3);padding:8px 16px;cursor:pointer;text-decoration:none;display:inline-block}
.btn:hover{filter:brightness(1.1)}
.btn.alt{border-color:#0b5e05;background:linear-gradient(#5cc163,#1f8a2e 50%,#187524 51%,#2a9a38)}
.btn.ghost{border-color:#888;background:linear-gradient(#fafafa,#e3e3e3 50%,#d6d6d6 51%,#e9e9e9);color:#222;text-shadow:none}
.btn.cta{display:block;text-align:center;margin:12px 0;font-size:.95rem}
.wallopt,.consent{display:block;font-size:.78rem;margin:8px 0}
.done{background:#eaf6ea;border:1px solid #9bc99b;padding:8px 10px;font-size:.82rem}
.plain h2{margin-top:0}
.plain ul{font-size:.85rem}
.fine{font-size:.7rem;color:#555}
.ol .empty{color:#777;justify-content:center}
.ol .empty:before{display:none}
.ow.still .ol{animation:none}
body.viewing .tiles,body.viewing #homeIntro{display:none}

/* iOS zooms into fields under 16px */
@media (max-width:820px),(pointer:coarse){input[type=text],input:not([type]),textarea,select{font-size:16px!important}}

.officer{display:flex;gap:12px;align-items:flex-start;text-align:left;margin:12px 0 8px}
.officer figure{margin:0;flex:none;width:96px;background:#fff;border:1px solid #999;padding:4px 4px 2px;box-shadow:1px 2px 0 #ccc;position:relative}
.officer img{display:block;width:100%;height:auto;aspect-ratio:600/770;object-fit:cover;animation:nod 2.4s ease-in-out infinite;transform-origin:50% 90%}
.officer figcaption{font:bold .62rem/1.2 Arial;text-align:center;margin-top:3px}.officer figcaption small{font-weight:normal;color:#666}
.inseat{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:#111;color:#3f3;font:.62rem LED,monospace;letter-spacing:1px;padding:1px 5px;white-space:nowrap}
.inseat i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#3f3;margin-right:3px;animation:blink 1s steps(1) infinite}
.filelog{flex:1;min-width:0;border:1px solid #cfc6a8;background:#fbf7ea;font:.74rem/1.45 "Courier New",monospace;padding:6px 8px}
.filelog b{display:block;border-bottom:1px dashed #cfc6a8;margin-bottom:4px}
.filelog ol{margin:0;padding-left:18px;max-height:150px;overflow:hidden}
.filelog li{animation:type .4s steps(12)}
.filelog li.done{color:#555}.filelog li.done:after{content:" ✓";color:#138808;font-weight:bold}
.filelog li.cur:after{content:"_";animation:blink 1s steps(1) infinite}
@keyframes type{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
.iebar{height:16px;border:1px solid #7a7a7a;background:#fff;padding:1px;box-shadow:inset 1px 1px 0 #aaa}
.iebar i{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,#2f9e2f 0 9px,transparent 9px 11px);transition:width 2s linear}
.iecap{font:.78rem Arial!important;color:#333;text-align:left}
