.abm-wrap { max-width: 1180px; }
            .abm-hero {
                background: linear-gradient(135deg, #0f172a, #0b5fff 60%, #18b3ff);
                color: #fff;
                border-radius: 20px;
                padding: 28px 30px;
                margin: 18px 0 24px;
                box-shadow: 0 20px 40px rgba(15, 23, 42, 0.18);
            }
            .abm-hero__row {
                display: flex;
                gap: 24px;
                align-items: center;
                justify-content: space-between;
                flex-wrap: wrap;
            }
            .abm-brand { display: flex; align-items: center; gap: 18px; }
            .abm-brand__logo {
                width: 88px;
                height: 88px;
                border-radius: 22px;
            }
            .abm-upgrade-note {
                border: 1px dashed #93c5fd;
                background: #eff6ff;
                padding: 14px 16px;
                border-radius: 14px;
                margin-top: 10px;
            }
            .abm-upgrade-note p { margin: 8px 0 0; }
            .abm-feature-chip {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                padding: 6px 10px;
                border-radius: 999px;
                background: rgba(255,255,255,.14);
                font-size: 12px;
                margin: 4px 8px 0 0;
            }
            .abm-locked {
                opacity: .58;
                pointer-events: none;
            }
            .abm-feature-list {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
                gap: 12px;
            }
            .abm-feature-list .abm-callout strong { display: block; margin-bottom: 6px; }
            .abm-help-list { margin: 0 0 0 18px; }
            .abm-checklist { margin: 0; padding: 0; list-style: none; }
            .abm-checklist li {
                display: flex;
                justify-content: space-between;
                gap: 12px;
                padding: 10px 0;
                border-bottom: 1px solid #eef2f7;
            }
            .abm-checklist li:last-child { border-bottom: 0; }
            .abm-checklist__status-ok { color: #15803d; font-weight: 600; }
            .abm-checklist__status-warn { color: #b45309; font-weight: 600; }
            .abm-inline-badge {
                display:inline-block;
                padding:4px 8px;
                border-radius:999px;
                background:#e0f2fe;
                color:#075985;
                font-size:12px;
                margin-left:8px;
            }
            @media (max-width: 782px) {
                .abm-brand__logo {
                    width: 72px;
                    height: 72px;
                    border-radius: 18px;
                }
            }
            .abm-brand__eyebrow {
                text-transform: uppercase;
                letter-spacing: .08em;
                font-size: 12px;
                opacity: .78;
                margin-bottom: 6px;
            }
            .abm-brand h1 { color: #fff; margin: 0 0 8px; font-size: 30px; line-height: 1.1; }
            .abm-brand p { margin: 0; opacity: .92; max-width: 760px; font-size: 14px; }
            .abm-hero__actions { display: flex; gap: 10px; flex-wrap: wrap; }
            .abm-button--ghost {
                background: rgba(255,255,255,.14) !important;
                border-color: rgba(255,255,255,.25) !important;
                color: #fff !important;
            }
            .abm-button--danger {
                background: rgba(255,255,255,.94) !important;
                border-color: #fecaca !important;
                color: #b91c1c !important;
            }
            .abm-button--danger:hover,
            .abm-button--danger:focus {
                background: #fee2e2 !important;
                border-color: #fca5a5 !important;
                color: #991b1b !important;
            }
            .abm-grid { display: grid; gap: 16px; }
            .abm-grid--3 { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
            .abm-grid--2 { grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }
            .abm-card {
                background: #fff;
                border: 1px solid #dcdcde;
                border-radius: 16px;
                padding: 18px 20px;
                box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
            }
            .abm-card + .abm-card { margin-top: 16px; }
            .abm-card h2, .abm-card h3 { margin-top: 0; }
            .abm-card--metric { padding: 18px; }
            .abm-metric-label { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: #50575e; margin-bottom: 8px; }
            .abm-metric-value { font-size: 30px; font-weight: 700; line-height: 1; color: #0f172a; }
            .abm-metric-sub { margin-top: 8px; color: #50575e; }
            .abm-badges { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
            .abm-front-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
            .abm-front-badge { background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.16); padding: 5px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; }
            .abm-badge {
                display: inline-flex; align-items: center; gap: 6px;
                padding: 5px 10px; border-radius: 999px; font-size: 12px;
                background: #eef2ff; color: #1d4ed8; font-weight: 600;
            }
            .abm-badge--success { background: #ecfdf3; color: #027a48; }
            .abm-badge--warn { background: #fff7ed; color: #c2410c; }
            .abm-badge--danger { background: #fef2f2; color: #b91c1c; }
            .abm-kicker { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: #50575e; margin-bottom: 10px; }
            .abm-section-title { display:flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
            .abm-section-title p { margin: 0; color: #50575e; }
            .abm-checklist { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
            .abm-checklist li {
                display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px;
                border: 1px solid #e5e7eb; border-radius: 12px; background: #fcfcfd;
            }
            .abm-checklist__icon {
                width: 26px; height: 26px; border-radius: 999px; flex: 0 0 26px;
                display: inline-flex; align-items: center; justify-content: center;
                font-weight: 700; background: #eef2ff; color: #1d4ed8;
            }
            .abm-checklist li.is-complete .abm-checklist__icon { background: #dcfce7; color: #166534; }
            .abm-checklist li.is-missing .abm-checklist__icon { background: #fef3c7; color: #92400e; }
            .abm-card .form-table th { width: 220px; }
            .abm-form-grid { display: grid; gap: 16px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
            .abm-field { display: grid; gap: 6px; }
            .abm-field label { font-weight: 600; }
            .abm-field input[type="text"], .abm-field input[type="email"], .abm-field input[type="number"], .abm-field input[type="datetime-local"], .abm-field select, .abm-field textarea {
                width: 100%;
            }
            .abm-pill-row { display: flex; flex-wrap: wrap; gap: 10px; }
            .abm-option-grid { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
            .abm-option {
                border: 1px solid #e5e7eb; border-radius: 12px; padding: 12px 14px; background: #fff;
            }
            .abm-option label { display: flex; gap: 10px; align-items: flex-start; font-weight: 600; }
            .abm-option small { display: block; color: #50575e; margin-top: 4px; line-height: 1.45; }
            .abm-portal-checks { display: flex; flex-wrap: wrap; gap: 10px 18px; margin: 8px 0 12px; }
            .abm-portal-checks label { white-space: nowrap; }
            .abm-toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
            .abm-toolbar .button { margin: 0; }
            .abm-empty {
                padding: 28px; border: 1px dashed #cbd5e1; border-radius: 16px; background: #f8fafc;
                text-align: center;
            }
            .abm-table td, .abm-table th { vertical-align: middle; }
            .abm-table .button { white-space: nowrap; }

            .abm-table--catalog { table-layout: fixed; width: 100%; }
            .abm-table--catalog th, .abm-table--catalog td { overflow-wrap: normal; word-break: normal; vertical-align: top; }
            .abm-table--catalog col.abm-col-package { width: 20%; }
            .abm-table--catalog col.abm-col-status { width: 11%; }
            .abm-table--catalog col.abm-col-price { width: 9%; }
            .abm-table--catalog col.abm-col-summary { width: 48%; }
            .abm-table--catalog col.abm-col-action { width: 12%; }
            .abm-table--catalog td:nth-child(2), .abm-table--catalog th:nth-child(2), .abm-table--catalog td:nth-child(3), .abm-table--catalog th:nth-child(3), .abm-table--catalog td:nth-child(5), .abm-table--catalog th:nth-child(5) { white-space: nowrap; }
            .abm-table--catalog td:nth-child(5), .abm-table--catalog th:nth-child(5) { text-align: left; }
            .abm-table--catalog td:nth-child(5) .button, .abm-table--catalog td:nth-child(5) select { max-width: 104px; min-width: 104px; font-size: 12px; }

            /* Keep commercial product descriptions inside a dedicated, wider wrapping column. */
            .abm-table--products col.abm-col-package { width: 19%; }
            .abm-table--products col.abm-col-price { width: 10%; }
            .abm-table--products col.abm-col-summary { width: 51%; }
            .abm-table--products col.abm-col-status { width: 9%; }
            .abm-table--products col.abm-col-action { width: 11%; }
            .abm-table--products td:nth-child(3), .abm-table--products th:nth-child(3) { white-space: normal; overflow-wrap: anywhere; line-height: 1.45; }
            .abm-table--products td:nth-child(4), .abm-table--products th:nth-child(4) { white-space: normal; }
            .abm-inline-help { color: #50575e; margin: 6px 0 0; }
            .abm-status-card { display:flex; flex-direction:column; gap: 10px; }
            .abm-status-card h3 { margin-bottom: 0; }
            .abm-notice-box { border-left: 4px solid #2271b1; padding: 12px 14px; background: #f0f6fc; border-radius: 8px; margin: 16px 0; }
            .abm-notice-box--success { border-left-color: #16a34a; background: #ecfdf3; }
            .abm-notice-box--warn { border-left-color: #d97706; background: #fffbeb; }
            .abm-split { display:grid; grid-template-columns: minmax(0,1.6fr) minmax(320px,1fr); gap: 16px; align-items: start; }
            .abm-meta-list { margin: 0; display: grid; gap: 10px; }
            .abm-meta-list div { display: flex; justify-content: space-between; gap: 12px; border-bottom: 1px solid #f1f5f9; padding-bottom: 8px; }
            .abm-meta-list dt { color: #50575e; }
            .abm-meta-list dd { margin: 0; font-weight: 600; }
            .abm-preview-link { word-break: break-all; }
            .abm-callout { padding: 14px 16px; border-radius: 14px; background: #f8fafc; border: 1px solid #e2e8f0; }
            .abm-callout h4 { margin: 0 0 8px; }
            .abm-subdued { color: #50575e; }
            @media (max-width: 960px) {
                .abm-split { grid-template-columns: 1fr; }
            }
