/* =========================================================
   CONSORTIUM D'ÉMERAUDE — Plugin UI
   Nettoyé pour éviter les conflits avec le thème Kadence.

   Ce fichier ne gère que :
   - registre des commerces
   - formulaire de commande
   - compte / commandes utilisateur
   - gestion front-end : commandes, catalogue, membres
   - navigation dynamique du Consortium
   ========================================================= */

:root {
    --ce-bg-dark: rgba(5, 8, 6, 0.94);
    --ce-bg-panel: rgba(10, 10, 7, 0.90);
    --ce-bg-panel-soft: rgba(0, 0, 0, 0.34);
    --ce-text: #e8ddc3;
    --ce-text-soft: #cfc3a8;
    --ce-title: #f1e6c8;
    --ce-gold: #c2a45f;
    --ce-gold-soft: rgba(194, 164, 95, 0.45);
    --ce-emerald: #2f9f72;
    --ce-emerald-dark: #163b2a;
    --ce-red: #8a3c3c;
    --ce-red-dark: #3b1616;
    --ce-border: 1px solid rgba(194, 164, 95, 0.45);
    --ce-shadow: 0 0 24px rgba(0, 0, 0, 0.52);
    --ce-font: Georgia, "Times New Roman", serif;
}

/* ===== Base commune plugin ===== */

.ce-page,
.ce-order-form,
.ce-register-grid,
.ce-account-dashboard,
.ce-front-orders,
.ce-front-order-management,
.ce-front-catalog-management,
.ce-front-member-management,
.ce-management-dashboard,
.ce-catalog-workspace {
    width: 100%;
    max-width: 1060px;
    margin-left: auto;
    margin-right: auto;
    color: var(--ce-text);
    font-family: var(--ce-font);
}

.ce-page-title {
    margin: 0 0 18px !important;
    color: var(--ce-title) !important;
    font-family: var(--ce-font);
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.08;
    text-shadow: 0 0 8px rgba(0, 0, 0, 0.9);
}

.ce-page-intro {
    max-width: 850px;
    margin: 0 0 26px;
    color: var(--ce-text);
    font-size: 17px;
    line-height: 1.7;
}

.ce-panel,
.ce-account-panel,
.ce-account-notice,
.ce-order-login-required,
.ce-order-builder,
.ce-order-summary-panel,
.ce-filter-panel,
.ce-compact-panel,
.ce-subpanel,
.ce-rp-required-panel,
.ce-commerce-offer-editor,
.ce-catalog-category-block,
.ce-category-node,
.ce-order-card,
.ce-management-item,
.ce-commerce-card {
    border: var(--ce-border);
    background:
        radial-gradient(circle at top left, rgba(47, 159, 114, 0.12), transparent 42%),
        rgba(0, 0, 0, 0.34);
    box-shadow: var(--ce-shadow);
}

.ce-panel,
.ce-account-panel,
.ce-order-login-required,
.ce-account-notice {
    margin: 24px 0;
    padding: 24px;
}

.ce-panel-title,
.ce-panel h2,
.ce-panel h3,
.ce-commerce-card h3,
.ce-order-builder h3,
.ce-order-summary-panel h3 {
    margin-top: 0 !important;
    color: var(--ce-title) !important;
    font-family: var(--ce-font);
}

.ce-field-help {
    margin: 8px 0 0;
    color: var(--ce-text-soft) !important;
    font-size: 13px;
    line-height: 1.45;
}

.ce-kicker,
.ce-badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 28px;
    padding: 5px 10px;
    border: 1px solid rgba(194, 164, 95, 0.48);
    background: rgba(0, 0, 0, 0.32);
    color: var(--ce-gold);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}

.ce-between {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

/* ===== Formulaires plugin ===== */

.ce-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
}

.ce-form-field {
    min-width: 0;
    margin-bottom: 18px;
}

.ce-form-field label,
.ce-checkbox-row label,
.ce-check-row {
    color: #d8c7a0;
    font-weight: 800;
}

.ce-form-field label {
    display: block;
    margin-bottom: 8px;
}

