*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;font-family:system-ui,-apple-system,sans-serif;color:#1a1a1a;background:#f5f5f5}.loginPage{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem}.loginPage .panel{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:24rem;padding:2rem;background:#fff;border:1px solid #ddd;border-radius:8px}.loginPage label{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.loginPage input{padding:.5rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}.loginPage button{padding:.625rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer}.loginPage button:disabled{opacity:.6;cursor:not-allowed}.appShell{display:flex;min-height:100vh}.sidebar{gap:1.5rem;width:14rem;padding:1.5rem 1rem;background:#1e293b;color:#f1f5f9}.sidebar,.sidebar nav{display:flex;flex-direction:column}.sidebar nav{gap:.5rem}.sidebar a{color:#93c5fd;text-decoration:none;font-size:.875rem}.sidebar a:hover{text-decoration:underline}.content{flex:1 1;padding:2rem;overflow:auto}.searchBar{display:flex;gap:.75rem;margin:1rem 0}.searchBar input{flex:1 1;padding:.5rem .75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}.searchBar button{padding:.5rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:4px;cursor:pointer}.searchBar button:disabled{opacity:.6;cursor:not-allowed}.activityTable{width:100%;border-collapse:collapse;background:#fff;border:1px solid #ddd;font-size:.875rem}.activityTable td,.activityTable th{padding:.5rem .75rem;border-bottom:1px solid #eee;text-align:left}.activityTable th{font-weight:600}.activityTable tbody tr:hover,.activityTable th{background:#f8fafc}.drawer{position:fixed;top:0;right:0;width:22rem;height:100vh;padding:1.5rem;background:#fff;border-left:1px solid #ddd;box-shadow:-4px 0 12px rgba(0,0,0,.08);overflow-y:auto}.drawer dl{display:grid;grid-template-columns:auto 1fr;grid-gap:.5rem 1rem;gap:.5rem 1rem;margin:1rem 0}.drawer dt{font-weight:600;font-size:.875rem;color:#64748b}.drawer dd{margin:0;font-size:.875rem;word-break:break-all}.drawerLinks{display:flex;flex-direction:column;gap:.5rem}.drawerLinks a{color:#2563eb;font-size:.875rem}.error{color:#dc2626;margin:.5rem 0}.error,.muted{font-size:.875rem}.muted{color:#64748b}