/*\definecolor{accent}{HTML}{E8F1F8}
\definecolor{nb}{HTML}{10427b}*/



/* Top navbar style (light theme) */
.topnav {
  background-color: #f6f8fa; /* light grey */
  padding: 0.5rem 1rem;
  border-bottom: 1px solid #e1e4e8;
}

/* Nav links as black buttons with blue hover box */
.topnav a {
  color: #000;
  margin-right: 0.5rem;
  padding: 0.3rem 0.7rem;
  border-radius: 6px;
  text-decoration: none;
  transition: background-color 0.2s;
  font-weight: 500;
}

.topnav a:hover {
  text-decoration: none;
  background-color: #E8F1F8; /* blue hover, slightly transparent */
}

.topnav a.active {
  background-color: #10427b; /* solid blue like subnav */
  color: white;
}

/* Page content */
body {
  background-color: #f6f8fa;
}

.content {
  padding: 3rem 1rem;    /* vertical + horizontal padding */
  width: 100%;           /* fill parent container */
  max-width: none;       /* remove previous 1200px constraint */
  margin: 0 auto;        /* <-- this is centering the block horizontally */
  box-sizing: border-box;
}

/* Cards for repo/issues panels */
.card {
  border: 1px solid #e1e4e8;
  border-radius: 6px;
  margin-bottom: 1.5rem;
  background-color: #fff;
}

.card-header {
  background-color: #f1f3f5; /* subtle grey header */
  font-weight: 600;
  font-size: 1rem;
}

.card-body p {
  margin: 0;
  font-size: 0.95rem;
}

/* Responsive grid for cards */
@media (min-width: 768px) {
  .card-group {
    display: flex;
    gap: 1rem;
  }
  .card-group .card {
    flex: 1;
  }
}

/* User icon */
.user-icon {
  color: #000;
  padding: 0.35rem 0.6rem;
  border-radius: 6px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  font-size: 1.2rem;
  transition: background-color 0.2s ease;
}

.user-icon:hover {
  background-color: #E8F1F8; /* same blue hover as navbar links */
  text-decoration: none;
  color: #000;
}

/* Login card styles */
.login-card {
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  background-color: #fff;
}

/* Login form header */
.login-card .card-header {
  background-color: #10427b; /* blue header */
  color: #fff;
  font-weight: 600;
  text-align: center;
  font-size: 1.1rem;
  border-bottom: none; /* optional, cleaner look */
  border-radius: 6px 6px 0 0;
  padding: 0.75rem 1rem;
}

/* Login form fields */
.login-card form input,
.login-card form button {
  height: 2.5rem;
  font-size: 0.95rem;
  border-radius: 6px;
}

/* Login button */
.login-card form button.btn-primary {
  background-color: #10427b;
  border-color: #10427b;
  color: #fff;
  transition: background-color 0.2s ease;
}

.login-card form button.btn-primary:hover {
  background-color: #E8F1F8; /* slightly lighter blue on hover */
  border-color: #E8F1F8;
}


/* Override Bootstrap primary button */
.btn-primary {
  background-color: #10427b;
  border-color: #10427b;
}

.btn-primary:hover {
  background-color: #E8F1F8;
  border-color: #E8F1F8;
}

/* Match card headers */
.card-header {
  background-color: #10427b;
  color: white;
}
/* Secondary navbar uses the same style as topnav, smaller and indented */
.subnav {
  background-color: #f6f8fa;        /* same light grey */
  border-bottom: 1px solid #e1e4e8; /* subtle border */
  padding: 0.2rem 1rem;             /* slightly smaller vertical padding */
  display: flex;
  align-items: center;
  gap: 0.5rem;                      /* spacing between links */
  font-size: 0.85rem;               /* slightly smaller text than topnav */
}

/* Links: same style as topnav a */
.subnav-link {
  color: #000;
  margin-right: 0.5rem;
  padding: 0.3rem 0.7rem;
  border-radius: 6px;
  text-decoration: none;
  transition: background-color 0.2s;
  font-weight: 500;
}

.subnav-link:hover {
  text-decoration: none;
  background-color: #E8F1F8;        /* same blue hover as topnav links */
  color: #000;
}

/* Active tab: solid blue */
.subnav-link.active {
  background-color: #10427b;
  color: white;
}

/* Indent the first link */
.subnav-link:first-child {
  margin-left: 1.5rem;
}


/* Device status dot (driver-reported device state) */
.status-dot {
    width: 0.55rem;
    height: 0.55rem;
    border-radius: 50%;
    display: inline-block;
    background-color: #adb5bd;   /* fallback / unknown */
    flex-shrink: 0;
}
.status-dot-idle           { background-color: #adb5bd; }  /* grey  — no device */
.status-dot-device-ready   { background-color: #0dcaf0; }  /* cyan  — connected, idle */
.status-dot-device-running { background-color: #198754; }  /* green — measuring */
.status-dot-exit           { background-color: #dc3545; }  /* red   — driver stopped */

/* Command buttons coloured by command name */
.btn-command-start {
    color: #198754;
    border: 1px solid #198754;
    background-color: transparent;
}
.btn-command-start:hover {
    color: #fff;
    background-color: #198754;
}
.btn-command-stop {
    color: #dc3545;
    border: 1px solid #dc3545;
    background-color: transparent;
}
.btn-command-stop:hover {
    color: #fff;
    background-color: #dc3545;
}


/* Inner device card */
.device-card {
    border-color: #b6d4fe;          /* light blue border */
}
.device-card-header {
    background-color: #e7f1ff;      /* light blue fill */
    border-bottom-color: #b6d4fe;
}