.ce-order-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-order-form textarea,
.ce-order-form select,
.ce-front-edit-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-front-edit-form textarea,
.ce-front-edit-form select,
.ce-commerce-member-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-commerce-member-form textarea,
.ce-commerce-member-form select,
.ce-commerce-offer-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-commerce-offer-form textarea,
.ce-commerce-offer-form select,
.ce-inline-status-form select,
.ce-filter-panel input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-filter-panel textarea,
.ce-filter-panel select,
.ce-management-details input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-management-details textarea,
.ce-management-details select,
.ce-order-edit-details input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.ce-order-edit-details textarea,
.ce-order-edit-details select,
.ce-readonly-value {
    width: 100%;
    max-width: 100%;
    min-height: 42px;
    padding: 10px 12px;
    border: 1px solid rgba(194, 164, 95, 0.45) !important;
    border-radius: 3px !important;
    background: rgba(0, 0, 0, 0.42) !important;
    color: var(--ce-title) !important;
    font-family: var(--ce-font);
}

.ce-order-form textarea,
.ce-front-edit-form textarea,
.ce-commerce-member-form textarea,
.ce-commerce-offer-form textarea,
.ce-filter-panel textarea,
.ce-management-details textarea,
.ce-order-edit-details textarea {
    min-height: 92px;
    resize: vertical;
}

.ce-order-form input:focus,
.ce-order-form textarea:focus,
.ce-order-form select:focus,
.ce-front-edit-form input:focus,
.ce-front-edit-form textarea:focus,
.ce-front-edit-form select:focus,
.ce-commerce-member-form input:focus,
.ce-commerce-member-form textarea:focus,
.ce-commerce-member-form select:focus,
.ce-commerce-offer-form input:focus,
.ce-commerce-offer-form textarea:focus,
.ce-commerce-offer-form select:focus,
.ce-inline-status-form select:focus,
.ce-filter-panel input:focus,
.ce-filter-panel textarea:focus,
.ce-filter-panel select:focus,
.ce-management-details input:focus,
.ce-management-details textarea:focus,
.ce-management-details select:focus,
.ce-order-edit-details input:focus,
.ce-order-edit-details textarea:focus,
.ce-order-edit-details select:focus {
    border-color: rgba(230, 202, 132, 0.9) !important;
    box-shadow: 0 0 12px rgba(47, 159, 114, 0.22) !important;
    outline: none !important;
}

.ce-checkbox-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin: 14px 0 18px;
}

.ce-checkbox-row label,
.ce-check-row {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    margin: 0 !important;
    line-height: 1.35;
    cursor: pointer;
}

.ce-checkbox-row input[type="checkbox"],
.ce-check-row input[type="checkbox"] {
    width: 16px !important;
    min-width: 16px;
    height: 16px !important;
    margin: 0;
}

.ce-readonly-value {
    display: flex;
    align-items: center;
    font-weight: 800;
}

/* ===== Boutons ===== */

.ce-button,
.entry-content-wrap .ce-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 10px 18px !important;
    border: 1px solid rgba(194, 164, 95, 0.72) !important;
    border-radius: 3px;
    background: linear-gradient(180deg, #2f6f4e, var(--ce-emerald-dark)) !important;
    color: var(--ce-title) !important;
    font-family: var(--ce-font);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0.3px;
    text-align: center;
    text-decoration: none !important;
    box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.04), 0 0 14px rgba(0, 0, 0, 0.55);
    cursor: pointer;
}

