/* ==========================================================================
   Portal UI - Bulma integration layer - Sprint 1
   Global bridge for the real portal + lab styles
   ========================================================================== */

/* --------------------------------------------------------------------------
   Global pilot bridge for the real app
   -------------------------------------------------------------------------- */

body.app-bulma-pilot {
    --app-header-height: 68px;
    --app-footer-height: 58px;
    --app-sidebar-width: 260px;

    font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", sans-serif !important;
    background: #f5f7fb !important;
    color: #363636;
}

body.app-bulma-pilot,
body.app-bulma-pilot p,
body.app-bulma-pilot span,
body.app-bulma-pilot a,
body.app-bulma-pilot label,
body.app-bulma-pilot .btn,
body.app-bulma-pilot .form-control,
body.app-bulma-pilot .form-select,
body.app-bulma-pilot .card,
body.app-bulma-pilot .table,
body.app-bulma-pilot .badge,
body.app-bulma-pilot .alert,
body.app-bulma-pilot .nav-link,
body.app-bulma-pilot .dropdown-item,
body.app-bulma-pilot .modal-content {
    font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", sans-serif !important;
}

body.app-bulma-pilot a {
    color: #485fc7 !important;
    text-decoration: none !important;
}

body.app-bulma-pilot a:hover {
    color: #3a51bb !important;
}

body.app-bulma-pilot label,
body.app-bulma-pilot .form-label {
    font-size: 14px;
    font-weight: 600;
    color: #4a4a4a;
}

body.app-bulma-pilot .text-muted {
    color: #6b7280 !important;
}

/* --------------------------------------------------------------------------
   Header
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #app_header,
body.app-bulma-pilot .header_container {
    background: #ffffff !important;
    border-bottom: 1px solid #dbdbdb !important;
    box-shadow: var(--app-shadow-sm);
}

body.app-bulma-pilot #app_header .container-fluid {
    min-height: 68px;
    align-items: center !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

body.app-bulma-pilot .header_img {
    width: 118px !important;
    height: auto;
    margin-right: 18px !important;
}

body.app-bulma-pilot #select_account {
    min-width: 350px;
    max-width: 350px;
}

/* --------------------------------------------------------------------------
   Main shell
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .app-shell {
    min-height: calc(100vh - var(--app-footer-height));
}

body.app-bulma-pilot .app-shell-layout {
    display: flex;
    align-items: stretch;
    min-height: calc(100vh - var(--app-header-height) - var(--app-footer-height));
}

body.app-bulma-pilot .app-shell-sidebar {
    flex: 0 0 var(--app-sidebar-width);
    width: var(--app-sidebar-width);
    max-width: var(--app-sidebar-width);
    background: #ffffff !important;
    border-right: 1px solid #dbdbdb !important;
    min-width: 0;
}

body.app-bulma-pilot .app-shell-sidebar-sticky {
    top: var(--app-header-height) !important;
    min-height: calc(100vh - var(--app-header-height) - var(--app-footer-height));
    height: auto !important;
    overflow: visible !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

body.app-bulma-pilot .app-shell-sidebar-inner {
    padding: 1rem !important;
}

body.app-bulma-pilot .app-shell-main {
    flex: 1 1 auto;
    min-width: 0;
    max-width: calc(100% - var(--app-sidebar-width));
    background: transparent !important;
    padding-top: calc(var(--app-header-height) + 1.25rem) !important;
    padding-right: 1.25rem !important;
    padding-bottom: 1.25rem !important;
    padding-left: 1.25rem !important;
}

/* --------------------------------------------------------------------------
   Sidebar nav
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .jr-nav-link {
    font-size: 13px !important;
    font-weight: 600 !important;
    width: 100%;
    padding: 0.75rem 0.875rem !important;
    color: #4a4a4a !important;
    border-radius: var(--app-radius-md) !important;
    display: block;
    text-align: left;
    transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
    margin-bottom: 10px !important;
}

body.app-bulma-pilot .jr-nav-link:hover {
    background-color: rgba(72, 95, 199, 0.08) !important;
    color: #485fc7 !important;
    transform: translateY(-1px);
}

body.app-bulma-pilot .jr-main-menu-active {
    background-color: rgba(72, 95, 199, 0.12) !important;
    color: #485fc7 !important;
}

body.app-bulma-pilot .jr-main-menu-icon {
    width: 16px;
    margin-right: 10px;
    opacity: 0.92;
}

body.app-bulma-pilot .jr-main-menu-separator {
    width: 100%;
    height: 1px;
    background-color: #e5e7eb !important;
    margin-top: 0.75rem !important;
    margin-bottom: 0.9rem !important;
    margin-left: auto;
    margin-right: auto;
}

/* --------------------------------------------------------------------------
   Cards
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .card {
    border: 1px solid #dbdbdb !important;
    border-radius: var(--app-radius-lg) !important;
    box-shadow: var(--app-shadow-sm) !important;
    background: #ffffff !important;
    overflow: hidden;
}

body.app-bulma-pilot .card-header {
    background: #fafafa !important;
    border-bottom: 1px solid #dbdbdb !important;
    padding: 0.9rem 1rem !important;
    font-weight: 700 !important;
    color: #363636 !important;
}

body.app-bulma-pilot .card-body {
    padding: 1rem !important;
    background: #ffffff !important;
}

body.app-bulma-pilot .card-footer {
    padding: 1rem !important;
    background: #ffffff !important;
    border-top: 1px solid #dbdbdb !important;
}

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .btn {
    border-radius: var(--app-radius-sm) !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    transition: transform 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
}

body.app-bulma-pilot .btn:hover {
    transform: translateY(-1px);
}

body.app-bulma-pilot .btn-sm {
    border-radius: var(--app-radius-sm) !important;
}

body.app-bulma-pilot .btn-primary {
    background-color: #485fc7 !important;
    border-color: #485fc7 !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-primary:hover,
body.app-bulma-pilot .btn-primary:focus {
    background-color: #3a51bb !important;
    border-color: #3a51bb !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-secondary {
    background-color: var(--app-secondary) !important;
    border-color: var(--app-secondary) !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-secondary:hover,
body.app-bulma-pilot .btn-secondary:focus {
    background-color: var(--app-secondary-hover) !important;
    border-color: var(--app-secondary-hover) !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-success,
body.app-bulma-pilot .btn-jr-green {
    background-color: #48c78e !important;
    border-color: #48c78e !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-success:hover,
body.app-bulma-pilot .btn-success:focus,
body.app-bulma-pilot .btn-jr-green:hover,
body.app-bulma-pilot .btn-jr-green:focus {
    background-color: #3dbb82 !important;
    border-color: #3dbb82 !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-danger {
    background-color: #f14668 !important;
    border-color: #f14668 !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-danger:hover,
body.app-bulma-pilot .btn-danger:focus {
    background-color: #e03e5f !important;
    border-color: #e03e5f !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-warning {
    background-color: #ffe08a !important;
    border-color: #f5d66f !important;
    color: #363636 !important;
}

body.app-bulma-pilot .btn-info {
    background-color: #3e8ed0 !important;
    border-color: #3e8ed0 !important;
    color: #ffffff !important;
}

body.app-bulma-pilot .btn-outline-primary {
    color: #485fc7 !important;
    border-color: #485fc7 !important;
    background: #ffffff !important;
}

body.app-bulma-pilot .btn-outline-primary:hover,
body.app-bulma-pilot .btn-outline-primary:focus {
    color: #ffffff !important;
    background: #485fc7 !important;
    border-color: #485fc7 !important;
}

body.app-bulma-pilot .btn-outline-secondary {
    color: var(--app-secondary) !important;
    border-color: var(--app-secondary) !important;
    background: #ffffff !important;
}

body.app-bulma-pilot .btn-outline-secondary:hover,
body.app-bulma-pilot .btn-outline-secondary:focus {
    color: #ffffff !important;
    background: var(--app-secondary) !important;
    border-color: var(--app-secondary) !important;
}

body.app-bulma-pilot .btn-outline-danger {
    color: #f14668 !important;
    border-color: #f14668 !important;
    background: #ffffff !important;
}

body.app-bulma-pilot .btn-outline-danger:hover,
body.app-bulma-pilot .btn-outline-danger:focus {
    color: #ffffff !important;
    background: #f14668 !important;
    border-color: #f14668 !important;
}

body.app-bulma-pilot .btn-outline-dark {
    color: #363636 !important;
    border-color: #b5b5b5 !important;
    background: #ffffff !important;
}

body.app-bulma-pilot .btn-outline-dark:hover,
body.app-bulma-pilot .btn-outline-dark:focus {
    color: #ffffff !important;
    background: #363636 !important;
    border-color: #363636 !important;
}

/* --------------------------------------------------------------------------
   Forms
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .form-control,
body.app-bulma-pilot .form-select,
body.app-bulma-pilot textarea.form-control,
body.app-bulma-pilot input:not([type="checkbox"]):not([type="radio"]),
body.app-bulma-pilot select {
    border: 1px solid #dbdbdb !important;
    border-radius: var(--app-radius-md) !important;
    background-color: #ffffff !important;
    color: #363636 !important;
    box-shadow: none !important;
    min-height: 38px;
}

body.app-bulma-pilot .form-control:focus,
body.app-bulma-pilot .form-select:focus,
body.app-bulma-pilot textarea.form-control:focus,
body.app-bulma-pilot input:not([type="checkbox"]):not([type="radio"]):focus,
body.app-bulma-pilot select:focus {
    border-color: #485fc7 !important;
    box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.18) !important;
}

body.app-bulma-pilot .form-check-input {
    border-radius: 4px !important;
    box-shadow: none !important;
}

body.app-bulma-pilot .form-check-input:focus {
    box-shadow: 0 0 0 0.125em rgba(72, 95, 199, 0.18) !important;
}

/* --------------------------------------------------------------------------
   Tables
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .table {
    margin-bottom: 0;
    background: transparent !important;
}

body.app-bulma-pilot .table > :not(caption) > * > * {
    padding: 0.8rem 1rem;
    background: transparent !important;
    border-bottom: 1px solid #e5e7eb;
    vertical-align: middle;
}

body.app-bulma-pilot .table > thead {
    background: #fafafa !important;
}

body.app-bulma-pilot .table > thead > tr > th {
    color: #363636 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-bottom: 1px solid #dbdbdb !important;
    white-space: nowrap;
}

body.app-bulma-pilot .table-hover > tbody > tr:hover > * {
    background-color: rgba(72, 95, 199, 0.045) !important;
}

/* --------------------------------------------------------------------------
   Badges / alerts / tabs / modals
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .badge {
    border-radius: 999px !important;
    padding: 0.45em 0.75em !important;
    font-weight: 700 !important;
}

body.app-bulma-pilot .bg-secondary {
    background-color: var(--app-secondary) !important;
}

body.app-bulma-pilot .alert {
    border-radius: var(--app-radius-md) !important;
    border: 1px solid #dbdbdb !important;
    box-shadow: none !important;
}

body.app-bulma-pilot .nav-tabs {
    border-bottom: 1px solid #dbdbdb !important;
}

body.app-bulma-pilot .nav-tabs .nav-link {
    border: none !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    color: #6b7280 !important;
    font-weight: 600 !important;
    background: transparent !important;
}

body.app-bulma-pilot .nav-tabs .nav-link:hover,
body.app-bulma-pilot .nav-tabs .nav-link:focus {
    color: #485fc7 !important;
    border-bottom-color: rgba(72, 95, 199, 0.35) !important;
}

body.app-bulma-pilot .nav-tabs .nav-link.active {
    color: #485fc7 !important;
    border-bottom-color: #485fc7 !important;
    background: transparent !important;
}

body.app-bulma-pilot .modal-content {
    border: 1px solid #dbdbdb !important;
    border-radius: var(--app-radius-lg) !important;
    box-shadow: var(--app-shadow-md) !important;
}

body.app-bulma-pilot .modal-header {
    background: #fafafa !important;
    border-bottom: 1px solid #dbdbdb !important;
}

body.app-bulma-pilot .modal-footer {
    border-top: 1px solid #dbdbdb !important;
}

/* --------------------------------------------------------------------------
   Bootstrap helpers that still appear in the app
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .background-light {
    background-color: #f3f4f6 !important;
}

body.app-bulma-pilot .background-light-2 {
    background-color: #fafafa !important;
}

/* ==========================================================================
   Existing Bulma pilot / lab styles
   ========================================================================== */

