:root{--ink:#15233a;--paper:#f5f7f4;--panel:#fff;--rule:#d7ded8;--muted:#5b6778;--led:#0e7a68;--led-soft:#dff1ec;--gold:#b7852a;--gold-soft:#f6ecd8;--cr:#a8323f;--cr-soft:#f8e4e6;--dr:#1f5fad;--dr-soft:#e3edf9;--ok:#1f7a3a;
 --serif:'Newsreader',Georgia,serif;--sans:'Source Sans 3','Segoe UI',Arial,sans-serif;box-sizing:border-box}
@media (prefers-color-scheme:dark){:root{--ink:#e8edf3;--paper:#111a26;--panel:#18233a;--rule:#2c3a52;--muted:#9aa8bb;--led:#3fc1a6;--led-soft:#15362f;--gold:#e0b35a;--gold-soft:#3a3020;--cr:#f08a95;--cr-soft:#3a1f26;--dr:#6ea8f0;--dr-soft:#1a2c46;--ok:#5fd07f}}
*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;min-height:100%}
body{padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}
h1,h2,h3{font-family:var(--serif);margin:0 0 10px;line-height:1.15}h1{font-size:34px}h2{font-size:24px;margin-top:22px}h3{font-size:20px}
.small{color:var(--muted);font-size:14px;display:block}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 18px;background:var(--panel);border-bottom:1px solid var(--rule)}
.top nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.who{font-size:14px;color:var(--muted);margin-right:4px}
.brand{display:flex;align-items:center;gap:10px}.brand b{font-family:var(--serif);font-size:22px;display:block;line-height:1}.brand span{font-size:13px;color:var(--muted)}
main{max-width:1180px;margin:0 auto;padding:22px 18px 40px}
.foot{text-align:center;color:var(--muted);font-size:13px;padding:14px}
.btn{font-family:var(--sans);font-size:15px;font-weight:600;padding:9px 14px;border-radius:10px;border:1px solid var(--rule);background:var(--panel);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.btn:hover{border-color:var(--led)}.btn.primary{background:var(--led);border-color:var(--led);color:#fff}.btn.ghost{background:transparent}.btn.danger{background:var(--cr);border-color:var(--cr);color:#fff}
.btn:disabled{opacity:.45;cursor:default}.btn.sm{font-size:13px;padding:5px 9px;border-radius:8px}.btn.file{cursor:pointer}
.btn:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.link{background:none;border:none;color:var(--led);font:600 14px var(--sans);cursor:pointer;padding:4px 0}
input,select,textarea{font:16px var(--sans);padding:9px 11px;border:1px solid var(--rule);border-radius:9px;background:var(--panel);color:var(--ink);max-width:100%}
input.n{width:78px}textarea{width:100%}label{display:block;font-weight:600;font-size:14px;margin:10px 0}label input{display:block;width:100%;margin-top:4px}
.row{display:flex;gap:8px;align-items:center;margin-top:10px}.row.wrap{flex-wrap:wrap}
.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(160deg,var(--ink) 0 38%,var(--paper) 38%)}
.lcard{background:var(--panel);border:1px solid var(--rule);border-radius:18px;padding:28px 30px;width:min(440px,100%);box-shadow:0 20px 50px rgba(0,0,0,.18)}
.lcard .lead{font-size:18px;color:var(--muted);margin:14px 0 18px}.lcard .brand b{font-size:26px}
.google{width:100%;justify-content:center;padding:12px}.or{text-align:center;color:var(--muted);font-size:13px;margin:16px 0 4px;border-top:1px solid var(--rule);line-height:0}.or span{background:var(--panel);padding:0 10px}
.err{color:var(--cr);font-weight:600;min-height:20px;font-size:14px}.demo{background:var(--gold-soft);border-radius:10px;padding:10px 12px;font-size:14px;margin-top:8px}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.scard{background:var(--panel);border:1px solid var(--rule);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:6px}.scard.exp{opacity:.6}
.scode{width:52px;height:52px;border-radius:12px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font:700 18px var(--sans);flex:none}
@media (prefers-color-scheme:dark){.scode{background:#0e7a68}}
.prog{height:8px;border-radius:9px;background:var(--rule);overflow:hidden;margin-top:6px}.prog i{display:block;height:100%;background:var(--ok)}
.ann{background:var(--panel);border:1px solid var(--rule);border-left:5px solid var(--gold);border-radius:14px;padding:14px 18px;margin:12px 0}.anni p{margin:2px 0 10px}
.clist{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.crow{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 14px}.crow>div{flex:1}.crow b{display:block}
.crow.done{border-color:var(--ok);background:var(--led-soft)}.crow.lock{opacity:.55}
.tick{width:34px;height:34px;border-radius:50%;border:3px solid var(--rule);background:var(--panel);color:#fff;font-size:20px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;padding:0;flex:none}
button.tick{cursor:pointer}.tick.on{background:var(--ok);border-color:var(--ok)}
.grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}
.panel{background:var(--panel);border:1px solid var(--rule);border-radius:16px;padding:16px 18px;margin-bottom:14px}
.panel.add{border-style:dashed}.panel.tip{background:var(--gold-soft);border-color:var(--gold)}
.panel.sa{border-left:6px solid var(--led)}.panel.ss{border-left:6px solid var(--gold)}.panel.sl{border-left:6px solid var(--dr)}
.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;padding:8px;border-bottom:1px solid var(--rule);white-space:nowrap;vertical-align:middle}th{color:var(--muted);font-size:13px}
tr.rv td{opacity:.5}.acts{display:flex;gap:4px}
.chip{display:inline-block;background:var(--dr-soft);color:var(--dr);border-radius:999px;padding:2px 9px;font-size:13px;font-weight:600;margin:1px}
.st{display:inline-block;padding:2px 9px;border-radius:999px;font-weight:700;font-size:13px}.st.ok{background:var(--led-soft);color:var(--led)}.st.ex{background:var(--gold-soft);color:var(--gold)}.st.rm{background:var(--cr-soft);color:var(--cr)}
.modal{position:fixed;inset:0;background:rgba(10,18,30,.55);display:flex;align-items:center;justify-content:center;z-index:20;padding:16px}
.mbox{background:var(--panel);border-radius:16px;padding:20px 22px;width:min(520px,100%);box-shadow:0 20px 50px rgba(0,0,0,.35)}
.vwrap{position:fixed;top:64px;left:0;right:0;bottom:0;display:flex;flex-direction:column}.vbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 18px;background:var(--panel);border-bottom:1px solid var(--rule)}
.vwrap iframe{flex:1;border:0;width:100%;background:#fff}.vload{padding:30px;text-align:center;color:var(--muted)}
#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:#15233a;color:#fff;padding:12px 18px;border-radius:12px;font-size:15px;z-index:50;opacity:0;pointer-events:none;transition:opacity .2s;max-width:92vw;text-align:center}
#toast.on{opacity:1}
@media (max-width:640px){h1{font-size:28px}.grid2{grid-template-columns:1fr}.vwrap{top:112px}}

input[type=file][hidden]{display:none!important}
.panel .row{flex-wrap:wrap}

.badge{background:var(--cr);color:#fff;border-radius:999px;padding:0 7px;font-size:12px;margin-left:4px}
b.ok{color:var(--ok)}b.bad{color:var(--cr)}b.warn{color:var(--gold)}
.crow .btn.sm{flex:none}

.pdfwrap{flex:1;overflow:auto;background:#525c69;padding:16px;display:flex;flex-direction:column;align-items:center;gap:14px;user-select:none;-webkit-user-select:none}
.pdfpage{position:relative;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.35)}.pdfpage canvas{display:block}
.pdfwm{position:absolute;inset:0;pointer-events:none;background-repeat:repeat}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 14px;border-bottom:1px solid var(--rule);padding-bottom:10px}
.frow{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 14px}.frow>div{flex:1}.frow b{display:block}
.frow.lock{opacity:.6}.ficon{font-size:26px;flex:none}
@media print{body *{display:none!important}body::after{content:'Printing is disabled · © Arjun Das';display:block;padding:40px;font:20px Arial}}
label input[type=checkbox]{display:inline-block;width:auto;margin:0 8px 0 0;vertical-align:middle}
label.row{display:flex;align-items:center}

.qwrap{max-width:820px;margin:0 auto}.qcard{padding:22px 24px}.qtext{font-size:20px;line-height:1.45;margin:0 0 14px}
.qopts{display:flex;flex-direction:column;gap:8px}.qopt{text-align:left;font:500 17px var(--sans);padding:12px 14px;border-radius:10px;border:1px solid var(--rule);background:var(--panel);color:var(--ink);cursor:pointer;display:flex;gap:10px;align-items:flex-start}
.qopt:hover{border-color:var(--led)}.qopt.sel{border-color:var(--led);box-shadow:0 0 0 2px var(--led-soft)}.qopt.good{background:var(--led-soft);border-color:var(--ok)}.qopt.badc{background:var(--cr-soft);border-color:var(--cr)}.qopt:disabled{cursor:default}
.qm{font-size:18px;line-height:1.2;flex:none;color:var(--led)}
.qfb{margin-top:14px;border-radius:12px;padding:12px 16px;font-size:16px}.qfb.ok{background:var(--led-soft);border:1px solid var(--ok)}.qfb.no{background:var(--cr-soft);border:1px solid var(--cr)}.qfb p{margin:8px 0 0}
.bignum{font:700 64px var(--serif);line-height:1}.okc{color:var(--ok)}.badt{color:var(--cr)}
.bank{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 14px}.bank>div{flex:1}.bank b{display:block}

.exam{display:grid;grid-template-columns:200px 1fr;gap:16px;align-items:start}.epanel{position:sticky;top:80px;background:var(--panel);border:1px solid var(--rule);border-radius:14px;padding:12px}
.enavs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0}.enav{font:700 14px var(--sans);padding:8px 0;border-radius:8px;border:1px solid var(--rule);background:var(--panel);color:var(--ink);cursor:pointer}
.enav.ans{background:var(--led-soft);border-color:var(--ok)}.enav.flg{background:var(--gold-soft);border-color:var(--gold)}.enav.cur{outline:3px solid var(--led)}
.etimer{font:700 20px var(--sans);padding:6px 12px;border-radius:10px;background:var(--led-soft);color:var(--led)}.etimer.warn{background:var(--cr-soft);color:var(--cr)}
.epart{margin:10px 0;padding:12px 14px}.rv{border-top:1px solid var(--rule);padding-top:8px;margin-top:8px}
.ewm{position:fixed;inset:0;pointer-events:none;z-index:4;background-repeat:repeat}
.mrow{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 14px;flex-wrap:wrap}.mrow>div{flex:1;min-width:220px}.mrow b{display:block}
.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:13px;font-weight:700}.pill.draft{background:var(--rule);color:var(--muted)}.pill.lobby{background:var(--gold-soft);color:var(--gold)}.pill.live{background:var(--cr-soft);color:var(--cr)}.pill.ended{background:var(--dr-soft);color:var(--dr)}.pill.released{background:var(--led-soft);color:var(--led)}
.livebar{background:var(--cr);color:#fff;border-radius:12px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0;flex-wrap:wrap}
@media (max-width:760px){.exam{grid-template-columns:1fr}.epanel{position:static}}

.fcard{min-height:230px;border-radius:18px;border:2px solid var(--rule);background:var(--panel);display:flex;align-items:center;justify-content:center;text-align:center;padding:26px;margin:14px 0;cursor:pointer;transition:transform .2s}
.fcard.back{border-color:var(--led);background:var(--led-soft)}.fcard p{font-size:22px;line-height:1.45;margin:8px 0 0}.fcard:hover{transform:translateY(-2px)}
.dash{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.stat{background:var(--panel);border:1px solid var(--rule);border-radius:14px;padding:14px 16px}.stat .big{font:700 34px var(--serif);line-height:1.1}
.bar{height:10px;border-radius:9px;background:var(--rule);overflow:hidden}.bar i{display:block;height:100%}.weak{display:grid;grid-template-columns:1fr 160px 50px;gap:10px;align-items:center;margin:6px 0}
.cd{display:inline-flex;gap:8px;align-items:center;background:var(--gold-soft);color:var(--gold);border-radius:999px;padding:4px 12px;font-weight:700;margin:2px}
.evt{display:flex;gap:12px;align-items:center;background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 14px;flex-wrap:wrap}.evt>div{flex:1;min-width:220px}.evt b{display:block}
.dbt{background:var(--panel);border:1px solid var(--rule);border-radius:12px;padding:12px 16px}.dbt .rep{background:var(--led-soft);border-radius:10px;padding:8px 12px;margin-top:8px}
.stars{display:flex;gap:4px}.stars button{font-size:24px;background:none;border:none;cursor:pointer;color:var(--rule);padding:0 2px}.stars button.on{color:var(--gold)}

.btn.wa{background:#1fa855;border-color:#1fa855;color:#fff}.btn.wa:hover{filter:brightness(1.05)}a.waicon{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#1fa855;color:#fff;vertical-align:middle}
.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.thumb{position:relative;display:inline-block}.thumb img{width:92px;height:92px;object-fit:cover;border-radius:10px;border:1px solid var(--rule);cursor:zoom-in;background:var(--rule)}
.thumb button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:none;background:var(--cr);color:#fff;font-size:12px;cursor:pointer}
.dtp{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.dtf{position:relative;display:flex;align-items:center}.dtf input{width:170px;padding-right:40px}.dtf input.bad{border-color:var(--cr);box-shadow:0 0 0 2px var(--cr-soft)}
.dtb{position:absolute;right:4px;background:none;border:none;font-size:18px;cursor:pointer;padding:4px}
.dpop,.tpop{position:absolute;top:calc(100% + 6px);left:0;z-index:40;background:var(--panel);border:1px solid var(--rule);border-radius:14px;box-shadow:0 14px 34px rgba(0,0,0,.2);padding:12px}
.dpop{width:280px}.dph{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.dph button{background:var(--led-soft);color:var(--led);border:none;border-radius:8px;width:32px;height:32px;font-size:18px;cursor:pointer}
.dpw,.dpg{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.dpw span{font-size:12px;color:var(--muted);font-weight:700}
.dpg button{border:none;background:none;border-radius:8px;padding:7px 0;font:600 14px var(--sans);color:var(--ink);cursor:pointer}.dpg button:hover{background:var(--led-soft)}.dpg button.tod{outline:2px solid var(--gold)}.dpg button.sel{background:var(--led);color:#fff}
.tpop{width:220px;max-height:240px;overflow:auto;padding:6px}.tpop button{display:flex;justify-content:space-between;width:100%;border:none;background:none;padding:8px 10px;border-radius:8px;font:600 14px var(--sans);color:var(--ink);cursor:pointer;text-align:left}.tpop button:hover,.tpop button.sel{background:var(--led-soft)}
.dtv{color:var(--ok)!important;font-weight:600}

.chat{display:flex;flex-direction:column;gap:10px;margin:14px 0}.msg{max-width:78%;border-radius:14px;padding:10px 14px;border:1px solid var(--rule);background:var(--panel)}
.msg p{margin:4px 0 0;font-size:16px;line-height:1.45}.msg.mine{align-self:flex-end;background:var(--led-soft);border-color:var(--led)}.msg.theirs{align-self:flex-start}
.msg.arjun.theirs{border-left:4px solid var(--led)}.drow .pill{flex:none}
@media (max-width:640px){.msg{max-width:92%}}
