/* =========================
   Wrapper
========================= */
.system-status-wrapper {
    font-family: "DM Sans", sans-serif;
}

/* =========================
   List
========================= */
.system-status-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* =========================
   Item
========================= */
.system-item {
    border: 1px solid #d5dfff;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

/* =========================
   Summary
========================= */
.system-summary {
    list-style: none;
    cursor: pointer;
}

.system-summary::-webkit-details-marker {
    display: none;
}

/* =========================
   Header
========================= */
.system-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: #fafbff;
}

.system-left {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
}

.system-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* =========================
   Status-bar
========================= */
.status-indicator {
    flex-shrink: 0;
    width: 30px;
    height: 5px;
    border-radius: 6px;
}

.status-indicator.green {
    background: #7ddf7d;
}

.status-indicator.yellow {
    background: #facc15;
}

.status-indicator.red {
    background: #fca5a5;
}

.subsystem-item .status-indicator.small {
    width: 18px;
    height: 4px;
}

/* =========================
   System title
========================= */
.system-title {
    font-size: 15px;
    font-weight: 600;
    color: #1D1E20;
}

/* =========================
   Status-text
========================= */
.system-status-text {
    font-size: 14px;
    font-weight: 500;
}

/* =========================
   Arrow
========================= */
.system-arrow {
    width: 8px;
    height: 8px;
    border-right: 2px solid #555;
    border-bottom: 2px solid #555;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
}

.system-item[open] .system-arrow {
    transform: rotate(-135deg);
}

.subsystem-item .system-header {
    border-bottom: 1px solid #e6e9ff;
}

.subsystem-item:last-child .system-header {
    border-bottom: none;
}
/* =========================
   Body
========================= */
.system-body {
    padding: 20px;
    font-size: 14px;
    line-height: 1.6;
    color: #333;
    background-color: #fafbff;
}

/* =========================
   iOS tap highlight fix
========================= */
.system-summary {
    -webkit-tap-highlight-color: transparent;
    outline: none;
}

.system-summary:focus {
    outline: none;
}

.system-summary * {
    -webkit-tap-highlight-color: transparent;
}