/* ===== GME ADMIN — FIELD OPERATIONS COMMAND CENTER THEME =====
   Loaded ONLY by the new dashboard home page (dashboard-v3.html).
   Cream/green light theme per the 2026-06 redesign mockup.
   Does not touch shared/styles.css (used by all legacy pages).
   Version: 1.0 — 2026-06-12 */

:root {
    --gme-cream: #faf8f1;        /* page background */
    --gme-cream-deep: #f3f0e4;   /* header wash / hovers */
    --gme-card: #ffffff;         /* panel background */
    --gme-border: #e7e2d5;       /* panel borders */
    --gme-ink: #1c2a21;          /* primary text */
    --gme-muted: #75806f;        /* secondary text */
    --gme-green: #1a3d28;        /* brand dark green */
    --gme-green-bright: #1d7a3e; /* action green */

    /* status colors */
    --st-ready: #1d7a3e;
    --st-ready-bg: #e3f3e8;
    --st-warn: #b97a0c;
    --st-warn-bg: #fdf3dd;
    --st-setup: #2467b0;
    --st-setup-bg: #e4eefa;
    --st-offline: #c23434;
    --st-offline-bg: #fbe7e7;

    /* nav module hooks (nav.css reads these) */
    --gme-nav-bg: #fffdf7;
    --gme-nav-border: #e7e2d5;
    --gme-nav-fg: #3c463c;
    --gme-nav-hover: #f3f0e4;
    --gme-nav-accent: #1a3d28;
}

body.gme-home {
    background: var(--gme-cream);
    color: var(--gme-ink);
}

/* Panels */
.gme-panel {
    background: var(--gme-card);
    border: 1px solid var(--gme-border);
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(28, 42, 33, 0.05);
}

.gme-panel-title {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--gme-ink);
}

/* Status badges */
.st-badge {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    padding: 3px 10px;
    border-radius: 999px;
}
.st-ready   { color: var(--st-ready);   background: var(--st-ready-bg); }
.st-warning { color: var(--st-warn);    background: var(--st-warn-bg); }
.st-setup   { color: var(--st-setup);   background: var(--st-setup-bg); }
.st-offline { color: var(--st-offline); background: var(--st-offline-bg); }

/* Printer card detail rows */
.pc-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    font-size: 0.74rem;
    padding: 3px 0;
}
.pc-row .pc-label { color: var(--gme-muted); display: flex; align-items: center; gap: 5px; }
.pc-row .pc-value { font-weight: 600; color: var(--gme-ink); text-align: right; }
.pc-good { color: var(--st-ready) !important; }
.pc-warn { color: var(--st-warn) !important; }
.pc-bad  { color: var(--st-offline) !important; }
.pc-dim  { color: #9aa294 !important; font-weight: 500 !important; }

/* Card action buttons */
.pc-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 6px 4px;
    border-radius: 8px;
    border: 1px solid var(--gme-border);
    background: #fff;
    color: var(--gme-ink);
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s;
}
.pc-btn:hover:not(:disabled) { background: var(--gme-cream-deep); }
.pc-btn:disabled { opacity: 0.45; cursor: not-allowed; }

/* KPI cells */
.kpi-cell { text-align: center; padding: 10px 6px; }
.kpi-label { font-size: 0.68rem; color: var(--gme-muted); font-weight: 600; }
.kpi-value { font-size: 1.45rem; font-weight: 800; color: var(--gme-ink); margin-top: 2px; }
.kpi-delta { font-size: 0.68rem; font-weight: 700; margin-top: 2px; }
.kpi-delta.up { color: var(--st-ready); }
.kpi-delta.down { color: var(--st-offline); }
.kpi-delta.flat { color: var(--gme-muted); }
.kpi-sub { font-size: 0.62rem; color: var(--gme-muted); }

/* Map */
#gme-admin-map { width: 100%; height: 280px; border-radius: 10px; }
.map-legend { display: flex; flex-wrap: wrap; gap: 12px; font-size: 0.68rem; color: var(--gme-muted); }
.map-dot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 4px; }

/* Alerts */
.alert-row {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 9px 0;
    border-bottom: 1px solid var(--gme-cream-deep);
    font-size: 0.78rem;
}
.alert-row:last-child { border-bottom: none; }

/* Voice placeholder */
.voice-mic {
    width: 64px; height: 64px; border-radius: 50%;
    background: var(--gme-cream-deep);
    border: 2px solid var(--gme-border);
    display: flex; align-items: center; justify-content: center;
    font-size: 1.6rem;
    margin: 0 auto;
    opacity: 0.6;
}

/* Pager */
.pager-btn {
    width: 26px; height: 26px; border-radius: 6px;
    border: 1px solid var(--gme-border);
    background: #fff; color: var(--gme-ink);
    font-size: 0.75rem; font-weight: 700; cursor: pointer;
}
.pager-btn.active { background: var(--gme-green-bright); color: #fff; border-color: var(--gme-green-bright); }
.pager-btn:disabled { opacity: 0.4; cursor: default; }

/* Fleet card grid scroll on narrow screens */
.fleet-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