.ce-button:hover,
.entry-content-wrap .ce-button:hover {
    border-color: rgba(230, 202, 132, 0.95) !important;
    background: linear-gradient(180deg, #3c8a61, #1d4a35) !important;
    color: #fff !important;
}

.ce-button:disabled {
    opacity: 0.55;
    cursor: not-allowed;
}

.ce-danger-button,
.entry-content-wrap .ce-danger-button {
    background: linear-gradient(180deg, var(--ce-red), var(--ce-red-dark)) !important;
}

.ce-danger-button:hover,
.entry-content-wrap .ce-danger-button:hover {
    background: linear-gradient(180deg, #9b4a4a, #4a1d1d) !important;
}

.ce-discord-button::before {
    content: "◆ ";
    color: var(--ce-gold);
}

/* ===== Registre des commerces ===== */

.ce-register-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    margin-top: 30px;
}

.ce-commerce-card {
    display: flex;
    min-height: 100%;
    flex-direction: column;
    padding: 24px;
}

.ce-commerce-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.ce-commerce-city,
.ce-commerce-meta {
    color: var(--ce-text-soft);
    font-size: 14px;
    line-height: 1.55;
}

.ce-card-link {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: auto;
    padding-top: 14px;
    color: var(--ce-title) !important;
    font-weight: 800;
    text-decoration: none !important;
}

.ce-card-link::after {
    content: " →";
    color: var(--ce-gold);
}

/* ===== Commande ===== */

.ce-order-builder,
.ce-order-summary-panel {
    margin: 28px 0;
    padding: 24px;
}

.ce-order-form .ce-submit-order {
    margin-top: 4px;
}

.ce-empty-order {
    padding: 16px;
    border: 1px dashed rgba(194, 164, 95, 0.35);
    color: var(--ce-text-soft);
    font-style: italic;
}

.ce-order-lines {
    display: grid;
    gap: 12px;
}

.ce-order-line {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 14px 16px;
    border: 1px solid rgba(194, 164, 95, 0.28);
    background: rgba(0, 0, 0, 0.32);
}

.ce-order-line-title {
    display: block;
    color: var(--ce-title);
    font-weight: 800;
}

.ce-order-line-meta {
    display: block;
    margin-top: 5px;
    color: var(--ce-text-soft);
    font-size: 14px;
    line-height: 1.45;
}

.ce-remove-line {
    min-height: 36px !important;
    padding: 7px 12px !important;
    font-size: 13px !important;
    white-space: nowrap;
}

.ce-order-result {
    margin-top: 18px;
    padding: 0;
}

.ce-order-result-success,
.ce-order-result-error,
.ce-order-result-info,
.ce-account-notice,
.ce-form-warning {
    padding: 14px 16px;
    border-left: 3px solid var(--ce-gold);
    background: rgba(0, 0, 0, 0.28);
}

.ce-order-result-success,
.ce-success,
.ce-account-notice {
    color: #9fe0c2 !important;
}

.ce-order-result-error,
.ce-error {
    color: #f0b8a8 !important;
}

.ce-order-result-info {
    color: var(--ce-title) !important;
}

/* ===== Compte / commandes ===== */

.ce-account-dashboard,
.ce-account-orders,
.ce-front-orders,
.ce-merchant-panel {
    display: grid;
    gap: 16px;
}

.ce-order-card {
    margin: 14px 0;
    padding: 18px;
}

.ce-order-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(194, 164, 95, 0.18);
}

.ce-order-card-head span,
.ce-management-item span,
.ce-order-card-body span {
    color: var(--ce-text-soft);
}

.ce-order-card-body {
    margin-top: 14px;
}

.ce-order-card-body p {
    margin: 8px 0;
}

.ce-order-items {
    display: grid;
    gap: 5px;
    margin: 12px 0 0;
    padding-left: 20px;
}

.ce-order-card-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
}

.ce-order-status-acceptee,
.ce-order-status-en-cours,
.ce-order-status-terminee {
    border-color: rgba(47, 159, 114, 0.52);
}

.ce-order-status-refusee,
.ce-order-status-annulee {
    border-color: rgba(170, 70, 55, 0.60);
}

/* ===== Gestion front-end ===== */

.ce-front-order-management .ce-panel,
.ce-front-catalog-management .ce-panel,
.ce-front-member-management .ce-panel,
.ce-management-dashboard .ce-panel,
.ce-compact-panel {
    margin: 18px 0;
    padding: 20px !important;
}

.ce-management-list,
.ce-compact-management-list,
.ce-accordion-list,
.ce-category-tree-list,
.ce-category-children,
.ce-catalog-children,
.ce-category-products,
.ce-catalog-category-list {
    display: grid;
    gap: 10px;
}

.ce-management-list {
    margin-top: 14px;
}

.ce-management-item {
    display: grid !important;
    grid-template-columns: minmax(230px, 1fr) auto auto;
    align-items: center !important;
    gap: 12px !important;
    min-height: 70px;
    margin: 0 !important;
    padding: 14px 16px !important;
}

.ce-management-item > div:first-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
}

.ce-management-item strong,
.ce-commerce-team-item strong {
    color: var(--ce-title);
    line-height: 1.25;
}

.ce-management-item span {
    margin-top: 3px;
    line-height: 1.35;
}

.ce-management-item form,
.ce-management-item details,
.ce-category-actions form,
.ce-category-actions details,
.ce-category-product-row form,
.ce-category-product-row details {
    margin: 0 !important;
}

.ce-management-item details {
    justify-self: end;
}

