/**
 * Soran AI Studio — Block editor styles.
 *
 * Loaded in both the block editor (add_editor_style) and the front end
 * (enqueue_block_assets) to ensure consistent rendering.
 *
 * Core Gutenberg blocks are re-skinned to match the dark enterprise theme.
 */

/* ---- Editor iframe base ---- */
.editor-styles-wrapper {
    background:  #050816 !important;
    color:       #f5f8ff !important;
    font-family: "Satoshi","Helvetica Neue",Helvetica,Arial,sans-serif !important;
    font-size:   17px !important;
    line-height: 1.55 !important;
}

/* ---- Headings ---- */
.editor-styles-wrapper h1,
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6 {
    color: #f5f8ff;
    letter-spacing: -0.025em;
    text-wrap: balance;
}

/* ---- Paragraph ---- */
.editor-styles-wrapper p {
    color:       #94a3b8;
    font-size:   17px;
    line-height: 1.75;
    margin-bottom: 1.4em;
}

/* ---- Links ---- */
.editor-styles-wrapper a {
    color: #00d4ff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ---- Blockquote ---- */
.editor-styles-wrapper blockquote,
.wp-block-quote {
    border-left: 3px solid var(--accent, #3b82f6) !important;
    padding: 16px 20px !important;
    background: rgba(255,255,255,0.045) !important;
    border-radius: 0 12px 12px 0 !important;
    margin: 1.8em 0 !important;
}

.editor-styles-wrapper blockquote p,
.wp-block-quote p {
    color: #f5f8ff !important;
    font-style: italic;
}

/* ---- Code ---- */
.editor-styles-wrapper code,
.wp-block-code code {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 0.87em;
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 5px;
    padding: 2px 7px;
    color: #00d4ff;
}

.wp-block-code {
    background: #111a30 !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    border-radius: 18px !important;
    padding: 22px 24px !important;
}

.wp-block-code code {
    background: none !important;
    border: none !important;
    padding: 0 !important;
    color: #f5f8ff !important;
    font-size: 0.9em;
}

/* ---- Separator ---- */
.wp-block-separator {
    border-color: rgba(255,255,255,0.08) !important;
}

/* ---- Table ---- */
.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
    font-size: 15px;
}

.wp-block-table td,
.wp-block-table th {
    padding: 10px 14px !important;
    border: 1px solid rgba(255,255,255,0.08) !important;
    color: #f5f8ff;
}

.wp-block-table th {
    background: rgba(255,255,255,0.045) !important;
    font-weight: 700;
}

/* ---- Image ---- */
.wp-block-image img {
    border-radius: 18px;
}

.wp-block-image figcaption {
    font-size: 13px;
    color: #64748b;
    text-align: center;
    margin-top: 10px;
}

/* ---- List ---- */
.editor-styles-wrapper ul,
.editor-styles-wrapper ol {
    color: #94a3b8;
    padding-left: 1.5em;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 1.4em;
}

.editor-styles-wrapper li::marker {
    color: #00d4ff;
}

/* ---- Buttons block ---- */
.wp-block-button__link {
    border-radius: 999px !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    padding: 13px 22px !important;
    background: linear-gradient(180deg, #4b8bf5, #3b82f6) !important;
    color: #fff !important;
    box-shadow: 0 8px 24px -8px rgba(59,130,246,0.4) !important;
    transition: transform .25s, box-shadow .25s !important;
}

.wp-block-button__link:hover {
    transform: translateY(-2px) !important;
}

/* ---- Cover block ---- */
.wp-block-cover {
    border-radius: 18px;
    overflow: hidden;
}

/* ---- Columns ---- */
.wp-block-columns {
    gap: 24px;
}

/* ---- Wide / Full alignment ---- */
.alignwide {
    max-width: 1240px;
    margin-inline: auto;
}

.alignfull {
    max-width: 100%;
}

/* ---- Palette classes ---- */
.has-accent-color        { color: var(--accent, #3b82f6) !important; }
.has-accent-2-color      { color: var(--accent-2, #00d4ff) !important; }
.has-accent-3-color      { color: var(--accent-3, #8b5cf6) !important; }
.has-text-color          { color: #f5f8ff !important; }
.has-muted-color         { color: #94a3b8 !important; }
.has-accent-background-color   { background-color: var(--accent, #3b82f6) !important; }
.has-surface-background-color  { background-color: #0d1323 !important; }
