/* Reflect. Colours and feel taken from scan.volodi.com (Stuart, 5 Nov 2026). */
:root{
  --bg:#080b10; --glow:#142339; --panel:#111722; --panel2:#171f2c; --line:#293445;
  --text:#eef2f8; --dim:#96a2b5; --cyan:#53d5ff; --green:#4fe39a; --amber:#ffc667; --red:#ff7285;
}
*{box-sizing:border-box}
html{background:radial-gradient(circle at 15% 0%,var(--glow) 0,var(--bg) 36rem) var(--bg);min-height:100%}
body{margin:0;color:var(--text);font:15px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
a{color:var(--cyan);text-decoration:none} a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px 60px}
header.top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:30px 0 18px}
.eyebrow{color:var(--cyan);font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
h1{margin:4px 0 0;font-size:44px;font-weight:900;letter-spacing:-.05em;line-height:1}
h2{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--dim);margin:0 0 10px}
nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
nav a,nav button{padding:8px 13px;border-radius:10px;color:var(--text);border:1px solid var(--line);
  background:transparent;font:inherit;font-weight:700;font-size:13px;cursor:pointer}
nav a.on{border-color:var(--cyan);color:var(--cyan)} nav a:hover{text-decoration:none;border-color:var(--cyan)}
nav form{margin:0}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;margin:0 0 16px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.pill{display:inline-flex;align-items:center;gap:7px;padding:5px 11px;border-radius:999px;font-size:13px;
  font-weight:800;white-space:nowrap;color:var(--green);background:rgba(79,227,154,.1)}
.pill.amber{color:var(--amber);background:rgba(255,198,103,.1)}
.pill.note{color:#c7cfdb;background:rgba(255,255,255,.05)}
.pill.red{color:var(--red);background:rgba(255,114,133,.1)}
.pills{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;color:var(--dim);font-size:11px;letter-spacing:.09em;text-transform:uppercase;
  font-weight:700;padding:6px 8px;border-bottom:1px solid var(--line)}
td{padding:7px 8px;border-bottom:1px solid rgba(41,52,69,.6);vertical-align:middle}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.in{color:var(--green)} .out{color:var(--cyan)} .dim{color:var(--dim)} .bad{color:var(--red)} .warn{color:var(--amber)}
.bar{height:5px;border-radius:3px;min-width:2px;margin:3px 0}
.bar.in{background:var(--green)} .bar.out{background:var(--cyan)}
input,select{background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:8px;
  padding:8px 10px;font:inherit;max-width:100%}
input:focus,select:focus{outline:none;border-color:var(--cyan)}
button,.btn{border:0;border-radius:10px;background:var(--cyan);color:#041018;font-weight:900;font:inherit;
  font-weight:800;padding:8px 14px;cursor:pointer}
button.quiet{background:var(--line);color:var(--text);font-weight:700}
form.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0}
label{color:var(--dim);font-size:13px}
.flash{padding:10px 14px;border-radius:10px;margin:0 0 12px;font-weight:700}
.flash.ok{color:var(--green);background:rgba(79,227,154,.1)}
.flash.bad{color:var(--red);background:rgba(255,114,133,.1)}
.login{max-width:380px;margin:12vh auto 0}
.login input{width:100%;margin:4px 0 14px;font-size:17px}
.login button{width:100%;padding:11px}
.sub{color:var(--dim);margin:8px 0 0;max-width:650px}
