html, body {
    margin: 0;
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    background: #F4F6F7;
}

#blazor-error-ui .dismiss {
    margin-left: 12px;
}

/* Thin colored status bar on the left edge of table rows (matches the
   executive dashboard accent strip). */
.plm-row-accent {
    border-left: 6px solid transparent;
}

.plm-table th {
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 0.06em;
    /* Headers sit on the dark teal band (#0E4A4A); keep text light for contrast. */
    color: #E6F4F3;
    font-weight: 700;
}

/* Main content padding — tighter on small screens (Epic 10.1). */
.plm-main { padding: 24px; }

@media (max-width: 768px) {
    .plm-main { padding: 12px; }
}

/* Rendered markdown spacing for admin-managed guide content. */
.plm-markdown h1, .plm-markdown h2, .plm-markdown h3 { margin: 0.6em 0 0.3em; }
.plm-markdown ul, .plm-markdown ol { margin: 0.4em 0; padding-left: 1.4em; }
.plm-markdown p { margin: 0.4em 0; }
.plm-markdown a { color: #0F6E78; }
/* AI Insights summary (#131): roomier bullets so each point reads on its own. */
.plm-insight ul, .plm-insight ol { padding-left: 1.2em; }
.plm-insight li { margin: 0 0 0.55em; }
.plm-insight li:last-child { margin-bottom: 0; }
.plm-insight strong { color: #111827; }

/* ─── Presentation mode (#137) ─────────────────────────────────────────────
   Slides are laid out on a fixed 1920×1080 canvas and scaled to the viewport (plmPresent.refit sets
   --plm-slide-scale), so every screen — laptop, projector, Teams share — shows the same slide. */
.plm-present-stage {
    position: fixed;
    inset: 0;
    background: #061A1A;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.plm-present-canvas {
    flex: none;
    width: 1920px;
    height: 1080px;
    transform: scale(var(--plm-slide-scale, 0.5));
    transform-origin: center center;
    background: #F4F6F7;
    position: relative;
    overflow: hidden;
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}
html.plm-presenting, html.plm-presenting body { overflow: hidden; }
/* Bottom-right of the CANVAS (not the viewport), just above the slide footer, so it never covers the
   footer's page number. Hidden until the mouse moves (html.plm-present-active, set by plmPresent). */
.plm-present-controls {
    position: fixed;
    right: calc((100vw - 1920px * var(--plm-slide-scale, 0.5)) / 2 + 16px);
    bottom: calc((100vh - 1080px * var(--plm-slide-scale, 0.5)) / 2 + 48px * var(--plm-slide-scale, 0.5) + 12px);
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 2px 6px;
    border-radius: 22px;
    background: rgba(12, 59, 59, 0.9);
    color: #E6F4F3;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s;
    z-index: 20;
}
html.plm-present-active .plm-present-controls, .plm-present-controls:hover, .plm-present-controls:focus-within {
    opacity: 1;
    pointer-events: auto;
}
.plm-present-progress {
    position: fixed;
    left: 0;
    bottom: 0;
    height: 4px;
    background: #2DD4BF;
    transition: width .25s;
    z-index: 19;
}
.plm-present-blank {
    position: fixed;
    inset: 0;
    background: #000;
    z-index: 30;
    cursor: none;
}