.app-bulma-pilot {
    min-width: 0;
}

/* --------------------------------------------------------------------------
   Page header / top bar
   -------------------------------------------------------------------------- */

.app-bulma-pilot .app-page-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.app-bulma-pilot .app-page-header-left,
.app-bulma-pilot .app-page-header-right {
    min-width: 0;
}

.app-bulma-pilot .app-page-title-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    min-width: 0;
}

.app-bulma-pilot .app-page-title-row .title,
.app-bulma-pilot .app-page-title-row .subtitle,
.app-bulma-pilot .app-page-title-row h1,
.app-bulma-pilot .app-page-title-row h2,
.app-bulma-pilot .app-page-title-row h3,
.app-bulma-pilot .app-page-title-row h4 {
    margin-bottom: 0;
}

/* --------------------------------------------------------------------------
   Module page header normalization
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .app-page-header {
    width: 100%;
}

body.app-bulma-pilot .app-page-header .app-page-title-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    min-width: 0;
}

body.app-bulma-pilot .app-page-header .app-module-title {
    margin: 0 !important;
    font-family: inherit !important;
    font-size: 1.5rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #363636 !important;
    white-space: nowrap;
}

body.app-bulma-pilot .app-page-header .app-module-title strong {
    font-weight: inherit;
}

body.app-bulma-pilot .dashboard-inner-container {
    width: 100%;
    min-width: 0;
}

.app-bulma-pilot .app-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* --------------------------------------------------------------------------
   Generic boxes / cards
   -------------------------------------------------------------------------- */

.app-bulma-pilot .box,
.app-bulma-pilot .card,
.app-bulma-pilot .message,
.app-bulma-pilot .notification,
.app-bulma-pilot .dropdown-content,
.app-bulma-pilot .modal-card,
.app-bulma-pilot .input,
.app-bulma-pilot .textarea,
.app-bulma-pilot .select select {
    border-radius: var(--app-radius-md);
}

.app-bulma-pilot .card {
    overflow: hidden;
    box-shadow: var(--app-shadow-sm);
}

.app-bulma-pilot .app-card-lg,
.app-bulma-pilot .app-box-lg,
.app-bulma-pilot .app-panel-lg {
    border-radius: var(--app-radius-lg);
}

.app-bulma-pilot .app-surface {
    background: var(--app-surface-1);
    border: 1px solid var(--app-border-color);
    border-radius: var(--app-radius-md);
    box-shadow: var(--app-shadow-sm);
}

.app-bulma-pilot .app-surface-lg {
    background: var(--app-surface-1);
    border: 1px solid var(--app-border-color);
    border-radius: var(--app-radius-lg);
    box-shadow: var(--app-shadow-md);
}

/* --------------------------------------------------------------------------
   Buttons / pills / small controls
   -------------------------------------------------------------------------- */

.app-bulma-pilot .button,
.app-bulma-pilot .tag,
.app-bulma-pilot .pagination-link,
.app-bulma-pilot .pagination-next,
.app-bulma-pilot .pagination-previous,
.app-bulma-pilot .file-cta,
.app-bulma-pilot .delete {
    border-radius: var(--app-radius-sm);
}

.app-bulma-pilot .button.is-secondary {
    background-color: var(--app-secondary);
    border-color: transparent;
    color: #ffffff;
}

.app-bulma-pilot .button.is-secondary:hover,
.app-bulma-pilot .button.is-secondary:focus {
    background-color: var(--app-secondary-hover);
    border-color: transparent;
    color: #ffffff;
}

.app-bulma-pilot .tag.is-secondary,
.app-bulma-pilot .notification.is-secondary {
    background-color: var(--app-secondary);
    color: #ffffff;
}

.app-bulma-pilot .button.is-secondary-light,
.app-bulma-pilot .tag.is-secondary-light,
.app-bulma-pilot .notification.is-secondary-light {
    background-color: var(--app-secondary-soft);
    border-color: var(--app-secondary-soft-border);
    color: var(--app-secondary-soft-text);
}

/* --------------------------------------------------------------------------
   Filters / section helpers
   -------------------------------------------------------------------------- */

.app-bulma-pilot .app-filters-box,
.app-bulma-pilot .app-content-box {
    background: var(--app-surface-1);
    border: 1px solid var(--app-border-color);
    border-radius: var(--app-radius-md);
    box-shadow: var(--app-shadow-sm);
}

.app-bulma-pilot .app-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
}

.app-bulma-pilot .app-inline-select {
    min-width: 220px;
    max-width: 320px;
}

.app-bulma-pilot .app-scroll-region {
    position: relative;
    overflow: auto;
}

/* --------------------------------------------------------------------------
   Minor visual normalization
   -------------------------------------------------------------------------- */

.app-bulma-pilot .field:last-child,
.app-bulma-pilot .control:last-child,
.app-bulma-pilot .buttons:last-child {
    margin-bottom: 0;
}

.app-bulma-pilot .card-header,
.app-bulma-pilot .card-content,
.app-bulma-pilot .card-footer {
    background: var(--app-surface-1);
}

/* --------------------------------------------------------------------------
   Idea Pool lab
   -------------------------------------------------------------------------- */

.app-idea-pool-lab .app-page-header-left {
    flex: 1 1 auto;
}

.app-idea-pool-lab .app-page-header-right {
    flex: 0 0 auto;
}

