:root{--green:#0f3d2e;--green2:#17543f;--paper:#f6f7f4;--ink:#1c2420;--brass:#b58a2b;--line:#dfe3dc;--red:#a32a2a}
*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Roboto,Arial,sans-serif;background:var(--paper);color:var(--ink);line-height:1.5}
h1,h2,.brand b{font-family:Georgia,"Times New Roman",serif;font-weight:700}
aside{position:fixed;inset:0 auto 0 0;width:250px;background:var(--green);color:#e8efe9;display:flex;flex-direction:column;padding:20px 16px}
.brand{display:flex;gap:12px;align-items:center;padding-bottom:18px;border-bottom:1px solid #ffffff22}.brand b{display:block;font-size:15px;line-height:1.25}.brand small{color:#b9cabe}
.seal{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;border:2px solid var(--brass);color:var(--brass);font:700 13px Georgia,serif}
.seal.big{width:84px;height:84px;font-size:24px;margin-bottom:20px}
aside nav{display:flex;flex-direction:column;gap:2px;margin-top:18px}
aside nav a{color:#d5e2d8;text-decoration:none;padding:10px 12px;border-radius:6px;border-left:3px solid transparent}
aside nav a:hover{background:#ffffff12}aside nav a.on{background:#ffffff1c;border-left-color:var(--brass);color:#fff}
.me{margin-top:auto;display:flex;flex-direction:column;font-size:14px}.me small{color:#b9cabe}.me a{color:var(--brass);margin-top:8px}
main{margin-left:100px;padding:28px 36px;max-width:1150px}main h1{font-size:28px;margin:0 0 20px;color:var(--green)}
section{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px 22px;margin-bottom:20px}
section h2{font-size:18px;margin:0 0 14px;color:var(--green)}
.stats{display:flex;gap:0;margin-bottom:20px;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.stats div{flex:1;padding:18px 22px;border-right:1px solid var(--line)}.stats div:last-child{border:0}
.stats b{display:block;font:700 28px Georgia,serif;color:var(--green)}.stats span{color:#5b665f;font-size:14px}
table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:#5b665f;font-weight:600;border-bottom:2px solid var(--line)}
th,td{padding:10px 8px;border-bottom:1px solid var(--line)}tr:hover td{background:#fafbf9}
label{display:block;font-size:13px;color:#4a554e}input,select{width:100%;padding:9px 10px;border:1px solid #c7cec6;border-radius:6px;font:inherit;background:#fff;margin-top:3px}
input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
td label{display:inline-block;margin-right:14px;color:var(--ink)}td input[type=radio]{width:auto;margin:0 4px 0 0}
.inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.inline input,.inline select{width:auto;flex:1;min-width:150px;margin:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end}.span{grid-column:1/-1}
.btn{background:var(--green);color:#fff;border:0;padding:10px 18px;border-radius:6px;font:inherit;cursor:pointer}.btn:hover{background:var(--green2)}
.btn.sm{padding:5px 10px;font-size:13px}.btn.red{background:var(--red)}
.badge{background:#e7efe9;color:var(--green);padding:2px 9px;border-radius:10px;font-size:12px;text-transform:capitalize}
.hbar{display:grid;grid-template-columns:260px 1fr 70px;gap:12px;align-items:center;margin:8px 0;font-size:14px;position:relative}
.hbar i{display:block;height:12px;background:var(--green2);border-radius:6px;min-width:3px}.hbar i.low{background:var(--red)}.hbar em{font-style:normal;color:#5b665f;text-align:right}
.notice{border-left:3px solid var(--brass);padding:2px 0 2px 14px;margin-bottom:14px}.notice small{margin-left:10px;color:#6b756f}.notice p{margin:4px 0 0}
.muted{color:#6b756f}.err{background:#f8e3e3;color:var(--red);padding:9px 12px;border-radius:6px}
.toast{position:fixed;right:24px;bottom:24px;padding:12px 18px;border-radius:6px;color:#fff;box-shadow:0 4px 14px #0003}.toast.ok{background:var(--green)}.toast.bad{background:var(--red)}
body.login{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}
.hero{background:var(--green);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px}.hero h1{font-size:38px;margin:0 0 10px;line-height:1.15}.hero p{color:#c6d6cb;font-size:17px;margin:0}
.panel{align-self:center;justify-self:center;width:min(380px,88%)}.panel h2{font-size:26px;margin:0 0 18px;color:var(--green)}.panel label{margin-bottom:14px}
@media(max-width:860px){aside{position:static;width:auto;flex-direction:row;flex-wrap:wrap;gap:8px;align-items:center}aside nav{flex-direction:row;margin:0}.brand{border:0;padding:0}.me{margin:0 0 0 auto}
main{margin:0;padding:18px}.hbar{grid-template-columns:1fr 60px}.hbar span{grid-column:1/-1}.stats{flex-direction:column}.stats div{border-right:0;border-bottom:1px solid var(--line)}
table{display:block;overflow-x:auto}body.login{grid-template-columns:1fr}.hero{padding:36px}}
a.btn{text-decoration:none;display:inline-block}.badge.late{background:#f8e3e3;color:var(--red)}.ok{background:#e3f1e8;color:var(--green);padding:9px 12px;border-radius:6px}
.rcpage{background:#fff}.rc{max-width:780px;margin:30px auto;padding:30px;border:3px double var(--green)}
.rc header{text-align:center}.rc header .seal{margin:0 auto 10px}.rc h1{font-size:24px;margin:0;color:var(--green)}.rc header p{margin:4px 0 18px;letter-spacing:.5px}
.rc dl{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;margin:0 0 18px}.rc dl div{display:flex;gap:8px}.rc dt{color:#5b665f;min-width:90px}.rc dd{margin:0;font-weight:600}
.rc .sum td{font-weight:700;border-top:2px solid var(--green)}.verdict{font-size:18px;margin:16px 0}
.sign{display:flex;justify-content:space-between;margin:60px 0 24px}.sign span{border-top:1px solid var(--ink);padding-top:4px;min-width:200px;text-align:center;font-size:13px}
.rc .btn{margin-right:14px}@media print{.noprint{display:none}.rc{border:3px double #000;margin:0}}

img.seal.logo{width:auto;height:44px;border:0;border-radius:6px;background:#fff;padding:2px}img.seal.big{height:90px}
.hero .info{margin-top:36px;padding-top:18px;border-top:1px solid #ffffff33}.hero .info p{font-size:14px;margin:4px 0;color:#c6d6cb}
.foot{margin-top:30px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:#6b756f}
.hero .info a{color:var(--brass)}
