.ruleset-root {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ruleset {
    border: 1px solid #d7dbe7;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.ruleset-depth-1 { margin-inline-start: 18px; border-inline-start: 4px solid #dbeafe; }
.ruleset-depth-2 { margin-inline-start: 36px; border-inline-start: 4px solid #dcfce7; }
.ruleset-depth-3 { margin-inline-start: 54px; border-inline-start: 4px solid #fef3c7; }

.ruleset-header,
.ruleset-footer {
    padding: 12px 14px;
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
}

.ruleset-footer {
    border-bottom: 0;
    border-top: 1px solid #e5e7eb;
}

.ruleset-body {
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.rule-row {
    padding: 10px;
    border: 1px solid #eceff5;
    border-radius: 8px;
    background: #fff;
}

.condition-actions {
    display: flex;
    gap: 6px;
}

.rule-assigned-links {
    margin-top: 12px;
}

.rule-assigned-links__row {
    display: grid;
    grid-template-columns: minmax(220px, 280px) 1fr;
    gap: 12px;
    align-items: start;
    padding: 8px 0;
}

.rule-assigned-links__title {
    color: #6b7280;
    font-weight: 600;
}

.rule-assigned-links__items {
    line-height: 1.8;
}

.rule-scope-tabs .nav-link {
    border-radius: 999px;
}

.rule-builder-page .adminRow {
    display: grid;
    grid-template-columns: minmax(180px, 240px) 1fr;
    gap: 12px;
    align-items: start;
    margin-bottom: 12px;
}

.rule-builder-page .adminTitle {
    color: #6b7280;
    font-weight: 600;
    padding-top: 8px;
}

.rule-builder-page .adminData {
    min-width: 0;
}

@media (max-width: 992px) {
    .rule-builder-page .adminRow,
    .rule-assigned-links__row {
        grid-template-columns: 1fr;
    }

    .ruleset-depth-1,
    .ruleset-depth-2,
    .ruleset-depth-3 {
        margin-inline-start: 10px;
    }
}