.app-idea-pool-lab .app-account-select {
    min-width: 240px;
    max-width: 340px;
}

.app-idea-pool-lab .app-table-card-body {
    height: 560px;
    overflow-y: auto;
    overflow-x: auto;
    padding: 0;
    position: relative;
    isolation: isolate;
    background: #ffffff;
}

.app-idea-pool-lab .app-table-card-body .table-container {
    overflow: visible;
    margin-bottom: 0;
    padding: 0 14px 0 0;
}

.app-idea-pool-lab .app-table-card-body table {
    table-layout: fixed;
    width: 100%;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

.app-idea-pool-lab .app-table-card-body thead th,
.app-idea-pool-lab .app-table-card-body tbody td {
    font-size: 14px;
    vertical-align: middle;
}

.app-idea-pool-lab .app-table-card-body thead th {
    position: sticky;
    top: 0;
    z-index: 20;
    background: #ffffff;
    background-clip: padding-box;
    box-shadow: inset 0 -1px 0 #dbdbdb;
}

.app-idea-pool-lab .app-table-card-body thead,
.app-idea-pool-lab .app-table-card-body thead tr {
    background: #ffffff;
}

.app-idea-pool-lab .app-table-card-body tbody {
    position: relative;
    z-index: 1;
}

.app-idea-pool-lab .app-table-card-body thead th:first-child,
.app-idea-pool-lab .app-table-card-body tbody td:first-child {
    width: 30px;
    text-align: center;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(2),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(2) {
    width: 45%;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(3),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(3) {
    width: 100px;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(4),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(4) {
    width: 12%;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(5),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(5) {
    width: 90px;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(6),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(6) {
    width: 90px;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(7),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(7) {
    width: 60px;
}

.app-idea-pool-lab .app-table-card-body thead th:nth-child(8),
.app-idea-pool-lab .app-table-card-body tbody td:nth-child(8) {
    width: 200px;
}

.app-idea-pool-lab .app-table-card-body thead th:last-child,
.app-idea-pool-lab .app-table-card-body tbody td:last-child {
    padding-right: 18px;
}

.app-idea-pool-lab .app-bulk-footer {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.app-idea-pool-lab .app-bulk-selection-text {
    color: #6b7280;
    font-size: 0.875rem;
}

.app-idea-pool-lab .app-idea-title {
    font-weight: 600;
}

.app-idea-pool-lab .app-idea-summary {
    font-size: 0.875rem;
    color: #6b7280;
    margin-top: 0.35rem;
    white-space: normal;
}

.app-idea-pool-lab .app-actions-inline {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.app-idea-pool-lab .app-lab-note {
    font-size: 0.875rem;
    color: #6b7280;
}

.app-idea-pool-lab .app-filter-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

/* --------------------------------------------------------------------------
   Idea Pool real module inside Bootstrap shell
   -------------------------------------------------------------------------- */

#ideaPoolModuleRoot .idea-pool-top-left {
    min-width: 0;
}

#ideaPoolModuleRoot .idea-pool-heading-inline {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: nowrap;
    min-width: 0;
    margin-bottom: 0;
}

#ideaPoolModuleRoot .idea-pool-heading-inline h4 {
    margin-bottom: 0;
    white-space: nowrap;
    font-weight: 700;
}

#ideaPoolModuleRoot .idea-pool-heading-select {
    width: 370px;
    min-width: 240px;
    max-width: 370px;
    font-weight: 400;
}

#ideaPoolModuleRoot .idea-pool-heading-select select {
    width: 100%;
}

#ideaPoolModuleRoot .idea-pool-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

#ideaPoolModuleRoot .idea-pool-filter-card .card-header,
#ideaPoolModuleRoot .idea-pool-ideas-card .card-header {
    font-weight: 600;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody {
    height: 560px;
    overflow-y: auto;
    overflow-x: auto;
    padding: 0;
    position: relative;
    isolation: isolate;
    background: #ffffff;
}

#ideaPoolModuleRoot #ideaPoolTableWrap .table-responsive {
    overflow: visible;
    margin-bottom: 0;
    padding: 0 14px 0 0;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table {
    table-layout: fixed;
    width: 100%;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .fw-semibold,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .small,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .text-muted,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .form-select,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .btn {
    font-size: 14px !important;
    vertical-align: middle;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th {
    position: sticky;
    top: 0;
    z-index: 20;
    background: #ffffff;
    background-clip: padding-box;
    vertical-align: bottom;
    box-shadow: inset 0 -1px 0 #dbdbdb;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody thead,
#ideaPoolModuleRoot #ideaPoolTableCardBody thead tr {
    background: #ffffff;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody tbody {
    position: relative;
    z-index: 1;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child {
    vertical-align: bottom;
    padding-bottom: 0.65rem;
    text-align: center;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child input[type="checkbox"] {
    vertical-align: bottom;
    position: relative;
    top: 2px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:last-child,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:last-child {
    padding-right: 18px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child,
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:first-child {
    width: 30px;
    text-align: center;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(2),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(2) {
    width: 45%;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(3),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(3) {
    width: 120px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(4),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(4) {
    width: 12%;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(5),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(5) {
    width: 90px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(6),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(6) {
    width: 90px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(7),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(7) {
    width: 60px;
}

#ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(8),
#ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(8) {
    width: 200px;
}

#ideaPoolModuleRoot #ideaPoolBulkActionsFooter .idea-pool-bulk-actions-inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

#ideaPoolModuleRoot #ideaPoolBulkSelectionText {
    margin-bottom: 0;
}

/* --------------------------------------------------------------------------
   Real shell helpers introduced in index.php + header.php
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .app-shell,
body.app-bulma-pilot .app-shell-layout {
    background: transparent !important;
}

body.app-bulma-pilot .app-shell-nav {
    text-align: left !important;
}

body.app-bulma-pilot .app-topbar {
    min-height: var(--app-header-height);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    padding-top: 0.65rem !important;
    padding-bottom: 0.65rem !important;
}

body.app-bulma-pilot .app-topbar-left,
body.app-bulma-pilot .app-topbar-right {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
}

body.app-bulma-pilot .app-topbar-left {
    flex: 1 1 auto;
}

body.app-bulma-pilot .app-topbar-right {
    flex: 0 0 auto;
    justify-content: flex-end;
}

body.app-bulma-pilot .app-topbar-logo-link {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
}

body.app-bulma-pilot .app-topbar-account-wrap {
    min-width: 0;
}

body.app-bulma-pilot .app-topbar-account-form {
    margin: 0;
    display: flex;
    align-items: center;
}

body.app-bulma-pilot .app-topbar-account-select {
    min-width: 350px;
    max-width: 350px;
}

body.app-bulma-pilot .app-topbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot .app-topbar-icon-btn {
    min-width: 38px;
    height: 38px;
    padding: 0.375rem 0.6rem !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

body.app-bulma-pilot .app-footer {
    border-top: 1px solid #dbdbdb;
    background: #f5f7fb;
    margin-top: 0 !important;
}

body.app-bulma-pilot .app-footer-inner {
    padding: 0.85rem 1rem;
}

body.app-bulma-pilot .jr-footer-text {
    margin: 0;
}

@media (max-width: 991.98px) {
    body.app-bulma-pilot .app-shell {
        min-height: auto;
    }

    body.app-bulma-pilot .app-shell-layout {
        display: block;
        min-height: auto;
    }

    body.app-bulma-pilot .app-shell-sidebar {
        width: 100%;
        max-width: 100%;
        flex: none;
        border-right: 0 !important;
        border-bottom: 1px solid #dbdbdb !important;
    }

    body.app-bulma-pilot .app-shell-sidebar-sticky {
        top: 0 !important;
        min-height: auto;
        padding-top: 0.75rem !important;
        padding-bottom: 0.75rem !important;
    }

    body.app-bulma-pilot .app-shell-main {
        max-width: 100%;
        padding-top: 1rem !important;
    }

    body.app-bulma-pilot .app-topbar {
        align-items: flex-start;
    }

    body.app-bulma-pilot .app-topbar-left,
    body.app-bulma-pilot .app-topbar-right {
        width: 100%;
    }

    body.app-bulma-pilot .app-topbar-right {
        justify-content: flex-start;
    }

    body.app-bulma-pilot .app-topbar-account-select {
        min-width: 280px;
        max-width: 100%;
        width: 100%;
    }

    body.app-bulma-pilot .app-topbar-account-form,
    body.app-bulma-pilot .app-topbar-account-wrap {
        width: 100%;
    }
}

/* --------------------------------------------------------------------------
   Real screen pass 1: Idea Pool
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot {
    width: 100%;
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-module-page-header {
    margin-bottom: 1rem;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-heading-inline {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-top-left {
    min-width: 0;
    flex: 1 1 auto;
}

body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-heading-select {
    width: 370px;
    min-width: 260px;
    max-width: 370px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-module-card {
    border-radius: var(--app-radius-lg) !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-filter-card .card-header,
body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-ideas-card .card-header {
    font-weight: 700 !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-filter-grid > div {
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-filter-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolCreateFormWrap:empty {
    display: none;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody {
    height: 560px;
    overflow-y: auto;
    overflow-x: auto;
    padding: 0 !important;
    position: relative;
    isolation: isolate;
    background: #ffffff;
    z-index: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableWrap .table-responsive {
    overflow: visible;
    margin-bottom: 0;
    padding: 0 14px 0 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table {
    table-layout: fixed;
    width: 100%;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody thead,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody thead tr {
    background: #fafafa;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody tbody {
    position: relative;
    z-index: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody tbody tr,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody tbody td {
    position: relative;
    z-index: 0;
    background: #ffffff;
    background-clip: padding-box;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .fw-semibold,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .small,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .text-muted,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .form-select,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td .btn {
    font-size: 14px !important;
    vertical-align: middle;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th {
    position: sticky;
    top: 0;
    z-index: 40;
    background: #fafafa !important;
    background-clip: padding-box;
    vertical-align: bottom;
    box-shadow: inset 0 -1px 0 #dbdbdb, 0 1px 0 #dbdbdb;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #fafafa;
    z-index: -1;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child {
    vertical-align: bottom;
    padding-bottom: 0.65rem;
    text-align: center;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child input[type="checkbox"] {
    vertical-align: bottom;
    position: relative;
    top: 2px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:last-child,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:last-child {
    padding-right: 18px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:first-child,
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:first-child {
    width: 30px;
    text-align: center;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(2),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(2) {
    width: 45%;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(3),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(3) {
    width: 100px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(4),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(4) {
    width: 12%;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(5),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(5) {
    width: 90px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(6),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(6) {
    width: 90px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(7),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(7) {
    width: 60px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table thead th:nth-child(8),
body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolTableCardBody table tbody td:nth-child(8) {
    width: 200px;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolBulkActionsFooter .idea-pool-bulk-actions-inner {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    flex-wrap: wrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ideaPoolBulkSelectionText {
    margin-bottom: 0;
}

@media (max-width: 991.98px) {
    body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-heading-select {
        width: 100%;
        min-width: 220px;
        max-width: 100%;
    }

    body.app-bulma-pilot #ideaPoolModuleRoot .idea-pool-actions {
        justify-content: flex-start;
    }
}

/* --------------------------------------------------------------------------
   Idea Pool table renderer - internal content pass
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-pool-table {
    width: 100%;
    table-layout: fixed;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-pool-table tbody tr:hover > td {
    background-color: rgba(72, 95, 199, 0.04) !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-col-select,
body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-select-cell {
    text-align: center;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-cell {
    vertical-align: middle;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-row-title {
    font-size: 15px;
    line-height: 1.35;
    font-weight: 600;
    color: #2f3540;
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-row-summary {
    margin-top: 0.35rem;
    font-size: 0.875rem;
    line-height: 1.45;
    color: #6b7280;
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-meta-text {
    display: inline-block;
    font-size: 0.925rem;
    color: #4a4a4a;
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-status-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45rem;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-status-select {
    min-width: 116px;
    max-width: 116px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-status-chip,
body.app-bulma-pilot #ideaPoolModuleRoot .app-source-pill,
body.app-bulma-pilot #ideaPoolModuleRoot .app-linked-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-status-chip--inbox {
    background: #e8f1fb;
    color: #2f6fb3;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-status-chip--ready {
    background: #e7f7ef;
    color: #20784f;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-status-chip--on-hold {
    background: #fff4d6;
    color: #8a6d1f;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-status-chip--archived {
    background: #eef1f4;
    color: #5f6b76;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-source-pill {
    background: #eef2ff;
    color: #485fc7;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-linked-pill {
    min-width: 34px;
    background: #f3f4f6;
    color: #374151;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-row-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-action-btn {
    white-space: nowrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-empty-state {
    border-radius: var(--app-radius-md) !important;
}

@media (max-width: 1199.98px) {
    body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-row-actions {
        justify-content: flex-start;
    }
}

/* --------------------------------------------------------------------------
   Idea Pool - create form pass
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form-card {
    border-radius: var(--app-radius-lg) !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-card-header-left,
body.app-bulma-pilot #ideaPoolModuleRoot .app-form-card-header-right {
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-intro-note {
    margin-bottom: 1rem;
    border-radius: var(--app-radius-md) !important;
    color: #4a4a4a;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form-grid > div {
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-label {
    margin-bottom: 0.45rem;
    font-size: 14px;
    font-weight: 600;
    color: #3f3f46;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-text {
    margin-top: 0.35rem;
    font-size: 12px;
    color: #6b7280;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-control,
body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-select {
    background: #ffffff !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-textarea {
    resize: vertical;
    line-height: 1.45;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-textarea-summary {
    min-height: 108px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-textarea-notes {
    min-height: 160px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

@media (max-width: 767.98px) {
    body.app-bulma-pilot #ideaPoolModuleRoot .app-form-card-header {
        align-items: flex-start;
    }

    body.app-bulma-pilot #ideaPoolModuleRoot .app-form-card-header-right {
        width: 100%;
    }

    body.app-bulma-pilot #ideaPoolModuleRoot .app-form-actions {
        width: 100%;
    }
}

/* --------------------------------------------------------------------------
   Idea Pool - create form adjustments
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-intro-note--warning {
    margin-bottom: 1rem;
    border-radius: var(--app-radius-md) !important;
    background: #fff8db !important;
    border: 1px solid #f0d98c !important;
    color: #6f5a16 !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 2.5rem !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7.5l5 5 5-5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.75rem center !important;
    background-size: 16px 16px !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-form .form-select::-ms-expand {
    display: none;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-actions .btn {
    min-width: 120px;
}

/* --------------------------------------------------------------------------
   Idea Pool - create publication form pass
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-intro-note--danger {
    margin-bottom: 1rem;
    border-radius: var(--app-radius-md) !important;
    background: #fdecef !important;
    border: 1px solid #f5b8c3 !important;
    color: #a53a52 !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-context-card {
    border-radius: var(--app-radius-lg) !important;
    overflow: hidden;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-context-meta-item {
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-context-meta-label {
    margin-bottom: 0.25rem;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #6b7280;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-context-meta-value {
    font-size: 14px;
    line-height: 1.45;
    color: #374151;
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-idea-textarea-llm {
    min-height: 260px;
    resize: vertical;
    line-height: 1.45;
}

/* --------------------------------------------------------------------------
   Idea Pool - import / AI forms pass
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-rules-list {
    padding-left: 1.1rem;
    margin-bottom: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-rules-list li {
    margin-bottom: 0.45rem;
    color: #4b5563;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-rules-list li:last-child {
    margin-bottom: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-code-block-wrap {
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-form-code-block {
    display: block;
    width: 100%;
    padding: 0.85rem 1rem;
    border: 1px solid #dbdbdb;
    border-radius: var(--app-radius-md);
    background: #f8fafc;
    color: #374151;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 13px;
    line-height: 1.45;
    overflow-x: auto;
    white-space: nowrap;
}

body.app-bulma-pilot #ideaPoolModuleRoot #ipLlmServiceFieldWrap {
    min-width: 0;
}

/* --------------------------------------------------------------------------
   Idea Pool - preview batches pass
   -------------------------------------------------------------------------- */

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stats-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.75rem;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-card {
    padding: 0.9rem 1rem;
    border: 1px solid #dbdbdb;
    border-radius: var(--app-radius-md);
    background: #ffffff;
    box-shadow: var(--app-shadow-sm);
    min-width: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-card--success {
    background: #eefaf4;
    border-color: #cbeedc;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-card--warning {
    background: #fff8e1;
    border-color: #f3e1a5;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-card--danger {
    background: #fdf0f3;
    border-color: #f3c4cf;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-card--primary {
    background: #eef2ff;
    border-color: #cfd8ff;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-label {
    margin-bottom: 0.35rem;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #6b7280;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stat-value {
    font-size: 1.4rem;
    line-height: 1.1;
    font-weight: 700;
    color: #2f3540;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table-wrap {
    border: 1px solid #dbdbdb;
    border-radius: var(--app-radius-lg);
    overflow: hidden;
    background: #ffffff;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table {
    table-layout: fixed;
    width: 100%;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table thead th {
    background: #fafafa !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    vertical-align: middle;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table tbody td {
    font-size: 14px;
    vertical-align: top;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table tbody tr:hover > td {
    background-color: rgba(72, 95, 199, 0.04) !important;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-select-cell,
body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-col-select {
    text-align: center;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-title-cell {
    font-weight: 600;
    color: #2f3540;
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-issues-cell {
    word-break: break-word;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-issue {
    margin-bottom: 0.35rem;
    font-size: 13px;
    line-height: 1.4;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-issue:last-child {
    margin-bottom: 0;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-issue--error {
    color: #c03954;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-issue--warning {
    color: #9a7b1f;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-status-chip--error {
    background: #fdecef;
    color: #b33650;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-select,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(1) {
    width: 54px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-row,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(2) {
    width: 70px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-status,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(3) {
    width: 110px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-title,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(4) {
    width: 24%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-service,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(5) {
    width: 12%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-location,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(6) {
    width: 12%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-channel,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(7) {
    width: 12%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-language,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(8) {
    width: 90px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-tone,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(9) {
    width: 100px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table .app-preview-col-issues,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table td:nth-child(10) {
    width: 28%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-select,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(1) {
    width: 54px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-row,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(2) {
    width: 70px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-status,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(3) {
    width: 110px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-title,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(4) {
    width: 34%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-service,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(5) {
    width: 18%;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-language,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(6) {
    width: 100px;
}

body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm .app-preview-col-issues,
body.app-bulma-pilot #ideaPoolModuleRoot .app-import-preview-table--llm td:nth-child(7) {
    width: 30%;
}

@media (max-width: 1199.98px) {
    body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    body.app-bulma-pilot #ideaPoolModuleRoot .app-preview-stats-grid {
        grid-template-columns: 1fr;
    }
}

/* --------------------------------------------------------------------------
   Global form conventions extracted from Idea Pool
   -------------------------------------------------------------------------- */

body.app-bulma-pilot .app-form-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot .app-form-card-header-left,
body.app-bulma-pilot .app-form-card-header-right {
    min-width: 0;
}

body.app-bulma-pilot .app-form-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

body.app-bulma-pilot .app-form-actions .btn {
    min-width: 120px;
}

body.app-bulma-pilot .app-form-intro-note--warning {
    margin-bottom: 1rem;
    border-radius: var(--app-radius-md) !important;
    background: #fff8db !important;
    border: 1px solid #f0d98c !important;
    color: #6f5a16 !important;
}

body.app-bulma-pilot .app-form-intro-note--danger {
    margin-bottom: 1rem;
    border-radius: var(--app-radius-md) !important;
    background: #fdecef !important;
    border: 1px solid #f5b8c3 !important;
    color: #a53a52 !important;
}

body.app-bulma-pilot .form-select,
body.app-bulma-pilot select.form-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 2.5rem !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%236b7280' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7.5l5 5 5-5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 0.75rem center !important;
    background-size: 16px 16px !important;
}

body.app-bulma-pilot .form-select::-ms-expand,
body.app-bulma-pilot select.form-select::-ms-expand {
    display: none;
}

body.app-bulma-pilot .app-form-actions .btn-primary,
body.app-bulma-pilot .app-form-actions .btn-success,
body.app-bulma-pilot .app-form-actions .btn-jr-green {
    min-width: 120px;
}

body.app-bulma-pilot .app-form-actions .btn-danger,
body.app-bulma-pilot .app-form-actions .btn-outline-danger {
    min-width: 120px;
}

@media (max-width: 767.98px) {
    body.app-bulma-pilot .app-form-card-header {
        align-items: flex-start;
    }

    body.app-bulma-pilot .app-form-card-header-right,
    body.app-bulma-pilot .app-form-actions {
        width: 100%;
    }
}

/* --------------------------------------------------------------------------
   Screen: Users Permissions - users_permisions.php
   -------------------------------------------------------------------------- */

#usersPermissionsModuleRoot {
            width: 100%;
            min-width: 0;
        }

#usersPermissionsModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}

#usersPermissionsModuleRoot .users-permissions-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

#usersPermissionsModuleRoot .users-permissions-card {
    border-radius: 1rem;
}


/* --------------------------------------------------------------------------
   Screen: Add SEO diary entry - add_seo_diary_entry.php
   -------------------------------------------------------------------------- */


#addSeoDiaryEntryModuleRoot {
    width: 100%;
    min-width: 0;
}
#addSeoDiaryEntryModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-layout {
    max-width: 980px;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #eef6ff;
    border: 1px solid #b9d6fb;
    color: #234a75;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-form-card {
    border-radius: 1rem;
}
#addSeoDiaryEntryModuleRoot .seo-diary-editor-shell {
    border: 1px solid #d5dbe3;
    border-radius: 0.75rem;
    overflow: hidden;
    background: #ffffff;
}
#addSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-toolbar.ql-snow {
    border: 0;
    border-bottom: 1px solid #e5e7eb;
    background: #f8fafc;
}
#addSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-container.ql-snow {
    border: 0;
    min-height: 220px;
}
#addSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-editor {
    min-height: 220px;
    font-size: 14px;
    line-height: 1.6;
    color: #374151;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-form-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}
#addSeoDiaryEntryModuleRoot .seo-diary-entry-form-actions .btn {
    min-width: 150px;
}


/* --------------------------------------------------------------------------
   Screen: Edit SEO diary entry - edit_seo_diary_entry.php
   -------------------------------------------------------------------------- */


#editSeoDiaryEntryModuleRoot {
    width: 100%;
    min-width: 0;
}
#editSeoDiaryEntryModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-layout {
    max-width: 980px;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #eef6ff;
    border: 1px solid #b9d6fb;
    color: #234a75;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-form-card {
    border-radius: 1rem;
}
#editSeoDiaryEntryModuleRoot .seo-diary-editor-shell {
    border: 1px solid #d5dbe3;
    border-radius: 0.75rem;
    overflow: hidden;
    background: #ffffff;
}
#editSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-toolbar.ql-snow {
    border: 0;
    border-bottom: 1px solid #e5e7eb;
    background: #f8fafc;
}
#editSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-container.ql-snow {
    border: 0;
    min-height: 220px;
}
#editSeoDiaryEntryModuleRoot .seo-diary-editor-shell .ql-editor {
    min-height: 220px;
    font-size: 14px;
    line-height: 1.6;
    color: #374151;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-form-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}
#editSeoDiaryEntryModuleRoot .seo-diary-entry-form-actions .btn {
    min-width: 150px;
}


/* --------------------------------------------------------------------------
   Screen: Accounts - functions.php -> loadAllAccounts()
   -------------------------------------------------------------------------- */


#accountsListModuleRoot {
    width: 100%;
    min-width: 0;
}
#accountsListModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#accountsListModuleRoot .accounts-header-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}
#accountsListModuleRoot .accounts-filter-select {
    width: 170px;
    min-width: 170px;
}
#accountsListModuleRoot .accounts-table-wrap {
    overflow-x: auto;
}
#accountsListModuleRoot .accounts-table {
    margin-bottom: 0;
}
#accountsListModuleRoot .accounts-table th,
#accountsListModuleRoot .accounts-table td {
    vertical-align: middle;
}
#accountsListModuleRoot .accounts-status-stack {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}
#accountsListModuleRoot .accounts-status-trigger,
#accountsListModuleRoot .accounts-situation-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #d5dbe3;
    border-radius: 999px;
    background: #ffffff;
    cursor: pointer;
}
#accountsListModuleRoot .accounts-note-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #d5dbe3;
    border-radius: 999px;
    background: #ffffff;
    color: #4b5563;
    cursor: pointer;
    position: relative;
}
#accountsListModuleRoot .accounts-note-trigger.has-alert::after {
    content: '';
    position: absolute;
    top: 6px;
    right: 6px;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: #dc3545;
}
#accountsListModuleRoot .accounts-name-cell {
    min-width: 220px;
}
#accountsListModuleRoot .accounts-name-link {
    color: #1f2937;
    font-weight: 600;
    text-decoration: none;
}
#accountsListModuleRoot .accounts-name-link:hover {
    text-decoration: underline;
}
#accountsListModuleRoot .accounts-content-pills {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}
#accountsListModuleRoot .accounts-content-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid #dbe5ef;
    font-size: 13px;
    line-height: 1;
    white-space: nowrap;
}
#accountsListModuleRoot .accounts-assets {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}
#accountsListModuleRoot .accounts-asset-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #d5dbe3;
    border-radius: 999px;
    background: #ffffff;
    color: #374151;
    text-decoration: none;
}
#accountsListModuleRoot .accounts-asset-btn img {
    width: 18px;
    height: 18px;
    object-fit: contain;
}
#accountsListModuleRoot .accounts-asset-btn.is-disabled {
    opacity: 0.45;
    cursor: default;
    pointer-events: none;
}
#accountsListModuleRoot .accounts-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}
#accountsListModuleRoot .accounts-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #d5dbe3;
    border-radius: 999px;
    background: #ffffff;
    text-decoration: none;
    color: #374151;
}
#accountsListModuleRoot .accounts-total-row th,
#accountsListModuleRoot .accounts-total-row td {
    background: #f8fafc;
    font-weight: 600;
}
#accountsListModuleRoot .accounts-empty-state {
    padding: 2rem 1.5rem;
    text-align: center;
    color: #6b7280;
}
#accountsListModuleRoot .accounts-empty-state i {
    font-size: 2.5rem;
    display: block;
    margin-bottom: 0.75rem;
    color: #9ca3af;
}
@media (max-width: 991.98px) {
    #accountsListModuleRoot .accounts-filter-select {
        width: 100%;
        min-width: 220px;
    }
    #accountsListModuleRoot .accounts-header-actions {
        justify-content: flex-start;
    }
}

