/**
 * PowerX Core — Text Editor Widget Stylesheet
 * 
 * Clean, lightweight, ThemeForest-compliant styles for px-text-editor.
 * Supports fluid typography, drop caps, multi-column layouts, and GSAP motion.
 *
 * @package PowerX_Core
 * @version 0.0.1
 */

.px-text-editor-wrap {
    position: relative;
    width: 100%;
    color: inherit;
}

.px-text-editor,
.px-text-editor.elementor-text-editor {
    position: relative;
    font-size: var(--powerx-body-font-size, 16px);
    line-height: var(--px-line-height-relaxed, 1.7);
    color: inherit;
    overflow-wrap: break-word;
    word-break: normal;
    min-width: 0;
}

/* Ensure wrapper-scoped text colors are cleanly inherited */
.elementor-element.elementor-widget-px-text-editor .px-text-editor,
.elementor-element.elementor-widget-text-editor .elementor-text-editor {
    color: inherit;
}

.px-text-editor p,
.px-text-editor.elementor-text-editor p,
.elementor-element.elementor-widget-px-text-editor .px-text-editor p,
.elementor-widget-text-editor p,
.elementor-widget-text-editor .elementor-text-editor p,
.elementor-text-editor p {
    margin-top: 0;
    margin-bottom: 1em;
    color: inherit;
}

.px-text-editor p:last-child,
.px-text-editor.elementor-text-editor p:last-child {
    margin-bottom: 0;
}

.px-text-editor a {
    color: var(--px-accent, var(--powerx-primary-color, var(--powerx-primary-500, #4945ff)));
    text-decoration: underline;
    transition: color 0.2s ease;
}

.px-text-editor a:hover {
    color: var(--px-accent-hover, var(--powerx-primary-hover, var(--powerx-primary-600, #2563eb)));
}

.px-text-editor ul,
.px-text-editor ol {
    margin: 0 0 1em 1.5em;
    padding: 0;
}

.px-text-editor blockquote {
    margin: 1.5em 0;
    padding: 12px 20px;
    border-left: 3px solid var(--px-accent, var(--powerx-primary-color, var(--powerx-primary-500, #4945ff)));
    background: var(--powerx-neutral-100, #f6f6f9);
    --powerx-radius-joined-start: var(--powerx-radius-none, 0);
    --powerx-radius-joined-end: var(--powerx-radius-sm, 4px);
    border-radius: var(--powerx-radius-joined-start) var(--powerx-radius-joined-end) var(--powerx-radius-joined-end) var(--powerx-radius-joined-start);
    font-style: italic;
}

/* Drop Cap */
.px-text-editor.has-drop-cap:first-letter {
    font-family: inherit;
    font-size: 3.4em;
    float: left;
    line-height: 0.8em;
    padding-right: 0.15em;
    color: var(--px-accent, var(--powerx-primary-color, var(--powerx-primary-500, #4945ff)));
    font-weight: 800;
}

/* Table Support */
.px-text-editor table,
.elementor-widget-text-editor .elementor-text-editor table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    font-size: 0.875rem;
    line-height: 1.35;
}

.px-text-editor th,
.px-text-editor td,
.elementor-widget-text-editor .elementor-text-editor th,
.elementor-widget-text-editor .elementor-text-editor td {
    padding: 5px 12px;
    border: 1px solid var(--powerx-border-color, #e2e8f0);
    text-align: left;
    vertical-align: middle;
    line-height: 1.35;
}

.px-text-editor th,
.elementor-widget-text-editor .elementor-text-editor th {
    font-weight: 600;
    background-color: var(--powerx-overlay-navy, rgba(15, 23, 42, 0.04));
    color: var(--powerx-heading-color, var(--powerx-neutral-900, #212134));
}

.px-text-editor tbody tr:nth-child(even),
.elementor-widget-text-editor .elementor-text-editor tbody tr:nth-child(even) {
    background-color: var(--powerx-color-alpha, rgba(248, 250, 252, 0.6));
}

.px-text-editor tbody tr:hover,
.elementor-widget-text-editor .elementor-text-editor tbody tr:hover {
    background-color: var(--powerx-color-alpha, rgba(241, 245, 249, 0.8));
}


