.mekj-jp-search { --mekj-border: #d8dee8; --mekj-ink: #182230; --mekj-muted: #667085; max-width: 1180px; margin: 0 auto; color: var(--mekj-ink); }
.mekj-jp-search-form { padding: 22px; border: 1px solid var(--mekj-border); border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(16,24,40,.05); }
.mekj-jp-search label { display: flex; flex-direction: column; gap: 7px; font-size: 13px; font-weight: 650; }
.mekj-jp-keyword { margin-bottom: 16px; }
.mekj-jp-search input, .mekj-jp-search select { width: 100%; min-height: 43px; padding: 9px 11px; border: 1px solid var(--mekj-border); border-radius: 8px; background: #fff; color: var(--mekj-ink); font: inherit; font-weight: 400; }
.mekj-jp-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.mekj-jp-search-actions { display: flex; gap: 10px; margin-top: 18px; }
.mekj-jp-search-actions button { min-height: 42px; padding: 9px 17px; border: 1px solid #1f4f82; border-radius: 8px; background: #1f4f82; color: #fff; cursor: pointer; font-weight: 650; }
.mekj-jp-search-actions .mekj-jp-reset { border-color: var(--mekj-border); background: #fff; color: var(--mekj-ink); }
.mekj-jp-search-status { margin: 20px 0 12px; color: var(--mekj-muted); font-size: 13px; }
.mekj-jp-results { display: grid; gap: 12px; }
.mekj-jp-job-card { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 20px; border: 1px solid var(--mekj-border); border-radius: 12px; background: #fff; }
.mekj-jp-job-card h3 { margin: 0 0 5px; font-size: 19px; line-height: 1.35; }
.mekj-jp-job-card h3 a { color: inherit; text-decoration: none; }
.mekj-jp-job-card h3 a:hover { text-decoration: underline; }
.mekj-jp-employer { margin: 0 0 7px; color: #344054; font-weight: 650; }
.mekj-jp-excerpt { margin: 0 0 12px; color: var(--mekj-muted); font-size: 14px; line-height: 1.55; }
.mekj-jp-job-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.mekj-jp-job-tags span { display: inline-block; padding: 4px 8px; border-radius: 5px; background: #f2f4f7; color: #344054; font-size: 12px; }
.mekj-jp-job-tags .mekj-jp-salary { background: #eaf6ee; color: #17663a; }
.mekj-jp-view-job { flex: 0 0 auto; padding: 9px 12px; border: 1px solid var(--mekj-border); border-radius: 7px; color: var(--mekj-ink); font-size: 13px; font-weight: 650; text-decoration: none; }
.mekj-jp-empty { padding: 28px; border: 1px dashed var(--mekj-border); border-radius: 12px; text-align: center; }
.mekj-jp-empty p { margin-bottom: 0; color: var(--mekj-muted); }
@media (max-width: 800px) { .mekj-jp-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .mekj-jp-filter-grid { grid-template-columns: 1fr; } .mekj-jp-job-card { align-items: flex-start; flex-direction: column; } }

/* Single job and company profile pages */
.mekj-jp-single { max-width: 1180px; margin: 36px auto 64px; padding: 0 20px; }
.mekj-jp-single-article { min-width: 0; }
.mekj-jp-single-header { margin-bottom: 26px; padding: clamp(20px,4vw,36px); border: 1px solid #e0e5ec; border-radius: 16px; background: #fff; }
.mekj-jp-eyebrow { margin: 0 0 8px; color: #526071; font-size: 12px; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.mekj-jp-single-header h1 { margin: 0 0 12px; line-height: 1.15; overflow-wrap: anywhere; }
.mekj-jp-single-company { margin: 0 0 12px; font-size: 17px; font-weight: 650; }
.mekj-jp-single-company a { text-decoration: none; }
.mekj-jp-single-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; color: #566273; font-size: 13px; }
.mekj-jp-status-pill { display: inline-block; padding: 3px 8px; border-radius: 999px; }
.mekj-jp-status-pill.is-warning { background: #fff3d6; color: #785000; }
.mekj-jp-snapshot { margin: 24px 0; padding: 22px; border: 1px solid #e0e5ec; border-radius: 14px; background: #fff; }
.mekj-jp-snapshot h2 { margin: 0 0 8px; font-size: 21px; }
.mekj-jp-snapshot-intro { margin: 0 0 14px; color: #566273; }
.mekj-jp-snapshot-scroll { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid #e0e5ec; border-radius: 8px; }
.mekj-jp-snapshot-scroll:focus-visible { outline: 2px solid #2271b1; outline-offset: 2px; }
.mekj-jp-snapshot-table { width: max-content; min-width: 100%; margin: 0; border-collapse: separate; border-spacing: 0; }
.mekj-jp-snapshot-table th, .mekj-jp-snapshot-table td { min-width: 150px; max-width: 280px; padding: 12px 14px; border: 0; border-right: 1px solid #e0e5ec; border-bottom: 1px solid #e0e5ec; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.mekj-jp-snapshot-table th { background: #f4f6f9; font-size: 13px; font-weight: 750; }
.mekj-jp-snapshot-table td { color: #344054; font-size: 14px; }
.mekj-jp-snapshot-table tr > *:last-child { border-right: 0; }
.mekj-jp-snapshot-table tbody tr:last-child > * { border-bottom: 0; }
.mekj-jp-apply-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 24px 0; }
.mekj-jp-apply-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 12px 24px; border-radius: 8px; background: #174f84; color: #fff !important; text-decoration: none !important; font-weight: 750; box-shadow: 0 4px 10px rgba(23,79,132,.16); }
.mekj-jp-apply-button:hover { filter: brightness(.94); }
.mekj-jp-apply-note { margin: 0; color: #667085; font-size: 12px; }
.mekj-jp-closed-notice, .mekj-jp-missing-apply { margin-top: 18px; padding: 14px 16px; border-radius: 8px; background: #fff5e6; color: #654600; }
.mekj-jp-job-content { overflow-wrap: anywhere; line-height: 1.75; }
.mekj-jp-job-content h2, .mekj-jp-job-content h3 { margin-top: 1.5em; }
.mekj-jp-source-link { margin-top: 28px; padding-top: 16px; border-top: 1px solid #e0e5ec; font-size: 13px; }
.mekj-jp-apply-wrap.is-bottom { margin-top: 30px; }
.mekj-jp-company-logo { margin-bottom: 18px; }
.mekj-jp-company-logo img { width: 100px; height: 100px; object-fit: contain; border: 1px solid #e0e5ec; border-radius: 12px; padding: 8px; }
.mekj-jp-company-jobs { margin-top: 40px; }
.mekj-jp-company-jobs h2 { margin-bottom: 16px; }
.mekj-jp-company-job-list { display: grid; gap: 12px; }
@media (max-width: 600px) { .mekj-jp-single { margin-top: 18px; padding: 0 12px; } .mekj-jp-snapshot { padding: 14px; } .mekj-jp-snapshot-table th, .mekj-jp-snapshot-table td { min-width: 135px; padding: 10px; } .mekj-jp-apply-button { width: 100%; } }

/* Subscription, contact form and featured job-promotion components */
.mekj-jp-communications-form { max-width: 900px; margin: 20px 0; padding: 22px; border: 1px solid #e0e5ec; border-radius: 14px; background: #fff; }
.mekj-jp-form-field { display: flex; flex-direction: column; gap: 7px; margin-bottom: 15px; font-size: 14px; font-weight: 650; }
.mekj-jp-form-field input, .mekj-jp-form-field select, .mekj-jp-form-field textarea { box-sizing: border-box; width: 100%; min-height: 42px; padding: 10px 12px; border: 1px solid #d0d5dd; border-radius: 7px; background: #fff; color: #182230; font: inherit; font-weight: 400; }
.mekj-jp-form-field select[multiple] { min-height: 100px; }
.mekj-jp-form-help { color: #667085; font-size: 13px; }
.mekj-jp-preference-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.mekj-jp-consent { display: flex; align-items: flex-start; gap: 9px; margin: 16px 0; font-size: 13px; line-height: 1.5; }
.mekj-jp-consent input { margin-top: 4px; }
.mekj-jp-comm-button { display: inline-flex; min-height: 43px; align-items: center; justify-content: center; padding: 10px 17px; border: 0; border-radius: 8px; background: #174f84; color: #fff; cursor: pointer; font: inherit; font-weight: 750; }
.mekj-jp-form-message { max-width: 900px; margin: 12px 0; padding: 13px 15px; border: 1px solid #d0d5dd; border-radius: 8px; background: #f8fafc; color: #344054; }
.mekj-jp-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.mekj-jp-promo-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; max-width: 1180px; margin: 20px auto; }
.mekj-jp-promo-card { min-width: 0; overflow: hidden; display: flex; flex-direction: column; border: 1px solid #e0e5ec; border-radius: 13px; background: #fff; box-shadow: 0 5px 18px rgba(16,24,40,.04); }
.mekj-jp-promo-image { display: flex; min-height: 125px; max-height: 190px; overflow: hidden; align-items: center; justify-content: center; background: #f4f6f9; }
.mekj-jp-promo-image img { width: 100%; height: 180px; object-fit: cover; }
.mekj-jp-promo-content { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 16px; }
.mekj-jp-promo-label { display: inline-flex; margin-bottom: 8px; padding: 4px 8px; border-radius: 5px; background: #fff0d5; color: #704900; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.mekj-jp-promo-content h3 { margin: 0 0 8px; font-size: 18px; line-height: 1.35; }
.mekj-jp-promo-content h3 a { color: inherit; text-decoration: none; }
.mekj-jp-promo-content p { margin: 0 0 14px; color: #667085; font-size: 13px; line-height: 1.55; }
.mekj-jp-promo-link { margin-top: auto; font-weight: 750; font-size: 13px; text-decoration: none; }
@media (max-width: 850px) { .mekj-jp-promo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) { .mekj-jp-preference-grid, .mekj-jp-promo-grid { grid-template-columns: 1fr; } .mekj-jp-communications-form { padding: 15px; } }

.mekj-jp-company-pagination { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.mekj-jp-company-pagination .page-numbers { display:inline-block; padding:7px 11px; border:1px solid #d0d5dd; border-radius:6px; text-decoration:none; }
.mekj-jp-company-pagination .current { background:#174f84; color:#fff; border-color:#174f84; }

/* v0.4.0: readable, bounded snapshot table */
.mekj-jp-snapshot-scroll { max-height: 320px; overflow-x: auto; overflow-y: auto; }
.mekj-jp-snapshot-table td { white-space: normal; }
.mekj-jp-snapshot-table td:first-child { white-space: normal; }
.mekj-jp-snapshot-table td { line-height: 1.55; }
.mekj-jp-apply-wrap:not(.is-bottom) { display:none !important; }
/* Site-wide promotion bulletin: pauses on hover/focus and reveals a compact preview card. */
.mekj-jp-promo-ticker { position:relative; z-index:20; display:flex; align-items:center; gap:14px; width:100%; min-height:42px; padding:7px clamp(12px,3vw,28px); box-sizing:border-box; background:#12283f; color:#fff; border-bottom:2px solid #e2a23a; }
.mekj-jp-promo-ticker-label { flex:0 0 auto; padding:5px 8px; border-radius:4px; background:#e2a23a; color:#152334; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.mekj-jp-promo-ticker-track { display:flex; flex:1; gap:22px; min-width:0; overflow-x:auto; scrollbar-width:thin; }
.mekj-jp-promo-ticker-item { position:relative; flex:0 0 auto; max-width:min(360px,75vw); color:#fff !important; text-decoration:none !important; font-size:13px; font-weight:700; }
.mekj-jp-promo-ticker-title { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mekj-jp-promo-ticker-preview { position:fixed; z-index:99990; display:none; top:58px; left:16px; width:280px; max-width:75vw; padding:13px 15px; border:1px solid #d0d5dd; border-radius:9px; background:#fff; color:#344054; box-shadow:0 12px 30px rgba(16,24,40,.2); white-space:normal; font-size:12px; font-weight:400; line-height:1.5; }
.mekj-jp-promo-ticker-item:hover .mekj-jp-promo-ticker-preview, .mekj-jp-promo-ticker-item:focus .mekj-jp-promo-ticker-preview { display:block; }
.mekj-jp-alert-launcher { position:fixed; z-index:9998; left:16px; bottom:22px; display:flex; align-items:center; gap:9px; min-height:52px; padding:8px 15px 8px 9px; border:0; border-radius:999px; background:#174f84; color:#fff; box-shadow:0 8px 28px rgba(16,24,40,.28); cursor:pointer; font:inherit; font-size:13px; font-weight:750; }
.mekj-jp-alert-launcher-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#fff; color:#174f84; font-size:18px; }
.mekj-jp-alert-overlay[hidden] { display:none !important; }
.mekj-jp-alert-overlay { position:fixed; z-index:99999; inset:0; display:flex; align-items:center; justify-content:center; padding:16px; background:rgba(12,24,38,.62); }
.mekj-jp-alert-dialog { position:relative; width:min(760px,100%); max-height:88vh; overflow:auto; padding:24px; border-radius:16px; background:#fff; color:#182230; box-shadow:0 24px 80px rgba(0,0,0,.3); }
.mekj-jp-alert-dialog h2 { margin:0 36px 6px 0; font-size:24px; }
.mekj-jp-alert-dialog > p { margin:0 0 10px; color:#667085; }
.mekj-jp-alert-dialog .mekj-jp-communications-form { margin:12px 0 0; padding:0; border:0; box-shadow:none; }
.mekj-jp-alert-dialog .mekj-jp-preference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mekj-jp-alert-close { position:absolute; top:12px; right:12px; width:38px; height:38px; border:1px solid #d0d5dd; border-radius:50%; background:#fff; color:#182230; cursor:pointer; font-size:25px; line-height:1; }
body.mekj-jp-modal-open { overflow:hidden; }
@media (max-width:600px) { .mekj-jp-promo-ticker { gap:8px; padding:7px 10px; } .mekj-jp-promo-ticker-label { font-size:9px; } .mekj-jp-promo-ticker-track { gap:14px; } .mekj-jp-alert-launcher { left:10px; bottom:12px; } .mekj-jp-alert-dialog { padding:20px 14px; } .mekj-jp-alert-dialog .mekj-jp-preference-grid { grid-template-columns:1fr; } }

/* v0.4.1: compact independently scrollable cells and searchable checkbox preferences */
.mekj-jp-snapshot-scroll { max-width: 100%; max-height: 330px; overflow: auto; overscroll-behavior: contain; }
.mekj-jp-snapshot-table { min-width: max-content; }
.mekj-jp-snapshot-table th { position: sticky; top: 0; z-index: 2; }
.mekj-jp-pref-picker { min-width: 0; margin: 0; padding: 10px; border: 1px solid #d0d5dd; border-radius: 9px; background: #fbfcfe; }
.mekj-jp-pref-picker legend { padding: 0 5px; color: #182230; font-size: 13px; font-weight: 750; }
.mekj-jp-pref-search-label { display: block; margin-bottom: 7px; }
.mekj-jp-pref-search { box-sizing: border-box; min-height: 36px !important; padding: 7px 9px !important; }
.mekj-jp-pref-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.mekj-jp-pref-actions button { padding: 5px 8px; border: 1px solid #c5d0dd; border-radius: 5px; background: #fff; color: #174f84; font: inherit; font-size: 11px; font-weight: 700; cursor: pointer; }
.mekj-jp-pref-options { max-height: 158px; overflow: auto; padding: 5px 7px; border: 1px solid #e0e5ec; border-radius: 6px; background: #fff; }
.mekj-jp-pref-option { display: flex; align-items: flex-start; gap: 7px; padding: 5px 1px; color: #344054; font-size: 12px; font-weight: 450; line-height: 1.35; }
.mekj-jp-pref-option input { flex: 0 0 auto; width: auto; min-height: 0; margin: 2px 0 0; }
.mekj-jp-pref-option[hidden] { display: none !important; }
.mekj-jp-danger-button { background: #9e2f2f; }
.mekj-jp-danger-button:hover { background: #7f1d1d; }
.mekj-jp-subscriber-edit { margin: 18px 0; padding: 18px; border: 1px solid #d0d5dd; border-radius: 9px; background: #fff; }
.mekj-jp-subscriber-edit-fields { display: grid; grid-template-columns: repeat(3,minmax(180px,1fr)); gap: 12px; margin-bottom: 16px; }
.mekj-jp-subscriber-edit-fields label { display: flex; flex-direction: column; gap: 5px; font-weight: 650; }
.mekj-jp-subscriber-edit-fields input, .mekj-jp-subscriber-edit-fields select { min-height: 36px; }
@media (max-width: 720px) { .mekj-jp-subscriber-edit-fields { grid-template-columns: 1fr; } }

/* Promotion ticker hover card: thumbnail is loaded only when the visitor hovers/focuses an item. */
.mekj-jp-promo-ticker { min-height: 48px; }
.mekj-jp-promo-ticker-item { max-width: min(420px,76vw); padding: 3px 0; }
.mekj-jp-promo-ticker-title { display: flex; align-items: center; gap: 5px; }
.mekj-jp-promo-ticker-arrow { color: #f6c66c; }
.mekj-jp-promo-ticker-preview { display: none; position: fixed; z-index: 100000; top: 58px; left: 16px; box-sizing: border-box; width: min(360px, calc(100vw - 24px)); padding: 0; overflow: hidden; border: 1px solid #d5deea; border-radius: 13px; background: #fff; color: #182230; box-shadow: 0 16px 42px rgba(8,27,48,.25); white-space: normal; font-size: 13px; font-weight: 400; line-height: 1.5; pointer-events: none; }
.mekj-jp-promo-ticker-item:hover .mekj-jp-promo-ticker-preview, .mekj-jp-promo-ticker-item:focus .mekj-jp-promo-ticker-preview, .mekj-jp-promo-ticker-item:focus-visible .mekj-jp-promo-ticker-preview { display: block; }
.mekj-jp-promo-preview-image { display: block; width: 100%; max-height: 165px; overflow: hidden; background: #edf2f7; }
.mekj-jp-promo-preview-image img { display: block; width: 100%; height: 160px; object-fit: cover; }
.mekj-jp-promo-preview-body { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; padding: 14px 16px 15px; }
.mekj-jp-promo-preview-label { display: inline-block; border-radius: 999px; padding: 3px 8px; background: #fff0d5; color: #704900; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.mekj-jp-promo-preview-body strong { font-size: 16px; line-height: 1.3; }
.mekj-jp-promo-preview-description { display: block; max-height: 72px; overflow: auto; color: #566273; }
.mekj-jp-promo-preview-cta { display: inline-flex; align-items: center; gap: 6px; margin-top: 2px; color: #174f84; font-weight: 800; }
@media (prefers-reduced-motion: no-preference) { .mekj-jp-promo-ticker-item:hover .mekj-jp-promo-ticker-preview, .mekj-jp-promo-ticker-item:focus .mekj-jp-promo-ticker-preview { animation: mekj-promo-pop .13s ease-out; } @keyframes mekj-promo-pop { from { opacity: .65; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } } }
.mekj-jp-pref-picker { box-sizing: border-box; }


/* v0.4.2: readable cells; only the complete summary table scrolls. */
.mekj-jp-snapshot-table th, .mekj-jp-snapshot-table td { white-space:normal; overflow-wrap:anywhere; }
.mekj-jp-snapshot-scroll { max-width:100%; max-height:330px; overflow:auto; overscroll-behavior:contain; }

/* Small preference pickers: two columns even on mobile, with two visible options per category. */
.mekj-jp-alert-dialog { box-sizing:border-box; width:100%; max-height:calc(100vh - 150px); padding:15px; overflow:auto; }
.mekj-jp-alert-dialog h2 { font-size:20px; }
.mekj-jp-alert-dialog > p { margin-bottom:5px; font-size:13px; }
.mekj-jp-alert-dialog .mekj-jp-communications-form { margin-top:8px; }
.mekj-jp-alert-dialog .mekj-jp-form-field { gap:4px; margin-bottom:8px; font-size:12px; }
.mekj-jp-alert-dialog .mekj-jp-form-field input { min-height:34px; padding:7px 9px; }
.mekj-jp-alert-dialog .mekj-jp-preference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.mekj-jp-alert-dialog .mekj-jp-pref-picker { min-width:0; padding:6px; border-radius:7px; }
.mekj-jp-alert-dialog .mekj-jp-pref-picker legend { font-size:11px; line-height:1.2; }
.mekj-jp-alert-dialog .mekj-jp-pref-search-label { margin-bottom:4px; }
.mekj-jp-alert-dialog .mekj-jp-pref-search { min-height:29px !important; padding:4px 6px !important; font-size:11px; }
.mekj-jp-alert-dialog .mekj-jp-pref-actions { gap:3px; margin-bottom:4px; }
.mekj-jp-alert-dialog .mekj-jp-pref-actions button { min-height:23px; padding:3px 5px; font-size:9px; line-height:1.1; }
.mekj-jp-alert-dialog .mekj-jp-pref-options { box-sizing:border-box; max-height:40px; padding:3px 4px; }
.mekj-jp-alert-dialog .mekj-jp-pref-option { gap:4px; padding:3px 0; font-size:10px; line-height:1.2; overflow-wrap:anywhere; }
.mekj-jp-alert-dialog .mekj-jp-pref-option input { width:12px; height:12px; margin-top:1px; }
.mekj-jp-alert-dialog .mekj-jp-consent { gap:6px; margin:9px 0; font-size:11px; line-height:1.35; }
.mekj-jp-alert-dialog .mekj-jp-comm-button { min-height:36px; padding:8px 12px; font-size:12px; }

/* Floating launcher and its compact panel sit on the right, above common back-to-top controls. */
.mekj-jp-alert-launcher { z-index:2147483646 !important; left:auto !important; right:20px !important; bottom:78px !important; min-height:44px; padding:6px 12px 6px 7px; }
.mekj-jp-alert-launcher-icon { width:30px; height:30px; }
.mekj-jp-alert-overlay { z-index:2147483647 !important; position:fixed; inset:auto 18px 134px auto; display:flex; align-items:flex-end; justify-content:flex-end; box-sizing:border-box; width:min(500px,calc(100vw - 28px)); max-height:calc(100vh - 150px); padding:0; overflow:visible; background:transparent; }
.mekj-jp-alert-overlay[hidden] { display:none !important; }
.mekj-jp-alert-dialog { width:100%; border:1px solid #d0d5dd; border-radius:13px; box-shadow:0 18px 48px rgba(16,24,40,.28); }

/* Promotion preview is moved to document body and must sit above sticky headers. */
.mekj-jp-promo-ticker-preview { z-index:2147483647 !important; }
@media (max-width:600px) {
  .mekj-jp-preference-grid, .mekj-jp-alert-dialog .mekj-jp-preference-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:5px; }
  .mekj-jp-alert-launcher { right:12px !important; bottom:76px !important; left:auto !important; }
  .mekj-jp-alert-overlay { right:8px; bottom:128px; width:calc(100vw - 16px); max-height:calc(100vh - 140px); }
  .mekj-jp-alert-dialog { max-height:calc(100vh - 145px); padding:11px; }
}