/* --------------------------------------------------------------------------
   Screen: Create plan - create_plan.php
   -------------------------------------------------------------------------- */


#createPlanModuleRoot {
    width: 100%;
    min-width: 0;
}
#createPlanModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#createPlanModuleRoot .create-plan-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
#createPlanModuleRoot .create-plan-layout {
    max-width: 920px;
}
#createPlanModuleRoot .create-plan-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #eef6ff;
    border: 1px solid #b9d6fb;
    color: #234a75;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}
#createPlanModuleRoot .create-plan-card {
    border-radius: 1rem;
}
#createPlanModuleRoot .create-plan-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}
#createPlanModuleRoot .create-plan-field-addon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    padding: 0 0.75rem;
    border: 1px solid #d5dbe3;
    border-right: 0;
    border-radius: 0.75rem 0 0 0.75rem;
    background: #f8fafc;
    color: #4b5563;
    font-weight: 600;
}
#createPlanModuleRoot .create-plan-input-with-addon {
    display: flex;
    align-items: stretch;
}
#createPlanModuleRoot .create-plan-input-with-addon .form-control {
    border-radius: 0 0.75rem 0.75rem 0;
}
#createPlanModuleRoot .create-plan-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}
#createPlanModuleRoot .create-plan-actions .btn {
    min-width: 150px;
}
@media (max-width: 767.98px) {
    #createPlanModuleRoot .create-plan-posts-grid {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   GeoTAG Creator - geotag.php
========================================================= */

#geotagModuleRoot {
    width: 100%;
    min-width: 0;
}

#geotagModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}

#geotagModuleRoot .geotag-layout {
    max-width: 1100px;
}

#geotagModuleRoot .geotag-card {
    border-radius: 1rem;
}

#geotagModuleRoot .geotag-intro-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #eef6ff;
    border: 1px solid #b9d6fb;
    color: #234a75;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}

#geotagModuleRoot .geotag-multiselect {
    min-height: 150px;
}

#geotagModuleRoot .geotag-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

#geotagModuleRoot .geotag-command-output {
    padding: 1rem;
    border: 1px solid #d5dbe3;
    border-radius: 0.75rem;
    background: #f8fafc;
    white-space: pre-wrap;
    word-break: break-word;
    font-size: 13px;
    line-height: 1.5;
    color: #1f2937;
}

#geotagModuleRoot .element-hidden {
    display: none !important;
}

#geotagModuleRoot .element-visible {
    display: block !important;
}

/* =========================================================
   Create Account - create_account.php
========================================================= */

#createAccountModuleRoot {
    width: 100%;
    min-width: 0;
}

#createAccountModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}

#createAccountModuleRoot .create-account-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

#createAccountModuleRoot .create-account-layout {
    max-width: 980px;
}

#createAccountModuleRoot .create-account-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #eef6ff;
    border: 1px solid #b9d6fb;
    color: #234a75;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}

