:root{color-scheme:light;--ink:#152238;--panel:#fff;--muted:#526173;--line:#c7d0dc;--accent:#075eb5;--danger:#b42318;background:#f4f7fb;color:var(--ink);font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--accent)}:focus-visible{outline:3px solid #f5a623;outline-offset:2px}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:4;background:#fff;padding:.5rem}.shell{min-height:100vh;display:grid;grid-template-columns:17rem 1fr}.side{background:#11233d;color:#fff;padding:1.25rem}.side a{display:block;color:#fff;padding:.55rem;border-radius:.25rem}.side a:focus,.side a:hover{background:#24436a}.main{padding:1.5rem;max-width:1100px;width:100%}.card{background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:1rem;box-shadow:0 1px 3px #15223818}.stack{display:grid;gap:1rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.split{display:grid;grid-template-columns:minmax(15rem,30%) 1fr;gap:1rem}.muted{color:var(--muted)}.error{color:var(--danger)}.status{padding:.75rem;border-left:4px solid var(--accent);background:#e9f3ff}.danger{border-color:var(--danger)}.button{border:1px solid #064d92;background:var(--accent);color:#fff;border-radius:.25rem;padding:.55rem .8rem}.button.secondary{color:var(--ink);background:#fff;border-color:#8090a2}.button.danger{background:var(--danger);border-color:#8c1d18}label{display:grid;gap:.35rem;font-weight:600}input,select,textarea{border:1px solid #718096;border-radius:.25rem;padding:.55rem;background:#fff;color:var(--ink)}table{width:100%;border-collapse:collapse}td,th{padding:.65rem;border-bottom:1px solid var(--line)}.message,td,th{text-align:left}.message{display:block;width:100%;padding:.7rem;border:0;border-bottom:1px solid var(--line);background:#fff}.message:hover{background:#edf5ff}.reader-frame{width:100%;min-height:18rem;border:1px solid var(--line);background:white}.login{max-width:26rem;margin:10vh auto}@media(max-width:700px){.shell{grid-template-columns:1fr}.side{display:flex;gap:.25rem;overflow:auto}.main{padding:1rem}.split{grid-template-columns:1fr}}