.ce-management-item details[open],
.ce-order-edit-details,
.ce-management-details {
    width: 100%;
}

.ce-management-item details[open] {
    grid-column: 1 / -1;
    justify-self: stretch;
    margin-top: 8px !important;
    padding-top: 12px;
    border-top: 1px solid rgba(194, 164, 95, 0.18);
}

.ce-management-item summary,
.ce-management-details summary,
.ce-order-edit-details summary,
.ce-commerce-offer-editor > summary,
.ce-catalog-category-block > summary,
.ce-category-actions summary,
.ce-category-product-row summary {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 7px 12px;
    border: 1px solid rgba(194, 164, 95, 0.38);
    background: rgba(0, 0, 0, 0.28);
    color: var(--ce-gold) !important;
    font-weight: 800;
    cursor: pointer;
}

.ce-management-item summary:hover,
.ce-management-details summary:hover,
.ce-order-edit-details summary:hover,
.ce-commerce-offer-editor > summary:hover,
.ce-catalog-category-block > summary:hover,
.ce-category-actions summary:hover,
.ce-category-product-row summary:hover {
    border-color: rgba(230, 202, 132, 0.72);
    color: var(--ce-title) !important;
}

.ce-inline-status-form {
    display: inline-grid !important;
    grid-auto-flow: column;
    grid-auto-columns: max-content;
    align-items: center !important;
    gap: 10px !important;
    margin: 0;
}

.ce-inline-status-form select {
    width: auto !important;
    min-width: 210px;
}

.ce-filter-panel {
    margin-bottom: 16px !important;
    padding: 16px !important;
}

.ce-filter-panel .ce-form-field,
.ce-front-edit-form .ce-form-field,
.ce-commerce-member-form .ce-form-field {
    margin-bottom: 14px !important;
}

.ce-front-edit-form .ce-form-grid,
.ce-commerce-member-form .ce-form-grid,
.ce-filter-panel .ce-form-grid {
    gap: 14px !important;
}

.ce-subpanel {
    margin: 16px 0;
    padding: 14px;
    border-color: rgba(194, 164, 95, 0.24);
    background: rgba(0, 0, 0, 0.18);
}

/* ===== Navigation dynamique ===== */

.ce-dyn-nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
    width: 100%;
    color: var(--ce-text);
    font-family: var(--ce-font);
}

.ce-dyn-nav-link,
.ce-dyn-nav-sublink,
.ce-dyn-menu-item > a,
.ce-dyn-sub-menu-item > a {
    white-space: nowrap;
}

.ce-dyn-nav-link {
    color: #d8c7a0 !important;
    font-weight: 800;
    letter-spacing: 0.25px;
    text-decoration: none !important;
}

.ce-dyn-nav-link:hover,
.ce-dyn-nav-sublink:hover,
.ce-dyn-sub-menu-item > a:hover {
    color: var(--ce-title) !important;
}

.ce-dyn-nav-group,
.ce-dyn-menu-item-has-children,
.main-navigation .primary-menu-container > ul > li.ce-dyn-menu-item-has-children {
    position: relative;
}

.ce-dyn-nav-parent::after,
.ce-dyn-menu-item-has-children > a::after {
    content: " ▾";
    color: var(--ce-gold);
    font-size: 0.82em;
}

.ce-dyn-nav-group::after,
.ce-dyn-menu-item-has-children::after,
.main-navigation .primary-menu-container > ul > li.ce-dyn-menu-item-has-children::after {
    content: "";
    position: absolute;
    left: -12px;
    right: -12px;
    top: 100%;
    height: 18px;
    z-index: 9998;
}

.ce-dyn-nav-dropdown,
.ce-dyn-sub-menu,
.main-navigation .primary-menu-container ul.sub-menu.ce-dyn-sub-menu {
    min-width: 210px;
    padding: 8px !important;
    border: 1px solid rgba(194, 164, 95, 0.45) !important;
    background: rgba(5, 8, 6, 0.98) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.72) !important;
}

.ce-dyn-nav-dropdown {
    position: absolute;
    top: 100% !important;
    right: 0;
    z-index: 9999;
    display: none;
    margin-top: 0 !important;
}

