/* -------------------------------------------------------
   APEX SUITE 2.0 — MURUJIN LIGHT OPERATING THEME
------------------------------------------------------- */

:root {
    color-scheme: dark;
    --apx-bg: #020617;
    --apx-panel: rgba(15, 23, 42, 0.92);
    --apx-panel-solid: #0f172a;
    --apx-dropdown: rgba(15, 23, 42, 0.98);
    --apx-field: #020617;
    --apx-border: rgba(51, 65, 85, 0.92);
    --apx-text: #f8fafc;
    --apx-text-soft: #cbd5e1;
    --apx-text-muted: #94a3b8;
    --apx-accent: #D4A857;
    --apx-accent-2: #CFA349;
    --apx-accent-3: #FF4F1F;
    --apx-accent-soft: rgba(212, 168, 87, 0.18);
    --apx-radius-sm: 6px;
    --apx-radius-md: 12px;
    --apx-radius-lg: 24px;
    --apx-shadow: 0 26px 70px rgba(0, 0, 0, 0.52);
    --apx-nav-height: 64px;
    --apx-sidebar-width: 252px;
    --apx-font-sans: "Plus Jakarta Sans", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --apx-body-bg: #05060b;
    --apx-primary-button: #B32026;
    --apx-primary-button-hover: #FF3B1F;
    --apx-primary-button-border: rgba(179, 32, 38, 0.42);
    --apx-primary-button-shadow: 0 16px 32px rgba(179, 32, 38, 0.24);
    --apx-fac-action-bg: rgba(179, 32, 38, 0.45);
    --apx-fac-action-hover-bg: rgba(255, 59, 31, 0.45);
    --apx-fac-action-border: rgba(179, 32, 38, 0.42);
    --apx-fac-action-text: var(--apx-text);
    --apx-fac-action-shadow: 0 8px 18px rgba(179, 32, 38, 0.08);
    --apx-shell-bg: rgba(15, 23, 42, 0.92);
    --apx-shell-shadow: 14px 0 32px rgba(0, 0, 0, 0.28);
    --apx-card-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
    --apx-brief-label: #fecdd3;
    --apx-inline-accent: #D4A857;
    --apx-theme-track: rgba(212, 168, 87, 0.2);
    --apx-theme-track-border: rgba(212, 168, 87, 0.34);
    --apx-theme-thumb: #ffffff;
}

[data-theme="light"] {
    color-scheme: light;
    --apx-bg: #f7f3eb;
    --apx-panel: rgba(255, 250, 242, 0.9);
    --apx-panel-solid: #fffaf2;
    --apx-dropdown: rgba(255, 250, 242, 0.98);
    --apx-field: #fffdf8;
    --apx-border: rgba(33, 29, 24, 0.1);
    --apx-text: #0D0D0D;
    --apx-text-soft: #211d18;
    --apx-text-muted: #544c41;
    --apx-accent: #9c7b3f;
    --apx-accent-2: #7e642f;
    --apx-accent-3: #2f605a;
    --apx-accent-soft: rgba(156, 123, 63, 0.14);
    --apx-shadow: 0 24px 60px rgba(58, 42, 30, 0.12);
    --apx-body-bg: #f7f3eb;
    --apx-primary-button: #B32026;
    --apx-primary-button-hover: #FF3B1F;
    --apx-primary-button-border: rgba(179, 32, 38, 0.34);
    --apx-primary-button-shadow: 0 18px 36px rgba(179, 32, 38, 0.2);
    --apx-fac-action-bg: rgba(179, 32, 38, 0.45);
    --apx-fac-action-hover-bg: rgba(255, 59, 31, 0.45);
    --apx-fac-action-border: rgba(179, 32, 38, 0.34);
    --apx-fac-action-text: var(--apx-text);
    --apx-fac-action-shadow: 0 8px 18px rgba(179, 32, 38, 0.08);
    --apx-shell-bg: rgba(247, 243, 235, 0.88);
    --apx-shell-shadow: 12px 0 28px rgba(50, 39, 26, 0.08);
    --apx-card-shadow: 0 18px 48px rgba(50, 39, 26, 0.11);
    --apx-brief-label: #8a2d2d;
    --apx-inline-accent: #9c7b3f;
    --apx-theme-track: rgba(156, 123, 63, 0.18);
    --apx-theme-track-border: rgba(156, 123, 63, 0.28);
    --apx-theme-thumb: #7e642f;
}

* {
    box-sizing: border-box;
}

body {
    background: var(--apx-body-bg);
    color: var(--apx-text);
    font-family: var(--apx-font-sans);
    font-size: 14px;
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

input[type="number"] {
    appearance: textfield;
    -moz-appearance: textfield;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.apx-bg-grid,
.apx-login-body::before {
    background-color: var(--apx-body-bg);
    background-image:
        linear-gradient(30deg, rgba(255, 59, 31, 0.14) 12%, transparent 12.5%, transparent 87%, rgba(255, 59, 31, 0.14) 87.5%, rgba(255, 59, 31, 0.14)),
        linear-gradient(150deg, rgba(207, 163, 73, 0.12) 12%, transparent 12.5%, transparent 87%, rgba(207, 163, 73, 0.12) 87.5%, rgba(207, 163, 73, 0.12)),
        linear-gradient(30deg, rgba(179, 32, 38, 0.07) 12%, transparent 12.5%, transparent 87%, rgba(179, 32, 38, 0.07) 87.5%, rgba(179, 32, 38, 0.07)),
        linear-gradient(150deg, rgba(148, 163, 184, 0.08) 12%, transparent 12.5%, transparent 87%, rgba(148, 163, 184, 0.08) 87.5%, rgba(148, 163, 184, 0.08)),
        linear-gradient(60deg, rgba(51, 65, 85, 0.24) 25%, transparent 25.5%, transparent 75%, rgba(51, 65, 85, 0.24) 75%, rgba(51, 65, 85, 0.24));
    background-repeat: repeat;
    background-position: 0 0, 0 0, 38px 54px, 38px 54px, 0 0;
    background-size: 76px 108px;
    inset: 0;
    opacity: 0.34;
    pointer-events: none;
    position: fixed;
    z-index: 0;
}

[data-theme="light"] .apx-bg-grid {
    background: linear-gradient(180deg, #fbf8f1 0%, var(--apx-body-bg) 100%);
    opacity: 1;
}

.apx-bg-grid::after,
.apx-login-body::after {
    background:
        radial-gradient(circle at top, rgba(207, 163, 73, 0.18), transparent 34%),
        linear-gradient(180deg, rgba(5, 6, 11, 0.08), rgba(5, 6, 11, 0.54));
    content: "";
    inset: 0;
    pointer-events: none;
    position: fixed;
}

[data-theme="light"] .apx-bg-grid::after {
    background: none;
    display: none;
}

.apx-main {
    flex: 1 1 auto;
    min-width: 0;
    padding: 22px 24px 52px;
    position: relative;
    z-index: 1;
}

/* Login */

.apx-login-body {
    background: #020617;
    color: var(--apx-text);
    min-height: 100vh;
    overflow: hidden;
    position: relative;
}

.apx-login-body-branded {
    background:
        linear-gradient(180deg, rgba(251, 248, 241, 0.8), rgba(247, 243, 235, 0.88)),
        var(--apx-login-hero);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.apx-login-body::before {
    content: "";
}

.apx-login-shell {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 100vh;
    padding: 32px 32px 54px;
    position: relative;
    z-index: 1;
}

.apx-login-card {
    background: rgba(15, 23, 42, 0.97);
    border: 1px solid var(--apx-border);
    border-radius: var(--apx-radius-lg);
    box-shadow: var(--apx-shadow);
    max-width: 452px;
    overflow: hidden;
    padding: 84px 56px 52px;
    position: relative;
    width: min(100%, 452px);
}

.apx-login-gradient {
    background: linear-gradient(90deg, var(--apx-accent), var(--apx-accent-2), var(--apx-accent-3));
    height: 8px;
    inset: 0 0 auto;
    position: absolute;
}

.apx-login-heading {
    margin-bottom: 38px;
    text-align: center;
}

.apx-login-icon {
    align-items: center;
    background: rgba(255, 250, 242, 0.92);
    border-radius: 22px;
    box-shadow: 0 18px 34px rgba(50, 39, 26, 0.14);
    display: inline-flex;
    height: 82px;
    justify-content: center;
    margin-bottom: 26px;
    width: 82px;
}

.apx-login-icon img {
    display: block;
    height: 68px;
    width: 68px;
}

.apx-login-heading h1 {
    font-size: 30px;
    font-weight: 850;
    line-height: 1;
    margin: 0 0 14px;
}

.apx-login-heading p,
.apx-login-form span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-login-form {
    display: grid;
    gap: 20px;
}

.apx-login-form label {
    display: grid;
    gap: 8px;
}

.apx-login-form input,
.apx-login-form select {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 12px;
    color: var(--apx-text-soft);
    font-size: 0.94rem;
    font-weight: 750;
    min-height: 54px;
    outline: none;
    padding: 0 14px;
    width: 100%;
}

.apx-login-form input::placeholder {
    color: rgba(203, 213, 225, 0.72);
}

.apx-login-form input:focus,
.apx-login-form select:focus {
    border-color: var(--apx-accent);
    box-shadow: 0 0 0 3px rgba(207, 163, 73, 0.2);
}

.apx-login-form button {
    background: var(--apx-primary-button);
    border: 0;
    border-radius: 12px;
    box-shadow: var(--apx-primary-button-shadow);
    color: #fff;
    cursor: pointer;
    font-size: 1.03rem;
    font-weight: 850;
    margin-top: 4px;
    min-height: 58px;
}

.apx-login-form button:hover {
    background: var(--apx-primary-button-hover);
}

.apx-login-secondary-link {
    color: var(--apx-text-muted);
    font-size: 0.9rem;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}

.apx-login-secondary-link:hover {
    color: var(--apx-login-primary, var(--apx-primary-button));
}

.apx-login-demo {
    border-top: 1px solid rgba(51, 65, 85, 0.68);
    color: #64748b;
    font-size: 0.72rem;
    margin-top: 30px;
    padding-top: 22px;
    text-align: center;
}

.apx-login-alert {
    background: rgba(244, 63, 94, 0.1);
    border: 1px solid rgba(244, 63, 94, 0.35);
    border-radius: 10px;
    color: #fda4af;
    font-size: 0.82rem;
    font-weight: 700;
    margin-bottom: 18px;
    padding: 10px 12px;
    text-align: center;
}

[data-theme="light"] .apx-login-body {
    background:
        radial-gradient(circle at 16% 18%, rgba(156, 123, 63, 0.13), transparent 28%),
        radial-gradient(circle at 86% 8%, rgba(47, 96, 90, 0.12), transparent 26%),
        linear-gradient(180deg, #fbf8f1 0%, #f7f3eb 100%);
}

[data-theme="light"] .apx-login-body-branded {
    background:
        linear-gradient(180deg, rgba(251, 248, 241, 0.76), rgba(247, 243, 235, 0.9)),
        var(--apx-login-hero);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

[data-theme="light"] .apx-login-body::before {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.4), rgba(240, 231, 215, 0.34));
    opacity: 1;
}

[data-theme="light"] .apx-login-body::after {
    display: none;
}

[data-theme="light"] .apx-login-card,
[data-theme="light"] .apx-login-highlights article {
    background: rgba(255, 250, 242, 0.92);
    border-color: rgba(33, 29, 24, 0.08);
    box-shadow: 0 22px 58px rgba(50, 39, 26, 0.12);
}

[data-theme="light"] .apx-login-icon {
    background: linear-gradient(135deg, var(--apx-login-accent, #9c7b3f), var(--apx-login-accent, #7e642f) 58%, var(--apx-login-primary, #2f605a));
    box-shadow: 0 18px 34px rgba(126, 100, 47, 0.2);
}

[data-theme="light"] .apx-login-form input,
[data-theme="light"] .apx-login-form select {
    background: rgba(255, 253, 248, 0.96);
    border-color: rgba(33, 29, 24, 0.1);
}

[data-theme="light"] .apx-login-form input::placeholder {
    color: rgba(84, 76, 65, 0.58);
}

[data-theme="light"] .apx-login-form input:focus,
[data-theme="light"] .apx-login-form select:focus {
    border-color: color-mix(in srgb, var(--apx-login-accent, #9c7b3f) 42%, transparent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--apx-login-accent, #9c7b3f) 14%, transparent);
}

[data-theme="light"] .apx-login-alert {
    background: rgba(255, 59, 31, 0.08);
    border-color: rgba(255, 59, 31, 0.32);
    color: #8a2d2d;
}

/* App Shell */

.apx-app-shell {
    display: flex;
    min-height: 100vh;
    position: relative;
    z-index: 1;
}

.apx-environment-watermark {
    align-items: center;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    display: flex;
    justify-content: center;
    min-height: 34px;
    padding: 8px 16px;
    position: sticky;
    top: 0;
    z-index: 80;
}

.apx-environment-watermark strong {
    font-size: 0.72rem;
    font-weight: 950;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.apx-environment-watermark-staging {
    background: #b91c1c;
    color: #fff7f7;
}

.apx-environment-watermark-production {
    background: #334155;
    color: #f8fafc;
}

.apx-environment-watermark-local {
    background: #92400e;
    color: #fff7ed;
}

.apx-sidebar {
    backdrop-filter: blur(18px);
    background: var(--apx-shell-bg);
    border-right: 1px solid var(--apx-border);
    box-shadow: var(--apx-shell-shadow);
    display: flex;
    flex: 0 0 var(--apx-sidebar-width);
    flex-direction: column;
    gap: 16px;
    min-height: 100vh;
    padding: 20px 14px 16px;
    position: sticky;
    top: 0;
    z-index: 40;
}

.apx-role-participant .apx-sidebar {
    --apx-sidebar-width: 230px;
    gap: 10px;
    padding: 16px 10px 12px;
}

.apx-brand {
    align-items: center;
    display: flex;
    gap: 9px;
    min-width: 0;
}

.apx-brand-mark {
    align-items: center;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    display: inline-flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.apx-brand-mark img {
    display: block;
    height: 40px;
    width: 40px;
}

.apx-brand-text {
    display: grid;
    gap: 3px;
}

.apx-role-participant .apx-brand-text {
    gap: 0;
}

.apx-brand-title {
    background: linear-gradient(90deg, #0d0d0d, #cfa349, #ff4f1f);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: 0.9rem;
    font-weight: 850;
    line-height: 1;
}

[data-theme="light"] .apx-brand-title {
    background: none;
    color: var(--apx-text);
    font-family: "Iowan Old Style", "Palatino Linotype", serif;
    font-weight: 700;
}

.apx-role-participant .apx-brand-title {
    font-size: 1.4rem;
    line-height: 1;
}

[data-theme="light"] .apx-brand-mark {
    background: transparent;
    box-shadow: none;
}

.apx-brand-subtitle {
    color: var(--apx-text-muted);
    font-size: 0.55rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1;
    text-transform: uppercase;
}

.apx-role-participant .apx-brand-subtitle {
    display: none;
}

.apx-sidebar-top {
    padding: 4px 4px 2px;
}

.apx-role-participant .apx-sidebar-top {
    padding: 2px 2px 0;
}

.apx-sidebar-nav {
    display: grid;
    gap: 10px;
}

.apx-role-participant .apx-sidebar-nav {
    gap: 6px;
    margin-top: 28px;
}

.apx-nav-group {
    display: grid;
    gap: 5px;
}

.apx-role-participant .apx-nav-group {
    gap: 2px;
}

.apx-nav-group-title {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.14em;
    margin: 0;
    padding: 0 9px;
    text-transform: uppercase;
}

.apx-role-participant .apx-nav-group-title {
    display: none;
}

.apx-nav-list {
    display: grid;
    gap: 3px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.apx-nav-link,
.apx-nav-button {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 10px;
    color: var(--apx-text-soft);
    cursor: pointer;
    display: flex;
    font-size: 0.78rem;
    font-weight: 750;
    gap: 7px;
    justify-content: flex-start;
    min-height: 38px;
    padding: 8px 10px;
    white-space: normal;
    width: 100%;
}

.apx-role-participant .apx-nav-link {
    min-height: 32px;
    padding: 6px 8px;
}

.apx-nav-link:hover,
.apx-nav-button:hover,
.apx-nav-item.active > .apx-nav-link,
.apx-nav-item.active > .apx-nav-button {
    background: rgba(207, 163, 73, 0.16);
    border-color: rgba(207, 163, 73, 0.34);
    color: var(--apx-text);
}

[data-theme="light"] .apx-nav-link:hover,
[data-theme="light"] .apx-nav-button:hover,
[data-theme="light"] .apx-nav-item.active > .apx-nav-link,
[data-theme="light"] .apx-nav-item.active > .apx-nav-button {
    background: rgba(212, 168, 87, 0.16);
    border-color: rgba(207, 163, 73, 0.34);
}

.apx-sidebar-footer {
    display: grid;
    gap: 8px;
    margin-top: 2px;
    padding-top: 0;
}

.apx-role-participant .apx-sidebar-footer {
    gap: 6px;
}

.apx-account-card {
    background: rgba(2, 6, 23, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.86);
    border-radius: 12px;
    display: grid;
    gap: 3px;
    padding: 10px 11px;
}

.apx-role-participant .apx-account-card {
    padding: 8px 9px;
}

[data-theme="light"] .apx-account-card {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.78) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-account-card strong {
    font-size: 0.82rem;
    font-weight: 850;
}

.apx-account-card span {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-account-link {
    justify-content: center;
}

.apx-role-participant .apx-account-link {
    min-height: 32px;
}

.apx-cycle-timer {
    align-items: center;
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(255, 59, 31, 0.68);
    border-radius: 12px;
    box-shadow: 0 0 0 1px rgba(255, 59, 31, 0.1), 0 10px 24px rgba(76, 29, 149, 0.18);
    color: var(--apx-text);
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    min-height: 40px;
    padding: 8px;
}

[data-theme="light"] .apx-cycle-timer {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.82) 100%);
    border-color: rgba(156, 123, 63, 0.26);
    box-shadow: 0 0 0 1px rgba(207, 163, 73, 0.08), 0 10px 24px rgba(58, 42, 30, 0.08);
}

.apx-cycle-timer strong {
    font-size: 0.74rem;
    font-weight: 900;
    min-width: 38px;
}

.apx-timer-face {
    color: var(--apx-inline-accent);
    font-size: 0.9rem;
}

.apx-cycle-timer small {
    color: #fbbf24;
    font-size: 0.56rem;
    font-weight: 850;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.apx-cycle-timer.is-warning {
    border-color: rgba(251, 191, 36, 0.86);
}

.apx-cycle-timer.is-critical {
    animation: apx-cycle-timer-critical-pulse 0.75s steps(2, end) infinite;
    border-color: rgba(220, 38, 38, 0.92);
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.16);
}

.apx-cycle-timer.is-critical [data-timer-display],
.apx-cycle-timer.is-critical small,
.apx-cycle-timer.is-expired [data-timer-display],
.apx-cycle-timer.is-expired small {
    color: #b91c1c;
}

.apx-cycle-timer.is-expired {
    border-color: rgba(244, 63, 94, 0.86);
}

@keyframes apx-cycle-timer-critical-pulse {
    0%,
    100% {
        background: rgba(255, 255, 255, 0.94);
        transform: scale(1);
    }
    50% {
        background: rgba(254, 226, 226, 0.98);
        transform: scale(1.01);
    }
}

.apx-shell-topbar {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 10px;
}

.apx-facilitator-cycle-bar {
    align-items: center;
    background: rgba(247, 243, 235, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.1);
    border-radius: 18px;
    box-shadow: 0 14px 30px rgba(50, 39, 26, 0.08);
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 18px;
    padding: 8px 10px;
    position: sticky;
    top: 0;
    z-index: 35;
}

.apx-facilitator-cycle-metrics {
    align-items: stretch;
    display: flex;
    gap: 8px;
    min-width: 0;
    overflow: hidden;
    padding-bottom: 2px;
}

.apx-facilitator-cycle-metrics div {
    border-left: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    flex: 1 1 92px;
    gap: 1px;
    min-height: 44px;
    min-width: 86px;
    padding: 6px 8px;
}

.apx-facilitator-cycle-metrics div:first-child {
    border-left: 0;
}

.apx-facilitator-cycle-metrics .apx-facilitator-cycle-metric-latest {
    flex: 1 1 112px;
    min-width: 108px;
}

.apx-facilitator-cycle-signal {
    border: 1px solid rgba(34, 197, 94, 0.32);
    border-radius: 12px;
}

.apx-facilitator-cycle-signal.is-watch {
    border-color: rgba(245, 158, 11, 0.38);
}

.apx-facilitator-cycle-signal.is-risk {
    border-color: rgba(244, 63, 94, 0.38);
}

.apx-facilitator-cycle-metrics span {
    color: var(--apx-text-muted);
    font-size: 0.55rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: normal;
}

.apx-facilitator-cycle-metrics strong {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 900;
    line-height: 1.12;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-facilitator-cycle-bar .apx-cycle-timer {
    justify-self: end;
}

.apx-session-action-group {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.apx-session-action-form {
    margin: 0;
}

.apx-session-action-form.is-start-timer {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.apx-session-action-form.is-start-timer input[type="number"] {
    background: #fffdf8;
    border: 1px solid rgba(31, 41, 55, 0.14);
    border-radius: 6px;
    color: #1f2937;
    font-size: 0.86rem;
    font-weight: 700;
    min-height: 32px;
    padding: 0 7px;
    width: 54px;
}

.apx-auto-cycle-toggle {
    align-items: center;
    color: var(--apx-text-soft);
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 800;
    gap: 4px;
    white-space: nowrap;
}

.apx-auto-cycle-toggle input {
    height: 14px;
    margin: 0;
    width: 14px;
}

.apx-session-action-form button {
    border: 1px solid rgba(31, 41, 55, 0.16);
    border-radius: 6px;
    background: #ffffff;
    color: #1f2937;
    font-weight: 700;
    min-height: 32px;
    padding: 0 12px;
}

.apx-session-action-form button.is-start {
    background: rgba(34, 197, 94, 0.4);
    border-color: rgba(21, 128, 61, 0.45);
    color: #14532d;
}

.apx-session-action-form button.is-pause,
.apx-session-action-form button.is-resume {
    background: rgba(245, 158, 11, 0.4);
    border-color: rgba(217, 119, 6, 0.45);
    color: #78350f;
}

.apx-session-action-form button.is-stop {
    background: var(--apx-primary-button);
    border-color: var(--apx-primary-button-border);
    color: #fff7f7;
}

.apx-session-action-form button:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.apx-facilitator-cycle-stack {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 0;
}

.apx-simulation-context-bar {
    align-items: center;
    backdrop-filter: blur(18px);
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(207, 163, 73, 0.24);
    border-radius: 18px;
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.22);
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto auto auto auto;
    margin: 0 0 14px;
    padding: 14px;
    position: sticky;
    top: 46px;
    z-index: 30;
}

[data-theme="light"] .apx-simulation-context-bar {
    background: rgba(247, 243, 235, 0.94);
    border-color: rgba(33, 29, 24, 0.1);
    box-shadow: 0 12px 28px rgba(50, 39, 26, 0.1);
}

.apx-simulation-save-strip {
    align-items: center;
    background: rgba(255, 250, 242, 0.88);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    min-height: 52px;
    overflow-x: auto;
    padding: 8px 14px;
    white-space: nowrap;
}

[data-theme="light"] .apx-simulation-save-strip {
    background: rgba(255, 250, 242, 0.92);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-simulation-save-strip > strong {
    color: rgb(32, 27, 22);
    font-size: 0.833rem;
    font-weight: 900;
    margin-right: 2px;
}

.apx-simulation-status-item {
    align-items: center;
    color: #241f1a;
    display: inline-flex;
    font-size: 0.667rem;
    font-weight: 900;
    gap: 8px;
    min-height: 24px;
    text-decoration: none;
}

.apx-simulation-status-item + .apx-simulation-status-item::before {
    color: var(--apx-border);
    content: "|";
    margin-right: 2px;
}

.apx-simulation-status-item i {
    background: #94a3b8;
    border-radius: 999px;
    display: block;
    height: 10px;
    width: 10px;
}

.apx-simulation-status-item.is-saved i {
    background: #22c55e;
}

.apx-simulation-status-item.is-inherited i {
    background: #f43f5e;
}

.apx-simulation-status-item.is-unsaved i {
    background: #dc2626;
}

.apx-simulation-status-item.is-dirty i {
    background: #dc2626;
}

.apx-simulation-status-item.is-dirty {
    border-radius: 999px;
    outline: 2px solid rgba(220, 38, 38, 0.7);
    outline-offset: 3px;
}

.apx-simulation-status-item.is-dirty i {
    animation: apx-unsaved-pulse 1.2s ease-in-out infinite;
}

.apx-simulation-status-item.is-processing i {
    background: #2563eb;
}

.apx-simulation-status-item.is-saving i {
    background: #f59e0b;
}

@keyframes apx-unsaved-pulse {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.45);
    }
    50% {
        box-shadow: 0 0 0 6px rgba(220, 38, 38, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .apx-simulation-status-item.is-dirty i {
        animation: none;
    }
}

.apx-cycle-processing-status {
    background: #dbeafe;
    border: 1px solid #60a5fa;
    border-radius: 12px;
    color: #1e3a8a;
    font-size: 0.875rem;
    font-weight: 850;
    margin-bottom: 12px;
    padding: 10px 14px;
}

.is-cycle-processing .apx-simulation-context-bar {
    border-color: #60a5fa;
}

form[aria-busy="true"] {
    cursor: progress;
    opacity: 0.72;
}

.apx-simulation-timer-slot {
    display: flex;
    justify-content: center;
    min-width: 0;
}

.apx-simulation-timer-slot .apx-cycle-timer-compact {
    min-width: 0;
    padding-inline: 16px;
}

.apx-simulation-context-meta {
    align-items: stretch;
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(126px, auto));
    white-space: nowrap;
}

.apx-simulation-context-meta div {
    border-left: 1px solid rgba(148, 163, 184, 0.18);
    display: grid;
    gap: 2px;
    justify-content: start;
    min-height: 46px;
    padding-left: 14px;
}

[data-theme="light"] .apx-simulation-context-meta div {
    border-left-color: rgba(33, 29, 24, 0.1);
}

.apx-simulation-context-meta span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-simulation-context-meta strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 900;
    line-height: 1.15;
    white-space: nowrap;
}

.apx-save-finalization-modal {
    background: var(--apx-card);
    border: 1px solid rgba(179, 32, 38, 0.32);
    border-radius: 8px;
    box-shadow: 0 22px 70px rgba(0, 0, 0, 0.28);
    color: var(--apx-text);
    max-width: 520px;
    padding: 22px;
}

.apx-save-finalization-modal::backdrop {
    background: rgba(15, 23, 42, 0.55);
}

.apx-save-finalization-modal h2 {
    font-size: 1.25rem;
    font-weight: 950;
    margin: 6px 0 8px;
}

.apx-save-finalization-modal p {
    color: var(--apx-text-muted);
    font-size: 0.86rem;
    line-height: 1.45;
    margin: 0;
}

.apx-save-finalization-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
    margin-top: 18px;
}

.apx-destructive-verify-field {
    display: grid;
    gap: 8px;
    margin-top: 18px;
}

.apx-destructive-verify-field span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-destructive-verify-field strong {
    font-size: 1rem;
    font-weight: 900;
}

.apx-save-finalization-cancel {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
    min-height: 40px;
    padding: 9px 14px;
}

.apx-report-release-badge {
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.58rem;
    font-style: normal;
    font-weight: 950;
    letter-spacing: 0.08em;
    line-height: 1;
    margin-bottom: 8px;
    padding: 6px 8px;
}

.apx-report-release-badge.is-released {
    background: rgba(34, 197, 94, 0.14);
    color: #166534;
}

.apx-report-release-badge.is-locked {
    background: rgba(127, 29, 29, 0.1);
    color: #7f1d1d;
}

.apx-simulation-save-button {
    align-self: center;
    min-height: 42px;
    white-space: nowrap;
}

.apx-inline-save-status {
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 900;
    min-width: 76px;
    opacity: 0;
    padding: 7px 10px;
    text-align: center;
    transition: opacity 0.25s ease;
}

.apx-inline-save-status:empty {
    visibility: hidden;
}

.apx-inline-save-status.is-visible {
    opacity: 1;
}

.apx-inline-save-status.is-fading {
    opacity: 0;
}

.apx-inline-save-status.is-success {
    background: #dcfce7;
    color: #166534;
}

.apx-inline-save-status.is-error {
    background: #fee2e2;
    color: #991b1b;
    max-width: 280px;
    white-space: normal;
}

.apx-role-participant .apx-fnb-page-tools .apx-cycle-timer-inline {
    display: none;
}

.apx-role-participant .apx-page-actionbar {
    position: static;
}

.apx-role-participant .apx-simulation-context-bar {
    margin-bottom: 24px;
    top: 0;
}

@media (max-width: 1100px) {
    .apx-facilitator-cycle-bar {
        grid-template-columns: 1fr;
        position: static;
    }

    .apx-facilitator-cycle-metrics {
        overflow-x: auto;
    }

    .apx-facilitator-cycle-bar .apx-cycle-timer {
        justify-self: stretch;
    }

    .apx-simulation-context-bar {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .apx-simulation-context-meta {
        grid-column: 1 / -1;
    }

    .apx-facilitator-cycle-stack {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (max-width: 760px) {
    .apx-facilitator-workflow-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-facilitator-cycle-metrics {
        overflow-x: auto;
    }

    .apx-simulation-context-bar {
        align-items: stretch;
        grid-template-columns: 1fr;
        padding: 8px;
    }

    .apx-simulation-save-strip {
        gap: 5px 7px;
    }

    .apx-simulation-save-strip > strong {
        flex-basis: 100%;
    }

    .apx-simulation-context-meta {
        grid-template-columns: 1fr 1fr;
    }

    .apx-simulation-context-meta strong {
        white-space: normal;
    }

    .apx-simulation-timer-slot,
    .apx-simulation-save-button {
        justify-self: stretch;
    }
}

.apx-cycle-timer-compact {
    background: rgba(15, 23, 42, 0.78);
    border-color: rgba(207, 163, 73, 0.3);
    border-radius: 12px;
    box-shadow: none;
    flex-wrap: nowrap;
    min-height: 32px;
    padding: 4px 10px;
}

[data-theme="light"] .apx-cycle-timer-compact {
    background: rgba(255, 250, 242, 0.94);
    border-color: rgba(156, 123, 63, 0.18);
    box-shadow: none;
}

.apx-cycle-timer-compact strong {
    font-size: 0.72rem;
}

.apx-cycle-timer-compact small {
    font-size: 0.5rem;
}

.apx-cycle-timer-inline {
    flex: 0 0 auto;
    margin-left: 0;
    min-width: 0;
}

.apx-timer-form,
.apx-timer-process-form {
    display: inline-flex;
    gap: 6px;
}

.apx-timer-form input {
    background: rgba(2, 6, 23, 0.9);
    border: 1px solid rgba(207, 163, 73, 0.3);
    border-radius: 8px;
    color: var(--apx-text);
    min-height: 28px;
    padding: 0 8px;
    width: 56px;
}

[data-theme="light"] .apx-timer-form input {
    background: rgba(255, 250, 242, 0.96);
    border-color: rgba(33, 29, 24, 0.12);
}

.apx-timer-form button,
.apx-timer-process-form button {
    background: rgba(207, 163, 73, 0.18);
    border: 1px solid rgba(207, 163, 73, 0.34);
    border-radius: 8px;
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.7rem;
    font-weight: 800;
    min-height: 28px;
    padding: 0 9px;
}

[data-theme="light"] .apx-timer-form button,
[data-theme="light"] .apx-timer-process-form button {
    background: rgba(156, 123, 63, 0.12);
    border-color: rgba(156, 123, 63, 0.24);
    color: var(--apx-text-soft);
}

.apx-timer-form button:hover,
.apx-timer-process-form button:hover {
    background: rgba(207, 163, 73, 0.28);
}

[data-theme="light"] .apx-timer-form button:hover,
[data-theme="light"] .apx-timer-process-form button:hover {
    background: rgba(156, 123, 63, 0.18);
}

.apx-timer-form,
.apx-timer-process-form,
.apx-toolbar-form {
    align-items: center;
    display: inline-flex;
    gap: 4px;
    margin: 0;
}

.apx-timer-form input {
    background: rgba(2, 6, 23, 0.84);
    border: 1px solid rgba(207, 163, 73, 0.34);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.68rem;
    height: 24px;
    padding: 2px 4px;
    width: 42px;
}

[data-theme="light"] .apx-timer-form input {
    background: rgba(255, 250, 242, 0.96);
    border-color: rgba(33, 29, 24, 0.12);
}

.apx-timer-form button,
.apx-timer-process-form button {
    background: rgba(207, 163, 73, 0.18);
    border: 1px solid rgba(207, 163, 73, 0.38);
    border-radius: 8px;
    color: var(--apx-text-soft);
    cursor: pointer;
    font-size: 0.62rem;
    font-weight: 850;
    min-height: 24px;
    padding: 3px 6px;
}

.apx-timer-process-form button {
    background: var(--apx-primary-button);
    color: #fff;
}

.apx-timer-process-form button.apx-session-action-button.is-cycle {
    background: rgba(207, 163, 73, 0.4);
    border-color: rgba(164, 124, 47, 0.45);
    border-radius: 6px;
    color: #5f4520;
    font-size: 0.7rem;
    font-weight: 800;
    min-height: 32px;
    padding: 0 12px;
}

.apx-timer-process-form button.apx-session-action-button.is-cycle:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.apx-nav-quick-actions {
    display: grid;
    gap: 6px;
    margin-top: 8px;
}

.apx-nav-action {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(164, 124, 47, 0.18);
    border-radius: 10px;
    color: var(--apx-text-soft);
    display: flex;
    justify-content: center;
    width: 100%;
    font-size: 0.74rem;
    font-weight: 900;
    padding: 7px 10px;
    text-decoration: none;
}

.apx-nav-action:hover {
    background: rgba(164, 124, 47, 0.12);
    color: var(--apx-text);
}

.apx-nav-action-primary {
    background: rgba(179, 32, 38, 0.86);
    border-color: rgba(179, 32, 38, 0.42);
    color: #fff;
}

.apx-nav-action-primary:hover {
    background: rgba(255, 59, 31, 0.88);
    color: #fff;
}

.apx-nav-group-simulations {
    gap: 8px;
}

.apx-nav-simulation-panel {
    background: rgba(255, 250, 242, 0.8);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    padding: 10px;
}

.apx-nav-simulation-field {
    display: grid;
    gap: 4px;
}

.apx-nav-simulation-field span,
.apx-nav-simulation-status span {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-nav-simulation-select {
    min-height: 32px;
    padding: 5px 8px;
}

.apx-nav-simulation-status {
    display: grid;
    gap: 1px;
    padding: 0 2px;
}

.apx-nav-simulation-status strong {
    color: var(--apx-text);
    font-size: 0.8rem;
    font-weight: 900;
    line-height: 1.15;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-nav-simulation-status small {
    color: var(--apx-text-muted);
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1.25;
}

.apx-nav-simulation-actions {
    display: grid;
    gap: 6px;
}

.apx-nav-simulation-action {
    display: block;
}

.apx-nav-button.is-primary {
    background: var(--apx-primary-button);
    border-color: var(--apx-primary-button-border);
    box-shadow: var(--apx-primary-button-shadow);
    color: #fff;
}

.apx-nav-button.is-primary:hover {
    background: var(--apx-primary-button-hover);
}

.apx-nav-caret {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid currentColor;
    height: 0;
    margin-top: 2px;
    opacity: 0.75;
    width: 0;
}

.apx-dropdown {
    background: var(--apx-dropdown);
    border: 1px solid var(--apx-border);
    border-radius: 16px;
    box-shadow: var(--apx-shadow);
    display: grid;
    gap: 4px;
    left: 0;
    min-width: 240px;
    opacity: 0;
    padding: 8px;
    pointer-events: none;
    position: absolute;
    top: calc(100% + 10px);
    transform: translateY(-4px);
    transition: opacity 130ms ease, transform 130ms ease;
}

.apx-nav-actions .apx-dropdown {
    left: auto;
    right: 0;
}

.apx-has-dropdown:hover .apx-dropdown,
.apx-has-dropdown:focus-within .apx-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.apx-dropdown-item {
    border-radius: 10px;
    color: var(--apx-text-soft);
    display: block;
    font-size: 0.9rem;
    font-weight: 650;
    padding: 10px 11px;
}

.apx-dropdown-item:hover {
    background: rgba(51, 65, 85, 0.72);
    color: var(--apx-text);
}

.apx-nav-form {
    margin: 0;
}

.apx-page-title {
    align-items: flex-start;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apx-page-title > div:first-child {
    max-width: 860px;
}

.apx-page-title h1,
h1 {
    color: var(--apx-text);
    font-size: clamp(1.42rem, 2vw, 1.95rem);
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.08;
    margin: 0;
}

.apx-page-title p {
    color: var(--apx-text-muted);
    font-size: 0.82rem;
    line-height: 1.42;
    margin: 5px 0 0;
    max-width: 840px;
}

.apx-page-tools {
    display: flex;
    flex-wrap: wrap;
    flex: 0 0 auto;
    gap: 8px;
    justify-content: flex-end;
    padding-top: 2px;
}

.apx-page-tool-link {
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(207, 163, 73, 0.4);
    border-radius: 10px;
    color: var(--apx-text-soft);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1;
    min-height: 32px;
    padding: 8px 11px;
    white-space: nowrap;
}

[data-theme="light"] .apx-page-tool-link {
    background: rgba(255, 250, 242, 0.9);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-page-tool-link:hover {
    background: rgba(207, 163, 73, 0.18);
    color: var(--apx-text);
}

[data-theme="light"] .apx-page-tool-link:hover {
    background: rgba(156, 123, 63, 0.1);
}

.apx-decision-submit {
    align-items: center;
    backdrop-filter: blur(14px);
    background: rgba(2, 6, 23, 0.82);
    border: 1px solid rgba(51, 65, 85, 0.86);
    border-radius: 16px;
    bottom: 14px;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
    display: flex;
    gap: 14px;
    justify-content: flex-end;
    padding: 12px;
    position: sticky;
    z-index: 12;
}

.apx-decision-stack {
    display: grid;
    gap: 9px;
}

.apx-workflow-strip {
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    display: grid;
    gap: 5px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    padding: 5px;
}

[data-theme="light"] .apx-workflow-strip {
    background: rgba(255, 250, 242, 0.92);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-flow-step {
    align-items: center;
    appearance: none;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 7px;
    color: var(--apx-text-soft);
    cursor: pointer;
    display: flex;
    font-size: 0.68rem;
    font-weight: 900;
    gap: 6px;
    justify-content: center;
    min-height: 32px;
    padding: 0 6px;
}

.apx-flow-step span {
    align-items: center;
    background: rgba(207, 163, 73, 0.16);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 999px;
    color: #cfa349;
    display: inline-flex;
    font-size: 0.58rem;
    height: 18px;
    justify-content: center;
    width: 18px;
}

[data-theme="light"] .apx-flow-step span {
    background: rgba(156, 123, 63, 0.12);
    border-color: rgba(156, 123, 63, 0.18);
    color: #9c7b3f;
}

.apx-flow-step.is-current {
    background: rgba(164, 124, 47, 0.42);
    border-color: rgba(196, 181, 253, 0.64);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    color: #f8fafc;
}

[data-theme="light"] .apx-flow-step.is-current {
    background: rgba(156, 123, 63, 0.12);
    border-color: rgba(156, 123, 63, 0.26);
}

.apx-decision-brief-panel {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-decision-brief-panel article {
    background: rgba(2, 6, 23, 0.34);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 7px 8px;
}

.apx-decision-brief-panel span {
    color: var(--apx-brief-label);
    font-size: 0.55rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-decision-brief-panel strong {
    color: var(--apx-text-soft);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.2;
}

.apx-fnb-form {
    --apx-fnb-surface: linear-gradient(180deg, rgba(18, 24, 35, 0.95) 0%, rgba(11, 16, 24, 0.97) 100%);
    --apx-fnb-surface-strong: linear-gradient(180deg, rgba(15, 20, 30, 0.98) 0%, rgba(9, 13, 20, 0.99) 100%);
    --apx-fnb-surface-soft: rgba(255, 248, 239, 0.06);
    --apx-fnb-chip: rgba(255, 248, 239, 0.07);
    --apx-fnb-field: rgba(5, 8, 15, 0.94);
    --apx-fnb-line: rgba(156, 123, 63, 0.18);
    --apx-fnb-line-strong: rgba(212, 168, 87, 0.28);
    --apx-fnb-line-soft: rgba(255, 248, 239, 0.08);
    --apx-fnb-gold: #d4a857;
    --apx-fnb-gold-deep: #a88443;
    --apx-fnb-shadow: 0 18px 36px rgba(2, 6, 23, 0.24);
}

[data-theme="light"] .apx-fnb-form {
    --apx-fnb-surface: linear-gradient(180deg, rgba(255, 251, 245, 0.98) 0%, rgba(244, 236, 224, 0.96) 100%);
    --apx-fnb-surface-strong: linear-gradient(180deg, rgba(255, 249, 240, 0.99) 0%, rgba(240, 232, 218, 0.98) 100%);
    --apx-fnb-surface-soft: rgba(255, 251, 245, 0.88);
    --apx-fnb-chip: rgba(255, 252, 247, 0.92);
    --apx-fnb-field: #fffdf8;
    --apx-fnb-line: rgba(156, 123, 63, 0.18);
    --apx-fnb-line-strong: rgba(156, 123, 63, 0.32);
    --apx-fnb-line-soft: rgba(156, 123, 63, 0.1);
    --apx-fnb-shadow: 0 14px 30px rgba(86, 67, 36, 0.08);
}

.apx-fnb-header {
    align-items: start;
    gap: 10px 18px;
    margin-bottom: 0;
}

.apx-fnb-header-copy {
    display: grid;
    gap: 4px;
    flex: 1 1 auto;
    max-width: 860px;
    min-width: 0;
}

.apx-fnb-header-copy h1 {
    margin: 0;
}

.apx-fnb-header-copy p {
    color: var(--apx-text-muted);
    font-size: 0.79rem;
    line-height: 1.42;
    margin: 0;
    max-width: 42ch;
}

.apx-cockpit-prompt {
    max-width: none;
    white-space: nowrap;
}

.apx-fnb-page-tools {
    align-items: center;
    gap: 10px;
    justify-content: flex-end;
}

.apx-fnb-utility-group {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-fnb-utility-link {
    background: var(--apx-fnb-surface-soft);
    border-color: var(--apx-fnb-line);
    color: var(--apx-text);
    white-space: nowrap;
}

.apx-fnb-utility-link:hover {
    background: rgba(212, 168, 87, 0.14);
    border-color: var(--apx-fnb-line-strong);
    color: var(--apx-text);
}

.apx-fnb-form .apx-sim-save {
    background: linear-gradient(135deg, #d7b46c 0%, #a88443 100%);
    border: 1px solid rgba(255, 238, 205, 0.36);
    box-shadow: 0 16px 30px rgba(116, 87, 33, 0.24);
    color: #20180f;
    transition: transform 140ms ease, box-shadow 140ms ease, filter 140ms ease;
}

.apx-fnb-form .apx-sim-save:hover {
    box-shadow: 0 18px 34px rgba(116, 87, 33, 0.3);
    filter: brightness(1.02);
    transform: translateY(-1px);
}

.apx-fnb-save {
    min-height: 42px;
    padding: 0 18px;
}

.apx-fnb-mode-row,
.apx-fnb-form .apx-setting-toggle,
.apx-fnb-sheet {
    background: var(--apx-fnb-surface);
    border-color: var(--apx-fnb-line);
    box-shadow: var(--apx-fnb-shadow);
}

.apx-fnb-mode-row {
    align-items: center;
    align-self: start;
    border: 1px solid var(--apx-fnb-line);
    border-radius: 16px;
    display: inline-flex;
    gap: 8px;
    justify-content: flex-start;
    max-width: 100%;
    padding: 9px 12px;
    width: fit-content;
}

.apx-fnb-mode-row[hidden] {
    display: none !important;
}

.apx-fnb-mode-row-compact {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

.apx-fnb-mode-controls {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
}

.apx-fnb-utility-group .apx-fnb-advanced-toggle {
    align-items: center;
    background: var(--apx-fnb-surface-soft);
    border-color: var(--apx-fnb-line);
    border-radius: 10px;
    box-shadow: none;
    color: var(--apx-text);
    gap: 8px;
    min-height: 32px;
    min-width: 0;
    padding: 7px 11px;
}

.apx-fnb-utility-group .apx-fnb-advanced-toggle input {
    flex: 0 0 auto;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-fnb-utility-group .apx-fnb-advanced-toggle span {
    align-items: center;
    display: flex;
    gap: 0;
}

.apx-fnb-utility-group .apx-fnb-advanced-toggle strong {
    color: var(--apx-text);
    font-size: 0.72rem;
    line-height: 1;
    white-space: nowrap;
}

.apx-fnb-utility-group .apx-fnb-advanced-toggle:hover {
    background: rgba(212, 168, 87, 0.14);
    border-color: var(--apx-fnb-line-strong);
}

.apx-fnb-mode-switch {
    background: rgba(255, 248, 239, 0.08);
    border: 1px solid var(--apx-fnb-line-strong);
    border-radius: 999px;
    display: inline-grid;
    gap: 4px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 3px;
}

.apx-fnb-mode-switch button {
    background: transparent;
    border: 0;
    border-radius: 999px;
    color: var(--apx-text-muted);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 850;
    min-height: 34px;
    padding: 0 14px;
}

.apx-fnb-mode-switch button.is-active {
    background: linear-gradient(135deg, rgba(212, 168, 87, 0.28), rgba(156, 123, 63, 0.34));
    color: #f8f2e7;
}

.apx-fnb-mode-panel {
    display: grid;
    gap: 10px;
}

.apx-fnb-mode-panel[hidden],
.apx-fnb-mode-switch[hidden] {
    display: none !important;
}

.apx-fnb-sheet {
    border-color: var(--apx-fnb-line);
    border-radius: 18px;
    padding: 16px;
}

.apx-fnb-mode-panel-advanced .apx-fnb-sheet {
    background: var(--apx-fnb-surface-strong);
}

.apx-fnb-section-heading {
    align-items: end;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 12px;
}

.apx-fnb-section-kicker {
    color: var(--apx-fnb-gold);
    display: inline-block;
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    margin-bottom: 4px;
    text-transform: uppercase;
}

.apx-fnb-section-heading h5 {
    margin-bottom: 0;
}

.apx-fnb-standard-layout {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 2.2fr) minmax(250px, 0.9fr);
}

.apx-fnb-standard-main {
    display: grid;
}

.apx-fnb-form .row > [class*="col-"] {
    background: rgba(255, 248, 239, 0.03);
    border: 1px solid var(--apx-fnb-line);
    border-radius: 14px;
    padding: 10px;
}

.apx-fnb-form .form-label {
    color: var(--apx-text-soft);
    font-size: 0.61rem;
    letter-spacing: 0.11em;
    margin-bottom: 6px;
}

.apx-fnb-form .form-control,
.apx-fnb-form .form-select,
.apx-fnb-form .apx-menu-table input,
.apx-fnb-form .apx-menu-table select {
    background: var(--apx-fnb-field);
    border-color: var(--apx-fnb-line);
    color: var(--apx-text);
}

.apx-fnb-form .form-control::placeholder,
.apx-fnb-form .apx-menu-table input::placeholder {
    color: rgba(203, 213, 225, 0.44);
}

.apx-fnb-form .form-control:focus,
.apx-fnb-form .form-select:focus,
.apx-fnb-form .apx-menu-table input:focus,
.apx-fnb-form .apx-menu-table select:focus {
    border-color: rgba(212, 168, 87, 0.72);
    box-shadow: 0 0 0 3px rgba(212, 168, 87, 0.16);
}

.apx-fnb-profit-check {
    align-content: start;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
    margin-top: 0;
}

.apx-fnb-profit-check::before {
    color: var(--apx-fnb-gold);
    content: "Profit Check";
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-fnb-profit-check article {
    background: var(--apx-fnb-chip);
    border: 1px solid var(--apx-fnb-line);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    padding: 11px 12px;
}

.apx-fnb-profit-check span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-fnb-profit-check strong {
    color: var(--apx-text);
    font-size: 0.75rem;
    line-height: 1.35;
}

.apx-fnb-menu-tools {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.apx-fnb-menu-tools label {
    display: grid;
    gap: 4px;
}

.apx-fnb-menu-tools label span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-fnb-add-menu {
    min-height: 40px;
    padding: 0 14px;
}

.apx-fnb-menu-summary {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 12px;
}

.apx-fnb-menu-summary .apx-metric-chip {
    background: var(--apx-fnb-chip);
    border: 1px solid var(--apx-fnb-line);
    border-radius: 14px;
    box-shadow: none;
    padding: 10px 12px;
}

.apx-fnb-menu-table-wrap {
    background: rgba(7, 10, 18, 0.34);
    border: 1px solid var(--apx-fnb-line);
    border-radius: 16px;
    overflow: auto;
}

.apx-fnb-form .apx-menu-table {
    min-width: 980px;
}

.apx-fnb-form .apx-menu-table th {
    background: rgba(13, 17, 27, 0.94);
    border-bottom: 1px solid var(--apx-fnb-line);
    color: var(--apx-text-muted);
}

.apx-fnb-form .apx-menu-table td {
    border-top: 1px solid var(--apx-fnb-line-soft);
    color: var(--apx-text-soft);
    padding: 10px;
    vertical-align: middle;
}

.apx-fnb-form .apx-menu-table tbody tr:first-child td {
    border-top: 0;
}

.apx-fnb-form .apx-menu-table tbody tr:nth-child(2n) td {
    background: rgba(255, 248, 239, 0.02);
}

.apx-fnb-form .apx-menu-class {
    background: rgba(207, 163, 73, 0.16);
    border: 1px solid rgba(207, 163, 73, 0.22);
    border-radius: 999px;
    display: inline-flex;
    padding: 4px 10px;
}

.apx-fnb-form .apx-menu-contribution {
    color: var(--apx-text);
    font-weight: 900;
}

.apx-fnb-advanced-group + .apx-fnb-advanced-group {
    border-top: 1px solid var(--apx-fnb-line);
    margin-top: 12px;
    padding-top: 12px;
}

.apx-fnb-advanced-defaults {
    display: none;
}

.apx-row-remove-destructive {
    background: linear-gradient(180deg, #d44a4f 0%, #b32026 38%, #7a1519 100%);
    border: 1px solid #6b1216;
    border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16), inset 0 -1px 0 rgba(68, 10, 12, 0.24), 0 10px 20px rgba(116, 21, 25, 0.22);
    color: #fff;
    cursor: pointer;
    font-weight: 800;
    min-height: 36px;
    padding: 7px 11px;
    transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

.apx-row-remove-destructive:hover {
    background: linear-gradient(180deg, #c8383d 0%, #a71c22 38%, #661316 100%);
    border-color: #581013;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12), inset 0 -1px 0 rgba(54, 8, 10, 0.28), 0 12px 22px rgba(102, 19, 22, 0.26);
}

[data-theme="light"] .apx-fnb-header-copy p,
[data-theme="light"] .apx-fnb-menu-tools label span,
[data-theme="light"] .apx-fnb-profit-check span {
    color: #78603b;
}

[data-theme="light"] .apx-fnb-profit-check strong,
[data-theme="light"] .apx-fnb-section-heading h5 {
    color: #2b241c;
}

[data-theme="light"] .apx-fnb-mode-switch {
    background: rgba(255, 252, 247, 0.92);
}

[data-theme="light"] .apx-fnb-mode-switch button.is-active {
    color: #4f3d1f;
}

[data-theme="light"] .apx-fnb-form .form-control::placeholder,
[data-theme="light"] .apx-fnb-form .apx-menu-table input::placeholder {
    color: rgba(84, 76, 65, 0.52);
}

[data-theme="light"] .apx-fnb-form .apx-menu-table th {
    background: rgba(244, 237, 226, 0.96);
}

[data-theme="light"] .apx-fnb-form .apx-menu-table tbody tr:nth-child(2n) td {
    background: rgba(255, 250, 242, 0.52);
}

[data-theme="light"] .apx-row-remove-destructive {
    background: linear-gradient(180deg, #d44a4f 0%, #b32026 38%, #7a1519 100%);
    border-color: #6b1216;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), inset 0 -1px 0 rgba(68, 10, 12, 0.2), 0 10px 18px rgba(116, 21, 25, 0.18);
}

[data-theme="light"] .apx-row-remove-destructive:hover {
    background: linear-gradient(180deg, #c8383d 0%, #a71c22 38%, #661316 100%);
    border-color: #581013;
}

@media (max-width: 1180px) {
    .apx-fnb-standard-layout {
        grid-template-columns: 1fr;
    }

    .apx-fnb-profit-check {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-fnb-profit-check::before {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .apx-fnb-mode-row,
    .apx-fnb-mode-controls {
        display: flex;
        width: 100%;
    }

    .apx-fnb-save {
        width: 100%;
    }

    .apx-fnb-menu-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.apx-plan-form {
    display: grid;
    gap: 9px;
}

.apx-plan-scenario-grid,
.apx-plan-department-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-plan-scenario-card,
.apx-plan-department,
.apx-plan-target-group,
.apx-plan-target-grid label,
.apx-swot-grid label,
.apx-plan-two-column label,
.apx-plan-status-row label {
    background: rgba(2, 6, 23, 0.38);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 5px;
    padding: 9px;
}

.apx-plan-scenario-card {
    cursor: pointer;
}

.apx-plan-scenario-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.apx-plan-scenario-card.is-selected {
    background: rgba(164, 124, 47, 0.24);
    border-color: rgba(255, 59, 31, 0.62);
}

[data-theme="light"] .apx-plan-scenario-card,
[data-theme="light"] .apx-plan-department,
[data-theme="light"] .apx-plan-target-group,
[data-theme="light"] .apx-plan-target-grid label,
[data-theme="light"] .apx-swot-grid label,
[data-theme="light"] .apx-plan-two-column label,
[data-theme="light"] .apx-plan-status-row label,
[data-theme="light"] .apx-plan-snapshot article {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.76) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-plan-scenario-card.is-selected {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.9) 100%);
    border-color: rgba(156, 123, 63, 0.34);
    box-shadow: 0 0 0 2px rgba(156, 123, 63, 0.12);
}

.apx-plan-scenario-card span,
.apx-swot-grid span,
.apx-plan-department span,
.apx-plan-target-grid span,
.apx-plan-two-column span,
.apx-plan-status-row span {
    color: #fecdd3;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

[data-theme="light"] .apx-plan-scenario-card span,
[data-theme="light"] .apx-swot-grid span,
[data-theme="light"] .apx-plan-department span,
[data-theme="light"] .apx-plan-target-grid span,
[data-theme="light"] .apx-plan-two-column span,
[data-theme="light"] .apx-plan-status-row span {
    color: #8a2d2d;
}

.apx-plan-scenario-card strong,
.apx-plan-department h6,
.apx-plan-target-group h6 {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
    margin: 0;
}

.apx-plan-scenario-card small,
.apx-plan-scenario-card em,
.apx-plan-target-grid small {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-style: normal;
    line-height: 1.25;
}

.apx-plan-target-groups {
    display: grid;
    gap: 8px;
}

.apx-plan-target-group {
    padding: 8px;
}

.apx-plan-target-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-plan-target-grid label {
    gap: 4px;
    padding: 8px;
}

.apx-plan-target-grid input {
    width: 100%;
}

.apx-plan-snapshot,
.apx-plan-status-row {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 8px;
}

.apx-plan-snapshot article {
    background: rgba(2, 6, 23, 0.36);
    border: 1px solid rgba(51, 65, 85, 0.66);
    border-radius: 9px;
    padding: 9px;
}

.apx-plan-snapshot span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-plan-snapshot strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.86rem;
    line-height: 1.25;
    margin-top: 3px;
}

.apx-swot-grid,
.apx-plan-two-column {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-plan-roadmap-table textarea {
    min-height: 44px;
    resize: vertical;
}

.apx-plan-roadmap-table input,
.apx-plan-roadmap-table textarea,
.apx-swot-grid textarea,
.apx-plan-department input,
.apx-plan-department textarea,
.apx-plan-two-column textarea,
.apx-plan-status-row select {
    width: 100%;
}

@media (max-width: 1100px) {
    .apx-plan-scenario-grid,
    .apx-plan-department-grid,
    .apx-plan-target-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-rubric-settings-grid,
    .apx-guide-grid,
    .apx-guide-target-grid,
    .apx-guide-checklist {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-plan-snapshot,
    .apx-plan-status-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .apx-plan-scenario-grid,
    .apx-plan-department-grid,
    .apx-plan-target-grid,
    .apx-swot-grid,
    .apx-plan-two-column,
    .apx-rubric-settings-grid,
    .apx-guide-grid,
    .apx-guide-target-grid,
    .apx-guide-checklist {
        grid-template-columns: 1fr;
    }
}

[data-flow-step][hidden] {
    display: none !important;
}

.apx-decision-section {
    overflow: hidden;
}

.apx-sim-decision-form .apx-decision-section,
.apx-help-console .apx-decision-section,
.apx-command-center,
.apx-intel-strip {
    border-radius: 14px;
    padding: 12px;
}

.apx-ai-ticker {
    background: rgba(15, 23, 42, 0.94);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 12px;
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
    color: #eef2ff;
    position: relative;
}

.apx-dashboard-kicker {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    line-height: 1.1;
    text-transform: uppercase;
}

.apx-ai-feed-bar {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: 128px minmax(0, 1fr) auto;
    padding: 10px 12px;
    position: relative;
}

.apx-ticker-window {
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
}

.apx-ticker-track {
    animation: apxTicker 34s linear infinite;
    color: var(--apx-text-soft);
    display: inline-block;
    font-size: 0.78rem;
    min-width: 100%;
    padding-left: 100%;
}

.apx-ticker-track b {
    color: var(--apx-text);
}

[data-theme="light"] .apx-ai-ticker {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(241, 232, 216, 0.96) 100%);
    border-color: rgba(33, 29, 24, 0.1);
    box-shadow: var(--apx-card-shadow);
    color: var(--apx-text);
}

[data-theme="light"] .apx-ticker-track {
    color: var(--apx-text-soft);
}

[data-theme="light"] .apx-ticker-track b {
    color: var(--apx-text);
}

.apx-dashboard-ai-feed .apx-ticker-window {
    border-left: 1px solid rgba(148, 163, 184, 0.24);
    margin-right: 6px;
    padding-left: 10px;
}

[data-theme="light"] .apx-dashboard-ai-feed .apx-ticker-window {
    border-left-color: rgba(33, 29, 24, 0.08);
}

.apx-cycle-status-section {
    padding: 12px;
}

.apx-cycle-status-heading {
    margin-bottom: 8px;
}

.apx-cycle-status-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-cycle-status-pill {
    align-items: flex-start;
    background: rgba(12, 18, 31, 0.74);
    border: 1px solid rgba(100, 116, 139, 0.58);
    border-radius: 14px;
    color: var(--apx-text);
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 52px;
    min-width: 118px;
    padding: 8px 10px;
    text-decoration: none;
    transition:
        background-color 160ms ease,
        border-color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms ease;
}

[data-theme="light"] .apx-cycle-status-pill {
    background: rgba(255, 250, 242, 0.92);
    border-color: rgba(33, 29, 24, 0.1);
}

.apx-cycle-status-pill:hover {
    background: rgba(201, 168, 76, 0.12);
    box-shadow: 0 10px 22px rgba(201, 168, 76, 0.14);
    transform: translateY(-1px);
}

.apx-cycle-status-pill:focus,
.apx-cycle-status-pill:focus-visible {
    background: rgba(204, 78, 0, 0.12);
    box-shadow:
        0 0 0 2px rgba(201, 168, 76, 0.45),
        0 0 0 5px rgba(204, 78, 0, 0.14);
    outline: none;
    transform: translateY(-1px);
}

[data-theme="light"] .apx-cycle-status-pill:hover {
    background: rgba(201, 168, 76, 0.14);
    box-shadow: 0 10px 22px rgba(201, 168, 76, 0.12);
}

[data-theme="light"] .apx-cycle-status-pill:focus,
[data-theme="light"] .apx-cycle-status-pill:focus-visible {
    background: rgba(204, 78, 0, 0.1);
    box-shadow:
        0 0 0 2px rgba(201, 168, 76, 0.42),
        0 0 0 5px rgba(204, 78, 0, 0.12);
}

.apx-cycle-status-dot {
    background: #94a3b8;
    border-radius: 999px;
    flex: 0 0 auto;
    height: 10px;
    margin-top: 4px;
    width: 10px;
}

.apx-cycle-status-copy {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.apx-cycle-status-label {
    color: var(--apx-text-soft);
}

.apx-cycle-status-pill small {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 760;
    letter-spacing: 0.01em;
    line-height: 1.2;
}

.apx-cycle-status-pill.is-saved {
    border-color: rgba(34, 197, 94, 0.42);
}

.apx-cycle-status-pill.is-saved .apx-cycle-status-dot {
    background: #22c55e;
}

.apx-cycle-status-pill.is-inherited {
    border-color: rgba(244, 63, 94, 0.5);
}

.apx-cycle-status-pill.is-inherited .apx-cycle-status-dot {
    background: #f43f5e;
}

.apx-cycle-status-pill.is-unsaved {
    border-color: rgba(220, 38, 38, 0.48);
}

.apx-cycle-status-pill.is-unsaved .apx-cycle-status-dot {
    background: #dc2626;
}

@media (max-width: 900px) {
    .apx-cycle-status-bar {
        gap: 6px;
    }

    .apx-cycle-status-pill {
        width: 100%;
    }
}

.apx-ai-speed-input {
    opacity: 0;
    pointer-events: none;
    position: absolute;
}

.apx-ai-speed-controls {
    align-items: center;
    background: rgba(15, 23, 42, 0.96);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
    display: inline-flex;
    gap: 4px;
    justify-self: end;
    padding: 3px;
    position: relative;
    z-index: 3;
}

.apx-ai-speed-controls label {
    border: 1px solid transparent;
    border-radius: 999px;
    color: #cbd5e1;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1;
    min-width: 36px;
    padding: 5px 8px;
    text-transform: uppercase;
    white-space: nowrap;
}

[data-theme="light"] .apx-ai-speed-controls label {
    color: var(--apx-text-soft);
}

[data-theme="light"] .apx-ai-speed-controls {
    background: rgba(255, 250, 242, 0.96);
    border-color: rgba(33, 29, 24, 0.1);
    box-shadow: var(--apx-card-shadow);
}

#ai-feed-speed-default:checked ~ .apx-ai-feed-bar .apx-ai-speed-controls label[for="ai-feed-speed-default"],
#ai-feed-speed-fast:checked ~ .apx-ai-feed-bar .apx-ai-speed-controls label[for="ai-feed-speed-fast"] {
    background: rgba(207, 163, 73, 0.2);
    border-color: rgba(196, 181, 253, 0.62);
    color: #f8fafc;
}

[data-theme="light"] #ai-feed-speed-default:checked ~ .apx-ai-feed-bar .apx-ai-speed-controls label[for="ai-feed-speed-default"],
[data-theme="light"] #ai-feed-speed-fast:checked ~ .apx-ai-feed-bar .apx-ai-speed-controls label[for="ai-feed-speed-fast"] {
    background: rgba(179, 32, 38, 0.08);
    border-color: rgba(179, 32, 38, 0.22);
    color: rgba(255, 59, 31, 0.5);
}

#ai-feed-speed-default:checked ~ .apx-ai-feed-bar .apx-ticker-track {
    animation-duration: 68s;
}

#ai-feed-speed-fast:checked ~ .apx-ai-feed-bar .apx-ticker-track {
    animation-duration: 34s;
}

.apx-dashboard-ai-feed:hover .apx-ticker-track,
.apx-dashboard-ai-feed:focus-within .apx-ticker-track {
    animation-play-state: paused;
}

@media (max-width: 900px) {
    .apx-ai-feed-bar {
        gap: 8px;
        grid-template-columns: 1fr;
    }

    .apx-ai-speed-controls {
        justify-self: start;
    }

    .apx-dashboard-ai-feed .apx-ticker-window {
        border-left: 0;
        padding-left: 0;
    }
}

@keyframes apxTicker {
    from { transform: translateX(0); }
    to { transform: translateX(-100%); }
}

.apx-sim-decision-form .apx-decision-section h5,
.apx-help-console .apx-decision-section h5 {
    margin-bottom: 10px;
}

.apx-sim-decision-form .row {
    gap: 9px;
}

.apx-economics-modal {
    display: none;
}

.apx-economics-modal:target {
    background: rgba(15, 23, 42, 0.98);
    border-color: rgba(207, 163, 73, 0.5);
    box-shadow: 0 0 0 100vmax rgba(2, 6, 23, 0.72), var(--apx-shadow);
    display: block;
    inset: 7vh max(24px, calc((100vw - 1120px) / 2)) auto;
    max-height: 86vh;
    overflow: auto;
    padding-top: 54px;
    position: fixed;
    z-index: 30;
}

.apx-modal-close {
    background: rgba(2, 6, 23, 0.78);
    border: 1px solid var(--apx-border);
    border-radius: 10px;
    color: var(--apx-text-soft);
    font-size: 0.76rem;
    font-weight: 850;
    padding: 9px 11px;
    position: absolute;
    right: 18px;
    top: 16px;
}

.apx-modal-close:hover {
    background: rgba(207, 163, 73, 0.18);
    color: var(--apx-text);
}

.apx-decision-section h5,
.tab-pane h5 {
    color: var(--apx-text);
    font-size: 0.96rem;
    font-weight: 850;
    line-height: 1.25;
    margin: 0 0 9px;
}

.apx-decision-section h6,
.tab-pane h6 {
    color: var(--apx-text-soft);
    font-size: 0.92rem;
    font-weight: 850;
    margin: 20px 0 10px;
}

.apx-field-note {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.7rem;
    line-height: 1.34;
    margin-top: 5px;
}

.apx-section-kicker {
    color: var(--apx-text-muted);
    font-size: 0.65rem;
    font-weight: 850;
    letter-spacing: 0.12em;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.apx-checkbox-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.apx-checkbox-grid label {
    align-items: center;
    background: #020617;
    border: 1px solid var(--apx-border);
    border-radius: 12px;
    color: var(--apx-text-soft);
    display: flex;
    font-weight: 700;
    gap: 10px;
    line-height: 1.25;
    min-height: 50px;
    padding: 12px 13px;
    transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.apx-checkbox-grid input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
}

.apx-checkbox-grid label:hover {
    background: rgba(207, 163, 73, 0.1);
    border-color: rgba(207, 163, 73, 0.42);
}

.nav-tabs {
    border-bottom: 1px solid var(--apx-border);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    padding: 0 0 14px;
}

.nav-link {
    background: transparent;
    border: 1px solid transparent;
    border-radius: 12px;
    color: var(--apx-text-muted);
    cursor: pointer;
    font-weight: 800;
    padding: 10px 14px;
}

.nav-link.active,
.nav-link:hover {
    background: rgba(207, 163, 73, 0.16);
    border-color: rgba(207, 163, 73, 0.34);
    color: var(--apx-text);
}

.tab-pane {
    display: none;
}

.tab-pane.active {
    display: block;
}

.tab-content {
    background: var(--apx-panel);
    border: 1px solid var(--apx-border);
    border-radius: 24px;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26);
    padding: 22px;
}

.apx-section-heading {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apx-section-heading h5 {
    font-size: 0.96rem;
    margin: 0 0 4px;
}

.apx-section-heading p {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    line-height: 1.38;
    margin: 0;
    max-width: 760px;
}

.apx-facilitator-report-heading {
    color: var(--apx-text);
    font-size: 0.96rem;
    font-weight: 850;
    line-height: 1.25;
    margin: 0 0 9px;
}

.apx-facilitator-report-subheading {
    color: var(--apx-text-soft);
    font-size: 0.92rem;
    font-weight: 850;
    margin: 20px 0 10px;
}

.apx-section-heading .apx-facilitator-report-heading {
    font-size: 0.96rem;
    margin: 0 0 4px;
}

.apx-report-empty-state-light .apx-facilitator-report-heading {
    color: var(--apx-text);
}

.apx-btn-secondary,
.btn-primary {
    background: var(--apx-primary-button);
    border: 1px solid var(--apx-primary-button-border);
    border-radius: 12px;
    box-shadow: var(--apx-primary-button-shadow);
    color: #fff;
    cursor: pointer;
    font-weight: 850;
    min-height: 44px;
    padding: 10px 14px;
}

.apx-btn-secondary:hover,
.btn-primary:hover {
    background: var(--apx-primary-button-hover);
}

.apx-menu-summary {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    margin-bottom: 12px;
}

.apx-metric-chip {
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 12px;
    padding: 10px 12px;
}

.apx-metric-chip span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-metric-chip strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.96rem;
    margin-top: 4px;
}

[data-theme="light"] .apx-metric-chip {
    background: rgba(255, 250, 242, 0.96);
    border-color: rgba(156, 123, 63, 0.14);
}

.apx-table-wrap {
    border: 1px solid var(--apx-border);
    border-radius: 12px;
    overflow-x: auto;
}

.apx-menu-table {
    min-width: 920px;
}

.apx-cost-guide .apx-menu-table {
    min-width: 760px;
}

.apx-cost-guide td:first-child {
    color: var(--apx-text);
    font-weight: 850;
}

.apx-menu-table th {
    background: rgba(15, 23, 42, 0.9);
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-menu-table td {
    color: var(--apx-text-soft);
    font-size: 0.76rem;
    line-height: 1.32;
    padding: 8px 9px;
    vertical-align: top;
}

[data-theme="light"] .apx-menu-table th {
    background: rgba(244, 237, 226, 0.96);
}

[data-theme="light"] .apx-menu-table tbody tr:nth-child(2n) td {
    background: rgba(255, 250, 242, 0.48);
}

.apx-menu-table input,
.apx-menu-table select,
.form-control,
.form-select,
textarea.form-control {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 9px;
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    min-height: 38px;
    outline: none;
    padding: 8px 10px;
    transition: border-color 140ms ease, box-shadow 140ms ease, background 140ms ease;
    width: 100%;
}

.form-select {
    cursor: pointer;
}

.form-control::placeholder {
    color: rgba(148, 163, 184, 0.66);
}

.apx-menu-table input:focus,
.apx-menu-table select:focus,
.form-control:focus,
.form-select:focus,
textarea.form-control:focus {
    border-color: rgba(207, 163, 73, 0.78);
    box-shadow: 0 0 0 3px rgba(207, 163, 73, 0.18);
}

[data-theme="light"] .apx-menu-table input:focus,
[data-theme="light"] .apx-menu-table select:focus,
[data-theme="light"] .form-control:focus,
[data-theme="light"] .form-select:focus,
[data-theme="light"] textarea.form-control:focus {
    border-color: rgba(207, 163, 73, 0.68);
    box-shadow: 0 0 0 3px rgba(212, 168, 87, 0.18);
}

.form-label {
    color: var(--apx-text-soft);
    display: block;
    font-size: 0.66rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    line-height: 1.32;
    margin-bottom: 5px;
    min-height: 1rem;
    text-transform: uppercase;
}

form .row > [class*="col-"] {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 12px;
    padding: 9px;
}

[data-theme="light"] form .row > [class*="col-"] {
    background: rgba(255, 250, 242, 0.78);
    border-color: rgba(156, 123, 63, 0.12);
}

.apx-menu-table .row > [class*="col-"] {
    background: transparent;
    border: 0;
    padding: 0;
}

.apx-menu-contribution,
.apx-menu-class {
    color: var(--apx-text);
    font-weight: 850;
    white-space: nowrap;
}

.apx-menu-class {
    background: rgba(207, 163, 73, 0.16);
    border: 1px solid rgba(207, 163, 73, 0.34);
    border-radius: 999px;
    display: inline-flex;
    padding: 5px 9px;
}

.apx-row-remove {
    background: rgba(244, 63, 94, 0.12);
    border: 1px solid rgba(244, 63, 94, 0.32);
    border-radius: 10px;
    color: #fda4af;
    cursor: pointer;
    font-weight: 750;
    padding: 8px 10px;
}

/* Common Content */

.apx-card {
    background: var(--apx-panel);
    border: 1px solid var(--apx-border);
    border-radius: 14px;
    box-shadow: var(--apx-card-shadow);
    padding: 12px;
}

.apx-dashboard-hero {
    align-items: stretch;
    background:
        linear-gradient(135deg, rgba(207, 163, 73, 0.24), rgba(179, 32, 38, 0.1)),
        rgba(15, 23, 42, 0.92);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 24px;
    box-shadow: var(--apx-shadow);
    display: flex;
    gap: 22px;
    justify-content: space-between;
    margin-bottom: 22px;
    overflow: hidden;
    padding: 28px;
    position: relative;
}

[data-theme="light"] .apx-dashboard-hero {
    background:
        linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.86) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-dashboard-hero::after {
    background: linear-gradient(90deg, #9c7b3f 0%, #7e642f 55%, #2f605a 100%);
}

.apx-dashboard-hero::after {
    background: linear-gradient(90deg, var(--apx-accent), var(--apx-accent-2), var(--apx-accent-3));
    content: "";
    height: 5px;
    inset: 0 0 auto;
    position: absolute;
}

.apx-dashboard-hero h1 {
    margin: 0;
}

.apx-dashboard-hero p {
    color: var(--apx-text-muted);
    line-height: 1.6;
    margin: 10px 0 0;
    max-width: 720px;
}

.apx-dashboard-status {
    align-self: stretch;
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 16px;
    display: grid;
    min-width: 170px;
    padding: 16px;
}

.apx-dashboard-status span,
.apx-module-card span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-dashboard-status strong {
    align-self: end;
    color: var(--apx-text);
    font-size: 1.55rem;
    font-weight: 900;
}

.apx-module-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.apx-module-card {
    background: rgba(2, 6, 23, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 12px;
    display: grid;
    gap: 7px;
    min-height: 92px;
    padding: 12px;
    transition: border-color 140ms ease, transform 140ms ease, background 140ms ease;
}

.apx-module-card strong {
    color: var(--apx-text);
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.4;
}

.apx-module-card:hover {
    background: rgba(207, 163, 73, 0.13);
    border-color: rgba(207, 163, 73, 0.5);
    transform: translateY(-2px);
}

[data-theme="light"] .apx-dashboard-status,
[data-theme="light"] .apx-module-card,
[data-theme="light"] .apx-capex-preview-grid article,
[data-theme="light"] .apx-upgrade-card,
[data-theme="light"] .apx-setting-toggle,
[data-theme="light"] .apx-setting-scenarios div,
[data-theme="light"] .apx-sim-control,
[data-theme="light"] .apx-sim-matrix article,
[data-theme="light"] .apx-sim-slider-grid label {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.74) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-capex-selection-note,
[data-theme="light"] .apx-capex-family-group,
[data-theme="light"] .apx-capex-summary-panel {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.82) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-capex-family-kicker {
    color: #8d6c33;
}

[data-theme="light"] .apx-capex-selection-note,
[data-theme="light"] .apx-capex-summary-heading span {
    color: #6c5b42;
}

[data-theme="light"] .apx-capex-summary-heading strong {
    color: #2b241c;
}

[data-theme="light"] .apx-module-card:hover {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.86) 100%);
    border-color: rgba(156, 123, 63, 0.26);
}

.apx-upgrade-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.apx-compact-stack {
    gap: 14px;
}

.apx-upgrade-table-wrap {
    border-radius: 14px;
}

.apx-upgrade-table {
    min-width: 1040px;
}

.apx-upgrade-table th,
.apx-upgrade-table td {
    font-size: 0.76rem;
    padding: 9px 10px;
    vertical-align: middle;
}

.apx-upgrade-table input[type="number"] {
    font-size: 0.84rem;
    min-height: 36px;
    padding: 7px 9px;
    min-width: 86px;
}

.apx-upgrade-table input[type="checkbox"] {
    accent-color: var(--apx-accent);
    height: 16px;
    width: 16px;
}

.apx-capex-preview-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 12px;
}

.apx-capex-preview-grid article,
.apx-upgrade-card {
    background: rgba(2, 6, 23, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 12px;
}

.apx-capex-preview-grid article {
    display: grid;
    gap: 4px;
    min-height: 88px;
    padding: 12px 14px;
}

.apx-capex-preview-grid span,
.apx-upgrade-facts span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-capex-preview-grid strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1.2;
}

.apx-capex-preview-grid small {
    color: var(--apx-text-muted);
    font-size: 0.73rem;
    font-weight: 700;
    line-height: 1.34;
}

.apx-upgrade-card-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-capex-expansion-heading {
    margin-bottom: 14px;
}

.apx-capex-expansion-overview {
    align-items: start;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, 0.95fr);
    margin-bottom: 18px;
}

.apx-capex-commandbar {
    gap: 8px 12px;
    padding: 10px 12px;
    top: 8px;
}

.apx-capex-commandbar > div {
    gap: 2px;
    padding-right: 12px;
}

.apx-capex-commandbar strong {
    font-size: 0.78rem;
}

.apx-capex-commandbar small {
    font-size: 0.69rem;
}

.apx-capex-commandbar .apx-sim-save {
    min-height: 40px;
    padding: 9px 14px;
}

.apx-capex-selection-note {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(207, 163, 73, 0.22);
    border-radius: 14px;
    color: var(--apx-text-soft);
    font-size: 0.76rem;
    line-height: 1.45;
    margin: 0;
    padding: 12px 14px;
}

.apx-capex-family-group {
    background: linear-gradient(180deg, rgba(18, 26, 39, 0.88) 0%, rgba(10, 16, 28, 0.96) 100%);
    border: 1px solid rgba(207, 163, 73, 0.22);
    border-radius: 18px;
    display: grid;
    gap: 14px;
    height: 100%;
    padding: 18px;
}

.apx-capex-family-layout {
    row-gap: 14px;
}

.apx-capex-family-layout .apx-capex-family-group {
    gap: 12px;
    height: auto;
    padding: 16px;
}

.apx-capex-family-heading {
    align-items: start;
    border-bottom: 1px solid rgba(148, 163, 184, 0.2);
    margin-bottom: 0;
    padding-bottom: 12px;
}

.apx-capex-family-kicker {
    color: #cfa349;
    display: inline-block;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.14em;
    margin-bottom: 7px;
    text-transform: uppercase;
}

.apx-capex-family-heading h6 {
    margin: 0;
    font-size: 1rem;
}

.apx-capex-family-heading p {
    margin-top: 6px;
    max-width: 44ch;
}

.apx-capex-family-cards {
    grid-template-columns: minmax(0, 1fr);
}

.apx-capex-family-cards-wide {
    grid-template-columns: minmax(0, 1fr);
}

.apx-upgrade-card {
    align-content: start;
    display: grid;
    gap: 8px 10px;
    grid-template-areas:
        "label qty"
        "facts facts"
        "capacity capacity";
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 116px;
    padding: 12px;
}

.apx-upgrade-card:has(input[type="checkbox"]:checked) {
    background: rgba(207, 163, 73, 0.13);
    border-color: rgba(255, 59, 31, 0.68);
    box-shadow: inset 3px 0 0 rgba(179, 32, 38, 0.75);
}

.apx-upgrade-card.is-locked {
    opacity: 0.68;
    border-style: dashed;
}

.apx-upgrade-card label {
    align-items: flex-start;
    display: flex;
    gap: 7px;
    grid-area: label;
    margin: 0;
    min-width: 0;
}

.apx-upgrade-card label input {
    accent-color: var(--apx-accent-3);
    flex: 0 0 auto;
    height: 15px;
    margin-top: 3px;
    width: 15px;
}

.apx-upgrade-card label span {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 900;
    line-height: 1.25;
}

.apx-upgrade-qty {
    align-items: center;
    background: rgba(2, 6, 23, 0.68);
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 10px;
    display: flex;
    gap: 6px;
    grid-area: qty;
    justify-content: end;
    padding: 6px 8px;
}

.apx-upgrade-qty span {
    color: var(--apx-text-soft);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-upgrade-qty input[type="number"] {
    background: var(--apx-field);
    border: 1px solid rgba(148, 163, 184, 0.34);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 800;
    min-height: 30px;
    padding: 5px 7px;
    text-align: center;
    width: 64px;
}

.apx-upgrade-facts {
    display: grid;
    gap: 6px 10px;
    grid-area: facts;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
}

.apx-upgrade-facts span {
    background: transparent;
    border: 0;
    border-radius: 0;
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    letter-spacing: 0.03em;
    line-height: 1.22;
    padding: 0;
    text-transform: none;
    white-space: normal;
}

.apx-capacity-output {
    border-top: 1px solid rgba(148, 163, 184, 0.16);
    color: var(--apx-text-soft);
    font-size: 0.68rem;
    font-weight: 900;
    grid-area: capacity;
    letter-spacing: 0.03em;
    line-height: 1.2;
    padding-top: 8px;
    text-transform: uppercase;
}

.apx-capex-summary-panel {
    display: grid;
    gap: 10px;
    margin: 0;
    min-height: 100%;
    padding: 16px;
}

.apx-capex-summary-heading {
    display: grid;
    gap: 3px;
}

.apx-capex-summary-heading span {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-capex-summary-heading strong {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 900;
}

.apx-refurb-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.apx-refurb-grid label {
    background: rgba(2, 6, 23, 0.34);
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 10px;
    display: grid;
    gap: 6px;
    margin: 0;
    min-height: 92px;
    padding: 9px 10px;
}

.apx-refurb-grid label > span {
    color: var(--apx-text-soft);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.18;
    text-transform: uppercase;
}

.apx-refurb-grid .form-control,
.apx-refurb-grid .form-select {
    font-size: 0.78rem;
    min-height: 34px;
    padding: 6px 8px;
}

.apx-refurb-grid small {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    font-weight: 700;
    line-height: 1.18;
}

.apx-menu-engineering-table {
    min-width: 1120px;
}

.apx-menu-engineering-table input,
.apx-menu-engineering-table select {
    font-size: 0.84rem;
    min-height: 36px;
    padding: 7px 9px;
}

.apx-menu-engineering-table input[data-field="name"] {
    min-width: 160px;
}

.apx-menu-engineering-table select[data-field="action"] {
    min-width: 150px;
}

.apx-upgrade-confirm {
    display: grid;
    justify-items: center;
}

.apx-upgrade-panel {
    background: rgba(15, 23, 42, 0.97);
    border: 1px solid rgba(207, 163, 73, 0.32);
    border-radius: 20px;
    box-shadow: var(--apx-shadow);
    max-width: 980px;
    padding: 24px;
    width: 100%;
}

.apx-upgrade-confirm-compact .apx-upgrade-panel {
    max-width: none;
    padding: 18px;
}

.apx-upgrade-summary-panel {
    box-shadow: none;
    max-width: none;
    padding: 14px;
}

.apx-upgrade-confirm-compact h5 {
    margin-bottom: 0;
}

.apx-upgrade-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    margin: 18px 0;
}

.apx-upgrade-metrics div {
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid var(--apx-border);
    border-radius: 12px;
    padding: 11px;
}

.apx-upgrade-metrics span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-upgrade-metrics strong {
    color: var(--apx-text);
    display: block;
    font-size: 1.05rem;
    margin-top: 6px;
}

.apx-upgrade-status {
    border-radius: 14px;
    font-weight: 760;
    line-height: 1.45;
    margin-bottom: 0;
    padding: 14px;
}

.apx-upgrade-status.is-warning {
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(245, 158, 11, 0.38);
    color: #fcd34d;
}

.apx-upgrade-status.is-positive {
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.38);
    color: #86efac;
}

.apx-confirm-actions {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 18px;
}

.apx-intel-strip {
    background: rgba(15, 23, 42, 0.94);
    border: 1px solid rgba(207, 163, 73, 0.24);
    border-radius: 20px;
    box-shadow: 0 18px 44px rgba(0, 0, 0, 0.26);
    display: grid;
    gap: 16px;
    overflow: hidden;
    padding: 18px;
    position: relative;
}

.apx-recognition-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-recognition-grid div {
    background: rgba(2, 6, 23, 0.55);
    border: 1px solid var(--apx-border);
    border-radius: 14px;
    min-width: 0;
    padding: 12px 11px;
}

[data-theme="light"] .apx-recognition-grid div {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.96) 0%, rgba(240, 231, 215, 0.76) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-recognition-grid span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.64rem;
    font-weight: 850;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.apx-recognition-grid strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.9rem;
    line-height: 1.24;
    margin-top: 6px;
}

.apx-recognition-grid small {
    color: rgba(203, 213, 225, 0.72);
    display: block;
    font-size: 0.62rem;
    font-weight: 750;
    line-height: 1.2;
    margin-top: 5px;
}

@media (max-width: 1399px) {
    .apx-recognition-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .apx-recognition-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .apx-recognition-grid {
        grid-template-columns: 1fr;
    }
}

.apx-intel-strip::before {
    background: linear-gradient(90deg, var(--apx-accent), var(--apx-accent-2), var(--apx-accent-3));
    content: "";
    height: 4px;
    inset: 0 0 auto;
    position: absolute;
}

.apx-intel-heading {
    align-items: baseline;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding-top: 4px;
}

.apx-intel-heading span,
.apx-intel-item span {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-intel-heading strong {
    color: var(--apx-text);
    font-size: 1.05rem;
    font-weight: 900;
}

.apx-intel-items {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
}

.apx-intel-item {
    background: rgba(10, 16, 28, 0.68);
    border: 1px solid rgba(100, 116, 139, 0.64);
    border-radius: 14px;
    padding: 14px;
}

.apx-intel-item p {
    color: #e2e8f0;
    font-size: 0.9rem;
    line-height: 1.48;
    margin: 8px 0 0;
}

.apx-intel-item a {
    color: #f8fafc;
}

[data-theme="light"] .apx-intel-item {
    background: rgba(255, 250, 242, 0.94);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-intel-item p,
[data-theme="light"] .apx-intel-item a {
    color: var(--apx-text-soft);
}

.apx-intel-item.is-positive {
    border-color: rgba(34, 197, 94, 0.36);
}

.apx-intel-item.is-warning {
    border-color: rgba(244, 63, 94, 0.42);
}

.apx-intel-item.is-neutral {
    border-color: rgba(207, 163, 73, 0.34);
}

.apx-help-list {
    display: grid;
    gap: 8px;
}

.apx-help-row {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    color: var(--apx-text-soft);
    line-height: 1.45;
    padding: 10px 12px;
}

.apx-help-console {
    display: grid;
    gap: 12px;
}

.apx-help-topic-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-help-topic-nav a {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 999px;
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 900;
    padding: 8px 12px;
    transition: background 140ms ease, border-color 140ms ease, color 140ms ease;
}

.apx-help-topic-nav a:hover,
.apx-help-topic-nav a.is-active {
    background: rgba(156, 123, 63, 0.14);
    border-color: rgba(156, 123, 63, 0.28);
    color: var(--apx-text);
}

.apx-help-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-help-reference {
    padding: 0;
}

.apx-help-reference-head {
    align-items: center;
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 12px;
}

.apx-help-reference-head h5 {
    color: var(--apx-text);
    font-size: 0.96rem;
    font-weight: 900;
    margin: 0;
}

.apx-help-table {
    min-width: 980px;
}

.apx-help-table td:first-child {
    color: var(--apx-text);
    font-weight: 850;
    width: 18%;
}

.apx-help-table td:nth-child(3),
.apx-help-table td:nth-child(4) {
    color: var(--apx-accent);
    font-weight: 760;
}

.apx-report-actions {
    margin-bottom: 10px;
}

.apx-report-filter {
    align-items: end;
    background: transparent;
    border: 0;
    border-radius: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    padding: 0;
}

.apx-report-filter label {
    display: grid;
    gap: 4px;
}

.apx-report-filter span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-report-filter input,
.apx-report-filter select {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 9px;
    color: var(--apx-text);
    min-height: 36px;
    padding: 7px 9px;
}

.apx-report-filter input {
    width: 110px;
}

.apx-report-filter select {
    min-width: 250px;
}

.apx-report-filter .apx-report-team-select {
    min-width: 150px;
    width: 150px;
}

.apx-report-filter .apx-report-month-select {
    min-width: 64px;
    width: 64px;
}

.apx-report-filter .apx-report-year-select {
    min-width: 52px;
    width: 52px;
}

.apx-report-cover h2 {
    color: var(--apx-text);
    font-size: 1.1rem;
    font-weight: 900;
    margin: 0 0 4px;
}

.apx-compact-title {
    margin-bottom: 6px;
}

.apx-compact-title h1 {
    font-size: 1.34rem;
    line-height: 1.05;
    margin-bottom: 4px;
}

.apx-compact-title p {
    font-size: 0.76rem;
    line-height: 1.25;
    margin-top: 0;
}

.apx-compact-admin {
    padding: 8px;
    overflow: visible;
}

.apx-compact-admin h5 {
    font-size: 0.84rem;
    margin-bottom: 6px;
}

.apx-admin-edit-table th {
    font-size: 0.55rem;
    padding: 5px 7px;
}

.apx-admin-edit-table td {
    font-size: 0.66rem;
    line-height: 1.1;
    padding: 4px 6px;
}

.apx-admin-edit-table input,
.apx-admin-edit-table select {
    border-radius: 7px;
    font-size: 0.68rem;
    min-height: 27px;
    padding: 4px 7px;
}

.apx-admin-edit-table select {
    font-size: 1rem;
}

.apx-admin-edit-table .apx-mini-month {
    min-width: 54px;
    width: 54px;
}

.apx-admin-edit-table .apx-mini-year {
    min-width: 44px;
    width: 44px;
}

.apx-admin-edit-table .apx-delta-box {
    min-width: 8ch;
    width: 8ch;
}

.apx-admin-edit-table .apx-demand-select {
    min-width: 112px;
    width: 112px;
}

.apx-facilitator-calendar-table {
    min-width: 1120px;
}

.apx-note-cell {
    max-width: 190px;
    min-width: 150px;
    position: relative;
}

.apx-note-cell input {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-compact-admin.mt-3 {
    margin-top: 6px;
}

.apx-note-hover {
    background: rgba(2, 6, 23, 0.96);
    border: 1px solid rgba(255, 59, 31, 0.48);
    border-radius: 10px;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.42);
    color: var(--apx-text-soft);
    display: block;
    font-size: 0.72rem;
    left: 0;
    line-height: 1.35;
    max-width: 340px;
    min-width: 220px;
    opacity: 0;
    padding: 9px 10px;
    pointer-events: none;
    position: absolute;
    top: calc(100% + 6px);
    transform: translateY(-4px);
    transition: opacity 120ms ease, transform 120ms ease;
    white-space: normal;
    z-index: 80;
}

.apx-note-cell:hover .apx-note-hover,
.apx-note-cell:focus-within .apx-note-hover {
    opacity: 1;
    transform: translateY(0);
}

.apx-table-actions {
    align-items: center;
    display: flex;
    gap: 5px;
    min-width: 118px;
}

.apx-table-actions form {
    margin: 0;
}

.apx-user-command {
    display: grid;
    gap: 14px;
}

.apx-staff-cohort-hero,
.apx-staff-decisions-hero,
.apx-staff-reports-hero {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
    padding: 12px 14px;
}

.apx-staff-cohort-hero .apx-staff-toolbar,
.apx-staff-decisions-hero .apx-staff-toolbar,
.apx-staff-reports-hero .apx-staff-toolbar {
    margin-bottom: 10px;
}

.apx-user-run-selector {
    align-items: end;
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin: 0 0 10px;
    padding-top: 8px;
}

.apx-user-run-selector label {
    display: grid;
    gap: 3px;
}

.apx-user-run-selector span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-user-run-selector select {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 850;
    height: 36px;
    min-height: 36px;
    min-width: 320px;
    padding: 5px 8px;
}

.apx-live-context-badge {
    align-items: center;
    align-self: end;
    animation: apxLiveContextPulse 1.6s ease-in-out infinite;
    background: rgba(245, 158, 11, 0.18);
    border: 1px solid rgba(245, 158, 11, 0.56);
    border-radius: 999px;
    color: #7a4300;
    display: inline-flex;
    font-size: 0.62rem;
    font-weight: 950;
    height: 36px;
    letter-spacing: 0.08em;
    padding: 0 12px;
}

@keyframes apxLiveContextPulse {
    0%,
    100% {
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.32);
    }
    50% {
        box-shadow: 0 0 0 5px rgba(245, 158, 11, 0);
    }
}

.apx-cycle-blocked-reason {
    color: #7f1d1d;
    display: inline-flex;
    font-size: 0.68rem;
    font-weight: 900;
    line-height: 1.15;
    max-width: 220px;
}

.apx-operations-readonly-note {
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(245, 158, 11, 0.34);
    border-radius: 8px;
    color: #6b3b00;
    font-size: 0.72rem;
    font-weight: 850;
    margin-top: 10px;
    padding: 9px 11px;
}

.apx-participant-onboarding {
    max-width: 980px;
}

.apx-onboarding-steps {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    margin-top: 18px;
}

.apx-onboarding-steps article {
    border: 1px solid var(--apx-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    padding: 14px;
}

.apx-onboarding-steps span {
    align-items: center;
    background: rgba(179, 32, 38, 0.12);
    border-radius: 999px;
    display: inline-flex;
    font-weight: 950;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.apx-onboarding-steps strong {
    font-size: 0.9rem;
    font-weight: 950;
}

.apx-onboarding-steps p,
.apx-onboarding-confirm span {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    line-height: 1.35;
    margin: 0;
}

.apx-onboarding-complete-form {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: space-between;
    margin-top: 18px;
}

.apx-onboarding-confirm {
    align-items: center;
    display: inline-flex;
    gap: 10px;
    max-width: 620px;
}

.apx-user-run-selector .apx-page-tool-link {
    align-items: center;
    background: rgba(179, 32, 38, 0.45);
    border: 1px solid rgba(179, 32, 38, 0.42);
    box-shadow: none;
    color: var(--apx-text);
    display: inline-flex;
    height: 36px;
    min-height: 36px;
    padding: 0 13px;
}

.apx-user-run-selector .apx-page-tool-link:hover {
    background: rgba(255, 59, 31, 0.45);
    border-color: rgba(255, 59, 31, 0.42);
    color: var(--apx-text);
}

.apx-user-stats {
    grid-template-columns: repeat(4, minmax(120px, 1fr));
}

.apx-user-action-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(280px, 1fr) minmax(280px, 1fr) minmax(240px, 0.8fr);
}

.apx-staff-cohort-actions {
    grid-template-columns: minmax(300px, 1fr) minmax(300px, 1fr) minmax(250px, 0.76fr);
}

.apx-user-panel {
    background: rgba(255, 250, 242, 0.82);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    display: grid;
    gap: 7px;
    margin: 0;
    padding: 8px;
}

.apx-user-panel > div:first-child {
    display: grid;
    gap: 2px;
}

.apx-user-panel > div:first-child > span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-user-panel h5,
.apx-user-table-card h5 {
    font-size: 0.86rem;
    margin: 0;
}

.apx-user-table-card .apx-section-heading {
    gap: 10px;
}

.apx-user-inline {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.apx-user-inline label,
.apx-user-filters label {
    display: grid;
    gap: 3px;
}

.apx-user-inline span,
.apx-user-filters span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-user-inline input,
.apx-user-inline select,
.apx-user-filters input,
.apx-user-filters select,
.apx-users-table input {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.72rem;
    min-height: 31px;
    padding: 5px 8px;
}

.apx-user-inline input[type="number"] {
    width: 94px;
}

.apx-user-inline input[name="username_prefix"] {
    width: 132px;
}

.apx-user-inline input[type="file"] {
    max-width: 230px;
}

.apx-user-create {
    margin-bottom: 10px;
}

.apx-staff-cohort-create {
    border-color: rgba(164, 124, 47, 0.18);
    margin-top: 10px;
}

.apx-user-create .apx-user-inline {
    padding-top: 8px;
}

.apx-user-filters {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end;
    margin: 0;
}

.apx-user-filters input {
    width: 210px;
}

.apx-user-filters select {
    width: 136px;
}

.apx-user-table-card {
    padding: 8px;
}

.apx-users-table {
    min-width: 980px;
}

.apx-users-table td:first-child strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.78rem;
}

.apx-user-badge {
    background: rgba(16, 185, 129, 0.12);
    border: 1px solid rgba(16, 185, 129, 0.28);
    border-radius: 999px;
    color: #168a4f;
    display: inline-flex;
    font-size: 0.56rem;
    font-weight: 850;
    margin-top: 4px;
    padding: 2px 6px;
    text-transform: uppercase;
}

.apx-user-actions {
    align-items: center;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    gap: 5px;
    min-width: 0;
    justify-content: end;
}

.apx-user-actions > * {
    position: relative;
}

.apx-user-actions form {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    margin: 0;
}

.apx-user-actions input {
    width: 66px;
}

.apx-facilitator-deliveries-table {
    min-width: 980px;
}

.apx-facilitator-deliveries-table td:last-child {
    text-align: right;
}

.apx-user-edit-panel {
    display: inline-flex;
    margin: 0;
}

.apx-admin-facilitator-manage-panel {
    position: relative;
}

.apx-admin-facilitator-manage-panel[open] {
    z-index: 12;
}

.apx-admin-facilitator-manage-panel[open] > .apx-admin-disclosure-body {
    background: rgba(255, 248, 240, 0.98);
    border: 1px solid rgba(212, 168, 87, 0.18);
    border-radius: 18px;
    box-shadow: 0 18px 42px rgba(13, 13, 13, 0.12);
    margin-top: 10px;
    max-width: min(760px, calc(100vw - 360px));
    min-width: 620px;
    padding: 16px;
    max-height: calc(100vh - 190px);
    overflow-y: auto;
    position: fixed;
    right: 28px;
    top: 170px;
    z-index: 1000;
}

.apx-admin-facilitator-manage-panel[open] .apx-admin-facilitator-manage-form {
    gap: 10px 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-facilitator-manage-panel[open] .apx-admin-action-row {
    justify-content: flex-start;
}

.apx-admin-facilitator-manage-panel[open] .apx-admin-checkbox-inline {
    grid-column: 1 / -1;
}

.apx-admin-workspace-card-facilitators .apx-admin-checkbox-inline {
    align-items: center;
    display: inline-flex;
    flex-direction: row;
    gap: 10px;
}

.apx-admin-workspace-card-facilitators .apx-admin-checkbox-inline input {
    margin: 0;
}

.apx-admin-workspace-card-facilitators .apx-admin-checkbox-inline span {
    margin: 0;
}

.apx-user-edit-panel summary {
    list-style: none;
}

.apx-user-edit-panel summary::-webkit-details-marker {
    display: none;
}

.apx-admin-visually-hidden {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.apx-admin-facilitator-actions {
    align-items: center;
    display: flex;
    gap: 8px;
}

.apx-admin-facilitator-actions .form-select {
    min-width: 170px;
}

.apx-admin-hidden-action-form {
    display: none;
}

.apx-admin-facilitator-manage-head {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
}

.apx-admin-facilitator-manage-head strong {
    color: #2b2113;
    font-size: 0.95rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-facilitator-manage-meta {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 12px;
}

.apx-admin-facilitator-manage-meta article {
    background: rgba(255, 248, 240, 0.94);
    border: 1px solid rgba(212, 168, 87, 0.18);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    padding: 10px 12px;
}

.apx-admin-facilitator-manage-meta span {
    color: #7c6a4c;
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-facilitator-manage-meta strong {
    color: #2b2113;
    font-size: 0.82rem;
    line-height: 1.35;
}

.apx-user-edit-form {
    align-items: end;
    background: rgba(255, 248, 240, 0.98);
    border: 1px solid rgba(212, 168, 87, 0.24);
    border-radius: 14px;
    box-shadow: 0 12px 28px rgba(13, 13, 13, 0.08);
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(130px, 1fr));
    margin-top: 8px;
    min-width: 480px;
    padding: 10px;
    position: absolute;
    right: 0;
    z-index: 6;
}

.apx-user-edit-form label,
.apx-ops-policy-inline label {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.apx-user-edit-form label span,
.apx-ops-policy-inline label span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-user-edit-form button {
    justify-self: start;
}

.apx-staff-decision-picker {
    align-items: end;
    grid-template-columns: minmax(260px, 420px) auto;
    margin: 0;
}

.apx-staff-decision-open-panel {
    background:
        radial-gradient(circle at top left, rgba(164, 124, 47, 0.08), transparent 36%),
        rgba(255, 250, 242, 0.92);
}

.apx-staff-decision-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.apx-staff-decision-link {
    align-items: center;
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(164, 124, 47, 0.16);
    border-radius: 10px;
    color: var(--apx-text);
    display: flex;
    gap: 10px;
    justify-content: space-between;
    min-height: 44px;
    padding: 10px 12px;
}

.apx-staff-decision-link:hover {
    border-color: rgba(164, 124, 47, 0.34);
    color: var(--apx-text);
}

.apx-staff-decision-link span {
    font-weight: 900;
}

.apx-staff-decision-link strong {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-flash-stack {
    display: grid;
    gap: 8px;
    margin-bottom: 10px;
}

.apx-flash {
    background: rgba(15, 23, 42, 0.92);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 10px;
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 750;
    line-height: 1.38;
    overflow-wrap: anywhere;
    padding: 9px 11px;
    white-space: normal;
}

.apx-flash-success {
    border-color: rgba(34, 197, 94, 0.38);
}

.apx-flash-warning,
.apx-flash-error,
.apx-flash-danger {
    border-color: rgba(245, 158, 11, 0.45);
}

.apx-version-footer {
    align-items: center;
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    bottom: 14px;
    color: #e2e8f0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    position: fixed;
    right: 18px;
    padding: 8px 12px;
    z-index: 85;
}

.apx-version-footer-label {
    color: #94a3b8;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-version-footer strong {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.78rem;
    font-weight: 900;
}

.apx-version-footer span {
    font-size: 0.72rem;
    font-weight: 800;
}

.apx-session-control {
    align-items: center;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 10px;
    padding: 10px 12px;
}

.apx-session-control span {
    color: var(--apx-text-soft);
    font-size: 0.8rem;
    font-weight: 800;
}

.apx-session-control form {
    margin: 0;
}

.apx-decision-pill {
    align-items: center;
    border: 1px solid rgba(207, 163, 73, 0.34);
    border-radius: 12px;
    display: grid;
    gap: 2px;
    min-width: 170px;
    padding: 8px 12px;
}

.apx-decision-pill span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-decision-pill strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
}

.apx-decision-pill.is-on {
    border-color: rgba(34, 197, 94, 0.45);
}

.apx-decision-pill.is-off {
    border-color: rgba(245, 158, 11, 0.45);
}

.apx-signal-list {
    display: grid;
    gap: 8px;
}

.apx-signal-list div {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(207, 163, 73, 0.22);
    border-radius: 10px;
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 750;
    padding: 9px 10px;
}

.apx-team-glance-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr;
}

.apx-team-glance {
    align-items: center;
    background: rgba(2, 6, 23, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.86);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(120px, 170px) minmax(0, 1fr) minmax(62px, auto);
    padding: 8px 10px;
}

.apx-team-glance.is-strong { border-color: rgba(34, 197, 94, 0.45); }
.apx-team-glance.is-watch { border-color: rgba(245, 158, 11, 0.5); }
.apx-team-glance.is-risk { border-color: rgba(244, 63, 94, 0.5); }

.apx-team-glance header,
.apx-team-glance footer {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.apx-team-glance header {
    display: grid;
    gap: 2px;
}

.apx-team-glance header strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
}

.apx-team-glance header span,
.apx-team-glance footer {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-team-glance footer {
    justify-content: flex-end;
    text-align: right;
}

.apx-mini-metrics {
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(76px, 0.9fr) minmax(66px, 0.72fr) minmax(104px, 1.15fr) minmax(60px, 0.66fr) minmax(60px, 0.66fr) minmax(78px, 0.82fr);
    margin: 0;
}

.apx-mini-metrics div {
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(51, 65, 85, 0.7);
    border-radius: 9px;
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 6px 8px;
}

.apx-mini-metrics div.is-strong { border-color: rgba(34, 197, 94, 0.42); }
.apx-mini-metrics div.is-watch { border-color: rgba(245, 158, 11, 0.44); }
.apx-mini-metrics div.is-risk { border-color: rgba(244, 63, 94, 0.44); }

.apx-mini-metrics span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-mini-metrics b {
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-print-report {
    page-break-after: always;
}

@media print {
    .apx-sidebar,
    .apx-bg-grid,
    .no-print {
        display: none !important;
    }

    body {
        background: #fff;
        color: #111827;
    }

    .apx-main {
        max-width: none;
        padding: 0;
    }

    .apx-card,
    .apx-decision-section {
        background: #fff !important;
        border-color: #d1d5db !important;
        box-shadow: none !important;
        page-break-inside: avoid;
    }

    .apx-report-cover,
    .apx-print-report {
        page-break-after: auto;
    }

    .apx-menu-table th,
    .apx-menu-table td,
    .apx-page-title h1,
    .apx-page-title p,
    .apx-card h5 {
        color: #111827 !important;
    }
}

.apx-compact-note p {
    line-height: 1.45;
}

.apx-decision-intel {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
}

.apx-decision-intel article {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 12px;
    display: grid;
    gap: 8px;
    padding: 12px;
}

.apx-decision-intel span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-decision-intel strong {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 900;
}

.apx-decision-intel p {
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    line-height: 1.45;
    margin: 0;
}

.apx-decision-intel b {
    color: var(--apx-text);
}

.apx-option-ladder {
    display: grid;
    gap: 7px;
}

.apx-option-ladder div {
    align-items: start;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 8px;
    grid-template-columns: 62px 1fr;
    padding: 8px;
}

.apx-option-ladder em {
    color: #cfa349;
    font-size: 0.76rem;
    font-style: normal;
    font-weight: 900;
}

.apx-option-ladder small {
    color: var(--apx-text-muted);
    font-size: 0.75rem;
    line-height: 1.35;
}

.apx-section-intel {
    border-top: 1px solid rgba(51, 65, 85, 0.78);
    margin: 0;
    padding: 0 18px 16px;
}

.apx-section-intel > summary {
    background: rgba(207, 163, 73, 0.12);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 10px;
    color: var(--apx-text-soft);
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 900;
    list-style: none;
    margin-top: 14px;
    padding: 10px 12px;
}

.apx-section-intel > summary::-webkit-details-marker {
    display: none;
}

.apx-section-intel > summary::after {
    color: var(--apx-text-muted);
    content: "Open";
    float: right;
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-section-intel[open] > summary {
    margin-bottom: 12px;
}

.apx-section-intel[open] > summary::after {
    content: "Close";
}

.apx-setting-toggle {
    align-items: flex-start;
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 12px;
    display: flex;
    gap: 12px;
    padding: 14px;
}

.apx-setting-toggle input {
    accent-color: var(--apx-accent);
    height: 20px;
    margin-top: 2px;
    width: 20px;
}

.apx-setting-toggle span {
    display: grid;
    gap: 5px;
}

.apx-setting-toggle strong {
    color: var(--apx-text);
    font-weight: 900;
}

.apx-setting-toggle small,
.apx-setting-scenarios span {
    color: var(--apx-text-muted);
    line-height: 1.45;
}

.apx-setting-scenarios {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 14px;
}

.apx-setting-scenarios div {
    background: rgba(15, 23, 42, 0.68);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 10px;
    display: grid;
    gap: 4px;
    padding: 12px;
}

.apx-setting-scenarios strong {
    color: var(--apx-text-soft);
}

.apx-settings-grid {
    display: grid;
    gap: 9px;
}

.apx-settings-panel {
    padding: 12px 14px;
}

.apx-settings-section-tabs {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
    margin: -4px 0 12px;
}

.apx-settings-section-tabs a {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    color: var(--apx-text-soft);
    font-size: 0.8rem;
    font-weight: 900;
    padding: 8px 11px;
    text-align: center;
}

.apx-settings-status-strip {
    margin-bottom: 12px;
    padding: 10px 12px;
}

.apx-settings-status-strip .apx-staff-toolbar {
    margin-bottom: 0;
}

.apx-settings-readiness-strip {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: max-content minmax(0, 1fr);
    padding: 10px 14px;
}

.apx-settings-strip-title {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-settings-strip-title span {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-settings-readiness-line {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.apx-settings-readiness-item {
    align-items: baseline;
    border-left: 1px solid rgba(33, 29, 24, 0.12);
    display: inline-flex;
    gap: 6px;
    min-height: 24px;
    padding-left: 10px;
}

.apx-settings-readiness-item small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-settings-readiness-item strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 900;
    line-height: 1.2;
}

.apx-settings-section-tabs a:hover {
    border-color: rgba(164, 124, 47, 0.26);
    color: var(--apx-text);
}

.apx-settings-cluster-grid {
    display: grid;
    gap: 10px;
}

.apx-settings-cluster {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    padding: 11px;
}

.apx-settings-launch-controls {
    align-items: end;
    grid-template-columns: minmax(220px, 1.28fr) minmax(160px, 0.78fr) minmax(76px, 0.32fr) minmax(150px, 0.64fr) minmax(150px, 0.64fr);
}

.apx-facilitator-setup-steps {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.apx-facilitator-setup-steps-core {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-facilitator-setup-step {
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 6px;
    min-height: 100%;
    padding: 12px;
    transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.apx-facilitator-setup-step:hover {
    border-color: rgba(207, 163, 73, 0.4);
    box-shadow: 0 10px 20px rgba(50, 39, 26, 0.06);
    transform: translateY(-1px);
}

.apx-facilitator-setup-step span {
    align-self: start;
    background: rgba(207, 163, 73, 0.16);
    border-radius: 999px;
    color: var(--apx-text);
    display: inline-flex;
    font-size: 0.68rem;
    font-weight: 900;
    justify-content: center;
    min-width: 1.9rem;
    padding: 3px 8px;
    width: fit-content;
}

.apx-facilitator-setup-step strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 900;
}

.apx-facilitator-setup-step small {
    color: var(--apx-text-muted);
    line-height: 1.35;
}

.apx-facilitator-start-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.apx-facilitator-start-card {
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 6px;
    padding: 12px;
}

.apx-facilitator-start-card span {
    align-self: start;
    background: rgba(180, 50, 40, 0.16);
    border-radius: 999px;
    color: var(--apx-text);
    display: inline-flex;
    font-size: 0.68rem;
    font-weight: 900;
    justify-content: center;
    min-width: 1.9rem;
    padding: 3px 8px;
    width: fit-content;
}

.apx-facilitator-start-card strong {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
}

.apx-facilitator-start-card small {
    color: var(--apx-text-muted);
    line-height: 1.35;
}

.apx-facilitator-start-foot {
    align-items: baseline;
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    gap: 8px;
    margin-top: 10px;
    padding-top: 10px;
}

.apx-facilitator-start-foot strong {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-facilitator-start-foot span {
    color: var(--apx-text);
    font-weight: 850;
}

.apx-facilitator-dashboard-details {
    padding-bottom: 12px;
}

.apx-facilitator-dashboard-details > summary {
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 900;
    list-style: none;
    margin: 0 0 10px;
}

.apx-facilitator-dashboard-details > summary::-webkit-details-marker {
    display: none;
}

.apx-facilitator-dashboard-details[open] > summary {
    margin-bottom: 12px;
}

.apx-facilitator-delivery-controls {
    grid-template-columns: minmax(230px, 1.35fr) minmax(168px, 0.9fr) minmax(168px, 0.9fr) minmax(140px, 0.7fr) minmax(180px, 0.95fr) minmax(180px, 0.95fr) auto;
}

.apx-facilitator-delivery-controls button {
    align-self: end;
}

.apx-facilitator-compact-details {
    padding-bottom: 12px;
}

.apx-facilitator-compact-details > summary {
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 900;
    list-style: none;
    margin: 0 0 10px;
}

.apx-facilitator-compact-details > summary::-webkit-details-marker {
    display: none;
}

.apx-facilitator-compact-details[open] > summary {
    margin-bottom: 12px;
}

.apx-facilitator-defaults-details .apx-settings-summary-grid {
    margin-top: 12px;
}

.apx-facilitator-quick-setup .apx-settings-head p {
    max-width: 760px;
}

.apx-facilitator-quick-setup .apx-facilitator-delivery-controls {
    margin-bottom: 4px;
}

.apx-facilitator-settings-stack {
    display: grid;
    gap: 12px;
}

.apx-facilitator-settings-card {
    padding-bottom: 12px;
}

.apx-settings-primary-panel {
    display: grid;
    gap: 12px;
}

.apx-facilitator-settings-card > summary {
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.82rem;
    font-weight: 900;
    list-style: none;
    margin: 0 0 12px;
}

.apx-facilitator-settings-card > summary::-webkit-details-marker {
    display: none;
}

.apx-facilitator-settings-card[open] > summary {
    margin-bottom: 14px;
}

.apx-facilitator-card-meta {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    min-width: 210px;
    padding: 10px 12px;
}

.apx-facilitator-card-meta span {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-facilitator-card-meta strong {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
    line-height: 1.18;
}

.apx-facilitator-card-meta small {
    color: var(--apx-text-muted);
    line-height: 1.35;
}

.apx-facilitator-scenario-form,
.apx-facilitator-report-release-form {
    display: grid;
    gap: 12px;
}

.apx-facilitator-startup-rail {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-facilitator-startup-rail article,
.apx-facilitator-startup-note {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 11px 13px;
}

.apx-facilitator-startup-rail span {
    color: var(--apx-text-muted);
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-facilitator-startup-rail strong,
.apx-facilitator-startup-note strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.28;
}

.apx-facilitator-startup-rail small,
.apx-facilitator-startup-note p {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
}

.apx-facilitator-custom-composition {
    margin-top: -2px;
}

.apx-settings-essential-grid {
    align-items: end;
    grid-template-columns: repeat(auto-fit, minmax(184px, 1fr));
}

.apx-settings-essential-actions {
    align-self: end;
}

.apx-settings-disclosure-toggle {
    align-items: center;
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.2);
    border-radius: 12px;
    color: var(--apx-text);
    cursor: pointer;
    display: flex;
    font-size: 0.82rem;
    font-weight: 900;
    justify-content: space-between;
    padding: 11px 13px;
    width: 100%;
}

.apx-settings-disclosure-toggle [data-settings-adjust-label] {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-settings-adjust-panel {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    padding-top: 12px;
}

.apx-settings-adjust-continuation {
    display: grid;
    gap: 12px;
}

.apx-settings-adjust-panel[hidden],
.apx-settings-adjust-continuation[hidden] {
    display: none;
}

.apx-settings-subsection {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 10px;
    padding-top: 12px;
}

.apx-settings-subsection[data-economic-custom-panel][hidden] {
    display: none;
}

.apx-settings-subsection > summary {
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.88rem;
    font-weight: 900;
    list-style: none;
}

.apx-settings-subsection > summary::-webkit-details-marker {
    display: none;
}

.apx-settings-subsection[open] > summary {
    margin-bottom: 2px;
}

.apx-settings-optional-grid {
    grid-template-columns: repeat(auto-fit, minmax(184px, 1fr));
}

.apx-facilitator-scenario-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(172px, 1fr));
}

.apx-facilitator-scenario-grid label,
.apx-facilitator-report-depth {
    display: grid;
    gap: 6px;
}

.apx-facilitator-scenario-grid label > span,
.apx-facilitator-report-depth > span,
.apx-facilitator-scenario-import label > span {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-facilitator-scenario-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.apx-facilitator-secondary-button {
    align-items: center;
    appearance: none;
    cursor: pointer;
    display: inline-flex;
    justify-content: center;
    min-height: 40px;
}

.apx-settings-utility-grid {
    display: grid;
    gap: 12px;
}

.apx-settings-utility-grid h5 {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
    margin: 0;
}

.apx-settings-utility-actions {
    display: grid;
    gap: 10px;
}

.apx-facilitator-scenario-import {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: 2px;
}

.apx-facilitator-scenario-files {
    display: grid;
    gap: 8px;
    margin-top: 4px;
}

.apx-facilitator-scenario-files-head {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.apx-facilitator-scenario-files-head strong {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
}

.apx-facilitator-scenario-files-head span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
}

.apx-facilitator-scenario-file-row {
    align-items: center;
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto auto;
    padding: 10px 12px;
}

.apx-facilitator-scenario-file-row strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1.2;
}

.apx-facilitator-scenario-file-row small {
    color: var(--apx-text-muted);
    display: block;
    line-height: 1.35;
}

.apx-facilitator-scenario-file-meta {
    color: var(--apx-text-muted);
    display: grid;
    gap: 3px;
    font-size: 0.72rem;
    text-align: right;
}

.apx-facilitator-report-release-list {
    display: grid;
    gap: 8px;
}

.apx-facilitator-report-release-list-two-up {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-facilitator-report-release-row {
    align-items: center;
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) minmax(160px, 0.62fr) auto;
    padding: 10px 12px;
}

.apx-facilitator-report-release-copy {
    display: grid;
    gap: 3px;
}

.apx-facilitator-report-release-copy strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 900;
}

.apx-facilitator-report-release-copy small {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
}

.apx-facilitator-report-release-actions {
    align-items: center;
    display: flex;
    gap: 10px;
}

.apx-settings-table-toolbar {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(240px, 1fr) auto;
}

.apx-economic-settings-summary,
.apx-economic-register-lead {
    display: grid;
    gap: 1rem;
}

.apx-economic-status-grid,
.apx-economic-definition-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.apx-economic-status-grid article,
.apx-economic-definition-grid > div {
    min-width: 0;
    padding: 0.8rem 0.9rem;
    border: 1px solid var(--apx-border, #ddd4c3);
    border-radius: 0.75rem;
    background: var(--apx-surface-soft, #faf7f0);
}

.apx-economic-status-grid small,
.apx-economic-definition-grid dt {
    display: block;
    margin-bottom: 0.3rem;
    color: var(--apx-text-muted, #6c6255);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-economic-status-grid strong,
.apx-economic-definition-grid dd {
    overflow-wrap: anywhere;
}

.apx-economic-definition-grid dd {
    margin: 0;
}

.apx-economic-definition-wide {
    grid-column: 1 / -1;
}

.apx-economic-disclosure,
.apx-economic-blockers {
    padding: 0.8rem 0.9rem;
    border-left: 4px solid var(--apx-gold, #c89b3c);
    background: var(--apx-surface-soft, #faf7f0);
}

.apx-economic-blockers h3 {
    margin: 0 0 0.4rem;
    font-size: 1rem;
}

.apx-economic-blockers ul {
    margin: 0;
}

.apx-economic-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: end;
}

.apx-economic-actions form {
    display: grid;
    gap: 0.45rem;
    min-width: min(100%, 20rem);
}

.apx-economic-actions select {
    min-height: 2.75rem;
}

.apx-economic-register-stack {
    display: grid;
    gap: 1rem;
}

.apx-economic-register-stack details > summary {
    cursor: pointer;
}

.apx-economic-register-stack details > summary h2 {
    display: inline;
    font-size: 1.05rem;
}

.apx-economic-table-wrap {
    max-width: 100%;
    overflow-x: auto;
    outline-offset: 0.25rem;
}

.apx-economic-register-table {
    width: 100%;
    min-width: 52rem;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.apx-economic-register-table caption {
    padding: 0.7rem 0;
    text-align: left;
    font-weight: 700;
}

.apx-economic-register-table th,
.apx-economic-register-table td {
    max-width: 24rem;
    padding: 0.65rem;
    border-bottom: 1px solid var(--apx-border, #ddd4c3);
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.apx-economic-register-table th {
    background: var(--apx-surface-soft, #faf7f0);
}

@media (max-width: 900px) {
    .apx-economic-status-grid,
    .apx-economic-definition-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .apx-economic-status-grid,
    .apx-economic-definition-grid {
        grid-template-columns: 1fr;
    }
}

.apx-facilitator-compact-table th,
.apx-facilitator-compact-table td {
    padding: 9px 14px;
    vertical-align: middle;
}

.apx-facilitator-compact-table td:first-child,
.apx-facilitator-compact-table th:first-child {
    width: 72px;
}

.apx-facilitator-compact-table td:last-child,
.apx-facilitator-compact-table th:last-child {
    width: 112px;
}

.apx-facilitator-compact-table td strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1.25;
    margin-right: 4px;
}

.apx-facilitator-compact-table td small {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.apx-facilitator-governed-form,
.apx-facilitator-decision-form {
    display: grid;
    gap: 12px;
}

.apx-facilitator-governed-grid,
.apx-facilitator-decision-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-facilitator-governed-grid-fixed {
    grid-template-columns: 1fr;
}

.apx-facilitator-decision-grid-full {
    grid-template-columns: 1fr;
}

.apx-facilitator-governed-card,
.apx-facilitator-decision-card {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 16px;
}

.apx-facilitator-decision-card > summary {
    min-height: 48px;
}

.apx-facilitator-governed-card-fixed {
    display: grid;
    gap: 10px;
    padding: 14px 14px 12px;
}

.apx-facilitator-governed-card-head {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.apx-facilitator-governed-card-head .apx-feature-toggle-main {
    flex: 1 1 auto;
}

.apx-facilitator-governed-card .apx-feature-toggle-body,
.apx-facilitator-decision-card .apx-feature-toggle-body {
    grid-template-columns: 1fr;
    padding-bottom: 10px;
}

.apx-facilitator-decision-all-toggle {
    align-items: center;
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    color: var(--apx-text);
    cursor: pointer;
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    min-height: 48px;
    padding: 0 14px;
}

.apx-facilitator-decision-all-toggle input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    width: 16px;
}

.apx-facilitator-decision-all-toggle span {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 900;
}

.apx-facilitator-decision-feature-list {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-facilitator-decision-feature-list-four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-facilitator-decision-feature {
    align-items: center;
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(164, 124, 47, 0.1);
    border-radius: 12px;
    display: flex;
    gap: 10px;
    min-height: 40px;
    padding: 8px 10px;
}

.apx-facilitator-decision-feature input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    width: 16px;
}

.apx-facilitator-decision-feature span {
    color: var(--apx-text-soft);
    font-size: 0.84rem;
    font-weight: 650;
    line-height: 1.28;
}

.apx-facilitator-decision-body-copy {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    line-height: 1.35;
    margin: 8px 0 0;
}

.apx-facilitator-card-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.apx-facilitator-advanced-details .apx-settings-head {
    margin-top: 4px;
}

.apx-delivery-readiness-alert {
    grid-column: 1 / -1;
    margin: 0;
}

.apx-settings-summary-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-settings-summary-grid article,
.apx-rubric-transfer-note {
    background: rgba(255, 250, 242, 0.8);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 5px;
    padding: 12px;
}

.apx-settings-summary-grid span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-settings-summary-grid strong,
.apx-rubric-transfer-note strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.24;
}

.apx-settings-summary-grid small,
.apx-rubric-transfer-note small {
    color: var(--apx-text-muted);
    line-height: 1.34;
}

.apx-settings-head {
    align-items: baseline;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apx-settings-head h5 {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 900;
    margin: 0;
}

.apx-settings-head p {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    line-height: 1.35;
    margin: 0;
    text-align: right;
}

.apx-settings-controls {
    display: grid;
    gap: 8px;
    grid-template-columns: 1.2fr 0.7fr 0.35fr 0.7fr 0.7fr;
}

.apx-currency-controls {
    grid-template-columns: 0.8fr 0.7fr 0.9fr;
    margin-top: 8px;
    max-width: 520px;
}

.apx-context-controls {
    align-items: end;
    grid-template-columns: minmax(150px, 0.72fr) minmax(190px, 0.9fr) minmax(190px, 0.88fr) minmax(190px, 0.88fr);
    margin-top: 8px;
}

.apx-settings-controls label {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-settings-controls label > span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-settings-controls select,
.apx-settings-controls input {
    min-width: 0;
    width: 100%;
}

.apx-settings-controls select {
    height: 40px;
    min-height: 40px;
}

.apx-facilitator-readonly-grid {
    align-items: stretch;
}

.apx-control-inline-toggle-readonly {
    min-height: 54px;
}

.apx-control-inline-toggle-readonly .apx-status-dot {
    flex: 0 0 auto;
    margin-top: 2px;
}

.apx-control-inline-toggle-readonly span {
    display: block;
    font-weight: 650;
}

.apx-facilitator-summary-grid-compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-facilitator-module-summary {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

.apx-facilitator-module-summary header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.apx-facilitator-module-summary header strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 800;
}

.apx-facilitator-module-summary header span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 650;
}

.apx-facilitator-module-summary > p {
    color: var(--apx-text-muted);
    font-size: 0.8rem;
    line-height: 1.4;
    margin: 0;
}

.apx-facilitator-feature-list {
    display: grid;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.apx-facilitator-feature-list li {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.apx-facilitator-feature-list span {
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 600;
}

.apx-facilitator-feature-list small {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 500;
}

.apx-settings-switch-row {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 9px;
}

.apx-module-toggle-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.apx-module-toggle-grid-compact {
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(175px, 1fr));
}

.apx-module-toggle {
    align-items: flex-start;
    background: rgba(2, 6, 23, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 10px;
    display: flex;
    gap: 8px;
    padding: 9px;
}

.apx-module-toggle input {
    accent-color: var(--apx-accent);
    height: 18px;
    margin-top: 2px;
    width: 18px;
}

.apx-module-toggle span {
    display: grid;
    gap: 4px;
}

.apx-module-toggle strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
}

.apx-module-toggle small,
.apx-settings-actions span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    line-height: 1.4;
}

.apx-settings-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.apx-calendar-transfer-actions {
    align-items: end;
    gap: 12px;
}

.apx-calendar-transfer-form {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(220px, 1fr) minmax(190px, 0.7fr) auto;
    flex: 1 1 560px;
    margin-left: auto;
}

.apx-calendar-transfer-form label {
    margin: 0;
}

.apx-calendar-transfer-form label span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.apx-calendar-transfer-form input,
.apx-calendar-transfer-form select {
    min-width: 0;
    width: 100%;
}

.apx-settings-form-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
}

.apx-settings-form-actions span {
    color: var(--apx-text-muted);
    flex: 1 1 280px;
    font-size: 0.8rem;
    font-weight: 700;
}

.apx-settings-transfer-grid .apx-staff-operations-card {
    min-height: 176px;
}

.apx-settings-transfer-grid .apx-settings-actions,
.apx-rubric-transfer-grid .apx-settings-actions {
    align-items: flex-start;
}

.apx-setting-toggle-compact {
    border-radius: 10px;
    gap: 9px;
    padding: 9px 10px;
}

.apx-setting-toggle-compact input {
    height: 17px;
    width: 17px;
}

.apx-setting-toggle-compact small {
    font-size: 0.72rem;
}

.apx-rubric-transfer-grid-inline {
    margin-top: 10px;
}

.apx-settings-savebar {
    align-items: center;
    background: linear-gradient(135deg, rgba(255, 252, 246, 0.98), rgba(248, 241, 230, 0.94));
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    box-shadow: 0 16px 42px rgba(84, 76, 65, 0.08);
    color: var(--apx-text-soft);
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
    padding: 10px 12px;
}

.apx-settings-savebar span {
    color: var(--apx-text-soft);
    flex: 1 1 260px;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.35;
}

.apx-settings-savebar .btn {
    min-height: 38px;
    padding-inline: 16px;
}

.apx-feature-settings-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
}

.apx-decision-access-grid {
    grid-template-columns: repeat(auto-fit, minmax(315px, 1fr));
}

.apx-decision-access-columns {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-decision-access-table-stack {
    display: grid;
    gap: 8px;
}

.apx-decision-access-table {
    background: rgba(255, 252, 246, 0.58);
    border-radius: 14px;
    overflow: hidden;
}

.apx-decision-access-table > summary {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(180px, 0.9fr) minmax(120px, 1fr) auto 22px;
    list-style: none;
    padding: 9px 12px;
}

.apx-decision-access-table > summary::-webkit-details-marker {
    display: none;
}

.apx-decision-access-table > summary::after {
    color: var(--apx-text-muted);
    content: "v";
    font-size: 0.9rem;
    line-height: 1;
    text-align: right;
}

.apx-decision-access-table[open] > summary::after {
    content: "^";
}

.apx-decision-access-summary-main {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    min-width: 0;
}

.apx-decision-access-summary-main input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-decision-access-summary-main span,
.apx-decision-access-table > summary strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 650;
    line-height: 1.25;
}

.apx-decision-access-summary-main span {
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-decision-access-table > summary em {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-style: normal;
    font-weight: 500;
    justify-self: end;
    line-height: 1.2;
}

.apx-decision-access-table-body {
    display: grid;
    gap: 2px;
    padding: 0 12px 10px;
}

.apx-decision-access-table-head,
.apx-decision-access-table-row {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: 34px minmax(150px, 0.9fr) minmax(120px, 0.45fr) minmax(260px, 1.6fr);
}

.apx-decision-access-table-head {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 2px 0 4px;
    text-transform: uppercase;
}

.apx-decision-access-table-row {
    background: rgba(255, 255, 255, 0.34);
    border-radius: 9px;
    min-height: 34px;
    padding: 5px 0;
}

.apx-decision-access-table-check {
    display: flex;
    justify-content: center;
}

.apx-decision-access-table-check input {
    accent-color: var(--apx-accent);
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-decision-access-table-title {
    color: var(--apx-text);
    font-size: 0.78rem;
    font-weight: 400;
    letter-spacing: normal;
    text-transform: capitalize;
}

.apx-decision-access-table .apx-feature-state-inline,
.apx-decision-access-table .apx-feature-state-badge,
.apx-decision-access-table-detail {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: normal;
    text-transform: none;
}

.apx-decision-controls-shell {
    display: grid;
    gap: 10px;
}

.apx-decision-access-column {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.apx-control-inline-grid {
    display: grid;
    gap: 8px;
}

.apx-control-inline-grid-two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-control-inline-grid-three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-control-inline-grid-four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-control-inline-grid-tight {
    gap: 6px;
}

.apx-control-inline-toggle {
    align-items: center;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 12px;
    display: flex;
    gap: 10px;
    min-height: 42px;
    padding: 9px 12px;
}

.apx-control-inline-toggle input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    width: 16px;
}

.apx-control-inline-toggle span {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.28;
}

.apx-control-inline-toggle span small {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.4;
    margin-top: 3px;
}

.apx-controls-inline-note {
    margin: 4px 0 10px;
}

.apx-decision-access-inline-row {
    margin-bottom: 2px;
}

.apx-feature-settings {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 11px;
    overflow: hidden;
}

.apx-feature-settings summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    list-style: none;
    padding: 8px 10px;
}

.apx-feature-settings summary::-webkit-details-marker {
    display: none;
}

.apx-feature-settings summary strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 800;
}

.apx-feature-settings summary span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.apx-feature-settings > div {
    border-top: 1px solid rgba(164, 124, 47, 0.12);
    display: grid;
    gap: 0;
}

.apx-module-master-toggle {
    background: rgba(212, 168, 87, 0.1);
    border: 0;
    border-bottom: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 0;
}

.apx-module-master-toggle strong {
    color: var(--apx-text);
}

.apx-feature-subgrid {
    display: grid;
    gap: 0;
}

.apx-feature-toggle {
    background: transparent;
    border: 0;
}

.apx-feature-toggle + .apx-feature-toggle {
    border-top: 1px solid rgba(164, 124, 47, 0.12);
}

.apx-feature-toggle summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    list-style: none;
    padding: 7px 10px;
}

.apx-feature-toggle summary::-webkit-details-marker {
    display: none;
}

.apx-feature-toggle-main {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 0;
}

.apx-feature-toggle-main strong {
    overflow-wrap: anywhere;
}

.apx-feature-toggle-label {
    color: var(--apx-text-soft);
    font-size: 0.86rem;
    font-weight: 650;
    line-height: 1.34;
    overflow-wrap: anywhere;
}

.apx-feature-toggle input,
.apx-feature-toggle-indicator {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    width: 16px;
}

.apx-feature-toggle-indicator {
    border: 1px solid rgba(212, 168, 87, 0.34);
    border-radius: 999px;
    display: inline-block;
}

.apx-feature-toggle-indicator.is-passive {
    background: rgba(212, 168, 87, 0.18);
}

.apx-feature-toggle-indicator.is-fixed {
    background: rgba(134, 239, 172, 0.2);
    border-color: rgba(134, 239, 172, 0.36);
}

.apx-feature-toggle strong {
    color: var(--apx-text-soft);
    font-size: 0.86rem;
    font-weight: 750;
}

.apx-feature-toggle-body {
    align-items: start;
    border-top: 1px solid rgba(164, 124, 47, 0.1);
    display: grid;
    gap: 7px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 0 10px 8px 34px;
}

.apx-feature-toggle-body p {
    color: var(--apx-text-muted);
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.38;
    margin: 0;
}

.apx-feature-toggle-collapsible summary::after {
    color: var(--apx-text-muted);
    content: "+";
    font-size: 0.84rem;
    font-weight: 800;
    line-height: 1;
}

.apx-feature-toggle-collapsible[open] summary::after {
    content: "−";
}

.apx-feature-state-inline {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 600;
}

.apx-feature-state-badge {
    align-items: center;
    background: rgba(212, 168, 87, 0.12);
    border: 1px solid rgba(212, 168, 87, 0.28);
    border-radius: 999px;
    color: var(--apx-text);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.76rem;
    font-weight: 850;
    min-height: 34px;
    padding: 0 12px;
    white-space: nowrap;
}

.apx-admin-workspace-card-controls .apx-control-inline-toggle span {
    font-weight: 600;
}

.apx-admin-workspace-card-controls .apx-feature-settings summary strong {
    font-weight: 700;
}

.apx-admin-workspace-card-controls .apx-feature-toggle strong {
    font-weight: 650;
}

.apx-admin-workspace-card-controls .apx-feature-toggle-body p {
    font-weight: 400;
}

.apx-admin-workspace-card-controls .apx-feature-state-inline,
.apx-admin-workspace-card-controls .apx-feature-state-badge {
    font-weight: 600;
}

.apx-report-access-sheet td,
.apx-report-access-sheet th {
    vertical-align: middle;
}

.apx-report-access-sheet-wrap {
    margin-top: 0;
}

.apx-report-access-sheet th:nth-child(1),
.apx-report-access-sheet td:nth-child(1) {
    width: 52px;
}

.apx-report-access-sheet th:nth-child(3),
.apx-report-access-sheet th:nth-child(4),
.apx-report-access-sheet td:nth-child(3),
.apx-report-access-sheet td:nth-child(4) {
    text-align: center;
    width: 72px;
}

.apx-report-access-sheet th:nth-child(5),
.apx-report-access-sheet td:nth-child(5) {
    width: 130px;
}

.apx-report-access-title {
    align-items: baseline;
    display: flex;
    gap: 5px;
    min-width: 0;
}

.apx-report-access-title strong {
    font-size: 0.88rem;
    font-weight: 750;
}

.apx-report-access-title small {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 400;
    line-height: 1.25;
    white-space: nowrap;
}

.apx-report-access-sheet-compact th {
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    padding-top: 7px;
    padding-bottom: 7px;
}

.apx-report-access-sheet-compact td {
    padding-top: 8px;
    padding-bottom: 8px;
}

.apx-admin-governance-card .apx-command-metric-grid {
    gap: 12px;
}

.apx-admin-governance-report-wrap {
    overflow-x: visible;
}

.apx-admin-governance-report-table {
    table-layout: fixed;
    min-width: 0;
    width: 100%;
}

.apx-admin-governance-report-table th:nth-child(1),
.apx-admin-governance-report-table td:nth-child(1) {
    width: auto;
}

.apx-admin-governance-report-table th:nth-child(2),
.apx-admin-governance-report-table th:nth-child(3),
.apx-admin-governance-report-table th:nth-child(4),
.apx-admin-governance-report-table td:nth-child(2),
.apx-admin-governance-report-table td:nth-child(3),
.apx-admin-governance-report-table td:nth-child(4) {
    text-align: center;
    width: 60px;
}

.apx-admin-governance-report-cell {
    min-width: 0;
}

.apx-admin-governance-report-line {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 6px;
}

.apx-admin-governance-report-name {
    color: var(--apx-text);
    font-size: 0.85rem;
    font-weight: 750;
    line-height: 1.28;
}

.apx-admin-governance-report-purpose {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    line-height: 1.34;
}

.apx-admin-governance-compact-sheet-wrap {
    overflow-x: visible;
}

.apx-admin-governance-compact-sheet {
    min-width: 0;
    table-layout: fixed;
    width: 100%;
}

.apx-admin-governance-compact-sheet td {
    padding-top: 10px;
    padding-bottom: 10px;
    vertical-align: top;
}

.apx-admin-governance-compact-sheet td:first-child {
    padding-left: 14px;
    padding-right: 0;
    width: 42px;
}

.apx-admin-governance-compact-sheet td:last-child {
    padding-left: 0;
}

.apx-admin-governance-compact-check {
    text-align: center;
    vertical-align: middle;
}

.apx-admin-governance-compact-check input {
    margin: 2px 0 0;
}

.apx-admin-governance-row-title {
    color: var(--apx-text);
    display: block;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.28;
}

.apx-admin-governance-row-detail {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.74rem;
    line-height: 1.34;
    margin-top: 3px;
}

.apx-admin-governance-toggle-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-governance-toggle-card {
    align-items: start;
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 6px;
    grid-template-columns: 18px minmax(0, 1fr);
    min-width: 0;
    padding: 12px 14px;
}

.apx-admin-governance-toggle-card input {
    margin-top: 2px;
}

.apx-admin-governance-toggle-card .apx-admin-governance-row-title,
.apx-admin-governance-toggle-card .apx-admin-governance-row-detail {
    grid-column: 2;
}

.apx-admin-governance-research-footer {
    margin-top: 12px;
}

.apx-admin-governance-helper,
.apx-admin-governance-export-options,
.apx-admin-governance-retention-field {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-admin-governance-helper {
    margin-bottom: 8px;
}

.apx-admin-governance-checklist-wrap {
    overflow-x: visible;
}

.apx-admin-governance-checklist {
    min-width: 0;
    table-layout: fixed;
    width: 100%;
}

.apx-admin-governance-checklist td {
    border-bottom: 1px solid rgba(33, 29, 24, 0.07);
    padding-bottom: 8px;
    padding-top: 8px;
    vertical-align: top;
}

.apx-admin-governance-checklist tbody tr:last-child td {
    border-bottom: 0;
}

.apx-admin-governance-check {
    padding-left: 12px;
    text-align: center;
    vertical-align: middle;
}

.apx-admin-governance-check input {
    margin: 2px 0 0;
}

.apx-admin-governance-setting {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.28;
}

.apx-admin-governance-description {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    line-height: 1.34;
}

.apx-admin-governance-inline-cell {
    min-width: 0;
}

.apx-admin-governance-inline-title {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: 4px 6px;
}

.apx-admin-governance-inline-title strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.25;
}

.apx-admin-governance-inline-title small {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 400;
    line-height: 1.25;
}

.apx-admin-governance-controls {
    align-items: end;
    display: grid;
    gap: 12px 18px;
    grid-template-columns: minmax(0, 1fr) 240px;
    margin-top: 10px;
}

.apx-admin-governance-export-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
}

.apx-admin-governance-export-option {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    margin: 0;
}

.apx-admin-governance-export-option input {
    margin: 0;
}

.apx-admin-governance-export-option span {
    color: var(--apx-text);
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.apx-admin-governance-retention-field input {
    max-width: 240px;
}

.apx-admin-governance-checklist-compact .apx-admin-governance-setting {
    font-size: 0.82rem;
}

.apx-admin-governance-action-row {
    margin-top: 10px;
}

.apx-report-access-legend {
    align-items: center;
    color: var(--apx-text-muted);
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    margin: 0 0 8px;
}

.apx-report-access-legend span {
    align-items: center;
    display: inline-flex;
    font-size: 0.74rem;
    font-weight: 600;
    gap: 7px;
    line-height: 1.3;
}

.apx-status-dot {
    align-items: center;
    border: 1px solid rgba(164, 124, 47, 0.16);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    height: 12px;
    justify-content: center;
    width: 12px;
}

.apx-status-dot.is-live {
    background: rgba(134, 239, 172, 0.16);
    border-color: rgba(134, 239, 172, 0.28);
}

.apx-status-dot.is-pending {
    background: rgba(212, 168, 87, 0.12);
    border-color: rgba(212, 168, 87, 0.28);
}

.apx-status-dot.is-muted {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(164, 124, 47, 0.12);
}

.apx-report-access-icon-cell {
    text-align: center;
}

.apx-report-access-icon-cell .apx-status-dot,
.apx-report-access-participant .apx-status-dot {
    margin: 0 auto;
}

.apx-report-access-participant {
    align-items: center;
    display: inline-flex;
    gap: 8px;
}

.apx-report-access-participant small {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 600;
    line-height: 1.3;
}

.apx-admin-governance-roadmap,
.apx-admin-scaffold-card {
    background: rgba(255, 255, 255, 0.02);
}

.apx-admin-inline-section {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    padding: 18px 2px 0;
}

.apx-admin-inline-section:first-child {
    border-top: 0;
    padding-top: 0;
}

.apx-admin-inline-section-head {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    justify-content: space-between;
}

.apx-admin-inline-section-head h5,
.apx-admin-inline-section-head p {
    margin: 0;
}

.apx-admin-inline-section-head p {
    color: var(--apx-text-muted);
    line-height: 1.42;
}

.apx-admin-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-admin-inline-form {
    display: grid;
    gap: 10px;
}

.apx-admin-inline-metric-row,
.apx-admin-inline-flag-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.apx-admin-inline-visual-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.apx-admin-inline-chart-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
}

.apx-admin-inline-metric-row article,
.apx-admin-inline-flag-grid article,
.apx-admin-visual-card {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 10px 12px;
}

.apx-admin-chart-card {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 8px;
    min-width: 0;
    padding: 10px 12px;
}

.apx-admin-inline-metric-row span,
.apx-admin-inline-flag-grid span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-inline-metric-row strong,
.apx-admin-inline-flag-grid strong {
    align-items: center;
    color: var(--apx-text);
    display: inline-flex;
    font-size: 0.92rem;
    font-weight: 800;
    gap: 8px;
    line-height: 1.28;
}

.apx-admin-inline-metric-row small,
.apx-admin-inline-flag-grid small {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.38;
}

.apx-admin-chart-card > span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-chart-card > strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1.28;
}

.apx-admin-progress-stack {
    background: rgba(164, 124, 47, 0.08);
    border-radius: 999px;
    display: flex;
    height: 10px;
    overflow: hidden;
}

.apx-admin-progress-stack i {
    display: block;
    height: 100%;
}

.apx-admin-progress-stack .is-live {
    background: rgba(34, 197, 94, 0.78);
}

.apx-admin-progress-stack .is-pending {
    background: rgba(212, 168, 87, 0.78);
}

.apx-admin-progress-stack .is-muted {
    background: rgba(148, 163, 184, 0.5);
}

.apx-admin-chart-list,
.apx-admin-trend-list,
.apx-admin-benchmark-list {
    display: grid;
    gap: 7px;
}

.apx-admin-chart-row,
.apx-admin-benchmark-row {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(84px, 0.9fr) minmax(0, 1fr) auto;
}

.apx-admin-chart-row > span,
.apx-admin-benchmark-row > span,
.apx-admin-trend-row > span {
    color: var(--apx-text);
    font-size: 0.77rem;
    font-weight: 700;
    letter-spacing: normal;
    text-transform: none;
}

.apx-admin-chart-row strong,
.apx-admin-benchmark-row strong,
.apx-admin-trend-row strong {
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 800;
}

.apx-admin-chart-track {
    background: rgba(164, 124, 47, 0.08);
    border-radius: 999px;
    height: 8px;
    overflow: hidden;
}

.apx-admin-chart-track i {
    display: block;
    height: 100%;
}

.apx-admin-chart-track .is-live {
    background: rgba(34, 197, 94, 0.78);
}

.apx-admin-chart-track .is-pending {
    background: rgba(212, 168, 87, 0.78);
}

.apx-admin-chart-track .is-muted {
    background: rgba(148, 163, 184, 0.5);
}

.apx-admin-trend-row {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(72px, 0.8fr) minmax(0, 1fr) auto;
}

.apx-admin-trend-row small,
.apx-admin-benchmark-stack small,
.apx-admin-chart-empty {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.35;
}

.apx-admin-trend-row small {
    grid-column: 2 / 4;
}

.apx-admin-benchmark-stack {
    display: grid;
    gap: 4px;
}

.apx-admin-flag-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.apx-admin-flag-inline b {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 999px;
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 800;
    padding: 3px 8px;
}

.apx-admin-flag-inline .is-live {
    background: rgba(34, 197, 94, 0.12);
    color: #168a4f;
}

.apx-admin-flag-inline .is-muted {
    background: rgba(148, 163, 184, 0.12);
}

.apx-admin-governance-rail {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-governance-step,
.apx-admin-scaffold-grid article {
    align-items: start;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 12px;
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 10px 12px;
}

.apx-admin-governance-step {
    align-items: center;
    display: flex;
    gap: 9px;
}

.apx-admin-governance-step strong {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.28;
}

.apx-admin-scaffold-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-scaffold-grid article span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-admin-scaffold-grid article strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 750;
    line-height: 1.26;
}

.apx-admin-scaffold-grid article small {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    line-height: 1.35;
}

.apx-settings-save {
    margin-top: 0;
}

.apx-assessment-rubric {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.apx-assessment-rubric div {
    background: rgba(2, 6, 23, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 10px;
    display: grid;
    gap: 3px;
    padding: 9px;
}

.apx-assessment-rubric span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-assessment-rubric strong {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
}

.apx-assessment-rubric small {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    line-height: 1.3;
}

.apx-rubric-total {
    align-items: center;
    background: rgba(2, 6, 23, 0.44);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 3px;
    grid-template-columns: auto auto 1fr;
    margin-bottom: 8px;
    padding: 8px 9px;
}

.apx-rubric-total span,
.apx-rubric-settings-grid span,
.apx-guide-grid span,
.apx-guide-target-grid span {
    color: #fecdd3;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-rubric-total strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 900;
}

.apx-rubric-total small,
.apx-rubric-settings-grid small,
.apx-guide-target-grid small {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    line-height: 1.25;
}

[data-theme="light"] .apx-recognition-grid small {
    color: var(--apx-text-muted);
}

.apx-rubric-total.is-warning {
    border-color: rgba(245, 158, 11, 0.56);
}

.apx-rubric-settings-grid,
.apx-guide-target-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-rubric-settings-grid label,
.apx-guide-target-grid article,
.apx-guide-grid article,
.apx-guide-checklist article {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 4px;
    padding: 8px;
}

.apx-guide-section {
    margin-bottom: 10px;
}

.apx-guide-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-guide-grid strong,
.apx-guide-target-grid strong,
.apx-guide-checklist strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
}

.apx-guide-grid p,
.apx-guide-checklist span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    line-height: 1.3;
    margin: 0;
}

.apx-guide-checklist {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-formula-guide {
    display: grid;
    gap: 10px;
}

.apx-formula-list {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
}

.apx-formula-card {
    background: rgba(2, 6, 23, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 11px;
    display: grid;
    gap: 8px;
    padding: 11px;
}

.apx-formula-card header {
    display: grid;
    gap: 6px;
}

.apx-formula-card h6 {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    margin: 0;
}

.apx-formula-card code {
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(207, 163, 73, 0.26);
    border-radius: 8px;
    color: #cfa349;
    display: block;
    font-size: 0.74rem;
    padding: 7px 8px;
    white-space: normal;
}

.apx-formula-card p,
.apx-formula-card li {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    line-height: 1.38;
}

.apx-formula-card p {
    margin: 0;
}

.apx-formula-card span {
    color: var(--apx-text-soft);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-formula-card ol {
    margin: 5px 0 0;
    padding-left: 18px;
}

.apx-restaurant-title h1 {
    font-size: clamp(1.35rem, 1.7vw, 1.72rem);
    text-shadow: 0 0 20px rgba(220, 38, 38, 0.14);
}

.apx-restaurant-title p {
    font-size: 0.8rem;
    line-height: 1.35;
}

.apx-main:has(.apx-restaurant-shell) {
    max-width: 1440px;
    padding-left: 16px;
    padding-right: 16px;
}

.apx-main:has(.apx-capex-form) {
    max-width: 1680px;
    padding-left: 12px;
    padding-right: 12px;
}

.apx-main:has(.apx-r2-shell) {
    max-width: 1680px;
    padding-left: 8px;
    padding-right: 8px;
}

.apx-inline-link {
    color: #fecaca;
    font-weight: 850;
    text-decoration: none;
}

.apx-inline-link:hover {
    color: var(--apx-text);
}

.apx-restaurant-shell {
    --restaurant: #dc2626;
    --restaurant-soft: #f87171;
    --restaurant-deep: #7f1d1d;
    display: grid;
    font-size: 0.92rem;
    gap: 7px;
}

.apx-restaurant-command {
    align-items: center;
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.26), rgba(15, 23, 42, 0.96));
    border: 1px solid rgba(248, 113, 113, 0.22);
    border-radius: 10px;
    display: grid;
    gap: 6px;
    grid-template-columns: 1.1fr 0.6fr 1fr 0.85fr 0.85fr auto;
    padding: 6px;
}

.apx-restaurant-command div {
    border-right: 1px solid rgba(248, 113, 113, 0.14);
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 0 8px;
}

.apx-restaurant-command span,
.apx-restaurant-head > span,
.apx-restaurant-kpis span,
.apx-ai-prompt-list span {
    color: #fecaca;
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-restaurant-command strong {
    color: var(--apx-text);
    font-size: 0.74rem;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-restaurant-command button {
    background: rgba(179, 32, 38, 0.45);
    border: 1px solid rgba(179, 32, 38, 0.38);
    border-radius: 9px;
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.7rem;
    font-weight: 900;
    min-height: 30px;
    padding: 0 11px;
}

.apx-coach-brief {
    align-items: stretch;
    background:
        linear-gradient(135deg, rgba(127, 29, 29, 0.18), rgba(15, 23, 42, 0.9)),
        rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(248, 113, 113, 0.24);
    border-radius: 8px;
    display: grid;
    gap: 7px;
    grid-template-columns: 150px repeat(3, minmax(0, 1fr));
    padding: 7px;
}

.apx-coach-brief-title,
.apx-coach-brief article {
    background: rgba(2, 6, 23, 0.38);
    border: 1px solid rgba(51, 65, 85, 0.58);
    border-radius: 7px;
    display: grid;
    gap: 2px;
    min-height: 52px;
    padding: 7px 8px;
}

.apx-coach-brief-title {
    align-content: center;
    border-color: rgba(248, 113, 113, 0.32);
}

.apx-coach-brief-title span,
.apx-coach-brief article span {
    color: #fecaca;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-coach-brief-title strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 950;
}

.apx-coach-brief article p {
    color: var(--apx-text-soft);
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.26;
    margin: 0;
}

.apx-coach-brief article p b {
    color: var(--apx-text);
}

.apx-coach-brief article.is-risk { border-color: rgba(244, 63, 94, 0.52); }
.apx-coach-brief article.is-watch { border-color: rgba(245, 158, 11, 0.5); }
.apx-coach-brief article.is-strong { border-color: rgba(34, 197, 94, 0.42); }

.apx-restaurant-grid {
    align-items: start;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-restaurant-workbench {
    display: grid;
    gap: 7px;
}

.apx-restaurant-panel {
    background: rgba(15, 23, 42, 0.8);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    box-shadow: none;
    padding: 8px;
}

.apx-restaurant-head {
    align-items: start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 7px;
}

.apx-restaurant-head h5,
.apx-restaurant-panel h5 {
    color: var(--apx-text);
    font-size: 0.79rem;
    font-weight: 900;
    margin: 0;
}

.apx-restaurant-head p,
.apx-restaurant-panel p {
    color: var(--apx-text-muted);
    font-size: 0.69rem;
    line-height: 1.26;
    margin: 2px 0 0;
}

.apx-decision-briefs {
    display: grid;
    gap: 5px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 7px;
}

.apx-decision-briefs article {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 7px;
    padding: 6px;
}

.apx-decision-briefs span {
    color: #fecaca;
    display: block;
    font-size: 0.53rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-bottom: 3px;
    text-transform: uppercase;
}

.apx-decision-briefs p {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    line-height: 1.22;
    margin: 0;
}

.apx-restaurant-kpis {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

.apx-restaurant-kpis article {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(248, 113, 113, 0.28);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 6px 7px;
}

.apx-restaurant-kpis article.is-strong { border-color: rgba(34, 197, 94, 0.45); }
.apx-restaurant-kpis article.is-watch { border-color: rgba(245, 158, 11, 0.52); }
.apx-restaurant-kpis article.is-warning { border-color: rgba(248, 113, 113, 0.55); }
.apx-restaurant-kpis article.is-risk { border-color: rgba(244, 63, 94, 0.72); }

.apx-restaurant-kpis strong {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 950;
}

.apx-restaurant-kpis small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
}

.apx-restaurant-controls {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-revenue-controls {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-restaurant-controls label {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    padding: 7px;
}

.apx-restaurant-controls label > span {
    color: #fecaca;
    font-size: 0.53rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-restaurant-controls input,
.apx-restaurant-controls select {
    background: #020617;
    border: 1px solid rgba(127, 29, 29, 0.68);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.72rem;
    min-height: 28px;
    padding: 0 8px;
}

.apx-restaurant-controls input[type="range"] {
    accent-color: #ef4444;
    border: 0;
    min-height: 22px;
    padding: 0;
}

.apx-restaurant-controls small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    line-height: 1.22;
}

.apx-meal-controls {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-meal-period-grid {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    overflow: hidden;
}

.apx-meal-period-head,
.apx-meal-period-row {
    align-items: center;
    display: grid;
    gap: 7px;
    grid-template-columns: 44px repeat(3, minmax(76px, 0.78fr)) minmax(220px, 1.2fr);
    padding: 7px 8px;
}

.apx-meal-period-head {
    background: rgba(15, 23, 42, 0.78);
    border-bottom: 1px solid rgba(51, 65, 85, 0.72);
}

.apx-meal-period-row + .apx-meal-period-row {
    border-top: 1px solid rgba(51, 65, 85, 0.42);
}

.apx-meal-period-head span,
.apx-meal-period-row strong,
.apx-meal-period-row em {
    color: var(--apx-text-muted);
    font-size: 0.59rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-meal-period-row strong {
    color: var(--apx-text);
}

.apx-meal-period-row > span {
    align-items: center;
    background: rgba(15, 23, 42, 0.7);
    border: 1px solid rgba(51, 65, 85, 0.52);
    border-radius: 999px;
    display: grid;
    height: 13px;
    overflow: hidden;
    position: relative;
}

.apx-meal-period-row i {
    background: linear-gradient(90deg, rgba(220, 38, 38, 0.62), rgba(248, 113, 113, 0.82));
    border-radius: inherit;
    display: block;
    height: 100%;
    max-width: 100%;
}

.apx-meal-period-row b {
    color: var(--apx-text);
    font-size: 0.58rem;
    font-weight: 900;
    position: absolute;
    right: 8px;
}

.apx-meal-period-row input {
    background: #0f172a;
    border: 1px solid rgba(248, 113, 113, 0.5);
    border-radius: 999px;
    color: var(--apx-text);
    font-size: 0.54rem;
    font-weight: 900;
    height: 20px;
    padding: 0;
    left: clamp(0px, calc(var(--cover, 0%) - 28px), calc(100% - 28px));
    position: absolute;
    text-align: center;
    width: 28px;
    z-index: 1;
}

.apx-meal-period-row input:focus {
    outline: 1px solid rgba(248, 113, 113, 0.62);
    outline-offset: -1px;
}

.apx-meal-period-row select {
    background: rgba(2, 6, 23, 0.72);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 7px;
    color: var(--apx-text-soft);
    font-size: 0.65rem;
    min-height: 26px;
    padding: 0 7px;
}

.apx-targeting-lab {
    background: rgba(2, 6, 23, 0.42);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    overflow-x: auto;
    overflow-y: hidden;
}

.apx-targeting-head,
.apx-targeting-row {
    align-items: center;
    display: grid;
    gap: 6px;
    grid-template-columns: 42px 70px 120px minmax(150px, 1fr) minmax(126px, 0.8fr) 86px 60px minmax(112px, 0.7fr);
    min-width: 1040px;
    padding: 6px 7px;
}

.apx-targeting-head {
    background: rgba(15, 23, 42, 0.78);
    border-bottom: 1px solid rgba(51, 65, 85, 0.72);
}

.apx-targeting-row + .apx-targeting-row {
    border-top: 1px solid rgba(51, 65, 85, 0.42);
}

.apx-targeting-head span {
    color: var(--apx-text-muted);
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-targeting-row select,
.apx-targeting-row input {
    background: rgba(2, 6, 23, 0.8);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 7px;
    color: var(--apx-text-soft);
    font-size: 0.65rem;
    min-height: 28px;
    padding: 0 7px;
    width: 100%;
}

.apx-targeting-row input[type="number"] {
    color: var(--apx-text);
    font-weight: 850;
}

.apx-target-check {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: center;
}

.apx-target-check input {
    position: absolute;
    opacity: 0;
    width: 1px;
}

.apx-target-check span {
    background: rgba(15, 23, 42, 0.86);
    border: 1px solid rgba(248, 113, 113, 0.38);
    border-radius: 999px;
    display: block;
    height: 18px;
    position: relative;
    width: 32px;
}

.apx-target-check span::after {
    background: rgba(148, 163, 184, 0.76);
    border-radius: inherit;
    content: "";
    height: 12px;
    left: 3px;
    position: absolute;
    top: 2px;
    transition: transform 0.16s ease, background 0.16s ease;
    width: 12px;
}

.apx-target-check input:checked + span::after {
    background: #f87171;
    transform: translateX(13px);
}

.apx-targeting-summary {
    border-top: 1px solid rgba(51, 65, 85, 0.52);
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 7px;
}

.apx-targeting-summary article {
    background: rgba(15, 23, 42, 0.64);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 7px;
    display: grid;
    gap: 2px;
    padding: 6px;
}

.apx-targeting-summary span {
    color: #fecaca;
    font-size: 0.53rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-targeting-summary strong {
    color: var(--apx-text);
    font-size: 0.78rem;
    font-weight: 950;
}

.apx-campaign-lab {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.apx-campaign-panel-wide .apx-campaign-lab {
    grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
}

.apx-campaign-card {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 6px;
    padding: 8px;
}

.apx-campaign-card:has(input[data-campaign]:checked) {
    border-color: rgba(248, 113, 113, 0.58);
    box-shadow: inset 0 1px 0 rgba(248, 113, 113, 0.16);
}

.apx-campaign-card label {
    align-items: flex-start;
    display: flex;
    gap: 7px;
}

.apx-campaign-card label input {
    accent-color: #ef4444;
    margin-top: 2px;
}

.apx-campaign-card label span {
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1.18;
}

.apx-campaign-card small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    line-height: 1.2;
}

.apx-campaign-card div:not(.apx-campaign-checks) {
    align-items: center;
    display: grid;
    gap: 6px;
    grid-template-columns: 54px minmax(0, 1fr) 38px;
}

.apx-campaign-card div:not(.apx-campaign-checks) span,
.apx-campaign-card div:not(.apx-campaign-checks) b {
    color: #fecaca;
    font-size: 0.56rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-campaign-card input[type="range"] {
    accent-color: #ef4444;
}

.apx-campaign-card input[type="number"] {
    background: #020617;
    border: 1px solid rgba(127, 29, 29, 0.58);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.68rem;
    min-height: 26px;
    padding: 0 7px;
}

.apx-campaign-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.apx-campaign-checks em {
    background: rgba(127, 29, 29, 0.24);
    border: 1px solid rgba(248, 113, 113, 0.22);
    border-radius: 999px;
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-style: normal;
    font-weight: 800;
    padding: 3px 6px;
}

.apx-campaign-reveal {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    margin-top: 8px;
}

.apx-campaign-reveal article {
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 7px;
}

.apx-campaign-reveal span {
    color: #fecaca;
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-campaign-reveal strong {
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 950;
}

.apx-campaign-reveal small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    line-height: 1.18;
}

.apx-restaurant-menu-layout {
    display: grid;
    gap: 8px;
    grid-template-columns: 0.78fr 1fr;
}

.apx-menu-matrix {
    aspect-ratio: 1.35 / 1;
    background:
        linear-gradient(90deg, transparent 49.5%, rgba(254, 202, 202, 0.22) 50%, transparent 50.5%),
        linear-gradient(0deg, transparent 49.5%, rgba(254, 202, 202, 0.22) 50%, transparent 50.5%),
        rgba(2, 6, 23, 0.55);
    border: 1px solid rgba(248, 113, 113, 0.26);
    border-radius: 9px;
    display: grid;
    gap: 5px;
    grid-template-columns: repeat(2, 1fr);
    min-height: 220px;
    padding: 20px 9px 18px 22px;
    position: relative;
}

.apx-menu-matrix .quad {
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 7px;
    display: grid;
    place-content: center;
    text-align: center;
}

.apx-menu-matrix .star { border-color: rgba(34, 197, 94, 0.48); }
.apx-menu-matrix .puzzle { border-color: rgba(245, 158, 11, 0.52); }
.apx-menu-matrix .plow { border-color: rgba(96, 165, 250, 0.42); }
.apx-menu-matrix .dog { border-color: rgba(248, 113, 113, 0.5); }

.apx-menu-matrix strong {
    color: var(--apx-text);
    font-size: 0.7rem;
    font-weight: 900;
}

.apx-menu-matrix strong b {
    color: #fecaca;
    font-size: 0.72rem;
}

.apx-menu-matrix span,
.apx-menu-matrix .axis {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
}

.apx-menu-matrix .axis {
    position: absolute;
    text-transform: uppercase;
}

.apx-menu-matrix .axis.y {
    left: 8px;
    top: 42%;
    transform: rotate(-90deg);
}

.apx-menu-matrix .axis.x {
    bottom: 5px;
    left: 42%;
}

.apx-restaurant-mini-table {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 9px;
    overflow: hidden;
}

.apx-restaurant-mini-table > div {
    display: grid;
    gap: 8px;
    grid-template-columns: 1.2fr 0.45fr 0.45fr 0.8fr;
    padding: 7px 8px;
}

.apx-restaurant-mini-table > div + div {
    border-top: 1px solid rgba(51, 65, 85, 0.5);
}

.apx-restaurant-mini-table span,
.apx-restaurant-mini-table em {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-style: normal;
}

.apx-restaurant-mini-table strong {
    color: var(--apx-text);
    font-size: 0.64rem;
}

.apx-menu-worksheet {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.76);
    border-radius: 9px;
    overflow: hidden;
}

.apx-menu-worksheet-head,
.apx-menu-row {
    align-items: center;
    display: grid;
    gap: 5px;
    grid-template-columns: minmax(110px, 1.45fr) 48px 62px 62px 58px minmax(96px, 0.9fr) 72px;
    padding: 6px 7px;
}

.apx-menu-worksheet-head {
    background: rgba(15, 23, 42, 0.78);
    border-bottom: 1px solid rgba(51, 65, 85, 0.68);
}

.apx-menu-worksheet-head span {
    color: var(--apx-text-muted);
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-menu-row + .apx-menu-row {
    border-top: 1px solid rgba(51, 65, 85, 0.42);
}

.apx-menu-row input,
.apx-menu-row select {
    background: rgba(2, 6, 23, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.66rem;
    min-height: 26px;
    padding: 0 6px;
    width: 100%;
}

.apx-menu-row strong {
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 999px;
    color: var(--apx-text-soft);
    font-size: 0.58rem;
    font-weight: 900;
    padding: 4px 6px;
    text-align: center;
    text-transform: uppercase;
}

.apx-menu-row[data-menu-class="star"] strong { border-color: rgba(34, 197, 94, 0.48); color: #bbf7d0; }
.apx-menu-row[data-menu-class="puzzle"] strong { border-color: rgba(245, 158, 11, 0.52); color: #fde68a; }
.apx-menu-row[data-menu-class="plowhorse"] strong { border-color: rgba(96, 165, 250, 0.42); color: #bfdbfe; }
.apx-menu-row[data-menu-class="dog"] strong { border-color: rgba(248, 113, 113, 0.5); color: #fecaca; }

.apx-menu-summary-strip {
    border-top: 1px solid rgba(51, 65, 85, 0.62);
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 7px;
}

.apx-menu-summary-strip article {
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 6px;
}

.apx-menu-summary-strip span {
    color: #fecaca;
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-menu-summary-strip strong {
    color: var(--apx-text);
    font-size: 0.68rem;
    font-weight: 950;
}

.apx-chart-row {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-chart-row article {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 9px;
    display: grid;
    gap: 8px;
    min-height: 118px;
    padding: 8px;
}

.apx-chart-row h6 {
    color: var(--apx-text);
    font-size: 0.68rem;
    font-weight: 900;
    margin: 0;
}

.apx-donut {
    aspect-ratio: 1 / 1;
    background: conic-gradient(#dc2626 0 calc(var(--a) * 1%), #f59e0b 0 calc((var(--a) + var(--b)) * 1%), rgba(51, 65, 85, 0.72) 0);
    border-radius: 999px;
    justify-self: center;
    max-width: 80px;
    position: relative;
    width: 45%;
}

.apx-donut::after {
    background: #020617;
    border-radius: inherit;
    content: "";
    inset: 18px;
    position: absolute;
}

.apx-cvp-chart {
    background: linear-gradient(90deg, rgba(34, 197, 94, 0.28), rgba(245, 158, 11, 0.30), rgba(220, 38, 38, 0.26));
    border-radius: 999px;
    height: 16px;
    position: relative;
}

.apx-cvp-chart i {
    background: #fecaca;
    bottom: -7px;
    position: absolute;
    top: -7px;
    width: 2px;
}

.apx-cvp-chart span {
    background: rgba(220, 38, 38, 0.42);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.apx-bar-stack {
    background: rgba(15, 23, 42, 0.82);
    border-radius: 999px;
    height: 19px;
    overflow: hidden;
}

.apx-bar-stack span {
    background: linear-gradient(90deg, rgba(220, 38, 38, 0.66), rgba(248, 113, 113, 0.82));
    border-radius: inherit;
    color: white;
    display: block;
    font-size: 0.64rem;
    font-weight: 850;
    height: 100%;
    padding: 3px 8px;
}

.apx-meal-kpi-strip {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    margin-top: 8px;
}

.apx-meal-kpi-strip article {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 7px;
}

.apx-meal-kpi-strip span {
    color: #fecaca;
    font-size: 0.54rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-meal-kpi-strip strong {
    color: var(--apx-text);
    font-size: 0.78rem;
    font-weight: 950;
}

.apx-meal-kpi-strip small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    line-height: 1.2;
}

.apx-restaurant-ai {
    display: grid;
    gap: 8px;
    position: static;
}

.apx-ai-prompt-list,
.apx-formula-links {
    display: grid;
    gap: 7px;
}

.apx-ai-prompt-list article {
    background: rgba(2, 6, 23, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    padding: 7px;
}

.apx-ai-prompt-list article.is-warning { border-color: rgba(245, 158, 11, 0.5); }
.apx-ai-prompt-list article.is-risk { border-color: rgba(244, 63, 94, 0.58); }

.apx-ai-prompt-list p {
    color: var(--apx-text-soft);
    font-size: 0.64rem;
    line-height: 1.28;
    margin: 4px 0 0;
}

.apx-formula-links a {
    background: rgba(127, 29, 29, 0.24);
    border: 1px solid rgba(248, 113, 113, 0.24);
    border-radius: 8px;
    color: #fecaca;
    font-size: 0.64rem;
    font-weight: 850;
    padding: 6px 7px;
    text-decoration: none;
}

@media (max-width: 1180px) {
    .apx-restaurant-command {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-restaurant-command button {
        grid-column: span 3;
    }

    .apx-restaurant-grid {
        grid-template-columns: 1fr;
    }

    .apx-revenue-controls {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-restaurant-ai {
        grid-template-columns: minmax(0, 1fr) minmax(220px, 0.42fr);
    }
}

@media (max-width: 820px) {
    .apx-settings-readiness-strip,
    .apx-settings-essential-grid,
    .apx-settings-table-toolbar,
    .apx-facilitator-scenario-import {
        grid-template-columns: 1fr;
    }

    .apx-settings-readiness-line {
        justify-content: flex-start;
    }

    .apx-facilitator-compact-table td:first-child,
    .apx-facilitator-compact-table th:first-child,
    .apx-facilitator-compact-table td:last-child,
    .apx-facilitator-compact-table th:last-child {
        width: auto;
    }

    .apx-restaurant-command,
    .apx-coach-brief,
    .apx-revenue-controls,
    .apx-restaurant-kpis,
    .apx-restaurant-controls,
    .apx-decision-briefs,
    .apx-restaurant-menu-layout,
    .apx-chart-row,
    .apx-menu-worksheet-head,
    .apx-menu-row,
    .apx-menu-summary-strip,
    .apx-meal-period-head,
    .apx-meal-period-row,
    .apx-restaurant-ai {
        grid-template-columns: 1fr;
    }

    .apx-restaurant-command button {
        grid-column: auto;
    }
}

.apx-log-list {
    display: grid;
    gap: 10px;
}

.apx-menu-tools,
.apx-r2-menu-tools {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.apx-menu-tools {
    flex-wrap: wrap;
}

.apx-r2-menu-tools {
    justify-content: space-between;
    margin-bottom: 6px;
}

.apx-menu-tools label,
.apx-r2-menu-tools label {
    align-items: center;
    display: flex;
    gap: 6px;
    margin: 0;
}

.apx-menu-tools span,
.apx-r2-menu-tools span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-menu-tools select,
.apx-r2-menu-tools select {
    background: rgba(2, 6, 23, 0.78);
    border: 1px solid rgba(255, 79, 31, 0.32);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.68rem;
    min-height: 30px;
    padding: 0 8px;
}

[data-theme="light"] .apx-menu-tools select {
    background: rgba(255, 250, 242, 0.96);
    border-color: rgba(156, 123, 63, 0.18);
}

.apx-settings-mode-note {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 8px;
}

.apx-settings-mode-note article {
    background: rgba(2, 6, 23, 0.38);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    display: grid;
    gap: 3px;
    padding: 8px;
}

.apx-settings-mode-note strong {
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 950;
}

.apx-settings-mode-note small {
    color: var(--apx-text-muted);
    font-size: 0.63rem;
    line-height: 1.25;
}

@media (max-width: 820px) {
    .apx-settings-mode-note {
        grid-template-columns: 1fr;
    }

    .apx-settings-section-tabs,
    .apx-settings-summary-grid,
    .apx-settings-launch-controls,
    .apx-context-controls,
    .apx-currency-controls {
        grid-template-columns: 1fr;
    }

    .apx-facilitator-governed-grid,
    .apx-facilitator-decision-grid,
    .apx-facilitator-decision-feature-list {
        grid-template-columns: 1fr;
    }

    .apx-settings-savebar {
        align-items: stretch;
        flex-direction: column;
    }

    .apx-facilitator-report-release-list-two-up,
    .apx-facilitator-decision-feature-list-four {
        grid-template-columns: 1fr;
    }

    .apx-menu-tools,
    .apx-r2-menu-tools {
        align-items: flex-start;
        flex-direction: column;
    }
}

.apx-service-title {
    margin-bottom: 8px;
}

.apx-service-shell {
    display: grid;
    gap: 8px;
}

.apx-service-command {
    align-items: center;
    background: linear-gradient(135deg, rgba(164, 124, 47, 0.2), rgba(15, 23, 42, 0.96));
    border: 1px solid rgba(255, 79, 31, 0.34);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    grid-template-columns: 0.9fr 0.55fr 0.9fr 0.65fr 0.8fr auto;
    padding: 6px;
}

.apx-service-command article {
    border-right: 1px solid rgba(255, 79, 31, 0.18);
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 0 8px;
}

.apx-service-command span,
.apx-service-kpis span,
.apx-service-section-head span,
.apx-service-control-grid label > span,
.apx-service-map span {
    color: #cfa349;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-service-command strong {
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 950;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-service-command button,
.apx-service-mode-switch button {
    background: rgba(255, 59, 31, 0.36);
    border: 1px solid rgba(255, 59, 31, 0.34);
    border-radius: 8px;
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 950;
    min-height: 32px;
    padding: 0 12px;
}

.apx-service-kpis {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.apx-service-kpis article,
.apx-service-panel {
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
}

.apx-service-kpis article {
    display: grid;
    gap: 3px;
    padding: 8px;
}

.apx-service-kpis article.is-risk { border-color: rgba(244, 63, 94, 0.62); }
.apx-service-kpis article.is-watch { border-color: rgba(245, 158, 11, 0.54); }
.apx-service-kpis article.is-strong { border-color: rgba(34, 197, 94, 0.46); }

.apx-service-kpis div {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.apx-service-kpis strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 950;
}

.apx-service-kpis strong:last-child {
    color: var(--apx-text-soft);
    text-align: right;
}

.apx-service-kpis em {
    color: #cfa349;
    font-style: normal;
    font-weight: 950;
}

.apx-service-kpis small {
    color: var(--apx-text-muted);
    display: grid;
    font-size: 0.54rem;
    font-weight: 850;
    gap: 6px;
    grid-template-columns: 1fr 1fr;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-service-kpis small b:last-child {
    text-align: right;
}

.apx-service-panel {
    display: grid;
    gap: 8px;
    padding: 10px;
}

.apx-service-section-head {
    align-items: end;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.apx-service-section-head h2 {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 950;
    margin: 2px 0;
}

.apx-service-section-head p,
.apx-service-unit-grid p,
.apx-service-control-grid small,
.apx-service-coach p,
.apx-service-map small,
.apx-service-assessment small {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    line-height: 1.25;
    margin: 0;
}

.apx-service-mode-switch {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.apx-service-mode-switch button {
    background: rgba(15, 23, 42, 0.84);
    color: var(--apx-text-soft);
    min-height: 29px;
}

.apx-service-mode-switch button.is-active {
    background: rgba(164, 124, 47, 0.44);
    color: var(--apx-text);
}

.apx-service-unit-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-service-unit-grid article,
.apx-service-control-grid label,
.apx-service-map article,
.apx-service-assessment article,
.apx-service-coach article {
    background: rgba(2, 6, 23, 0.4);
    border: 1px solid rgba(51, 65, 85, 0.64);
    border-radius: 8px;
}

.apx-service-unit-grid article {
    align-items: start;
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 8px;
}

.apx-service-unit-grid h3,
.apx-service-coach h2 {
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 950;
    margin: 0 0 3px;
}

.apx-service-unit-grid small {
    color: var(--apx-text-soft);
    display: block;
    font-size: 0.58rem;
    line-height: 1.22;
    margin-top: 5px;
}

.apx-service-toggle input {
    position: absolute;
    opacity: 0;
}

.apx-service-toggle span {
    background: rgba(34, 197, 94, 0.9);
    border-radius: 999px;
    display: block;
    height: 16px;
    position: relative;
    width: 31px;
}

.apx-service-toggle span::after {
    background: white;
    border-radius: 50%;
    content: "";
    height: 12px;
    position: absolute;
    right: 2px;
    top: 2px;
    width: 12px;
}

.apx-service-layout {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
}

.apx-service-control-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-service-control-grid label {
    display: grid;
    gap: 6px;
    padding: 8px;
}

.apx-service-control-grid input,
.apx-service-control-grid select {
    background: rgba(2, 6, 23, 0.74);
    border: 1px solid rgba(255, 79, 31, 0.28);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.72rem;
    min-height: 31px;
    padding: 0 8px;
}

.apx-service-coach article {
    border-color: rgba(255, 79, 31, 0.28);
    padding: 8px;
}

.apx-service-coach strong,
.apx-service-map strong,
.apx-service-assessment strong {
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 950;
}

.apx-service-map {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.apx-service-map article,
.apx-service-assessment article {
    display: grid;
    gap: 5px;
    padding: 8px;
}

.apx-service-assessment {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 1180px) {
    .apx-service-command,
    .apx-service-layout,
    .apx-service-unit-grid,
    .apx-service-control-grid,
    .apx-service-map,
    .apx-service-assessment {
        grid-template-columns: 1fr;
    }

    .apx-service-command button {
        width: 100%;
    }
}

.apx-r2-shell {
    display: grid;
    gap: 8px;
}

.apx-r2-command {
    align-items: center;
    background: linear-gradient(135deg, rgba(127, 29, 29, 0.24), rgba(15, 23, 42, 0.96));
    border: 1px solid rgba(248, 113, 113, 0.22);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    grid-template-columns: 1.05fr 0.65fr 1fr 0.8fr 0.8fr auto;
    padding: 5px;
}

.apx-r2-command article {
    border-right: 1px solid rgba(248, 113, 113, 0.14);
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 0 8px;
}

.apx-r2-command span,
.apx-r2-kpi-strip span,
.apx-r2-stage-head span,
.apx-r2-card label > span,
.apx-r2-mini-dashboard span,
.apx-r2-target-grid > div:first-child span,
.apx-r2-menu-table > div:first-child span {
    color: #fecaca;
    font-size: 0.55rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-r2-command strong {
    color: var(--apx-text);
    font-size: 0.76rem;
    font-weight: 950;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-r2-command button {
    background: rgba(179, 32, 38, 0.45);
    border: 1px solid rgba(179, 32, 38, 0.38);
    border-radius: 8px;
    color: var(--apx-text);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 950;
    min-height: 32px;
    padding: 0 12px;
}

.apx-r2-kpi-strip,
.apx-r2-mini-dashboard {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.apx-r2-kpi-strip article,
.apx-r2-mini-dashboard article {
    background: rgba(15, 23, 42, 0.8);
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 7px 8px;
}

.apx-r2-kpi-strip article > span {
    display: block;
    text-align: center;
}

.apx-r2-kpi-strip article.is-risk { border-color: rgba(244, 63, 94, 0.64); }
.apx-r2-kpi-strip article.is-watch { border-color: rgba(245, 158, 11, 0.56); }
.apx-r2-kpi-strip article.is-strong { border-color: rgba(34, 197, 94, 0.46); }

.apx-r2-kpi-strip strong,
.apx-r2-mini-dashboard strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    font-weight: 950;
}

.apx-r2-kpi-compare {
    align-items: center;
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

.apx-r2-kpi-compare strong {
    font-size: 0.82rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-r2-kpi-compare strong:last-child {
    color: var(--apx-text-soft);
    text-align: right;
}

.apx-r2-kpi-compare em {
    color: #fecaca;
    font-size: 1.08rem;
    font-style: normal;
    font-weight: 950;
    line-height: 1;
    opacity: 0.95;
}

.apx-r2-kpi-strip small {
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    color: var(--apx-text-muted);
    font-size: 0.55rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-r2-kpi-strip small b {
    font-weight: 850;
}

.apx-r2-kpi-strip small b:last-child {
    text-align: right;
}

.apx-r2-tabs > input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.apx-r2-tab-nav {
    background: rgba(15, 23, 42, 0.76);
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 8px;
    display: grid;
    gap: 5px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    margin-bottom: 8px;
    padding: 5px;
}

.apx-r2-tab-nav label {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 7px;
    color: var(--apx-text-soft);
    cursor: pointer;
    display: flex;
    font-size: 0.72rem;
    font-weight: 900;
    gap: 7px;
    justify-content: center;
    min-height: 34px;
    padding: 0 8px;
}

.apx-r2-tab-nav label span {
    align-items: center;
    background: rgba(248, 113, 113, 0.14);
    border: 1px solid rgba(248, 113, 113, 0.2);
    border-radius: 999px;
    color: #fecaca;
    display: inline-flex;
    font-size: 0.64rem;
    height: 19px;
    justify-content: center;
    width: 19px;
}

#r2-brief:checked ~ .apx-r2-tab-nav label[for="r2-brief"],
#r2-demand:checked ~ .apx-r2-tab-nav label[for="r2-demand"],
#r2-marketing:checked ~ .apx-r2-tab-nav label[for="r2-marketing"],
#r2-menu:checked ~ .apx-r2-tab-nav label[for="r2-menu"],
#r2-operations:checked ~ .apx-r2-tab-nav label[for="r2-operations"],
#r2-profit:checked ~ .apx-r2-tab-nav label[for="r2-profit"] {
    background: rgba(164, 124, 47, 0.34);
    border-color: rgba(255, 79, 31, 0.48);
    color: var(--apx-text);
}

.apx-r2-panel {
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    display: none;
    gap: 7px;
    padding: 7px;
}

#r2-brief:checked ~ .apx-r2-brief,
#r2-demand:checked ~ .apx-r2-demand,
#r2-marketing:checked ~ .apx-r2-marketing,
#r2-menu:checked ~ .apx-r2-menu,
#r2-operations:checked ~ .apx-r2-operations,
#r2-profit:checked ~ .apx-r2-profit {
    display: grid;
}

.apx-r2-stage-head {
    align-items: end;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.apx-r2-stage-note {
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-r2-stage-note article {
    background: rgba(2, 6, 23, 0.34);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 7px 8px;
}

.apx-r2-stage-note span {
    color: #fecaca;
    font-size: 0.55rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-r2-stage-note strong {
    color: var(--apx-text-soft);
    font-size: 0.68rem;
    font-weight: 750;
    line-height: 1.2;
}

.apx-r2-stage-head h2 {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 950;
    margin: 1px 0;
}

.apx-r2-stage-head p {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    line-height: 1.25;
    margin: 0;
}

.apx-r2-stage-head > strong {
    color: #fecaca;
    font-size: 0.58rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-r2-brief-grid,
.apx-r2-profit-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-r2-coach,
.apx-r2-card,
.apx-r2-profit-grid article {
    background: rgba(2, 6, 23, 0.44);
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    padding: 8px;
}

.apx-r2-coach.is-risk { border-color: rgba(244, 63, 94, 0.56); }
.apx-r2-coach.is-watch { border-color: rgba(245, 158, 11, 0.5); }
.apx-r2-coach.is-strong { border-color: rgba(34, 197, 94, 0.42); }

.apx-r2-coach span {
    color: #fecaca;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-r2-coach h3,
.apx-r2-card h3,
.apx-r2-profit-grid h3 {
    color: var(--apx-text);
    font-size: 0.86rem;
    font-weight: 950;
    margin: 0 0 4px;
}

.apx-r2-coach p,
.apx-r2-profit-grid p,
.apx-r2-profit-grid li {
    color: var(--apx-text-soft);
    font-size: 0.76rem;
    line-height: 1.3;
    margin: 0;
}

.apx-r2-decision-preview {
    padding: 11px 12px;
}

.apx-r2-decision-preview h3 {
    font-size: 0.98rem;
}

.apx-r2-decision-preview li {
    color: var(--apx-text);
    font-size: 0.88rem;
    line-height: 1.45;
}

.apx-r2-two-col {
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(430px, 0.76fr) minmax(620px, 1.24fr);
}

.apx-r2-demand-layout,
.apx-r2-demand-stack,
.apx-r2-menu-layout {
    display: grid;
    gap: 9px;
}

.apx-r2-demand-layout {
    grid-template-columns: minmax(560px, 0.78fr) minmax(760px, 1.22fr);
}

.apx-r2-demand-stack {
    grid-template-columns: 1fr;
}

.apx-r2-menu-layout {
    grid-template-columns: minmax(390px, 0.52fr) minmax(780px, 1.48fr);
}

.apx-r2-form-grid {
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-r2-demand-layout .apx-r2-form-grid {
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-r2-demand-stack .apx-r2-form-grid {
    gap: 8px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-r2-form-grid label {
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(51, 65, 85, 0.66);
    border-radius: 8px;
    display: grid;
    gap: 4px;
    padding: 7px;
}

.apx-r2-demand-layout .apx-r2-form-grid label {
    min-height: 88px;
    padding: 9px;
}

.apx-r2-demand-stack .apx-r2-form-grid label {
    min-height: 74px;
    padding: 8px;
}

.apx-r2-form-grid input,
.apx-r2-form-grid select,
.apx-r2-target-grid input,
.apx-r2-target-grid select,
.apx-r2-menu-table input,
.apx-r2-menu-table select,
.apx-r2-daypart select {
    background: rgba(2, 6, 23, 0.82);
    border: 1px solid rgba(127, 29, 29, 0.58);
    border-radius: 7px;
    color: var(--apx-text);
    font-size: 0.7rem;
    min-height: 28px;
    padding: 0 7px;
    width: 100%;
}

.apx-r2-form-grid small {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    line-height: 1.22;
}

.apx-r2-daypart {
    display: grid;
    gap: 6px;
}

.apx-r2-daypart > div,
.apx-r2-daypart-head {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: 56px repeat(3, minmax(170px, 1fr)) minmax(190px, 0.9fr);
}

.apx-r2-daypart-head {
    background: rgba(15, 23, 42, 0.52);
    border: 1px solid rgba(51, 65, 85, 0.48);
    border-radius: 7px;
    min-height: 34px;
    padding: 0 12px;
}

.apx-r2-daypart-head span {
    align-items: center;
    background: rgba(15, 23, 42, 0.7);
    border: 1px solid rgba(51, 65, 85, 0.46);
    border-radius: 999px;
    color: #fecaca;
    display: flex;
    font-size: 0.58rem;
    font-weight: 950;
    height: 22px;
    justify-content: center;
    letter-spacing: 0.05em;
    overflow: hidden;
    padding: 0 10px;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.apx-r2-daypart > div:not(.apx-r2-daypart-head) {
    min-height: 28px;
}

.apx-r2-daypart strong {
    color: var(--apx-text);
    font-size: 0.68rem;
    font-weight: 950;
    text-transform: uppercase;
}

.apx-r2-daypart span {
    background: rgba(15, 23, 42, 0.76);
    border: 1px solid rgba(51, 65, 85, 0.58);
    border-radius: 999px;
    height: 20px;
    overflow: hidden;
    position: relative;
}

.apx-r2-daypart i {
    background: linear-gradient(90deg, rgba(220, 38, 38, 0.62), rgba(248, 113, 113, 0.82));
    display: block;
    height: 100%;
}

.apx-r2-daypart b {
    background: #0f172a;
    border: 1px solid rgba(248, 113, 113, 0.46);
    border-radius: 999px;
    color: var(--apx-text);
    font-size: 0.54rem;
    font-weight: 950;
    line-height: 20px;
    left: clamp(2px, calc((var(--cover, 0) * 1%) - 16px), calc(100% - 32px));
    position: absolute;
    text-align: center;
    top: -1px;
    width: 30px;
}

.apx-r2-daypart select {
    font-size: 0.68rem;
    min-height: 24px;
    padding: 0 8px;
}

.apx-r2-target-grid,
.apx-r2-menu-table {
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    overflow-x: auto;
}

.apx-r2-target-grid > div,
.apx-r2-menu-table > div {
    align-items: center;
    display: grid;
    gap: 6px;
    padding: 6px;
}

.apx-r2-target-grid > div {
    grid-template-columns: 44px 78px 122px minmax(170px, 1fr) minmax(150px, 0.9fr) 90px 64px minmax(128px, 0.82fr);
    min-width: 1040px;
}

.apx-r2-target-grid > div:first-child,
.apx-r2-menu-table > div:first-child {
    background: rgba(15, 23, 42, 0.78);
}

.apx-r2-target-grid > div + div,
.apx-r2-menu-table > div + div {
    border-top: 1px solid rgba(51, 65, 85, 0.42);
}

.apx-r2-switch {
    align-items: center;
    display: flex;
    justify-content: center;
}

.apx-r2-switch input {
    opacity: 0;
    position: absolute;
}

.apx-r2-switch span {
    background: rgba(15, 23, 42, 0.86);
    border: 1px solid rgba(248, 113, 113, 0.38);
    border-radius: 999px;
    display: block;
    height: 18px;
    position: relative;
    width: 32px;
}

.apx-r2-switch span::after {
    background: rgba(148, 163, 184, 0.8);
    border-radius: inherit;
    content: "";
    height: 12px;
    left: 3px;
    position: absolute;
    top: 2px;
    transition: transform 0.16s ease, background 0.16s ease;
    width: 12px;
}

.apx-r2-switch input:checked + span::after {
    background: #f87171;
    transform: translateX(13px);
}

.apx-r2-matrix {
    aspect-ratio: 1 / 0.92;
    background: rgba(2, 6, 23, 0.44);
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 30px 22px 36px 46px;
    position: relative;
}

.apx-r2-matrix::before,
.apx-r2-matrix::after {
    background: rgba(254, 202, 202, 0.2);
    content: "";
    position: absolute;
    z-index: 0;
}

.apx-r2-matrix::before {
    bottom: 36px;
    left: calc(50% + 12px);
    top: 30px;
    width: 1px;
}

.apx-r2-matrix::after {
    height: 1px;
    left: 46px;
    right: 22px;
    top: calc(50% - 1px);
}

.apx-r2-matrix div {
    align-content: center;
    border: 1px solid rgba(51, 65, 85, 0.68);
    border-radius: 8px;
    display: grid;
    gap: 5px;
    justify-items: center;
    min-width: 0;
    padding: 12px 8px;
    position: relative;
    text-align: center;
    z-index: 1;
}

.apx-r2-matrix strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    line-height: 1.05;
}

.apx-r2-matrix em {
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(254, 202, 202, 0.22);
    border-radius: 999px;
    color: #fecaca;
    font-size: 0.52rem;
    font-style: normal;
    font-weight: 950;
    padding: 2px 7px;
    text-transform: uppercase;
}

.apx-r2-matrix strong b {
    color: #fecaca;
    font-size: 0.74em;
    margin-left: 3px;
}

.apx-r2-matrix span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    line-height: 1.18;
}

.apx-r2-matrix .axis {
    color: #fecaca;
    font-size: 0.56rem;
    font-weight: 950;
    letter-spacing: 0.06em;
    position: absolute;
    text-transform: uppercase;
    z-index: 2;
}

.apx-r2-matrix .axis.y {
    left: 2px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    transform-origin: center;
}

.apx-r2-matrix .axis.x {
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

.apx-r2-matrix .star { border-color: rgba(34, 197, 94, 0.46); }
.apx-r2-matrix .puzzle { border-color: rgba(245, 158, 11, 0.52); }
.apx-r2-matrix .plow { border-color: rgba(96, 165, 250, 0.42); }
.apx-r2-matrix .dog { border-color: rgba(248, 113, 113, 0.5); }

.apx-r2-menu-table > div {
    grid-template-columns: minmax(190px, 1.28fr) 82px 78px 78px 78px minmax(146px, 1fr) 92px;
    min-width: 920px;
}

.apx-r2-menu-row[data-menu-class="star"] strong { border-color: rgba(34, 197, 94, 0.5); color: #bbf7d0; }
.apx-r2-menu-row[data-menu-class="puzzle"] strong { border-color: rgba(245, 158, 11, 0.54); color: #fde68a; }
.apx-r2-menu-row[data-menu-class="plowhorse"] strong { border-color: rgba(96, 165, 250, 0.44); color: #bfdbfe; }
.apx-r2-menu-row[data-menu-class="dog"] strong { border-color: rgba(248, 113, 113, 0.52); color: #fecaca; }

.apx-r2-menu-row strong {
    border: 1px solid rgba(51, 65, 85, 0.72);
    border-radius: 999px;
    color: var(--apx-text-soft);
    font-size: 0.58rem;
    font-weight: 950;
    padding: 5px 6px;
    text-align: center;
    text-transform: uppercase;
}

.apx-r2-menu-summary {
    border-top: 1px solid rgba(51, 65, 85, 0.58);
    display: grid;
    gap: 6px;
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 7px;
}

.apx-r2-menu-summary article {
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(51, 65, 85, 0.62);
    border-radius: 8px;
    display: grid;
    gap: 2px;
    padding: 6px;
}

.apx-r2-menu-summary span {
    color: #fecaca;
    font-size: 0.54rem;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-r2-menu-summary strong {
    color: var(--apx-text);
    font-size: 0.72rem;
    font-weight: 950;
}

.apx-r2-range-field {
    gap: 7px;
}

.apx-r2-range-field input[type="range"] {
    accent-color: #f87171;
    cursor: pointer;
    min-height: 22px;
    padding: 0;
}

.apx-r2-range-field > div {
    align-items: center;
    display: grid;
    grid-template-columns: minmax(58px, 1fr) auto minmax(58px, 1fr);
    gap: 8px;
}

.apx-r2-range-field > div small {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.apx-r2-range-field > div small:last-child {
    text-align: right;
}

.apx-r2-range-field > div b {
    align-items: center;
    background: rgba(2, 6, 23, 0.82);
    border: 1px solid rgba(248, 113, 113, 0.42);
    border-radius: 999px;
    color: var(--apx-text);
    display: flex;
    gap: 5px;
    font-size: 0.62rem;
    font-weight: 950;
    min-width: 72px;
    padding: 3px 8px;
    justify-content: center;
    text-align: center;
}

.apx-r2-range-field > div b em {
    color: var(--apx-text-muted);
    font-size: 0.48rem;
    font-style: normal;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-professional-guide {
    display: grid;
    gap: 7px;
}

.apx-professional-guide h2,
.apx-professional-guide h3,
.apx-professional-guide h4 {
    color: var(--apx-text);
    font-weight: 950;
    margin: 0;
}

.apx-professional-guide h2 {
    font-size: 1.1rem;
}

.apx-professional-guide h3 {
    border-top: 1px solid rgba(51, 65, 85, 0.7);
    color: #fecaca;
    font-size: 0.9rem;
    margin-top: 8px;
    padding-top: 12px;
}

.apx-professional-guide h4 {
    font-size: 0.78rem;
    margin-top: 6px;
}

.apx-professional-guide p {
    color: var(--apx-text-soft);
    font-size: 0.72rem;
    line-height: 1.35;
    margin: 0;
}

.apx-professional-guide .apx-guide-bullet {
    background: rgba(2, 6, 23, 0.34);
    border-left: 2px solid rgba(248, 113, 113, 0.5);
    padding: 5px 8px;
}

.apx-professional-guide pre {
    background: rgba(2, 6, 23, 0.7);
    border: 1px solid rgba(51, 65, 85, 0.7);
    border-radius: 8px;
    color: var(--apx-text);
    font-size: 0.7rem;
    margin: 0;
    overflow-x: auto;
    padding: 8px;
}

.apx-guide-source-note {
    margin-bottom: 8px;
}

.apx-r2-donut {
    background: conic-gradient(#dc2626 0 34%, #f59e0b 34% 42.5%, rgba(51, 65, 85, 0.72) 42.5%);
    border-radius: 999px;
    height: 86px;
    margin: 4px auto;
    position: relative;
    width: 86px;
}

.apx-r2-donut::after {
    background: #020617;
    border-radius: inherit;
    content: "";
    inset: 22px;
    position: absolute;
}

.apx-r2-meter {
    background: linear-gradient(90deg, rgba(34, 197, 94, 0.28), rgba(245, 158, 11, 0.30), rgba(220, 38, 38, 0.26));
    border-radius: 999px;
    height: 18px;
    margin: 30px 0 36px;
    position: relative;
}

.apx-r2-meter span {
    background: rgba(220, 38, 38, 0.42);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.apx-r2-meter i {
    background: #fecaca;
    bottom: -7px;
    left: 72%;
    position: absolute;
    top: -7px;
    transform: translateX(-50%);
    width: 2px;
}

.apx-r2-meter i.is-goal {
    background: rgba(34, 197, 94, 0.95);
}

.apx-r2-meter i.is-goal::after {
    border-color: rgba(34, 197, 94, 0.56);
    bottom: -27px;
    color: #bbf7d0;
    top: auto;
}

.apx-r2-meter i::after {
    background: rgba(2, 6, 23, 0.94);
    border: 1px solid rgba(254, 202, 202, 0.46);
    border-radius: 999px;
    color: var(--apx-text);
    content: attr(data-label);
    font-size: 0.58rem;
    font-weight: 950;
    left: 50%;
    line-height: 1;
    padding: 4px 7px;
    position: absolute;
    top: -27px;
    transform: translateX(-50%);
    white-space: nowrap;
}

.apx-r2-profit-grid ul {
    margin: 0;
    padding-left: 18px;
}

@media (max-width: 1260px) {
    .apx-upgrade-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .apx-r2-command,
    .apx-r2-tab-nav,
    .apx-r2-brief-grid,
    .apx-r2-two-col,
    .apx-r2-demand-layout,
    .apx-r2-demand-stack,
    .apx-r2-menu-layout,
    .apx-r2-stage-note,
    .apx-r2-profit-grid,
    .apx-r2-form-grid {
        grid-template-columns: 1fr;
    }

    .apx-r2-command button {
        min-height: 36px;
    }
}

.apx-log-item {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    overflow: hidden;
}

.apx-log-item summary {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(180px, 1fr) minmax(160px, 0.8fr) auto;
    list-style: none;
    padding: 12px;
}

.apx-log-item summary::-webkit-details-marker {
    display: none;
}

.apx-log-item summary strong {
    color: var(--apx-text);
    font-size: 0.9rem;
}

.apx-log-item summary em,
.apx-log-item summary small {
    color: var(--apx-text-muted);
    font-style: normal;
    font-size: 0.78rem;
}

.apx-log-status {
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
    padding: 5px 8px;
}

.apx-log-status.is-open {
    background: rgba(244, 63, 94, 0.16);
    color: #ff3b1f;
}

.apx-log-status.is-resolved {
    background: rgba(34, 197, 94, 0.15);
    color: #168a4f;
}

.apx-log-body {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    padding: 12px;
}

.apx-log-meta {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.apx-log-meta span,
.apx-log-body p {
    color: var(--apx-text-muted);
    font-size: 0.82rem;
    margin: 0;
}

.apx-log-meta strong {
    color: var(--apx-text-soft);
}

.apx-log-body pre {
    background: rgba(247, 241, 231, 0.9);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    color: var(--apx-text-soft);
    font-size: 0.76rem;
    line-height: 1.45;
    margin: 0;
    max-height: 340px;
    overflow: auto;
    padding: 12px;
    white-space: pre-wrap;
}

.row {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.col-md-2,
.col-md-3,
.col-md-4,
.col-md-6 {
    flex: 1 1 180px;
}

.col-md-6 {
    flex-basis: 300px;
}

.col-md-4 {
    flex-basis: 240px;
}

.col-md-2 {
    flex-basis: 150px;
}

.mb-3 {
    margin-bottom: 10px;
}

.mb-4 {
    margin-bottom: 10px;
}

.mt-2 {
    margin-top: 8px;
}

.mt-3 {
    margin-top: 9px;
}

.mt-4 {
    margin-top: 10px;
}

.small {
    font-size: 0.74rem;
}

.d-flex {
    display: flex;
}

.align-items-center {
    align-items: center;
}

.justify-content-between {
    justify-content: space-between;
}

.text-center {
    text-align: center;
}

.text-muted {
    color: var(--apx-text-muted);
}

.fs-5 {
    font-size: 1.1rem;
}

.fw-bold {
    font-weight: 750;
}

.h-100 {
    height: 100%;
}

.flash,
.alert {
    background: var(--apx-panel-solid);
    border: 1px solid var(--apx-border);
    border-radius: 14px;
    color: var(--apx-text);
    margin-bottom: 16px;
    padding: 12px 14px;
}

.apx-command-center {
    background: rgba(20, 29, 44, 0.9);
    border: 1px solid rgba(207, 163, 73, 0.34);
    border-radius: 14px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.22);
    padding: 10px;
}

[data-theme="light"] .apx-command-center {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.84) 100%);
    border-color: rgba(33, 29, 24, 0.08);
    box-shadow: var(--apx-card-shadow);
}

.apx-command-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.apx-command-metric-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
}

.apx-command-metric {
    background: rgba(12, 18, 31, 0.74);
    border: 1px solid rgba(100, 116, 139, 0.78);
    border-radius: 12px;
    display: grid;
    gap: 3px;
    min-height: 74px;
    padding: 10px;
    position: relative;
}

[data-theme="light"] .apx-command-metric {
    background: rgba(255, 250, 242, 0.9);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-command-metric::before {
    border-radius: 999px;
    content: "";
    height: 8px;
    position: absolute;
    right: 14px;
    top: 14px;
    width: 8px;
}

.apx-command-metric span {
    color: var(--apx-text-soft);
    font-size: 0.64rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    padding-right: 18px;
    text-transform: uppercase;
}

.apx-command-metric strong {
    color: var(--apx-text);
    font-size: 0.94rem;
    font-weight: 900;
    line-height: 1.1;
}

.apx-command-metric small {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.62rem;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 1px;
    padding-right: 12px;
}

.apx-command-metric a {
    color: inherit;
}

.apx-command-metric.is-strong {
    border-color: rgba(34, 197, 94, 0.45);
}

.apx-command-metric.is-strong::before {
    background: #22c55e;
}

.apx-command-metric.is-watch {
    border-color: rgba(245, 158, 11, 0.48);
}

.apx-command-metric.is-watch::before {
    background: #f59e0b;
}

.apx-command-metric.is-risk {
    border-color: rgba(244, 63, 94, 0.5);
}

.apx-command-metric.is-risk::before {
    background: #f43f5e;
}

.apx-command-metric.is-setup::before {
    background: #64748b;
}

.apx-admin-form {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-form label {
    display: grid;
    gap: 8px;
}

.apx-admin-form span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-form-wide {
    grid-column: 1 / -1;
}

.apx-admin-env-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.apx-admin-env-card {
    background: rgba(255, 250, 242, 0.92);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: grid;
    gap: 14px;
    padding: 16px;
}

.apx-admin-env-brand {
    align-items: center;
    display: flex;
    gap: 10px;
}

.apx-admin-env-brand img,
.apx-admin-env-brand > span {
    align-items: center;
    background: rgba(207, 163, 73, 0.14);
    border: 1px solid rgba(164, 124, 47, 0.22);
    border-radius: 10px;
    color: var(--apx-text);
    display: inline-flex;
    font-weight: 900;
    height: 40px;
    justify-content: center;
    object-fit: contain;
    padding: 5px;
    width: 40px;
}

.apx-admin-env-brand strong,
.apx-admin-env-brand small {
    display: block;
}

.apx-admin-env-brand small,
.apx-admin-env-card p,
.apx-muted-empty {
    color: var(--apx-text-muted);
}

.apx-admin-color-row {
    align-items: center;
    display: flex;
    gap: 9px;
}

.apx-admin-color-row span {
    border: 1px solid rgba(33, 29, 24, 0.12);
    border-radius: 999px;
    display: inline-block;
    height: 18px;
    width: 18px;
}

.apx-admin-color-row em {
    color: var(--apx-text-soft);
    font-size: 0.8rem;
    font-style: normal;
    font-weight: 800;
    margin-left: auto;
}

.apx-admin-hero-thumb {
    aspect-ratio: 16 / 7;
    border-radius: 10px;
    object-fit: cover;
    width: 100%;
}

.apx-servqual-grid {
    display: grid;
    gap: 12px;
}

.apx-servqual-row {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: 148px 1fr 48px;
}

.apx-servqual-row span {
    color: var(--apx-text-soft);
    font-size: 0.88rem;
    font-weight: 800;
}

.apx-servqual-row strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    text-align: right;
}

.apx-servqual-track {
    background: rgba(15, 23, 42, 0.92);
    border: 1px solid rgba(51, 65, 85, 0.82);
    border-radius: 999px;
    height: 14px;
    overflow: hidden;
}

.apx-servqual-track i {
    background: linear-gradient(90deg, #67e8f9, #86efac, #a7f3d0);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.apx-service-climate-track i {
    background: linear-gradient(90deg, var(--apx-accent), var(--apx-accent-3));
}

.apx-sim-title {
    margin-bottom: 10px;
}

.apx-sim-toolbar {
    align-items: center;
    background: rgba(15, 23, 42, 0.9);
    border: 1px solid rgba(207, 163, 73, 0.28);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(120px, 1fr)) auto;
    margin-bottom: 10px;
    padding: 9px;
    position: sticky;
    top: calc(var(--apx-nav-height) + 10px);
    z-index: 12;
}

[data-theme="light"] .apx-sim-toolbar {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.86) 100%);
    border-color: rgba(33, 29, 24, 0.08);
    box-shadow: 0 14px 30px rgba(50, 39, 26, 0.08);
}

.apx-sim-toolbar div {
    border-right: 1px solid rgba(51, 65, 85, 0.75);
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 3px 9px;
}

[data-theme="light"] .apx-sim-toolbar div {
    border-right-color: rgba(33, 29, 24, 0.08);
}

.apx-sim-toolbar div:last-of-type {
    border-right: 0;
}

.apx-sim-toolbar span,
.apx-sim-control span,
.apx-sim-matrix span,
.apx-sim-slider-grid span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-sim-toolbar strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-sim-save {
    align-items: center;
    background: var(--apx-primary-button);
    border: 1px solid var(--apx-primary-button-border);
    border-radius: 10px;
    box-shadow: var(--apx-primary-button-shadow);
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-weight: 900;
    justify-content: center;
    font-size: 0.82rem;
    min-height: 36px;
    padding: 0 13px;
}

.apx-toolbar-link:hover {
    background: var(--apx-primary-button-hover);
    color: #fff;
}

.apx-page-actionbar,
.apx-dashboard-toolbar {
    margin-bottom: 9px;
}

.apx-dashboard-toolbar {
    grid-template-columns: repeat(auto-fit, minmax(124px, 1fr));
}

.apx-dashboard-toolbar .apx-toolbar-signal {
    border: 1px solid rgba(51, 65, 85, 0.75);
    border-radius: 10px;
    padding: 5px 9px;
}

.apx-dashboard-toolbar .apx-toolbar-signal.is-strong {
    border-color: rgba(34, 197, 94, 0.42);
}

.apx-dashboard-toolbar .apx-toolbar-signal.is-watch {
    border-color: rgba(245, 158, 11, 0.5);
}

.apx-dashboard-toolbar .apx-toolbar-signal.is-risk {
    border-color: rgba(244, 63, 94, 0.55);
}

.apx-dashboard-toolbar .apx-toolbar-signal strong {
    font-size: 0.78rem;
}

.apx-sim-layout {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) 300px;
}

.apx-sim-workbench {
    display: grid;
    gap: 14px;
}

.apx-sim-hero-panel,
.apx-sim-section,
.apx-sim-impact-card {
    background: rgba(15, 23, 42, 0.86);
    border: 1px solid rgba(51, 65, 85, 0.86);
    border-radius: 16px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
}

.apx-sim-hero-panel {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 18px;
}

.apx-sim-hero-panel h5,
.apx-sim-impact-card h5,
.apx-sim-section summary span {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 900;
    margin: 0;
}

.apx-sim-hero-panel p,
.apx-sim-section summary small {
    color: var(--apx-text-muted);
    font-size: 0.82rem;
    font-weight: 650;
    margin: 5px 0 0;
}

.apx-sim-mode-toggle {
    background: rgba(2, 6, 23, 0.62);
    border: 1px solid rgba(51, 65, 85, 0.86);
    border-radius: 12px;
    display: flex;
    padding: 4px;
}

.apx-sim-mode-toggle button {
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: var(--apx-text-muted);
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 850;
    min-height: 34px;
    padding: 0 11px;
}

.apx-sim-mode-toggle button.is-active {
    background: rgba(207, 163, 73, 0.22);
    color: var(--apx-text);
}

[data-theme="light"] .apx-sim-hero-panel,
[data-theme="light"] .apx-sim-section,
[data-theme="light"] .apx-sim-impact-card {
    background: rgba(255, 250, 242, 0.96);
    border: 1px solid rgba(164, 124, 47, 0.12);
    box-shadow: var(--apx-card-shadow);
}

[data-theme="light"] .apx-sim-mode-toggle {
    background: rgba(255, 250, 242, 0.84);
    border-color: rgba(164, 124, 47, 0.16);
}

[data-theme="light"] .apx-sim-mode-toggle button.is-active {
    background: rgba(156, 123, 63, 0.14);
}

.apx-sim-section {
    overflow: hidden;
}

.apx-sim-section summary {
    cursor: pointer;
    display: grid;
    gap: 4px;
    list-style: none;
    padding: 15px 18px;
}

.apx-sim-section summary::-webkit-details-marker {
    display: none;
}

.apx-sim-section summary::after {
    color: var(--apx-text-muted);
    content: "+";
    font-size: 1.3rem;
    font-weight: 800;
    position: absolute;
    right: 18px;
}

.apx-sim-section[open] summary::after {
    content: "-";
}

.apx-sim-section summary {
    position: relative;
}

.apx-sim-control-grid,
.apx-sim-matrix,
.apx-sim-slider-grid {
    border-top: 1px solid rgba(51, 65, 85, 0.78);
    display: grid;
    gap: 12px;
    padding: 14px 18px 18px;
}

.apx-sim-control-grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.apx-sim-control,
.apx-sim-matrix article {
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 12px;
    display: grid;
    gap: 8px;
    padding: 12px;
}

.apx-sim-control.is-priority {
    border-color: rgba(207, 163, 73, 0.48);
}

.apx-sim-control input,
.apx-sim-control select,
.apx-sim-matrix select {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 10px;
    color: var(--apx-text);
    font-size: 0.88rem;
    min-height: 38px;
    padding: 0 10px;
    width: 100%;
}

.apx-sim-control small,
.apx-sim-matrix small {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    line-height: 1.35;
}

.apx-control-details {
    border-top: 1px solid rgba(51, 65, 85, 0.64);
    padding-top: 6px;
}

.apx-control-details summary {
    color: var(--apx-inline-accent);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 850;
}

.apx-control-details p {
    color: var(--apx-text-muted);
    font-size: 0.75rem;
    line-height: 1.38;
    margin: 7px 0 0;
}

.apx-sim-matrix {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.apx-sim-matrix article div {
    display: grid;
    gap: 3px;
}

.apx-sim-matrix strong {
    color: var(--apx-text);
    font-size: 0.88rem;
}

.apx-sim-slider-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-sim-slider-grid label {
    align-items: center;
    background: rgba(2, 6, 23, 0.48);
    border: 1px solid rgba(51, 65, 85, 0.78);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: 110px 1fr 44px;
    padding: 12px;
}

.apx-sim-slider-grid input {
    accent-color: var(--apx-accent);
    appearance: none;
    background: transparent;
    height: 24px;
    width: 100%;
}

.apx-sim-slider-grid input::-webkit-slider-runnable-track {
    background: linear-gradient(90deg, rgba(207, 163, 73, 0.52), rgba(255, 59, 31, 0.48));
    border: 1px solid rgba(203, 213, 225, 0.14);
    border-radius: 999px;
    box-shadow: inset 0 0 0 1px rgba(2, 6, 23, 0.65);
    height: 8px;
}

.apx-sim-slider-grid input::-webkit-slider-thumb {
    -webkit-appearance: none;
    background: #cbd5e1;
    border: 3px solid rgba(207, 163, 73, 0.92);
    border-radius: 999px;
    box-shadow: 0 0 0 4px rgba(207, 163, 73, 0.22), 0 8px 16px rgba(0, 0, 0, 0.32);
    height: 22px;
    margin-top: -8px;
    width: 22px;
}

.apx-sim-slider-grid input::-moz-range-track {
    background: linear-gradient(90deg, rgba(207, 163, 73, 0.52), rgba(255, 59, 31, 0.48));
    border: 1px solid rgba(203, 213, 225, 0.14);
    border-radius: 999px;
    height: 8px;
}

.apx-sim-slider-grid input::-moz-range-thumb {
    background: #cbd5e1;
    border: 3px solid rgba(207, 163, 73, 0.92);
    border-radius: 999px;
    box-shadow: 0 0 0 4px rgba(207, 163, 73, 0.22);
    height: 18px;
    width: 18px;
}

.apx-sim-slider-grid strong {
    color: var(--apx-text);
    font-size: 0.88rem;
    text-align: right;
}

.apx-sim-impact {
    position: sticky;
    top: calc(var(--apx-nav-height) + 88px);
}

.apx-sim-impact-card {
    padding: 18px;
}

.apx-impact-list {
    display: grid;
    gap: 9px;
    margin: 16px 0;
}

.apx-impact-list div {
    align-items: center;
    background: rgba(2, 6, 23, 0.5);
    border: 1px solid rgba(51, 65, 85, 0.74);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr auto auto;
    min-height: 42px;
    padding: 8px 10px;
}

.apx-impact-list span {
    color: var(--apx-text-muted);
    font-size: 0.77rem;
    font-weight: 800;
}

.apx-impact-list strong {
    color: var(--apx-text);
    font-size: 0.9rem;
}

.apx-impact-list em {
    border-radius: 999px;
    font-size: 0.68rem;
    font-style: normal;
    font-weight: 900;
    padding: 4px 7px;
}

.apx-impact-list .is-up {
    background: rgba(34, 197, 94, 0.15);
    color: #86efac;
}

.apx-impact-list .is-flat {
    background: rgba(148, 163, 184, 0.14);
    color: #cbd5e1;
}

.apx-impact-list .is-risk {
    background: rgba(245, 158, 11, 0.16);
    color: #fcd34d;
}

.apx-sim-save.is-wide {
    width: 100%;
}

.apx-sim-notes {
    display: grid;
    gap: 10px;
}

.apx-sim-notes p {
    color: var(--apx-text-muted);
    margin: 0;
}

table {
    border-collapse: collapse;
    width: 100%;
}

th,
td {
    border-bottom: 1px solid var(--apx-border);
    padding: 10px;
    text-align: left;
}

tbody tr:last-child td {
    border-bottom: 0;
}

@media (max-width: 980px) {
    .apx-page-title {
        display: block;
    }

    .apx-page-tools {
        justify-content: flex-start;
        margin-top: 14px;
    }

    .apx-app-shell {
        display: block;
    }

    .apx-sidebar {
        border-bottom: 1px solid var(--apx-border);
        border-right: 0;
        box-shadow: 0 14px 32px rgba(0, 0, 0, 0.24);
        min-height: 0;
        padding: 16px;
        position: relative;
    }

    .apx-sidebar-nav {
        gap: 10px;
        margin-top: 10px;
    }

    .apx-nav-group-title {
        padding-left: 0;
    }

    .apx-nav-list {
        grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    }

    .apx-login-card {
        padding: 68px 28px 38px;
    }

    .apx-section-heading {
        display: grid;
    }

    .apx-capex-expansion-overview {
        grid-template-columns: 1fr;
    }

    .apx-capex-commandbar {
        top: 0;
    }

    .apx-main {
        padding: 24px 16px 48px;
    }

    .apx-shell-topbar {
        justify-content: flex-start;
    }

    .tab-content,
    .apx-card {
        padding: 18px;
    }

    .apx-dashboard-hero {
        display: grid;
        padding: 22px;
    }

    .apx-dashboard-status {
        min-width: 0;
    }

    .apx-admin-form {
        grid-template-columns: 1fr;
    }

    .apx-help-grid,
    .apx-decision-intel,
    .apx-workflow-strip,
    .apx-decision-brief-panel,
    .apx-setting-scenarios,
    .apx-fnb-mode-switch,
    .apx-fnb-profit-check {
        grid-template-columns: 1fr;
    }

    .apx-fnb-mode-row,
    .apx-fnb-mode-controls,
    .apx-fnb-page-tools,
    .apx-fnb-menu-tools {
        align-items: flex-start;
        display: grid;
        justify-content: stretch;
    }

    .apx-flow-step {
        justify-content: flex-start;
    }

    .apx-sim-toolbar,
    .apx-sim-layout,
    .apx-sim-slider-grid {
        grid-template-columns: 1fr;
    }

    .apx-sim-toolbar,
    .apx-sim-impact {
        position: static;
    }

    .apx-sim-toolbar div {
        border-right: 0;
        border-bottom: 1px solid rgba(51, 65, 85, 0.75);
    }

    .apx-sim-hero-panel {
        align-items: flex-start;
        display: grid;
    }

    .apx-sim-slider-grid label {
        grid-template-columns: 1fr;
    }

    .apx-capex-preview-grid,
    .apx-upgrade-card-grid {
        grid-template-columns: 1fr;
    }

    .apx-cockpit-prompt {
        display: none;
    }

    .apx-refurb-grid {
        grid-template-columns: 1fr;
    }

    .apx-servqual-row {
        grid-template-columns: 1fr;
    }

    .apx-servqual-row strong {
        text-align: left;
    }
}

/* Product Entry */

.apx-home-shell {
    align-items: stretch;
    display: grid;
    gap: 24px;
    max-width: 1180px;
    padding: 48px 32px 64px;
}

.apx-home-hero,
.apx-home-card {
    background: rgba(15, 23, 42, 0.97);
    border: 1px solid var(--apx-border);
    border-radius: var(--apx-radius-lg);
    box-shadow: var(--apx-shadow);
    position: relative;
}

.apx-home-hero {
    overflow: hidden;
    padding: 72px 56px 56px;
}

.apx-home-brand-icon {
    display: block;
    height: 86px;
    margin-bottom: 22px;
    width: 86px;
}

.apx-home-kicker,
.apx-home-card-label {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-home-hero h1,
.apx-home-card h2 {
    margin: 0;
}

.apx-home-hero h1 {
    font-size: clamp(2.6rem, 4vw, 4.5rem);
    line-height: 0.96;
    margin-top: 18px;
    max-width: 10ch;
}

.apx-home-hero p,
.apx-home-card p,
.apx-home-card li {
    color: var(--apx-text-soft);
    line-height: 1.6;
}

.apx-home-hero p {
    font-size: 1.02rem;
    margin: 20px 0 0;
    max-width: 62ch;
}

.apx-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}

.apx-home-button {
    background: var(--apx-primary-button);
    border-radius: 12px;
    box-shadow: var(--apx-primary-button-shadow);
    color: #fff;
    display: inline-flex;
    font-size: 0.95rem;
    font-weight: 800;
    justify-content: center;
    min-height: 52px;
    padding: 0 22px;
    align-items: center;
}

.apx-home-button:hover {
    background: var(--apx-primary-button-hover);
}

.apx-home-button-secondary {
    background: transparent;
    border: 1px solid var(--apx-border);
    box-shadow: none;
    color: var(--apx-text);
}

.apx-home-grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-home-card {
    padding: 28px;
}

.apx-home-card h2 {
    font-size: 1.25rem;
    margin-top: 14px;
}

.apx-home-card ul,
.apx-home-card ol {
    margin: 18px 0 0;
    padding-left: 18px;
}

.apx-home-route-list {
    list-style: none;
    padding-left: 0 !important;
}

.apx-home-route-list li {
    border-top: 1px solid rgba(51, 65, 85, 0.58);
    padding: 12px 0;
}

.apx-home-route-list li:first-child {
    border-top: 0;
    padding-top: 0;
}

@media (max-width: 960px) {
    .apx-home-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .apx-home-shell {
        padding: 24px 18px 40px;
    }

    .apx-home-hero {
        padding: 64px 24px 28px;
    }

    .apx-home-card {
        padding: 22px;
    }

    .apx-home-actions {
        flex-direction: column;
    }
}

/* Dashboard Orientation */

.apx-orientation-card {
    overflow: hidden;
}

.apx-orientation-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-orientation-grid-3up {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-orientation-link {
    background: linear-gradient(180deg, rgba(36, 49, 69, 0.92), rgba(18, 26, 40, 0.97));
    border: 1px solid rgba(207, 163, 73, 0.24);
    border-radius: 16px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
    display: grid;
    gap: 10px;
    min-height: 168px;
    padding: 20px;
    transition: transform 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

[data-theme="light"] .apx-orientation-link {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.84) 100%);
    border-color: rgba(33, 29, 24, 0.08);
    box-shadow: var(--apx-card-shadow);
}

[data-theme="light"] .apx-orientation-link span {
    color: rgba(148, 113, 63, 0.92);
}

[data-theme="light"] .apx-orientation-link small {
    color: rgba(78, 60, 40, 0.9);
}

.apx-orientation-link:hover {
    border-color: rgba(207, 163, 73, 0.42);
    box-shadow: 0 14px 28px rgba(15, 23, 42, 0.28);
    transform: translateY(-2px);
}

[data-theme="light"] .apx-orientation-link:hover {
    border-color: rgba(156, 123, 63, 0.26);
    box-shadow: 0 16px 32px rgba(50, 39, 26, 0.14);
}

.apx-orientation-link span {
    color: #d3dceb;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-orientation-link strong {
    color: var(--apx-text);
    font-size: 1rem;
    line-height: 1.4;
}

.apx-orientation-link small {
    color: #e2e8f0;
    font-size: 0.88rem;
    line-height: 1.55;
}

@media (max-width: 960px) {
    .apx-orientation-grid,
    .apx-orientation-grid-3up {
        grid-template-columns: 1fr;
    }
}

/* Admin Research Analytics */

.apx-research-hero {
    overflow: hidden;
}

.apx-research-topbar {
    display: grid;
    gap: 18px;
}

.apx-research-context {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-research-context > div,
.apx-research-list-row {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    padding: 18px;
}

.apx-research-context span,
.apx-research-list-row span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.apx-research-context strong,
.apx-research-list-row strong {
    color: var(--apx-text);
    font-size: 1rem;
    line-height: 1.4;
}

.apx-research-export-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.apx-research-action,
.apx-research-submit {
    align-items: center;
    background: var(--apx-accent);
    border: 0;
    border-radius: 12px;
    box-shadow: 0 16px 32px rgba(164, 124, 47, 0.18);
    color: #fff;
    display: inline-flex;
    font-size: 0.92rem;
    font-weight: 800;
    justify-content: center;
    min-height: 48px;
    padding: 0 18px;
}

.apx-research-action:hover,
.apx-research-submit:hover {
    background: #8e6927;
}

.apx-research-settings-form {
    display: grid;
    gap: 16px;
}

.apx-research-toggle {
    align-items: start;
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    display: grid;
    gap: 14px;
    grid-template-columns: auto 1fr;
    padding: 18px;
}

.apx-research-toggle input {
    accent-color: var(--apx-accent);
    height: 18px;
    margin-top: 4px;
    width: 18px;
}

.apx-research-toggle strong {
    display: block;
    margin-bottom: 6px;
}

.apx-research-toggle small {
    color: var(--apx-text-soft);
    line-height: 1.55;
}

.apx-research-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-research-list {
    display: grid;
    gap: 14px;
}

@media (max-width: 960px) {
    .apx-research-context,
    .apx-research-grid {
        grid-template-columns: 1fr;
    }
}

/* Facilitator Research State */

.apx-research-status-banner {
    background:
        radial-gradient(circle at top right, rgba(207, 163, 73, 0.18), transparent 34%),
        linear-gradient(180deg, rgba(22, 30, 45, 0.98), rgba(16, 23, 35, 0.94));
}

.apx-research-status-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-research-status-grid article {
    background: rgba(11, 18, 30, 0.68);
    border: 1px solid rgba(207, 163, 73, 0.26);
    border-radius: 16px;
    padding: 18px;
}

.apx-research-status-grid span {
    color: #d5deea;
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.apx-research-status-grid strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.55;
}

.apx-research-status-grid p {
    color: #e2e8f0;
}

[data-theme="light"] .apx-research-status-banner {
    background:
        radial-gradient(circle at top right, rgba(156, 123, 63, 0.12), transparent 34%),
        linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.9) 100%);
}

[data-theme="light"] .apx-research-status-grid article {
    background: rgba(255, 250, 242, 0.94);
    border-color: rgba(33, 29, 24, 0.08);
}

[data-theme="light"] .apx-research-status-grid p {
    color: var(--apx-text-soft);
}

.apx-orientation-card {
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(15, 23, 42, 0.94));
}

[data-theme="light"] .apx-orientation-card {
    background:
        linear-gradient(180deg, rgba(255, 248, 240, 0.98), rgba(245, 236, 223, 0.96));
    border-color: rgba(33, 29, 24, 0.08);
    box-shadow: var(--apx-card-shadow);
}

[data-theme="light"] .apx-orientation-card .apx-section-kicker {
    color: rgba(122, 88, 43, 0.92);
}

[data-theme="light"] .apx-orientation-card h5 {
    color: #201914;
}

[data-theme="light"] .apx-orientation-card p,
[data-theme="light"] .apx-orientation-card .text-muted {
    color: rgba(73, 57, 39, 0.88) !important;
}

.apx-flash-stack {
    gap: 12px;
    margin-bottom: 16px;
}

.apx-flash {
    align-items: center;
    backdrop-filter: blur(18px);
    border-radius: 16px;
    box-shadow: 0 16px 38px rgba(2, 6, 23, 0.28);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 14px 16px;
    transition: opacity 0.22s ease, transform 0.22s ease;
}

.apx-flash.is-hiding {
    opacity: 0;
    transform: translateY(-6px);
}

.apx-flash-dismiss {
    align-items: center;
    background: rgba(15, 23, 42, 0.08);
    border: 1px solid rgba(15, 23, 42, 0.16);
    border-radius: 7px;
    color: inherit;
    cursor: pointer;
    display: inline-flex;
    font-size: 1rem;
    font-weight: 900;
    height: 24px;
    justify-content: center;
    line-height: 1;
    padding: 0;
    width: 24px;
}

.apx-flash-dismiss:hover {
    background: rgba(15, 23, 42, 0.14);
}

.apx-flash-warning {
    background: #fff7df;
    border-color: rgba(245, 158, 11, 0.5);
    color: #6f4700;
}

.apx-flash-error,
.apx-flash-danger {
    background: #fff1f1;
    border-color: rgba(185, 28, 28, 0.42);
    color: #7f1d1d;
}

.apx-flash-success {
    background: rgba(179, 32, 38, 0.94);
    border-color: rgba(179, 32, 38, 0.94);
    color: #fff7f7;
}

@media (max-width: 960px) {
    .apx-research-status-grid {
        grid-template-columns: 1fr;
    }
}

/* Participant Report Empty States */

.apx-report-empty-state {
    background:
        radial-gradient(circle at top right, rgba(207, 163, 73, 0.16), transparent 34%),
        linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(15, 23, 42, 0.93));
}

.apx-report-empty-state-light {
    background:
        radial-gradient(circle at top right, rgba(207, 163, 73, 0.10), transparent 34%),
        linear-gradient(180deg, rgba(255, 252, 246, 0.98), rgba(247, 241, 231, 0.96));
    border-color: rgba(124, 97, 62, 0.16);
    box-shadow: 0 18px 44px rgba(64, 44, 17, 0.08);
}

.apx-report-empty-state-light .apx-section-kicker,
.apx-report-empty-state-light h5,
.apx-report-empty-state-light p,
.apx-report-empty-state-light .text-muted {
    color: var(--apx-text);
}

.apx-report-empty-state-light .apx-section-kicker {
    color: var(--apx-text-muted);
}

.apx-report-empty-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 18px;
}

.apx-report-empty-panel {
    background: rgba(2, 6, 23, 0.46);
    border: 1px solid rgba(207, 163, 73, 0.18);
    border-radius: 16px;
    display: grid;
    gap: 10px;
    min-height: 170px;
    padding: 20px;
}

.apx-report-empty-panel span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-report-empty-panel strong {
    color: var(--apx-text);
    font-size: 1rem;
    line-height: 1.45;
}

.apx-report-empty-panel small {
    color: var(--apx-text-soft);
    font-size: 0.9rem;
    line-height: 1.55;
}

.apx-report-empty-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

@media (max-width: 960px) {
    .apx-report-empty-grid {
        grid-template-columns: 1fr;
    }
}

/* Login Upgrade */

.apx-login-shell-wide {
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, 452px);
    max-width: 1180px;
}

.apx-login-intro {
    align-self: center;
    display: grid;
    gap: 18px;
    padding: 24px 8px 24px 0;
}

.apx-login-kicker,
.apx-login-highlights span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-login-intro h1 {
    font-size: clamp(2.8rem, 5vw, 4.9rem);
    line-height: 0.96;
    margin: 0;
    max-width: 11ch;
}

.apx-login-intro p {
    color: var(--apx-text-soft);
    font-size: 1rem;
    line-height: 1.7;
    margin: 0;
    max-width: 58ch;
}

.apx-login-highlights {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 8px;
}

.apx-login-highlights article {
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(207, 163, 73, 0.18);
    border-radius: 18px;
    display: grid;
    gap: 10px;
    min-height: 158px;
    padding: 20px;
}

.apx-login-highlights strong,
.apx-login-subtitle {
    color: var(--apx-text-soft);
    font-weight: 700;
    line-height: 1.55;
}

.apx-login-subtitle {
    display: block;
    font-size: 0.94rem;
    margin-top: 10px;
}

.apx-login-card {
    width: min(100%, 452px);
}

.apx-login-body-branded .apx-login-shell-wide {
    gap: 14px;
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 360px);
    max-width: 1020px;
}

.apx-login-body-branded .apx-login-intro {
    gap: 12px;
    padding-top: 8px;
    padding-bottom: 8px;
}

.apx-login-body-branded .apx-login-intro h1 {
    font-size: clamp(2.2rem, 4.1vw, 3.9rem);
    max-width: 10ch;
}

.apx-login-body-branded .apx-login-intro p {
    font-size: 0.9rem;
    line-height: 1.52;
    max-width: 48ch;
}

.apx-login-body-branded .apx-login-highlights article {
    min-height: 118px;
    padding: 14px 16px;
}

.apx-login-body-branded .apx-login-card {
    max-width: 360px;
    padding: 36px 28px 26px;
    width: min(100%, 360px);
}

.apx-login-body-branded .apx-login-heading {
    margin-bottom: 16px;
}

.apx-login-body-branded .apx-login-icon {
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    height: auto;
    margin-bottom: 14px;
    width: auto;
}

.apx-login-body-branded .apx-login-icon.apx-login-icon-applied-logo {
    padding: 0;
}

.apx-login-body-branded .apx-login-icon.apx-login-icon-applied-logo img {
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    display: block;
}

.apx-login-body-branded .apx-login-icon img {
    height: 48px;
    width: auto;
}

.apx-login-body-branded .apx-login-heading h1 {
    font-size: 19px;
    margin-bottom: 6px;
}

.apx-login-body-branded .apx-login-subtitle {
    font-size: 0.8rem;
    line-height: 1.34;
    margin-top: 5px;
}

@media (max-width: 960px) {
    .apx-login-shell-wide {
        grid-template-columns: 1fr;
    }

    .apx-login-intro {
        padding-right: 0;
    }

    .apx-login-highlights {
        grid-template-columns: 1fr;
    }

    .apx-login-card {
        width: 100%;
    }

    .apx-login-body-branded .apx-login-shell-wide {
        grid-template-columns: 1fr;
    }

    .apx-login-body-branded .apx-login-card {
        max-width: none;
        width: 100%;
    }
}

/* Facilitator Dashboard Completion */

.apx-facilitator-title {
    margin-bottom: 14px;
}

.apx-facilitator-toolbar {
    margin-bottom: 18px;
    position: static;
    top: auto;
    z-index: 1;
}

.apx-staff-page-title {
    margin-bottom: 14px;
}

.apx-role-facilitator .apx-assessment-rubric div,
.apx-role-admin .apx-assessment-rubric div,
.apx-role-facilitator .apx-rubric-settings-grid label,
.apx-role-admin .apx-rubric-settings-grid label,
.apx-role-facilitator .apx-guide-target-grid article,
.apx-role-admin .apx-guide-target-grid article,
.apx-role-facilitator .apx-guide-grid article,
.apx-role-admin .apx-guide-grid article,
.apx-role-facilitator .apx-guide-checklist article,
.apx-role-admin .apx-guide-checklist article {
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
}

.apx-role-facilitator .apx-assessment-rubric div,
.apx-role-admin .apx-assessment-rubric div {
    gap: 5px;
    padding: 12px;
}

.apx-role-facilitator .apx-rubric-total,
.apx-role-admin .apx-rubric-total {
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    padding: 10px 12px;
}

.apx-role-facilitator .apx-rubric-total span,
.apx-role-admin .apx-rubric-total span,
.apx-role-facilitator .apx-rubric-settings-grid span,
.apx-role-admin .apx-rubric-settings-grid span,
.apx-role-facilitator .apx-guide-grid span,
.apx-role-admin .apx-guide-grid span,
.apx-role-facilitator .apx-guide-target-grid span,
.apx-role-admin .apx-guide-target-grid span {
    color: var(--apx-text-muted);
}

.apx-role-facilitator .apx-rubric-settings-grid label,
.apx-role-admin .apx-rubric-settings-grid label,
.apx-role-facilitator .apx-guide-target-grid article,
.apx-role-admin .apx-guide-target-grid article,
.apx-role-facilitator .apx-guide-grid article,
.apx-role-admin .apx-guide-grid article,
.apx-role-facilitator .apx-guide-checklist article,
.apx-role-admin .apx-guide-checklist article {
    padding: 12px;
}

.apx-role-facilitator .apx-module-toggle,
.apx-role-admin .apx-module-toggle,
.apx-role-facilitator .apx-feature-settings,
.apx-role-admin .apx-feature-settings {
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
}

.apx-role-facilitator .apx-feature-settings summary,
.apx-role-admin .apx-feature-settings summary {
    padding: 11px 12px;
}

.apx-role-facilitator .apx-feature-settings > div,
.apx-role-admin .apx-feature-settings > div,
.apx-role-facilitator .apx-module-master-toggle,
.apx-role-admin .apx-module-master-toggle {
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-role-facilitator .apx-module-master-toggle,
.apx-role-admin .apx-module-master-toggle {
    background: rgba(164, 124, 47, 0.08);
    border-radius: 0;
}

.apx-role-facilitator .apx-setting-toggle-compact,
.apx-role-admin .apx-setting-toggle-compact {
    background: rgba(255, 250, 242, 0.94);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-role-facilitator .apx-settings-head,
.apx-role-admin .apx-settings-head {
    align-items: flex-start;
}

.apx-role-facilitator .apx-settings-head p,
.apx-role-admin .apx-settings-head p {
    max-width: 720px;
    text-align: left;
}

.apx-staff-report-actions {
    margin-top: 10px;
    padding: 10px 12px;
}

.apx-staff-report-shell {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-staff-report-filter {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(240px, 1.24fr) minmax(220px, 1fr) minmax(150px, 0.66fr) repeat(4, minmax(74px, 0.34fr)) minmax(118px, auto);
}

.apx-staff-report-filter label {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-staff-report-filter span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.apx-staff-report-filter select,
.apx-staff-report-filter input {
    min-height: 36px;
    min-width: 0;
    width: 100%;
}

.apx-staff-report-filter .apx-staff-inline-save {
    min-width: 118px;
    padding-left: 14px;
    padding-right: 14px;
}

.apx-report-production-card {
    align-content: start;
    background: linear-gradient(180deg, rgba(255, 251, 244, 0.96) 0%, rgba(249, 244, 235, 0.92) 100%);
    border: 1px solid rgba(177, 148, 89, 0.18);
    border-radius: 18px;
    display: grid;
    gap: 8px;
    justify-self: end;
    max-width: 420px;
    padding: 12px;
    width: min(100%, 420px);
}

.apx-report-production-head {
    display: grid;
    gap: 2px;
}

.apx-report-production-head strong {
    color: var(--apx-text);
    font-size: 0.96rem;
    font-weight: 900;
    line-height: 1.2;
}

.apx-report-production-card label {
    display: grid;
    gap: 4px;
}

.apx-report-production-card label span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.apx-report-production-card select {
    min-height: 38px;
    width: 100%;
}

.apx-report-production-card .apx-page-tool-link-strong {
    justify-content: center;
    width: 100%;
}

.apx-report-production-card p {
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.35;
}

.apx-academic-report-shell {
    margin-top: 12px;
    padding: 0;
    overflow: hidden;
}

.apx-academic-report-header {
    border-bottom: 1px solid rgba(177, 148, 89, 0.16);
    padding: 18px 20px 12px;
}

.apx-academic-report-header h2 {
    color: var(--apx-text);
    font-size: 2rem;
    line-height: 1.05;
    margin: 0 0 8px;
}

.apx-academic-report-header p {
    color: var(--apx-text-soft);
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
}

.apx-academic-report-context {
    background: linear-gradient(180deg, rgba(251, 246, 237, 0.95) 0%, rgba(248, 242, 231, 0.92) 100%);
    border-bottom: 1px solid rgba(177, 148, 89, 0.14);
    display: grid;
}

.apx-academic-context-row {
    display: grid;
    gap: 10px;
    grid-template-columns: 88px minmax(0, 1.2fr) 88px minmax(0, 1fr);
    padding: 10px 20px;
}

.apx-academic-context-row + .apx-academic-context-row {
    border-top: 1px solid rgba(177, 148, 89, 0.1);
}

.apx-academic-context-row span {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-academic-context-row strong {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 700;
    min-width: 0;
}

.apx-academic-report-band {
    border-bottom: 1px solid rgba(177, 148, 89, 0.14);
    padding: 18px 20px;
}

.apx-academic-report-band:last-child {
    border-bottom: 0;
}

.apx-academic-report-band-head {
    align-items: end;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apx-academic-report-band-head h3 {
    color: var(--apx-text);
    font-size: 1.15rem;
    line-height: 1.15;
    margin: 0;
}

.apx-academic-report-band-head strong,
.apx-academic-report-band-head small {
    color: var(--apx-text-soft);
    font-size: 0.84rem;
    font-weight: 800;
}

.apx-academic-report-lead {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.45;
    margin: 0 0 10px;
}

.apx-academic-report-blocks {
    display: grid;
    gap: 12px;
}

.apx-academic-report-block {
    display: grid;
    gap: 4px;
}

.apx-academic-report-block span {
    color: var(--apx-text-soft);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.apx-academic-report-block p {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.5;
    margin: 0;
}

.apx-academic-inline-table {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.apx-academic-report-table th,
.apx-academic-report-table td {
    font-size: 0.9rem;
    vertical-align: top;
}

.apx-staff-report-cover {
    align-items: center;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 12px 14px;
}

.apx-staff-report-cover h2 {
    color: var(--apx-text);
    font-size: 1.12rem;
    margin: 0;
}

.apx-staff-report-cover p {
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 800;
    max-width: 720px;
    text-align: right;
}

.apx-staff-toolbar {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(50, 39, 26, 0.06);
    display: grid;
    gap: 4px;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    margin-bottom: 14px;
    padding: 7px;
    position: static;
    top: auto;
    z-index: 1;
}

.apx-staff-toolbar div {
    border-right: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 2px;
    min-width: 0;
    padding: 4px 10px;
}

.apx-staff-toolbar div:last-of-type {
    border-right: 0;
}

.apx-staff-toolbar span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-staff-toolbar strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-facilitator-title-actions {
    align-items: flex-start;
}

.apx-facilitator-workflow-tabs,
.apx-admin-workflow-tabs {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 14px;
}

.apx-facilitator-workflow-tabs a,
.apx-admin-workflow-tabs a {
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    color: var(--apx-text-soft);
    font-size: 0.78rem;
    font-weight: 900;
    min-height: 30px;
    padding: 5px 11px;
    text-align: center;
    text-decoration: none;
    transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease;
    width: auto;
}

.apx-facilitator-workflow-tabs a:hover,
.apx-admin-workflow-tabs a:hover {
    border-color: rgba(164, 124, 47, 0.28);
    color: var(--apx-text);
    transform: translateY(-1px);
}

.apx-facilitator-workflow-tabs a.is-current,
.apx-admin-workflow-tabs a.is-current {
    background: rgba(164, 124, 47, 0.12);
    border-color: rgba(164, 124, 47, 0.3);
    color: var(--apx-text);
}

.apx-facilitator-command-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-facilitator-dashboard-shortcuts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-facilitator-command-card {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    box-shadow: 0 10px 24px rgba(50, 39, 26, 0.06);
    display: grid;
    gap: 4px;
    min-height: 70px;
    padding: 11px 12px;
}

.apx-facilitator-command-card:hover {
    border-color: rgba(164, 124, 47, 0.26);
    transform: translateY(-1px);
}

.apx-facilitator-command-card span,
.apx-facilitator-release-summary label > span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-facilitator-command-card strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    line-height: 1.25;
}

.apx-admin-workspace-card summary.apx-admin-workspace-card-head {
    align-items: start;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.apx-admin-workspace-card summary.apx-admin-workspace-card-head::-webkit-details-marker {
    display: none;
}

.apx-facilitator-release-form,
.apx-staff-release-form {
    margin: 0;
}

.apx-facilitator-release-shell,
.apx-staff-release-shell {
    align-items: start;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(240px, 270px) minmax(0, 1fr);
}

.apx-facilitator-release-controls,
.apx-staff-release-controls {
    min-width: 0;
}

.apx-facilitator-release-toolbar,
.apx-staff-release-toolbar {
    align-items: start;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr;
    margin-bottom: 0;
}

.apx-facilitator-release-depth,
.apx-staff-release-depth {
    display: grid;
    gap: 5px;
    margin: 0;
}

.apx-facilitator-release-depth select,
.apx-staff-release-depth select {
    font-size: 1rem;
}

.apx-facilitator-release-stats,
.apx-staff-release-stats {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-facilitator-release-save,
.apx-staff-release-save {
    display: flex;
    justify-content: stretch;
    min-width: 0;
}

.apx-facilitator-release-total,
.apx-staff-release-total {
    min-width: 0;
}

.apx-facilitator-release-save .apx-staff-inline-save,
.apx-staff-release-save .apx-staff-inline-save {
    width: 100%;
}

.apx-facilitator-release-grid,
.apx-staff-release-grid {
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(186px, 1fr));
}

.apx-facilitator-release-grid .apx-report-library-card,
.apx-staff-release-grid .apx-report-library-card {
    border-radius: 14px;
    gap: 4px;
    min-height: 104px;
    padding: 11px 12px;
}

.apx-facilitator-release-grid .apx-report-library-card input,
.apx-staff-release-grid .apx-report-library-card input {
    height: 16px;
    width: 16px;
}

.apx-report-release-check {
    align-items: center;
    display: flex;
    gap: 8px;
    margin: 0;
}

.apx-report-release-mode {
    display: grid;
    gap: 5px;
    margin: 0;
}

.apx-report-release-mode span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-report-release-mode select {
    min-height: 38px;
}

.apx-report-library-card .apx-report-release-check span {
    margin-bottom: 0;
}

.apx-facilitator-release-grid .apx-report-library-card strong,
.apx-staff-release-grid .apx-report-library-card strong {
    font-size: 0.9rem;
    line-height: 1.15;
}

.apx-facilitator-release-grid .apx-report-library-card small,
.apx-staff-release-grid .apx-report-library-card small {
    font-size: 0.68rem;
    line-height: 1.28;
}

.apx-report-release-meta {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.apx-facilitator-release-panel .apx-section-heading,
.apx-staff-release-panel .apx-section-heading {
    align-items: end;
    gap: 10px;
    margin-bottom: 6px;
}

.apx-facilitator-release-panel .apx-section-heading p,
.apx-staff-release-panel .apx-section-heading p {
    margin-bottom: 0;
}

.apx-staff-release-intro {
    display: grid;
    gap: 5px;
}

.apx-staff-release-intro span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-release-intro strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    line-height: 1.24;
}

.apx-staff-release-intro small {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    line-height: 1.34;
}

.apx-ops-policy-inline {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 12px;
}

.apx-report-release-meta small {
    margin: 0;
}

.apx-report-release-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 8px;
    margin-top: 0;
}

@media (max-width: 980px) {
    .apx-control-inline-grid-two,
    .apx-control-inline-grid-three,
    .apx-control-inline-grid-four,
    .apx-decision-access-columns {
        grid-template-columns: 1fr;
    }

    .apx-feature-toggle-body {
        grid-template-columns: 1fr;
        padding-left: 10px;
    }

    .apx-decision-access-table > summary,
    .apx-decision-access-table-head,
    .apx-decision-access-table-row {
        grid-template-columns: 28px minmax(0, 1fr);
    }

    .apx-decision-access-summary-main {
        grid-column: 1 / -1;
    }

    .apx-decision-access-table > summary strong,
    .apx-decision-access-table > summary em,
    .apx-decision-access-table > summary::after {
        grid-column: 2;
    }

    .apx-decision-access-table-head {
        display: none;
    }

    .apx-decision-access-table-row > span:nth-child(3),
    .apx-decision-access-table-row > span:nth-child(4) {
        grid-column: 2;
    }

    .apx-admin-governance-rail,
    .apx-admin-scaffold-grid {
        grid-template-columns: 1fr;
    }

    .apx-admin-inline-metric-row,
    .apx-admin-inline-flag-grid {
        grid-template-columns: 1fr;
    }

    .apx-report-access-sheet th:nth-child(3),
    .apx-report-access-sheet th:nth-child(4),
    .apx-report-access-sheet td:nth-child(3),
    .apx-report-access-sheet td:nth-child(4),
    .apx-report-access-sheet th:nth-child(5),
    .apx-report-access-sheet td:nth-child(5) {
        width: auto;
    }

    .apx-admin-governance-compact-sheet td:first-child {
        width: auto;
    }

    .apx-admin-governance-checklist colgroup {
        display: none;
    }

    .apx-admin-governance-checklist tr {
        display: grid;
        gap: 4px 8px;
        grid-template-columns: 28px minmax(0, 1fr);
        padding: 8px 0;
    }

    .apx-admin-governance-checklist td {
        border-bottom: 0;
        padding: 0;
    }

    .apx-admin-governance-checklist tbody tr {
        border-bottom: 1px solid rgba(33, 29, 24, 0.07);
    }

    .apx-admin-governance-checklist tbody tr:last-child {
        border-bottom: 0;
    }

    .apx-admin-governance-check {
        grid-row: 1 / span 2;
        padding-left: 0;
    }

    .apx-admin-governance-description {
        grid-column: 2;
    }

    .apx-admin-governance-controls {
        grid-template-columns: 1fr;
    }

    .apx-admin-governance-report-line {
        display: grid;
        gap: 2px;
    }
}

.apx-report-release-actions a {
    min-height: 28px;
    padding: 6px 10px;
}

.apx-facilitator-release-grid .apx-page-tool-link {
    font-size: 0.7rem;
    min-height: 28px;
    padding: 5px 9px;
}

.apx-staff-two-column {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1.18fr) minmax(280px, 0.82fr);
    align-items: start;
}

.apx-staff-rubric-grid {
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
}

.apx-staff-snapshot-list {
    display: grid;
    gap: 10px;
}

.apx-staff-snapshot-card {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 5px;
    padding: 11px 12px;
}

.apx-staff-snapshot-card span,
.apx-staff-reset-form label > span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-snapshot-card strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.24;
}

.apx-staff-snapshot-card p,
.apx-staff-snapshot-card small {
    color: var(--apx-text-muted);
    line-height: 1.36;
    margin: 0;
}

.apx-staff-snapshot-card.is-empty {
    background: rgba(247, 241, 231, 0.78);
}

.apx-staff-operations-hero {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-operations-hero .apx-staff-toolbar {
    margin-bottom: 12px;
}

.apx-staff-operations-status {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-staff-operations-status article,
.apx-staff-operations-card,
.apx-staff-operations-warning {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 5px;
    padding: 11px 12px;
}

.apx-staff-operations-status span,
.apx-staff-operations-card span,
.apx-staff-operations-warning span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-operations-status strong,
.apx-staff-operations-card strong,
.apx-staff-operations-warning strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.24;
}

.apx-staff-operations-status small,
.apx-staff-operations-card small,
.apx-staff-operations-warning small {
    color: var(--apx-text-muted);
    line-height: 1.34;
}

.apx-staff-operations-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
}

.apx-staff-operations-panel {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-operations-transfer-grid,
.apx-staff-operations-guardrails {
    display: grid;
    gap: 10px;
}

.apx-staff-operations-transfer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-staff-operations-card.is-alt {
    background: rgba(247, 241, 231, 0.76);
}

.apx-staff-operations-list {
    color: var(--apx-text-soft);
    display: grid;
    gap: 6px;
    margin: 2px 0 0;
    padding-left: 18px;
}

.apx-staff-operations-list li {
    line-height: 1.35;
}

.apx-staff-operations-reset-grid {
    display: grid;
    gap: 12px;
}

.apx-staff-operations-restart {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
}

.apx-staff-operations-restart-copy {
    display: grid;
    gap: 6px;
}

.apx-staff-operations-restart-copy strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    line-height: 1.35;
}

.apx-staff-operations-restart-copy span {
    color: var(--apx-text-soft);
    font-size: 0.84rem;
    line-height: 1.45;
}

.apx-staff-operations-restart-actions {
    align-items: center;
    display: grid;
    gap: 10px;
    justify-items: end;
}

.apx-staff-operations-restart-summary {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    min-width: 100%;
    padding: 10px 12px;
}

.apx-staff-operations-restart-summary span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-staff-operations-restart-summary strong {
    font-size: 0.94rem;
    line-height: 1.3;
}

.apx-staff-restart-submit {
    min-width: 260px;
}

.apx-staff-operations-guardrails-compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-staff-operations-warning {
    background: linear-gradient(180deg, rgba(255, 248, 238, 0.98) 0%, rgba(244, 233, 220, 0.88) 100%);
    border-color: rgba(164, 124, 47, 0.14);
}

.apx-staff-operations-savebar {
    margin-top: 12px;
}

.apx-staff-operations-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-staff-operations-command {
    align-items: end;
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(240px, 1fr) minmax(240px, 1fr) auto;
    padding: 12px;
}

.apx-staff-operations-command-mode,
.apx-staff-operations-command-group,
.apx-staff-operations-command-submit {
    display: grid;
    gap: 4px;
    margin: 0;
}

.apx-staff-operations-command-mode span,
.apx-staff-operations-command-group span {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-operations-command-fields {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-auto-columns: minmax(180px, 1fr);
    grid-auto-flow: column;
    min-width: 0;
}

.apx-staff-operations-command-group[hidden] {
    display: none !important;
}

.apx-staff-operations-verify-note {
    align-content: center;
    background: rgba(191, 219, 254, 0.22);
    border: 1px solid rgba(59, 130, 246, 0.18);
    border-radius: 10px;
    min-height: 40px;
    padding: 8px 10px;
}

.apx-staff-operations-command-mode .form-select,
.apx-staff-operations-command-group .form-control,
.apx-staff-operations-command-group .form-select {
    height: 40px;
    min-height: 40px;
}

.apx-staff-operations-command-mode .form-select {
    font-size: 1rem;
}

.apx-staff-operations-command-submit {
    align-items: end;
    justify-items: end;
    min-width: 190px;
}

.apx-staff-operations-command-submit .apx-staff-inline-save {
    height: 40px;
    min-height: 40px;
    min-width: 190px;
    padding: 0 18px;
}

.apx-staff-operations-compact-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-staff-operations-compact-form {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    align-content: start;
    display: grid;
    gap: 6px;
    padding: 10px;
}

.apx-staff-operations-compact-form.is-short {
    grid-template-rows: auto minmax(56px, auto) 36px;
}

.apx-staff-operations-compact-form label {
    display: grid;
    gap: 3px;
    margin: 0;
}

.apx-staff-operations-form-spacer {
    min-height: 56px;
}

.apx-staff-operations-compact-form label > span,
.apx-staff-operations-backup-row.is-head span {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-operations-compact-form .apx-staff-inline-save {
    align-self: start;
    height: 36px;
    min-height: 36px;
    padding-bottom: 0;
    padding-top: 0;
}

.apx-staff-operations-backup-table {
    display: grid;
    gap: 4px;
    margin-top: 10px;
}

.apx-staff-operations-backup-row {
    align-items: center;
    background: rgba(255, 250, 242, 0.62);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 8px;
    display: grid;
    gap: 6px;
    grid-template-columns: minmax(170px, 1.35fr) 0.65fr 0.42fr 0.52fr 0.42fr minmax(120px, 0.85fr) minmax(245px, 1.35fr);
    margin: 0;
    padding: 6px 8px;
}

.apx-staff-operations-backup-row span {
    color: var(--apx-text-soft);
    font-size: 0.78rem;
    font-weight: 800;
}

.apx-staff-operations-restore-cell {
    align-items: center;
    display: flex;
    gap: 6px;
}

.apx-staff-operations-restore-cell small {
    flex: 1 1 auto;
    font-size: 0.7rem;
    line-height: 1.3;
}

.apx-staff-reset-verification {
    align-items: center;
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 12px;
}

.apx-staff-reset-verification strong {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-staff-reset-verification span {
    font-size: 0.86rem;
    font-weight: 850;
}

.apx-ops-utility {
    background: rgba(255, 252, 246, 0.62);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 8px;
    display: grid;
    gap: 0;
    margin-top: 16px;
}

.apx-ops-context {
    align-items: center;
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    padding: 12px 16px;
}

.apx-ops-context span {
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    line-height: 1.3;
}

.apx-ops-context strong {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    margin-right: 4px;
    text-transform: uppercase;
}

.apx-ops-section {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.apx-ops-section + .apx-ops-section {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
}

.apx-ops-section-head {
    align-items: end;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.apx-ops-section-head h2 {
    font-size: 1.04rem;
    line-height: 1.2;
    margin: 0;
}

.apx-ops-section-head p {
    color: var(--apx-text-muted);
    font-size: 0.84rem;
    line-height: 1.35;
    margin: 2px 0 0;
}

.apx-ops-action-list,
.apx-ops-recovery-list {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 8px;
    display: grid;
    overflow: hidden;
}

.apx-ops-action-row,
.apx-ops-recovery-row {
    align-items: end;
    background: rgba(255, 252, 246, 0.5);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(240px, 1fr) minmax(220px, 1fr) auto;
    margin: 0;
    padding: 12px;
}

.apx-ops-action-row + .apx-ops-action-row,
.apx-ops-recovery-row + .apx-ops-recovery-row {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
}

.apx-ops-recovery-row {
    grid-template-columns: minmax(260px, 1fr) auto;
}

.apx-ops-action-copy,
.apx-ops-recovery-row > div {
    display: grid;
    gap: 3px;
}

.apx-ops-action-copy strong,
.apx-ops-recovery-row strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    line-height: 1.25;
}

.apx-ops-action-copy span,
.apx-ops-recovery-row span {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.apx-ops-action-row .apx-staff-inline-save,
.apx-ops-recovery-row .apx-staff-inline-save {
    justify-self: end;
    min-width: 160px;
}

.apx-ops-utility .apx-staff-operations-command {
    background: transparent;
    border-radius: 8px;
    padding: 10px;
}

.apx-ops-utility .apx-staff-operations-backup-table {
    margin-top: 0;
}

.apx-ops-utility .apx-staff-operations-backup-row {
    background: transparent;
    border-left: 0;
    border-radius: 0;
    border-right: 0;
}

.apx-ops-utility .apx-staff-operations-backup-row.is-head {
    background: rgba(247, 241, 231, 0.5);
    border-radius: 8px 8px 0 0;
}

.apx-ops-recovery .apx-ops-section-head h2 {
    color: #7f1d1d;
}

.apx-admin-wizard-shell {
    display: grid;
    gap: 16px;
}

.apx-admin-wizard-steps {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-admin-wizard-step {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    padding: 10px 12px;
}

.apx-admin-wizard-step span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-wizard-step strong {
    font-size: 0.82rem;
    line-height: 1.3;
}

.apx-admin-wizard-step.is-current {
    border-color: rgba(179, 32, 38, 0.28);
    box-shadow: 0 0 0 1px rgba(179, 32, 38, 0.08);
}

.apx-admin-wizard-step.is-complete {
    border-color: rgba(34, 197, 94, 0.22);
}

.apx-admin-wizard-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.85fr);
}

.apx-admin-wizard-panel {
    background: rgba(255, 250, 242, 0.62);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    padding: 14px;
}

.apx-admin-wizard-panel h5 {
    font-size: 1rem;
    margin: 0 0 12px;
}

.apx-admin-wizard-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
    margin-top: 8px;
}

.apx-admin-wizard-review-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 12px;
}

.apx-admin-wizard-review-grid-wide {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-wizard-review-grid-final {
    align-items: start;
}

.apx-admin-wizard-review-groups {
    display: grid;
    gap: 12px;
    margin-bottom: 12px;
}

.apx-admin-wizard-review-group {
    background: rgba(255, 252, 246, 0.56);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    padding: 12px;
}

.apx-admin-wizard-review-group h6 {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.18;
    margin: 0;
}

.apx-admin-wizard-review-grid article,
.apx-admin-wizard-hint,
.apx-admin-wizard-success {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 12px;
    display: grid;
    gap: 4px;
    padding: 10px 12px;
}

.apx-admin-wizard-review-grid span,
.apx-admin-wizard-hint strong,
.apx-admin-wizard-success span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-wizard-review-grid article strong,
.apx-admin-wizard-hint span,
.apx-admin-wizard-summary-copy p {
    font-weight: 500;
    max-width: 100%;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.apx-admin-wizard-access-table {
    display: grid;
    gap: 4px;
    margin-bottom: 12px;
}

.apx-admin-wizard-access-row {
    align-items: center;
    background: rgba(255, 250, 242, 0.52);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    display: grid;
    gap: 8px;
    grid-template-columns: 0.7fr 0.9fr 1.1fr 0.8fr auto;
    padding: 8px 10px;
}

.apx-admin-wizard-access-table-review .apx-admin-wizard-access-row {
    grid-template-columns: 0.8fr 1fr 1.35fr 0.8fr auto;
    padding: 10px 12px;
}

.apx-admin-wizard-access-row.is-head {
    background: transparent;
    border: 0;
}

.apx-admin-wizard-access-row span {
    font-size: 0.78rem;
    font-weight: 600;
}

.apx-admin-wizard-pack-preview {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 0.76rem;
    line-height: 1.45;
}

.apx-admin-wizard-summary-copy p {
    color: var(--apx-text-soft);
    line-height: 1.5;
    margin: 0;
}

.apx-admin-wizard-success-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-admin-wizard-shell.is-review .apx-admin-wizard-grid {
    grid-template-columns: minmax(0, 1.7fr) minmax(380px, 0.82fr);
}

.apx-admin-wizard-shell.is-review .apx-admin-wizard-panel-main {
    min-width: 0;
}

.apx-admin-wizard-shell.is-review .apx-admin-wizard-summary.is-review {
    align-self: start;
    position: sticky;
    top: 16px;
}

@media (max-width: 1400px) {
    .apx-admin-wizard-review-grid-wide,
    .apx-admin-wizard-review-grid-final {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-flow-guide {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1180px) {
    .apx-admin-wizard-shell.is-review .apx-admin-wizard-grid,
    .apx-admin-wizard-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .apx-admin-wizard-shell.is-review .apx-admin-wizard-summary.is-review {
        position: static;
    }
}

@media (max-width: 820px) {
    .apx-admin-wizard-review-grid,
    .apx-admin-wizard-review-grid-wide,
    .apx-admin-wizard-review-grid-final {
        grid-template-columns: minmax(0, 1fr);
    }

    .apx-admin-flow-guide {
        grid-template-columns: minmax(0, 1fr);
    }

    .apx-admin-wizard-access-row,
    .apx-admin-wizard-access-table-review .apx-admin-wizard-access-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-wizard-access-row.is-head {
        display: none;
    }
}

.apx-staff-assessment-hero {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-assessment-hero .apx-staff-toolbar {
    margin-bottom: 12px;
}

.apx-staff-assessment-summary {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-staff-assessment-summary article {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 5px;
    padding: 11px 12px;
}

.apx-staff-assessment-summary span,
.apx-staff-assessment-card-metrics small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-assessment-summary strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.24;
}

.apx-staff-assessment-summary small {
    color: var(--apx-text-muted);
    line-height: 1.34;
}

.apx-staff-assessment-grid {
    grid-template-columns: minmax(340px, 0.84fr) minmax(0, 1.16fr);
}

.apx-staff-assessment-panel {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-assessment-list {
    gap: 8px;
}

.apx-staff-assessment-list .apx-staff-snapshot-card {
    background: rgba(255, 250, 242, 0.94);
    border-color: rgba(164, 124, 47, 0.14);
}

.apx-staff-snapshot-card header {
    align-items: baseline;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.apx-staff-assessment-card-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.apx-staff-assessment-card-metrics small {
    background: rgba(247, 241, 231, 0.84);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 999px;
    padding: 4px 8px;
}

.apx-staff-assessment-rubric {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.apx-staff-gradebook-hero {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-gradebook-hero .apx-staff-toolbar {
    margin-bottom: 12px;
}

.apx-staff-gradebook-summary {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-staff-gradebook-summary article,
.apx-staff-gradebook-standings article {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 5px;
    padding: 11px 12px;
}

.apx-staff-gradebook-summary span,
.apx-staff-gradebook-standings span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-staff-gradebook-summary strong,
.apx-staff-gradebook-standings strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.24;
}

.apx-staff-gradebook-summary small,
.apx-staff-gradebook-standings small {
    color: var(--apx-text-muted);
    line-height: 1.34;
}

.apx-staff-gradebook-grid {
    grid-template-columns: minmax(300px, 0.74fr) minmax(0, 1.26fr);
}

.apx-staff-gradebook-panel {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-staff-gradebook-standings {
    display: grid;
    gap: 8px;
}

.apx-staff-gradebook-rubric {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.apx-gradebook-scope-tabs {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 180px));
    margin: -2px 0 14px;
}

.apx-gradebook-scope-tabs a {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 900;
    padding: 11px 12px;
    text-align: center;
}

.apx-gradebook-scope-tabs a.is-current {
    background: rgba(164, 124, 47, 0.12);
    border-color: rgba(164, 124, 47, 0.3);
    color: var(--apx-text);
}

.apx-gradebook-review-form {
    display: grid;
    gap: 12px;
}

.apx-gradebook-filter-card {
    display: grid;
    gap: 12px;
}

.apx-gradebook-filter-form {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(150px, 0.7fr) minmax(180px, 0.9fr) minmax(220px, 1fr) auto auto;
}

.apx-gradebook-filter-form label {
    display: grid;
    gap: 5px;
}

.apx-gradebook-filter-form label span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-gradebook-filter-form .form-select,
.apx-gradebook-filter-form .form-control,
.apx-gradebook-filter-form .apx-sim-save,
.apx-gradebook-filter-form .apx-page-tool-link {
    height: 40px;
    min-height: 40px;
}

.apx-gradebook-counts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-gradebook-counts span {
    background: rgba(247, 241, 231, 0.84);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 999px;
    color: var(--apx-text-soft);
    font-size: 0.78rem;
    font-weight: 800;
    padding: 7px 10px;
}

.apx-gradebook-counts strong {
    color: var(--apx-text);
    margin-right: 4px;
}

.apx-gradebook-phase-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.6fr) minmax(0, 0.6fr) minmax(0, 0.6fr) minmax(0, 1fr);
    gap: 0.75rem;
}

.apx-gradebook-phase-badge {
    border: 1px solid var(--apx-border);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    padding: 0.54rem 0.7rem;
}

.apx-gradebook-phase-badge span,
.apx-gradebook-phase-badge small {
    display: block;
}

.apx-gradebook-phase-badge span {
    color: var(--apx-text-soft);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-gradebook-phase-badge strong {
    display: block;
    color: var(--apx-text);
    font-size: 1.28rem;
    line-height: 1.1;
    margin: 0.2rem 0;
}

.apx-gradebook-phase-badge small {
    color: var(--apx-text-soft);
}

.apx-gradebook-phase-badge.is-draft {
    border-color: rgba(185, 138, 62, 0.35);
}

.apx-gradebook-phase-badge.is-reviewed {
    border-color: rgba(62, 102, 138, 0.35);
}

.apx-gradebook-phase-badge.is-released {
    border-color: rgba(70, 145, 92, 0.35);
}

.apx-gradebook-phase-badge.is-highest-score {
    border-color: rgba(33, 29, 24, 0.18);
    background: rgba(247, 241, 231, 0.78);
}

.apx-empty-state-graphic {
    display: grid;
    grid-template-columns: repeat(3, 48px);
    gap: 0.5rem;
    align-items: end;
    min-height: 66px;
    margin-bottom: 0.75rem;
}

.apx-empty-state-graphic span {
    display: block;
    border: 1px solid rgba(124, 97, 62, 0.22);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(235, 226, 211, 0.65));
}

.apx-empty-state-graphic span:nth-child(1) {
    height: 34px;
}

.apx-empty-state-graphic span:nth-child(2) {
    height: 54px;
}

.apx-empty-state-graphic span:nth-child(3) {
    height: 42px;
}

.apx-table-empty-state {
    display: grid;
    justify-items: start;
    gap: 0.35rem;
    padding: 1rem 0;
}

.apx-table-empty-state strong,
.apx-table-empty-state small {
    display: block;
}

@media (max-width: 780px) {
    .apx-gradebook-phase-grid {
        grid-template-columns: 1fr;
    }
}

.apx-gradebook-score-input,
.apx-gradebook-grade-input,
.apx-gradebook-status-select {
    min-width: 92px;
}

.apx-gradebook-notes-row td {
    background: rgba(247, 241, 231, 0.54);
    border-top: 0;
    padding-top: 0;
}

.apx-gradebook-notes-row label {
    display: grid;
    gap: 5px;
}

.apx-gradebook-notes-row span {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.apx-gradebook-notes-row textarea {
    font-size: 0.78rem;
    min-height: 54px;
    resize: vertical;
}

.apx-gradebook-savebar {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    color: var(--apx-text-soft);
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: space-between;
    padding: 12px;
}

.apx-gradebook-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-gradebook-savebar span {
    flex: 1 1 280px;
    font-size: 0.82rem;
    font-weight: 800;
}

.apx-gradebook-savebar .btn-primary {
    flex: 0 0 auto;
}

.table-responsive {
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.apx-gradebook-review-form,
.apx-staff-gradebook-panel,
.apx-staff-gradebook-panel .table-responsive {
    min-width: 0;
}

.apx-staff-table {
    min-width: 1240px;
}

.apx-staff-table td strong {
    color: var(--apx-text);
}

.apx-staff-table td small {
    color: var(--apx-text-muted);
}

.apx-staff-upload-form {
    align-items: stretch;
    display: grid;
    gap: 10px;
}

.apx-research-metric-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.apx-staff-reset-form {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 320px) minmax(0, 1fr);
}

.apx-staff-reset-form label {
    display: grid;
    gap: 4px;
}

.apx-staff-reset-note {
    color: var(--apx-text-muted);
    font-size: 0.8rem;
    font-weight: 700;
    margin: 0;
}

.apx-staff-reset-actions {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    min-width: 0;
}

.apx-staff-reset-submit {
    flex: 0 0 auto;
    min-height: 32px !important;
    min-width: 0;
    padding: 6px 14px !important;
}

.apx-staff-reset-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.apx-facilitator-lead-grid,
.apx-facilitator-detail-grid {
    display: grid;
    gap: 20px;
}

.apx-facilitator-lead-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.95fr);
}

.apx-facilitator-detail-grid {
    grid-template-columns: 1fr;
    align-items: start;
}

.apx-facilitator-orientation,
.apx-facilitator-signals,
.apx-facilitator-teams {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-facilitator-signals .apx-signal-list {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.apx-facilitator-signals .apx-signal-list div {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    color: var(--apx-text-soft);
    line-height: 1.5;
    padding: 11px 12px;
}

.apx-facilitator-ai-stack {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    margin-top: 8px;
}

.apx-facilitator-ai-stack .apx-intel-item {
    border-radius: 14px;
    padding: 11px 12px;
}

.apx-facilitator-teams .apx-team-glance-grid {
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.apx-facilitator-teams .apx-team-glance {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border-color: rgba(164, 124, 47, 0.12);
    border-radius: 16px;
    padding: 11px 12px;
}

.apx-role-admin .apx-sim-save,
.apx-role-facilitator .apx-sim-save,
.apx-role-admin .btn.btn-primary,
.apx-role-facilitator .btn.btn-primary {
    min-height: 36px;
    border-radius: 12px;
    font-size: 0.82rem;
    font-weight: 900;
    min-width: 0;
    padding: 0 13px;
    white-space: nowrap;
}

.apx-role-admin .apx-sim-save,
.apx-role-facilitator .apx-sim-save,
.apx-role-admin .btn.btn-primary,
.apx-role-facilitator .btn.btn-primary {
    background: var(--apx-fac-action-bg);
    border: 1px solid var(--apx-fac-action-border);
    box-shadow: var(--apx-fac-action-shadow);
    color: var(--apx-fac-action-text);
}

.apx-role-admin .apx-sim-save:hover,
.apx-role-facilitator .apx-sim-save:hover,
.apx-role-admin .btn.btn-primary:hover,
.apx-role-facilitator .btn.btn-primary:hover {
    background: var(--apx-fac-action-hover-bg);
    border-color: var(--apx-fac-action-border);
    color: var(--apx-fac-action-text);
}

.apx-role-admin .apx-page-tool-link,
.apx-role-facilitator .apx-page-tool-link {
    border-radius: 12px;
    font-size: 0.76rem;
    font-weight: 900;
    min-height: 32px;
    padding: 6px 10px;
}

.apx-role-admin select,
.apx-role-facilitator select,
.apx-role-participant select {
    font-size: 1rem;
}

.apx-role-admin .apx-staff-inline-save,
.apx-role-facilitator .apx-staff-inline-save {
    background: var(--apx-fac-action-bg);
    border: 1px solid var(--apx-fac-action-border);
    box-shadow: var(--apx-fac-action-shadow);
    color: var(--apx-fac-action-text);
    min-height: 36px;
    min-width: 0;
    padding: 0 13px;
}

.apx-role-admin .apx-staff-inline-save:hover,
.apx-role-facilitator .apx-staff-inline-save:hover {
    background: var(--apx-fac-action-hover-bg);
    border-color: var(--apx-fac-action-border);
    color: var(--apx-fac-action-text);
}

.apx-admin-shell-picker {
    margin-bottom: 10px;
}

.apx-admin-shell-picker label {
    display: grid;
    gap: 6px;
}

.apx-admin-shell-picker span {
    color: var(--apx-text-muted);
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-shell-picker select {
    background: var(--apx-field);
    border: 1px solid var(--apx-border);
    border-radius: 10px;
    color: var(--apx-text);
    min-height: 42px;
    padding: 0 12px;
    width: 100%;
}

.apx-facilitator-teams .apx-mini-metrics div {
    background: rgba(247, 241, 231, 0.84);
    border-color: rgba(33, 29, 24, 0.08);
    border-radius: 11px;
    min-height: 58px;
    padding: 10px 11px;
}

.apx-facilitator-teams .apx-mini-metrics span {
    color: var(--apx-text-muted);
}

.apx-facilitator-teams .apx-mini-metrics b {
    color: var(--apx-text);
}

@media (max-width: 1100px) {
    .apx-facilitator-command-grid,
    .apx-facilitator-dashboard-shortcuts,
    .apx-user-action-grid,
    .apx-staff-cohort-actions,
    .apx-staff-decision-picker,
    .apx-staff-two-column,
    .apx-staff-operations-grid,
    .apx-staff-assessment-grid,
    .apx-staff-gradebook-grid,
    .apx-facilitator-detail-grid,
    .apx-staff-report-shell,
    .apx-staff-report-filter {
        grid-template-columns: 1fr;
    }

    .apx-facilitator-dashboard-metrics,
    .apx-facilitator-dashboard-team-metrics,
    .apx-facilitator-dashboard-snapshot-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-facilitator-kpi-row {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .apx-facilitator-kpi-row-status,
    .apx-facilitator-kpi-row-action {
        justify-self: start;
    }

    .apx-facilitator-kpi-row-detail {
        margin-left: 0;
    }

    .apx-facilitator-kpi-detail-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-staff-operations-status,
    .apx-staff-decision-grid,
    .apx-staff-assessment-summary,
    .apx-staff-gradebook-summary {
        grid-template-columns: 1fr;
    }

    .apx-staff-operations-transfer-grid,
    .apx-staff-operations-compact-grid,
    .apx-staff-operations-command,
    .apx-staff-operations-backup-row,
    .apx-gradebook-filter-form {
        grid-template-columns: 1fr;
    }

    .apx-staff-operations-command-fields {
        grid-auto-columns: unset;
        grid-auto-flow: row;
        grid-template-columns: 1fr;
    }

    .apx-ops-section-head,
    .apx-ops-action-row,
    .apx-ops-recovery-row {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    .apx-ops-action-row .apx-staff-inline-save,
    .apx-ops-recovery-row .apx-staff-inline-save {
        width: 100%;
    }

    .apx-staff-operations-command-submit {
        justify-items: stretch;
        min-width: 0;
    }

    .apx-staff-operations-restart {
        grid-template-columns: 1fr;
    }

    .apx-staff-operations-restart-actions {
        justify-items: stretch;
    }

    .apx-staff-restart-submit {
        min-width: 0;
        width: 100%;
    }

    .apx-staff-operations-command-submit .apx-staff-inline-save {
        min-width: 0;
        width: 100%;
    }

    .apx-facilitator-workflow-tabs {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-admin-workflow-tabs {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-staff-reset-form {
        grid-template-columns: 1fr;
    }

    .apx-staff-reset-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .apx-staff-reset-links {
        justify-content: flex-start;
    }

    .apx-staff-operations-savebar {
        align-items: flex-start;
        display: grid;
    }

    .apx-staff-report-cover {
        align-items: flex-start;
        display: grid;
    }

    .apx-staff-report-cover p {
        text-align: left;
    }

    .apx-facilitator-release-shell,
    .apx-staff-release-shell {
        grid-template-columns: 1fr;
    }

    .apx-facilitator-release-toolbar,
    .apx-staff-release-toolbar {
        grid-template-columns: 1fr;
    }

    .apx-facilitator-release-stats,
    .apx-staff-release-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .apx-facilitator-release-save,
    .apx-staff-release-save {
        justify-content: flex-start;
    }

    .apx-facilitator-release-actions-bar {
        justify-content: stretch;
    }

    .apx-facilitator-release-actions-bar .apx-staff-inline-save {
        width: 100%;
    }

    .apx-nav-simulation-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-nav-simulation-action:last-child {
        grid-column: 1 / -1;
    }

    .apx-user-edit-form {
        grid-template-columns: 1fr;
        left: 0;
        min-width: min(92vw, 320px);
        right: auto;
    }

}

/* Admin Client Environments Completion */

.apx-admin-env-title {
    margin-bottom: 14px;
}

.apx-admin-control-hero,
.apx-admin-log-hero,
.apx-admin-ops-hero,
.apx-admin-run-hero,
.apx-admin-env-intro,
.apx-admin-env-create,
.apx-admin-env-register,
.apx-admin-ops-panel,
.apx-admin-ops-guard,
.apx-admin-run-create,
.apx-admin-run-register {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-admin-control-hero,
.apx-admin-log-hero,
.apx-admin-ops-hero,
.apx-admin-run-hero,
.apx-admin-env-intro {
    padding: 12px 14px;
}

.apx-admin-control-hero .apx-staff-toolbar,
.apx-admin-log-hero .apx-staff-toolbar,
.apx-admin-ops-hero .apx-staff-toolbar,
.apx-admin-run-hero .apx-staff-toolbar,
.apx-admin-env-intro .apx-staff-toolbar {
    margin-bottom: 0;
}

.apx-admin-control-scope {
    align-items: end;
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(240px, 0.8fr) minmax(320px, 1.2fr);
    margin-top: 10px;
    padding-top: 10px;
}

.apx-admin-control-scope h5 {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 900;
    margin: 0;
}

.apx-admin-control-filter {
    justify-content: end;
}

.apx-admin-control-filter select {
    min-width: 260px;
}

.apx-admin-inline-filter {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    margin-top: 10px;
    padding-top: 10px;
}

.apx-admin-env-summary-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-env-summary-grid article {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 16px;
    padding: 14px;
}

.apx-admin-env-summary-grid span,
.apx-admin-env-note-empty {
    color: var(--apx-text-muted);
}

.apx-admin-env-summary-grid span {
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.apx-admin-env-summary-grid strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.5;
}

.apx-admin-env-layout {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: start;
}

.apx-admin-env-stack {
    display: grid;
    gap: 12px;
}

.apx-admin-run-layout,
.apx-admin-run-stack {
    display: grid;
    gap: 12px;
}

.apx-admin-run-layout {
    grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.1fr);
    align-items: start;
}

.apx-admin-run-layout-single {
    grid-template-columns: minmax(0, 1fr);
}

.apx-admin-page-title {
    margin-bottom: 8px;
}

.apx-admin-page-title p {
    color: var(--apx-text-muted);
    font-size: 0.9rem;
    font-weight: 800;
    margin-top: 6px;
}

.apx-admin-compact-stack {
    gap: 12px;
}

.apx-admin-metric-strip {
    padding: 8px 10px;
}

.apx-admin-metric-strip .apx-command-metric {
    min-height: 48px;
    padding: 7px 10px;
}

.apx-admin-metric-strip .apx-command-metric strong {
    font-size: 0.88rem;
}

.apx-admin-disclosure {
    padding: 0;
}

.apx-admin-disclosure > summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    list-style: none;
    margin: 0;
    padding: 14px 16px;
}

.apx-admin-disclosure > summary::-webkit-details-marker {
    display: none;
}

.apx-admin-disclosure > summary::after {
    color: var(--apx-text-muted);
    content: "▾";
    font-size: 0.92rem;
    font-weight: 900;
}

.apx-admin-disclosure[open] > summary::after {
    content: "▴";
}

.apx-admin-disclosure > summary h5 {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 900;
    margin: 0;
}

.apx-admin-disclosure[data-admin-async-section="admin-access"] > summary h5,
.apx-admin-disclosure[data-admin-async-section="engine-defaults"] > summary h5,
.apx-admin-disclosure[data-admin-async-section="operations"] > summary h5 {
    font-weight: 400;
}

.apx-admin-disclosure-body {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 6px;
    padding: 10px 12px 12px;
}

.apx-admin-feature-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-action-row {
    display: flex;
    justify-content: flex-end;
    padding-top: 2px;
}

.apx-admin-toolbar-links {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.apx-admin-summary-sheet .apx-admin-sheet {
    min-width: 980px;
}

.apx-admin-summary-sheet .apx-admin-sheet td,
.apx-admin-summary-sheet .apx-admin-sheet th {
    padding: 8px 10px;
}

.apx-admin-form-dense {
    gap: 10px 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-system-form {
    gap: 8px 18px;
}

.apx-admin-system-sheet {
    border: 0;
    border-radius: 0;
    overflow: visible;
}

.apx-admin-system-sheet-row {
    align-items: center;
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 10px 16px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 10px 12px;
}

.apx-admin-system-sheet-row:last-child {
    border-bottom: 0;
}

.apx-admin-system-sheet-row-wide {
    grid-template-columns: minmax(220px, 320px);
}

.apx-admin-system-sheet-compact {
    display: grid;
    gap: 0;
}

.apx-admin-system-retention-row {
    align-items: end;
    padding: 0 0 8px;
}

.apx-admin-system-retention-field {
    display: grid;
    gap: 6px;
    max-width: 220px;
    min-width: 0;
}

.apx-admin-system-retention-field span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-admin-system-plain-grid {
    display: grid;
    gap: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-system-toggle-row {
    align-items: center;
    border-right: 1px solid rgba(33, 29, 24, 0.08);
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin: 0;
    min-height: 44px;
    padding: 8px 12px;
}

.apx-admin-system-toggle-row:nth-child(4n) {
    border-right: 0;
}

.apx-admin-system-toggle-row span {
    color: var(--apx-text);
    font-size: 0.92rem;
    font-weight: 800;
    line-height: 1.25;
}

.apx-admin-system-toggle-row input {
    flex: 0 0 auto;
    height: 17px;
    margin: 0;
    width: 17px;
}

.apx-admin-system-toggle-matrix {
    border-top: 0;
    display: grid;
    gap: 8px 18px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-form label.apx-admin-system-toggle-inline {
    align-items: center;
    border-right: 0;
    border-bottom: 0;
    display: flex;
    gap: 8px;
    justify-content: flex-start;
    margin: 0;
    min-height: 28px;
    padding: 2px 0;
}

.apx-admin-system-toggle-inline:nth-child(4n) {
    border-right: 0;
}

.apx-admin-form label.apx-admin-system-toggle-inline input {
    flex: 0 0 auto;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-admin-system-toggle-inline span {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1.2;
}

.apx-admin-action-row .apx-staff-inline-save {
    min-height: 38px;
    min-width: 0;
    padding-inline: 16px;
}

.apx-admin-inline-advanced {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    padding: 0;
}

.apx-admin-inline-advanced > summary {
    color: var(--apx-text-muted);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    list-style: none;
    margin: 0;
    padding: 10px 12px;
    text-transform: uppercase;
}

.apx-admin-inline-advanced > summary::-webkit-details-marker {
    display: none;
}

.apx-admin-inline-advanced-body {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    padding: 12px;
}

@media (max-width: 980px) {
    .apx-facilitator-startup-rail {
        grid-template-columns: 1fr;
    }
}

.apx-admin-swatch-fieldset {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    display: grid;
    gap: 6px;
    margin: 0;
    min-width: 0;
    padding: 8px 10px;
}

.apx-admin-swatch-fieldset-inline {
    padding: 6px 8px;
}

.apx-admin-swatch-fieldset legend {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    padding: 0 4px;
    text-transform: uppercase;
}

.apx-admin-swatch-group {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.apx-admin-swatch {
    cursor: pointer;
    display: inline-flex;
    margin: 0;
}

.apx-admin-swatch input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.apx-admin-swatch span {
    border: 2px solid rgba(33, 29, 24, 0.12);
    border-radius: 999px;
    display: inline-flex;
    height: 14px;
    width: 14px;
}

.apx-admin-swatch input:checked + span {
    box-shadow: 0 0 0 2px rgba(33, 29, 24, 0.18);
    transform: scale(1.02);
}

.apx-admin-col-span-2 {
    grid-column: span 2;
}

.apx-admin-env-create .apx-admin-disclosure-body {
    padding: 8px 12px 10px;
}

.apx-admin-env-create .apx-admin-inline-advanced {
    margin-top: 0;
}

.apx-admin-env-create .apx-admin-inline-advanced summary {
    padding: 6px 0 2px;
}

.apx-admin-env-submit-cell {
    align-items: end;
    display: flex;
    justify-content: flex-end;
}

.apx-admin-env-submit {
    min-height: 36px;
    min-width: 160px;
}

.apx-admin-env-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-admin-env-card {
    background: var(--apx-field);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 10px;
    min-height: 0;
    overflow: hidden;
    padding: 0;
}

.apx-admin-env-summary {
    cursor: pointer;
    list-style: none;
    margin: 0;
    padding: 0;
}

.apx-admin-env-summary::-webkit-details-marker {
    display: none;
}

.apx-admin-env-row {
    align-items: center;
    display: grid;
    gap: 8px 12px;
    grid-template-columns: minmax(240px, 1.1fr) minmax(130px, 0.5fr) minmax(260px, 1fr) minmax(150px, auto);
    min-height: 58px;
    padding: 8px 12px;
}

.apx-admin-env-brand {
    align-items: center;
    display: flex;
    gap: 8px;
    min-width: 0;
}

.apx-admin-env-brand img,
.apx-admin-env-brand > span {
    align-items: center;
    background: rgba(164, 124, 47, 0.1);
    border: 1px solid rgba(164, 124, 47, 0.28);
    border-radius: 8px;
    color: var(--apx-text);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.78rem;
    font-weight: 900;
    height: 34px;
    justify-content: center;
    object-fit: contain;
    padding: 4px;
    width: 34px;
}

.apx-admin-env-brand strong,
.apx-admin-env-brand small {
    display: block;
    line-height: 1.1;
}

.apx-admin-env-brand strong {
    font-size: 0.9rem;
}

.apx-admin-env-brand small {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 700;
}

.apx-admin-env-edit-form {
    margin-top: 0;
}

.apx-admin-env-meta {
    display: grid;
    gap: 2px;
}

.apx-admin-env-meta small {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.2;
}

.apx-admin-env-meta span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-env-meta strong {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 900;
}

.apx-admin-env-notes p {
    display: block;
    font-size: 0.82rem;
    line-height: 1.2;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-admin-color-row-inline {
    margin-top: 4px;
}

.apx-admin-env-actions {
    align-items: center;
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    justify-self: end;
    min-width: 150px;
}

.apx-admin-env-actions .apx-page-tool-link {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 32px;
    min-width: 58px;
    padding: 7px 10px;
}

.apx-admin-env-edit-shell {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    padding: 8px 10px 10px;
}

.apx-admin-env-register .apx-admin-disclosure-body {
    padding-top: 8px;
}

.apx-admin-env-status-row {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.apx-admin-env-status {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.68rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: 0.08em;
    min-height: 32px;
    padding: 5px 8px;
    text-transform: uppercase;
}

.apx-admin-env-status-setup {
    background: rgba(164, 124, 47, 0.14);
    color: var(--apx-accent);
}

.apx-admin-env-status-active {
    background: rgba(34, 197, 94, 0.14);
    color: #168a4f;
}

.apx-admin-env-status-paused {
    background: rgba(245, 158, 11, 0.14);
    color: #a16207;
}

.apx-admin-env-status-archived {
    background: rgba(148, 163, 184, 0.16);
    color: var(--apx-text-muted);
}

.apx-admin-env-status-delete_hold {
    background: rgba(244, 63, 94, 0.14);
    color: #b4233a;
}

.apx-admin-billing-status {
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: 0.08em;
    padding: 6px 10px;
    text-transform: uppercase;
}

.apx-admin-billing-status-draft,
.apx-admin-billing-status-setup {
    background: rgba(148, 163, 184, 0.16);
    color: var(--apx-text-muted);
}

.apx-admin-billing-status-active,
.apx-admin-billing-status-paid {
    background: rgba(34, 197, 94, 0.14);
    color: #168a4f;
}

.apx-admin-billing-status-issued,
.apx-admin-billing-status-due,
.apx-admin-billing-status-paused {
    background: rgba(245, 158, 11, 0.14);
    color: #a16207;
}

.apx-admin-billing-status-overdue,
.apx-admin-billing-status-closed,
.apx-admin-billing-status-void {
    background: rgba(244, 63, 94, 0.14);
    color: #b4233a;
}

.apx-admin-env-note-empty {
    font-style: italic;
}

.apx-admin-run-list {
    display: grid;
    gap: 6px;
}

.apx-admin-run-card {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 10px;
    display: grid;
    gap: 6px;
    padding: 8px 10px;
}

.apx-admin-run-row span,
.apx-admin-run-primary span {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-run-primary strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.98rem;
    line-height: 1.25;
}

.apx-admin-run-note {
    color: var(--apx-text-muted);
    line-height: 1.38;
    margin: 0;
    padding-left: 2px;
}

.apx-admin-run-actions {
    align-items: center;
    display: flex;
    gap: 10px;
    padding-left: 2px;
}

.apx-admin-run-helper {
    color: var(--apx-text-muted);
    font-size: 0.78rem;
    font-weight: 800;
}

.apx-admin-run-edit-shell {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    margin-top: 8px;
    padding-top: 12px;
}

.apx-admin-run-row {
    align-items: center;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(220px, 1.4fr) repeat(6, minmax(92px, 1fr));
}

.apx-admin-run-row > div {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.apx-admin-run-row strong {
    color: var(--apx-text);
    font-size: 0.78rem;
    font-weight: 900;
}

.apx-admin-run-row strong .apx-admin-env-status {
    display: inline-flex;
}

.apx-admin-delivery-sheet {
    min-width: 1120px;
}

.apx-admin-delivery-sheet th,
.apx-admin-delivery-sheet td {
    padding: 8px 10px;
}

.apx-admin-delivery-sheet td {
    white-space: nowrap;
}

.apx-admin-delivery-sheet td:first-child {
    min-width: 230px;
    white-space: normal;
}

.apx-admin-delivery-sheet td:first-child span,
.apx-admin-delivery-sheet td span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    margin-top: 2px;
    text-transform: none;
}

.apx-admin-delivery-sheet .apx-admin-env-status {
    display: inline-flex;
}

.apx-admin-run-status-setup,
.apx-admin-run-status-scheduled {
    background: rgba(164, 124, 47, 0.14);
    color: var(--apx-accent);
}

.apx-admin-run-status-live {
    background: rgba(34, 197, 94, 0.14);
    color: #168a4f;
}

.apx-admin-run-status-completed {
    background: rgba(59, 130, 246, 0.12);
    color: #2563eb;
}

.apx-admin-run-status-archived {
    background: rgba(148, 163, 184, 0.16);
    color: var(--apx-text-muted);
}

.apx-admin-ops-guard {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(200px, 0.28fr) minmax(0, 1fr);
    padding: 12px 14px;
}

.apx-admin-ops-guard h5,
.apx-admin-ops-guard p {
    margin: 0;
}

.apx-admin-ops-guard p {
    color: var(--apx-text-muted);
    line-height: 1.42;
}

.apx-admin-ops-panel {
    padding: 8px 10px;
}

.apx-admin-inline-note {
    color: var(--apx-text-soft);
    font-size: 0.86rem;
    font-weight: 800;
    line-height: 1.4;
}

.apx-admin-explainer-note {
    background: rgba(255, 250, 242, 0.78);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    padding: 10px 12px;
}

.apx-admin-ops-table-wrap {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    overflow-x: auto;
}

.apx-admin-ops-table {
    border-collapse: collapse;
    min-width: 980px;
    width: 100%;
}

.apx-admin-overview-table {
    min-width: 1380px;
}

.apx-admin-ops-table th,
.apx-admin-ops-table td {
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    padding: 9px 10px;
    text-align: left;
    vertical-align: middle;
}

.apx-admin-ops-table th {
    background: rgba(240, 231, 215, 0.78);
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    white-space: nowrap;
}

.apx-admin-ops-table td {
    background: rgba(255, 250, 242, 0.78);
    color: var(--apx-text-soft);
    font-size: 0.82rem;
    font-weight: 800;
}

.apx-admin-ops-table tr:last-child td {
    border-bottom: 0;
}

.apx-admin-ops-table strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.9rem;
    line-height: 1.2;
}

.apx-admin-ops-table span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    margin-top: 3px;
}

.apx-admin-ops-table .apx-admin-ops-warn {
    color: #b91c1c;
}

.apx-admin-ops-mini {
    align-items: center;
    display: grid;
    gap: 4px 10px;
    grid-template-columns: auto auto;
}

.apx-admin-ops-mini span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-ops-mini strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
}

.apx-admin-ops-permissions {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-ops-policy-bar {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-column: 1 / -1;
    grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr) auto;
}

.apx-admin-ops-savebar {
    justify-content: end;
}

.apx-admin-ops-policy-field,
.apx-admin-ops-policy-note {
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 6px;
    padding: 9px 10px;
}

.apx-admin-ops-permission-card {
    min-height: 0;
    padding: 12px 14px;
}

.apx-admin-ops-permission-card small {
    display: none;
}

.apx-admin-ops-policy-field input {
    max-width: 160px;
}

.apx-admin-ops-savebar span {
    display: none;
}

.apx-admin-ops-policy-field span,
.apx-admin-ops-policy-note span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-ops-policy-note strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    line-height: 1.3;
}

.apx-research-settings-form {
    gap: 10px;
}

.apx-research-toggle {
    gap: 10px;
    padding: 12px 14px;
}

.apx-research-toggle small {
    display: none;
}

.apx-admin-sheet-wrap {
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    overflow-x: auto;
}

.apx-admin-workspace-card-facilitators .apx-admin-sheet-wrap {
    overflow: visible;
}

.apx-admin-sheet {
    border-collapse: collapse;
    min-width: 640px;
    width: 100%;
}

.apx-admin-sheet th,
.apx-admin-sheet td {
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    padding: 10px 12px;
    text-align: left;
    vertical-align: middle;
}

.apx-admin-sheet th {
    background: rgba(240, 231, 215, 0.78);
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-sheet td {
    background: rgba(255, 250, 242, 0.78);
    color: var(--apx-text-soft);
    font-size: 0.86rem;
    font-weight: 800;
}

.apx-admin-sheet td strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.92rem;
}

.apx-admin-sheet td span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.74rem;
    font-weight: 800;
    margin-top: 2px;
}

.apx-admin-sheet-wrap + .apx-admin-action-row,
.apx-admin-sheet-form + .apx-admin-action-row {
    margin-top: 10px;
}

.apx-admin-form-sheet {
    min-width: 1120px;
}

.apx-admin-form-sheet th {
    padding-bottom: 8px;
    padding-top: 8px;
    white-space: nowrap;
}

.apx-admin-form-sheet td {
    padding: 8px 10px;
}

.apx-admin-form-sheet .form-control,
.apx-admin-form-sheet .form-select {
    font-size: 0.92rem;
    min-height: 40px;
    padding: 8px 10px;
}

.apx-admin-form-sheet textarea.form-control {
    min-height: 40px;
    resize: vertical;
}

.apx-admin-sheet-actions {
    justify-content: flex-end;
}

.apx-admin-sheet-toolbar {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: 180px 180px minmax(220px, 1fr) auto;
    margin-bottom: 10px;
}

.apx-admin-sheet-toolbar-field {
    display: grid;
    gap: 6px;
}

.apx-admin-sheet-toolbar-field span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-admin-sheet-toolbar-search {
    min-width: 0;
}

.apx-admin-sheet-toolbar-search input {
    width: 100%;
}

.apx-admin-sheet-toolbar-actions {
    align-self: end;
    justify-content: flex-end;
    white-space: nowrap;
}

.apx-admin-ledger-entry-sheet {
    min-width: 1260px;
}

.apx-admin-billing-entry-grid {
    align-items: end;
    display: grid;
    gap: 10px;
}

.apx-admin-billing-contract-entry-grid {
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.apx-admin-billing-ledger-entry-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-admin-billing-entry-grid label {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.apx-admin-billing-entry-grid .form-control,
.apx-admin-billing-entry-grid .form-select {
    min-width: 0;
    width: 100%;
}

.apx-admin-billing-entry-action .apx-staff-inline-save {
    min-height: 40px;
    width: 100%;
}

.apx-admin-ledger-entry-sheet .form-control,
.apx-admin-ledger-entry-sheet .form-select {
    min-width: 0;
}

.apx-admin-sheet-action-cell {
    min-width: 120px;
}

.apx-admin-sheet-action-cell .apx-staff-inline-save {
    min-height: 40px;
    width: 100%;
}

.apx-admin-billing-status {
    font-style: normal;
}

.apx-admin-billing-status-draft,
.apx-admin-billing-status-issued,
.apx-admin-billing-status-due,
.apx-admin-billing-status-overdue,
.apx-admin-billing-status-paid,
.apx-admin-billing-status-void {
    color: var(--apx-text);
    font-weight: 900;
}

.apx-admin-inline-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.apx-admin-inline-actions form {
    margin: 0;
}

.apx-admin-inline-actions .apx-page-tool-link {
    min-height: 32px;
    min-width: 0;
    padding: 0 12px;
}

.apx-admin-ledger-filters {
    align-items: end;
    gap: 6px;
}

.apx-admin-contract-form {
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-admin-contract-form > .apx-admin-workspace-subsection {
    margin-top: 0 !important;
}

.apx-admin-two-col-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-two-col-grid label,
.apx-admin-inline-input,
.apx-admin-inline-checkbox {
    display: grid;
    gap: 6px;
}

.apx-admin-inline-toggle-row {
    align-items: end;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(180px, auto) minmax(180px, 220px);
}

.apx-admin-inline-checkbox {
    align-items: center;
    grid-auto-flow: column;
    justify-content: start;
}

.apx-admin-inline-checkbox input {
    margin: 0;
}

.apx-admin-choice-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-choice-card {
    align-content: start;
    background: rgba(255, 255, 255, 0.66);
    border: 1px solid rgba(164, 124, 47, 0.18);
    border-radius: 18px;
    display: grid;
    gap: 6px;
    min-height: 116px;
    padding: 18px 18px 16px;
}

.apx-admin-choice-card input {
    margin: 0 0 4px;
}

.apx-admin-choice-card-inline-check {
    align-items: start;
    column-gap: 12px;
    grid-template-columns: 18px minmax(0, 1fr);
}

.apx-admin-choice-card-inline-check input {
    margin: 2px 0 0;
}

.apx-admin-choice-card-inline-check span,
.apx-admin-choice-card-inline-check small {
    grid-column: 2;
}

.apx-admin-choice-card span {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 700;
}

.apx-admin-choice-card small {
    color: var(--apx-text-muted);
    font-size: 0.9rem;
    font-weight: 400;
    line-height: 1.45;
}

.apx-admin-contract-choice-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.apx-admin-contract-limits-row {
    align-items: end;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-contract-summary-row {
    align-items: stretch;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.apx-admin-contract-summary-metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-contract-summary-button {
    align-self: stretch;
    justify-self: end;
    min-height: 74px;
    width: 180px;
}

.apx-admin-contract-choice-card {
    align-content: start;
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(33, 29, 24, 0.09);
    border-radius: 12px;
    gap: 4px;
    min-height: 0;
    padding: 14px 14px 12px;
}

.apx-admin-contract-choice-card span {
    font-size: 0.96rem;
    font-weight: 600;
}

.apx-admin-contract-choice-card small {
    font-size: 0.88rem;
    line-height: 1.4;
}

.apx-admin-contract-preset-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-contract-preset-card {
    align-items: center;
    grid-template-columns: auto 1fr;
    min-height: 0;
    padding: 12px 14px;
}

.apx-admin-contract-preset-card input {
    grid-column: 1;
    margin: 0;
}

.apx-admin-contract-preset-card span {
    align-self: center;
    font-size: 0.95rem;
    grid-column: 2;
    letter-spacing: 0.08em;
    margin: 0;
}

.apx-admin-contract-preset-card small {
    display: none;
}

.apx-admin-contract-module-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-contract-module-card {
    grid-template-columns: auto 1fr;
    padding: 12px 14px;
}

.apx-admin-contract-module-card input {
    grid-column: 1;
    margin: 2px 0 0;
}

.apx-admin-contract-module-card span {
    grid-column: 2;
    margin-left: 0;
}

.apx-admin-contract-module-card small {
    grid-column: 2;
}

.apx-admin-contract-dense-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-contract-dense-card {
    grid-template-columns: auto 1fr;
    padding: 12px 14px;
}

.apx-admin-contract-dense-card input {
    grid-column: 1;
    margin: 2px 0 0;
}

.apx-admin-contract-dense-card span {
    grid-column: 2;
}

.apx-admin-contract-dense-card small {
    font-size: 0.84rem;
    grid-column: 2;
    line-height: 1.35;
}

.apx-admin-ledger-entry-form {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    margin-top: 8px;
    padding-top: 10px;
}

.apx-admin-ledger-entry-form,
.apx-admin-ledger-filters {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.apx-admin-accounts-stack {
    gap: 6px;
}

.apx-admin-accounts-stack .apx-admin-disclosure {
    overflow: hidden;
}

.apx-admin-accounts-stack .apx-admin-disclosure-body {
    gap: 4px;
    padding: 4px 8px 6px;
}

.apx-admin-accounts-stack .apx-admin-disclosure > summary {
    min-height: 42px;
    padding: 6px 10px;
}

.apx-admin-accounts-stack .apx-admin-sheet th,
.apx-admin-accounts-stack .apx-admin-sheet td {
    padding: 4px 6px;
}

.apx-admin-accounts-stack .apx-admin-sheet td strong {
    font-size: 0.98rem;
}

.apx-admin-accounts-stack .apx-admin-sheet-toolbar {
    gap: 6px;
    margin-bottom: 2px;
}

.apx-admin-accounts-stack .apx-admin-sheet-wrap {
    border-radius: 10px;
}

.apx-admin-accounts-stack .apx-admin-sheet-wrap + .apx-admin-action-row,
.apx-admin-accounts-stack .apx-admin-sheet-form + .apx-admin-action-row {
    margin-top: 6px;
}

.apx-admin-accounts-stack .apx-admin-sheet-form {
    gap: 4px;
}

.apx-admin-client-index-header {
    display: grid;
    gap: 6px;
}

.apx-admin-client-index-actions {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: auto;
    justify-items: end;
    margin-left: auto;
}

.apx-admin-billing-actions {
    grid-template-columns: minmax(10ch, auto) minmax(10.5ch, auto) minmax(220px, 1fr) auto auto;
}

.apx-admin-logs-actions {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.apx-admin-logs-actions .apx-admin-client-index-filter {
    min-width: 190px;
}

.apx-admin-logs-actions .apx-page-tool-link {
    min-height: 38px;
}

.apx-admin-client-index-search-row,
.apx-admin-client-index-action-row {
    display: grid;
    justify-items: end;
}

.apx-admin-client-index-search {
    display: grid;
    gap: 6px;
}

.apx-admin-client-index-actions label span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-client-index-searchbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    width: min(100%, 270px);
}

.apx-admin-client-index-filter {
    display: grid;
    gap: 6px;
}

.apx-admin-client-index-select {
    width: auto;
}

.apx-admin-client-index-select-status {
    min-width: 11ch;
}

.apx-admin-client-index-select-type {
    min-width: 10ch;
}

.apx-admin-client-index-searchbar .form-control {
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

.apx-admin-client-index-search-submit {
    align-items: center;
    background: rgba(164, 124, 47, 0.12);
    border: 1px solid rgba(164, 124, 47, 0.24);
    border-left: 0;
    border-radius: 0 999px 999px 0;
    color: var(--apx-text);
    display: inline-flex;
    font-size: 1rem;
    justify-content: center;
    min-height: 40px;
    min-width: 46px;
    padding: 0 14px;
}

.apx-admin-client-index-action-row {
    grid-template-columns: auto auto;
    gap: 10px;
}

.apx-admin-client-index-search-submit:hover,
.apx-admin-client-index-search-submit:focus-visible {
    background: rgba(164, 124, 47, 0.18);
    outline: none;
}

.apx-page-tool-link-strong {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    min-height: 40px;
}

.apx-admin-client-index-shell {
    background: linear-gradient(180deg, rgba(255, 251, 245, 0.98) 0%, rgba(247, 242, 233, 0.94) 100%);
}

.apx-admin-client-card-list {
    display: grid;
    gap: 12px;
}

.apx-admin-client-card {
    align-items: center;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(46, 38, 24, 0.08);
    border-left: 5px solid rgba(164, 124, 47, 0.18);
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(50, 39, 26, 0.05);
    color: inherit;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(260px, 1.5fr) minmax(180px, 0.9fr) auto;
    padding: 14px 18px;
    text-decoration: none;
    transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.apx-admin-client-card:hover,
.apx-admin-client-card:focus-visible {
    border-color: rgba(164, 124, 47, 0.32);
    box-shadow: 0 14px 34px rgba(50, 39, 26, 0.09);
    outline: none;
    transform: translateY(-2px);
}

.apx-admin-client-card-good {
    border-left-color: #168a4f;
}

.apx-admin-client-card-needs-attention {
    border-left-color: #a16207;
}

.apx-admin-client-card-critical {
    border-left-color: #b4233a;
}

.apx-admin-client-card-identity {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-admin-client-card-brand {
    align-items: center;
    display: flex;
    justify-content: center;
}

.apx-admin-client-card-logo,
.apx-admin-client-workspace-logo {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98), rgba(245, 236, 221, 0.98));
    border: 1px solid rgba(46, 38, 24, 0.12);
    border-radius: 16px;
    box-shadow: 0 6px 16px rgba(50, 39, 26, 0.06);
    color: var(--apx-text);
    display: inline-flex;
    flex-shrink: 0;
    font-size: 0.88rem;
    font-weight: 900;
    justify-content: center;
    letter-spacing: 0.06em;
    overflow: hidden;
    text-transform: uppercase;
}

.apx-admin-client-card-logo {
    height: 48px;
    width: 48px;
}

.apx-admin-client-card-logo img,
.apx-admin-client-workspace-logo img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.apx-admin-client-workspace-logo {
    height: 64px;
    width: 64px;
}

.apx-admin-client-workspace-header {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.apx-admin-client-workspace-brand {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: 0;
}

.apx-admin-client-workspace-brand-copy {
    display: grid;
    gap: 6px;
    min-width: 0;
}

.apx-admin-client-card-identity strong {
    color: var(--apx-text);
    font-size: 1.2rem;
    line-height: 1.1;
}

.apx-admin-client-card-domain,
.apx-admin-client-card-package {
    color: var(--apx-text-soft);
    font-size: 0.9rem;
}

.apx-admin-client-card-signals,
.apx-admin-client-workspace-signals {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 2px;
}

.apx-admin-inline-chip {
    align-items: center;
    background: rgba(255, 250, 242, 0.96);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 999px;
    color: var(--apx-text-soft);
    display: inline-flex;
    font-size: 0.72rem;
    font-weight: 800;
    gap: 6px;
    letter-spacing: 0.03em;
    max-width: 100%;
    padding: 6px 10px;
}

.apx-admin-inline-chip.is-good {
    background: rgba(22, 138, 79, 0.1);
    border-color: rgba(22, 138, 79, 0.18);
    color: #0f7a45;
}

.apx-admin-inline-chip.is-needs-attention {
    background: rgba(161, 98, 7, 0.1);
    border-color: rgba(161, 98, 7, 0.18);
    color: #8b5b05;
}

.apx-admin-client-card-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-client-card-metrics article {
    display: grid;
    gap: 3px;
}

.apx-admin-client-card-metrics span,
.apx-admin-client-card-empty {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-client-card-metrics strong {
    color: var(--apx-text);
    font-size: 1.05rem;
}

.apx-admin-client-card-status {
    display: flex;
    justify-content: flex-end;
}

.apx-admin-client-card-empty {
    background: rgba(255, 255, 255, 0.88);
    border: 1px dashed rgba(46, 38, 24, 0.14);
    border-radius: 18px;
    padding: 24px;
    text-align: center;
}

.apx-admin-client-workspace-status {
    align-items: center;
    display: flex;
    justify-content: flex-end;
}

.apx-admin-toolbar-links-tight {
    margin-top: 4px;
}

.apx-admin-billing-overview .apx-command-metric-grid,
.apx-admin-billing-age-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.apx-admin-workspace-stream {
    display: grid;
    gap: 16px;
}

.apx-admin-workspace-card {
    background: linear-gradient(180deg, rgba(255, 253, 249, 0.98) 0%, rgba(248, 243, 235, 0.96) 100%);
    border: 1px solid rgba(46, 38, 24, 0.08);
    border-radius: 18px;
    box-shadow: 0 8px 20px rgba(50, 39, 26, 0.035);
    overflow: hidden;
    padding: 0;
    transition: border-color 140ms ease, box-shadow 140ms ease;
}

.apx-admin-workspace-card-facilitators {
    overflow: visible;
}

.apx-admin-workspace-card:hover,
.apx-admin-workspace-card:focus-within {
    border-color: rgba(164, 124, 47, 0.18);
    box-shadow: 0 12px 24px rgba(50, 39, 26, 0.06);
}

.apx-admin-workspace-card-head {
    align-items: start;
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 18px 20px 14px;
}

.apx-admin-workspace-card-head h5 {
    color: var(--apx-text);
    font-size: 1.18rem;
    font-weight: 900;
    letter-spacing: -0.02em;
    line-height: 1.12;
    margin: 0 0 4px;
}

.apx-admin-workspace-card-head p {
    color: var(--apx-text-muted);
    font-size: 0.9rem;
    line-height: 1.45;
    margin: 0;
}

.apx-admin-workspace-subsection {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 10px;
    padding-top: 16px;
}

.apx-admin-workspace-subsection:first-child {
    border-top: 0;
    padding-top: 0;
}

.apx-admin-workspace-subhead {
    display: grid;
    gap: 4px;
}

.apx-admin-workspace-subhead h6 {
    color: var(--apx-text);
    font-size: 0.96rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.18;
    margin: 0;
}

.apx-admin-workspace-subhead p {
    color: var(--apx-text-muted);
    font-size: 0.84rem;
    line-height: 1.45;
    margin: 0;
}

.apx-admin-workspace-form {
    display: grid;
    gap: 14px;
}

.apx-admin-workspace-card .apx-admin-disclosure-body {
    gap: 14px;
    padding: 18px 20px 20px;
}

.apx-admin-workspace-board {
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
}

.apx-admin-workspace-column {
    display: grid;
    gap: 12px;
    min-width: 0;
}

.apx-admin-section-label {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.apx-admin-section-heading {
    align-items: start;
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.apx-admin-section-heading h4 {
    color: var(--apx-text);
    font-size: 1.12rem;
    font-weight: 900;
    letter-spacing: -0.02em;
    line-height: 1.14;
    margin: 0 0 4px;
}

.apx-admin-section-heading p {
    color: var(--apx-text-muted);
    font-size: 0.9rem;
    line-height: 1.45;
    margin: 0;
}

.apx-admin-profile-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-profile-card {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 16px;
    display: grid;
    gap: 4px;
    padding: 14px 16px;
}

.apx-admin-profile-card span {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.apx-admin-profile-card strong {
    color: var(--apx-text);
    font-size: 1.03rem;
    letter-spacing: -0.01em;
    line-height: 1.2;
}

.apx-admin-profile-card small {
    color: var(--apx-text-soft);
    font-size: 0.84rem;
    line-height: 1.4;
}

.apx-admin-form-cluster {
    display: grid;
    gap: 10px;
    margin-bottom: 4px;
}

.apx-admin-form-cluster h6 {
    color: var(--apx-text);
    font-size: 0.98rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.2;
    margin: 0;
}

.apx-admin-form-cluster-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-form-panel {
    background: rgba(255, 255, 255, 0.64);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    display: grid;
    gap: 14px;
    padding: 16px;
}

.apx-admin-form-panel-head {
    align-items: start;
    border-bottom: 1px solid rgba(33, 29, 24, 0.08);
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding-bottom: 12px;
}

.apx-admin-form-panel-head h6 {
    color: var(--apx-text);
    font-size: 1rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 1.2;
    margin: 0 0 4px;
}

.apx-admin-form-panel-head p {
    color: var(--apx-text-muted);
    font-size: 0.86rem;
    line-height: 1.45;
    margin: 0;
}

.apx-admin-form-panel-grid {
    display: grid;
    gap: 12px;
}

.apx-admin-form-panel-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-form-panel-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-form-panel-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-form-field-wide {
    grid-column: 1 / -1;
}

.apx-admin-form-panel label,
.apx-admin-form-field-wide {
    display: grid;
    gap: 6px;
}

.apx-admin-toggle-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.apx-admin-toggle-card {
    background: rgba(255, 252, 246, 0.94);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    min-height: 56px;
    padding: 10px 12px;
}

.apx-admin-toggle-card small {
    color: var(--apx-text-soft);
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.4;
    margin-top: 4px;
    text-transform: none;
}

.apx-admin-workspace-card label span,
.apx-admin-workspace-card .apx-admin-ops-policy-field span,
.apx-admin-workspace-card .apx-admin-ops-policy-note span {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1.22;
    text-transform: uppercase;
}

.apx-admin-workspace-card .apx-admin-sheet th {
    font-size: 0.71rem;
    letter-spacing: 0.07em;
    padding: 7px 10px;
}

.apx-admin-workspace-card .apx-admin-sheet td,
.apx-admin-workspace-card .apx-admin-ops-table td {
    font-size: 0.9rem;
    line-height: 1.38;
    padding: 8px 10px;
}

.apx-decision-access-grid-wide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-facilitator-metric-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.apx-admin-facilitator-metric-grid .apx-command-metric {
    min-height: 92px;
    padding: 12px 14px;
}

.apx-admin-facilitator-metric-grid .apx-command-metric span {
    font-size: 0.66rem;
    letter-spacing: 0.08em;
}

.apx-admin-facilitator-metric-grid .apx-command-metric strong {
    font-size: 1rem;
}

.apx-admin-facilitator-status-strip,
.apx-admin-compact-status-strip {
    align-items: center;
    color: var(--apx-text-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: 0.78rem;
    gap: 8px 16px;
    line-height: 1.25;
    margin: 0;
}

.apx-admin-facilitator-status-strip span,
.apx-admin-compact-status-strip span {
    align-items: baseline;
    display: inline-flex;
    gap: 4px;
    white-space: nowrap;
}

.apx-admin-facilitator-status-strip strong,
.apx-admin-compact-status-strip strong {
    color: var(--apx-text);
    font-size: 0.86rem;
    font-weight: 700;
}

.apx-admin-change-stream-table th {
    font-size: 0.62rem;
    font-weight: 500;
    letter-spacing: 0.06em;
    padding: 5px 8px;
}

.apx-admin-change-stream-table td {
    font-size: 0.78rem;
    font-weight: 400;
    line-height: 1.2;
    padding: 5px 8px;
    vertical-align: middle;
}

.apx-admin-change-stream-table td,
.apx-admin-change-stream-table td strong {
    font-weight: 400;
}

.apx-admin-change-stream-table td:first-child {
    white-space: nowrap;
}

.apx-admin-facilitator-worksheet-form {
    display: grid;
    gap: 6px;
    margin: 0;
}

.apx-admin-facilitator-worksheet-scroll {
    overflow-x: visible;
    padding-bottom: 2px;
}

.apx-admin-facilitator-worksheet-grid {
    align-items: end;
    display: grid;
    gap: 6px;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    min-width: 0;
}

.apx-admin-facilitator-worksheet-grid label,
.apx-admin-facilitator-action-cell {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-admin-workspace-card-facilitators .apx-admin-facilitator-worksheet-grid label span,
.apx-admin-workspace-card-facilitators .apx-admin-facilitator-action-cell > span {
    color: var(--apx-text-muted);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.15;
    text-transform: uppercase;
}

.apx-admin-workspace-card-facilitators .apx-admin-facilitator-worksheet-grid .form-control,
.apx-admin-workspace-card-facilitators .apx-admin-facilitator-worksheet-grid .form-select {
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 400;
    min-height: 34px;
    padding: 5px 8px;
}

.apx-admin-facilitator-primary-cell {
    align-items: center;
    grid-template-rows: auto 34px;
}

.apx-admin-workspace-card-facilitators .apx-admin-facilitator-primary-cell input {
    align-self: center;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-admin-facilitator-action-cell .apx-staff-inline-save {
    min-height: 34px;
    width: 100%;
}

.apx-admin-facilitator-sheet th {
    font-size: 0.65rem;
    font-weight: 500;
    letter-spacing: 0.06em;
}

.apx-admin-facilitator-sheet td {
    font-size: 0.78rem;
    font-weight: 400;
    padding-top: 7px;
    padding-bottom: 7px;
}

.apx-admin-facilitator-sheet td strong {
    font-size: inherit;
    font-weight: 400;
}

.apx-admin-facilitator-sheet td small {
    font-size: inherit;
    font-weight: 400;
}

.apx-admin-facilitator-sheet td:last-child {
    overflow: visible;
    position: relative;
}

.apx-admin-facilitator-actions .form-select,
.apx-admin-facilitator-actions .form-select option {
    font-size: 0.66rem;
    font-weight: 400;
}

.apx-admin-workspace-card .apx-admin-sheet td strong,
.apx-admin-workspace-card .apx-admin-ops-table td strong {
    letter-spacing: -0.01em;
}

.apx-admin-workspace-card .apx-admin-sheet td span,
.apx-admin-workspace-card .apx-admin-ops-table td span {
    font-size: 0.75rem;
    line-height: 1.3;
    margin-top: 3px;
}

.apx-admin-workspace-card .apx-admin-sheet-wrap,
.apx-admin-workspace-card .apx-admin-ops-table-wrap {
    border-radius: 14px;
}

.apx-admin-workspace-card .apx-admin-action-row {
    justify-content: flex-end;
    margin-top: 2px;
}

.apx-admin-workspace-card .apx-staff-inline-save {
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 900;
    min-height: 40px;
    padding: 0 16px;
}

.apx-admin-workspace-card .apx-page-tool-link {
    border-radius: 11px;
    font-size: 0.76rem;
    min-height: 34px;
    padding: 6px 12px;
}

.apx-admin-flow-guide {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-flow-guide article {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    min-height: 92px;
    padding: 12px 14px;
}

.apx-admin-flow-guide span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.apx-admin-flow-guide strong {
    color: var(--apx-text);
    font-size: 0.95rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.22;
}

.apx-admin-flow-guide small {
    color: var(--apx-text-soft);
    font-size: 0.8rem;
    font-weight: 400;
    line-height: 1.4;
}

.apx-admin-action-row-start {
    justify-content: flex-start;
}

.apx-admin-workspace-card .apx-admin-inline-actions {
    gap: 8px;
}

.apx-admin-workspace-card-environments .apx-admin-form-panel,
.apx-admin-workspace-card-environments .apx-admin-workspace-subsection {
    margin-top: 0;
}

.apx-admin-workspace-card-environments .apx-admin-disclosure-body {
    gap: 10px;
    padding: 14px 16px 16px;
}

.apx-admin-workspace-card-environments .apx-admin-workspace-card-head {
    padding: 14px 16px 11px;
}

.apx-admin-workspace-card-environments .apx-admin-workspace-subsection {
    gap: 8px;
    padding-top: 12px;
}

.apx-admin-workspace-card-environments .apx-admin-workspace-form {
    gap: 10px;
}

.apx-admin-environment-summary-grid {
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-environment-assignment-list {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.apx-admin-environment-assignment-list article,
.apx-admin-environment-readonly-card {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 3px;
    padding: 10px 12px;
}

.apx-admin-environment-assignment-list article strong,
.apx-admin-environment-readonly-card strong {
    color: var(--apx-text);
    font-size: 0.92rem;
    line-height: 1.25;
}

.apx-admin-environment-assignment-list article small,
.apx-admin-environment-readonly-card small {
    color: var(--apx-text-soft);
    font-size: 0.78rem;
    line-height: 1.35;
}

.apx-admin-environment-assignment-list article.is-empty {
    background: rgba(255, 250, 242, 0.7);
}

.apx-admin-environment-readonly-card span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-environment-scope-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-environment-scope-card {
    align-items: start;
    background: rgba(255, 250, 242, 0.84);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    grid-template-columns: 18px minmax(0, 1fr);
    margin: 0;
    min-width: 0;
    padding: 10px 12px;
}

.apx-admin-environment-scope-card input {
    margin-top: 2px;
}

.apx-admin-environment-scope-card span {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.apx-admin-environment-scope-card strong {
    color: var(--apx-text);
    font-size: 0.84rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.28;
    text-transform: none;
}

.apx-admin-environment-scope-card small {
    color: var(--apx-text-muted);
    font-size: 0.7rem;
    line-height: 1.24;
}

.apx-admin-environment-scope-card.is-disabled {
    background: rgba(244, 238, 229, 0.78);
    border-style: dashed;
}

.apx-admin-environment-scope-card.is-disabled strong,
.apx-admin-environment-scope-card.is-disabled small {
    color: var(--apx-text-soft);
}

.apx-admin-workspace-card-environments .apx-admin-form-panel {
    gap: 10px;
    padding: 12px;
}

.apx-admin-workspace-card-environments .apx-admin-form-panel-head {
    padding-bottom: 8px;
}

.apx-admin-workspace-card-environments .apx-admin-form-panel-grid {
    gap: 10px;
}

.apx-admin-workspace-card-environments .apx-admin-form-panel label,
.apx-admin-workspace-card-environments .apx-admin-form-field-wide {
    gap: 4px;
}

.apx-admin-workspace-card-environments .apx-admin-profile-card {
    gap: 3px;
    padding: 12px 14px;
}

.apx-admin-workspace-card-environments .apx-admin-inline-note {
    margin: 0;
}

.apx-admin-workspace-card-environments .apx-admin-action-row {
    margin-top: 0;
}

.apx-admin-billing-age-grid article {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    padding: 12px 14px;
}

.apx-admin-billing-age-grid span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-billing-age-grid strong {
    color: var(--apx-text);
    font-size: 1rem;
}

.apx-admin-billing-contract-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-billing-contract-grid label {
    display: grid;
    gap: 6px;
}

.apx-admin-billing-contract-grid label span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-system-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-admin-system-grid label {
    display: grid;
    gap: 6px;
}

.apx-admin-system-grid label span {
    color: var(--apx-text-muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.apx-admin-system-scenario-note {
    background: rgba(255, 252, 246, 0.9);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    padding: 14px 16px;
}

.apx-admin-system-scenario-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-admin-system-scenario-list span {
    background: rgba(164, 124, 47, 0.12);
    border: 1px solid rgba(164, 124, 47, 0.18);
    border-radius: 999px;
    color: var(--apx-text);
    display: inline-flex;
    font-size: 0.76rem;
    font-weight: 800;
    padding: 6px 10px;
}

.apx-admin-telemetry-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-telemetry-grid h6 {
    color: var(--apx-text);
    font-size: 0.92rem;
    margin: 0;
}

.apx-admin-async-status {
    border-radius: 12px;
    font-size: 0.78rem;
    font-weight: 800;
    margin-bottom: 12px;
    padding: 10px 12px;
}

.apx-admin-async-status.is-success {
    background: rgba(34, 197, 94, 0.12);
    color: #168a4f;
}

.apx-admin-async-status.is-error {
    background: rgba(244, 63, 94, 0.12);
    color: #b4233a;
}

.apx-admin-async-status-floating {
    margin-top: 10px;
}

.apx-admin-accounts-stack .apx-admin-sheet-form .apx-admin-sheet-wrap {
    border-radius: 10px;
}

.apx-admin-accounts-stack .apx-admin-form-sheet th {
    font-size: 0.68rem;
    padding: 4px 6px;
}

.apx-admin-accounts-stack .apx-admin-form-sheet td {
    padding: 4px 6px;
}

.apx-admin-fixed-sheet {
    table-layout: fixed;
}

.apx-admin-account-contract-sheet {
    min-width: 1360px;
}

.apx-admin-account-contract-sheet .form-control,
.apx-admin-account-contract-sheet .form-select,
.apx-admin-ledger-entry-sheet .form-control,
.apx-admin-ledger-entry-sheet .form-select {
    font-size: 0.9rem;
    min-height: 30px;
    min-width: 0;
    padding: 3px 7px;
}

.apx-admin-account-contract-sheet .apx-admin-sheet-action-cell,
.apx-admin-ledger-entry-sheet .apx-admin-sheet-action-cell {
    min-width: 112px;
}

.apx-admin-account-contract-sheet td,
.apx-admin-ledger-entry-sheet td,
.apx-admin-billing-rows-sheet td {
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: middle;
    white-space: nowrap;
}

.apx-admin-billing-rows-sheet td:last-child,
.apx-admin-account-contract-sheet td:last-child,
.apx-admin-ledger-entry-sheet td:last-child {
    white-space: normal;
}

.apx-admin-ledger-toolbar .apx-page-tool-link,
.apx-admin-accounts-stack .apx-admin-sheet-action-cell .apx-staff-inline-save,
.apx-admin-accounts-stack .apx-admin-action-row .apx-staff-inline-save {
    min-height: 30px;
}

.apx-admin-filter-actions {
    align-items: center;
    display: flex;
    gap: 6px;
    justify-content: flex-end;
}

.apx-admin-filter-actions .apx-page-tool-link {
    min-height: 34px;
    min-width: 0;
    padding: 0 12px;
}

.apx-admin-accounts-summary-card {
    padding: 6px 8px;
}

.apx-admin-accounts-summary-card .apx-admin-sheet th,
.apx-admin-accounts-summary-card .apx-admin-sheet td {
    padding: 4px 6px;
}

.apx-admin-accounts-summary-card .apx-admin-sheet td strong {
    font-size: 0.96rem;
}

.apx-admin-ledger-toolbar {
    grid-template-columns: 170px 170px minmax(220px, 1fr) auto;
}

.apx-admin-inline-actions .apx-page-tool-link {
    min-height: 30px;
    padding: 0 10px;
}

.apx-admin-workspace-card input[type="file"].form-control {
    min-height: 42px;
    padding-top: 8px;
}

.apx-admin-master-summary .apx-admin-disclosure-body,
.apx-admin-master-settings .apx-admin-workspace-card .apx-admin-disclosure-body {
    display: grid;
    gap: 18px;
}

.apx-admin-master-summary .apx-command-metric-grid {
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-master-summary .apx-command-metric {
    min-height: 92px;
    padding: 14px 16px;
}

.apx-admin-master-summary .apx-command-metric span {
    font-size: 0.72rem;
    letter-spacing: 0.1em;
}

.apx-admin-master-summary .apx-command-metric strong {
    font-size: 1.08rem;
    line-height: 1.2;
}

.apx-admin-master-snapshot-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-facilitator-dashboard-snapshot-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.apx-facilitator-dashboard-metrics,
.apx-facilitator-dashboard-team-metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-facilitator-team-list {
    gap: 14px;
}

.apx-facilitator-team-tabs {
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
}

.apx-facilitator-team-card.is-selected {
    border-color: rgba(164, 124, 47, 0.26);
    box-shadow: 0 12px 24px rgba(50, 39, 26, 0.08);
}

.apx-facilitator-kpi-register {
    display: grid;
    gap: 10px;
}

.apx-facilitator-kpi-row {
    align-items: center;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(46, 38, 24, 0.08);
    border-left: 5px solid rgba(164, 124, 47, 0.18);
    border-radius: 18px;
    box-shadow: 0 10px 26px rgba(50, 39, 26, 0.05);
    color: inherit;
    display: grid;
    gap: 14px;
    grid-template-columns: auto minmax(260px, 1fr) auto auto;
    min-height: 76px;
    padding: 14px 18px;
    text-decoration: none;
    transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.apx-facilitator-kpi-row:hover,
.apx-facilitator-kpi-row:focus-visible,
.apx-facilitator-kpi-row.is-selected {
    border-color: rgba(164, 124, 47, 0.32);
    box-shadow: 0 14px 34px rgba(50, 39, 26, 0.09);
    outline: none;
}

.apx-facilitator-kpi-row:hover,
.apx-facilitator-kpi-row:focus-visible {
    transform: translateY(-2px);
}

.apx-facilitator-kpi-row.is-good {
    border-left-color: #168a4f;
}

.apx-facilitator-kpi-row.is-needs-attention {
    border-left-color: #a16207;
}

.apx-facilitator-kpi-row.is-critical {
    border-left-color: #b4233a;
}

.apx-facilitator-kpi-row-mark {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98), rgba(245, 236, 221, 0.98));
    border: 1px solid rgba(46, 38, 24, 0.12);
    border-radius: 16px;
    box-shadow: 0 6px 16px rgba(50, 39, 26, 0.06);
    color: var(--apx-text);
    display: inline-flex;
    flex-shrink: 0;
    font-size: 0.88rem;
    font-weight: 900;
    height: 48px;
    justify-content: center;
    letter-spacing: 0.06em;
    min-width: 48px;
    padding: 0 10px;
    text-transform: uppercase;
}

.apx-facilitator-kpi-row-main {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.apx-facilitator-kpi-row-main strong {
    color: var(--apx-text);
    font-size: 1.14rem;
    line-height: 1.1;
}

.apx-facilitator-kpi-row-main small {
    color: var(--apx-text-soft);
    font-size: 0.88rem;
    line-height: 1.35;
}

.apx-facilitator-kpi-row-status {
    align-items: center;
    color: var(--apx-text);
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    justify-content: flex-end;
    white-space: nowrap;
}

.apx-facilitator-kpi-row-status::before {
    background: rgba(164, 124, 47, 0.18);
    border: 1px solid rgba(46, 38, 24, 0.1);
    border-radius: 999px;
    content: "";
    height: 10px;
    width: 10px;
}

.apx-facilitator-kpi-row.is-good .apx-facilitator-kpi-row-status::before {
    background: rgba(34, 197, 94, 0.9);
}

.apx-facilitator-kpi-row.is-needs-attention .apx-facilitator-kpi-row-status::before {
    background: rgba(245, 158, 11, 0.9);
}

.apx-facilitator-kpi-row.is-critical .apx-facilitator-kpi-row-status::before {
    background: rgba(185, 28, 28, 0.9);
}

.apx-facilitator-kpi-row-action {
    color: #2563eb;
    font-weight: 900;
    justify-self: end;
}

.apx-facilitator-kpi-row-detail {
    background: rgba(255, 250, 242, 0.72);
    border: 1px solid rgba(164, 124, 47, 0.18);
    border-radius: 14px;
    display: grid;
    gap: 10px;
    margin: -4px 0 6px 72px;
    padding: 12px 14px;
}

.apx-facilitator-kpi-detail-line {
    align-items: center;
    color: var(--apx-text-soft);
    display: flex;
    flex-wrap: wrap;
    font-size: 0.86rem;
    gap: 8px 14px;
    line-height: 1.35;
}

.apx-facilitator-kpi-detail-line strong {
    color: var(--apx-text);
    font-weight: 900;
}

.apx-facilitator-kpi-detail-metrics {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-facilitator-kpi-detail-metrics span {
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(46, 38, 24, 0.08);
    border-left: 3px solid rgba(164, 124, 47, 0.22);
    border-radius: 10px;
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 8px 10px;
}

.apx-facilitator-kpi-detail-metrics span.is-strong,
.apx-facilitator-kpi-detail-metrics span.is-good {
    border-left: 4px solid #22c55e;
}

.apx-facilitator-kpi-detail-metrics span.is-watch,
.apx-facilitator-kpi-detail-metrics span.is-needs-attention,
.apx-facilitator-kpi-detail-metrics span.is-setup {
    border-left: 4px solid #f59e0b;
}

.apx-facilitator-kpi-detail-metrics span.is-risk,
.apx-facilitator-kpi-detail-metrics span.is-critical {
    border-left: 4px solid #f43f5e;
}

.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-strong,
.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-good {
    border-left: 4px solid #22c55e;
}

.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-watch,
.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-needs-attention,
.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-setup {
    border-left: 4px solid #f59e0b;
}

.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-risk,
.apx-facilitator-dashboard-team-metrics .apx-command-metric.is-critical {
    border-left: 4px solid #f43f5e;
}

.apx-facilitator-kpi-detail-metrics small {
    color: var(--apx-text-muted);
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-facilitator-kpi-detail-metrics strong {
    color: var(--apx-text);
    font-size: 0.96rem;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

.apx-facilitator-kpi-detail-footer {
    align-items: center;
    color: var(--apx-text-soft);
    display: flex;
    flex-wrap: wrap;
    font-size: 0.82rem;
    gap: 10px;
    justify-content: space-between;
}

.apx-facilitator-kpi-detail-footer a {
    color: #2563eb;
    font-weight: 900;
    text-decoration: none;
}

.apx-facilitator-selected-detail-head {
    border-top: 1px solid rgba(46, 38, 24, 0.08);
    padding-top: 2px;
}

.apx-facilitator-cohort-card .apx-admin-disclosure-body {
    display: grid;
    gap: 14px;
}

.apx-facilitator-summary-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.apx-facilitator-summary-pill-group {
    background: rgba(255, 250, 242, 0.86);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 4px;
    min-width: 190px;
    padding: 10px 12px;
}

.apx-facilitator-summary-pill-group::before,
.apx-facilitator-status-chip::before {
    border-radius: 999px;
    content: "";
    height: 8px;
    margin-right: 8px;
    width: 8px;
}

.apx-facilitator-summary-pill-group {
    align-items: center;
    display: flex;
}

.apx-facilitator-summary-pill-copy {
    display: grid;
    gap: 2px;
}

.apx-facilitator-summary-pill-group span {
    color: var(--apx-text-muted);
    font-size: 0.6rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-facilitator-summary-pill-group strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1.1;
}

.apx-facilitator-summary-pill-group.is-strong::before,
.apx-facilitator-status-chip.is-strong::before {
    background: #22c55e;
}

.apx-facilitator-summary-pill-group.is-watch::before,
.apx-facilitator-status-chip.is-watch::before {
    background: #f59e0b;
}

.apx-facilitator-summary-pill-group.is-risk::before,
.apx-facilitator-status-chip.is-risk::before {
    background: #f43f5e;
}

.apx-facilitator-open-decisions {
    flex: 0 0 auto;
}

.apx-facilitator-participant-strip {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.apx-facilitator-participant-card {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    color: inherit;
    display: grid;
    gap: 2px;
    min-height: 72px;
    padding: 10px 12px;
    text-decoration: none;
}

.apx-facilitator-participant-card:hover,
.apx-facilitator-participant-card:focus-visible {
    border-color: rgba(164, 124, 47, 0.22);
    box-shadow: 0 8px 22px rgba(33, 29, 24, 0.08);
}

.apx-facilitator-participant-card span {
    color: var(--apx-text-muted);
    font-size: 0.58rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.apx-facilitator-participant-card strong {
    color: var(--apx-text);
    font-size: 0.9rem;
    font-weight: 900;
    line-height: 1.18;
}

.apx-facilitator-participant-card small {
    color: var(--apx-text-muted);
    font-size: 0.72rem;
    line-height: 1.3;
}

.apx-admin-master-settings {
    gap: 18px;
}

.apx-admin-master-settings .apx-admin-workspace-card-head {
    padding: 20px 24px 16px;
}

.apx-admin-master-settings .apx-admin-workspace-card .apx-admin-disclosure-body {
    padding: 18px 24px 22px;
}

.apx-admin-master-form {
    display: grid;
    gap: 14px;
}

.apx-admin-master-form-panel {
    background: rgba(255, 255, 255, 0.5);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    gap: 16px;
    padding: 16px 18px;
}

.apx-admin-master-form-panel .apx-admin-form-panel-head {
    border-bottom: 0;
    padding-bottom: 10px;
}

.apx-admin-profile-subsection {
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    display: grid;
    gap: 12px;
    margin-top: 14px;
    padding-top: 14px;
}

.apx-admin-profile-subsection:first-of-type {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

.apx-admin-profile-subsection-head h6 {
    font-size: 1.02rem;
    margin: 0;
}

.apx-admin-master-toggle {
    align-items: flex-start;
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: flex;
    gap: 12px;
    margin: 0;
    padding: 14px 16px;
}

.apx-admin-master-toggle input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 18px;
    margin-top: 2px;
    width: 18px;
}

.apx-admin-master-toggle span {
    color: var(--apx-text);
    display: grid;
    gap: 4px;
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}

.apx-admin-master-toggle small {
    color: var(--apx-text-muted);
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.45;
}

.apx-admin-master-field-grid {
    display: grid;
    gap: 14px 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-master-field-grid label {
    display: grid;
    gap: 6px;
}

.apx-admin-profile-inline-toggle {
    align-content: end;
}

.apx-admin-profile-inline-toggle-control {
    align-items: center;
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: inline-flex;
    gap: 10px;
    min-height: 46px;
    padding: 0 14px;
}

.apx-admin-profile-inline-toggle-control input {
    accent-color: var(--apx-accent);
    flex: 0 0 auto;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-admin-profile-inline-toggle-control strong {
    font-size: 0.9rem;
}

.apx-admin-public-access-toggle {
    align-items: center;
    align-content: end;
    display: inline-flex;
    gap: 7px;
    min-height: 34px;
}

.apx-admin-public-access-toggle input {
    flex: 0 0 auto;
    margin: 0;
}

.apx-admin-asset-field .form-control,
.apx-admin-color-field .form-control {
    min-height: 40px;
}

.apx-admin-asset-field {
    align-content: start;
    display: grid;
    gap: 10px;
}

.apx-admin-asset-preview {
    align-items: center;
    background: #fffaf2;
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 14px;
    display: flex;
    justify-content: center;
    margin-bottom: 0;
    min-height: 140px;
    overflow: hidden;
    padding: 12px;
}

.apx-admin-asset-preview img {
    display: block;
    max-height: 116px;
    max-width: 100%;
    object-fit: contain;
}

.apx-admin-asset-preview-hero img {
    max-height: 180px;
    width: 100%;
    object-fit: cover;
}

.apx-admin-asset-upload-row {
    align-items: center;
    display: flex;
    gap: 10px;
    min-height: 38px;
}

.apx-admin-asset-upload-trigger {
    background: rgba(255, 252, 246, 0.92);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 12px;
    color: var(--apx-text);
    cursor: pointer;
    display: inline-flex;
    font: inherit;
    font-weight: 700;
    padding: 8px 14px;
    text-decoration: none;
}

.apx-admin-asset-upload-name {
    color: var(--apx-text);
    font-size: 0.9rem;
}

.apx-admin-asset-input {
    height: 0;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    width: 0;
}

.apx-admin-profile-asset-field-hero .apx-admin-asset-preview {
    min-height: 180px;
}

.apx-admin-color-field {
    --apx-admin-field-swatch: #fffaf2;
}

.apx-admin-color-field .form-control {
    background: var(--apx-admin-field-swatch);
    border-color: color-mix(in srgb, var(--apx-admin-field-swatch) 32%, rgba(33, 29, 24, 0.16));
    color: color-mix(in srgb, #111827 88%, var(--apx-admin-field-swatch) 12%);
    font-weight: 700;
}

.apx-admin-color-field .form-control::placeholder {
    color: color-mix(in srgb, #111827 52%, var(--apx-admin-field-swatch) 48%);
}

.apx-admin-master-field-grid span,
.apx-admin-master-settings .apx-admin-facilitator-create-form > label span,
.apx-admin-master-settings .apx-admin-facilitator-manage-form > label span,
.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-admin-workspace-subhead span {
    color: var(--apx-text-muted);
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.apx-admin-master-field-grid textarea.form-control {
    min-height: 110px;
    resize: vertical;
}

.apx-admin-master-settings .form-control,
.apx-admin-master-settings .form-select,
.apx-admin-master-settings textarea.form-control {
    border-radius: 14px;
    min-height: 46px;
    padding: 10px 12px;
}

.apx-admin-master-settings input[type="file"].form-control {
    min-height: 46px;
    padding-top: 8px;
}

.apx-admin-master-form-actions {
    justify-content: center;
    margin-top: 2px;
}

.apx-admin-master-settings .apx-admin-workspace-card .apx-staff-inline-save {
    min-height: 44px;
    min-width: 170px;
    padding: 0 20px;
}

.apx-admin-master-settings .apx-admin-facilitator-metric-grid {
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-master-settings .apx-admin-facilitator-create-form {
    display: grid;
    gap: 14px 18px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.apx-admin-master-settings .apx-admin-facilitator-worksheet-form {
    gap: 6px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-admin-master-settings .apx-admin-facilitator-worksheet-scroll {
    grid-column: 1 / -1;
}

.apx-admin-master-settings .apx-admin-facilitator-manage-form {
    display: grid;
    gap: 12px 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-master-settings .apx-admin-facilitator-create-form > label,
.apx-admin-master-settings .apx-admin-facilitator-manage-form > label {
    display: grid;
    gap: 6px;
}

.apx-admin-master-settings .apx-admin-checkbox-inline {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    margin: 0;
    min-height: 44px;
}

.apx-admin-master-settings .apx-admin-checkbox-inline input {
    flex: 0 0 auto;
    height: 16px;
    margin: 0;
    width: 16px;
}

.apx-admin-master-settings .apx-admin-checkbox-inline span {
    color: var(--apx-text);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: none;
}

.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-settings-switch-row {
    gap: 10px;
}

.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-setting-toggle-compact {
    min-height: 56px;
    padding: 12px 14px;
}

.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-setting-toggle-compact strong {
    font-size: 0.84rem;
}

.apx-role-admin .apx-command-metric span,
.apx-role-admin .apx-admin-profile-card span,
.apx-role-admin .apx-admin-chart-card > span,
.apx-role-admin .apx-admin-scaffold-grid article span,
.apx-role-admin .apx-admin-workspace-card label span,
.apx-role-admin .apx-admin-workspace-card .apx-admin-ops-policy-field span,
.apx-role-admin .apx-admin-workspace-card .apx-admin-ops-policy-note span {
    font-weight: 700;
}

.apx-role-admin .apx-command-metric strong,
.apx-role-admin .apx-admin-profile-card strong,
.apx-role-admin .apx-admin-chart-card > strong,
.apx-role-admin .apx-admin-chart-row strong,
.apx-role-admin .apx-admin-benchmark-row strong,
.apx-role-admin .apx-admin-trend-row strong,
.apx-role-admin .apx-admin-governance-step strong,
.apx-role-admin .apx-admin-scaffold-grid article strong,
.apx-role-admin .apx-admin-workspace-card .apx-admin-sheet td strong,
.apx-role-admin .apx-admin-workspace-card .apx-admin-ops-table td strong {
    font-weight: 650;
}

.apx-role-admin .apx-command-metric small,
.apx-role-admin .apx-admin-profile-card small,
.apx-role-admin .apx-admin-inline-metric-row small,
.apx-role-admin .apx-admin-inline-flag-grid small,
.apx-role-admin .apx-admin-chart-empty,
.apx-role-admin .apx-admin-trend-row small,
.apx-role-admin .apx-admin-benchmark-stack small,
.apx-role-admin .apx-admin-scaffold-grid article small {
    font-weight: 500;
}

.apx-role-admin .apx-admin-chart-row > span,
.apx-role-admin .apx-admin-benchmark-row > span,
.apx-role-admin .apx-admin-trend-row > span,
.apx-role-admin .apx-admin-flag-inline b {
    font-weight: 600;
}

.apx-role-admin .apx-admin-workspace-card-head h5 {
    font-weight: 850;
}

.apx-role-admin .apx-admin-workspace-subhead h6,
.apx-role-admin .apx-admin-form-panel-head h6,
.apx-role-admin .apx-admin-form-cluster h6 {
    font-weight: 800;
}

.apx-role-admin .apx-setting-toggle strong,
.apx-role-admin .apx-module-toggle strong,
.apx-role-admin .apx-feature-toggle strong,
.apx-role-admin .apx-feature-settings summary strong,
.apx-role-admin .apx-report-access-title strong,
.apx-role-admin .apx-admin-inline-metric-row strong,
.apx-role-admin .apx-admin-inline-flag-grid strong {
    font-weight: 650;
}

.apx-role-admin .apx-control-inline-toggle span,
.apx-role-admin .apx-feature-settings summary span,
.apx-role-admin .apx-report-access-legend span,
.apx-role-admin .apx-report-access-participant small,
.apx-role-admin .apx-admin-inline-metric-row small,
.apx-role-admin .apx-admin-inline-flag-grid small {
    font-weight: 500;
}

.apx-role-admin .apx-admin-inline-metric-row span,
.apx-role-admin .apx-admin-inline-flag-grid span {
    font-weight: 700;
}

.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-module-toggle small,
.apx-admin-master-settings .apx-admin-workspace-card-controls .apx-feature-toggle small {
    color: var(--apx-text-soft);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.4;
    text-transform: none;
}

.apx-admin-ops-policy-field small,
.apx-admin-ops-policy-note small {
    color: var(--apx-text-muted);
    line-height: 1.34;
}

.apx-timer-process-form button:disabled,
.apx-staff-operations-compact-form button:disabled,
.apx-staff-operations-restore-cell button:disabled,
.apx-staff-reset-form button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.apx-staff-operations-compact-form small,
.apx-staff-operations-restore-cell small,
.apx-staff-reset-form small {
    color: #b91c1c;
    font-size: 0.76rem;
    font-weight: 900;
}

@media (max-width: 1100px) {
    .apx-admin-workflow-tabs,
    .apx-admin-control-scope,
    .apx-admin-ops-guard,
    .apx-admin-ops-permissions,
    .apx-admin-run-layout,
    .apx-admin-run-stack,
    .apx-admin-run-meta,
    .apx-admin-env-summary-grid,
    .apx-admin-workspace-board,
    .apx-admin-form-cluster-grid,
    .apx-admin-profile-grid {
        grid-template-columns: 1fr;
    }

    .apx-admin-control-filter {
        justify-content: stretch;
    }

    .apx-admin-env-row {
        grid-template-columns: 1fr;
        justify-items: start;
    }

    .apx-admin-col-span-2 {
        grid-column: auto;
    }

    .apx-admin-form-dense,
    .apx-admin-contract-form,
    .apx-admin-ledger-entry-form,
    .apx-admin-ledger-filters {
        grid-template-columns: 1fr;
    }

    .apx-admin-two-col-grid,
    .apx-admin-inline-toggle-row,
    .apx-admin-choice-grid {
        grid-template-columns: 1fr;
    }

    .apx-admin-contract-limits-row,
    .apx-admin-contract-preset-grid,
    .apx-admin-contract-module-grid,
    .apx-admin-contract-dense-grid,
    .apx-admin-contract-summary-row,
    .apx-admin-contract-summary-metrics {
        grid-template-columns: 1fr;
    }

    .apx-admin-billing-contract-entry-grid,
    .apx-admin-billing-ledger-entry-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-master-summary .apx-command-metric-grid,
    .apx-admin-master-snapshot-grid,
    .apx-admin-master-field-grid,
    .apx-admin-master-settings .apx-admin-facilitator-metric-grid,
    .apx-admin-master-settings .apx-admin-facilitator-create-form,
    .apx-admin-master-settings .apx-admin-facilitator-manage-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-env-submit-cell {
        justify-content: flex-start;
    }

    .apx-admin-env-notes p {
        white-space: normal;
    }

    .apx-admin-env-actions {
        justify-content: flex-start;
        justify-self: start;
    }

    .apx-admin-run-row,
    .apx-admin-ops-policy-bar {
        grid-template-columns: 1fr;
    }

    .apx-admin-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-system-sheet-row,
    .apx-admin-system-plain-grid,
    .apx-admin-system-toggle-matrix {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-system-sheet-row-wide {
        grid-template-columns: 1fr;
    }

    .apx-admin-system-toggle-row:nth-child(4n) {
        border-right: 1px solid rgba(33, 29, 24, 0.08);
    }

    .apx-admin-system-toggle-row:nth-child(2n),
    .apx-admin-form label.apx-admin-system-toggle-inline {
        border-right: 0;
        border-bottom: 0;
    }

    .apx-admin-sheet-toolbar {
        grid-template-columns: 1fr;
    }

    .apx-admin-sheet-toolbar-actions {
        justify-content: flex-start;
    }

    .apx-admin-system-sheet-row,
    .apx-admin-system-plain-grid,
    .apx-admin-system-toggle-matrix {
        grid-template-columns: 1fr;
    }

    .apx-admin-system-toggle-row,
    .apx-admin-form label.apx-admin-system-toggle-inline {
        border-right: 0;
        border-bottom: 0;
    }
}

/* Strategic Plan Polish */

.apx-plan-title {
    margin-bottom: 14px;
}

.apx-plan-intro {
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.98), rgba(15, 23, 42, 0.94));
}

[data-theme="light"] .apx-plan-intro {
    background: linear-gradient(180deg, rgba(255, 250, 242, 0.98) 0%, rgba(240, 231, 215, 0.84) 100%);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-plan-intro-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-plan-intro-grid article {
    background: rgba(2, 6, 23, 0.46);
    border: 1px solid rgba(207, 163, 73, 0.18);
    border-radius: 16px;
    padding: 18px;
}

[data-theme="light"] .apx-plan-intro-grid article {
    background: rgba(255, 250, 242, 0.92);
    border-color: rgba(33, 29, 24, 0.08);
}

.apx-plan-intro-grid span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.apx-plan-intro-grid strong {
    color: var(--apx-text);
    font-size: 0.98rem;
    line-height: 1.5;
}

.apx-plan-contract {
    background:
        radial-gradient(circle at top right, rgba(34, 197, 94, 0.14), transparent 34%),
        linear-gradient(180deg, rgba(255, 250, 242, 0.99), rgba(240, 231, 215, 0.9));
}

.apx-plan-toolbar {
    margin-bottom: 18px;
}

@media (max-width: 1100px) {
    .apx-admin-billing-actions {
        grid-template-columns: minmax(0, 1fr);
    }

    .apx-admin-logs-actions {
        justify-content: flex-start;
    }

    .apx-admin-client-index-actions {
        grid-template-columns: minmax(0, 1fr);
        margin-left: 0;
    }

    .apx-admin-client-index-filter,
    .apx-admin-client-index-search {
        justify-items: stretch;
    }

    .apx-admin-client-index-search-row,
    .apx-admin-client-index-action-row {
        justify-items: stretch;
    }

    .apx-admin-client-card {
        grid-template-columns: 1fr;
    }

    .apx-admin-client-card-status {
        justify-content: flex-start;
    }

    .apx-admin-billing-overview .apx-command-metric-grid,
    .apx-admin-billing-age-grid,
    .apx-admin-billing-contract-grid,
    .apx-admin-system-grid,
    .apx-admin-telemetry-grid,
    .apx-admin-form-panel-grid-2,
    .apx-admin-form-panel-grid-3,
    .apx-admin-form-panel-grid-4,
    .apx-decision-access-grid-wide,
    .apx-admin-environment-summary-grid,
    .apx-admin-environment-scope-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .apx-admin-facilitator-manage-panel[open] > .apx-admin-disclosure-body {
        max-width: min(700px, calc(100vw - 280px));
        min-width: 560px;
    }
}

@media (max-width: 960px) {
    .apx-plan-intro-grid {
        grid-template-columns: 1fr;
    }

    .apx-admin-billing-actions {
        grid-template-columns: 1fr;
    }

    .apx-admin-logs-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .apx-admin-client-index-actions {
        grid-template-columns: 1fr;
    }

    .apx-admin-client-index-select-status,
    .apx-admin-client-index-select-type,
    .apx-admin-client-index-searchbar,
    .apx-admin-logs-actions .apx-admin-client-index-filter {
        width: 100%;
    }

    .apx-admin-client-card-metrics,
    .apx-admin-billing-overview .apx-command-metric-grid,
    .apx-admin-billing-age-grid,
    .apx-admin-billing-contract-grid,
    .apx-admin-system-grid,
    .apx-admin-telemetry-grid,
    .apx-admin-form-panel-grid-2,
    .apx-admin-form-panel-grid-3,
    .apx-admin-form-panel-grid-4,
    .apx-admin-toggle-grid,
    .apx-decision-access-grid-wide,
    .apx-admin-facilitator-metric-grid,
    .apx-admin-environment-summary-grid,
    .apx-admin-environment-scope-grid,
    .apx-admin-environment-assignment-list {
        grid-template-columns: 1fr;
    }

    .apx-admin-master-summary .apx-command-metric-grid,
    .apx-admin-master-snapshot-grid,
    .apx-admin-master-field-grid,
    .apx-admin-master-settings .apx-admin-facilitator-create-form,
    .apx-admin-master-settings .apx-admin-facilitator-manage-form {
        grid-template-columns: 1fr;
    }

    .apx-admin-facilitator-manage-panel {
        display: block;
    }

    .apx-admin-facilitator-manage-panel[open] > .apx-admin-disclosure-body {
        left: 0;
        max-width: none;
        min-width: 0;
        position: static;
        right: auto;
        width: 100%;
    }
}

/* Report Library and Competency Profile */

.apx-report-library {
    background: var(--apx-panel);
    border-color: var(--apx-border);
    box-shadow: var(--apx-card-shadow);
}

.apx-report-library-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(auto-fit, minmax(184px, 1fr));
}

.apx-report-library-card {
    border: 1px solid rgba(33, 29, 24, 0.09);
    border-radius: 14px;
    min-height: 120px;
    padding: 11px 12px;
    transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.apx-report-library-card.is-live {
    background: rgba(255, 252, 246, 0.96);
    border-color: rgba(34, 197, 94, 0.34);
    box-shadow: 0 18px 48px rgba(84, 76, 65, 0.11);
}

.apx-report-library-card.is-locked {
    background: rgba(240, 231, 215, 0.42);
    opacity: 0.72;
}

.apx-report-library-card.is-live:hover {
    border-color: rgba(164, 124, 47, 0.46);
    transform: translateY(-2px);
}

.apx-report-library-card span,
.apx-competency-matrix span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.12em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.apx-report-library-card strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.9rem;
    line-height: 1.2;
    margin-bottom: 5px;
}

.apx-report-library-card p {
    color: var(--apx-text-soft);
    font-size: 0.79rem;
    line-height: 1.34;
    margin: 0 0 6px;
}

.apx-report-library-card a,
.apx-report-library-card small {
    color: var(--apx-accent);
    font-size: 0.74rem;
    font-weight: 900;
    text-decoration: none;
}

.apx-competency-matrix {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.apx-competency-matrix article {
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    padding: 16px;
}

.apx-competency-matrix div {
    background: rgba(84, 76, 65, 0.14);
    border-radius: 999px;
    height: 10px;
    margin: 10px 0;
    overflow: hidden;
}

.apx-competency-matrix i {
    background: linear-gradient(90deg, #a47c2f, #22c55e);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.apx-competency-matrix strong {
    color: var(--apx-text);
    font-size: 1.1rem;
}

.apx-rubric-editor {
    display: grid;
    gap: 14px;
}

.apx-rubric-editor-row {
    appearance: none;
    background: rgba(255, 250, 242, 0.94);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 18px;
    display: grid;
    gap: 0;
    overflow: hidden;
    padding: 0;
}

.apx-rubric-editor-row::marker,
.apx-rubric-editor-row::-webkit-details-marker {
    display: none;
}

.apx-rubric-editor-summary {
    align-items: center;
    cursor: pointer;
    display: grid;
    gap: 12px;
    grid-template-columns: 64px minmax(0, 1.35fr) minmax(94px, 0.52fr) minmax(0, 1fr) minmax(0, 1fr);
    list-style: none;
    padding: 12px 14px;
}

.apx-rubric-editor-summary::marker,
.apx-rubric-editor-summary::-webkit-details-marker {
    display: none;
}

.apx-rubric-editor-summary:focus-visible {
    outline: 2px solid rgba(164, 124, 47, 0.35);
    outline-offset: -2px;
}

.apx-rubric-editor-body {
    align-items: end;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(180px, 1.15fr) minmax(92px, 0.42fr) minmax(160px, 1fr) minmax(160px, 1fr);
    padding: 0 14px 14px;
}

.apx-rubric-editor-body label {
    margin: 0;
}

.apx-rubric-enabled {
    align-items: center;
    display: flex;
    gap: 8px;
    min-height: 42px;
}

.apx-rubric-enabled span,
.apx-rubric-editor-row label span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.apx-rubric-summary-field {
    min-width: 0;
}

.apx-rubric-summary-field small {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.09em;
    margin-bottom: 4px;
    text-transform: uppercase;
}

.apx-rubric-summary-field strong {
    color: var(--apx-text);
    display: block;
    font-size: 0.98rem;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}

.apx-rubric-description {
    grid-column: 1 / -1;
}

.apx-rubric-description small {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    margin-top: 6px;
}

.apx-rubric-editor-row[open] .apx-rubric-editor-summary {
    border-bottom: 1px solid rgba(33, 29, 24, 0.06);
    margin-bottom: 12px;
}

.apx-rubric-editor-row[open] .apx-rubric-editor-body {
    padding-top: 0;
}

.apx-rubric-transfer-panel {
    margin-bottom: 0;
    width: 100%;
}

.apx-rubric-transfer-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(400px, 1.06fr) minmax(260px, 0.94fr);
    align-items: stretch;
}

.apx-rubric-transfer-stack {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr);
}

.apx-rubric-panel-summary {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    padding: 18px 18px 0;
}

.apx-rubric-panel-summary::marker,
.apx-rubric-panel-summary::-webkit-details-marker {
    display: none;
}

.apx-rubric-panel-summary .apx-settings-head {
    margin-bottom: 0;
}

.apx-rubric-panel-summary-copy {
    color: var(--apx-text-muted);
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.35;
}

.apx-rubric-import-form {
    align-items: end;
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.12);
    border-radius: 14px;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.74fr) auto;
    padding: 11px 12px;
}

.apx-rubric-import-form button {
    align-self: end;
    justify-self: stretch;
    white-space: nowrap;
}

.apx-rubric-import-form label {
    margin: 0;
}

.apx-rubric-import-form label span {
    color: var(--apx-text-muted);
    display: block;
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

@media (max-width: 1200px) {
    .apx-rubric-editor-summary,
    .apx-rubric-editor-body {
        grid-template-columns: 64px minmax(180px, 1fr) 92px minmax(180px, 1fr);
    }

    .apx-rubric-transfer-grid,
    .apx-rubric-import-form {
        grid-template-columns: 1fr;
    }

    .apx-rubric-transfer-stack {
        grid-template-columns: 1fr;
    }

    .apx-staff-report-filter {
        grid-template-columns:
            minmax(220px, 1fr)
            minmax(180px, 0.9fr)
            minmax(130px, 0.7fr)
            repeat(2, minmax(74px, 0.4fr));
    }

    .apx-staff-report-filter .apx-staff-inline-save {
        grid-column: span 2;
        justify-self: stretch;
    }

    .apx-report-production-card {
        max-width: none;
    }

    .apx-academic-context-row {
        grid-template-columns: 1fr;
    }

    .apx-academic-report-band-head {
        align-items: flex-start;
        display: grid;
    }
}

@media (max-width: 1360px) {
    .apx-rubric-import-form {
        grid-template-columns: 1fr;
    }

    .apx-calendar-transfer-form {
        margin-left: 0;
        width: 100%;
    }
}

@media (max-width: 760px) {
    .apx-report-library-grid,
    .apx-competency-matrix,
    .apx-rubric-editor-row,
    .apx-rubric-editor-summary,
    .apx-rubric-editor-body,
    .apx-rubric-transfer-grid,
    .apx-rubric-import-form {
        grid-template-columns: 1fr;
    }

    .apx-calendar-transfer-form {
        grid-template-columns: 1fr;
    }

    .apx-facilitator-release-stats,
    .apx-staff-release-stats {
        grid-template-columns: 1fr;
    }

    .apx-rubric-description {
        grid-column: auto;
    }
}

.apx-admin-registry-pagehead {
    margin-bottom: 0;
}

.apx-admin-registry-shell {
    padding: 10px 12px;
}

.apx-admin-registry {
    display: grid;
    gap: 8px;
}

.apx-admin-registry-record {
    border: 1px solid rgba(33, 29, 24, 0.1);
    border-left: 4px solid rgba(96, 165, 250, 0.4);
    border-radius: 14px;
    overflow: hidden;
    scroll-margin-top: 7rem;
    transition: border-color 160ms ease, box-shadow 160ms ease;
}

.apx-admin-registry-record.is-open {
    border-color: rgba(164, 124, 47, 0.34);
    box-shadow: 0 16px 42px rgba(84, 76, 65, 0.12);
}

.apx-admin-registry-record.is-open .apx-admin-registry-row {
    background: linear-gradient(180deg, rgba(255, 252, 246, 1) 0%, rgba(250, 244, 233, 0.96) 100%);
}

.apx-admin-registry-record.is-open .apx-admin-registry-zone-action {
    color: #8a5f18;
}

.apx-admin-registry-record-good {
    border-left-color: rgba(34, 197, 94, 0.84);
}

.apx-admin-registry-record-critical {
    border-left-color: rgba(220, 38, 38, 0.84);
}

.apx-admin-registry-record-needs-attention,
.apx-admin-registry-record-pending,
.apx-admin-registry-record-issued,
.apx-admin-registry-record-due,
.apx-admin-registry-record-draft {
    border-left-color: rgba(245, 158, 11, 0.84);
}

.apx-admin-registry-record-paid,
.apx-admin-registry-record-void,
.apx-admin-registry-record-active {
    border-left-color: rgba(34, 197, 94, 0.84);
}

.apx-admin-registry-row {
    align-items: center;
    background: #fffdfa;
    border: 0;
    color: inherit;
    cursor: pointer;
    display: grid;
    gap: 12px;
    grid-template-columns: 56px minmax(0, 1fr) minmax(110px, 0.22fr) 58px;
    min-height: 72px;
    padding: 10px 14px;
    text-align: left;
    width: 100%;
}

.apx-admin-registry-zone {
    min-width: 0;
}

.apx-admin-registry-zone-identity {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.apx-admin-registry-zone-identity strong,
.apx-admin-registry-zone-identity small,
.apx-admin-registry-zone-status span,
.apx-admin-registry-zone-action {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-admin-registry-zone-identity strong {
    font-size: 1.05rem;
}

.apx-admin-registry-zone-identity small {
    color: var(--apx-text-muted);
    font-size: 0.82rem;
    font-weight: 700;
}

.apx-admin-registry-zone-status {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: flex-start;
    white-space: nowrap;
}

.apx-admin-registry-zone-action {
    color: #2563eb;
    font-weight: 800;
    text-align: right;
}

.apx-admin-registry-icon {
    align-items: center;
    background: linear-gradient(180deg, rgba(255, 252, 246, 0.98) 0%, rgba(247, 240, 229, 0.88) 100%);
    border: 1px solid rgba(164, 124, 47, 0.16);
    border-radius: 14px;
    display: inline-flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.apx-admin-registry-detail {
    background: rgba(255, 253, 250, 0.96);
    border-top: 1px solid rgba(33, 29, 24, 0.08);
    padding: 10px 12px 12px;
}

.apx-admin-client-environment-list {
    background: rgba(255, 251, 245, 0.78);
    border-top: 1px solid rgba(33, 29, 24, 0.06);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 14px 12px 70px;
}

.apx-admin-client-environment-pill {
    align-items: flex-start;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(164, 124, 47, 0.16);
    border-radius: 12px;
    color: inherit;
    display: grid;
    gap: 2px;
    max-width: 100%;
    min-width: 220px;
    padding: 8px 12px;
    text-align: left;
}

.apx-admin-client-environment-pill strong,
.apx-admin-client-environment-pill span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.apx-admin-client-environment-pill strong {
    font-size: 0.84rem;
    font-weight: 800;
}

.apx-admin-client-environment-pill span {
    color: var(--apx-text-muted);
    font-size: 0.76rem;
    font-weight: 700;
}

.apx-admin-client-environment-pill.is-selected {
    background: rgba(212, 168, 87, 0.12);
    border-color: rgba(164, 124, 47, 0.3);
}

.apx-admin-registry-card {
    display: grid;
    gap: 10px;
}

.apx-admin-registry-card-head {
    align-items: flex-start;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto;
}

.apx-admin-registry-card-head h3 {
    font-size: 1.25rem;
    margin: 0;
}

.apx-admin-registry-card-head p {
    margin: 4px 0 0;
}

.apx-admin-registry-card-links {
    display: inline-flex;
    gap: 8px;
    flex-wrap: wrap;
}

.apx-admin-registry-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-admin-registry-tab {
    background: #fffdfa;
    border: 1px solid rgba(164, 124, 47, 0.2);
    border-radius: 999px;
    color: inherit;
    cursor: pointer;
    font: inherit;
    font-weight: 800;
    padding: 7px 12px;
    text-decoration: none;
}

.apx-admin-registry-tab.is-current {
    border-color: rgba(164, 124, 47, 0.5);
    box-shadow: inset 0 0 0 1px rgba(164, 124, 47, 0.28);
}

.apx-admin-registry-card-body > .apx-card:first-child {
    margin-top: 0;
}

.apx-admin-compact-environment-table-wrap {
    overflow-x: auto;
}

.apx-admin-compact-environment-table th,
.apx-admin-compact-environment-table td {
    vertical-align: middle;
}

.apx-admin-compact-environment-table td:last-child {
    min-width: 260px;
}

.apx-admin-compact-environment-table tr.is-parent td {
    background: rgba(212, 168, 87, 0.08);
}

.apx-admin-compact-environment-tag {
    background: rgba(164, 124, 47, 0.14);
    border-radius: 999px;
    display: inline-flex;
    font-size: 0.7rem;
    font-weight: 800;
    margin-left: 8px;
    padding: 3px 8px;
    text-transform: uppercase;
}

.apx-admin-child-environment-actions {
    align-items: center;
    display: flex;
    gap: 8px;
}

.apx-admin-child-environment-actions .form-select {
    min-width: 148px;
}

.apx-admin-child-environment-manage-panel {
    margin-top: 10px;
}

.apx-admin-child-environment-section {
    display: grid;
    gap: 10px;
}

.apx-admin-child-environment-section h6 {
    margin: 0;
}

.apx-admin-child-environment-full {
    grid-column: 1 / -1;
}

.apx-admin-compact-environment-editor-list {
    display: grid;
    gap: 12px;
}

.apx-admin-compact-environment-editor {
    background: rgba(255, 251, 245, 0.78);
    border: 1px solid rgba(33, 29, 24, 0.08);
    border-radius: 16px;
    padding: 14px;
}

.apx-admin-compact-environment-editor-head {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 12px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apx-admin-compact-environment-editor-head span {
    color: var(--apx-text-muted);
    font-size: 0.82rem;
    font-weight: 700;
}

.apx-admin-compact-environment-editor-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.apx-admin-compact-environment-toggle {
    align-self: end;
    min-height: 44px;
}

.apx-admin-registry-loading,
.apx-admin-registry-error {
    color: var(--apx-text-muted);
    font-weight: 700;
    padding: 8px 2px;
}

@media (max-width: 980px) {
    .apx-admin-registry-row {
        grid-template-columns: 48px minmax(0, 1fr) 92px 48px;
    }

    .apx-admin-registry-card-head {
        grid-template-columns: 1fr;
    }

    .apx-admin-compact-environment-editor-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .apx-admin-registry-row {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }

    .apx-admin-registry-zone-status {
        display: none;
    }
}

.apx-report-family-strip,
.apx-a4-report-controls,
.apx-acc04-metadata {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.apx-report-family-strip span,
.apx-a4-report-controls span,
.apx-acc04-metadata div {
    background: rgba(245, 246, 248, 0.95);
    border: 1px solid rgba(31, 41, 55, 0.12);
    border-radius: 6px;
    color: #1f2937;
    padding: 7px 9px;
}

.apx-a4-report-shell {
    margin-left: auto;
    margin-right: auto;
    max-width: 210mm;
    min-height: 297mm;
}

.apx-a4-report-controls {
    border-bottom: 1px solid rgba(31, 41, 55, 0.12);
    justify-content: space-between;
    margin-bottom: 14px;
    padding-bottom: 10px;
}

.apx-a4-report-controls button,
.apx-a4-report-controls a {
    background: #111827;
    border: 1px solid #111827;
    border-radius: 6px;
    color: #fff;
    cursor: pointer;
    font-weight: 800;
    padding: 7px 11px;
    text-decoration: none;
}

.apx-a4-report-controls button:focus-visible,
.apx-a4-report-controls a:focus-visible,
[data-hotel-report-viewer-link]:focus-visible {
    outline: 3px solid #2563eb;
    outline-offset: 2px;
}

.apx-acc04-metadata {
    align-items: stretch;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    margin: 12px 0;
}

.apx-acc04-metadata div {
    display: grid;
    gap: 4px;
}

.apx-acc04-metadata span {
    color: #4b5563;
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.apx-acc04-metadata strong {
    color: #111827;
    font-size: 0.9rem;
    line-height: 1.35;
}

.apx-report-disclosure,
.apx-report-release-warning {
    border-radius: 6px;
    line-height: 1.45;
    padding: 10px 12px;
}

.apx-report-disclosure {
    background: #eef2ff;
    border: 1px solid rgba(79, 70, 229, 0.22);
    color: #312e81;
}

.apx-report-release-warning {
    background: #fff7ed;
    border: 1px solid rgba(234, 88, 12, 0.28);
    color: #7c2d12;
    font-weight: 800;
    margin-bottom: 12px;
}

.apx-report-table-section {
    break-inside: avoid;
    margin-top: 16px;
}

@media print {
    .apx-a4-report-shell {
        box-shadow: none;
        max-width: none;
        min-height: auto;
        page-break-after: always;
    }

    .apx-report-table-section {
        page-break-inside: avoid;
    }
}

@media (max-width: 760px) {
    .apx-a4-report-shell {
        max-width: 100%;
        min-height: auto;
    }

    .apx-a4-report-controls,
    .apx-report-family-strip {
        align-items: stretch;
        flex-direction: column;
    }

    .apx-a4-report-controls button,
    .apx-a4-report-controls a {
        text-align: center;
        width: 100%;
    }
}