#createAccountModuleRoot .create-account-card {
    border-radius: 1rem;
}

#createAccountModuleRoot .create-account-section-box {
    border: 1px solid #d5dbe3;
    border-radius: 0.9rem;
    background: #f8fafc;
    padding: 1rem;
}

#createAccountModuleRoot .create-account-section-title {
    margin: 0 0 1rem 0;
    font-size: 1rem;
    font-weight: 700;
    color: #1f2937;
}

#createAccountModuleRoot .create-account-posts-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

#createAccountModuleRoot .create-account-field-addon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    padding: 0 0.75rem;
    border: 1px solid #d5dbe3;
    border-right: 0;
    border-radius: 0.75rem 0 0 0.75rem;
    background: #f8fafc;
    color: #4b5563;
    font-weight: 600;
}

#createAccountModuleRoot .create-account-input-with-addon {
    display: flex;
    align-items: stretch;
}

#createAccountModuleRoot .create-account-input-with-addon .form-control {
    border-radius: 0 0.75rem 0.75rem 0;
}

#createAccountModuleRoot .create-account-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

#createAccountModuleRoot .create-account-actions .btn {
    min-width: 150px;
}

@media (max-width: 767.98px) {
    #createAccountModuleRoot .create-account-posts-grid {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   Account Profile - account_profile.php
========================================================= */

#accountProfileModuleRoot {
    width: 100%;
    min-width: 0;
}

#accountProfileModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}

#accountProfileModuleRoot .account-profile-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

#accountProfileModuleRoot .account-profile-layout {
    max-width: 900px;
}

#accountProfileModuleRoot .account-profile-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #fff8db;
    border: 1px solid #f0d98c;
    color: #6f5a16;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}

#accountProfileModuleRoot .account-profile-card {
    border-radius: 1rem;
}

#accountProfileModuleRoot .account-profile-placeholder {
    padding: 2rem 1rem;
    text-align: center;
    color: #6b7280;
}

#accountProfileModuleRoot .account-profile-placeholder i {
    font-size: 2.75rem;
    display: block;
    margin-bottom: 0.75rem;
    color: #9ca3af;
}

#accountProfileModuleRoot .account-profile-placeholder-title {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 0.5rem;
}

#accountProfileModuleRoot .account-profile-placeholder-text {
    font-size: 14px;
    line-height: 1.5;
}

/* =========================================================
   Account Info - account_info.php
========================================================= */

#accountSettingsModuleRoot {
    width: 100%;
    min-width: 0;
}
#accountSettingsModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#accountSettingsModuleRoot .account-settings-heading-select {
    width: 370px;
    min-width: 260px;
    max-width: 370px;
}
#accountSettingsModuleRoot .account-settings-grid > div {
    min-width: 0;
}
#accountSettingsModuleRoot .app-account-card {
    height: 100%;
}
#accountSettingsModuleRoot .app-card-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}
#accountSettingsModuleRoot .app-card-header-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}
#accountSettingsModuleRoot .app-card-header-actions .btn {
    white-space: nowrap;
}
#accountSettingsModuleRoot .app-account-plan-card .row > div {
    min-width: 0;
}
#accountSettingsModuleRoot .app-plan-meta-item {
    margin-bottom: 0.75rem;
}
#accountSettingsModuleRoot .app-plan-meta-item:last-child {
    margin-bottom: 0;
}
#accountSettingsModuleRoot .app-plan-meta-label {
    font-weight: 700;
    color: #363636;
}
#accountSettingsModuleRoot .app-plan-description {
    margin-bottom: 0;
    white-space: pre-line;
}
@media (max-width: 991.98px) {
    #accountSettingsModuleRoot .account-settings-heading-select {
        width: 100%;
        min-width: 220px;
        max-width: 100%;
    }
}

/* =========================================================
   Keywords - add_keyword.php
========================================================= */

#addKeywordsModuleRoot {
    width: 100%;
    min-width: 0;
}
#addKeywordsModuleRoot .app-module-title {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.2;
    font-weight: 700;
    color: #363636;
    white-space: nowrap;
}
#addKeywordsModuleRoot .add-keywords-title-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}
#addKeywordsModuleRoot .add-keywords-layout {
    max-width: 860px;
}
#addKeywordsModuleRoot .add-keywords-mode-note {
    margin-bottom: 1rem;
    border-radius: 0.75rem;
    background: #fff8db;
    border: 1px solid #f0d98c;
    color: #6f5a16;
    padding: 0.875rem 1rem;
    font-size: 14px;
    line-height: 1.45;
}
#addKeywordsModuleRoot .add-keywords-form-card {
    border-radius: 1rem;
}
#addKeywordsModuleRoot .add-keywords-form-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}
#addKeywordsModuleRoot .add-keywords-form-actions .btn {
    min-width: 150px;
}
#addKeywordsModuleRoot .add-keywords-textarea {
    min-height: 220px;
    resize: vertical;
}

#keywordsModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #keywordsModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #keywordsModuleRoot .keywords-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #keywordsModuleRoot .keywords-top-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #keywordsModuleRoot .keywords-total-box {
            display: inline-flex;
            align-items: center;
            min-height: 38px;
        }

        #keywordsModuleRoot .keywords-filter-row {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
        }

        #keywordsModuleRoot .keywords-filter-form {
            margin: 0;
        }

        #keywordsModuleRoot .keywords-filter-form--service {
            width: 350px;
            max-width: 100%;
        }

        #keywordsModuleRoot .keywords-filter-form--status {
            width: 220px;
            max-width: 100%;
        }

        #keywordsModuleRoot .keywords-help-note {
            margin-bottom: 1rem;
            border-radius: 0.75rem;
            background: #fff8db;
            border: 1px solid #f0d98c;
            color: #6f5a16;
            padding: 0.875rem 1rem;
            font-size: 14px;
            line-height: 1.45;
        }

        #keywordsModuleRoot .keywords-table-wrap {
            min-width: 0;
        }

        #keywordsModuleRoot .keywords-bulk-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            margin-top: 1rem;
        }

        #keywordsModuleRoot .keywords-bulk-actions .btn {
            min-width: 150px;
        }

        #keywordsModuleRoot .jr-kwlist-action-button-export,
        #keywordsModuleRoot .jr-kwlist-action-button-delete {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 0.5rem;
            font-weight: 600;
            min-height: 38px;
            padding: 0.375rem 0.75rem;
            cursor: pointer;
            text-decoration: none;
            box-shadow: none;
        }

        #keywordsModuleRoot .jr-kwlist-action-button-export {
            background-color: #485fc7;
            border: 1px solid #485fc7;
            color: #ffffff;
        }

        #keywordsModuleRoot .jr-kwlist-action-button-export:hover {
            background-color: #3a51bb;
            border-color: #3a51bb;
            color: #ffffff;
        }

        #keywordsModuleRoot .jr-kwlist-action-button-delete {
            background-color: #ffffff;
            border: 1px solid #6b7280;
            color: #4b5563;
        }

        #keywordsModuleRoot .jr-kwlist-action-button-delete:hover {
            background-color: #6b7280;
            border-color: #6b7280;
            color: #ffffff;
        }

        @media (max-width: 991.98px) {
            #keywordsModuleRoot .keywords-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }

            #keywordsModuleRoot .keywords-top-actions {
                justify-content: flex-start;
            }

            #keywordsModuleRoot .keywords-filter-form--service,
            #keywordsModuleRoot .keywords-filter-form--status {
                width: 100%;
            }
        }


/* =========================================================
   Cannibalization - cannibalization.php
========================================================= */

#cannibalization-module-root {
            width: 100%;
            min-width: 0;
        }

        #cannibalization-module-root .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #cannibalization-module-root .cannibalization-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #cannibalization-module-root .cannibalization-subtitle {
            margin-top: 0.35rem;
            color: #6b7280;
            font-size: 14px;
        }

        #cannibalization-module-root .cannibalization-intro-note {
            margin-bottom: 1rem;
            border-radius: 0.75rem;
            background: #eef2ff;
            border: 1px solid #cfd8ff;
            color: #3647a0;
            padding: 0.875rem 1rem;
            font-size: 14px;
            line-height: 1.45;
        }

        #cannibalization-module-root .cannibalization-overview-grid > div,
        #cannibalization-module-root .cannibalization-filters-grid > div {
            min-width: 0;
        }

        #cannibalization-module-root .cannibalization-stat-card {
            height: 100%;
            border: 1px solid #dbdbdb;
            border-radius: 0.875rem;
            background: #ffffff;
            box-shadow: var(--app-shadow-sm);
        }

        #cannibalization-module-root .cannibalization-stat-card .card-body {
            padding: 1rem !important;
        }

        #cannibalization-module-root .cannibalization-section-note {
            font-size: 13px;
            color: #6b7280;
        }

        #cannibalization-module-root .cannibalization-tab-pane-inner {
            min-width: 0;
        }

        #cannibalization-module-root .cannibalization-results-list {
            min-width: 0;
        }

        #cannibalization-module-root .card-header .nav-tabs {
            margin-bottom: -0.9rem;
        }

        @media (max-width: 991.98px) {
            #cannibalization-module-root .cannibalization-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }
        }


/* =========================================================
   Documents - documents.php
========================================================= */

#documentsModuleRoot {
    width: 100%;
    min-width: 0;
}

#documentsModuleRoot .documents-top-left {
    min-width: 0;
}

#documentsModuleRoot .documents-heading-inline,
#documentsModuleRoot .app-page-title-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    min-width: 0;
    margin-bottom: 0;
}

#documentsModuleRoot .documents-heading-inline h1,
#documentsModuleRoot .documents-heading-inline h2,
#documentsModuleRoot .documents-heading-inline h3,
#documentsModuleRoot .documents-heading-inline h4,
#documentsModuleRoot .app-module-title {
    margin: 0 !important;
    font-family: inherit !important;
    font-size: 1.5rem !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #363636 !important;
    white-space: nowrap;
}

#documentsModuleRoot .documents-heading-select {
    width: 370px;
    min-width: 260px;
    max-width: 370px;
    font-weight: 400;
}

@media (max-width: 991.98px) {
    #documentsModuleRoot .documents-heading-select {
        width: 100%;
        min-width: 220px;
        max-width: 100%;
    }
}

/* =========================================================
   Editorial Calendar - editorial_calendar.php
========================================================= */

    #editorialCalendarModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #editorialCalendarModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #editorialCalendarModuleRoot .editorial-calendar-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #editorialCalendarModuleRoot .editorial-calendar-layout > div {
            min-width: 0;
        }

        #editorialCalendarModuleRoot .editorial-calendar-stack {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
            min-width: 0;
        }

        #editorialCalendarModuleRoot .editorial-calendar-card,
        #editorialCalendarModuleRoot .editorial-calendar-reader-card {
            height: 100%;
        }

        #editorialCalendarModuleRoot .editorial-calendar-list-shell {
            min-width: 0;
        }

        #editorialCalendarModuleRoot #upcoming-publications-container,
        #editorialCalendarModuleRoot #past-publications-container {
            border: 1px solid #dbdbdb;
            border-radius: 0.75rem;
            padding: 0.75rem;
            background: #ffffff;
            min-width: 0;
        }

        #editorialCalendarModuleRoot #publication-reader-container {
            min-height: 420px;
        }

        @media (max-width: 991.98px) {
            #editorialCalendarModuleRoot .editorial-calendar-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }
        }

/* =========================================================
   Landings - landings.php
========================================================= */

#landingsModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #landingsModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #landingsModuleRoot .landings-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #landingsModuleRoot .landings-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #landingsModuleRoot .landings-create-card,
        #landingsModuleRoot .landings-list-card {
            border-radius: 1rem;
        }

        #landingsModuleRoot .landings-form-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            margin-top: 1rem;
        }

        #landingsModuleRoot .landings-form-actions .btn {
            min-width: 130px;
        }

        #landingsModuleRoot .landings-help-note {
            margin-bottom: 1rem;
            border-radius: 0.75rem;
            background: #fff8db;
            border: 1px solid #f0d98c;
            color: #6f5a16;
            padding: 0.875rem 1rem;
            font-size: 14px;
            line-height: 1.45;
        }

        #landingsModuleRoot .landings-table-wrap {
            overflow-x: auto;
        }

        #landingsModuleRoot .landings-url-link {
            word-break: break-word;
        }

        #landingsModuleRoot .landings-actions-inline {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            flex-wrap: wrap;
        }

        #landingsModuleRoot .landings-notes {
            margin-top: 1rem;
        }

        #landingsModuleRoot .landings-notes p {
            margin-bottom: 0.45rem;
            font-size: 13px;
            color: #6b7280;
            line-height: 1.45;
        }

        #landingsModuleRoot .landings-notes p:last-child {
            margin-bottom: 0;
        }

        @media (max-width: 991.98px) {
            #landingsModuleRoot .landings-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }

            #landingsModuleRoot .landings-actions {
                justify-content: flex-start;
            }
        }

/* =========================================================
   Locations - locations.php
========================================================= */


#locationsModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #locationsModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #locationsModuleRoot .locations-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #locationsModuleRoot .locations-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #locationsModuleRoot .locations-card {
            border-radius: 1rem;
        }

        #locationsModuleRoot .locations-list {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            min-width: 0;
        }

        #locationsModuleRoot .location-item-card {
            border: 1px solid #dbdbdb;
            border-radius: 0.875rem;
            background: #ffffff;
            box-shadow: var(--app-shadow-sm);
        }

        #locationsModuleRoot .location-item-card .card-body {
            padding: 1rem !important;
        }

        #locationsModuleRoot .location-item-title {
            margin: 0;
            font-size: 1rem;
            font-weight: 700;
            color: #363636;
        }

        #locationsModuleRoot .location-item-subtitle {
            margin-top: 0.35rem;
            color: #6b7280;
            font-size: 13px;
        }

        #locationsModuleRoot .location-item-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            justify-content: flex-end;
        }

        #locationsModuleRoot .location-item-meta {
            margin-top: 1rem;
            font-size: 14px;
            color: #4b5563;
            line-height: 1.5;
        }

        #locationsModuleRoot .location-item-meta-row {
            margin-bottom: 0.45rem;
            word-break: break-word;
        }

        #locationsModuleRoot .location-item-meta-row:last-child {
            margin-bottom: 0;
        }

        #locationsModuleRoot .location-item-meta a {
            word-break: break-word;
        }

        @media (max-width: 991.98px) {
            #locationsModuleRoot .locations-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }

            #locationsModuleRoot .locations-actions {
                justify-content: flex-start;
            }

            #locationsModuleRoot .location-item-actions {
                justify-content: flex-start;
            }
        }

