/* WordPress Isolation and Reset */
#tgai-app {
    all: initial;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    box-sizing: border-box;
    display: block;
}
#tgai-app *, #tgai-app *::before, #tgai-app *::after {
    all: unset;
    box-sizing: border-box;
    display: revert;
}
#tgai-app img, #tgai-app video, #tgai-app canvas, #tgai-app svg {
    overflow: hidden;
}
img.emoji {
    width: 1em;
    height: 1em;
}
/* App-specific styles */
        /* Comparison_Table widget styles - scoped to #comparison_table-widget-3118679 */
        /* WordPress Comparison_Table Widget Styles - Scoped to #comparison_table-widget-3118679 */
        #comparison_table-widget-3118679 {
            /* STRONG WordPress theme isolation */
            all: initial !important;
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
            line-height: 1.6 !important;
            font-size: 16px !important;
            color: #333 !important;
            background: #ffffff !important;
            padding: 1rem !important;
            border-radius: 8px !important;
            margin: 1rem 0 !important;
            display: block !important;
            box-sizing: border-box !important;
            direction: ltr !important;
        }
        #comparison_table-widget-3118679 * {
            margin: 0 !important;
            padding: 0 !important;
            box-sizing: border-box !important;
        }
        #comparison_table-widget-3118679 .app-container {
            max-width: 1200px !important;
            margin: 0 auto !important;
            display: block !important;
        }
        #comparison_table-widget-3118679 .header-section {
            text-align: center !important;
            margin-bottom: 1.5rem !important;
            padding: 1rem !important;
            background: white !important;
            border-radius: 8px !important;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
            display: block !important;
        }
        #comparison_table-widget-3118679 .app-title {
            font-size: 1.6rem !important;
            font-weight: 600 !important;
            color: #2c5aa0 !important;
            margin-bottom: 0.5rem !important;
            line-height: 1.2 !important;
            display: block !important;
        }
        #comparison_table-widget-3118679 .app-description {
            font-size: 0.95rem !important;
            color: #2d3748 !important;
            max-width: 600px !important;
            margin: 0 auto !important;
            line-height: 1.4 !important;
            display: block !important;
        }
        #comparison_table-widget-3118679 .main-content {
            background: white !important;
            border-radius: 8px !important;
            padding: 1rem !important;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
            border: 1px solid #e1e8ed !important;
            display: flex !important;
            justify-content: center !important;
            align-items: center !important;
            min-height: 200px !important;
        }
        /* Responsive design */
        @media (max-width: 768px) {
            #comparison_table-widget-3118679 {
                padding: 0.75rem !important;
            }
            #comparison_table-widget-3118679 .app-title {
                font-size: 1.4rem !important;
            }
            #comparison_table-widget-3118679 .header-section, 
            #comparison_table-widget-3118679 .main-content {
                padding: 0.75rem !important;
            }
        }
        /* ── Comparison Table — Professional Theme ── */
        /* Override base .main-content flex centering — table must fill full width */
        #comparison_table-widget-3118679 .main-content {
            display: block !important;
            padding: 0 !important;
            min-height: 0 !important;
            box-shadow: none !important;
            border: none !important;
            background: transparent !important;
            border-radius: 0 !important;
        }
        /* Scrollable wrapper */
        #comparison_table-widget-3118679 .tgai-ct-wrapper {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            border-radius: 12px;
            box-shadow: 0 1px 4px rgba(0,0,0,0.07), 0 8px 28px rgba(0,0,0,0.07);
            margin-bottom: 1.5rem;
            background: #ffffff;
            direction: ltr;
            border: 1px solid rgba(0,0,0,0.08);
        }
        /* Table base — min-width ensures horizontal scroll before columns squish */
        #comparison_table-widget-3118679 .tgai-ct {
            width: 100%;
            min-width: 520px;
            border-collapse: separate;
            border-spacing: 0;
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;
            font-size: 0.9rem;
            line-height: 1.55;
        }
        /* ── Header ── */
        #comparison_table-widget-3118679 .tgai-ct thead th {
            background: #2c5aa0;
            color: #fff;
            font-weight: 600;
            padding: 14px 18px;
            text-align: left;
            font-size: 0.85rem;
            white-space: nowrap;
            min-width: 140px;
            border-bottom: 2px solid #2c5aa0cc;
            vertical-align: middle;
        }
        /* Separator between header cells */
        #comparison_table-widget-3118679 .tgai-ct thead th + th {
            border-left: 1px solid rgba(255,255,255,0.18);
        }
        /* Label column header — wider + sticky */
        #comparison_table-widget-3118679 .tgai-ct thead th.tgai-ct-th-label {
            background: #2c5aa0;
            min-width: 175px;
            position: sticky;
            left: 0;
            z-index: 3;
            box-shadow: 2px 0 6px rgba(0,0,0,0.12);
        }
        /* ── Body cells ── */
        #comparison_table-widget-3118679 .tgai-ct tbody td {
            padding: 13px 18px;
            border-bottom: 1px solid #efefef;
            color: #2d3748;
            vertical-align: middle;
            text-align: left;
            transition: background-color 0.12s ease;
            word-break: break-word;
            overflow-wrap: break-word;
            max-width: 220px;
        }
        /* Separator between columns */
        #comparison_table-widget-3118679 .tgai-ct tbody td + td {
            border-left: 1px solid #f0f0f0;
        }
        /* Row-label column — sticky so it stays visible while scrolling wide tables.
           MUST have solid (opaque) background + z-index > regular cells so scrolling
           columns do not bleed through or overlap the sticky text. */
        #comparison_table-widget-3118679 .tgai-ct tbody .tgai-ct-row-label {
            font-weight: 600;
            font-size: 0.875rem;
            color: #1a202c;
            background: #ffffff;
            position: sticky;
            left: 0;
            z-index: 2;
            border-right: 2px solid #2c5aa033;
            box-shadow: 2px 0 6px rgba(0,0,0,0.08);
            max-width: none;
        }
        /* Last row — no bottom border */
        #comparison_table-widget-3118679 .tgai-ct tbody tr:last-child td {
            border-bottom: none;
        }
        /* ── Zebra striping ── */
        #comparison_table-widget-3118679 .tgai-ct tbody tr:nth-child(even) td {
            background-color: #2c5aa007;
        }
        /* Sticky cell must use a solid bg — transparent tint lets scrolling columns bleed through */
        #comparison_table-widget-3118679 .tgai-ct tbody tr:nth-child(even) .tgai-ct-row-label {
            background-color: #f4f6fb;
        }
        /* ── Hover ── */
        #comparison_table-widget-3118679 .tgai-ct tbody tr:hover td {
            background-color: #2c5aa012 !important;
        }
        /* Sticky cell hover also needs a solid bg */
        #comparison_table-widget-3118679 .tgai-ct tbody tr:hover .tgai-ct-row-label {
            background-color: #edf0fa !important;
        }
        /* ── Yes/No icons ── */
        #comparison_table-widget-3118679 .tgai-ct-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 26px;
            height: 26px;
            border-radius: 50%;
            font-size: 0.8rem;
            line-height: 1;
        }
        #comparison_table-widget-3118679 .tgai-ct-icon--yes { background: #ecfdf5; }
        #comparison_table-widget-3118679 .tgai-ct-icon--no  { background: #fef2f2; }
        /* ── Winner / Best Value badge ── */
        #comparison_table-widget-3118679 .tgai-ct-badge {
            display: inline-block;
            background: #e67e22;
            color: #fff;
            padding: 3px 10px;
            border-radius: 20px;
            font-size: 0.72rem;
            font-weight: 700;
            letter-spacing: 0.01em;
        }
        /* ── Highlighted row (key differentiator) ── */
        #comparison_table-widget-3118679 .tgai-ct-row--highlight td {
            background-color: #2c5aa00f !important;
            font-weight: 600;
        }
        #comparison_table-widget-3118679 .tgai-ct-row--highlight .tgai-ct-row-label {
            background-color: #eef2ff !important;
            border-right: 3px solid #e67e22 !important;
        }
        /* ── Responsive: Mobile — Horizontal Scroll ── */
        @media screen and (max-width: 768px) {
            /* Keep table as a real table; just scroll horizontally */
            #comparison_table-widget-3118679 .tgai-ct-wrapper {
                overflow-x: auto !important;
                -webkit-overflow-scrolling: touch;
                border-radius: 8px;
                margin-bottom: 1rem;
                box-shadow: 0 1px 3px rgba(0,0,0,0.06);
            }
            /* Compact header cells */
            #comparison_table-widget-3118679 .tgai-ct thead th {
                padding: 10px 12px;
                font-size: 0.78rem;
                min-width: 100px;
                white-space: nowrap;
            }
            /* Sticky label column header */
            #comparison_table-widget-3118679 .tgai-ct thead th.tgai-ct-th-label {
                min-width: 120px;
            }
            /* Compact body cells */
            #comparison_table-widget-3118679 .tgai-ct tbody td {
                padding: 9px 12px;
                font-size: 0.8rem;
                max-width: 160px;
                word-break: break-word;
            }
            /* Sticky label body cells */
            #comparison_table-widget-3118679 .tgai-ct tbody .tgai-ct-row-label {
                min-width: 120px;
                max-width: 140px;
                font-size: 0.8rem;
                white-space: normal;
            }
        }
        /* ── Small mobile ── */
        @media screen and (max-width: 480px) {
            #comparison_table-widget-3118679 .tgai-ct thead th {
                padding: 8px 10px;
                font-size: 0.73rem;
                min-width: 85px;
            }
            #comparison_table-widget-3118679 .tgai-ct tbody td {
                padding: 8px 10px;
                font-size: 0.75rem;
                max-width: 130px;
            }
        }