/* UVTAB palette from https://www.uvtab.go.ug/ — verified 2026-09-25 */
:root{font-family:Inter,Arial,sans-serif;color:#172033;background:#f5f7fb;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #e0e5ed;border-radius:6px;background:white;padding:10px 16px;color:#16266f}button:hover{background:#eef1fa}button.primary{background:#16266f;color:white;border-color:#16266f}button:disabled{opacity:.5;cursor:wait}input,textarea,select{width:100%;padding:12px;border:1px solid #c7cede;border-radius:5px;background:#fff;color:#172033}textarea{min-height:130px;line-height:1.6}label{display:block;font-size:14px;font-weight:600;margin:18px 0 7px}aside{position:fixed;width:248px;inset:0 auto 0 0;background:#09143f;color:white;padding:32px 22px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:25px;letter-spacing:2px;font-weight:700}.brand img{width:42px}.subbrand{font-size:12px;letter-spacing:1.4px;color:#f2da8f;margin:12px 0 42px}.nav{display:grid;gap:8px}.nav button{text-align:left;background:transparent;border:0;color:#d6dcef;padding:14px}.nav button.active{color:white;background:#16266f;border-left:3px solid #deb233}.sidebottom{margin-top:auto;font-size:14px;color:#c4cce3;line-height:1.8}.shell{margin-left:248px}header{height:82px;border-bottom:1px solid #e0e5ed;display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#fff}header small{font-size:14px;color:#5b6678}main{padding:38px 42px;max-width:1600px;margin:auto}h1{font-family:Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-.7px;margin:8px 0 12px}h2{font-size:20px;font-weight:600;margin:0}p{line-height:1.6}.muted{color:#5b6678}.eyebrow{font-size:12px;letter-spacing:1.8px;color:#16266f;font-weight:bold}.titlebar,.row{display:flex;justify-content:space-between;align-items:center;gap:16px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:30px 0}.stat{border:1px solid #e0e5ed;border-radius:8px;padding:23px;background:white}.stat strong{display:block;font-size:34px;font-family:Georgia,serif;font-weight:400;margin-top:15px}.stat span{font-size:14px;color:#5b6678}.columns{display:grid;grid-template-columns:1.7fr 1fr;gap:24px}.panel{background:white;border:1px solid #e0e5ed;border-radius:8px;padding:26px;margin-bottom:22px}.panelhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.empty{padding:34px 12px;text-align:center;color:#5b6678;line-height:1.7}.banner{background:#fbf6e8;border-left:3px solid #deb233;padding:22px;margin:22px 0}.badge{display:inline-block;padding:5px 9px;background:#eef1fa;color:#16266f;font-size:12px;border-radius:4px;white-space:nowrap}.badge.review{background:#fbf1d3;color:#735810}.entry{border-top:1px solid #e0e5ed;padding:19px 0}.entry:first-of-type{border-top:0}.entry h3{font-size:16px;margin:8px 0}.entry p{margin:8px 0;color:#5b6678;font-size:14px}.textbtn{padding:4px 0;border:0;background:transparent;color:#16266f}.datebox{background:#eef1fa;border-radius:5px;padding:12px;text-align:center;font-size:14px;min-width:66px}.listrow{display:flex;gap:18px;align-items:center}.listrow .grow{flex:1}dialog{border:1px solid #e0e5ed;border-radius:10px;width:min(840px,94vw);max-height:90vh;padding:30px;color:#172033}dialog::backdrop{background:#09143f6b}dialog h2{font-family:Georgia,serif;font-size:28px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px;flex-wrap:wrap}.login{max-width:440px;margin:10vh auto;background:white;padding:38px;border:1px solid #e0e5ed;border-radius:10px}.login .brand{color:#16266f}.search{max-width:420px;margin:20px 0}#toast{position:fixed;bottom:24px;right:24px;background:#09143f;color:white;padding:15px 22px;border-radius:7px;display:none;z-index:10}.detailtext{white-space:pre-wrap;line-height:1.7}.small{font-size:14px}.error{color:#a1392e}.inline{display:flex;gap:10px;align-items:center}.history{max-height:250px;overflow:auto}a{color:#16266f}@media(max-width:1000px){aside{width:205px;padding:24px 12px}.shell{margin-left:205px}main{padding:25px}.columns{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}header{padding:0 25px}}@media(max-width:650px){aside{position:static;width:100%;padding:18px}.subbrand,.sidebottom{display:none}.nav{display:flex;overflow:auto;margin-top:18px}.nav button{white-space:nowrap}.shell{margin:0}header{height:65px}main{padding:22px 16px}h1{font-size:29px}.stats{gap:10px}.stat{padding:17px}.titlebar{align-items:flex-start;flex-direction:column}.formgrid{grid-template-columns:1fr}.panel{padding:20px}.brand{font-size:21px}}@media print{aside,header,button,.actions{display:none}.shell{margin:0}dialog{position:static;max-height:none;width:100%;border:0}body:has(dialog[open]) .shell{display:none}}

:root{--uvtab-blue:#16266f;--uvtab-blue-dark:#09143f;--uvtab-gold:#deb233;--uvtab-gold-light:#f2da8f}
button.primary:hover{background:var(--uvtab-blue-dark);border-color:var(--uvtab-blue-dark)}
.nav button:hover{background:var(--uvtab-blue);color:white}
.login{border-top:4px solid var(--uvtab-gold)}
h1,.stat strong{color:var(--uvtab-blue-dark)}
:focus-visible{outline:3px solid var(--uvtab-gold);outline-offset:3px}
