:root {
    --eac-status-red: #ff383c;
    --eac-status-orange: #ff8d28;
    --eac-status-green: #34c759;
    --eac-status-grey: #d1d1d6;
    --eac-status-red-ink: #e9152d;
    --eac-status-orange-ink: #c55300;
    --eac-status-green-ink: #008932;
    --eac-status-grey-ink: #8e8e93;
    --eac-status-text: #1d1d1f;
    --eac-status-font: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

.eac-status-summary,
.eac-status-summary * {
    box-sizing: border-box;
}

.eac-status-summary {
    display: inline-flex;
    max-width: 100%;
    font-family: var(--eac-status-font);
    font-size: 16px;
    line-height: 1.35;
}

.eac-status-summary__link {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    color: inherit;
    text-decoration: none;
}

.eac-status-summary__link:hover,
.eac-status-summary__link:focus-visible {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.eac-status-summary__label {
    font: inherit;
    font-weight: 500;
}

.eac-status-summary__indicators {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 3px;
}

.eac-status-indicator {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: 0;
    border-radius: 50%;
    color: var(--eac-status-text);
    font-family: var(--eac-status-font);
    font-weight: 700;
    line-height: 1;
    vertical-align: middle;
    box-shadow: none;
}

.eac-status-indicator--normal {
    width: 18px;
    height: 18px;
    font-size: 8px;
}

.eac-status-indicator--small {
    width: 7px;
    height: 7px;
    font-size: 0;
}

.eac-status-indicator--red { background-color: var(--eac-status-red); }
.eac-status-indicator--orange { background-color: var(--eac-status-orange); color: #1d1d1f; }
.eac-status-indicator--green { background-color: var(--eac-status-green); color: #1d1d1f; }
.eac-status-indicator--grey { background-color: var(--eac-status-grey); color: #1d1d1f; }

.eac-status-text--red { color: var(--eac-status-red-ink) !important; }
.eac-status-text--orange { color: var(--eac-status-orange-ink) !important; }
.eac-status-text--green { color: var(--eac-status-green-ink) !important; }
.eac-status-text--grey { color: var(--eac-status-grey-ink) !important; }

.eac-status-indicator__value {
    display: block;
    min-width: 1ch;
    color: inherit;
    font: inherit;
    text-align: center;
}

.eac-status-legend {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin: 10px 0 14px;
    color: #334155;
    font-family: var(--eac-status-font);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
}

.eac-status-legend__heading {
    font-weight: 700;
}

.eac-status-legend__item {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.eac-status-legend__item strong {
    font-weight: 600;
}

/* Existing compact lights now share the same physical and semantic palette. */
.snq-dot,
.circle.red,
.circle.green,
.sra-status-circle,
.sms-risk-dot,
.eac-mhp-status-dot {
    width: 7px !important;
    height: 7px !important;
    box-sizing: border-box;
    border: 0 !important;
    box-shadow: none !important;
}

.eac-mhp {
    --eac-green: var(--eac-status-green-ink) !important;
    --eac-orange: var(--eac-status-orange-ink) !important;
    --eac-red: var(--eac-status-red-ink) !important;
    --eac-grey: var(--eac-status-grey-ink) !important;
    font-family: var(--eac-status-font) !important;
}

.eac-mhp-status-widget-green .eac-mhp-status-dot { background: var(--eac-status-green) !important; }
.eac-mhp-status-widget-orange .eac-mhp-status-dot { background: var(--eac-status-orange) !important; }
.eac-mhp-status-widget-red .eac-mhp-status-dot { background: var(--eac-status-red) !important; }

.eac-status-cell {
    background-image: linear-gradient(rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.76));
    box-shadow: inset 4px 0 0 currentColor;
}

.eac-status-cell--red { background-color: var(--eac-status-red); color: var(--eac-status-red-ink); }
.eac-status-cell--orange { background-color: var(--eac-status-orange); color: var(--eac-status-orange-ink); }
.eac-status-cell--green { background-color: var(--eac-status-green); color: var(--eac-status-green-ink); }
.eac-status-cell--grey { background-color: var(--eac-status-grey); color: var(--eac-status-grey-ink); }

#sms-risk-container .risk-zone {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    box-sizing: border-box;
    padding: 3px 8px;
    border-radius: 999px;
    font-family: var(--eac-status-font);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}

#sms-risk-container .risk-zone.green { background: #dcfce7 !important; color: #166534; }
#sms-risk-container .risk-zone.amber-low,
#sms-risk-container .risk-zone.amber-high { background: #fef3c7 !important; color: #92400e; }
#sms-risk-container .risk-zone.red { background: #fee2e2 !important; color: #991b1b; }

.question-text-red { color: var(--eac-status-red) !important; }
.question-text-orange { color: var(--eac-status-orange) !important; }
.question-text-green { color: var(--eac-status-green) !important; }

.snq-dot.red,
.circle.red,
.sra-status-open,
.sms-risk-red { background: var(--eac-status-red) !important; }
.snq-dot.orange,
.sms-risk-orange { background: var(--eac-status-orange) !important; }
.snq-dot.green,
.circle.green,
.sra-status-read,
.sra-status-closed,
.sms-risk-green { background: var(--eac-status-green) !important; }
.snq-dot.grey,
.snq-dot.gray { background: var(--eac-status-grey) !important; }

.snq-legend {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 14px !important;
    font-family: var(--eac-status-font);
    font-size: 13px;
    line-height: 1.4;
}

.snq-legend > span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.snq-legend .snq-dot {
    margin-right: 0 !important;
}

/* Status pills use one type scale and spacing system across modules. */
.eac-regmon-badge,
.eac-meeting-summary span,
.eac-meeting-badge,
.easysform-signature-badge,
.eac-mhp-pill,
.eac-controlled-document__status {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    box-sizing: border-box;
    padding: 3px 8px;
    border-radius: 999px;
    font-family: var(--eac-status-font);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}

.easysform-signature-badge.completed {
    background: #dcfce7;
    color: #166534;
}

.easysform-signature-badge.declined {
    background: #fee2e2;
    color: #991b1b;
}

.easysform-signature-badge.sent {
    background: #fef3c7;
    color: #92400e;
}

.eac-mhp-status-dot {
    margin-top: 3px;
    background: currentColor !important;
}

@media (max-width: 600px) {
    .eac-status-summary { font-size: 15px; }
    .eac-status-legend { align-items: flex-start; }
}
