:root{--ink:#14262B;--green:#0D4D45;--milk:#F6F8F8;--silver:#CBD3D6;--mist:#E8EDEE;--red:#A8341F;--ok:#1F7A4D}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 "Manrope","Noto Sans Tamil",system-ui,sans-serif;color:var(--ink);background:var(--milk)}
h1{font-size:1.6rem;margin:0 0 .75rem;font-weight:800}
h2{font-size:1.1rem;margin:0 0 .5rem}
.top{display:flex;align-items:center;gap:1.25rem;padding:.7rem 1.5rem;background:var(--green);color:#fff}
.top b{font-size:1.25rem;margin-right:auto}
.top a{color:#cfe0dd;text-decoration:none;padding:.2rem 0}
.top a.on{color:#fff;border-bottom:2px solid var(--silver)}
.top button{background:none;border:1px solid #6b9a93}
main{max-width:1000px;margin:0 auto;padding:1.5rem}
.card{background:#fff;border:1px solid var(--mist);border-radius:10px;padding:1.25rem;margin-bottom:1.25rem}
label{display:block;font-weight:600;font-size:.9rem;margin:.75rem 0 .25rem}
input,select,textarea{width:100%;padding:.6rem .7rem;border:1px solid var(--silver);border-radius:6px;font:inherit;background:#fff;color:var(--ink)}
button{font:inherit;padding:.55rem 1rem;border-radius:6px;border:0;background:var(--green);color:#fff;font-weight:600;cursor:pointer}
button.ghost{background:#fff;color:var(--green);border:1px solid var(--green)}
button:disabled{opacity:.5;cursor:wait}
:focus-visible{outline:3px solid #7fb5ad;outline-offset:2px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 1rem}
.tablewrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:.92rem}
th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--mist);white-space:nowrap}
th{font-weight:600;color:#4a5f64}
td input,td select{padding:.35rem .5rem;min-width:9rem}
td input[type=checkbox]{width:auto;min-width:0}
.msg{margin:.75rem 0 0;font-size:.9rem}.err{color:var(--red)}.good{color:var(--ok)}
.empty{padding:1.5rem;text-align:center;color:#5b6f74}
.login{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
.hero{background:var(--green);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem;position:relative;overflow:hidden}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%}
.hero::before{width:34rem;height:34rem;top:-10rem;right:-11rem;background:conic-gradient(from 200deg,#eef2f3,#9fadb2,#f6f8f8,#8d9ba0,#eef2f3)}
.hero::after{width:26rem;height:26rem;top:-6rem;right:-7rem;background:radial-gradient(circle at 40% 35%,#1b6b60,#0D4D45 70%)}
.hero h1,.hero p{position:relative}
.hero h1{font-size:3.4rem;margin:0}
.hero p{max-width:22rem;color:#cfe0dd;margin:.5rem 0 0}
.formside{display:flex;align-items:center;justify-content:center;padding:2rem}
.formside form{width:100%;max-width:360px}
@media(max-width:760px){.login{grid-template-columns:1fr}.hero{min-height:15rem;padding:1.5rem}.hero h1{font-size:2.4rem}.top{flex-wrap:wrap;gap:.75rem}}
.badge{display:inline-block;padding:.1rem .6rem;border-radius:99px;font-size:.82rem;font-weight:600}
.badge.live{background:#DDF1E6;color:var(--ok)}.badge.wait{background:#F8E7D0;color:#8A5A12}
.verify{display:flex;justify-content:center;padding-top:10vh}
.vbox{width:100%;max-width:560px;padding:1.5rem;text-align:center}
.vbox .mark{font-weight:800;font-size:1.5rem;color:var(--green);margin:0 0 1.5rem}
.vbox h1{font-size:1.6rem;line-height:1.3}
.vbox form{display:flex;gap:.5rem;margin-top:1.25rem}
.vbox form input{flex:1}
.vbox img{max-width:100%;border:1px solid var(--silver);border-radius:8px}
.vbox iframe{width:100%;height:70vh;border:1px solid var(--silver);border-radius:8px}
[hidden]{display:none!important}
.tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--silver)}
.tabs button{background:none;color:#4a5f64;border-radius:0;padding:.5rem .75rem;border-bottom:2px solid transparent}
.tabs button.on{color:var(--green);border-bottom-color:var(--green)}
.hint{color:#4a5f64;font-size:.92rem;margin:0 0 .5rem}
