:root{--navy:#0B1F4B;--navy2:#142c63;--gold:#C9A227;--gold-d:#8a6d0a;--red:#C8102E;--green:#1E8E4E;--orange:#E8710A;--lb:#EAF2FB;--grey:#F2F4F7;--line:#d9dee7;--ink:#1a2233;--mut:#5b6578;--serif:'Newsreader',Georgia,'Times New Roman',serif;--sans:'Source Sans 3',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:17px/1.6 var(--sans);color:var(--ink);background:#fff}
img{max-width:100%;height:auto;display:block}a{color:#0b4fa8}a:hover{color:var(--red)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}.narrow{max-width:780px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}
h1,h2,h3{font-family:var(--serif);line-height:1.2;color:var(--navy);margin:0 0 .5em}
/* top bar & masthead */
.topbar{background:var(--navy);color:#fff;font-size:14px}.topbar .wrap{display:flex;gap:14px;align-items:center;justify-content:space-between;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.search{display:flex}.search input{padding:7px 10px;border:0;border-radius:4px 0 0 4px;min-width:200px;font:inherit;font-size:14px}.search button{border:0;background:var(--gold);color:var(--navy);font-weight:700;padding:0 14px;border-radius:0 4px 4px 0;cursor:pointer}
.search.big{max-width:520px;margin-bottom:18px}.search.big input{flex:1;border:1px solid var(--line)}
.btn{display:inline-block;border:0;border-radius:4px;padding:11px 22px;font:700 16px var(--sans);cursor:pointer;text-decoration:none;text-align:center}
.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:#ddb53a;color:var(--navy)}.btn-sm{padding:6px 14px;font-size:14px}
.btn-line{border:2px solid var(--gold);color:#fff;padding:9px 20px}.btn[disabled]{opacity:.6}
.masthead{background:#fff;border-bottom:4px double var(--navy);text-align:center;padding:18px 0 10px}
.logo{display:inline-flex;gap:14px;align-items:center;text-decoration:none;color:var(--navy)}
.logo span{display:flex;flex-direction:column;text-align:left}.logo b{font:700 clamp(26px,5vw,48px)/1 var(--serif);letter-spacing:.02em}.logo i{font:600 clamp(13px,2vw,18px) var(--sans);letter-spacing:.3em;color:var(--gold-d);font-style:normal}
.tagline{margin:8px 0 0;font:italic 500 17px var(--serif);color:var(--mut)}
.nav{background:var(--navy2);position:sticky;top:0;z-index:20;box-shadow:0 2px 0 var(--gold)}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;overflow-x:auto}.nav a{display:block;color:#fff;text-decoration:none;padding:11px 13px;font-weight:600;font-size:15px;white-space:nowrap}
.nav a:hover,.nav a[aria-current]{background:var(--gold);color:var(--navy)}.navtoggle{display:none}
/* ticker */
.ticker{display:flex;background:var(--red);color:#fff;overflow:hidden}.ticker-label{background:#8f0b21;padding:9px 16px;font-weight:700;flex:none;z-index:1}
.ticker-track{overflow:hidden;flex:1}.ticker-move{display:inline-flex;white-space:nowrap;padding:9px 0;animation:move 70s linear infinite}.ticker-track:hover .ticker-move{animation-play-state:paused}
.ticker a,.ticker span{color:#fff;text-decoration:none;padding:0 28px;position:relative}.ticker .dup{display:inline-flex;padding:0}.ticker a+a::before,.ticker .dup::before{content:"◆";position:absolute;left:-4px;color:var(--gold);font-size:11px;top:4px}
.ticker a:hover{text-decoration:underline}@keyframes move{to{transform:translateX(-50%)}}
/* hero */
.hero{background:var(--grey);padding:26px 0}.hero .wrap{display:grid;grid-template-columns:2fr 1fr;gap:26px}
.lead-story{position:relative;background:var(--navy);border-radius:6px;overflow:hidden;min-height:380px}.lead-img{width:100%;height:100%;min-height:380px;object-fit:cover;opacity:.85}
.lead-t{position:absolute;left:0;right:0;bottom:0;padding:60px 24px 22px;background:linear-gradient(transparent,rgba(5,14,38,.95))}.lead-t h1{color:#fff;font-size:clamp(26px,4vw,40px);margin:8px 0}.lead-t h1 a{color:#fff;text-decoration:none}.lead-t p{color:#e5eaf5;margin:0}
.side h2{font-size:21px;border-bottom:3px solid var(--gold);padding-bottom:6px}.side-i{display:block;text-decoration:none;color:var(--ink);padding:11px 0;border-bottom:1px solid var(--line)}.side-i span:last-child{display:block;font:600 19px/1.3 var(--serif);margin-top:4px}.side-i:hover span:last-child{color:var(--red)}
.welcome{grid-column:1/-1;background:var(--navy);color:#fff;padding:44px 30px;border-radius:6px;border-bottom:5px solid var(--gold)}.welcome h1{color:#fff;font-size:clamp(28px,5vw,44px)}.welcome p{max-width:640px;color:#dbe3f3}
/* sections */
.block{padding:30px 0;border-bottom:1px solid var(--line)}.sec-h{display:flex;justify-content:space-between;align-items:baseline;border-left:6px solid var(--navy);padding-left:12px;margin-bottom:18px}.sec-h h2{margin:0;font-size:28px}
.b-tender .sec-h{border-color:var(--orange)}.b-opp .sec-h{border-color:var(--green)}.b-stock .sec-h{border-color:var(--gold)}.b-world .sec-h{border-color:#0E7490}.b-tender{background:#fff8f0}.b-opp{background:#f1faf4}.b-stock,.b-tech{background:var(--lb)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.card{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.card-img img,.card-img .ph{aspect-ratio:16/9;width:100%;object-fit:cover}
.card-b{padding:14px 16px 16px}.card h3{font-size:20px;margin:8px 0}.card h3 a{color:var(--navy);text-decoration:none}.card h3 a:hover{color:var(--red)}.card p{margin:0 0 8px;color:var(--mut);font-size:15.5px}
.meta{display:flex;gap:10px;font-size:13px;color:var(--mut)}.country{font-weight:700;color:#0E7490}
.ph{display:grid;place-items:center;font:700 54px var(--serif);color:rgba(255,255,255,.85)}.ph.lead-img{font-size:120px}
.c-india{background:linear-gradient(135deg,#0B1F4B,#2a4a99)}.c-world{background:linear-gradient(135deg,#0E7490,#0B1F4B)}.c-tender{background:linear-gradient(135deg,#E8710A,#a34b00)}.c-stock{background:linear-gradient(135deg,#8a6d0a,#C9A227)}.c-tech{background:linear-gradient(135deg,#3b2a8a,#0B1F4B)}.c-opp{background:linear-gradient(135deg,#1E8E4E,#0b5a30)}
.tag{display:inline-block;font:700 12px var(--sans);padding:3px 9px;border-radius:3px;color:#fff}.tag.brk{background:var(--red)}
.tag.c-india,.tag.c-tech{background:var(--navy)}.tag.c-world{background:#0E7490}.tag.c-tender{background:var(--orange)}.tag.c-stock{background:var(--gold-d)}.tag.c-opp{background:var(--green)}
.tcard{background:#fff;border:1px solid #f0d3b3;border-top:5px solid var(--orange);border-radius:6px;padding:16px}.tcard h3{font-size:19px;margin:10px 0}.tcard h3 a{color:var(--navy);text-decoration:none}
.tcard dl{margin:0 0 10px;font-size:14.5px}.tcard dl div{display:flex;gap:8px;padding:3px 0;border-bottom:1px dashed var(--line)}.tcard dt{flex:0 0 78px;color:var(--mut)}.tcard dd{margin:0;font-weight:600}.more{font-weight:700;text-decoration:none}
.chip{display:inline-block;font:700 12.5px var(--sans);padding:4px 10px;border-radius:20px;color:#fff}.st-new{background:var(--green)}.st-closing{background:var(--red)}.st-recent{background:#1d6fd1}.st-passed{background:#7a8294}.st-updated{background:var(--orange)}
.bars{max-width:560px;margin:0 0 22px}.bars div{display:grid;grid-template-columns:100px 1fr 34px;gap:10px;align-items:center;font-size:14px;margin:4px 0}.bars i{display:block;height:12px;border-radius:6px}
.empty{background:#fff;border:1px dashed #b7c0d1;border-radius:6px;padding:18px;color:var(--mut);margin:0}
.market table,.tdetail table,.adm table{width:100%;border-collapse:collapse;background:#fff;font-size:15px}.market th,.market td,.tdetail th,.tdetail td,.adm th,.adm td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}.market th,.adm thead th{background:var(--navy);color:#fff}
.up{color:var(--green);font-weight:700}.down{color:var(--red);font-weight:700}.tscroll{overflow-x:auto;margin-bottom:12px}.small{font-size:14px;color:var(--mut)}
.pop{margin:0;padding-left:22px;font:600 20px/1.5 var(--serif)}.pop a{color:var(--navy);text-decoration:none}
.notice{border-left:5px solid;padding:12px 16px;border-radius:0 4px 4px 0;margin:16px 0;font-size:15.5px}.notice.orange{background:#fff1e0;border-color:var(--orange)}.notice.blue{background:var(--lb);border-color:var(--navy)}
/* join + forms */
.join{background:var(--navy);color:#fff;padding:40px 0;border-top:5px solid var(--gold)}.join h2{color:#fff}.join-g{display:grid;grid-template-columns:1fr 1.3fr;gap:30px;align-items:start}.join .wrap:not(.join-g){display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.form label{display:block;font-weight:600;margin:10px 0 4px}.form input:not([type=checkbox]),.form textarea,.form select,.adm input:not([type=checkbox]),.adm select,.adm textarea{width:100%;padding:10px 12px;border:1px solid #b9c2d3;border-radius:4px;font:inherit;background:#fff;color:var(--ink)}
.form small{display:block;font-weight:400;color:var(--mut)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:14px 0}.form .check input{margin-top:6px}
.join .form label{color:#fff}.form .btn{margin-top:6px}
.alert{padding:14px 18px;border-radius:4px;margin:14px 0}.alert.ok{background:#e4f6ec;border:1px solid var(--green);color:#0b5a30}.alert.err{background:#fde8ea;border:1px solid var(--red);color:#7d0a1c}.alert ul{margin:0;padding-left:18px}
/* inner pages */
.page{padding:22px 18px 40px}.h1{font-size:clamp(28px,4.5vw,42px)}.h2{font-size:26px;margin-top:30px}.lead{font:500 20px/1.5 var(--serif);color:#2b3550}
.crumbs{font-size:14px;margin-bottom:10px}.crumbs a::after{content:"/";margin:0 8px;color:var(--mut)}.crumbs span{color:var(--mut)}
.pager{display:flex;gap:8px;margin-top:24px}.pager a,.pager b{padding:7px 13px;border:1px solid var(--line);border-radius:4px;text-decoration:none}.pager b{background:var(--navy);color:#fff}
.art article{max-width:780px}.byline{color:var(--mut);font-size:15px}.byline span{margin-left:14px}.fig{margin:18px 0}.art-img{width:100%;border-radius:6px}
.sec h2{font-size:24px;margin-top:26px}.sec p{font-family:var(--serif);font-size:19px;line-height:1.7}.facts ul{background:var(--lb);padding:16px 16px 16px 36px;border-radius:6px}
.source{background:var(--grey);border:1px solid var(--line);padding:16px 20px;border-radius:6px;margin:30px 0}.source h2{font-size:20px;margin:0 0 6px}
.tdetail th{width:34%;background:var(--grey)}.tstat{margin:10px 0}.related{margin-top:30px}.prose h2{font-size:24px;margin-top:26px}
/* footer */
.foot{background:#08163a;color:#cdd6ea;padding:34px 0 18px;border-top:5px solid var(--gold)}.foot a{color:#fff;text-decoration:none}.foot a:hover{color:var(--gold)}.foot h3{color:var(--gold);font-size:18px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:26px}.foot ul{list-style:none;margin:0;padding:0;line-height:2}.foot-brand{font:700 20px var(--serif);color:#fff}.copy{border-top:1px solid #243a73;padding-top:14px;margin-top:22px;font-size:14px}
/* admin */
.adm{background:var(--grey)}.anav{background:var(--navy);display:flex;gap:4px;flex-wrap:wrap;padding:8px 14px;align-items:center}.anav a,.anav b{color:#fff;padding:7px 12px;text-decoration:none}.anav b{color:var(--gold)}.anav a:hover{background:var(--gold);color:var(--navy)}
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.stats div{background:#fff;border-top:4px solid var(--gold);padding:14px;border-radius:4px}.stats b{display:block;font:700 32px var(--serif);color:var(--navy)}
.acts{display:flex;gap:10px;align-items:center}.acts form{display:flex;gap:6px}.acts button{cursor:pointer}.adm .form{background:#fff;padding:18px;border-radius:6px;max-width:860px}.adm .search{margin-bottom:10px}
@media(max-width:860px){.hero .wrap,.join-g,.foot-grid{grid-template-columns:1fr}.lead-story,.lead-img{min-height:300px}}
@media(max-width:700px){body{font-size:16px}.grid2{grid-template-columns:1fr}.navtoggle{display:block;width:100%;background:none;border:0;color:#fff;font:700 16px var(--sans);padding:12px;text-align:left;cursor:pointer}
.nav ul{display:none;flex-direction:column}.nav ul.open{display:flex}.topbar .wrap{justify-content:center}.search input{min-width:150px}.tagline{font-size:15px}.logo img{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.ticker-move{animation:none;overflow-x:auto}html{scroll-behavior:auto}}
