/* ============================== */
/* Accordion/List-Item Styling    */
/* ============================== */

/* Subheading above each content blocks group */
.content-blocks--list-subheading {
    margin-top: 2rem;
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    font-weight: bold;
    color: #444;
    display: flex;
    align-items: center;
    gap: 0.5em;
}

.content-blocks--list-subheading::before {
    content: "📦";
    font-size: 1.5rem;
}

/* Grouped list items */
.content-blocks--list-group {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Individual list items (content blocks) */
.content-blocks--list-group-item {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    margin-bottom: 10px;
    padding: 1.2em 1.5em;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.content-blocks--list-group-item:hover {
    background: #f5f5ff;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

/* Text section inside each item */
.content-blocks--text {
    flex-grow: 1;
}

/* Display name (title) styling */
.content-blocks--display-name {
    font-weight: 600;
    font-size: 1.2rem;
    margin-bottom: 0.3em;
    color: #333;
}

/* Description under the title */
.content-blocks--description {
    color: #777;
    font-size: 0.95rem;
}

/* ============================== */
/* Form & Editing Pages           */
/* ============================== */

.content-blocks--form-heading {
    margin-bottom: 0.8em;
    font-size: 2rem;
    font-weight: bold;
    color: #333;
}

.content-blocks--form-description {
    margin-bottom: 1.5em;
    color: #666;
    font-size: 1rem;
}

.content-blocks--form-actions {
    margin-top: 2em;
    display: flex;
    align-items: center;
    gap: 1em;
}

.content-blocks--form-actions .button {
    background: #7a6ad8;
    color: #fff;
    border: none;
    padding: 0.7em 1.7em;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    transform: scale(1);
}

.content-blocks--form-actions .button:hover {
    background: #5a4ebc;
    transform: scale(1.05);
}

.content-blocks--form-actions .button.button-outline {
    background: transparent;
    border: 2px solid #7a6ad8;
    color: #7a6ad8;
}

.content-blocks--form-actions .button.button-outline:hover {
    background: #7a6ad8;
    color: #fff;
    transform: scale(1.05);
}

/* Image preview inside form */
.content-blocks--image-preview {
    max-width: 100%;
    max-height: 400px;
    margin: 2em 0;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* ============================== */
/* Accordion-Specific Classes     */
/* ============================== */

.content-blocks--accordion {
    margin-top: 2em;
}

.content-blocks--accordion-item {
    margin-bottom: 1em;
    border: 1px solid #ddd;
    border-radius: 6px;
    overflow: hidden;
}

.content-blocks--accordion-header {
    padding: 1em;
    cursor: pointer;
    background: #f0f0f8;
    color: #333;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s ease;
}

.content-blocks--accordion-header::after {
    content: "▼";
    font-size: 1rem;
    transition: transform 0.3s ease;
}

.content-blocks--accordion-item.active .content-blocks--accordion-header::after {
    transform: rotate(180deg);
}

.content-blocks--accordion-header:hover {
    background: #e2e2ff;
}

.content-blocks--accordion-panel {
    padding: 1em;
    background: #fafafa;
}

/* ============================== */
/* Optional Card Container        */
/* ============================== */

.content-blocks--card {
    background: #ffffff;
    border-radius: 10px;
    padding: 2em;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
    max-width: 1000px;
    margin: 2em auto;
    color: #333;
}