/* =========================================================
   Main Dashboard - main_dashboard.php
========================================================= */


 #mainDashboardModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #mainDashboardModuleRoot .dashboard-hero {
            margin-bottom: 1.5rem;
        }

        #mainDashboardModuleRoot .dashboard-title {
            margin: 0;
            font-size: 1.75rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
        }

        #mainDashboardModuleRoot .dashboard-subtitle {
            margin-top: 0.4rem;
            color: #6b7280;
            font-size: 14px;
        }

        #mainDashboardModuleRoot .dashboard-stats-grid > div,
        #mainDashboardModuleRoot .dashboard-layout > div {
            min-width: 0;
        }

        #mainDashboardModuleRoot .dashboard-stat-card {
            height: 100%;
            border: 1px solid #dbdbdb;
            border-radius: 0.875rem;
            background: #ffffff;
            box-shadow: var(--app-shadow-sm);
        }

        #mainDashboardModuleRoot .dashboard-stat-card .card-body {
            padding: 1rem !important;
        }

        #mainDashboardModuleRoot .dashboard-stat-label {
            font-size: 13px;
            color: #6b7280;
            margin-bottom: 0.35rem;
        }

        #mainDashboardModuleRoot .dashboard-stat-value {
            margin: 0;
            font-size: 1.55rem;
            line-height: 1.1;
            font-weight: 700;
            color: #363636;
        }

        #mainDashboardModuleRoot .dashboard-main-card,
        #mainDashboardModuleRoot .dashboard-side-card {
            height: 100%;
            border-radius: 1rem;
        }

        #mainDashboardModuleRoot .dashboard-table-wrap {
            overflow: auto;
            max-height: 720px;
        }

        #mainDashboardModuleRoot .dashboard-table {
            margin-bottom: 0;
        }

        #mainDashboardModuleRoot .dashboard-table thead th {
            position: sticky;
            top: 0;
            z-index: 5;
            background: #fafafa !important;
        }

        #mainDashboardModuleRoot .dashboard-group-row td {
            background: #ffffff !important;
            border-bottom: 0 !important;
            padding-top: 1rem !important;
            padding-bottom: 0.55rem !important;
        }

        #mainDashboardModuleRoot .dashboard-group-label {
            font-size: 14px;
        }

        #mainDashboardModuleRoot .dashboard-topic-cell {
            word-break: break-word;
        }

        #mainDashboardModuleRoot .dashboard-placeholder-note {
            color: #6b7280;
            font-size: 14px;
            line-height: 1.5;
        }

        @media (max-width: 1199.98px) {
            #mainDashboardModuleRoot .dashboard-table-wrap {
                max-height: none;
            }
        }

/* =========================================================
   SEO Disary - seo_diary.php
========================================================= */


#seoDiaryModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #seoDiaryModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #seoDiaryModuleRoot .seo-diary-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #seoDiaryModuleRoot .seo-diary-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #seoDiaryModuleRoot .seo-diary-table-wrap {
            overflow-x: auto;
        }

        #seoDiaryModuleRoot .seo-diary-table {
            margin-bottom: 0;
        }

        #seoDiaryModuleRoot .seo-diary-col-date {
            width: 140px;
            white-space: nowrap;
        }

        #seoDiaryModuleRoot .seo-diary-col-actions {
            width: 170px;
            white-space: nowrap;
        }

        #seoDiaryModuleRoot .seo-diary-entry-actions {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            flex-wrap: wrap;
        }

        #seoDiaryModuleRoot .seo-diary-entry-actions .btn {
            min-width: 38px;
        }

        #seoDiaryModuleRoot .diary-preview-wrap {
            position: relative;
        }

        #seoDiaryModuleRoot .diary-preview {
            max-height: 150px;
            overflow: hidden;
            position: relative;
            line-height: 1.55;
            color: #374151;
        }

        #seoDiaryModuleRoot .diary-overlay {
            display: none;
            position: absolute;
            left: 0;
            right: 0;
            bottom: 1.8rem;
            height: 58px;
            background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));
            pointer-events: none;
        }

        #seoDiaryModuleRoot .diary-readmore {
            display: none;
            position: relative;
            font-size: 13px;
            font-weight: 600;
        }

        #seoDiaryModuleRoot .diary-preview-wrap.has-more .diary-overlay,
        #seoDiaryModuleRoot .diary-preview-wrap.has-more .diary-readmore {
            display: block;
        }

        #seoDiaryModuleRoot #diaryViewModalBody {
            line-height: 1.6;
            color: #374151;
        }

        @media (max-width: 991.98px) {
            #seoDiaryModuleRoot .seo-diary-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }

            #seoDiaryModuleRoot .seo-diary-actions {
                justify-content: flex-start;
            }

            #seoDiaryModuleRoot .seo-diary-col-date,
            #seoDiaryModuleRoot .seo-diary-col-actions {
                width: auto;
                white-space: normal;
            }
        }


/* =========================================================
   Service Detail - service_detail.php
========================================================= */

#serviceDetailModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #serviceDetailModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #serviceDetailModuleRoot .service-detail-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 420px;
        }

        #serviceDetailModuleRoot .service-detail-summary {
            margin-bottom: 1.25rem;
        }

        #serviceDetailModuleRoot .service-detail-summary-line {
            margin-bottom: 0.45rem;
            color: #4b5563;
            word-break: break-word;
        }

        #serviceDetailModuleRoot .service-detail-summary-line:last-child {
            margin-bottom: 0;
        }

        #serviceDetailModuleRoot .service-detail-status-grid > div,
        #serviceDetailModuleRoot .service-detail-metrics-grid > div {
            min-width: 0;
        }

        #serviceDetailModuleRoot .service-detail-status-box,
        #serviceDetailModuleRoot .service-detail-metric-box {
            height: 100%;
            border: 1px solid #dbdbdb;
            border-radius: 0.75rem;
            background: #ffffff;
            padding: 1rem;
        }

        #serviceDetailModuleRoot .service-detail-status-box--soft {
            background: #fafafa;
        }

        #serviceDetailModuleRoot .service-detail-box-title {
            font-weight: 700;
            margin-bottom: 0.9rem;
            color: #363636;
        }

        #serviceDetailModuleRoot .service-detail-metric-label {
            color: #6b7280;
            font-size: 13px;
            margin-bottom: 0.35rem;
        }

        #serviceDetailModuleRoot .service-detail-metric-value {
            font-weight: 700;
            color: #363636;
            margin-bottom: 0;
        }

        #serviceDetailModuleRoot .service-detail-basic-info-card,
        #serviceDetailModuleRoot .service-detail-sync-card {
            display: none;
        }

        @media (max-width: 991.98px) {
            #serviceDetailModuleRoot .service-detail-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }
        }

/* =========================================================
   Services - services.php
========================================================= */


#servicesModuleRoot {
            width: 100%;
            min-width: 0;
        }

        #servicesModuleRoot .app-module-title {
            margin: 0;
            font-size: 1.5rem;
            line-height: 1.2;
            font-weight: 700;
            color: #363636;
            white-space: nowrap;
        }

        #servicesModuleRoot .services-heading-select {
            width: 370px;
            min-width: 260px;
            max-width: 370px;
        }

        #servicesModuleRoot .services-header-meta {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            flex-wrap: wrap;
            justify-content: flex-end;
        }

        #servicesModuleRoot .services-last-data-label {
            font-size: 14px;
            color: #6b7280;
            white-space: nowrap;
        }

        #servicesModuleRoot .services-status-grid > div,
        #servicesModuleRoot .services-metrics-grid > div {
            min-width: 0;
        }

        #servicesModuleRoot .services-status-box,
        #servicesModuleRoot .services-metric-box {
            height: 100%;
            border: 1px solid #dbdbdb;
            border-radius: 0.75rem;
            background: #ffffff;
            padding: 1rem;
        }

        #servicesModuleRoot .services-status-box--soft {
            background: #fafafa;
        }

        #servicesModuleRoot .services-box-title {
            font-weight: 700;
            margin-bottom: 0.9rem;
            color: #363636;
        }

        #servicesModuleRoot .services-metric-label {
            color: #6b7280;
            font-size: 13px;
            margin-bottom: 0.35rem;
        }

        #servicesModuleRoot .services-metric-value {
            font-weight: 700;
            color: #363636;
            margin-bottom: 0;
        }

        @media (max-width: 991.98px) {
            #servicesModuleRoot .services-heading-select {
                width: 100%;
                min-width: 220px;
                max-width: 100%;
            }

            #servicesModuleRoot .services-header-meta {
                justify-content: flex-start;
            }
        }