.ce-dyn-nav-group:hover .ce-dyn-nav-dropdown,
.ce-dyn-nav-group:focus-within .ce-dyn-nav-dropdown,
.main-navigation .primary-menu-container > ul > li.ce-dyn-menu-item-has-children:hover > ul.sub-menu,
.main-navigation .primary-menu-container > ul > li.ce-dyn-menu-item-has-children:focus-within > ul.sub-menu {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

.ce-dyn-nav-sublink,
.ce-dyn-sub-menu-item > a {
    display: block !important;
    padding: 10px 12px !important;
    color: #d8c7a0 !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.ce-dyn-nav-sublink:hover,
.ce-dyn-sub-menu-item > a:hover {
    background: rgba(194, 164, 95, 0.10) !important;
}

.main-navigation .primary-menu-container > ul > li.ce-dyn-menu-item > a {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ===== Catalogue global / offres par commerce ===== */

.ce-catalog-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 18px 0 22px;
}

.ce-catalog-tabs a {
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 8px 14px;
    border: 1px solid rgba(194, 164, 95, 0.42);
    background: rgba(0, 0, 0, 0.28);
    color: var(--ce-title) !important;
    font-weight: 800;
    text-decoration: none !important;
}

.ce-catalog-tabs a:hover {
    border-color: rgba(230, 202, 132, 0.88);
    background: rgba(18, 61, 43, 0.42);
}

.ce-commerce-offer-editor > summary {
    justify-content: space-between;
    gap: 16px;
    min-height: 54px;
    padding: 10px 14px !important;
}

.ce-commerce-offer-editor > summary span {
    display: grid;
    gap: 3px;
}

.ce-commerce-offer-editor > summary small,
.ce-catalog-category-block > summary small,
.ce-product-check em,
.ce-category-node-head span,
.ce-category-product-row span {
    color: var(--ce-text-soft);
    font-size: 13px;
    font-style: normal;
}

.ce-commerce-offer-form {
    padding: 12px 14px 16px;
}

.ce-catalog-category-block {
    border-color: rgba(194, 164, 95, 0.24);
    background: rgba(0, 0, 0, 0.24);
}

.ce-catalog-category-block > summary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
    min-height: 44px;
    padding: 8px 12px;
}

.ce-check-row-category span,
.ce-category-node-head strong,
.ce-category-product-row strong {
    color: var(--ce-title);
}

.ce-product-checkbox-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 10px 12px 12px;
}

.ce-product-check {
    padding: 8px 10px;
    border: 1px solid rgba(194, 164, 95, 0.16);
    background: rgba(0, 0, 0, 0.22);
}

.ce-product-check span {
    display: grid;
    gap: 2px;
    line-height: 1.2;
}

.ce-compact-management-list .ce-management-item {
    min-height: 58px;
    padding: 10px 12px !important;
}

/* ===== Catégories en arbre + produits ===== */

.ce-category-children,
.ce-catalog-children {
    margin-top: 10px;
    margin-left: 18px;
    padding-left: 14px;
    border-left: 1px solid rgba(194, 164, 95, 0.24);
}

.ce-category-node {
    padding: 12px;
    border-color: rgba(194, 164, 95, 0.24);
    background: rgba(0, 0, 0, 0.22);
}

.ce-category-node-head {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) auto;
    gap: 12px;
    align-items: center;
}

.ce-category-actions,
.ce-category-product-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.ce-category-actions summary,
.ce-category-product-row summary,
.ce-category-actions .ce-button,
.ce-category-product-row .ce-button {
    min-height: 34px !important;
    padding: 6px 10px !important;
    font-size: 13px;
}

.ce-category-product-row {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto auto auto;
    justify-content: stretch;
    padding: 9px 10px;
    border: 1px solid rgba(194, 164, 95, 0.16);
    background: rgba(0, 0, 0, 0.18);
}

.ce-catalog-depth-1,
.ce-category-depth-1 {
    border-color: rgba(194, 164, 95, 0.30);
}

.ce-catalog-depth-2,
.ce-category-depth-2 {
    border-color: rgba(47, 159, 114, 0.28);
}

/* ===== Équipes de commerces ===== */

.ce-commerce-team-item {
    grid-template-columns: minmax(320px, 1fr) auto auto;
}

.ce-commerce-team-item > div:first-child span:last-child {
    color: #9fe0c2;
}

/* ===== Responsive ===== */

@media (max-width: 1100px) {
    .ce-dyn-nav {
        gap: 14px;
    }
}

