/* WiFi Monitor — Shared Styles
   Used by: landing page, captures browse, per-capture results */

:root {
    --viasat-blue: #009de0;
    --viasat-blue-hover: #0081b8;
    --green: #22c55e;
    --yellow: #eab308;
    --orange: #f97316;
    --amber: #f59e0b;
    --red: #ef4444;
    --blue: #3b82f6;
    --gray-100: #f9fafb;
    --gray-200: #dee4e8;
    --gray-300: #c3cdd5;
    --gray-400: #a0adb8;
    --gray-500: #667a89;
    --gray-600: #4a5e6d;
    --gray-700: #32424e;
    --gray-800: #202e39;
    --gray-900: #141d24;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    background: var(--gray-100);
    color: var(--gray-800);
    -webkit-font-smoothing: antialiased;
}

/* ── Navigation ── */
.nav {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 12px 32px;
    font-size: 13px;
    font-weight: 500;
    border-bottom: 1px solid var(--gray-200);
    background: white;
}
.nav a {
    color: var(--gray-500);
    text-decoration: none;
}
.nav a:hover { color: var(--gray-800); }
.nav a.active { color: var(--gray-800); font-weight: 600; }
.nav .brand {
    font-weight: 700;
    color: var(--gray-800);
    margin-right: 8px;
}

/* ── Nav dropdown ── */
.nav-dropdown {
    position: relative;
}
.nav-dropdown-trigger {
    cursor: default;
}
.nav-dropdown-trigger::after {
    content: " ▾";
    font-size: 0.7em;
}
.nav-dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    right: -12px;
    padding-top: 8px;
    z-index: 100;
}
.nav-dropdown-menu-inner {
    background: white;
    border: 1px solid var(--gray-200);
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    min-width: 160px;
    padding: 6px 0;
    overflow: hidden;
}
.nav-dropdown:hover .nav-dropdown-menu {
    display: block;
}
.nav-dropdown-menu-inner a {
    display: block;
    padding: 8px 16px;
    color: var(--gray-600);
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
}
.nav-dropdown-menu-inner a:hover {
    background: var(--gray-100);
    color: var(--gray-800);
}
.nav-dropdown-menu-inner a.active {
    color: var(--gray-800);
    font-weight: 600;
}

/* ── Dark nav variant (home page) ── */
.nav-dark {
    background: var(--gray-900);
    border-bottom: none;
}
.nav-dark a { color: var(--gray-400); }
.nav-dark a:hover { color: white; }
.nav-dark a.active { color: white; }
.nav-dark .brand { color: white; }
.nav-dark .nav-dropdown-menu-inner {
    background: var(--gray-800);
    border-color: var(--gray-700);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.nav-dark .nav-dropdown-menu-inner a { color: var(--gray-400); }
.nav-dark .nav-dropdown-menu-inner a:hover { background: var(--gray-700); color: white; }
.nav-dark .nav-dropdown-menu-inner a.active { color: white; }

/* ── Page ── */
.page {
    max-width: 1440px;
    margin: 0 auto;
    padding: 20px 32px 48px;
}

/* ── Footer ── */
.footer {
    text-align: center;
    padding: 24px;
    color: var(--gray-400);
    font-size: 0.75rem;
}
.footer a {
    color: var(--viasat-blue);
    text-decoration: none;
}
.footer a:hover { text-decoration: underline; }