@media (max-width: 1000px) {
    .ce-register-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .ce-dyn-nav {
        justify-content: center;
        flex-wrap: wrap;
    }

    .ce-dyn-nav-dropdown {
        left: 0;
        right: auto;
    }

    .ce-management-item,
    .ce-commerce-team-item,
    .ce-category-node-head,
    .ce-category-product-row,
    .ce-catalog-category-block > summary {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
    }

    .ce-management-item details,
    .ce-management-item form,
    .ce-inline-status-form,
    .ce-inline-status-form select,
    .ce-management-item .ce-button,
    .ce-order-card-actions .ce-button,
    .ce-category-actions details,
    .ce-category-actions form,
    .ce-category-actions .ce-button,
    .ce-category-product-row details,
    .ce-category-product-row form,
    .ce-category-product-row .ce-button {
        width: 100% !important;
        justify-self: stretch;
    }

    .ce-inline-status-form {
        grid-auto-flow: row !important;
        grid-auto-columns: auto !important;
    }

    .ce-product-checkbox-grid {
        grid-template-columns: 1fr;
    }

    .ce-category-actions,
    .ce-category-product-row {
        justify-content: stretch;
    }
}

@media (max-width: 768px) {
    .ce-page,
    .ce-order-form,
    .ce-register-grid,
    .ce-account-dashboard,
    .ce-front-orders,
    .ce-front-order-management,
    .ce-front-catalog-management,
    .ce-front-member-management,
    .ce-management-dashboard,
    .ce-catalog-workspace {
        max-width: 100%;
    }

    .ce-form-grid,
    .ce-order-line {
        grid-template-columns: 1fr;
    }

    .ce-panel,
    .ce-account-panel,
    .ce-order-login-required,
    .ce-account-notice,
    .ce-order-builder,
    .ce-order-summary-panel,
    .ce-commerce-card {
        padding: 18px;
    }

    .ce-commerce-top,
    .ce-order-card-head,
    .ce-order-card-actions,
    .ce-inline-status-form,
    .ce-between {
        align-items: stretch;
        flex-direction: column;
    }

    .ce-button,
    .ce-order-card-actions button,
    .ce-order-card-actions .ce-button,
    .ce-inline-status-form button,
    .ce-inline-status-form .ce-button {
        width: 100%;
    }
}

/* ===== Dashboard / blocs d'action générés par le plugin ===== */

.ce-grid-2,
.ce-actions-grid,
.ce-dashboard-grid {
    display: grid;
    gap: 22px;
}

.ce-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ce-actions-grid,
.ce-dashboard-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 30px 0;
}

.ce-action-card {
    position: relative;
    display: block;
    min-height: 190px;
    padding: 24px;
    border: 1px solid rgba(194, 164, 95, 0.52);
    background: linear-gradient(180deg, rgba(12, 22, 16, 0.92), rgba(4, 7, 5, 0.96));
    color: var(--ce-text) !important;
    text-decoration: none !important;
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.62), inset 0 0 16px rgba(255, 255, 255, 0.025);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.ce-action-card::before {
    content: "";
    position: absolute;
    inset: 8px;
    border: 1px solid rgba(194, 164, 95, 0.16);
    pointer-events: none;
}

.ce-action-card:hover {
    transform: translateY(-3px);
    border-color: rgba(230, 202, 132, 0.88);
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.78), 0 0 24px rgba(27, 128, 86, 0.24);
}

.ce-action-icon,
.ce-action-title,
.ce-action-text {
    display: block;
}

.ce-action-icon {
    margin-bottom: 16px;
    color: var(--ce-emerald);
    font-size: 24px;
    text-shadow: 0 0 12px rgba(47, 159, 114, 0.65);
}

.ce-action-title {
    margin-bottom: 14px;
    color: var(--ce-title);
    font-size: 21px;
    font-weight: 900;
    line-height: 1.2;
}

.ce-action-text {
    color: var(--ce-text-soft);
    font-size: 15px;
    line-height: 1.55;
}

.ce-rights-panel,
.ce-global-library,
.ce-library-tree,
.ce-catalog-tree,
.ce-commerce-settings,
.ce-commerce-offers {
    min-width: 0;
}

.ce-rp-locked-field {
    opacity: 0.98;
}

@media (max-width: 1000px) {
    .ce-actions-grid,
    .ce-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .ce-action-card {
        min-height: auto;
    }
}

@media (max-width: 768px) {
    .ce-grid-2 {
        grid-template-columns: 1fr;
    }
}
