
html, body { margin: 0; height: 100%; background: #f1f0f3; }
#reader { position: fixed; inset: 0; }
/*! pdfMax Reader | Copyright (c) 2026 Mohsen Alyafei | MIT licence */
.pmx {
  --pmx-brand: #5c0632;
  --pmx-brand-tint: #f3e7ed;
  --pmx-brand-ink: #5c0632;
  --pmx-ink: #1d1b20;
  --pmx-slate: #5f5b66;
  --pmx-line: #e3e0e6;
  --pmx-bar: #ffffff;
  --pmx-side: #faf9fb;
  --pmx-canvas: #f1f0f3;
  --pmx-pill: #f1eff3;
  --pmx-hit: rgba(255, 213, 0, .42);
  --pmx-hit-cur: rgba(255, 140, 0, .55);
  --pmx-pop: #ffffff;
  --pmx-shadow: 0 10px 30px -10px rgba(40, 10, 25, .35);
  position: relative; display: flex; flex-direction: column; height: 100%; min-height: 360px; overflow: hidden;
  font: 13px/1.35 "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, Inter, Roboto, "Noto Sans", sans-serif;
  color: var(--pmx-ink); background: var(--pmx-canvas);
}
.pmx[data-theme="dark"] {
  --pmx-brand-tint: #4a2a39; --pmx-brand-ink: #f2b6d0; --pmx-ink: #ece9ef; --pmx-slate: #aaa4b1; --pmx-line: #36323b;
  --pmx-bar: #222026; --pmx-side: #1d1b21; --pmx-canvas: #2a282e; --pmx-pill: #34303a; --pmx-pop: #2c2930;
  --pmx-shadow: 0 16px 40px -8px rgba(0, 0, 0, .6);
}
/* Arabic interface: Noto Naskh Arabic (bundled, SIL Open Font Licence) for Arabic letters; Latin, digits in shortcuts, and symbols keep the system font. */
.pmx[dir="rtl"] { font-family: "pdfMax UI Arabic", "Segoe UI", Tahoma, "Noto Sans Arabic", system-ui, sans-serif; }
.pmx *, .pmx *::before, .pmx *::after { box-sizing: border-box; }
.pmx button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
.pmx :focus-visible { outline: 2px solid var(--pmx-brand-ink); outline-offset: 1px; }
.pmx svg.pmx-i { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.pmx[dir="rtl"] svg.pmx-i.pmx-flip { transform: scaleX(-1); }
/* Style A2: an icon's key lines (pmx-ia) take its group's colour, and its inside (pmx-if, and any
   other closed shape) a light tint of it; without a group colour, the icon's own colour is used. */
.pmx svg.pmx-i .pmx-ia { stroke: var(--pmx-iacc, currentColor); }
.pmx svg.pmx-i .pmx-if { fill: var(--pmx-iacc, currentColor); fill-opacity: .26; stroke: none; }
.pmx[data-theme="dark"] svg.pmx-i .pmx-if { fill-opacity: .38; }
.pmx:not(.pmx-mono) svg.pmx-i :is(rect, circle, ellipse, path[d$="z" i]):not([fill]):not(.pmx-if):not(.pmx-io) { fill: var(--pmx-iacc, currentColor); fill-opacity: .14; }
.pmx.pmx-mono svg.pmx-i .pmx-ia { stroke: currentColor; }
.pmx.pmx-mono svg.pmx-i .pmx-if { fill: currentColor; fill-opacity: .1; }
.pmx .pmx-grow { flex: 1; }
.pmx .pmx-hide { display: none !important; }

/* Bar */
.pmx-bar { position: relative; display: flex; align-items: center; gap: 2px; height: 48px; padding: 0 8px; background: var(--pmx-bar); border-bottom: 1px solid var(--pmx-line); flex: none; z-index: 3; }
.pmx-ib { height: 34px; min-width: 34px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 8px; border-radius: 8px; white-space: nowrap; }
.pmx-ib:hover { background: var(--pmx-pill); }
.pmx-ib[aria-pressed="true"], .pmx-ib.pmx-on { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-ib:disabled { opacity: .4; cursor: default; }
.pmx-ib .pmx-lab { display: none; }
.pmx.pmx-classic .pmx-ib.pmx-lbl .pmx-lab { display: inline; }
.pmx.pmx-classic .pmx-mid { position: static; transform: none; margin-inline-start: 8px; }
.pmx.pmx-classic .pmx-name { display: none; }
.pmx-name { font-weight: 600; margin-inline: 4px 10px; max-width: 26ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-mid { position: absolute; inset-inline-start: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 4px; }
.pmx[dir="rtl"] .pmx-mid { transform: translateX(50%); }
.pmx-pill { height: 30px; display: inline-flex; align-items: center; gap: 6px; padding: 0 10px; border-radius: 15px; background: var(--pmx-pill); }
.pmx-pill input { width: 40px; height: 22px; border: 0; border-radius: 5px; text-align: center; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-pill select { border: 0; background: transparent; font: inherit; color: inherit; height: 28px; cursor: pointer; }
.pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; flex: none; }
.pmx.pmx-narrow .pmx-mid { position: static; transform: none; }
.pmx.pmx-narrow .pmx-name, .pmx.pmx-narrow .pmx-wide { display: none; }
/* Still crowded: buttons show their pictures only. */
.pmx.pmx-tight .pmx-bar .pmx-ib .pmx-lab { display: none !important; }
.pmx-bar > * { flex-shrink: 0; }

/* Classic layout: menu bar, labels on buttons */
.pmx-menubar { display: none; height: 30px; align-items: center; gap: 2px; padding: 0 6px; background: var(--pmx-bar); border-bottom: 1px solid var(--pmx-line); flex: none; }
.pmx.pmx-classic .pmx-menubar { display: flex; }
.pmx-menubar > button { padding: 4px 9px; border-radius: 5px; }
.pmx-menubar > button:hover, .pmx-menubar > button[aria-expanded="true"] { background: var(--pmx-pill); }

/* Menus */
.pmx-menu { position: absolute; z-index: 30; min-width: 230px; padding: 6px; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); }
.pmx-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding-block: 5px; padding-inline: 6px 10px; border-radius: 6px; text-align: start; }
.pmx-menu > button { min-height: 28px; }
.pmx-menu button:hover, .pmx-menu button:focus-visible { background: var(--pmx-pill); }
.pmx-menu button .pmx-k { margin-inline-start: auto; color: var(--pmx-slate); font-size: 12px; }
.pmx-menu button[aria-checked="true"]::after { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--pmx-brand-ink); margin-inline-start: 8px; }
.pmx-menu hr { border: 0; border-top: 1px solid var(--pmx-line); margin: 5px 4px; }

/* Main area */
.pmx-main { position: relative; flex: 1; display: flex; min-height: 0; }
.pmx-side { width: 232px; flex: none; display: flex; flex-direction: column; background: var(--pmx-side); border-inline-end: 1px solid var(--pmx-line); min-height: 0; }
.pmx-tabs { display: flex; flex-wrap: wrap; gap: 2px; padding: 8px 6px 4px; }
.pmx-tabs button { flex: 1 0 21px; min-width: 21px; height: 32px; border-radius: 7px; display: inline-flex; align-items: center; justify-content: center; color: var(--pmx-slate); }
.pmx-tabs button[aria-selected="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-panel { flex: 1; overflow: auto; padding: 6px 8px 16px; min-height: 0; }
.pmx-panel h3 { font-size: 12px; font-weight: 600; color: var(--pmx-slate); margin: 6px 6px 8px; }
.pmx-thumb { display: flex; flex-direction: column; align-items: center; gap: 4px; margin: 0 auto 12px; padding: 4px; border-radius: 6px; font-size: 11px; color: var(--pmx-slate); width: 100%; }
.pmx-thumb canvas, .pmx-thumb .pmx-tph { background: #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.15); }
.pmx-thumb[aria-current="page"] canvas, .pmx-thumb[aria-current="page"] .pmx-tph { outline: 2px solid var(--pmx-brand-ink); outline-offset: 3px; }
.pmx-ol button { display: flex; width: 100%; padding: 5px 8px; border-radius: 6px; text-align: start; gap: 6px; }
.pmx-ol button:hover { background: var(--pmx-pill); }
.pmx-ol button[aria-current="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); font-weight: 600; box-shadow: inset 3px 0 0 var(--pmx-brand-ink); }
.pmx[dir="rtl"] .pmx-ol button[aria-current="true"] { box-shadow: inset -3px 0 0 var(--pmx-brand-ink); }
.pmx-ol .pmx-ol { padding-inline-start: 14px; }
.pmx-res button { display: block; width: 100%; padding: 7px 8px; border-radius: 6px; text-align: start; border-bottom: 1px solid var(--pmx-line); }
.pmx-res button:hover { background: var(--pmx-pill); }
.pmx-res button[aria-current="true"] { background: rgba(255, 158, 61, .14); box-shadow: inset 3px 0 0 #ff9e3d; }
.pmx-res small { display: block; color: var(--pmx-slate); font-size: 11px; margin-top: 2px; }
.pmx-res mark { background: rgba(255, 213, 0, .55); color: inherit; border-radius: 2px; }
.pmx-empty { color: var(--pmx-slate); padding: 10px 8px; }

/* Views and pages */
.pmx-views { flex: 1; display: flex; min-width: 0; }
.pmx-view { position: relative; flex: 1; min-width: 0; display: flex; flex-direction: column; }
.pmx-view + .pmx-view { border-inline-start: 2px solid var(--pmx-line); }
.pmx-vlabel { display: none; padding: 4px 12px; font-size: 12px; color: var(--pmx-slate); background: var(--pmx-side); border-bottom: 1px solid var(--pmx-line); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pmx.pmx-compare .pmx-vlabel { display: flex; gap: 8px; align-items: center; }
.pmx-scroll { position: relative; flex: 1; overflow: auto; outline: none; scroll-behavior: auto; }
.pmx .pmx-scroll:focus, .pmx .pmx-scroll:focus-visible { outline: none; }
.pmx-pages { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 18px 16px 80px; min-width: max-content; }
.pmx-pages.pmx-spread { display: grid; grid-template-columns: repeat(2, max-content); justify-content: center; align-items: center; justify-items: center; }
.pmx-page { position: relative; flex: none; background: #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.08), 0 2px 8px rgba(0,0,0,.16); }
.pmx[data-theme="dark"] .pmx-page { box-shadow: 0 6px 24px rgba(0,0,0,.5); }
.pmx-sheet { position: absolute; top: 0; left: 0; transform-origin: center center; }
.pmx-sheet canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
.pmx-sheet canvas.pmx-detail { inset: auto; pointer-events: none; }
.pmx-layer { position: absolute; top: 0; left: 0; transform-origin: 0 0; }
.pmx-text { line-height: 1; white-space: pre; color: transparent; user-select: text; cursor: text; }
.pmx-text span { position: absolute; transform-origin: 0 0; white-space: pre; }
.pmx-text ::selection { background: rgba(0, 90, 220, .3); color: transparent; }
.pmx-hits div { position: absolute; background: var(--pmx-hit); mix-blend-mode: multiply; border-radius: 1px; pointer-events: none; }
.pmx-hits div.pmx-cur { background: var(--pmx-hit-cur); outline: 1.5px solid #c45f00; }
/* The form layer covers the page; only its fields take the pointer, so the text between
   them can still be selected. */
.pmx-form { pointer-events: none; }
.pmx-form > * { pointer-events: auto; }
.pmx-form input, .pmx-form textarea, .pmx-form select { position: absolute; border: 1px var(--pmx-field-box, solid) var(--pmx-field-line, rgba(60, 110, 200, .55)); background: var(--pmx-field, rgb(225, 236, 255)); color: #000; font-family: Arial, Helvetica, sans-serif; padding: 0 2px; border-radius: 0; margin: 0; }
/* A multi-line field keeps its size, as in Acrobat: no resize handle. */
.pmx-form textarea { resize: none; overflow: auto; }
.pmx-form input[type="checkbox"], .pmx-form input[type="radio"] { accent-color: #1d4ed8; background: transparent; }
/* The field being typed in keeps its one box: its border turns dashed, in a deeper blue (a
   required field's in its own colour). Nothing is drawn outside it. */
.pmx-form :focus { outline: none; }
.pmx .pmx-form input:not([type="checkbox"]):not([type="radio"]):focus, .pmx .pmx-form textarea:focus, .pmx .pmx-form select:focus { border: 1px dashed #1d4ed8; outline: none; }
.pmx .pmx-form input[type="checkbox"]:focus, .pmx .pmx-form input[type="radio"]:focus { outline: 1px dashed #1d4ed8; outline-offset: 1px; }
.pmx-placing .pmx-sheet { cursor: crosshair; }

/* Floating find */
.pmx-find { position: absolute; top: 10px; inset-inline-end: 16px; width: 360px; max-width: calc(100% - 32px); z-index: 6; padding: 8px; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); }
.pmx-find .pmx-q { display: flex; align-items: center; gap: 6px; border: 1.5px solid var(--pmx-brand-ink); border-radius: 7px; padding: 2px 4px 2px 8px; background: var(--pmx-bar); }
.pmx-find input[type="search"] { flex: 1; border: 0; font: inherit; color: inherit; background: transparent; height: 28px; min-width: 0; outline: none; }
.pmx-find .pmx-count { color: var(--pmx-slate); font-size: 12px; white-space: nowrap; }
.pmx-find .pmx-q .pmx-ib { height: 28px; min-width: 28px; padding: 0 4px; }
.pmx-find .pmx-replace { margin-top: 6px; border-color: var(--pmx-line); }
.pmx-find .pmx-replace.pmx-hide { display: none; }
.pmx-find .pmx-replace svg { width: 16px; height: 16px; flex-shrink: 0; }
.pmx-find .pmx-replace input { flex: 1; border: 0; font: inherit; color: inherit; background: transparent; height: 28px; min-width: 0; outline: none; }
.pmx-find .pmx-replace .pmx-btn { height: 26px; padding: 0 8px; font-size: 12px; white-space: nowrap; }
.pmx-opts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 7px; font-size: 12px; }
.pmx-opts button { padding: 3px 10px; border-radius: 12px; background: var(--pmx-pill); }
.pmx-opts button[aria-pressed="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }

/* Status line */
.pmx-status { display: flex; gap: 16px; align-items: center; height: 24px; padding: 0 12px; font-size: 11.5px; color: var(--pmx-slate); background: var(--pmx-side); border-top: 1px solid var(--pmx-line); flex: none; }
/* The status bar (statusbar.js): Foxit's layout with Word's items */
.pmx-status.pmx-sb { gap: 2px; height: 32px; padding: 0 6px; overflow: hidden; white-space: nowrap; }
.pmx-sbg, .pmx-sbin { display: inline-flex; align-items: center; gap: 1px; flex: none; }
.pmx-sbmid { margin-inline-start: 8px; gap: 2px; min-width: 0; }
.pmx-sbsep { width: 1px; height: 18px; background: var(--pmx-line); margin: 0 6px; }
.pmx-sbb, .pmx-sbi, .pmx-sbpm { font: inherit; color: var(--pmx-ink); background: none; border: 0; border-radius: 5px; height: 26px; display: inline-flex; align-items: center; gap: 5px; padding: 0 5px; cursor: pointer; }
.pmx-sbb:hover:not(:disabled), .pmx-sbi:hover:not(:disabled), .pmx-sbpm:hover:not(:disabled) { background: var(--pmx-pill); }
.pmx-sbb.pmx-on { background: var(--pmx-pill); box-shadow: inset 0 0 0 1px var(--pmx-line); }
.pmx-sbb:disabled, .pmx-sbpm:disabled { opacity: .35; cursor: default; }
.pmx-sbi { color: var(--pmx-slate); font-size: 12px; } .pmx-sbi:disabled { cursor: default; opacity: 1; }
.pmx-sbi.pmx-hot { color: var(--pmx-ink); } .pmx-sbi.pmx-warn span { color: #b45f06; }
.pmx[data-theme="dark"] .pmx-sbi.pmx-warn span { color: #f0b06a; }
.pmx-sbi svg { flex: none; }
.pmx-sbbox { display: inline-flex; align-items: center; border: 1px solid var(--pmx-line); border-radius: 5px; height: 24px; background: var(--pmx-pop); margin: 0 3px; }
.pmx-sbbox input { border: 0; background: transparent; color: var(--pmx-ink); font: inherit; font-size: 12px; height: 22px; padding: 0 2px 0 7px; outline: none; font-variant-numeric: tabular-nums; text-align: end; }
.pmx-sbbox input:focus { text-align: start; }
.pmx-sbof { font-size: 12px; color: var(--pmx-slate); padding-inline-end: 6px; }
.pmx-sbzoom { width: 52px; }
.pmx-sbdd { border: 0; border-inline-start: 1px solid var(--pmx-line); background: none; height: 100%; display: inline-flex; align-items: center; padding: 0 3px; color: var(--pmx-slate); cursor: pointer; border-radius: 0 4px 4px 0; }
.pmx-sbpm { font-size: 15px; width: 22px; justify-content: center; padding: 0; color: var(--pmx-slate); }
.pmx-sbslide { width: 110px; accent-color: var(--pmx-slate); margin: 0 2px; height: 14px; }
.pmx[dir="rtl"] .pmx-sbnav svg { transform: scaleX(-1); }
.pmx-sbpop { min-width: 190px; overflow: auto; }
.pmx-sbpop button { display: flex; align-items: center; gap: 8px; width: 100%; text-align: start; }
.pmx-sbpop button small { margin-inline-start: auto; color: var(--pmx-slate); padding-inline-start: 14px; }
.pmx-sbpop button.pmx-on { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-sbpop .pmx-sbck { width: 14px; display: inline-block; }
.pmx-sbpages { width: 340px; } .pmx-sbpages .pmx-sbml { min-width: 3ch; } .pmx-sbpages small.pmx-sbline { margin-inline-start: 6px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0; flex: 1; }
.pmx-sbcustom { width: 320px; }
.pmx-rail.pmx-railgone { display: none !important; }
.pmx-wcdlg { width: min(460px, 94vw); }
.pmx-wcdlg .pmx-wcname { margin: -4px 0 8px; color: var(--pmx-slate); }
.pmx-wcscope { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 10px; }
.pmx-wcscope label { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.pmx-wcrange { width: 70px; margin-inline-start: 6px; padding: 2px 6px; border: 1px solid var(--pmx-line); border-radius: 5px; background: var(--pmx-bar); color: inherit; font: inherit; }
.pmx-wctable { width: 100%; border-collapse: collapse; }
.pmx-wctable td { padding: 5px 0; border-bottom: 1px solid var(--pmx-line); }
.pmx-wctable td.pmx-wcn { text-align: end; font-variant-numeric: tabular-nums; }
.pmx-wctable tr.pmx-wcsub td:first-child { padding-inline-start: 18px; color: var(--pmx-slate); }
.pmx-wcnotes { display: flex; align-items: center; gap: 6px; margin-top: 10px; }

/* Focus mode */
.pmx.pmx-focus { --pmx-canvas: #242228; }
.pmx.pmx-focus .pmx-bar, .pmx.pmx-focus .pmx-menubar, .pmx.pmx-focus .pmx-side, .pmx.pmx-focus .pmx-status { display: none; }
.pmx-dock { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); z-index: 8; display: none; align-items: center; gap: 2px; padding: 6px; border-radius: 16px; color: #ece9ef;
  background: rgba(40, 37, 44, .92); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 16px 40px rgba(0,0,0,.5); transition: opacity .25s; }
.pmx.pmx-focus .pmx-dock { display: flex; }
.pmx.pmx-focus.pmx-idle .pmx-dock { opacity: 0; pointer-events: none; }
.pmx-dock .pmx-ib:hover { background: rgba(255,255,255,.1); }
.pmx-dock .pmx-ib.pmx-on { background: var(--pmx-brand); color: #fff; }
.pmx-dock .pmx-num { padding: 0 10px; font-size: 13px; }
.pmx-dock .pmx-vr { background: rgba(255,255,255,.16); }
@media (prefers-reduced-motion: reduce) { .pmx-dock { transition: none; } }

/* Command box (Ctrl+K) */
.pmx-veil { position: absolute; inset: 0; z-index: 20; background: rgba(15, 12, 18, .38); display: flex; justify-content: center; align-items: flex-start; padding-top: 10vh; }
.pmx-pal { width: min(620px, calc(100% - 32px)); max-height: 70%; display: flex; flex-direction: column; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 14px; box-shadow: var(--pmx-shadow); overflow: hidden; }
.pmx-pal .pmx-in { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid var(--pmx-line); }
.pmx-pal .pmx-in input { flex: 1; border: 0; font: inherit; font-size: 15px; color: inherit; background: transparent; outline: none; }
.pmx-pal .pmx-list { overflow: auto; padding: 4px 0 8px; }
.pmx-pal .pmx-grp { padding: 8px 16px 4px; font-size: 11.5px; color: var(--pmx-slate); }
.pmx-pal .pmx-it { display: flex; align-items: center; gap: 12px; padding: 8px 16px; width: 100%; text-align: start; }
.pmx-pal .pmx-it[aria-selected="true"] { background: var(--pmx-brand-tint); box-shadow: inset 3px 0 0 var(--pmx-brand-ink); }
.pmx[dir="rtl"] .pmx-pal .pmx-it[aria-selected="true"] { box-shadow: inset -3px 0 0 var(--pmx-brand-ink); }
.pmx-pal .pmx-it .pmx-ctx { color: var(--pmx-slate); font-size: 12px; white-space: nowrap; }
.pmx-pal .pmx-it .pmx-t { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-pal .pmx-it mark { background: transparent; color: var(--pmx-brand-ink); font-weight: 600; }
.pmx kbd { font: 11px inherit; font-family: inherit; border: 1px solid var(--pmx-line); border-bottom-width: 2px; border-radius: 4px; padding: 0 5px; color: var(--pmx-slate); margin-inline-start: 2px; }
.pmx-pal .pmx-keys { margin-inline-start: auto; display: flex; }

/* Dialogs */
.pmx-dlg { width: min(520px, calc(100% - 32px)); background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 14px; box-shadow: var(--pmx-shadow); padding: 18px 20px; align-self: flex-start; }
.pmx-dlg h2 { font-size: 16px; margin: 0 0 12px; }
.pmx-dlg dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; }
.pmx-dlg dt { color: var(--pmx-slate); }
.pmx-dlg dd { margin: 0; overflow-wrap: anywhere; }
.pmx-dlg .pmx-acts { display: flex; justify-content: flex-end; gap: 8px; margin-top: 16px; }
.pmx-btn { height: 32px; padding: 0 14px; border-radius: 8px; background: var(--pmx-pill); }
.pmx-btn.pmx-pri { background: var(--pmx-brand); color: #fff; }
.pmx-pad { width: 100%; height: 170px; background: #fff; border: 1px dashed #b9b1bf; border-radius: 8px; touch-action: none; cursor: crosshair; }
.pmx-dlg input[type="password"], .pmx-dlg input[type="text"], .pmx-linkeddlg input[type="number"] { width: 100%; height: 34px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 10px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-dlg .pmx-seg { display: inline-flex; border: 1px solid var(--pmx-line); border-radius: 8px; overflow: hidden; margin-bottom: 10px; }
.pmx-dlg .pmx-seg button { padding: 5px 12px; }
.pmx-dlg .pmx-seg button[aria-pressed="true"] { background: var(--pmx-brand); color: #fff; }
.pmx-typed { font: italic 34px/170px "Segoe Script", "Brush Script MT", cursive; text-align: center; color: #102a6b; overflow: hidden; }

/* Empty state, drop, toast */
.pmx-start { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; text-align: center; padding: 24px; color: var(--pmx-slate); }
.pmx-start strong { font-size: 20px; color: var(--pmx-ink); font-weight: 600; }
.pmx-start .pmx-btn { height: 38px; padding: 0 20px; font-size: 14px; }
.pmx-drop { position: absolute; inset: 8px; z-index: 25; border: 2px dashed var(--pmx-brand-ink); border-radius: 14px; background: rgba(92, 6, 50, .08); display: grid; place-items: center; font-size: 16px; color: var(--pmx-brand-ink); pointer-events: none; }
.pmx-toast { pointer-events: none; position: absolute; bottom: 34px; left: 50%; transform: translateX(-50%); z-index: 40; padding: 8px 14px; border-radius: 9px; background: #2b2830; color: #fff; font-size: 12.5px; box-shadow: var(--pmx-shadow); max-width: calc(100% - 32px); }

/* Printing: only the prepared page images */
.pmx-print { display: none; }
@media print {
  body.pmx-printing > *:not(.pmx-print-host) { display: none !important; }
  body.pmx-printing .pmx-print-host { display: block !important; }
  .pmx-print-host img { display: block; width: 100%; height: auto; break-after: page; }
  @page { margin: 0; }
}
.pmx-form .pmx-calc { background: rgb(236, 236, 240); border-style: dashed; }
.pmx-placing .pmx-toast { pointer-events: none; }
.pmx-toast.pmx-fetch { pointer-events: auto; }

/* A page that holds the Reader with toolbar: 'none' shows only the pages. */
.pmx-nobar .pmx-bar, .pmx-nobar .pmx-menubar { display: none !important; }

.pmx-closedoc { min-width: 28px; height: 28px; padding: 0 4px; margin-inline-start: -6px; opacity: .7; }
.pmx-closedoc:hover { opacity: 1; }

/*! pdfMax Reader editing | Copyright (c) 2026 Mohsen Alyafei | MIT licence */
/* Edit bar */
/* The edit bar wraps on to a second row when the window is narrow (nothing is squeezed or
   hidden behind a scroll bar). */
.pmx-ebar { display: flex; flex-wrap: wrap; align-items: center; gap: 2px; min-height: 34px; padding: 2px 8px; background: var(--pmx-bar); border-bottom: 1px solid var(--pmx-line); flex: none; z-index: 2; }
.pmx-ebar > *, .pmx-etools > *, .pmx-props > * { flex-shrink: 0; }
.pmx-etools, .pmx-props { flex-wrap: wrap; }
.pmx-ebar .pmx-ib { height: 28px; min-width: 28px; }
/* The edit bar is as low as the tool row (34 px): 28 px buttons with 3 px above and below (larger for fingers). */
.pmx:not(.pmx-touch) .pmx-ebar :is(.pmx-ib, .pmx-shsplit, .pmx-track, .pmx-ebstate) { max-height: 28px; }
.pmx-etools, .pmx-props { display: flex; align-items: center; gap: 2px; }
.pmx-ebar .pmx-vr, .pmx-etools .pmx-vr { width: 1px; height: 22px; background: var(--pmx-line); margin: 0 4px; flex: none; }
.pmx-swatches { display: flex; gap: 4px; padding: 0 4px; }
.pmx-sw { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--pmx-bar) !important; box-shadow: 0 0 0 1px var(--pmx-line); flex: none; }
.pmx-sw:hover { box-shadow: 0 0 0 2px var(--pmx-brand-ink); }
.pmx-props select { height: 28px; border: 1px solid var(--pmx-line); border-radius: 7px; background: var(--pmx-bar); color: inherit; font: inherit; padding: 0 4px; margin-inline-start: 4px; }
.pmx-ib.pmx-done { background: var(--pmx-brand); color: #fff; }
.pmx-ib.pmx-done:hover { background: var(--pmx-brand); filter: brightness(1.15); }
.pmx[data-theme="dark"] .pmx-ib.pmx-done { background: var(--pmx-brand-ink); color: #1d1b21; }
.pmx.pmx-classic .pmx-ebar .pmx-ib.pmx-lbl .pmx-lab, .pmx-ebar .pmx-ib.pmx-done .pmx-lab, .pmx-orgbar .pmx-ib.pmx-lbl .pmx-lab { display: inline; }
.pmx.pmx-focus .pmx-ebar { display: none; }

/* Interaction layer */
.pmx-ann { z-index: 4; }
.pmx.pmx-editing .pmx-text { pointer-events: none; }
.pmx.pmx-editing .pmx-form { pointer-events: none; }
.pmx-boxes { position: absolute; inset: 0; }
.pmx[data-tool="select"] .pmx-ann { cursor: default; }
.pmx[data-tool="highlight"] .pmx-ann, .pmx[data-tool="underline"] .pmx-ann, .pmx[data-tool="strike"] .pmx-ann, .pmx[data-tool="squiggly"] .pmx-ann { cursor: text; }
.pmx[data-tool="note"] .pmx-ann, .pmx[data-tool="stamp"] .pmx-ann { cursor: copy; }
.pmx[data-tool="pen"] .pmx-ann, .pmx[data-tool="rect"] .pmx-ann, .pmx[data-tool="ellipse"] .pmx-ann, .pmx[data-tool="line"] .pmx-ann, .pmx[data-tool="arrow"] .pmx-ann, .pmx[data-tool="textbox"] .pmx-ann { cursor: crosshair; }
.pmx-hb { position: absolute; border-radius: 1px; }
.pmx[data-tool="select"] .pmx-hb { cursor: move; }
.pmx[data-tool="select"] .pmx-hb.pmx-ro { cursor: pointer; }
.pmx[data-tool="select"] .pmx-hb:hover { outline: 1px dashed var(--pmx-brand-ink); outline-offset: 1px; }
.pmx:not([data-tool="select"]) .pmx-hb { pointer-events: none; }
.pmx-hb.pmx-sel { outline: 1.5px solid var(--pmx-brand-ink); outline-offset: 1px; background: rgba(92, 6, 50, .05); }
.pmx-hb.pmx-moving { background: rgba(92, 6, 50, .1); }
.pmx-h { position: absolute; width: 7px; height: 7px; background: #fff; border: 1.2px solid var(--pmx-brand-ink); border-radius: 1px; }
.pmx-h-nw { left: -5px; top: -5px; cursor: nwse-resize; } .pmx-h-n { left: calc(50% - 4px); top: -5px; cursor: ns-resize; }
.pmx-h-ne { right: -5px; top: -5px; cursor: nesw-resize; } .pmx-h-e { right: -5px; top: calc(50% - 4px); cursor: ew-resize; }
.pmx-h-se { right: -5px; bottom: -5px; cursor: nwse-resize; } .pmx-h-s { left: calc(50% - 4px); bottom: -5px; cursor: ns-resize; }
.pmx-h-sw { left: -5px; bottom: -5px; cursor: nesw-resize; } .pmx-h-w { left: -5px; top: calc(50% - 4px); cursor: ew-resize; }
.pmx-prev { position: absolute; border: 1.5px dashed var(--pmx-brand-ink); pointer-events: none; }
.pmx-prevsvg, .pmx-prevmark { inset: 0; border: 0; }
.pmx-prevsvg svg { position: absolute; inset: 0; overflow: visible; }
.pmx-prevmark div { position: absolute; opacity: .4; mix-blend-mode: multiply; }
.pmx-fte { position: absolute; margin: 0; padding: 2px 3px; border: 1px dashed var(--pmx-brand-ink); background: rgba(255, 255, 255, .85); font-family: Helvetica, Arial, sans-serif; line-height: 1.15; resize: none; outline: none; overflow: hidden; }
.pmx-pop { position: absolute; width: 250px; padding: 10px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); transform-origin: 0 0; z-index: 5; font-size: 13px; }
.pmx-pophead { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
.pmx-pophead span { color: var(--pmx-slate); font-size: 12px; }
.pmx-pop textarea { width: 100%; min-height: 70px; resize: vertical; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 6px 8px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-pop .pmx-acts { margin-top: 8px; }

/* Comments panel */
.pmx-chead { display: flex; flex-direction: column; gap: 6px; padding: 4px 6px 8px; }
.pmx-chead input { height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-cpage { padding: 10px 8px 4px; font-size: 12px; color: var(--pmx-slate); }
.pmx-citem { display: flex; gap: 8px; width: 100%; text-align: start; padding: 7px 8px; border-radius: 8px; align-items: flex-start; }
.pmx-citem:hover { background: var(--pmx-pill); }
.pmx-citem.pmx-on { background: var(--pmx-brand-tint); }
.pmx-cdot { width: 10px; height: 10px; border-radius: 50%; margin-top: 4px; flex: none; box-shadow: 0 0 0 1px rgba(0, 0, 0, .15); }
.pmx-cbody { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pmx-cbody strong { font-weight: 600; font-size: 12.5px; }
.pmx-ctext { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; word-break: break-word; }
.pmx-cbody small { color: var(--pmx-slate); font-size: 11.5px; }

/* Organise pages */
.pmx-org { position: absolute; inset: 0; display: flex; flex-direction: column; background: var(--pmx-canvas); z-index: 6; }
.pmx-orgbar { display: flex; align-items: center; gap: 2px; height: 46px; padding: 0 8px; background: var(--pmx-bar); border-bottom: 1px solid var(--pmx-line); overflow-x: auto; flex: none; }
.pmx-orgcount { color: var(--pmx-slate); padding: 0 10px; white-space: nowrap; }
.pmx-orghint { padding: 8px 16px 0; color: var(--pmx-slate); font-size: 12px; }
.pmx-orggrid { flex: 1; overflow: auto; display: flex; flex-wrap: wrap; align-content: flex-start; gap: 18px; padding: 16px; outline: none; }
.pmx-oitem { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 8px; border-radius: 10px; cursor: grab; user-select: none; }
.pmx-oitem:hover { background: var(--pmx-pill); }
.pmx-oitem[aria-selected="true"] { background: var(--pmx-brand-tint); box-shadow: inset 0 0 0 2px var(--pmx-brand-ink); }
.pmx-oframe { width: 154px; height: 154px; display: flex; align-items: center; justify-content: center; }
.pmx-oframe canvas { background: #fff; box-shadow: 0 1px 4px rgba(0, 0, 0, .25); }
.pmx-oitem span { font-size: 12px; color: var(--pmx-slate); }
.pmx-omark { width: 3px; height: 170px; margin: 0 -10px; border-radius: 2px; background: var(--pmx-brand-ink); }
.pmx.pmx-organising .pmx-ebar { display: none; }
.pmx-addtext { background: rgba(255, 255, 255, .6); min-width: 60px; }
.pmx-dlg.pmx-marksdlg { width: min(560px, calc(100vw - 32px)); }
.pmx-seg.pmx-seg5 { flex-wrap: wrap; }
.pmx-mform { display: grid; grid-template-columns: 1fr; gap: 8px; margin: 12px 0; }
.pmx-mform label { display: grid; grid-template-columns: 130px 1fr; align-items: center; gap: 10px; }
.pmx-mform label.pmx-mcheck { grid-template-columns: 130px auto; justify-content: start; }
.pmx-mform input[type="text"], .pmx-mform input[type="number"], .pmx-mform select { height: 32px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; color: inherit; background: var(--pmx-bar); width: 100%; }
.pmx-mform .pmx-swatches { padding: 0; }
.pmx-sw[aria-pressed="true"] { box-shadow: 0 0 0 2px var(--pmx-brand-ink); }
.pmx-mhint { color: var(--pmx-slate); margin: -4px 0 0 140px; }
.pmx[dir="rtl"] .pmx-mhint { margin: -4px 140px 0 0; }
.pmx-mrange { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pmx-mrange label { grid-template-columns: auto 1fr; }
.pmx-mlist { border-top: 1px solid var(--pmx-line); padding-top: 10px; display: flex; flex-direction: column; gap: 6px; max-height: 180px; overflow: auto; }
.pmx-mitem { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.pmx-mitem .pmx-btn { height: 28px; }

/* Tracked editing */
.pmx[data-tool="edittext"] .pmx-ann { cursor: text; }
.pmx-trackgrp { display: flex; align-items: center; gap: 6px; flex: none; }
.pmx-track { display: inline-flex; align-items: center; gap: 8px; height: 30px; padding: 0 12px 0 8px; border-radius: 16px; background: var(--pmx-pill); font-weight: 600; white-space: nowrap; }
.pmx-track .pmx-lab { display: inline !important; }
.pmx-track .pmx-swi { width: 28px; height: 16px; border-radius: 8px; background: #cfcad3; position: relative; flex: none; }
.pmx-track .pmx-swi::after { content: ""; position: absolute; left: 2px; top: 2px; width: 12px; height: 12px; border-radius: 50%; background: #fff; transition: left .12s; }
.pmx-track[aria-pressed="true"] { background: var(--pmx-brand); color: #fff; }
.pmx-track[aria-pressed="true"] .pmx-swi { background: rgba(255, 255, 255, .35); }
.pmx-track[aria-pressed="true"] .pmx-swi::after { left: 14px; }
.pmx[data-theme="dark"] .pmx-track[aria-pressed="true"] { background: var(--pmx-brand-ink); color: #1d1b21; }
.pmx-trackgrp select { height: 28px; border: 1px solid var(--pmx-line); border-radius: 7px; background: var(--pmx-bar); color: inherit; font: inherit; padding: 0 4px; }
.pmx-revs { z-index: 5; pointer-events: none; }
.pmx-revs.pmx-live { pointer-events: auto; }
.pmx-rev { position: absolute; background: #fff; color: #000; white-space: pre-line; word-wrap: break-word; outline: none; pointer-events: none; }
.pmx-rev.pmx-revbar::before { content: ""; position: absolute; left: -16px; top: 2px; bottom: 2px; width: 2.5px; border-radius: 1px; background: #555; }
.pmx-rev[dir="rtl"].pmx-revbar::before { left: auto; right: -16px; }
.pmx-rev.pmx-revedit { pointer-events: auto; cursor: text; caret-color: #000; }
.pmx-revcover { position: absolute; background: #fff; pointer-events: none; }
.pmx-rev.pmx-revedit.pmx-revbar::before { display: none; }
.pmx .pmx-rev.pmx-revedit:focus, .pmx .pmx-rev.pmx-revedit:focus-visible { outline: none; }
.pmx-rev .pmx-ln { display: block; white-space: nowrap; }
.pmx-rev ins { text-decoration: underline; text-decoration-thickness: .08em; text-underline-offset: .12em; }
.pmx-rev del { text-decoration: line-through; text-decoration-thickness: .08em; }
.pmx-rev .pmx-fmt { border-bottom: 1.5px dotted; }
.pmx-tablabel { display: inline-block; text-indent: 0; white-space: nowrap; }
.pmx-cacts { display: flex; gap: 6px; flex-wrap: wrap; }
.pmx-btn.pmx-ok, .pmx-chacts .pmx-ok { color: #1b6e2f; }
.pmx-btn.pmx-no, .pmx-chacts .pmx-no { color: #b3261e; }
.pmx-chg { display: grid; grid-template-columns: 10px 1fr auto; gap: 8px; align-items: start; padding: 7px 8px; border-radius: 8px; }
.pmx-chg:hover { background: var(--pmx-pill); }
.pmx-chg.pmx-on { background: var(--pmx-brand-tint); }
.pmx-chg .pmx-cbody { text-align: start; padding: 0; }
.pmx-chacts { display: flex; gap: 4px; }
.pmx-chacts button { width: 26px; height: 26px; border-radius: 6px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); font-weight: 700; }
.pmx-saveopts { display: flex; flex-direction: column; gap: 8px; margin: 6px 0 4px; }
.pmx-saveopt { display: grid; grid-template-columns: 20px 1fr; gap: 8px; padding: 9px 10px; border: 1px solid var(--pmx-line); border-radius: 9px; cursor: pointer; }
.pmx-saveopt:has(input:checked) { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-saveopt b { display: block; margin-bottom: 2px; }
.pmx-saveopt span span { color: var(--pmx-slate); font-size: 12.5px; }
.pmx-chead .pmx-cacts { display: flex; flex-direction: row; gap: 6px; } .pmx-cacts .pmx-btn { flex: 1; height: 30px; padding: 0 8px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }

.pmx-cellpanel { position: absolute; z-index: 5; padding: 6px 8px 8px; background: #fff; border-radius: 8px; box-shadow: 0 0 0 1.5px var(--pmx-brand-ink), 0 6px 18px rgba(0, 0, 0, .18); pointer-events: auto; }
.pmx-cellhead { font: 600 9px/1.4 system-ui, sans-serif; color: #555; margin-bottom: 4px; }
.pmx-rev.pmx-inpanel { position: relative; box-shadow: none; background: #fff; }

/* Redaction */
.pmx-prevredact div { position: absolute; background: rgba(0, 0, 0, .32); box-shadow: inset 0 0 0 1.5px #d61f1f; }
.pmx-rhead .pmx-ropts { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.pmx-rhead .pmx-ropts input { flex: 1 1 100%; min-width: 0; }
.pmx-rlab { display: flex; align-items: center; gap: 4px; font-size: 12px; color: var(--pmx-slate); }
.pmx-rlab select, .pmx-rhead select { height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 4px; font: inherit; color: var(--pmx-ink); background: var(--pmx-bar); }
.pmx-rhead .pmx-pri { background: #b3261e; border-color: #b3261e; color: #fff; }
.pmx-rhead .pmx-pri:disabled { opacity: .45; }
.pmx-rfind { display: flex; flex-direction: column; gap: 6px; padding: 8px 6px; border-top: 1px solid var(--pmx-line); border-bottom: 1px solid var(--pmx-line); }
.pmx-rfind small { color: var(--pmx-slate); font-size: 11.5px; }
.pmx-rrow { display: flex; gap: 6px; }
.pmx-rrow input { flex: 1; min-width: 0; height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-rfind .pmx-btn { height: 30px; padding: 0 10px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-rpats { display: flex; flex-wrap: wrap; gap: 6px; }
.pmx-rpats .pmx-btn { height: 28px; font-size: 12px; }
.pmx-rmark { display: flex; gap: 8px; padding: 6px 8px; align-items: flex-start; }
.pmx-rmark .pmx-cbody { flex: 1; }
.pmx-rhid { padding: 10px 6px; }
.pmx-rhid .pmx-btn { flex: 1; height: 32px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-rreport .pmx-rok { color: #1e7d32; font-weight: 600; }
.pmx-rreport .pmx-rbad { color: #b3261e; font-weight: 600; }
.pmx-rreport .pmx-rnote { color: var(--pmx-slate); font-size: 12.5px; }
.pmx-rreport details { margin: 8px 0; }
.pmx-rreport .pmx-rtext { margin: 4px 0; font-size: 12.5px; overflow-wrap: anywhere; }
.pmx-hlist { display: flex; flex-direction: column; gap: 6px; max-height: 50vh; overflow: auto; margin: 6px 0; }
.pmx-hitem { display: grid; grid-template-columns: 20px 1fr; gap: 8px; padding: 8px 10px; border: 1px solid var(--pmx-line); border-radius: 9px; cursor: pointer; }
.pmx-hitem:has(input:checked) { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-hitem b { display: block; }
.pmx-hitem small, .pmx-hdet { display: block; color: var(--pmx-slate); font-size: 12px; overflow-wrap: anywhere; }

/* Form data */
.pmx-fdata h3 { font-size: 13.5px; margin: 14px 0 6px; }
.pmx-fdata .pmx-fdrow { display: flex; flex-wrap: wrap; gap: 6px; }
.pmx-fdata .pmx-btn { height: 30px; padding: 0 12px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-fdata .pmx-fdhint { color: var(--pmx-slate); font-size: 12.5px; margin: 0 0 6px; }

/* Form design */
.pmx-prevfield { position: absolute; border: 1.5px dashed var(--pmx-brand-ink); background: rgba(80, 120, 220, .12); }
.pmx-ann .pmx-hb[title^="Form field"], .pmx-ann .pmx-hb[title^="حقل نموذج"] { outline: 1px dashed rgba(60, 110, 200, .7); background: rgba(80, 120, 220, .08); }
.pmx-fprops { display: flex; flex-direction: column; gap: 6px; padding: 8px 6px 12px; border-bottom: 1px solid var(--pmx-line); }
.pmx-fprow { display: flex; flex-direction: column; gap: 3px; font-size: 12px; color: var(--pmx-slate); }
.pmx-fprow input, .pmx-fprow select, .pmx-fprow textarea { height: 28px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; font-size: 13px; color: var(--pmx-ink); background: var(--pmx-bar); }
.pmx-fprow textarea { height: auto; padding: 4px 8px; resize: vertical; }
.pmx-fpcheck { display: flex; align-items: center; gap: 6px; font-size: 13px; }
.pmx-fprops .pmx-btn { height: 30px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-fprops .pmx-no { color: #b3261e; }
.pmx-fhead .pmx-cacts { flex-direction: column; } .pmx-fhead .pmx-cacts .pmx-btn { width: 100%; }

/* Differences between two versions */
.pmx-diffs { pointer-events: none; }
.pmx-diffs div { position: absolute; border-radius: 2px; }
.pmx-diffs .pmx-d-delete.pmx-d-a, .pmx-diffs .pmx-d-replace.pmx-d-a { background: rgba(214, 40, 40, .22); box-shadow: inset 0 -1.5px 0 rgba(190, 20, 20, .8); }
.pmx-diffs .pmx-d-insert.pmx-d-b, .pmx-diffs .pmx-d-replace.pmx-d-b { background: rgba(30, 150, 70, .22); box-shadow: inset 0 -1.5px 0 rgba(20, 120, 50, .8); }
.pmx-diffs .pmx-d-move { background: rgba(120, 60, 200, .2); box-shadow: inset 0 -1.5px 0 rgba(100, 40, 180, .8); }
.pmx-diffs .pmx-d-renumber { background: rgba(120, 120, 120, .18); }
.pmx-diffs .pmx-d-caret { background: transparent; box-shadow: none; border-left: 2.5px solid #d61f1f; }
.pmx-diffs .pmx-d-b.pmx-d-caret { border-left-color: #d61f1f; }
.pmx-diffs .pmx-d-a.pmx-d-caret { border-left-color: #1e8f44; }
.pmx-diffs .pmx-d-cur { outline: 2px solid var(--pmx-brand-ink); outline-offset: 1px; }
.pmx-dhead small { color: var(--pmx-slate); font-size: 12px; }
.pmx-dhead .pmx-dkey { font-size: 11.5px; }
.pmx-dhead .pmx-btn { height: 30px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-ditem .pmx-ddel { color: #a3221c; text-decoration: line-through; }
.pmx-ditem .pmx-dins { color: #13703a; }
.pmx-ditem .pmx-dmov { color: #5b2aa8; }

/* Clause links */
.pmx-refs { pointer-events: none; }
.pmx-xref { position: absolute; pointer-events: auto; border-bottom: 1.5px dotted rgba(29, 78, 216, .85); cursor: pointer; }
.pmx-xref:hover, .pmx-xref:focus { background: rgba(29, 78, 216, .1); outline: none; }
.pmx-links { pointer-events: none; }
.pmx-alink { position: absolute; pointer-events: auto; cursor: pointer; border-radius: 2px; }
.pmx-alink:hover, .pmx-alink:focus-visible { background: rgba(29, 78, 216, .1); box-shadow: inset 0 0 0 1px rgba(29, 78, 216, .55); outline: none; }
.pmx-linkboxes { position: absolute; inset: 0; pointer-events: none; }
.pmx-linkbox { position: absolute; pointer-events: auto; cursor: pointer; border: 1.5px dashed #1d4ed8; background: rgba(29, 78, 216, .08); box-sizing: border-box; }
.pmx-linkbox:hover { background: rgba(29, 78, 216, .18); }
.pmx-prevlink div { position: absolute; background: rgba(29, 78, 216, .14); box-shadow: inset 0 0 0 1.5px #1d4ed8; }
.pmx-linkeddlg .pmx-linkkind { display: flex; align-items: center; gap: 6px; margin: 10px 0 4px; }
.pmx-linkeddlg input[type=text], .pmx-linkeddlg input[type=number] { width: 100%; box-sizing: border-box; }
.pmx-linkeddlg input:disabled { opacity: .5; }
.pmx-linkeddlg .pmx-err { color: #b42318; min-height: 1.2em; margin: 6px 0 0; }
[data-tool="link"] .pmx-ann { cursor: crosshair; }
.pmx-xpop { position: absolute; z-index: 30; width: 360px; max-width: calc(100% - 16px); padding: 10px 12px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); font-size: 13px; }
.pmx-xpop strong { display: block; margin-bottom: 4px; font-size: 12.5px; }
.pmx-xtext { white-space: pre-line; max-height: 180px; overflow: auto; line-height: 1.45; margin-bottom: 8px; }
.pmx-xpop .pmx-btn { height: 28px; padding: 0 10px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); }
.pmx-xflash { position: absolute; border-radius: 4px; background: rgba(255, 214, 0, .35); pointer-events: none; animation: pmx-xflash 1.6s ease-out forwards; }
@keyframes pmx-xflash { 0% { opacity: 1; } 70% { opacity: 1; } 100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .pmx-xflash { animation: none; } }

/* Versions in a file */
.pmx-vlist { display: flex; flex-direction: column; gap: 6px; max-height: 50vh; overflow: auto; margin: 6px 0; }
.pmx-vitem { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid var(--pmx-line); border-radius: 9px; }
.pmx-vitem b { display: block; }
.pmx-vitem small { color: var(--pmx-slate); font-size: 12px; }
.pmx-vacts { display: flex; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.pmx-vacts .pmx-btn { height: 28px; padding: 0 10px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); font-size: 12.5px; }
/* Signatures */
.pmx-sig { margin: 8px 6px; padding: 10px 12px; border: 1px solid var(--pmx-line); border-left-width: 4px; border-radius: 9px; font-size: 13px; }
.pmx-sig-good { border-left-color: #1e7d32; }
.pmx-sig-unknown { border-left-color: #b26a00; }
.pmx-sig-bad { border-left-color: #b3261e; }
.pmx-sigstate { font-weight: 700; font-size: 12.5px; margin-bottom: 4px; }
.pmx-sig-good .pmx-sigstate { color: #1e7d32; }
.pmx-sig-unknown .pmx-sigstate { color: #9a5b00; }
.pmx-sig-bad .pmx-sigstate { color: #b3261e; }
.pmx-sig p { margin: 4px 0; color: var(--pmx-slate); }
.pmx-sig dl { display: grid; grid-template-columns: max-content 1fr; gap: 2px 10px; margin: 6px 0; font-size: 12.5px; }
.pmx-sig dt { color: var(--pmx-slate); }
.pmx-sig dd { margin: 0; overflow-wrap: anywhere; }
.pmx-sig details { margin: 6px 0; }
.pmx-sig summary { cursor: pointer; font-size: 12.5px; color: var(--pmx-brand-ink); }
.pmx-sigcert { display: flex; flex-direction: column; gap: 1px; padding: 6px 0 4px 10px; border-left: 2px solid var(--pmx-line); margin: 4px 0 0 4px; }
.pmx-sigcert small { color: var(--pmx-slate); font-size: 11.5px; }
.pmx-sig .pmx-cacts { margin-top: 8px; }
/* Signing with a certificate */
.pmx-signbtn { display: block; margin: 4px 6px 8px; width: calc(100% - 12px); }
.pmx-signdlg { width: min(460px, calc(100vw - 32px)); }
.pmx-signdlg .pmx-muted { color: var(--pmx-slate); font-size: 13px; margin: 0 0 12px; }
.pmx-keyrow { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: 13px; }
.pmx-keyname { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--pmx-slate); }
.pmx-signdlg .pmx-field { display: grid; grid-template-columns: 130px 1fr; align-items: center; gap: 10px; margin: 0 0 8px; font-size: 13px; }
.pmx-signdlg .pmx-field input, .pmx-signdlg .pmx-field select { min-width: 0; padding: 6px 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; background: var(--pmx-bg, #fff); color: inherit; }
.pmx-keyinfo { min-height: 18px; margin: -2px 0 10px 140px; font-size: 12.5px; color: #1e7d32; }
.pmx-keyinfo.pmx-bad { color: #b3261e; }
[dir=rtl] .pmx-keyinfo { margin: -2px 140px 10px 0; }
@media (max-width: 520px) { .pmx-signdlg .pmx-field { grid-template-columns: 1fr; gap: 4px; } .pmx-keyinfo { margin-left: 0; margin-right: 0; } }
/* Pictures already in the document */
.pmx-hb.pmx-cropping { outline: 2px dashed #b26a00; outline-offset: 0; background: rgba(178, 106, 0, .06); }
.pmx-picdlg .pmx-acts { flex-wrap: wrap; }
.pmx-picdlg .pmx-picturn { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 10px; }
.pmx-picdlg .pmx-picturn span { font-size: 15px; line-height: 1; }
/* Shapes */
.pmx-shgal { position: absolute; z-index: 40; display: grid; grid-template-columns: repeat(6, 34px); gap: 4px; padding: 8px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: 0 8px 24px rgba(0, 0, 0, .18); }
.pmx-shk { width: 34px; height: 34px; border-radius: 7px; display: inline-flex; align-items: center; justify-content: center; color: var(--pmx-slate); }
.pmx-shk:hover, .pmx-shk:focus-visible { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-shk.pmx-on { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); outline: 1.5px solid var(--pmx-brand-ink); }
.pmx-shprev { color: var(--pmx-brand-ink); opacity: .55; }
.pmx-shprev svg { display: block; width: 100%; height: 100%; overflow: visible; }
.pmx-shprev svg * { vector-effect: non-scaling-stroke; }
.pmx-shprev svg { stroke-width: 1.5px; }
.pmx-hb.pmx-shbox.pmx-sel { outline: none; background: none; }
.pmx-shsel { position: absolute; outline: 1.5px solid var(--pmx-brand-ink); outline-offset: 2px; cursor: move; transform-origin: 50% 50%; z-index: 3; touch-action: none; }
.pmx-shsel .pmx-h { pointer-events: auto; }
.pmx-shrot { position: absolute; left: calc(50% - 7px); top: -30px; width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 2px solid var(--pmx-brand-ink); cursor: grab; box-sizing: border-box; }
.pmx-shrot::after { content: ''; position: absolute; left: 50%; top: 11px; width: 1.5px; height: 16px; background: var(--pmx-brand-ink); transform: translateX(-50%); }
.pmx-shang { position: absolute; right: -6px; bottom: -26px; font: 600 11px/1 system-ui, sans-serif; background: var(--pmx-brand-ink); color: #fff; padding: 3px 5px; border-radius: 5px; pointer-events: none; white-space: nowrap; }
.pmx-shpanel { position: absolute; z-index: 45; width: 290px; max-height: calc(100% - 16px); overflow: auto; padding: 10px 12px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: 0 12px 32px rgba(0, 0, 0, .2); font-size: 13px; }
.pmx-shhead { font-weight: 700; font-size: 12px; color: var(--pmx-slate); margin: 8px 0 4px; }
.pmx-shhead:first-child { margin-top: 0; font-size: 14px; color: inherit; }
.pmx-shrow { display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: 8px; margin: 4px 0; }
.pmx-shrow input[type=number], .pmx-shrow select { min-width: 0; height: 28px; padding: 0 6px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; color: inherit; background: var(--pmx-pop); }
.pmx-shrow input[type=number] { width: 64px; }
.pmx-shrow input[type=color] { width: 40px; height: 26px; padding: 0 2px; border: 1px solid var(--pmx-line); border-radius: 6px; background: none; }
.pmx-shrow input[type=range] { width: 100%; }
.pmx-shinline { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.pmx-btn.pmx-sm { height: 28px; min-width: 30px; padding: 0 6px; }
.pmx-shcheck { display: inline-flex; align-items: center; gap: 5px; }
.pmx-shtog { margin: 8px 0 2px; font-weight: 600; }
.pmx-shacts { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 10px; }
.pmx-shacts .pmx-btn { height: 30px; padding: 0 6px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); font-size: 12.5px; }
.pmx-repdlg .pmx-saveopt { display: flex; align-items: center; gap: 8px; margin: 6px 0; }
.pmx-repdlg input[type=text] { flex: 1; min-width: 0; height: 28px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; }
/* Page tools */
.pmx-bgdlg, .pmx-pgdlg { width: min(440px, calc(100vw - 32px)); }
.pmx-bgsw { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 4px 0 10px; }
.pmx-bgsw button { width: 30px; height: 30px; border-radius: 50%; border: 1px solid var(--pmx-line); }
.pmx-bgsw button[aria-checked="true"] { outline: 2.5px solid var(--pmx-brand-ink); outline-offset: 2px; }
.pmx-bgsw input[type=color] { width: 40px; height: 30px; padding: 0 2px; border: 1px solid var(--pmx-line); border-radius: 8px; background: none; }
.pmx-pgchoose .pmx-saveopt { display: flex; align-items: center; gap: 8px; margin: 5px 0; }
.pmx-pgchoose input[type=text] { flex: 1; min-width: 0; height: 28px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; }
/* Word Art */
.pmx-wagal { grid-template-columns: repeat(5, 64px); }
.pmx-wak { width: 64px; height: 46px; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid var(--pmx-line); overflow: hidden; }
.pmx-wak span { font: 700 22px/1 Arial, Helvetica, sans-serif; }
.pmx-wak:hover, .pmx-wak:focus-visible { outline: 2px solid var(--pmx-brand-ink); outline-offset: 1px; }
.pmx-wapanel .pmx-shrow input[type=text] { min-width: 0; height: 28px; padding: 0 6px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; color: inherit; background: var(--pmx-pop); }
.pmx-wapanel > .pmx-shinline { margin: 4px 0; }
/* Organising pages: thumbnail size, quick buttons, and dropping files. */
.pmx-orgsize { width: 110px; margin: 0 8px; accent-color: var(--pmx-brand-ink); flex: none; }
.pmx-oframe { position: relative; }
.pmx-oquick { position: absolute; top: 4px; inset-inline-end: 4px; display: flex; gap: 2px; opacity: 0; transition: opacity .12s; }
.pmx-oitem:hover .pmx-oquick, .pmx-oitem:focus-within .pmx-oquick { opacity: 1; }
.pmx-oquick .pmx-ib { width: 26px; height: 26px; min-width: 26px; padding: 0; background: var(--pmx-bar); border: 1px solid var(--pmx-line); border-radius: 6px; box-shadow: 0 1px 3px rgba(0, 0, 0, .18); }
.pmx-oquick .pmx-ib svg { width: 15px; height: 15px; }
.pmx-oitem:focus-visible { outline: 2px solid var(--pmx-brand-ink); outline-offset: 2px; }
.pmx-crop .pmx-orgbar .pmx-cnext svg { transform: scaleX(-1); }
.pmx[dir="rtl"] .pmx-crop .pmx-orgbar .pmx-cnext svg { transform: none; }
.pmx[dir="rtl"] .pmx-crop .pmx-orgbar .pmx-cprev svg { transform: scaleX(-1); }
/* The crop studio. */
.pmx-crop { position: absolute; inset: 0; display: flex; flex-direction: column; background: var(--pmx-canvas); z-index: 7; }
.pmx-croptitle { padding: 0 10px 0 4px; font-size: 14px; }
.pmx-cropbody { flex: 1; display: flex; min-height: 0; }
.pmx-cropstage { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: center; overflow: auto; padding: 24px; }
.pmx-cropsheet { position: relative; flex: none; overflow: hidden; background: #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, .25); cursor: crosshair; touch-action: none; user-select: none; }
.pmx-cropsheet canvas { display: block; }
.pmx-cropframe { position: absolute; box-sizing: border-box; border: 1.5px solid #fff; outline: 1.5px dashed var(--pmx-brand-ink); box-shadow: 0 0 0 9999px rgba(20, 24, 33, .5); cursor: move; }
.pmx-cropframe:focus-visible { outline-style: solid; outline-width: 2.5px; }
.pmx-croph { position: absolute; width: 12px; height: 12px; margin: -6px; background: #fff; border: 1.5px solid var(--pmx-brand-ink); border-radius: 3px; }
.pmx-ch-nw { left: 0; top: 0; cursor: nwse-resize; } .pmx-ch-n { left: 50%; top: 0; cursor: ns-resize; } .pmx-ch-ne { left: 100%; top: 0; cursor: nesw-resize; }
.pmx-ch-e { left: 100%; top: 50%; cursor: ew-resize; } .pmx-ch-se { left: 100%; top: 100%; cursor: nwse-resize; } .pmx-ch-s { left: 50%; top: 100%; cursor: ns-resize; }
.pmx-ch-sw { left: 0; top: 100%; cursor: nesw-resize; } .pmx-ch-w { left: 0; top: 50%; cursor: ew-resize; }
.pmx-cropothers { position: absolute; inset: 0; pointer-events: none; }
.pmx-cropother { position: absolute; box-sizing: border-box; border: 1px dashed #2a7de1; z-index: 1; }
.pmx-croppanel { width: 300px; flex: none; overflow-y: auto; padding: 14px 16px; background: var(--pmx-bar); border-inline-start: 1px solid var(--pmx-line); }
.pmx-croppanel .pmx-muted { margin: 0 0 10px; font-size: 12px; }
.pmx-cropgrid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2px 10px; }
.pmx-cropgrid input { width: 100%; box-sizing: border-box; }
.pmx-croprow .pmx-saveopt, .pmx-croppanel > .pmx-saveopt { border: 0; padding: 0; background: none; display: flex; align-items: center; gap: 8px; margin: 6px 0; }
.pmx-cropgrid label, .pmx-cropfield { display: flex; flex-direction: column; gap: 3px; font-size: 12px; margin: 6px 0; }
.pmx-cropgrid input, .pmx-croppanel select, .pmx-croprow input { height: 28px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; background: var(--pmx-canvas); color: inherit; min-width: 0; }
.pmx-croprow { display: flex; align-items: center; gap: 8px; margin: 8px 0; flex-wrap: wrap; font-size: 13px; }
.pmx-croppanel .pmx-acts { position: sticky; bottom: -14px; margin: 14px -16px -14px; padding: 10px 16px; background: var(--pmx-bar); border-top: 1px solid var(--pmx-line); flex-wrap: wrap; }
.pmx-cropres { font-variant-numeric: tabular-nums; }
.pmx.pmx-cropping .pmx-ebar { display: none; }
@media (max-width: 720px) {
  .pmx-cropbody { flex-direction: column; }
  .pmx-croppanel { width: auto; max-height: 45%; border-inline-start: 0; border-top: 1px solid var(--pmx-line); }
  .pmx-orgsize { display: none; }
}
.pmx-xdlg, .pmx-ddlg, .pmx-rdlg { width: min(460px, calc(100vw - 32px)); }
.pmx-xdlg .pmx-saveopt, .pmx-rdlg > .pmx-saveopt { display: flex; align-items: center; gap: 8px; margin: 5px 0; }
.pmx-xdlg input[type=number] { height: 28px; padding: 0 6px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; }
.pmx-rdlg select { height: 28px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; }
/* Dropping files, the binder, Reduce file size, and Actions. */
.pmx-dropmenu { min-width: 280px; }
.pmx-binder { width: min(760px, calc(100vw - 32px)); }
.pmx-btools { display: flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 8px; }
.pmx-blist { list-style: none; margin: 0 0 10px; padding: 0; max-height: min(46vh, 420px); overflow-y: auto; border: 1px solid var(--pmx-line); border-radius: 9px; }
.pmx-bitem { display: grid; grid-template-columns: 18px 26px minmax(0, 1fr) auto 110px 30px 30px 30px; align-items: center; gap: 6px; padding: 6px 8px; border-bottom: 1px solid var(--pmx-line); background: var(--pmx-bar); cursor: grab; }
.pmx-bitem:last-child { border-bottom: 0; }
.pmx-bitem.pmx-bover { box-shadow: inset 0 3px 0 var(--pmx-brand-ink); }
.pmx-bgrip { color: var(--pmx-slate); letter-spacing: -3px; user-select: none; }
.pmx-bnum { color: var(--pmx-slate); font-variant-numeric: tabular-nums; text-align: end; }
.pmx-bname { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-bcount { color: var(--pmx-slate); font-size: 12px; white-space: nowrap; }
.pmx-brange { height: 26px; padding: 0 6px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; min-width: 0; }
span.pmx-brange { border: 0; }
.pmx-bitem .pmx-ib { width: 30px; height: 28px; min-width: 30px; padding: 0; }
.pmx-binder .pmx-cropfield input, .pmx-askin { height: 30px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; width: 100%; box-sizing: border-box; }
.pmx-saveopt.pmx-plain, .pmx-binder > .pmx-saveopt { border: 0; padding: 2px 0; display: flex; align-items: center; gap: 8px; }
.pmx-optdlg { width: min(520px, calc(100vw - 32px)); }
.pmx-optdlg .pmx-pgchoose .pmx-saveopt { align-items: flex-start; }
.pmx-optdlg small { display: block; font-size: 12px; margin-top: 2px; }
/* Compress a PDF and Compress many files (approved 3 November 2026). */
.pmx .pmx-czdlg { width: min(880px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; }
.pmx-czdlg .pmx-czcols { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 18px; }
.pmx-czdlg .pmx-czlevels { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin: 4px 0 8px; }
.pmx-czdlg .pmx-czlevel { display: flex; gap: 6px; align-items: flex-start; border: 1px solid var(--pmx-line); border-radius: 9px; padding: 7px 8px; cursor: pointer; font-size: 12.5px; line-height: 1.3; }
.pmx-czdlg .pmx-czlevel:has(input:checked) { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-czdlg .pmx-czlevel input { margin: 2px 0 0; }
.pmx-czdlg .pmx-czlevel b { display: block; }
.pmx-czdlg .pmx-czlevel small, .pmx-czdlg .pmx-czop small { color: var(--pmx-slate); font-size: 11.5px; margin-top: 1px; }
.pmx-czdlg .pmx-czgrp { border-top: 1px solid var(--pmx-line); padding: 4px 0 3px; }
.pmx-czdlg .pmx-czhead { display: flex; align-items: baseline; gap: 8px; font-size: 12.5px; margin: 2px 0; }
.pmx-czdlg .pmx-czhead small { margin-inline-start: auto; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-czdlg .pmx-czop { display: grid; grid-template-columns: 18px minmax(0, 1fr) auto; gap: 6px; align-items: start; padding: 2px 0 2px 2px; font-size: 12.5px; cursor: pointer; }
.pmx-czdlg .pmx-czop input { margin: 2px 0 0; }
.pmx-czdlg .pmx-czop select, .pmx-czdlg select { height: 26px; font: inherit; font-size: 12px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: inherit; }
.pmx-czdlg .pmx-cztwo { display: grid; grid-template-columns: 1fr 1fr; }
.pmx-czdlg .pmx-czspace { border: 1px solid var(--pmx-line); border-radius: 10px; padding: 10px 12px; background: var(--pmx-bar); font-size: 12.5px; }
.pmx-czdlg .pmx-czspace p { margin: 2px 0 8px; font-size: 11.5px; }
.pmx-czdlg .pmx-czbar { display: flex; height: 14px; gap: 1px; border-radius: 4px; overflow: hidden; margin: 4px 0 10px; }
.pmx-czdlg .pmx-czbar i { min-width: 2px; }
.pmx-czdlg .pmx-czrow { display: grid; grid-template-columns: 10px minmax(0, 1fr) 58px 34px; gap: 1px 7px; align-items: center; padding: 2px 0; }
.pmx-czdlg .pmx-czrow > i { width: 10px; height: 10px; border-radius: 3px; }
.pmx-czdlg .pmx-czrow em { font-style: normal; text-align: end; }
.pmx-czdlg .pmx-czrow s { text-decoration: none; color: var(--pmx-slate); text-align: end; font-size: 11.5px; }
.pmx-czdlg .pmx-czacts { grid-column: 2 / 5; display: flex; flex-wrap: wrap; gap: 2px 10px; }
.pmx-czdlg .pmx-czlink { border: 0; background: none; padding: 0; font: inherit; font-size: 11.5px; color: var(--pmx-brand-ink); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.pmx-czdlg .pmx-czfast { margin-top: 10px; padding: 2px 4px; }
.pmx-czdlg .pmx-cztable { width: 100%; border-collapse: collapse; font-size: 12.5px; margin: 6px 0; }
.pmx-czdlg .pmx-cztable th, .pmx-czdlg .pmx-cztable td { padding: 4px 6px; border-bottom: 1px solid var(--pmx-line); text-align: end; }
.pmx-czdlg .pmx-cztable th:first-child, .pmx-czdlg .pmx-cztable td:first-child { text-align: start; }
.pmx-czdlg .pmx-cztable th { color: var(--pmx-slate); font-weight: 600; font-size: 11.5px; }
.pmx-czdlg .pmx-czdown { color: #2e8b57; }
[data-theme="dark"] .pmx-czdlg .pmx-czdown { color: #6fcf97; }
.pmx-czdlg .pmx-czchips { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0; }
.pmx-czdlg .pmx-czchips span { font-size: 11.5px; border: 1px solid var(--pmx-line); border-radius: 12px; padding: 2px 9px; }
.pmx-czdlg .pmx-czdetails { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.pmx-czmany .pmx-czfiles { border: 1px solid var(--pmx-line); border-radius: 9px; overflow: hidden; max-height: 260px; overflow-y: auto; }
.pmx-czmany .pmx-czfile { display: grid; grid-template-columns: 20px minmax(0, 1fr) 70px 70px 130px; gap: 8px; align-items: center; padding: 6px 10px; font-size: 12.5px; border-bottom: 1px solid var(--pmx-line); }
.pmx-czmany .pmx-czfile:last-child { border-bottom: 0; }
.pmx-czmany .pmx-czfile > span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-czmany .pmx-czfile svg { width: 16px; height: 16px; }
.pmx-czmany .pmx-czfh { font-size: 11.5px; color: var(--pmx-slate); font-weight: 600; background: var(--pmx-bar); }
.pmx-czmany .pmx-czfile em { font-style: normal; text-align: end; }
.pmx-czmany .pmx-czprog { height: 6px; border-radius: 3px; background: var(--pmx-line); overflow: hidden; }
.pmx-czmany .pmx-czprog i { display: block; height: 100%; background: var(--pmx-brand-ink); }
.pmx-czmany .pmx-cztools { display: flex; gap: 8px; align-items: center; margin: 8px 0; font-size: 12px; }
.pmx-czmany .pmx-czform { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 8px 12px; align-items: center; margin: 10px 0 4px; font-size: 12.5px; }
.pmx-czmany .pmx-czform > span { display: flex; flex-wrap: wrap; gap: 6px 10px; align-items: center; }
.pmx-czmany .pmx-czalso label { display: inline-flex; gap: 5px; align-items: center; }
.pmx-czmany .pmx-czmore { border: 1px solid var(--pmx-line); border-radius: 9px; padding: 4px 10px; margin: 6px 0; }
.pmx .pmx-cztile { margin: 22px auto 0; width: min(440px, calc(100% - 32px)); border: 2px dashed var(--pmx-line); border-radius: 14px; padding: 14px 16px; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; align-items: center; text-align: start; background: var(--pmx-pop); color: var(--pmx-ink); font: inherit; cursor: pointer; }
.pmx .pmx-cztile:hover, .pmx .pmx-cztile.pmx-czover { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx .pmx-cztile b { display: block; font-size: 14px; }
.pmx .pmx-cztile small { display: block; color: var(--pmx-slate); font-size: 12px; line-height: 1.4; margin-top: 2px; }
.pmx .pmx-czic { width: 40px; height: 40px; border-radius: 10px; background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); display: flex; align-items: center; justify-content: center; }
.pmx .pmx-czic svg { width: 22px; height: 22px; }
.pmx .pmx-czoffer { position: absolute; left: 50%; top: 96px; transform: translateX(-50%); z-index: 70; width: min(540px, calc(100% - 32px)); background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); padding: 12px 14px; display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 10px; }
.pmx .pmx-czoffer b { font-size: 13.5px; }
.pmx .pmx-czoffer p { margin: 3px 0 10px; font-size: 12.5px; color: var(--pmx-slate); line-height: 1.45; }
.pmx .pmx-czofferbt { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.pmx .pmx-czofferbt label { margin-inline-start: auto; font-size: 12px; color: var(--pmx-slate); display: flex; gap: 5px; align-items: center; }
@media (max-width: 720px) { .pmx-czdlg .pmx-czcols { grid-template-columns: 1fr; } .pmx-czdlg .pmx-czlevels { grid-template-columns: 1fr 1fr; } .pmx-czmany .pmx-czfile { grid-template-columns: 20px minmax(0, 1fr) 60px 60px; } .pmx-czmany .pmx-czfile > :last-child { display: none; } }
.pmx-warnline { padding: 8px 10px; border-radius: 8px; background: #fff4e5; color: #6b3d00; font-size: 13px; }
.pmx-optres { margin-top: 8px; }
.pmx-optbig { font-size: 17px; font-weight: 700; margin: 6px 0; font-variant-numeric: tabular-nums; }
.pmx-actdlg { width: min(900px, calc(100vw - 32px)); }
.pmx-actbody { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 18px; max-height: min(62vh, 620px); }
.pmx-actside, .pmx-actmain { overflow-y: auto; min-height: 0; }
.pmx-actpick { display: block; width: 100%; text-align: start; padding: 7px 9px; margin: 2px 0; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-bar); font: inherit; font-size: 13px; cursor: pointer; color: inherit; }
.pmx-actpick:hover { background: var(--pmx-pill); }
.pmx-actmine { display: flex; gap: 4px; align-items: center; }
.pmx-steps { list-style: none; margin: 0 0 8px; padding: 0; }
.pmx-step { border: 1px solid var(--pmx-line); border-radius: 9px; padding: 8px 10px; margin-bottom: 8px; background: var(--pmx-bar); }
.pmx-stephead { display: flex; align-items: center; gap: 4px; }
.pmx-stephead strong { flex: 1; }
.pmx-stephead .pmx-ib { width: 28px; height: 26px; min-width: 28px; padding: 0; }
.pmx-stepfields { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 6px; }
.pmx-stepf { display: flex; flex-direction: column; gap: 3px; font-size: 12px; min-width: 120px; }
.pmx-stepf input[type=text], .pmx-stepf input[type=number], .pmx-stepf select, .pmx-actmain > select { height: 28px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; font-size: 13px; background: var(--pmx-canvas); color: inherit; }
.pmx-stepc { display: inline-flex !important; flex-direction: row !important; align-items: center; gap: 6px; font-size: 13px; }
.pmx-stepchecks { flex-direction: row; flex-wrap: wrap; gap: 4px 12px; min-width: 0; }
.pmx-stepchecks > span { width: 100%; }
.pmx-actrun { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 4px 0 8px; }
.pmx-nosteps { padding: 10px 0; }
.pmx-actdlg .pmx-acts { flex-wrap: wrap; }
.pmx-scriptdlg { width: min(820px, calc(100vw - 32px)); }
.pmx-script { width: 100%; box-sizing: border-box; height: min(52vh, 460px); font: 12px/1.45 ui-monospace, Menlo, Consolas, monospace; border: 1px solid var(--pmx-line); border-radius: 8px; padding: 10px; white-space: pre; background: var(--pmx-canvas); color: inherit; }
@media (max-width: 720px) {
  .pmx-actbody { grid-template-columns: 1fr; }
  .pmx-bitem { grid-template-columns: 18px minmax(0, 1fr) 90px 30px 30px 30px; }
  .pmx-bnum, .pmx-bcount { display: none; }
}

/* Rulers, grid, and snapping (drawing.js) */
.pmx-lymenu { position: absolute; z-index: 40; width: 250px; padding: 10px 12px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: 0 8px 24px rgba(0, 0, 0, .18); font-size: 13px; }
.pmx-lymenu .pmx-shcheck { display: flex; align-items: center; gap: 8px; margin: 4px 0; }
.pmx-lymenu .pmx-shrow { grid-template-columns: 100px 1fr; }
.pmx-lyhint { margin-top: 6px; color: var(--pmx-slate); font-size: 12px; }
.pmx-gridl { position: absolute; left: 0; top: 0; transform-origin: 0 0; pointer-events: none; }
.pmx-rulers-on .pmx-scroll { margin-top: 18px; margin-inline-start: 18px; }
.pmx-ruler { position: absolute; z-index: 6; pointer-events: none; }
.pmx-ruler-h { transform-origin: 50% 50%; }
.pmx-ruler-c { position: absolute; z-index: 6; left: 0; width: 18px; height: 18px; background: var(--pmx-bar); border-right: 1px solid var(--pmx-line); border-bottom: 1px solid var(--pmx-line); box-sizing: border-box; }
[dir="rtl"] .pmx-rulers-on .pmx-scroll { margin-inline-start: 0; margin-left: 18px; }
/* Lines: a handle at each end */
.pmx-lsel { position: absolute; left: 0; top: 0; width: 0; height: 0; z-index: 3; }
.pmx-lsel svg { position: absolute; left: 0; top: 0; overflow: visible; pointer-events: none; }
.pmx-lguide { stroke: var(--pmx-brand-ink); stroke-width: 1; stroke-dasharray: 3 3; vector-effect: non-scaling-stroke; opacity: 0; }
.pmx-lsel.pmx-moving .pmx-lguide { opacity: 1; }
.pmx-lend { position: absolute; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; background: #fff; border: 2px solid var(--pmx-brand-ink); box-sizing: border-box; cursor: crosshair; touch-action: none; pointer-events: auto; }
/* Freehand drawings: the turning handle on the box */
.pmx-hb .pmx-inkrot { pointer-events: auto; }
.pmx-hb.pmx-moving { transform-origin: 50% 50%; }
/* Text typed into a shape */
.pmx-shtext { position: absolute; inset: 4px; width: auto; height: auto; box-sizing: border-box; resize: none; border: 1px dashed var(--pmx-brand-ink); background: rgba(255, 255, 255, .88); color: #000; font-family: Arial, Helvetica, sans-serif; line-height: 1.2; padding: 2px 4px; outline: none; overflow: hidden; display: block; }
.pmx-shsel.pmx-typing { cursor: text; }
.pmx-shtextset { border-top: 1px solid var(--pmx-line); margin-top: 6px; padding-top: 2px; }

/* Touch (touch.js): bigger targets for fingers, one finger draws with a drawing tool, and
   fingers scroll once a pen has been used. */
.pmx-touch .pmx-ib { height: 42px; min-width: 42px; }
.pmx-touch .pmx-h, .pmx-touch .pmx-lend, .pmx-touch .pmx-shrot { overflow: visible; }
.pmx-touch .pmx-h::before, .pmx-touch .pmx-lend::before, .pmx-touch .pmx-shrot::before { content: ''; position: absolute; inset: -12px; border-radius: 50%; }
.pmx-touch .pmx-h { width: 11px; height: 11px; }
.pmx-touch .pmx-h-nw, .pmx-touch .pmx-h-sw, .pmx-touch .pmx-h-w { left: -7px; } .pmx-touch .pmx-h-ne, .pmx-touch .pmx-h-se, .pmx-touch .pmx-h-e { right: -7px; }
.pmx-touch .pmx-h-nw, .pmx-touch .pmx-h-ne, .pmx-touch .pmx-h-n { top: -7px; } .pmx-touch .pmx-h-sw, .pmx-touch .pmx-h-se, .pmx-touch .pmx-h-s { bottom: -7px; }
.pmx-touch .pmx-h-n, .pmx-touch .pmx-h-s { left: calc(50% - 6px); } .pmx-touch .pmx-h-e, .pmx-touch .pmx-h-w { top: calc(50% - 6px); }
.pmx-touch .pmx-lend { width: 16px; height: 16px; margin: -8px 0 0 -8px; }
.pmx-touch .pmx-shrot { width: 20px; height: 20px; left: calc(50% - 10px); top: -38px; }
.pmx-touch .pmx-shrot::after { top: 17px; height: 20px; }
.pmx-touch .pmx-shrow input[type=number], .pmx-touch .pmx-shrow select, .pmx-touch .pmx-btn { min-height: 36px; }
.pmx-touch .pmx-shk { width: 44px; height: 44px; }
.pmx-touch .pmx-shgal { grid-template-columns: repeat(6, 44px); }
.pmx-hb, .pmx-h, .pmx-shsel, .pmx-lend, .pmx-shrot { touch-action: none; }
.pmx.pmx-editing:not([data-tool="select"]):not([data-tool="text"]) .pmx-ann { touch-action: pan-x pan-y; }
.pmx.pmx-editing:not([data-tool="select"]):not([data-tool="text"]):not(.pmx-penonly) .pmx-ann { touch-action: none; }
.pmx-touch .pmx-scroll { touch-action: pan-x pan-y; }
.pmx-sr { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
/* Moving an item: its picture follows the pointer, across pages too (drawing.js) */
.pmx-ghost { position: absolute; z-index: 30; pointer-events: none; }
.pmx-ghost svg { position: absolute; left: 0; top: 0; filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .25)); }
.pmx-ghost.pmx-ghost-away svg { outline: 1.5px dashed var(--pmx-brand-ink); outline-offset: 2px; }
.pmx-dragging .pmx-shsel, .pmx-dragging .pmx-hb.pmx-moving { opacity: .35; }
/* Settings (settings.js) */
.pmx-setdlg { width: min(460px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; }
.pmx-sethead { font-size: 13px; margin: 14px 0 6px; color: var(--pmx-slate); }
.pmx-setrow { display: grid; grid-template-columns: 170px 1fr; align-items: center; gap: 10px; margin: 6px 0; }
.pmx-setrow input[type=text], .pmx-setrow select { height: 30px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; }
.pmx-setrow input[type=checkbox] { justify-self: start; width: 18px; height: 18px; }
@media (max-width: 520px) { .pmx-setrow { grid-template-columns: 1fr; gap: 4px; } }
/* Export as pictures */
.pmx-exdlg { width: min(460px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; }
.pmx-exdlg .pmx-setrow input[type=number] { height: 30px; width: 100px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-pop); }
.pmx-exq { display: flex; align-items: center; gap: 10px; }
.pmx-exq input { flex: 1; min-width: 0; }
.pmx-exq output { min-width: 2.5em; text-align: end; font-variant-numeric: tabular-nums; }
.pmx-exinfo { margin: 10px 0 0; font-size: 0.92em; opacity: 0.8; }
.pmx-wndlg { width: min(520px, calc(100vw - 32px)); }
.pmx-wnlist { margin: 4px 0 8px; padding-inline-start: 22px; }
.pmx-wnlist li { margin: 6px 0; }

/* Accessibility check */
.pmx-a11ydlg { width: min(560px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; }
.pmx-a11ydlg input[type=text], .pmx-a11ydlg select, .pmx-a11yalt textarea { height: 30px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; box-sizing: border-box; }
.pmx-a11ydlg > input[type=text] { width: 100%; }
.pmx-a11ysum { font-weight: 600; margin: 4px 0 8px; }
.pmx-a11yok { color: #1b6e2a; }
.pmx-a11ybad { color: #a35f00; }
.pmx-a11ychk { display: flex; align-items: center; gap: 8px; margin: 6px 0; }
.pmx-a11yrow { display: flex; gap: 8px; }
.pmx-a11yrow > * { flex: 1; }
.pmx-a11ypic { display: grid; grid-template-columns: 170px 1fr; align-items: center; gap: 10px; margin: 5px 0; }
@media (max-width: 520px) { .pmx-a11ypic { grid-template-columns: 1fr; gap: 4px; } }
.pmx-a11yalt { margin: 10px 0 4px; }
.pmx-a11yalt label { display: block; font-weight: 600; margin-bottom: 4px; }
.pmx-a11yalt textarea { width: 100%; height: auto; padding: 6px 8px; resize: vertical; }

/* Comment threads, filters, and stamps of your own */
.pmx-cfilter { display: flex; flex-wrap: wrap; gap: 6px; padding: 6px 10px 8px; border-bottom: 1px solid var(--pmx-line); }
.pmx-cfilter input[type=search] { flex: 1 1 100%; height: 28px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; }
.pmx-cfilter select { flex: 1 1 45%; height: 28px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; font-size: 0.92em; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; }
.pmx-cshown { padding: 4px 12px; font-size: 0.85em; opacity: 0.75; }
.pmx-cthread { margin: -2px 10px 8px 30px; padding-inline-start: 10px; border-inline-start: 2px solid var(--pmx-line); }
.pmx-creply { display: flex; flex-direction: column; gap: 1px; padding: 4px 0; font-size: 0.9em; }
.pmx-creply strong { font-size: 0.85em; opacity: 0.8; }
.pmx-cacts { display: flex; gap: 6px; align-items: center; padding: 4px 0; flex-wrap: wrap; }
.pmx-cacts input { flex: 1 1 120px; height: 26px; padding: 0 6px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; font-size: 0.9em; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; }
.pmx-cacts .pmx-btn { height: 26px; padding: 0 10px; font-size: 0.88em; }
.pmx-cacts select { height: 26px; border: 1px solid var(--pmx-line); border-radius: 6px; font: inherit; font-size: 0.88em; color: inherit; background: var(--pmx-bg, #fff); max-width: 100%; }
.pmx-cstate { display: inline-block; margin-top: 2px; padding: 0 6px; border-radius: 8px; font-size: 0.8em; font-weight: 600; background: #eee; color: #333; }
.pmx-st-accepted, .pmx-st-completed { background: #e3f3e6; color: #1b6e2a; }
.pmx-st-rejected { background: #fbe6e6; color: #a01d1d; }
.pmx-st-cancelled { background: #eee; color: #666; }
.pmx-stampdlg { width: min(460px, calc(100vw - 32px)); max-height: calc(100vh - 40px); overflow: auto; }
.pmx-stampdlg input[type=text], .pmx-stampdlg select { height: 30px; padding: 0 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-bg, #fff); min-width: 0; }
.pmx-stprev { display: flex; flex-direction: column; align-items: center; justify-content: center; margin: 10px auto; width: 220px; min-height: 64px; padding: 6px 10px; border: 2.5px solid; border-radius: 9px; font-family: Helvetica, Arial, sans-serif; text-align: center; }
.pmx-stprev strong { font-size: 20px; letter-spacing: 0.04em; }
.pmx-stprev small { font-size: 11px; }
.pmx-stprev img { max-width: 200px; max-height: 80px; }
.pmx-strow { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--pmx-line); }
.pmx-strow img { max-height: 40px; max-width: 160px; }
.pmx-stchip { display: inline-block; padding: 2px 10px; border: 2px solid; border-radius: 7px; font-weight: 700; letter-spacing: 0.04em; }

/* Opening and saving files (files.js) */
.pmx-startmore { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.pmx-startmore .pmx-btn { height: 32px; padding: 0 14px; font-size: 13px; border: 1px solid var(--pmx-line); background: var(--pmx-pop); }
.pmx-recent { width: min(440px, 100%); text-align: start; margin-top: 10px; }
.pmx-recent h3 { font-size: 13px; font-weight: 600; color: var(--pmx-ink); margin: 0 0 6px; }
.pmx-recentlist { list-style: none; margin: 0; padding: 0; border: 1px solid var(--pmx-line); border-radius: 10px; overflow: hidden; background: var(--pmx-pop); }
.pmx-recentlist li { display: flex; align-items: center; border-top: 1px solid var(--pmx-line); }
.pmx-recentlist li:first-child { border-top: 0; }
.pmx-recentopen { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; padding: 8px 10px; border: 0; background: none; font: inherit; color: inherit; text-align: start; cursor: pointer; }
.pmx-recentopen:hover, .pmx-recentopen:focus-visible { background: var(--pmx-pill); outline: none; }
.pmx-recentopen:focus-visible { box-shadow: inset 0 0 0 2px var(--pmx-brand); }
.pmx-recentopen .pmx-i { flex: none; width: 20px; height: 20px; color: var(--pmx-slate); }
.pmx-recentname { min-width: 0; display: flex; flex-direction: column; }
.pmx-recentname b { font-weight: 600; font-size: 13px; color: var(--pmx-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pmx-recentname small { font-size: 12px; color: var(--pmx-slate); }
.pmx-recentx { flex: none; margin-inline-end: 6px; font-size: 16px; line-height: 1; color: var(--pmx-slate); }
.pmx-recentfoot { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 6px; font-size: 12px; color: var(--pmx-slate); }
.pmx-linkbtn { border: 0; background: none; padding: 0; font: inherit; color: var(--pmx-brand); cursor: pointer; text-decoration: underline; }
.pmx-recentdlg { width: min(520px, calc(100vw - 32px)); }
.pmx-recentdlg .pmx-recent { width: 100%; margin: 0 0 6px; }
.pmx-linkdlg { width: min(520px, calc(100vw - 32px)); }
.pmx-linkrow { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.pmx-linkrow input { height: 34px; padding: 0 10px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-pop); }
.pmx-fetch { display: flex; align-items: center; gap: 10px; }
.pmx-fetchbar { width: 120px; height: 4px; border-radius: 2px; background: rgba(255,255,255,.25); overflow: hidden; }
.pmx-fetchbar i { display: block; height: 100%; width: 0; background: currentColor; transition: width .12s linear; }
.pmx-fetchbar.pmx-unknown i { width: 30%; animation: pmx-slide 1.2s ease-in-out infinite; }
@keyframes pmx-slide { from { transform: translateX(-100%); } to { transform: translateX(400%); } }
@media (prefers-reduced-motion: reduce) { .pmx-fetchbar.pmx-unknown i { animation: none; width: 100%; opacity: .5; } }
.pmx-fetch .pmx-btn { height: 26px; padding: 0 10px; font-size: 12px; }
.pmx-start { overflow-y: auto; }

/* The Format bar over a paragraph being edited. */
.pmx-fmtbar { position: absolute; z-index: 60; pointer-events: auto; display: flex; align-items: center; gap: 2px; flex-wrap: wrap; max-width: 560px; padding: 4px; background: var(--pmx-bar, #fff); border: 1px solid var(--pmx-line, #ddd); border-radius: 8px; box-shadow: 0 4px 16px rgba(0, 0, 0, .14); font: 12px/1.2 system-ui, sans-serif; }
.pmx-fmtbar select { height: 28px; max-width: 150px; border: 1px solid var(--pmx-line, #ddd); border-radius: 6px; background: transparent; color: inherit; font: inherit; padding: 0 4px; }
.pmx-fmtbar select[data-k=fmtSize] { width: 58px; }
.pmx-fmtbar input[type=color] { width: 28px; height: 28px; padding: 0; border: 1px solid var(--pmx-line, #ddd); border-radius: 6px; background: none; }
.pmx-fmtbar .pmx-fmtb { min-width: 28px; height: 28px; font-size: 13px; }
.pmx-fmtbar .pmx-fmtb[aria-pressed=true] { background: var(--pmx-hover, rgba(92, 6, 50, .1)); color: var(--pmx-brand-ink, #5c0632); }
.pmx-fmtbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line, #ddd); margin: 0 3px; }
.pmx-fmtbar .pmx-fmtb sup, .pmx-fmtbar .pmx-fmtb sub { font-size: 9px; line-height: 0; }

/* A header, footer, or watermark selected in Edit. */
.pmx-furn { position: absolute; pointer-events: none; outline: 1.5px dashed var(--pmx-brand-ink, #5c0632); outline-offset: 2px; background: rgba(92, 6, 50, .05); }

/* Moving, widening, and deleting a whole block of text while it is open. */
/* The text box being edited, as Acrobat draws it: a thin blue frame, round handles at its
   corners and sides, the frame to move it. --pmx-px is one screen pixel at the zoom in use. */
.pmx-tframe { --pmx-px: 1px; --pmx-blue: #1473e6; position: absolute; z-index: 6; pointer-events: none; box-sizing: border-box; outline: var(--pmx-px) solid var(--pmx-blue); }
.pmx-tedge { position: absolute; pointer-events: auto; cursor: move; }
.pmx-tedge-t { left: 0; right: 0; top: calc(var(--pmx-px) * -4); height: calc(var(--pmx-px) * 6); }
.pmx-tedge-b { left: 0; right: 0; bottom: calc(var(--pmx-px) * -4); height: calc(var(--pmx-px) * 6); }
.pmx-tedge-l { top: 0; bottom: 0; left: calc(var(--pmx-px) * -4); width: calc(var(--pmx-px) * 6); }
.pmx-tedge-r { top: 0; bottom: 0; right: calc(var(--pmx-px) * -4); width: calc(var(--pmx-px) * 6); }
.pmx-tknob { position: absolute; pointer-events: auto; box-sizing: border-box; width: calc(var(--pmx-px) * 9); height: calc(var(--pmx-px) * 9); border-radius: 50%; background: #fff; border: calc(var(--pmx-px) * 1.25) solid var(--pmx-blue); margin: calc(var(--pmx-px) * -4.5); }
.pmx-tknob-nw { left: 0; top: 0; cursor: nwse-resize; } .pmx-tknob-ne { left: 100%; top: 0; cursor: nesw-resize; }
.pmx-tknob-sw { left: 0; top: 100%; cursor: nesw-resize; } .pmx-tknob-se { left: 100%; top: 100%; cursor: nwse-resize; }
.pmx-tknob-w { left: 0; top: 50%; cursor: ew-resize; } .pmx-tknob-e { left: 100%; top: 50%; cursor: ew-resize; }
.pmx-tframe.pmx-tdrag { outline-style: dashed; }
.pmx-touch .pmx-tknob { width: calc(var(--pmx-px) * 14); height: calc(var(--pmx-px) * 14); margin: calc(var(--pmx-px) * -7); }
/* In edit mode every text block and picture shows a dotted outline, as in Acrobat. */
.pmx-blocks { pointer-events: none; }
.pmx-tblock { position: absolute; box-sizing: border-box; outline: var(--pmx-px, 1px) dotted rgba(60, 60, 60, .55); outline-offset: calc(var(--pmx-px, 1px) * 2); }
.pmx-ann .pmx-hb[data-id^="img:"]:not(.pmx-sel), .pmx-ann .pmx-hb[data-id^="drw:"]:not(.pmx-sel) { outline: var(--pmx-px, 1px) dotted rgba(60, 60, 60, .55); outline-offset: 0; }
.pmx-ann .pmx-hb[data-id^="img:"]:not(.pmx-sel):hover, .pmx-ann .pmx-hb[data-id^="drw:"]:not(.pmx-sel):hover { outline: var(--pmx-px, 1px) solid #1473e6; }
.pmx-ann .pmx-hb[data-id^="img:"].pmx-sel, .pmx-ann .pmx-hb[data-id^="drw:"].pmx-sel { outline: var(--pmx-px, 1px) solid #1473e6; outline-offset: 0; background: none; }
.pmx-ann .pmx-hb[data-id^="img:"] .pmx-h, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h { box-sizing: border-box; width: calc(var(--pmx-px, 1px) * 9); height: calc(var(--pmx-px, 1px) * 9); border-radius: 50%; border: calc(var(--pmx-px, 1px) * 1.25) solid #1473e6; background: #fff; margin: calc(var(--pmx-px, 1px) * -4.5); }
.pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-nw, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-nw { left: 0; top: 0; } .pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-n, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-n { left: 50%; top: 0; } .pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-ne, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-ne { left: 100%; top: 0; right: auto; }
.pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-e, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-e { left: 100%; top: 50%; right: auto; } .pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-se, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-se { left: 100%; top: 100%; right: auto; bottom: auto; }
.pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-s, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-s { left: 50%; top: 100%; bottom: auto; } .pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-sw, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-sw { left: 0; top: 100%; bottom: auto; } .pmx-ann .pmx-hb[data-id^="img:"] .pmx-h-w, .pmx-ann .pmx-hb[data-id^="drw:"] .pmx-h-w { left: 0; top: 50%; }
/* A picture's turn knob: a stalk up from the top's middle, with a round knob. */
.pmx-picrot { position: absolute; left: 50%; bottom: 100%; width: 0; height: calc(var(--pmx-px, 1px) * 22); border-left: var(--pmx-px, 1px) solid #1473e6; pointer-events: none; }
.pmx-picrot i { position: absolute; left: calc(var(--pmx-px, 1px) * -7.5); top: calc(var(--pmx-px, 1px) * -14); box-sizing: border-box; width: calc(var(--pmx-px, 1px) * 14); height: calc(var(--pmx-px, 1px) * 14); border-radius: 50%; background: #1473e6; border: calc(var(--pmx-px, 1px) * 2) solid #fff; box-shadow: 0 0 0 var(--pmx-px, 1px) #1473e6; pointer-events: auto; cursor: grab; }
.pmx-hb.pmx-turning { transition: none; }
/* Thin drawings (rules and borders): no dotted outline until pointed at. */
.pmx-ann .pmx-hb.pmx-thin[data-id^="drw:"]:not(.pmx-sel):not(:hover) { outline: none; }
/* The outlines are the Edit tool's (Select and edit, or Edit text), as in Acrobat. With Select
   on its own (data-pick) only what is pointed at or selected shows a box; with a drawing or
   comment tool, only what is selected. */
.pmx:not([data-tool="edittext"]):not([data-tool="select"]) .pmx-blocks, .pmx[data-pick] .pmx-blocks { display: none; }
.pmx[data-pick] .pmx-ann .pmx-hb[data-id^="img:"]:not(.pmx-sel):not(:hover), .pmx[data-pick] .pmx-ann .pmx-hb[data-id^="drw:"]:not(.pmx-sel):not(:hover) { outline: none; }
.pmx:not([data-tool="edittext"]):not([data-tool="select"]) .pmx-ann .pmx-hb[data-id^="img:"]:not(.pmx-sel), .pmx:not([data-tool="edittext"]):not([data-tool="select"]) .pmx-ann .pmx-hb[data-id^="drw:"]:not(.pmx-sel) { outline: none; }
/* A picture or drawing being dragged: its pixels follow the frame; its old place is covered. */
.pmx-ann .pmx-picghost { position: absolute; pointer-events: none; z-index: 0; image-rendering: auto; }
.pmx-ann .pmx-piccover { position: absolute; pointer-events: none; z-index: 0; background: #fff; }
.pmx-ann .pmx-hb[data-id^="img:"].pmx-moving, .pmx-ann .pmx-hb[data-id^="drw:"].pmx-moving { background: none; border-color: transparent; outline: var(--pmx-px, 1px) solid #1473e6; }
/* No text selection while something is dragged. */
.pmx.pmx-dragging, .pmx.pmx-dragging * { user-select: none; -webkit-user-select: none; }
/* The Shapes split button and its gallery. */
.pmx-shsplit { display: inline-flex; align-items: stretch; border-radius: 7px; }
.pmx-shsplit .pmx-shmain { border-start-end-radius: 0; border-end-end-radius: 0; }
.pmx-shsplit .pmx-sharrow { min-width: 18px; width: 18px; padding: 0; border-start-start-radius: 0; border-end-start-radius: 0; border-inline-start: 1px solid transparent; }
.pmx-shsplit:hover .pmx-sharrow { border-inline-start-color: var(--pmx-line); }
.pmx-shsplit.pmx-on .pmx-shmain, .pmx-shsplit.pmx-on .pmx-sharrow { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-shsplit.pmx-on .pmx-sharrow { border-inline-start-color: rgba(92, 6, 50, .2); }
.pmx-shgal.pmx-shgal2 { display: block; width: 548px; overflow: auto; padding: 10px 12px 8px; --pmx-shline: #5c0632; --pmx-shfill: #f3e6ec; }
.pmx[data-theme="dark"] .pmx-shgal2 { --pmx-shline: #f2b6d0; --pmx-shfill: #4a2a39; }
.pmx-shgal2 .pmx-shsearch { width: 100%; height: 34px; padding: 0 10px; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; margin-bottom: 2px; }
.pmx-shgal2 .pmx-shhead { margin: 12px 2px 4px; font-size: 12px; font-weight: 600; color: var(--pmx-slate); }
.pmx-shgal2 .pmx-shgrid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 2px; }
.pmx-shgal2 .pmx-shk { width: auto; height: auto; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 3px; padding: 7px 2px 6px; border-radius: 8px; color: var(--pmx-ink); }
.pmx-shgal2 .pmx-shk svg.pmx-shpic { width: 40px; height: 40px; stroke: var(--pmx-shline); fill: var(--pmx-shfill); }
.pmx-shgal2 .pmx-shk svg.pmx-shpic [fill="none"] { fill: none; }
.pmx-shgal2 .pmx-shname { font-size: 10.5px; line-height: 1.2; color: var(--pmx-slate); text-align: center; max-width: 100%; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.pmx-shgal2 .pmx-shk:hover, .pmx-shgal2 .pmx-shk:focus-visible { background: var(--pmx-pill); color: var(--pmx-ink); outline: none; }
.pmx-shgal2 .pmx-shk.pmx-on { background: var(--pmx-brand-tint); outline: 1.5px solid var(--pmx-brand-ink); }
.pmx-shgal2 .pmx-shnone { padding: 14px 4px; color: var(--pmx-slate); }
.pmx-shgal2 .pmx-shkeep { display: flex; align-items: center; gap: 8px; border-top: 1px solid var(--pmx-line); margin-top: 10px; padding: 9px 2px 2px; font-size: 12.5px; color: var(--pmx-slate); }
.pmx-narrow .pmx-shgal.pmx-shgal2 { width: min(548px, calc(100vw - 24px)); }
.pmx-narrow .pmx-shgal2 .pmx-shgrid { grid-template-columns: repeat(4, 1fr); }
.pmx .pmx-invisible { visibility: hidden; }

/* Preferences: categories down the left, the chosen category on the right (as Acrobat). */
.pmx-dlg.pmx-prefdlg { width: min(880px, calc(100vw - 32px)); height: min(620px, calc(100vh - 40px)); max-height: none; padding: 0; display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; }
.pmx-prefdlg > h2 { display: flex; align-items: center; justify-content: space-between; margin: 0; padding: 12px 12px 10px 18px; border-bottom: 1px solid var(--pmx-line); font-size: 16px; }
.pmx-prefdlg .pmx-prefx { width: 30px; height: 30px; min-width: 30px; }
.pmx-prefbody { display: grid; grid-template-columns: 220px 1fr; min-height: 0; }
.pmx-prefnav { border-inline-end: 1px solid var(--pmx-line); padding: 10px 8px; overflow: auto; background: var(--pmx-side, #f6f5f8); display: flex; flex-direction: column; gap: 1px; }
.pmx-prefsearch { height: 30px; margin: 0 2px 8px; padding: 0 9px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; font-size: 13px; color: inherit; background: var(--pmx-bg, #fff); }
.pmx-prefcat { text-align: start; padding: 6px 10px; border: 0; border-radius: 6px; background: none; font: inherit; font-size: 13.5px; color: inherit; cursor: pointer; }
.pmx-prefcat:hover { background: rgba(92, 6, 50, .07); }
.pmx-prefcat.pmx-on { background: var(--pmx-brand, #5c0632); color: #fff; }
.pmx-prefcat.pmx-prefdim { opacity: .4; }
.pmx-prefnav hr { border: 0; border-top: 1px solid var(--pmx-line); margin: 7px 6px; width: auto; }
.pmx-prefpanes { overflow: auto; padding: 4px 22px 16px; min-width: 0; }
.pmx-prefh { font-size: 15px; margin: 12px 0 2px; }
.pmx-prefset { border: 1px solid var(--pmx-line); border-radius: 8px; margin: 12px 0 0; padding: 4px 14px 10px; }
.pmx-prefset legend { font-weight: 600; font-size: 13px; padding: 0 6px; }
.pmx-prefdlg .pmx-setrow { grid-template-columns: minmax(150px, 1fr) minmax(170px, 230px); margin: 7px 0; }
.pmx-prefdlg .pmx-setrow > span:first-child { font-size: 13.5px; }
.pmx-prefdlg .pmx-prefhit { background: rgba(255, 213, 0, .28); border-radius: 5px; box-shadow: 0 0 0 4px rgba(255, 213, 0, .28); }
.pmx-prefcol { display: flex; align-items: center; gap: 8px; min-width: 0; }
.pmx-prefcol select { flex: 1; min-width: 0; }
.pmx-prefsw { width: 18px; height: 18px; border-radius: 4px; flex: none; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .2); }
.pmx-prefprev { display: flex; align-items: center; gap: 16px; margin-top: 12px; padding: 10px 12px; border-radius: 8px; background: var(--pmx-side, #f6f5f8); }
.pmx-prefprev svg { display: block; background: #fff; border-radius: 4px; }
.pmx-preffoot { display: flex; align-items: center; gap: 8px; padding: 10px 16px; border-top: 1px solid var(--pmx-line); }
.pmx-preffoot .pmx-grow { flex: 1; font-size: 12.5px; }
.pmx-prefnone { margin-top: 18px; }
@media (max-width: 640px) {
  .pmx-prefbody { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
  .pmx-prefnav { flex-direction: row; overflow-x: auto; border-inline-end: 0; border-bottom: 1px solid var(--pmx-line); }
  .pmx-prefnav hr { display: none; }
  .pmx-prefcat { white-space: nowrap; }
  .pmx-prefsearch { min-width: 140px; margin-bottom: 0; }
  .pmx-preffoot .pmx-grow { display: none; }
}

/* The compact edit bar, on one line (editbar.js). */
.pmx-ebar.pmx-ebc { flex-wrap: nowrap; overflow: hidden; gap: 1px; }
.pmx-ebc .pmx-etools, .pmx-ebc .pmx-props { flex-wrap: nowrap; gap: 1px; }
.pmx:not(.pmx-touch) .pmx-ebc .pmx-ib { height: 30px; min-width: 30px; padding: 0 4px; }
.pmx-ebc .pmx-vr { margin: 0 3px; }
.pmx-ebc .pmx-ebstate, .pmx-ebc .pmx-ebfold { display: none !important; }
.pmx-ebc .pmx-props select { margin-inline-start: 2px; }
.pmx-ebc .pmx-colbtn { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; }
.pmx-colA { font: 700 14px/1 system-ui, sans-serif; }
.pmx-colbar { display: block; width: 18px; height: 4px; border-radius: 2px; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15); }
.pmx-ebc .pmx-chev svg { width: 12px; height: 12px; }
.pmx-ebc .pmx-linebtn, .pmx-ebc .pmx-pagesbtn { display: inline-flex; align-items: center; gap: 2px; }
.pmx-ebc .pmx-pagesbtn .pmx-lab { display: inline; margin-inline-start: 2px; }
.pmx-tracksplit { gap: 0; }
.pmx-ebc .pmx-trackdd { min-width: 20px; padding: 0 2px; }
.pmx-ebc .pmx-trackdd svg { width: 14px; height: 14px; }
.pmx-ebpop { position: absolute; z-index: 40; padding: 8px 10px 10px; min-width: 0; }
.pmx-poph { font-size: 12px; color: var(--pmx-slate); margin: 2px 2px 6px; }
.pmx-colgrid { display: grid; grid-template-columns: repeat(6, 26px); gap: 8px; padding: 2px; }
.pmx-colgrid .pmx-sw { width: 24px; height: 24px; }
.pmx-ebpop .pmx-sw[aria-checked="true"] { box-shadow: 0 0 0 2px var(--pmx-brand-ink); }
.pmx-colmore { display: flex; align-items: center; gap: 8px; margin-top: 10px; font-size: 13px; color: var(--pmx-brand-ink); cursor: pointer; }
.pmx-colmore input[type=color] { width: 26px; height: 22px; padding: 0; border: 1px solid var(--pmx-line); border-radius: 5px; background: none; }
.pmx-colrecent { display: flex; align-items: center; gap: 6px; margin-top: 8px; font-size: 12px; }
.pmx-sw.pmx-swsmall { width: 16px; height: 16px; }
.pmx-linepop { width: 190px; }
.pmx-lwrow { display: flex; align-items: center; justify-content: space-between; width: 100%; gap: 10px; padding: 4px 6px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; font-size: 12.5px; cursor: pointer; }
.pmx-lwrow:hover, .pmx-lwrow:focus-visible, .pmx-lwrow[aria-checked="true"] { background: var(--pmx-brand-tint); }
.pmx-oprow { display: flex; gap: 4px; }
.pmx-opbtn { flex: 1; padding: 3px 0; font-size: 12px; }
.pmx-opbtn[aria-checked="true"] { background: var(--pmx-brand-tint); border-color: var(--pmx-brand-ink); }

/* Selected text when reading: the quick bar and the menu (textmenu.js). */
.pmx-quickbar { position: absolute; z-index: 41; display: flex; align-items: center; gap: 1px; padding: 3px; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 9px; box-shadow: 0 8px 24px -10px rgba(40, 10, 25, .4); transition: opacity .2s; }
.pmx-pop.pmx-popread { z-index: 30; }
.pmx-quickbar:hover { opacity: 1; }
.pmx-quickbar .pmx-ib { width: 30px; height: 28px; min-width: 30px; position: relative; }
.pmx-quickbar .pmx-vr { width: 1px; height: 18px; background: var(--pmx-line); margin: 0 3px; }
.pmx-qbline { position: absolute; left: 8px; right: 8px; bottom: 3px; height: 3px; border-radius: 2px; }
.pmx-tmrepdlg { width: min(460px, calc(100vw - 32px)); }
.pmx-tmold { margin: 0 0 10px; padding: 8px 10px; border-radius: 7px; background: var(--pmx-side); text-decoration: line-through; text-decoration-color: #d91a1a; color: var(--pmx-slate); max-height: 120px; overflow: auto; }
.pmx-tmlab { display: grid; gap: 6px; font-size: 13px; }
.pmx-tmlab textarea { width: 100%; padding: 8px; border: 1px solid var(--pmx-line); border-radius: 7px; font: inherit; color: inherit; background: var(--pmx-bg, #fff); resize: vertical; }

/* Repeat on pages: the pages, small (shapemenu.js). */
.pmx-smrep { width: min(440px, calc(100vw - 32px)); }
.pmx-smchk { display: flex; align-items: center; gap: 8px; margin: 6px 0; font-size: 13.5px; }
.pmx-smthumbs { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 2px; align-items: flex-end; }
.pmx-smthumb { position: relative; width: 30px; height: 40px; border: 1px solid var(--pmx-line); border-radius: 3px; background: #fff; display: flex; align-items: flex-end; justify-content: center; }
.pmx-smthumb small { font-size: 9px; color: #6b6670; line-height: 1.4; }
.pmx-smthumb.pmx-cur { outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-smmark { position: absolute; left: 3px; top: 6px; width: 11px; height: 8px; border: 1.5px solid var(--pmx-brand-ink); background: var(--pmx-brand-tint); border-radius: 2px; }
.pmx-smmark.pmx-mir { left: auto; right: 3px; }

/* Link cards (linkcard.js). */
.pmx-lcard { position: absolute; z-index: 42; width: 380px; max-width: calc(100% - 16px); background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); font-size: 13px; overflow: hidden; }
.pmx-lcard.pmx-pinned { border-color: var(--pmx-brand-ink); }
.pmx-lcrow { display: flex; gap: 12px; padding: 12px 12px 8px; }
.pmx-lcpic { width: 96px; height: auto; flex: none; border-radius: 4px; box-shadow: 0 0 0 1px var(--pmx-line); background: #fff; }
.pmx-lcinfo { min-width: 0; }
.pmx-lcmeta { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--pmx-slate); padding: 0; }
.pmx-lcard > .pmx-lcmeta { padding: 12px 12px 2px; }
.pmx-lcmeta svg { width: 15px; height: 15px; }
.pmx-lctitle { font-weight: 600; margin: 2px 0 4px; line-height: 1.35; }
.pmx-lctext { font-size: 12.5px; line-height: 1.5; color: var(--pmx-slate); padding: 0; }
.pmx-lcard > .pmx-lctext { padding: 0 12px 6px; }
.pmx-lcaddr { padding: 2px 12px 8px; font: 12.5px/1.45 ui-monospace, Consolas, monospace; word-break: break-all; }
.pmx-lcaddr b { font-weight: 700; }
.pmx-lcwarn { display: flex; gap: 8px; align-items: flex-start; margin: 4px 12px 8px; padding: 7px 10px; border-radius: 8px; background: #fff4d6; color: #6b4400; font-size: 12.5px; line-height: 1.4; }
.pmx[data-theme="dark"] .pmx-lcwarn { background: #3d3115; color: #f5d58a; }
.pmx-lcwarn svg { width: 16px; height: 16px; flex: none; margin-top: 1px; }
.pmx-lcard.pmx-lcwide { width: 460px; }
.pmx-lcwide .pmx-lcpic { width: 82px; }
.pmx-lcsub { color: var(--pmx-slate); margin: -2px 0 6px; line-height: 1.35; }
.pmx-lcex { font-family: Georgia, "Times New Roman", serif; line-height: 1.55; color: var(--pmx-ink); max-height: 9.4em; overflow: hidden; -webkit-mask-image: linear-gradient(#000 62%, transparent); mask-image: linear-gradient(#000 62%, transparent); }
.pmx-lcex.pmx-lcall { -webkit-mask-image: none; mask-image: none; }
.pmx-lcopen .pmx-lcex { max-height: 300px; overflow: auto; -webkit-mask-image: none; mask-image: none; padding-inline-end: 4px; }
.pmx-lcex p { margin: 0 0 6px; }
.pmx-lcnum { font-family: "Segoe UI", system-ui, Arial, sans-serif; font-weight: 700; margin-inline-end: 2px; }
.pmx button.pmx-lcmore { display: inline-flex; align-items: center; gap: 4px; margin-top: 4px; padding: 2px 0; color: var(--pmx-ig-place, #0f8a8a); font-size: 12.5px; font-weight: 600; }
.pmx button.pmx-lcmore svg { width: 14px; height: 14px; }
.pmx-lcopen .pmx-lcmore svg { transform: rotate(180deg); }
.pmx-lcacts { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 8px 12px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-lcacts .pmx-btn { display: inline-flex; align-items: center; gap: 5px; height: 28px; padding: 0 9px; font-size: 12.5px; }
.pmx-lcacts .pmx-btn svg { width: 14px; height: 14px; }
.pmx-lcpin { margin-inline-start: auto; width: 28px; height: 28px; min-width: 28px; }
/* Look up (lookup.js). */
/* Look up (approved Option D): a green header band, green labels, solid green links, and the term
   marked as with a highlighter in each use. Green is Look up's colour in the menus and toolbars. */
.pmx { --pmx-lu: #2e8b3e; --pmx-lu-ink: #1f6a2c; --pmx-lu-tint: #e7f4e9; --pmx-lu-on: #fff; --pmx-lu-mark: #fff1b8; }
.pmx[data-theme="dark"] { --pmx-lu: #86d993; --pmx-lu-ink: #a9e6b2; --pmx-lu-tint: #1f3524; --pmx-lu-on: #1b191e; --pmx-lu-mark: #5a4a12; }
.pmx-lucard { position: absolute; z-index: 42; width: 430px; max-width: calc(100% - 16px); max-height: min(560px, calc(100% - 16px)); overflow: auto; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); font-size: 13px; }
.pmx-luhead { display: flex; align-items: center; gap: 4px; padding: 10px 8px; padding-inline-start: 12px; border-bottom: 1px solid var(--pmx-line); background: var(--pmx-lu-tint); }
.pmx-luhead strong { flex: 1; display: flex; align-items: center; gap: 10px; font-size: 16px; min-width: 0; color: var(--pmx-lu-ink); }
.pmx-lutile { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 8px; background: var(--pmx-lu); color: var(--pmx-lu-on); flex: none; }
.pmx-lutile svg { width: 18px; height: 18px; }
.pmx-luhead .pmx-ib { width: 30px; height: 30px; min-width: 30px; }
.pmx-lusec { padding: 10px 14px; border-bottom: 1px solid var(--pmx-line); display: grid; gap: 6px; justify-items: start; }
.pmx-lumeta { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 600; color: var(--pmx-lu-ink); }
.pmx-lumeta svg { width: 15px; height: 15px; color: var(--pmx-lu); flex: none; }
.pmx button.pmx-lusolid { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border: 0; border-radius: 8px; background: var(--pmx-lu); color: var(--pmx-lu-on); font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.pmx button.pmx-lusolid:hover { filter: brightness(1.08); }
.pmx button.pmx-lusolid:focus-visible { outline: 2px solid var(--pmx-lu-ink); outline-offset: 2px; }
.pmx-lusolid svg { width: 15px; height: 15px; }
.pmx[dir="rtl"] .pmx-lusolid [data-k] svg, .pmx[dir="rtl"] [data-k=luGoDef] svg { transform: scaleX(-1); }
.pmx-lumark { background: var(--pmx-lu-mark); border-radius: 3px; padding: 0 2px; }
.pmx-lutext { font: 13.5px/1.55 Georgia, "Times New Roman", serif; }
.pmx-lusec .pmx-btn, .pmx-luacts .pmx-btn { height: 28px; padding: 0 10px; font-size: 12.5px; }
.pmx-luhit { display: block; width: 100%; text-align: start; border: 0; background: none; padding: 3px 4px; border-radius: 6px; font: inherit; font-size: 12.5px; line-height: 1.5; color: inherit; cursor: pointer; }
.pmx-luhit:hover, .pmx-luhit:focus-visible { background: var(--pmx-brand-tint); }
.pmx-lupg { color: var(--pmx-slate); margin-inline-end: 4px; }
.pmx button.pmx-lulink { border: 0; background: none; padding: 2px 4px; color: var(--pmx-lu-ink); font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.pmx-luacts { display: flex; flex-wrap: wrap; gap: 6px; padding: 10px 14px; }
.pmx-lupanel { padding: 4px 4px 12px; }
.pmx-lupanel .pmx-lusec { padding: 10px 6px; }
.pmx-lupanel .pmx-luacts { padding: 10px 6px; }
.pmx-luph { margin: 6px 6px 2px; font-size: 15px; }
.pmx-tcard { position: absolute; z-index: 41; width: 340px; max-width: calc(100% - 16px); padding: 10px 12px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); display: grid; gap: 5px; justify-items: start; }

/* A shape being moved, turned, or stretched: the shape itself goes with its frame. */
.pmx-shghost { position: absolute; pointer-events: none; transform-origin: 50% 50%; }
.pmx-shsel.pmx-lifted { background: none; }

/* Find: Ignore case, Whole words, and Regular expression toggles (findplus.js). */
.pmx-ftoggles { display: inline-flex; gap: 2px; flex: none; }
.pmx-ftog { min-width: 28px; height: 24px; padding: 0 5px; border: 1px solid transparent; border-radius: 5px; background: none; color: var(--pmx-slate); font: 600 12px/1 ui-monospace, Consolas, monospace; cursor: pointer; }
.pmx-ftog:hover { background: var(--pmx-brand-tint); }
.pmx-ftog[aria-pressed="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); border-color: var(--pmx-brand-ink); }
.pmx-find input.pmx-fregex { font-family: ui-monospace, Consolas, monospace; }
.pmx-find input[aria-invalid="true"] { outline: 1.5px solid #d91a1a; }
.pmx-finderr { margin: 6px 0 2px; padding: 6px 10px; border-radius: 7px; background: #fdecec; color: #8a1c1c; font-size: 12.5px; }
.pmx[data-theme="dark"] .pmx-finderr { background: #3d1c1c; color: #f2b0b0; }
.pmx-res mark { background: rgba(255, 213, 0, .45); color: inherit; border-radius: 2px; }
.pmx-find { width: 470px; }
.pmx-find .pmx-q input { min-width: 0; flex: 1; }

/* Compare: the second side asks which document (reader.js). */
.pmx-cmpchoose { gap: 8px; }
.pmx-cmplist { display: grid; gap: 4px; width: min(340px, 90%); }
.pmx-cmpitem { display: flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-pop); color: inherit; font: inherit; font-size: 13px; text-align: start; cursor: pointer; }
.pmx-cmpitem:hover, .pmx-cmpitem:focus-visible { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-cmpitem span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Movable menus: the grip at the top (picmenu.js). */
.pmx-mgrip { display: flex; justify-content: center; align-items: center; height: 12px; margin: -2px 0 2px; cursor: grab; touch-action: none; border-radius: 6px; }
.pmx-mgrip span { width: 28px; height: 4px; border-radius: 2px; background: var(--pmx-line); box-shadow: 0 0 0 0 transparent; }
.pmx-mgrip:hover span { background: var(--pmx-slate); }
.pmx-movable.pmx-moving { cursor: grabbing; opacity: .96; }
.pmx-movable.pmx-moving .pmx-mgrip { cursor: grabbing; }

/* Crosshair guides for a selected shape (shapes.js). */
.pmx-shguides { position: absolute; inset: 0; pointer-events: none; z-index: 4; }
.pmx-shguides .pmx-gv { position: absolute; top: 0; bottom: 0; width: 0; border-left: 1px dashed rgba(20, 115, 230, .65); }
.pmx-shguides .pmx-gh { position: absolute; left: 0; right: 0; height: 0; border-top: 1px dashed rgba(20, 115, 230, .65); }
.pmx-shguides .pmx-gv.pmx-gsnap { border-left: 1px solid #e0218a; }
.pmx-shguides .pmx-gh.pmx-gsnap { border-top: 1px solid #e0218a; }
.pmx-glabel { position: absolute; padding: 1px 6px; border-radius: 4px; background: rgba(20, 115, 230, .9); color: #fff; font: 600 10.5px/1.5 system-ui, sans-serif; white-space: nowrap; transform-origin: 0 0; }

/* A signature following the pointer before it is placed (reader.js). */
.pmx-signghost { position: absolute; z-index: 45; pointer-events: none; opacity: .62; outline: 1px dashed rgba(20, 115, 230, .8); outline-offset: 2px; }

/* Bookmarks (bookmarks.js, approved Option A): a toolbar, a tree to drag in, and a menu. */
.pmx-bmbar { display: flex; align-items: center; gap: 2px; padding: 4px 4px 6px; border-bottom: 1px solid var(--pmx-line); margin-bottom: 4px; }
.pmx-bmbar strong { flex: 1; padding-inline-start: 4px; }
.pmx-bmbar .pmx-ib { width: 28px; height: 28px; min-width: 28px; }
.pmx-bmbar .pmx-ib:disabled { opacity: .4; }
.pmx:not(.pmx-mono) .pmx-bmadd svg.pmx-i, .pmx:not(.pmx-mono) .pmx-bmic svg.pmx-i { color: var(--pmx-ig-place); }
.pmx:not(.pmx-mono) .pmx-bmren svg.pmx-i { color: var(--pmx-ig-edit); }
.pmx:not(.pmx-mono) .pmx-bmdel svg.pmx-i { color: var(--pmx-ig-del); }
.pmx-bmtree { padding: 2px 0 10px; }
.pmx-bmrow { display: flex; align-items: center; gap: 4px; min-height: 30px; padding-inline-end: 6px; border-radius: 6px; cursor: pointer; position: relative; outline-offset: -2px; }
.pmx-bmrow:hover { background: var(--pmx-pill); }
.pmx-bmrow.pmx-bmsel { background: var(--pmx-brand-tint); }
.pmx-bmrow[aria-current="true"] .pmx-bmlab { font-weight: 600; color: var(--pmx-brand-ink); }
.pmx-bmtw { width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; flex: none; color: var(--pmx-slate); }
.pmx-bmtw svg.pmx-i { width: 13px; height: 13px; transition: transform .12s; }
.pmx-bmtw.pmx-bmopen svg.pmx-i { transform: rotate(90deg); }
.pmx[dir="rtl"] .pmx-bmtw:not(.pmx-bmopen) svg.pmx-i { transform: scaleX(-1); }
.pmx-bmic svg.pmx-i { width: 15px; height: 15px; }
.pmx-bmlab { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-bmedit { flex: 1; min-width: 0; font: inherit; padding: 2px 6px; border: 1.5px solid var(--pmx-brand-ink); border-radius: 5px; background: var(--pmx-pop); color: var(--pmx-ink); }
.pmx-bmrow.pmx-bmdrag { opacity: .45; }
.pmx-bmrow.pmx-bmbefore { box-shadow: inset 0 2px 0 var(--pmx-ig-place); }
.pmx-bmrow.pmx-bmafter { box-shadow: inset 0 -2px 0 var(--pmx-ig-place); }
.pmx-bmrow.pmx-bminside { background: var(--pmx-lu-tint, #e0f3f3); outline: 1.5px dashed var(--pmx-ig-place); }

/* Replace pages and Split (pagetools.js, approved Option A of each). */
.pmx-ptdlg { width: 500px; max-width: calc(100% - 24px); }
.pmx-ptrow { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 8px 0; }
.pmx-ptlab { min-width: 110px; color: var(--pmx-slate); }
.pmx-ptnum { width: 64px; }
.pmx-spline { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.pmx-spline .pmx-ptnum { height: 26px; padding: 0 6px; }
.pmx-ptname { flex: 1; min-width: 200px; }
.pmx-ptfname { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-ptrow .pmx-btn { display: inline-flex; align-items: center; gap: 6px; }
.pmx-ptstrip { display: flex; align-items: center; gap: 10px; margin: 10px 0; padding: 10px; border: 1px solid var(--pmx-line); border-radius: 8px; overflow-x: auto; min-height: 96px; }
.pmx-ptgroup { display: flex; align-items: flex-start; gap: 6px; }
.pmx-ptpg { display: grid; justify-items: center; gap: 2px; font-size: 11px; color: var(--pmx-slate); }
.pmx-ptthumb { width: 46px; height: auto; border-radius: 2px; background: #fff; }
.pmx-ptout .pmx-ptthumb { outline: 2px solid var(--pmx-ig-del); opacity: .6; }
.pmx-ptin .pmx-ptthumb { outline: 2px solid var(--pmx-lu, #2e8b3e); }
.pmx-ptarrow { color: var(--pmx-slate); flex: none; }
.pmx-pthint { font-size: 12px; margin: -2px 0 8px; }
.pmx-splist { border: 1px solid var(--pmx-line); border-radius: 8px; max-height: 260px; overflow: auto; }
.pmx-spfile { display: flex; align-items: center; gap: 8px; padding: 6px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-spfile:first-child { border-top: 0; }
.pmx-spfile .pmx-spname { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-spfile svg.pmx-i { color: #d42a2a; width: 16px; height: 16px; }
.pmx-spfile.pmx-spbig .pmx-muted { color: var(--pmx-ig-del); }
.pmx-splist > .pmx-muted { padding: 8px 10px; }
.pmx-spmore { padding: 6px 10px; font-size: 12px; }

/* Several items selected (multiselect.js, approved Option A). */
.pmx-msel { position: absolute; border: 1.5px solid #1a66e6; background: rgba(26, 102, 230, .08); border-radius: 2px; pointer-events: auto; cursor: move; z-index: 3; }
.pmx-msbox { position: absolute; border: 1px dashed rgba(26, 102, 230, .7); pointer-events: none; z-index: 3; }
.pmx-marquee { position: absolute; border: 1px dashed #1a66e6; background: rgba(26, 102, 230, .07); pointer-events: none; z-index: 5; }
.pmx-msbar { position: absolute; z-index: 6; display: flex; align-items: center; gap: 1px; padding: 3px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); transform-origin: 0 0; white-space: nowrap; }
.pmx-msbar .pmx-ib { width: 30px; height: 30px; min-width: 30px; }
.pmx-msbar .pmx-ib:disabled { opacity: .35; }
.pmx-msbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 3px; }
.pmx-mscount { font-size: 12px; color: var(--pmx-slate); padding: 0 8px 0 6px; }
.pmx:not(.pmx-mono) .pmx-msbar svg.pmx-i { color: var(--pmx-ig-place); }

/* Read aloud (readaloud.js, approved Option A): the paragraph and the word being read, and the player. */
.pmx-rapara { position: absolute; z-index: 3; pointer-events: none; border-radius: 4px; background: rgba(46, 139, 62, .13); box-shadow: 0 0 0 2px rgba(46, 139, 62, .35); }
.pmx-raword { position: absolute; z-index: 4; pointer-events: none; border-radius: 2px; background: rgba(255, 213, 74, .55); mix-blend-mode: multiply; transition: left .08s, width .08s; }
.pmx-raplayer { position: absolute; z-index: 40; left: 50%; bottom: 40px; transform: translateX(-50%); display: flex; align-items: center; gap: 2px; padding: 5px 8px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 999px; box-shadow: var(--pmx-shadow); }
.pmx-raplayer .pmx-ib { width: 32px; height: 32px; min-width: 32px; border-radius: 50%; }
.pmx-raplayer .pmx-ib.pmx-on { background: var(--pmx-lu-tint, #e7f4e9); color: var(--pmx-lu, #2e8b3e); }
.pmx-raplayer select { height: 28px; border: 1px solid var(--pmx-line); border-radius: 7px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; font-size: 12.5px; margin-inline-start: 4px; }
.pmx-raplayer .pmx-ravoice { max-width: 190px; }
.pmx-raspk { display: inline-flex; padding: 0 4px; color: var(--pmx-lu, #2e8b3e); }

/* Measure (measure.js, approved Option A): the bar, the drawing as it is made, and the panel. */
.pmx.pmx-measuring .pmx-sheet, .pmx.pmx-measuring .pmx-text span { cursor: crosshair !important; }
.pmx.pmx-measuring .pmx-text { pointer-events: none; }
.pmx-msrbar { position: absolute; z-index: 38; top: 100px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 2px; padding: 4px 6px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); }
.pmx-msrbar .pmx-ib { width: 32px; height: 32px; min-width: 32px; }
.pmx-msrbar .pmx-ib[aria-pressed="true"] { background: var(--pmx-brand-tint); }
.pmx-msrbar .pmx-msrscale { height: 30px; padding: 0 10px; font-size: 12.5px; margin: 0 4px; }
.pmx:not(.pmx-mono) .pmx-msrbar [data-mode] svg.pmx-i, .pmx:not(.pmx-mono) .pmx-msric svg.pmx-i { color: var(--pmx-ig-place); }
.pmx-msrlive { position: absolute; inset: 0; z-index: 6; pointer-events: none; }
.pmx-msrlive svg { position: absolute; left: 0; top: 0; overflow: visible; }
.pmx-msrlive path { fill: none; stroke: #d42a2a; stroke-width: 2; stroke-dasharray: 6 3; }
.pmx-msrlive path.pmx-msrfill { fill: rgba(212, 42, 42, .12); }
.pmx-msrlive circle { fill: #fff; stroke: #d42a2a; stroke-width: 1.5; }
.pmx-msrlive .pmx-msrsnap { fill: none; stroke: #1a66e6; stroke-width: 2; }
.pmx-msrtag { position: absolute; padding: 2px 7px; border-radius: 5px; background: #d42a2a; color: #fff; font: 600 12px/1.4 "Segoe UI", system-ui, Arial, sans-serif; white-space: nowrap; }
.pmx-msrlist { display: grid; gap: 2px; padding: 4px 0; }
.pmx-msrrow { display: grid; grid-template-columns: 22px 1fr auto; grid-template-rows: auto auto; column-gap: 8px; align-items: center; padding: 6px 8px; border-radius: 6px; text-align: start; }
.pmx-msrrow:hover { background: var(--pmx-pill); }
.pmx-msrrow .pmx-msric { grid-row: span 2; }
.pmx-msrrow b { justify-self: end; }
.pmx-msrrow .pmx-muted { grid-column: 2 / 4; font-size: 12px; }
.pmx-msrdlg { width: 420px; max-width: calc(100% - 24px); }

/* ----- Form bar and field highlighting (formbar.js) ----- */
.pmx-formbar { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 6px 12px; background: var(--pmx-brand-tint); color: var(--pmx-ink); border-bottom: 1px solid var(--pmx-line); flex: none; }
.pmx-fbsp { flex: 1; }
.pmx button.pmx-fbswitch { display: inline-flex; align-items: center; gap: 8px; padding: 3px 6px; border-radius: 8px; font-weight: 600; }
.pmx-fbknob { position: relative; width: 30px; height: 17px; border-radius: 9px; background: var(--pmx-line); flex: none; transition: background .12s; }
.pmx-fbknob::after { content: ""; position: absolute; top: 2px; inset-inline-start: 2px; width: 13px; height: 13px; border-radius: 50%; background: #fff; transition: inset-inline-start .12s; box-shadow: 0 1px 2px rgba(0, 0, 0, .25); }
.pmx-fbswitch[aria-checked="true"] .pmx-fbknob { background: var(--pmx-brand); }
.pmx[data-theme="dark"] .pmx-fbswitch[aria-checked="true"] .pmx-fbknob { background: var(--pmx-brand-ink); }
.pmx-fbswitch[aria-checked="true"] .pmx-fbknob::after { inset-inline-start: 15px; }
.pmx[data-theme="dark"] .pmx-fbswitch[aria-checked="true"] .pmx-fbknob::after { background: #2a282e; }
.pmx button.pmx-fbclear { border: 1px solid var(--pmx-line); background: var(--pmx-bar); border-radius: 7px; padding: 3px 10px; }
.pmx-fbx { opacity: .7; } .pmx-fbx:hover { opacity: 1; }
/* Highlighting off: a field shows only under the pointer or while typing in it. */
.pmx.pmx-nohl .pmx-form input:not([type="checkbox"]):not([type="radio"]), .pmx.pmx-nohl .pmx-form textarea, .pmx.pmx-nohl .pmx-form select { background: transparent; border-color: transparent; }
.pmx.pmx-nohl .pmx-form input:not([type="checkbox"]):not([type="radio"]):hover, .pmx.pmx-nohl .pmx-form textarea:hover, .pmx.pmx-nohl .pmx-form select:hover,
.pmx.pmx-nohl .pmx-form input:not([type="checkbox"]):not([type="radio"]):focus, .pmx.pmx-nohl .pmx-form textarea:focus, .pmx.pmx-nohl .pmx-form select:focus { background: var(--pmx-field, rgb(225, 236, 255)); border-color: rgba(60, 110, 200, .55); }
.pmx.pmx-nohl .pmx-form input:not([type="checkbox"]):not([type="radio"]):focus, .pmx.pmx-nohl .pmx-form textarea:focus, .pmx.pmx-nohl .pmx-form select:focus { border: 1px dashed #1d4ed8; }
.pmx.pmx-reqline:not(.pmx-nohl) .pmx-form .pmx-req { border-color: var(--pmx-req, #d42a2a); border-style: solid; }
.pmx.pmx-reqline:not(.pmx-nohl) .pmx-form .pmx-req:focus { border: 1px dashed var(--pmx-req, #d42a2a); }
/* Preferences, Forms: a preview of a field and of a field being typed in. */
.pmx-fieldprev { display: flex; gap: 10px; align-items: center; margin-top: 8px; }
.pmx-fieldprev span.pmx-fpbox { display: inline-block; width: 140px; height: 22px; padding: 2px 5px; font: 12px Arial, Helvetica, sans-serif; color: #000; background: var(--pmx-fp-bg); border: 1px var(--pmx-fp-box) var(--pmx-fp-line); }
.pmx-fieldprev span.pmx-fpbox.pmx-fpfocus { border: 1px dashed #1d4ed8; }
/* Review tools (reviewtools.js): the Comments panel head, checkmarks, folded replies, the Filter popover, and the dialogs */
.pmx-rvhead { display: flex; align-items: center; gap: 2px; padding: 6px 6px 2px; }
.pmx-rvhead strong { margin-inline-end: auto; }
.pmx-rvhead .pmx-ib { width: 30px; height: 30px; min-width: 30px; position: relative; }
.pmx-rvhead .pmx-ib.pmx-on { background: var(--pmx-pill); box-shadow: inset 0 0 0 1.5px var(--pmx-brand-ink); }
.pmx-rvbadge { position: absolute; top: 1px; inset-inline-end: 1px; min-width: 14px; height: 14px; border-radius: 7px; background: var(--pmx-brand); color: #fff; font-size: 9.5px; line-height: 14px; text-align: center; padding: 0 3px; font-weight: 600; }
.pmx-rvsearch { padding: 4px 6px 6px; display: flex; }
.pmx-rvsearch input { flex: 1; min-width: 0; height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-rvbar, .pmx-rvnote { margin: 2px 6px 8px; padding: 6px 10px; border-radius: 8px; background: var(--pmx-brand-tint); font-size: 12px; display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.pmx-rvnote { background: rgba(246, 195, 68, .22); flex-wrap: nowrap; }
.pmx-rvnote svg.pmx-i { width: 16px; height: 16px; flex: none; }
.pmx-rvbar i { font-style: normal; padding: 1px 8px; border-radius: 10px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); }
.pmx-rvlink { margin-inline-start: auto; color: var(--pmx-brand-ink); text-decoration: underline; font: inherit; padding: 0 2px; background: none; border: 0; cursor: pointer; }
.pmx-rvitem { display: flex; align-items: flex-start; gap: 2px; }
.pmx-rvitem .pmx-citem { flex: 1; min-width: 0; }
.pmx-rvck { width: 20px; height: 20px; min-width: 20px; margin: 9px 6px 0; border: 1.5px solid var(--pmx-slate); border-radius: 4px; display: inline-flex; align-items: center; justify-content: center; padding: 0; background: none; cursor: pointer; }
.pmx-rvck.pmx-on { background: #2e7d32; border-color: #2e7d32; color: #fff; }
.pmx-rvck svg.pmx-i { width: 13px; height: 13px; }
.pmx-rvmeta { display: flex; flex-wrap: wrap; gap: 4px 6px; align-items: center; }
.pmx-rvnew { font-size: 10.5px; padding: 0 6px; border-radius: 8px; background: #1f7a8c; color: #fff; margin-inline-start: 6px; font-weight: 600; vertical-align: 1px; }
.pmx-rvreplies { display: flex; gap: 4px; align-items: center; margin: -4px 0 4px; padding: 2px 8px; padding-inline-start: 26px; font: inherit; font-size: 12px; color: var(--pmx-brand-ink); background: none; border: 0; cursor: pointer; }
.pmx-rvreplies svg.pmx-i { width: 13px; height: 13px; }
.pmx-rvpop { position: absolute; z-index: 60; width: 290px; overflow-y: auto; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); padding: 8px 12px 12px; font-size: 13px; }
.pmx-rvpoph { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid var(--pmx-line); padding-bottom: 6px; }
.pmx-rvpop h6 { margin: 9px 0 3px; font-size: 12px; color: var(--pmx-slate); font-weight: 600; }
.pmx-rvopt { display: flex; gap: 8px; align-items: center; margin: 3px 0; cursor: pointer; }
.pmx-rvn { margin-inline-start: auto; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-rvsw { display: inline-block; width: 13px; height: 13px; border-radius: 50%; box-shadow: 0 0 0 1px rgba(0, 0, 0, .25); flex: none; }
.pmx-rvpages { display: flex; gap: 6px; align-items: center; }
.pmx-rvpages input { width: 56px; border: 1px solid var(--pmx-line); border-radius: 6px; padding: 3px 6px; background: var(--pmx-bar); color: inherit; font: inherit; }
.pmx-rvdlg { min-width: min(640px, calc(100vw - 48px)); max-width: 720px; }
.pmx-rvdlg.pmx-rvwide { min-width: min(740px, calc(100vw - 48px)); max-width: 800px; }
.pmx-rvfiles { border: 1px solid var(--pmx-line); border-radius: 8px; margin: 4px 0 10px; }
.pmx-rvfile { display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; padding: 8px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-rvfile:first-child { border-top: 0; }
.pmx-rvfile small { color: var(--pmx-slate); }
.pmx-rvfile .pmx-rvlink { justify-self: end; }
.pmx-rvnone { display: block; color: var(--pmx-slate); }
.pmx-rvopts label { display: flex; gap: 8px; align-items: flex-start; margin: 6px 0; }
.pmx-rvfine { color: var(--pmx-slate); font-size: 12px; }
.pmx-rvname { width: 100%; height: 32px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; color: inherit; background: var(--pmx-bar); }
.pmx-rvlay { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 4px 0 12px; }
.pmx-rvlayo { border: 1.5px solid var(--pmx-line); border-radius: 10px; padding: 8px; display: flex; flex-direction: column; gap: 6px; font-size: 12px; cursor: pointer; }
.pmx-rvlayo.pmx-on { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-rvpic { height: 84px; border-radius: 6px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); position: relative; overflow: hidden; display: block; }
.pmx-rvpic i { position: absolute; top: 8px; bottom: 8px; background: #fff; border: 1px solid #c8c4cc; }
.pmx-rvpic i:first-child { left: 8%; width: 38%; background: repeating-linear-gradient(#fff 0 9px, #d4d0d8 9px 11px); }
.pmx-rvpic i:nth-child(2) { right: 8%; width: 38%; background: repeating-linear-gradient(#fff 0 12px, #c9b6c0 12px 18px); }
.pmx-rvpic b { position: absolute; left: 32%; right: 50%; top: 30%; height: 30%; border-top: 1.5px solid #5c0632; border-bottom: 1.5px solid #5c0632; transform: skewY(-12deg); }
.pmx-rvpic-single i:first-child { left: 8%; width: 84%; }
.pmx-rvpic-single i:nth-child(2) { right: 10%; width: 36%; top: 12px; bottom: 12px; }
.pmx-rvpic-only i:first-child { display: none; }
.pmx-rvpic-only i:nth-child(2) { left: 20%; right: 20%; width: auto; }
.pmx-rvpic-only b, .pmx-rvpic-numbers b { display: none; }
.pmx-rvpic-numbers i:first-child::after { content: '1  2'; position: absolute; left: 30%; top: 30%; font: bold 10px sans-serif; color: #5c0632; white-space: pre; }
.pmx-rvgrid { display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; align-items: center; margin: 0 0 6px; }
.pmx-rvopts2 { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.pmx-rvopts2 label { display: flex; gap: 6px; align-items: center; }
.pmx-rvopts2 select, .pmx-rvopts2 input { border: 1px solid var(--pmx-line); border-radius: 7px; padding: 4px 8px; background: var(--pmx-bar); color: inherit; font: inherit; }
.pmx-rvopts2 input[type=number] { width: 60px; }

/* Comments beyond Acrobat (commentsplus.js) */
.pmx-cptags { display: flex; flex-wrap: wrap; gap: 3px; margin: 2px 0 1px; }
.pmx-cptag { display: inline-flex; align-items: center; gap: 3px; font-size: 10.5px; line-height: 16px; font-weight: 600; padding: 0 6px; border-radius: 8px; white-space: nowrap; background: #ececf0; color: #3b3a40; }
.pmx-cptag .pmx-ic, .pmx-cptag svg { width: 11px; height: 11px; }
.pmx-cp-int { background: #fbe3e3; color: #8a1c1c; }
.pmx-cp-term { background: #efe4fa; color: #5b2a91; }
.pmx-cp-ok { background: #e1f3e4; color: #1f6b2c; }
.pmx-cp-fwd { background: #e3eef9; color: #1d4f86; }
.pmx-cp-ar { background: #e3f4f6; color: #165e68; }
.pmx-cp-st-open { background: #fff1d6; color: #7a4d00; }
.pmx-cp-st-disputed { background: #fbe3e3; color: #8a1c1c; }
.pmx-cp-st-agreed { background: #e1f3e4; color: #1f6b2c; }
.pmx-cp-st-withdrawn { background: #ececf0; color: #5a5960; }
.pmx-cp-hi { background: #8a1c1c; color: #fff; }
.pmx-cpiss { display: grid; grid-template-columns: auto 1fr; gap: 1px 8px; font-size: 11.5px; margin: 4px 0 2px; padding: 4px 6px; border-inline-start: 2px solid #d9b25c; background: rgba(217, 178, 92, .08); }
.pmx-cpiss u { text-decoration: none; color: var(--pmx-slate); }
.pmx-cpnote { display: block; font-size: 11px; color: var(--pmx-slate); margin-top: 2px; }
.pmx-cpmore { flex: none; width: 24px; height: 24px; border: 0; background: none; color: var(--pmx-slate); border-radius: 4px; cursor: pointer; display: grid; place-items: center; margin-top: 6px; }
.pmx-cpmore:hover, .pmx-cpmore:focus-visible { background: rgba(0, 0, 0, .07); }
.pmx-cpmore svg { width: 16px; height: 16px; }
.pmx-cpgrp { display: flex; align-items: baseline; gap: 8px; border-top: 1px solid rgba(0, 0, 0, .08); }
.pmx-cpgrp b { color: var(--pmx-ink, inherit); font-size: 12px; }
.pmx-cpgrp small { color: var(--pmx-slate); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-cpquote { font-size: 12.5px; padding: 6px 8px; border-inline-start: 3px solid #d9b25c; background: rgba(217, 178, 92, .08); margin: 0 0 10px; white-space: pre-wrap; }
.pmx-cpsum { display: flex; gap: 14px; flex-wrap: wrap; margin: 8px 0; }
.pmx-cpsum > div { display: flex; flex-direction: column; min-width: 90px; padding: 6px 10px; border: 1px solid rgba(0, 0, 0, .1); border-radius: 6px; }
.pmx-cpsum b { font-size: 18px; }
.pmx-cpsum span { font-size: 11.5px; color: var(--pmx-slate); }
.pmx-cpterms { width: 100%; min-height: 140px; }
.pmx-cplibq { width: 100%; margin-bottom: 8px; }
.pmx-cplib { max-height: 340px; overflow: auto; }
.pmx-cplib h6 { margin: 10px 0 4px; font-size: 11.5px; color: var(--pmx-slate); font-weight: 600; }
.pmx-cplibit { display: flex; gap: 8px; align-items: flex-start; padding: 6px 4px; border-bottom: 1px solid rgba(0, 0, 0, .07); }
.pmx-cplibtx { flex: 1; display: flex; flex-direction: column; gap: 2px; font-size: 12.5px; min-width: 0; }
.pmx-cplibtx span { color: var(--pmx-slate); white-space: pre-wrap; }
.pmx-cplibacts { display: flex; gap: 4px; align-items: center; flex: none; }
.pmx-cpmark { position: absolute; pointer-events: none; z-index: 3; }
.pmx-cpbil { border: 1.5px dashed #1f8a99; border-radius: 3px; background: rgba(31, 138, 153, .05); }
.pmx-cpterm { border-bottom: 2px solid #8b46d0; background: rgba(139, 70, 208, .10); }
.pmx-cptermdot { width: 7px; height: 7px; border-radius: 50%; background: #8b46d0; }
.pmx[data-theme="dark"] .pmx-cptag { background: #3a3940; color: #e3e2e8; }
.pmx[data-theme="dark"] .pmx-cp-int, .pmx[data-theme="dark"] .pmx-cp-st-disputed { background: #4a2222; color: #f5b5b5; }
.pmx[data-theme="dark"] .pmx-cp-term { background: #3a2a4d; color: #d6bdf2; }
.pmx[data-theme="dark"] .pmx-cp-ok, .pmx[data-theme="dark"] .pmx-cp-st-agreed { background: #1f3524; color: #a9e6b2; }
.pmx[data-theme="dark"] .pmx-cp-fwd { background: #1d3049; color: #b3d1f2; }
.pmx[data-theme="dark"] .pmx-cp-ar { background: #173a3f; color: #a6e0e8; }
.pmx[data-theme="dark"] .pmx-cp-st-open { background: #3d3115; color: #f5d58a; }
.pmx[data-theme="dark"] .pmx-cp-hi { background: #c94545; color: #fff; }
.pmx[data-theme="dark"] .pmx-cpmore:hover { background: rgba(255, 255, 255, .08); }
.pmx[data-theme="dark"] .pmx-cpgrp { border-top-color: rgba(255, 255, 255, .1); }
.pmx[data-theme="dark"] .pmx-cpsum > div { border-color: rgba(255, 255, 255, .14); }

/* Everyday tools (everyday.js) */
.pmx-task { position: absolute; left: 50%; bottom: 28px; transform: translateX(-50%); z-index: 80; width: min(420px, calc(100% - 32px)); background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); padding: 12px 14px; }
.pmx-task b { display: block; font-size: 13px; margin-bottom: 2px; }
.pmx-task small { color: var(--pmx-slate); font-size: 12px; }
.pmx-taskrow { display: flex; gap: 10px; align-items: center; margin-top: 8px; }
.pmx-taskbar { flex: 1; height: 6px; border-radius: 3px; background: var(--pmx-line); overflow: hidden; }
.pmx-taskbar i { display: block; height: 100%; width: 0; background: var(--pmx-brand-ink); transition: width .2s; }
.pmx-fscope { display: flex; gap: 8px; align-items: center; padding: 4px 8px 2px; font-size: 12px; color: var(--pmx-slate); }
.pmx-fseg { display: inline-flex; border: 1px solid var(--pmx-line); border-radius: 8px; overflow: hidden; }
.pmx-fseg button { border: 0; background: none; color: var(--pmx-ink); font: inherit; font-size: 12px; padding: 3px 10px; cursor: pointer; }
.pmx-fseg button[aria-checked="true"] { background: var(--pmx-brand); color: #fff; }
.pmx[data-theme="dark"] .pmx-fseg button[aria-checked="true"] { background: var(--pmx-brand-ink); color: #1d1b21; }
.pmx-resdoc { display: flex; align-items: baseline; gap: 6px; padding: 10px 8px 4px; border-top: 1px solid var(--pmx-line); font-size: 12.5px; }
.pmx-resdoc b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.pmx-resdoc small { margin-inline-start: auto; color: var(--pmx-slate); white-space: nowrap; }
.pmx-evdlg .pmx-rvgrid input[type=text], .pmx-evdlg .pmx-rvgrid input[type=search] { min-width: 0; }
.pmx-evrow { display: flex; gap: 6px; align-items: center; }
.pmx-evrow input { flex: 1; }
.pmx-evstat { font-size: 12px; color: var(--pmx-slate); margin: 4px 0 6px; min-height: 16px; }
.pmx-evres { max-height: 300px; overflow: auto; border: 1px solid var(--pmx-line); border-radius: 8px; padding: 2px 4px; }
.pmx-evres:empty { display: none; }
.pmx-evlink { color: var(--pmx-brand-ink) !important; }
.pmx-heads .pmx-rvnote { margin: 6px 6px 8px; }
.pmx-headlist button, .pmx-evprev div { display: block; width: 100%; text-align: start; }
.pmx-hl2 { padding-inline-start: 22px !important; }
.pmx-hl3 { padding-inline-start: 38px !important; color: var(--pmx-slate); }
.pmx-evacts { padding: 8px 6px; }
.pmx-evprev { max-height: 220px; overflow: auto; border: 1px solid var(--pmx-line); border-radius: 8px; padding: 4px 8px; font-size: 12.5px; }
.pmx-evprev div { padding: 3px 0; }
.pmx-session { margin-top: 22px; width: min(440px, calc(100vw - 48px)); text-align: start; border: 1px solid var(--pmx-line); border-radius: 12px; background: var(--pmx-pop); padding: 12px 14px; box-shadow: var(--pmx-shadow); }
.pmx-session h4 { margin: 0 0 6px; font-size: 13.5px; }
.pmx-sesrow { display: flex; gap: 10px; align-items: center; padding: 5px 2px; font-size: 12.5px; }
.pmx-sesrow span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.pmx-sesrow small { margin-inline-start: auto; color: var(--pmx-slate); white-space: nowrap; }
.pmx-sesrow svg { width: 16px; height: 16px; flex: none; color: #c62828; }
.pmx-sesft { display: flex; align-items: center; gap: 8px; margin-top: 8px; font-size: 12px; color: var(--pmx-slate); }
.pmx-sesft label { display: flex; gap: 6px; align-items: center; }
.pmx-sesft .pmx-btn { margin-inline-start: auto; }
.pmx-rulerclip { position: absolute; z-index: 40; pointer-events: none; overflow: hidden; }
.pmx-ruler { position: absolute; left: 0; right: 0; pointer-events: none; border-top: 2px solid #e8892f; border-bottom: 2px solid #e8892f; }
@media (prefers-reduced-motion: reduce) { .pmx-taskbar i { transition: none; } }

/* Editing, as in Acrobat (editplus.js, and track.js's Format bar) */
.pmx-hb.pmx-locked [data-h], .pmx-hb.pmx-locked .pmx-h { display: none !important; }
.pmx-lockb { position: absolute; right: -9px; top: -9px; width: 18px; height: 18px; border-radius: 50%; background: #3b3b3b; color: #fff; display: flex; align-items: center; justify-content: center; pointer-events: none; z-index: 3; }
.pmx-lockb svg { width: 11px; height: 11px; stroke: #fff; }
.pmx-sympop { position: absolute; z-index: 90; width: 330px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); padding: 10px; }
.pmx-symq { width: 100%; height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 8px; font: inherit; background: var(--pmx-bar); color: inherit; margin-bottom: 6px; }
.pmx-symtabs { display: flex; flex-wrap: wrap; gap: 2px; margin-bottom: 6px; }
.pmx-symtabs button { border: 0; background: none; color: inherit; font: inherit; font-size: 12px; padding: 3px 9px; border-radius: 7px; cursor: pointer; }
.pmx-symtabs button[aria-selected="true"] { background: var(--pmx-pill); font-weight: 600; }
.pmx-sympop h6 { margin: 8px 2px 4px; font-size: 11.5px; color: var(--pmx-slate); font-weight: 600; }
.pmx-symgrid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 3px; }
.pmx-symgrid button { height: 32px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: inherit; font: 16px "pdfMax UI", Arial, "pdfMax UI Arabic", sans-serif; cursor: pointer; padding: 0; overflow: hidden; }
.pmx-symgrid button:hover, .pmx-symgrid button:focus-visible { background: var(--pmx-brand-tint); border-color: var(--pmx-brand-ink); }
.pmx-symfoot { font-size: 12px; color: var(--pmx-slate); margin-top: 8px; border-top: 1px solid var(--pmx-line); padding-top: 6px; min-height: 18px; }
.pmx-fmtrow3 { flex-basis: 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; padding-top: 4px; font-size: 12px; }
.pmx-fmtrow3 select, .pmx-fmtrow3 input { height: 26px; font: inherit; font-size: 12px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: inherit; }
.pmx-fmtrow3 input { width: 56px; padding: 0 4px; }
.pmx-fmtlab { color: var(--pmx-slate); margin-inline-start: 4px; }
.pmx-fmtunit { color: var(--pmx-slate); font-size: 11px; }
.pmx-listpop { position: absolute; z-index: 95; width: 290px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); padding: 8px; }
.pmx-listgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.pmx-listgrid button { white-space: pre; text-align: start; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 5px 8px; font: 12px/1.45 Arial, "pdfMax UI Arabic", sans-serif; background: var(--pmx-bar); color: inherit; cursor: pointer; }
.pmx-listgrid button.pmx-on, .pmx-listgrid button:focus-visible { border-color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-listnone { margin-top: 8px; width: 100%; }
.pmx[data-theme="dark"] .pmx-lockb { background: #e3e2e8; color: #1d1b21; }
.pmx[data-theme="dark"] .pmx-lockb svg { stroke: #1d1b21; }
.pmx-omega { position: absolute; z-index: 12; width: 22px; height: 22px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-pop); color: var(--pmx-ink); font: 600 13px/1 Arial; cursor: pointer; padding: 0; }

/* ----- Forms (167, 168, 51, 50, 49) ----- */
.pmx .pmx-form .pmx-reqempty { box-shadow: 0 0 0 2px #e07800; }
.pmx .pmx-form .pmx-bad { box-shadow: 0 0 0 2px #c62828; }
.pmx-fmleft { margin-inline-start: 12px; padding: 2px 10px; border-radius: 10px; border: 0; background: #fff1d6; color: #7a4d00; font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }
.pmx-dark .pmx-fmleft, [data-theme="dark"] .pmx-fmleft { background: #4a3510; color: #ffd28a; }
.pmx-fmmiss { min-width: min(520px, calc(100vw - 48px)); }
.pmx-fmlist { border: 1px solid var(--pmx-line); border-radius: 8px; padding: 2px; margin: 6px 0; max-height: 260px; overflow: auto; }
.pmx-fmlist button { display: block; width: 100%; text-align: start; padding: 6px 10px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; }
.pmx-fmlist button:hover, .pmx-fmlist button:focus-visible { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-fmlist small { display: block; color: var(--pmx-slate); font-size: 12px; }
.pmx-fmfine, .pmx-ppfine { color: var(--pmx-slate); font-size: 12px; }
.pmx-fmbub { position: absolute; z-index: 70; max-width: 320px; padding: 7px 10px; border-radius: 8px; background: #c62828; color: #fff; font-size: 12.5px; line-height: 1.4; box-shadow: 0 4px 14px rgba(0, 0, 0, .2); }
.pmx-fmbub::before { content: ''; position: absolute; top: -6px; inset-inline-start: 14px; border: 6px solid transparent; border-top: 0; border-bottom-color: #c62828; }
.pmx-cal { position: absolute; z-index: 70; width: 316px; padding: 10px; border: 1px solid var(--pmx-line); border-radius: 12px; background: var(--pmx-pop); color: var(--pmx-ink); box-shadow: 0 8px 28px rgba(0, 0, 0, .18); }
.pmx-cal:focus { outline: none; }
.pmx-calhd { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.pmx-calhd b { flex: 1; font-size: 13px; }
.pmx-calhd b small { display: block; font-weight: 400; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-calseg { display: flex; justify-content: center; margin: 0 auto 6px; width: max-content; }
.pmx-calgr { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.pmx-calgr i { font-style: normal; font-size: 11px; color: var(--pmx-slate); text-align: center; padding: 2px 0; }
.pmx-calgr button { height: 36px; border: 0; border-radius: 7px; background: none; color: inherit; font: inherit; font-size: 13px; display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer; line-height: 1.1; }
.pmx-calgr button small { font-size: 10px; color: var(--pmx-slate); }
.pmx-calgr button:hover { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-calgr button.o { opacity: .4; }
.pmx-calgr button.t { box-shadow: inset 0 0 0 1.5px var(--pmx-brand-ink); }
.pmx-calgr button.f { outline: 2px solid var(--pmx-brand-ink); outline-offset: -2px; }
.pmx-calgr button.s { background: var(--pmx-brand, #5c0632); color: #fff; }
.pmx-calgr button.s small { color: #fff; }
.pmx-calft { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 8px; font-size: 12px; }
.pmx-fppv { margin: 4px 0 6px; padding: 6px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; font-size: 13px; }
.pmx-fpshow { margin-top: 10px; padding-top: 8px; border-top: 1px solid var(--pmx-line); font-size: 12.5px; }
.pmx-fpnote { display: block; color: var(--pmx-slate); font-size: 11.5px; margin: 2px 0 8px; }

/* ----- Pages (71, 75, 74, 73, 72, 77, 78) ----- */
.pmx-ppdlg { min-width: min(620px, calc(100vw - 48px)); }
.pmx-pprow { display: grid; grid-template-columns: 130px 1fr; gap: 10px; align-items: center; margin: 8px 0; }
.pmx-pprow > b { font-size: 13px; align-self: start; padding-top: 4px; }
.pmx-ppval { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; }
.pmx-ppcol .pmx-ppval { flex-direction: column; align-items: flex-start; gap: 6px; }
.pmx-ppchk { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; }
.pmx-ppchk input[type=number] { width: 64px; }
.pmx-psown input { width: 70px; }
.pmx-ppchips { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0; }
.pmx-ppchips span { padding: 2px 9px; border: 1px solid var(--pmx-line); border-radius: 10px; font-size: 12px; }
.pmx-ppchips span.pmx-ppback { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-ppchips em { font-size: 12px; color: #a15c00; font-style: normal; }
.pmx-ppfile { min-width: 220px; padding: 5px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; font-size: 13px; }
.pmx-ppstrip { display: flex; flex-wrap: wrap; gap: 8px; margin: 8px 0; max-height: 220px; overflow: auto; }
.pmx-ppstrip figure { margin: 0; text-align: center; font-size: 11px; color: var(--pmx-slate); }
.pmx-ppstrip canvas { display: block; border: 1px solid var(--pmx-line); background: #fff; max-height: 64px; }
.pmx-ppstrip figure.pmx-ppturn canvas { outline: 2px solid var(--pmx-brand-ink); }
.pmx-nucards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 10px; }
.pmx-nucard { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 12px; border: 1px solid var(--pmx-line); border-radius: 10px; background: none; color: inherit; font: inherit; font-size: 13px; cursor: pointer; }
.pmx-nucard[aria-pressed="true"] { border: 2px solid var(--pmx-brand-ink); background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-nusheet { display: grid; gap: 4px; padding: 5px; border: 1px solid var(--pmx-slate); background: #fff; }
.pmx-nusheet i { display: flex; align-items: center; justify-content: center; width: 24px; height: 32px; font-style: normal; font-size: 11px; color: #444; background: #eee; }
.pmx-nu2up, .pmx-nubooklet { grid-template-columns: 1fr 1fr; }
.pmx-nu4up { grid-template-columns: 1fr 1fr; }
.pmx-nu4up i { width: 18px; height: 24px; }
.pmx-doctab.pmx-droptab { outline: 2px dashed var(--pmx-brand-ink); outline-offset: -2px; }
.pmx-tabhint { position: absolute; z-index: 70; padding: 5px 10px; border-radius: 6px; background: #222; color: #fff; font-size: 12px; white-space: nowrap; pointer-events: none; }
.pmx-pxgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; margin: 8px 0; max-height: 260px; overflow: auto; }
.pmx-pxgrid figure { margin: 0; position: relative; border: 1px solid var(--pmx-line); border-radius: 6px; overflow: hidden; height: 72px; background: repeating-conic-gradient(#eee 0 25%, #fff 0 50%) 0 0 / 12px 12px; }
.pmx-pxgrid canvas { width: 100%; height: 100%; object-fit: contain; display: block; }
.pmx-pxgrid figcaption { position: absolute; inset: auto 0 0 0; padding: 1px 5px; background: rgba(0, 0, 0, .55); color: #fff; font-size: 10.5px; }
.pmx-spbytext { margin-top: 4px; }

/* ----- Arabic (65, 66, 70) ----- */
.pmx-ardate .pmx-arsel { display: flex; flex-wrap: wrap; gap: 6px; }
.pmx-arprev { margin: 4px 0; padding: 6px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; font-size: 13px; min-height: 1.4em; }
.pmx-arpanel h3 { margin: 4px 0 6px; font-size: 14px; }
.pmx-arintro { margin: 0 0 8px; padding: 8px 10px; border-radius: 8px; background: var(--pmx-brand-tint, #f3e7ed); font-size: 12.5px; }
.pmx-argroup { display: flex; justify-content: space-between; margin: 10px 0 2px; padding-top: 6px; border-top: 1px solid var(--pmx-line); font-size: 12.5px; }
.pmx-argroup span { color: var(--pmx-slate); }
.pmx-aritem { display: block; width: 100%; text-align: start; padding: 6px 8px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; }
.pmx-aritem:hover, .pmx-aritem.cur { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-aritem ins { color: #1b7a3a; text-decoration: none; font-weight: 600; }
.pmx-aritem del { color: #c62828; }
.pmx-aritem small { display: block; color: var(--pmx-slate); font-size: 11.5px; text-align: start; }
.pmx-aracts { display: flex; justify-content: flex-end; gap: 8px; margin: 8px 0; }
.pmx-calseg { display: inline-flex; border: 1px solid var(--pmx-line); border-radius: 8px; padding: 2px; gap: 2px; }
.pmx-calseg button { border: 0; border-radius: 6px; padding: 3px 12px; background: none; color: inherit; font: inherit; font-size: 12.5px; cursor: pointer; }
.pmx-calseg button[aria-pressed="true"] { background: var(--pmx-brand, #5c0632); color: #fff; }

/* ----- Movable cards and dialogs ----- */
.pmx-draghandle { cursor: move; user-select: none; touch-action: none; }
.pmx-dlg > h2.pmx-draghandle { display: flex; align-items: center; gap: 8px; }
.pmx-grip { display: inline-flex; flex-direction: column; gap: 2px; opacity: .5; flex: none; }
.pmx-grip i { display: flex; gap: 2px; }
.pmx-grip b { width: 3px; height: 3px; border-radius: 50%; background: currentColor; display: block; }
.pmx-cardbar { height: 14px; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid var(--pmx-line); }
.pmx-cardbar .pmx-grip { flex-direction: row; gap: 3px; }
.pmx-dragging { box-shadow: 0 14px 40px rgba(0, 0, 0, .28); opacity: .97; }
/* The Look up card, shorter (approved): today's width, at most 300 px high. */
.pmx-lucard { max-height: min(300px, calc(100% - 16px)); }
.pmx-lucard .pmx-luhead { padding: 5px 6px; padding-inline-start: 8px; }
.pmx-lucard .pmx-lutile { width: 22px; height: 22px; border-radius: 6px; }
.pmx-lucard .pmx-lutile svg { width: 14px; height: 14px; }
.pmx-lucard .pmx-lusec { padding: 6px 12px; gap: 4px; }
.pmx-lucard .pmx-luhit { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; padding: 1px 4px; font-size: 12px; }
.pmx-lucard .pmx-lutext { font-size: 13px; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.pmx .pmx-lucard button.pmx-lusolid { height: 26px; font-size: 12.5px; }
.pmx-lucard .pmx-luacts { padding: 6px 12px; }

/* ----- New documents ----- */
.pmx-nddlg { min-width: min(640px, calc(100vw - 48px)); }
.pmx-ndform { display: flex; gap: 18px; align-items: flex-start; }
.pmx-ndgrid { display: grid; grid-template-columns: 130px 1fr; gap: 8px 12px; align-items: center; font-size: 13px; flex: 1; }
.pmx-ndgrid > b { font-weight: 600; }
.pmx-ndgrid input[type=number] { width: 70px; }
.pmx-ndown { margin-inline-start: 8px; }
.pmx-ndown input { width: 64px; }
.pmx-ndseg { display: inline-flex; border: 1px solid var(--pmx-line); border-radius: 8px; overflow: hidden; }
.pmx-ndseg button { border: 0; background: none; color: inherit; font: inherit; font-size: 12.5px; padding: 4px 10px; cursor: pointer; }
.pmx-ndseg button[aria-pressed="true"] { background: var(--pmx-brand, #5c0632); color: #fff; }
.pmx-ndsw { display: inline-flex; gap: 6px; align-items: center; }
.pmx-ndsw button { width: 22px; height: 22px; border-radius: 50%; border: 1px solid #aaa; padding: 0; cursor: pointer; }
.pmx-ndsw button[aria-pressed="true"], .pmx-ndsw input.pmx-on { outline: 2px solid var(--pmx-brand-ink); outline-offset: 2px; }
.pmx-ndsw input[type=color] { width: 26px; height: 24px; padding: 0; border: 1px solid var(--pmx-line); border-radius: 6px; background: none; }
.pmx-ndhint { display: block; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-ndchk { display: inline-flex; gap: 6px; align-items: center; font-size: 13px; }
.pmx-ndkeep { margin-top: 10px; }
.pmx-ndpv { width: 130px; flex: none; text-align: center; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-ndpage { position: relative; margin: 0 auto 6px; border: 1px solid #999; box-shadow: 0 2px 6px rgba(0, 0, 0, .15); background: #fff; }
.pmx-ndpage i { position: absolute; border: 1px dashed #c48aa6; }
.pmx-ndpage em { position: absolute; bottom: 3px; left: 0; right: 0; font-size: 8px; font-style: normal; color: #555; }
.pmx-ndpage.pmx-ndlined { background-image: repeating-linear-gradient(transparent 0 8px, #9ebce0 8px 9px); }
.pmx-ndpage.pmx-ndsquared { background-image: linear-gradient(#b7cbe6 1px, transparent 1px), linear-gradient(90deg, #b7cbe6 1px, transparent 1px); background-size: 6px 6px; }
.pmx-ndpage.pmx-nddotted { background-image: radial-gradient(#9ebce0 1px, transparent 1.2px); background-size: 6px 6px; }
.pmx-mguide { position: absolute; border: 1px dashed rgba(196, 80, 140, .55); pointer-events: none; z-index: 3; }
.pmx-prefnote { color: var(--pmx-slate); font-size: 12px; margin: 10px 0 0; }

/* Graphics and shapes: connectors, callouts, the format painter, the eyedropper, styles, My shapes, and crop to shape. */
.pmx-anch { position: absolute; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #fff; border: 2px solid #1a66e5; pointer-events: none; z-index: 6; box-sizing: border-box; }
.pmx-anch.pmx-on { background: #1a66e5; transform: scale(1.4); }
.pmx-prevsvg { position: absolute; left: 0; top: 0; pointer-events: none; }
.pmx-cotip { position: absolute; width: 11px; height: 11px; margin: -5.5px 0 0 -5.5px; background: #f6c026; border: 1.5px solid #7a5600; transform: rotate(45deg); cursor: move; z-index: 7; box-sizing: border-box; }
.pmx-cotip:focus-visible { outline: 2px solid var(--pmx-accent, #1a66e5); outline-offset: 2px; }
.pmx-painting .pmx-hb, .pmx-painting .pmx-annlayer { cursor: copy; }
[data-k=grPainter][aria-pressed=true] { background: var(--pmx-sel, rgba(26,102,229,.16)); }
.pmx-pickveil { position: absolute; inset: 0; z-index: 60; cursor: crosshair; }
.pmx-loupe { position: absolute; width: 88px; height: 88px; border-radius: 50%; border: 3px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.4), 0 6px 18px rgba(0,0,0,.3); pointer-events: none; }
.pmx-loupe i { position: absolute; left: 50%; top: 50%; width: 8px; height: 8px; margin: -4px; border: 1px solid #000; outline: 1px solid #fff; }
.pmx-loupe b { position: absolute; left: 50%; bottom: -26px; transform: translateX(-50%); font: 600 11px/1 system-ui, sans-serif; background: var(--pmx-bg, #fff); color: var(--pmx-fg, #222); padding: 3px 6px; border-radius: 4px; white-space: nowrap; }
.pmx-colpick { display: flex; align-items: center; gap: 8px; width: 100%; margin-top: 8px; padding: 6px 8px; border: 1px solid var(--pmx-line, #ccd); border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; }
.pmx-colpick:hover { background: var(--pmx-hover, rgba(0,0,0,.05)); }
.pmx-dropbtn { margin-inline-start: 4px; padding: 2px 4px; }
.pmx-stylepop { position: absolute; z-index: 40; width: 300px; padding: 12px; border-radius: 10px; background: var(--pmx-bg, #fff); color: var(--pmx-fg, #222); border: 1px solid var(--pmx-line, #ccd); box-shadow: 0 10px 30px rgba(0,0,0,.2); }
.pmx-stylepop .pmx-ndseg { margin: 8px 0 10px; display: flex; flex-wrap: wrap; }
.pmx-stylegrid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; }
.pmx-style { aspect-ratio: 4 / 3; border-radius: 6px; cursor: pointer; padding: 0; box-sizing: border-box; }
.pmx-style:hover, .pmx-style:focus-visible { outline: 2px solid var(--pmx-accent, #1a66e5); outline-offset: 2px; }
.pmx-stylenote { margin: 10px 0 0; font-size: 12px; }
.pmx-mysec .pmx-mygrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; padding: 4px 0; }
.pmx-myk { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 4px; border: 1px solid transparent; border-radius: 6px; background: none; color: inherit; font: 11px system-ui, sans-serif; cursor: pointer; }
.pmx-myk:hover, .pmx-myk:focus-visible { border-color: var(--pmx-line, #ccd); background: var(--pmx-hover, rgba(0,0,0,.05)); }
.pmx-myk img { width: 40px; height: 40px; object-fit: contain; }
.pmx-myk span { max-width: 64px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-myacts { display: flex; gap: 6px; padding: 4px 0 8px; }
.pmx-cropgrid { display: flex; gap: 8px; flex-wrap: wrap; margin: 4px 0 12px; }
.pmx-cropgrid button { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--pmx-line, #ccd); border-radius: 8px; background: none; color: inherit; cursor: pointer; }
.pmx-cropgrid button[aria-pressed=true] { border: 2px solid var(--pmx-accent, #1a66e5); background: var(--pmx-sel, rgba(26,102,229,.12)); }

/* Graphics C to E: points, picture adjustments, recolour, tables, diagrams, and charts. */
.pmx-ptsvg { position: absolute; left: 0; top: 0; z-index: 8; overflow: visible; pointer-events: none; }
.pmx-ptsvg .pmx-ptline { fill: none; stroke: transparent; stroke-width: 9; pointer-events: stroke; cursor: copy; }
.pmx-ptsvg .pmx-ptk { fill: #fff; stroke: #1a66e5; stroke-width: 1.5; pointer-events: all; cursor: move; }
.pmx-ptsvg .pmx-ptk.pmx-on { fill: #1a66e5; stroke: #fff; }
.pmx-ptsvg .pmx-pth { fill: #fff; stroke: #888; stroke-width: 1.2; pointer-events: all; cursor: move; }
.pmx-ptsvg .pmx-pthl { stroke: #888; stroke-width: 1; }
.pmx-adjprev { position: absolute; overflow: hidden; z-index: 5; pointer-events: none; }
.pmx-adjpanel { width: 320px; }
.pmx-adjpre { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: 4px 0 8px; }
.pmx-adjpre button { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 4px; border: 1px solid transparent; border-radius: 8px; background: none; color: inherit; font: 11px system-ui, sans-serif; cursor: pointer; }
.pmx-adjpre button[aria-pressed=true] { border-color: var(--pmx-accent, #1a66e5); background: var(--pmx-sel, rgba(26,102,229,.1)); }
.pmx-adjpre canvas { max-width: 56px; max-height: 42px; border-radius: 4px; }
.pmx-adjnote { font-size: 11.5px; margin: 6px 0; }
.pmx-reclist { display: grid; gap: 6px; margin: 6px 0 10px; }
.pmx-recrow { display: grid; grid-template-columns: 28px 16px 44px 1fr; gap: 8px; align-items: center; }
.pmx-recsw { width: 26px; height: 20px; border-radius: 4px; border: 1px solid rgba(0,0,0,.2); display: block; }
.pmx-tblpop { padding: 10px 12px; }
.pmx-tblgrid { display: grid; grid-template-columns: repeat(10, 18px); gap: 3px; }
.pmx-tblgrid button { width: 18px; height: 18px; padding: 0; border: 1px solid var(--pmx-line, #ccd); border-radius: 3px; background: transparent; cursor: pointer; }
.pmx-tblgrid button.pmx-on { background: var(--pmx-sel, rgba(26,102,229,.16)); border-color: var(--pmx-accent, #1a66e5); }
.pmx-tbllab { font-size: 12px; margin: 6px 0; }
.pmx-diatext, .pmx-chtext { width: 100%; box-sizing: border-box; font: 13px/1.5 system-ui, sans-serif; tab-size: 4; padding: 6px 8px; border: 1px solid var(--pmx-line, #ccd); border-radius: 6px; background: var(--pmx-bg, #fff); color: inherit; }
.pmx-chtext { font-family: ui-monospace, Consolas, monospace; font-size: 12.5px; }
.pmx-chchecks { display: flex; gap: 12px; flex-wrap: wrap; font-size: 13px; }
.pmx-diadlg, .pmx-chdlg { width: min(460px, 92vw); }

/* The shape rail: icons for the selected item, down the side of the page. */
.pmx-srail { position: absolute; z-index: 30; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 6px 5px; overflow-y: auto; overflow-x: visible; background: var(--pmx-pop, #fff); border: 1px solid var(--pmx-line, #ddd); border-radius: 12px; box-shadow: 0 6px 18px rgba(0,0,0,.16); scrollbar-width: none; }
.pmx-railbtn { position: relative; width: 36px; height: 36px; flex: 0 0 36px; border: 0; border-radius: 9px; display: flex; align-items: center; justify-content: center; background: none; color: var(--pmx-ink, #222); cursor: pointer; padding: 0; }
.pmx-railbtn svg { width: 20px; height: 20px; }
.pmx-railbtn:hover, .pmx-railbtn:focus-visible { background: var(--pmx-hover, rgba(0,0,0,.06)); }
.pmx-railbtn:focus-visible { outline: 2px solid var(--pmx-accent, #1a66e5); outline-offset: 1px; }
.pmx-railbtn[aria-pressed=true], .pmx-railbtn[aria-expanded=true] { background: var(--pmx-brand-tint, #f3e7ed); color: var(--pmx-brand-ink, #5c0632); }
.pmx-railsw { position: absolute; left: 9px; right: 9px; bottom: 4px; height: 3px; border-radius: 2px; box-shadow: 0 0 0 .5px rgba(0,0,0,.25); }
.pmx-railsep { width: 24px; height: 1px; flex: 0 0 1px; background: var(--pmx-line, #ddd); margin: 3px 0; }
.pmx-railcap { font: 600 10px/1.2 system-ui, sans-serif; color: var(--pmx-slate, #666); margin: 2px 0 4px; text-align: center; max-width: 40px; }
.pmx-railtip { position: absolute; z-index: 80; white-space: nowrap; background: #1d1b20; color: #fff; font: 12px/1.3 system-ui, sans-serif; padding: 5px 9px; border-radius: 6px; pointer-events: none; }
.pmx-railfly { position: absolute; z-index: 45; padding: 10px 12px; border-radius: 12px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 10px 30px rgba(0,0,0,.2); width: 236px; }
.pmx-railfly .pmx-colpick { position: relative; }
.pmx-railmore { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
@media print { .pmx-srail, .pmx-railfly { display: none; } }
.pmx-linkbox.pmx-on { outline: 2px solid var(--pmx-accent, #1a66e5); outline-offset: 1px; background: rgba(26,102,229,.12); }
/* Selecting without a box (approved Option A): the item's own edge traced in blue, its handles
   on the artwork, the turning knob over its top point. Preferences can put the box back. */
.pmx:not([data-selbox]) .pmx-hb.pmx-olhb.pmx-sel, .pmx:not([data-selbox]) .pmx-hb.pmx-olhb:hover { outline: none; background: none; }
.pmx:not([data-selbox]) .pmx-shsel.pmx-olframe { outline: none; }
.pmx-oltrace { position: absolute; left: 0; top: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.pmx-olhalo { fill: none; stroke: #1473e6; stroke-opacity: .22; stroke-linejoin: round; stroke-linecap: round; }
.pmx-olline { fill: none; stroke: #1473e6; stroke-linejoin: round; stroke-linecap: round; }
.pmx-ollight .pmx-olline { stroke-opacity: .8; }
.pmx-olhover { position: absolute; left: 0; top: 0; pointer-events: none; z-index: 2; }
.pmx .pmx-h.pmx-olh { box-sizing: border-box; width: calc(var(--pmx-px, 1px) * 9); height: calc(var(--pmx-px, 1px) * 9); border-radius: 50%; border: calc(var(--pmx-px, 1px) * 1.25) solid #1473e6; background: #fff; margin: 0; right: auto; bottom: auto; transform: translate(-50%, -50%); }
.pmx .pmx-h.pmx-olgone { display: none; }
.pmx .pmx-shrot.pmx-olrot { margin: 0; right: auto; transform: translate(-50%, calc(-100% - 16px)); border-color: #1473e6; }
.pmx .pmx-shrot.pmx-olrot::after { background: #1473e6; }
.pmx:not([data-selbox]) .pmx-lsel .pmx-lend { border-color: #1473e6; }
.pmx-touch .pmx-h.pmx-olh { width: calc(var(--pmx-px, 1px) * 14); height: calc(var(--pmx-px, 1px) * 14); }
/* Ctrl+drag drops a copy: the pointer says so while dragging. */
.pmx.pmx-ctrlcopy.pmx-dragging, .pmx.pmx-ctrlcopy.pmx-dragging * { cursor: copy !important; }

/* Yellow adjustment handles (adjust.js), as Office's. */
.pmx-adjs { position: absolute; inset: 0; pointer-events: none; z-index: 7; }
.pmx-adj { position: absolute; width: 10px; height: 10px; background: #ffd21f; border: 1px solid #7a5b00; box-shadow: 0 0 0 1px #fff; cursor: pointer; pointer-events: auto; transform-origin: 50% 50%; touch-action: none; }
.pmx-adj:hover, .pmx-adj:focus-visible { background: #ffe56b; outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-adjprev { position: absolute; left: 0; top: 0; pointer-events: none; z-index: 6; overflow: visible; }
.pmx-adjprev path { fill: none; stroke: #1473e6; stroke-dasharray: 4 3; }
.pmx-adjtip { position: absolute; z-index: 8; padding: 1px 7px; border-radius: 4px; background: rgba(20, 115, 230, .92); color: #fff; font: 600 11px/1.6 system-ui, sans-serif; white-space: nowrap; transform-origin: 0 0; pointer-events: none; }

/* Size and Position (adjust.js): a panel at the right of the pages (Option A). */
.pmx-szpanel { position: absolute; z-index: 35; width: 292px; padding: 12px 14px 14px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 12px; box-shadow: var(--pmx-shadow); font-size: 13px; }
.pmx-szphead { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; font-size: 14px; }
.pmx-szprow { display: flex; align-items: center; gap: 8px; margin: 6px 0; }
.pmx-szprow > span:first-child { min-width: 92px; color: var(--pmx-slate); }
.pmx-szprow input { width: 70px; font: inherit; padding: 3px 6px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-szpsec { border-top: 1px solid var(--pmx-line); margin-top: 10px; padding-top: 8px; font-weight: 600; }
.pmx-szpflips { flex-wrap: wrap; }
.pmx-szpanel .pmx-btn { white-space: nowrap; }
.pmx-szpkeep[aria-pressed=true] { background: var(--pmx-brand); color: #fff; border-color: var(--pmx-brand); }
.pmx-szpnone { margin: 8px 0 2px; }

/* The eraser and markers (drawtools.js): a slim panel of choices at the top of the pages. */
.pmx-toolopts { position: absolute; z-index: 35; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 14px; max-width: min(760px, calc(100% - 140px)); padding: 6px 12px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); font-size: 13px; }
.pmx-togroup { display: inline-flex; align-items: center; gap: 4px; }
.pmx-togroup .pmx-muted { margin-inline-end: 2px; }
.pmx-togroup [role=radio][aria-checked=true] { background: var(--pmx-brand); color: #fff; border-color: var(--pmx-brand); }
.pmx-erdot { display: inline-block; border-radius: 50%; background: currentColor; vertical-align: middle; }
.pmx-erring { position: absolute; z-index: 9; border: 1.5px solid #333; border-radius: 50%; background: rgba(255, 255, 255, .35); box-shadow: 0 0 0 1px #fff; pointer-events: none; box-sizing: border-box; }
.pmx.pmx-erasing .pmx-annlayer, .pmx.pmx-erasing .pmx-ann { cursor: none; }
.pmx-mksw { display: inline-grid; place-items: center; width: 18px; height: 18px; font: 700 10px/1 system-ui, sans-serif; font-style: normal; color: #fff; background: var(--pmx-mk, #c2185b); }
.pmx-mkc { border-radius: 50%; } .pmx-mks { border-radius: 3px; } .pmx-mkp { background: transparent; color: var(--pmx-mk, #c2185b); }
.pmx-mknext { width: 44px; font: inherit; padding: 2px 6px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-mkcol { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--pmx-pop); box-shadow: 0 0 0 1px var(--pmx-line); cursor: pointer; padding: 0; }
.pmx-mkcol[aria-checked=true] { box-shadow: 0 0 0 2px var(--pmx-ink); }
.pmx-mkgrid { display: grid; grid-template-columns: repeat(12, 30px); gap: 4px; }
.pmx-mkgrid button { width: 30px; height: 28px; padding: 0; font-size: 15px; }

/* Equal gaps (drawtools.js): pink marks between shapes. */
.pmx-shguides .pmx-ggap { position: absolute; height: 0; border-top: 1px solid #e0218a; }
.pmx-shguides .pmx-ggap::before, .pmx-shguides .pmx-ggap::after { content: ''; position: absolute; top: -4px; height: 7px; border-left: 1px solid #e0218a; }
.pmx-shguides .pmx-ggap::before { left: 0; } .pmx-shguides .pmx-ggap::after { right: 0; }
.pmx-shguides .pmx-ggapv { width: 0; height: auto; border-top: 0; border-left: 1px solid #e0218a; }
.pmx-shguides .pmx-ggapv::before, .pmx-shguides .pmx-ggapv::after { top: auto; left: -4px; width: 7px; height: 0; border-left: 0; border-top: 1px solid #e0218a; }
.pmx-shguides .pmx-ggapv::before { top: 0; } .pmx-shguides .pmx-ggapv::after { bottom: 0; right: auto; }
.pmx-ggapl { position: absolute; padding: 0 5px; border-radius: 3px; background: #e0218a; color: #fff; font: 600 10px/1.6 system-ui, sans-serif; white-space: nowrap; transform-origin: 0 0; translate: -50% 0; }

/* Format shape (adjust.js and format.js): the pane's tabs and their settings. */
.pmx-fmpane { width: 318px; display: flex; flex-direction: column; max-height: calc(100vh - 180px); padding-bottom: 8px; }
.pmx-fmtabs { display: flex; gap: 4px; padding: 2px 0 8px; border-bottom: 1px solid var(--pmx-line); margin-bottom: 4px; }
.pmx-fmtab { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border: 0; border-radius: 8px; background: transparent; color: var(--pmx-slate); font: inherit; cursor: pointer; }
.pmx-fmtab span { display: none; font-size: 12px; }
.pmx-fmtab.pmx-on { background: var(--pmx-brand-tint, #f3e7ed); color: var(--pmx-brand-ink, #5c0632); font-weight: 600; }
.pmx-fmtab.pmx-on span { display: inline; }
.pmx-fmscroll { overflow-y: auto; overscroll-behavior: contain; padding-inline-end: 4px; }
.pmx-fmbody.pmx-off { display: none; }
.pmx-fmsec { border-bottom: 1px solid var(--pmx-line); padding: 6px 0; }
.pmx-fmsech { display: flex; align-items: center; gap: 4px; width: 100%; padding: 2px 0; border: 0; background: transparent; color: var(--pmx-ink); font: 700 13px/1.4 inherit; cursor: pointer; text-align: start; }
.pmx-fmsech::before { content: '▾'; font-size: 10px; } .pmx-fmsech[aria-expanded=false]::before { content: '▸'; }
.pmx-fmradios { display: grid; grid-template-columns: 1fr 1fr; gap: 3px 10px; margin: 4px 0 6px; }
.pmx-fmradio, .pmx-fmcheck { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.pmx-fmrow { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 5px 0; }
.pmx-fml { color: var(--pmx-slate); }
.pmx-fmctl { display: inline-flex; align-items: center; gap: 6px; }
.pmx-fmnum { width: 58px; font: inherit; padding: 2px 6px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-fmwide { width: 110px; }
.pmx-fmsel { font: inherit; padding: 2px 4px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); max-width: 150px; }
.pmx-fmtr input[type=range] { width: 90px; accent-color: var(--pmx-brand); }
.pmx-fmtr { display: inline-flex; align-items: center; gap: 6px; }
.pmx-fmcol { display: inline-flex; align-items: center; gap: 2px; padding: 2px 4px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); cursor: pointer; }
.pmx-fmcol i { display: inline-block; width: 24px; height: 16px; border-radius: 3px; border: 1px solid rgba(0, 0, 0, .15); }
.pmx-fmcol i.pmx-fmnone { background: linear-gradient(135deg, transparent 45%, #d33 45%, #d33 55%, transparent 55%) !important; }
.pmx-fmcol .pmx-i { width: 12px; height: 12px; }
.pmx-fmstops { position: relative; height: 18px; margin: 4px 6px 16px; border-radius: 4px; border: 1px solid var(--pmx-line); }
.pmx-fmstop { position: absolute; bottom: -9px; width: 12px; height: 12px; margin-inline-start: -6px; padding: 0; border: 1.5px solid var(--pmx-ink); border-radius: 2px; transform: rotate(45deg); cursor: grab; touch-action: none; }
.pmx-fmstop.pmx-on { outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-fmpats { display: grid; grid-template-columns: repeat(8, 30px); gap: 4px; margin: 6px 0; }
.pmx-fmpat { width: 30px; height: 22px; padding: 0; border: 1px solid var(--pmx-line); border-radius: 3px; overflow: hidden; cursor: pointer; background: #fff; }
.pmx-fmpat[aria-checked=true] { outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-fmpresets { display: grid; grid-template-columns: repeat(5, 46px); gap: 6px; margin: 6px 0; }
.pmx-fmpreset { height: 34px; padding: 0; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); display: grid; place-items: center; cursor: pointer; }
.pmx-fmpreset i { display: block; width: 22px; height: 15px; border-radius: 3px; background: #f3e7ed; border: 1px solid #5c0632; }
.pmx-fmpreset[aria-checked=true] { outline: 2px solid #1473e6; }
.pmx-fmsh-outer i { box-shadow: 3px 3px 4px rgba(0, 0, 0, .45); } .pmx-fmsh-inner i { box-shadow: inset 2px 2px 3px rgba(0, 0, 0, .5); }
.pmx-fmsh-perspectiveLeft i { box-shadow: -5px 6px 3px -2px rgba(0, 0, 0, .3); } .pmx-fmsh-perspectiveRight i { box-shadow: 5px 6px 3px -2px rgba(0, 0, 0, .3); }
.pmx-fmfoot { padding: 8px 0 0; } .pmx-linkbtn { border: 0; background: transparent; padding: 0; color: var(--pmx-brand-ink, #5c0632); text-decoration: underline; font: inherit; cursor: pointer; }
/* The theme colour picker (format.js). */
.pmx-thpick { width: 260px; }
.pmx-thh { margin: 6px 2px 4px; font-size: 12px; font-weight: 600; color: var(--pmx-slate); }
.pmx-thgrid { display: grid; grid-template-columns: repeat(10, 20px); gap: 3px; }
.pmx-thgrid .pmx-sw { width: 20px; height: 16px; border-radius: 2px; border: 1px solid rgba(0, 0, 0, .15); padding: 0; }
.pmx-thtints { margin-top: 4px; } .pmx-thtints .pmx-sw { height: 12px; }
.pmx-thgrid .pmx-sw[aria-pressed=true] { outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-thacts { border-top: 1px solid var(--pmx-line); margin-top: 8px; padding-top: 4px; display: flex; flex-wrap: wrap; gap: 2px 8px; }
/* Properties (format.js), as Acrobat's. */
.pmx-propsdlg { width: min(460px, calc(100vw - 32px)); }
.pmx-proptabs { display: flex; gap: 2px; border-bottom: 1px solid var(--pmx-line); margin: 4px 0 8px; }
.pmx-proptab { padding: 7px 12px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--pmx-slate); font: inherit; cursor: pointer; }
.pmx-proptab.pmx-on { color: var(--pmx-ink); border-bottom-color: var(--pmx-brand); font-weight: 600; }
.pmx-proppane { min-height: 150px; }
.pmx-propin { width: 240px; font: inherit; padding: 3px 7px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-proptbl { width: 100%; border-collapse: collapse; font-size: 12px; } .pmx-proptbl th, .pmx-proptbl td { text-align: start; padding: 5px 4px; border-bottom: 1px solid var(--pmx-line); } .pmx-proptbl th { color: var(--pmx-slate); }
.pmx-propfoot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; padding-top: 8px; border-top: 1px solid var(--pmx-line); }

/* Text in shapes (Stage 4): the rich text editor and its text properties bar. */
.pmx-shsel .pmx-shtext { display: flex; flex-direction: column; overflow: hidden; white-space: pre-wrap; overflow-wrap: anywhere; cursor: text; caret-color: #000; }
.pmx-shtext > div { min-height: 1.2em; }
.pmx-shtext > div[data-list]::before { display: inline-block; min-width: 1.5em; text-align: start; }
.pmx-shtext > div[data-list=bullet]::before { content: '\2022'; }
.pmx-shtext > div:not([data-list=number]) { counter-reset: pmxn; }
.pmx-shtext > div[data-list=number] { counter-increment: pmxn; }
.pmx-shtext > div[data-list=number]::before { content: counter(pmxn) '.'; }
.pmx-txbar { position: absolute; z-index: 44; display: flex; align-items: center; gap: 2px; padding: 4px 6px; border-radius: 10px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); white-space: nowrap; font: 12.5px/1 system-ui, Arial, sans-serif; }
.pmx-txbar .pmx-txb { width: 28px; height: 28px; display: inline-grid; place-items: center; border-radius: 6px; }
.pmx-txbar .pmx-txb.pmx-on { background: var(--pmx-brand-tint, #f3e7ed); color: var(--pmx-brand-ink, #5c0632); }
.pmx[data-theme=dark] .pmx-txbar .pmx-txb.pmx-on { background: #3a2731; color: #f2b6d0; }
.pmx-txbar .pmx-txsize { width: auto; min-width: 42px; padding: 0 6px; border: 1px solid var(--pmx-line, #ddd); }
.pmx-txfont { padding: 6px 8px; border: 1px solid var(--pmx-line, #ddd); border-radius: 6px; color: var(--pmx-slate, #666); margin-inline-end: 3px; }
.pmx-txl { font-size: 14px; }
.pmx-txbold .pmx-txl { font-weight: 700; } .pmx-txitalic .pmx-txl { font-style: italic; font-family: Georgia, serif; }
.pmx-txunder .pmx-txl { text-decoration: underline; } .pmx-txstrike .pmx-txl { text-decoration: line-through; }
.pmx-txcol .pmx-txl { font-weight: 700; border-bottom: 3px solid #000; line-height: 1; padding-bottom: 1px; }
.pmx-txsep { width: 1px; height: 20px; background: var(--pmx-line, #ddd); margin: 0 4px; }
.pmx-txsizes { position: absolute; z-index: 46; display: grid; grid-template-columns: repeat(4, 40px); gap: 2px; padding: 6px; border-radius: 9px; background: var(--pmx-pop, #fff); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.pmx-txsizes button { height: 26px; border: 0; border-radius: 5px; background: transparent; color: var(--pmx-ink, #222); font: inherit; cursor: pointer; }
.pmx-txsizes button:hover, .pmx-txsizes button:focus-visible { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-fmsub { font-weight: 600; margin: 8px 0 2px; }
@media print { .pmx-txbar, .pmx-txsizes { display: none; } }

/* A selected group: one box round it, as in Illustrator, with no box for each item. */
.pmx-msel.pmx-ingroup { border-color: transparent; background: transparent; }
.pmx-msbox.pmx-msgroup { border: 1.5px solid #1a66e6; z-index: 4; }
.pmx-livedraw { position: absolute; left: 0; top: 0; pointer-events: none; z-index: 1; }
/* Several items selected, not grouped: each with its own edge and handles, no box round them. */
.pmx-msel:not(.pmx-ingroup) { background: transparent; border-color: transparent; }
.pmx[data-selbox] .pmx-msel:not(.pmx-ingroup) { outline: 1px solid #1473e6; }
.pmx-msel .pmx-h.pmx-mh { pointer-events: auto; margin: -4px 0 0 -4px; }
.pmx-msel .pmx-h.pmx-mh.pmx-olh { margin: 0; }
.pmx-msel .pmx-mh[data-mh=nw], .pmx-msel .pmx-mh[data-mh=se] { cursor: nwse-resize; } .pmx-msel .pmx-mh[data-mh=ne], .pmx-msel .pmx-mh[data-mh=sw] { cursor: nesw-resize; }
.pmx-msel .pmx-mh[data-mh=n], .pmx-msel .pmx-mh[data-mh=s] { cursor: ns-resize; } .pmx-msel .pmx-mh[data-mh=e], .pmx-msel .pmx-mh[data-mh=w] { cursor: ew-resize; }

/* Stage 5: paths (Direct Selection, the Pen, anchor tools), as Illustrator's. */
.pmx-dsl { position: absolute; left: 0; top: 0; overflow: visible; pointer-events: none; z-index: 5; }
.pmx-dspath { fill: none; stroke: #1473e6; }
.pmx-dsa { fill: #fff; stroke: #1473e6; pointer-events: all; cursor: default; } .pmx-dsa.pmx-on { fill: #1473e6; }
.pmx-dshl { stroke: #1473e6; } .pmx-dshd { fill: #1473e6; stroke: #fff; pointer-events: all; cursor: move; }
.pmx[data-tool=direct] .pmx-pages, .pmx[data-tool=addAnchor] .pmx-pages, .pmx[data-tool=delAnchor] .pmx-pages, .pmx[data-tool=convAnchor] .pmx-pages { cursor: default; }
.pmx[data-tool=penPath] .pmx-pages { cursor: crosshair; }
.pmx-anchorbar { position: absolute; z-index: 44; display: flex; align-items: center; gap: 2px; padding: 4px 6px; border-radius: 10px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); white-space: nowrap; font: 12.5px/1 system-ui, Arial, sans-serif; }
.pmx-anchorbar .pmx-muted { padding: 0 6px; } .pmx-anchorbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; }
/* A group's bounding box: eight handles and a turning handle. */
.pmx-msbox.pmx-msgroup .pmx-gh { position: absolute; box-sizing: border-box; width: calc(var(--pmx-px, 1px) * 8); height: calc(var(--pmx-px, 1px) * 8); margin: calc(var(--pmx-px, 1px) * -4); background: #fff; border: calc(var(--pmx-px, 1px) * 1.25) solid #1a66e6; pointer-events: auto; }
.pmx-gh[data-gh=nw], .pmx-gh[data-gh=se] { cursor: nwse-resize; } .pmx-gh[data-gh=ne], .pmx-gh[data-gh=sw] { cursor: nesw-resize; }
.pmx-gh[data-gh=n], .pmx-gh[data-gh=s] { cursor: ns-resize; } .pmx-gh[data-gh=e], .pmx-gh[data-gh=w] { cursor: ew-resize; }
.pmx-msbox.pmx-msgroup .pmx-grot { position: absolute; left: 50%; top: calc(100% + var(--pmx-px, 1px) * 16); box-sizing: border-box; width: calc(var(--pmx-px, 1px) * 10); height: calc(var(--pmx-px, 1px) * 10); margin-left: calc(var(--pmx-px, 1px) * -5); border-radius: 50%; background: #fff; border: calc(var(--pmx-px, 1px) * 1.25) solid #1a66e6; pointer-events: auto; cursor: grab; }
.pmx-msbox.pmx-msgroup .pmx-grot::after { content: ''; position: absolute; left: 50%; bottom: 100%; width: calc(var(--pmx-px, 1px) * 1); height: calc(var(--pmx-px, 1px) * 16); background: #1a66e6; }
.pmx-gghost { position: absolute; border: calc(var(--pmx-px, 1px) * 1) dashed #1a66e6; pointer-events: none; z-index: 6; transform-origin: 50% 50%; }
.pmx-gtip { position: absolute; z-index: 7; padding: 3px 7px; border-radius: 6px; background: #1a66e6; color: #fff; font: 600 11.5px system-ui, Arial, sans-serif; white-space: nowrap; transform-origin: 0 0; pointer-events: none; }
.pmx-msel.pmx-keyobj { outline: calc(var(--pmx-px, 1px) * 3) solid #1473e6 !important; }
/* Arrange (Align, Pathfinder, Order). */
.pmx-arrpane { width: 290px; }
.pmx-arrsec { padding: 6px 14px 10px; border-top: 1px solid var(--pmx-line); } .pmx-arrh { font-weight: 700; margin: 2px 0 6px; }
.pmx-arrrow { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; } .pmx-arrsub { color: var(--pmx-slate); margin: 8px 0 4px; }
.pmx-arrb { border: 1px solid var(--pmx-line) !important; background: var(--pmx-bar); width: auto; min-width: 32px; padding: 0 5px; gap: 5px; display: inline-flex; align-items: center; } .pmx-arrb:disabled { opacity: .4; }
.pmx-arrrow .pmx-fmnum { width: 56px; }
/* Isolation mode. */
.pmx-isoveil { position: absolute; left: 0; top: 0; background: rgba(255,255,255,.6); pointer-events: none; z-index: 1; }
.pmx-isoart { position: absolute; left: 0; top: 0; pointer-events: none; z-index: 1; }
.pmx-isobar { position: absolute; z-index: 40; display: flex; align-items: center; gap: 8px; padding: 5px 12px; background: #e9eef8; color: #18305e; border-bottom: 1px solid #b8c7e6; font: 12.5px system-ui, Arial, sans-serif; box-sizing: border-box; }
.pmx[data-theme=dark] .pmx-isobar { background: #1f2a3d; color: #c9d8f5; border-color: #33476a; }
/* The Layers panel's items. */
.pmx-oblist { padding: 4px 0; }
.pmx-obrow { display: grid; grid-template-columns: 24px 24px 22px 16px 1fr 18px; align-items: center; gap: 3px; padding: 2px 8px; min-height: 28px; border-top: 1px solid var(--pmx-line); cursor: default; }
.pmx-obrow.pmx-sel { background: var(--pmx-brand-tint, #f3e7ed); } .pmx[data-theme=dark] .pmx-obrow.pmx-sel { background: #3a2731; }
.pmx-obrow.pmx-obpage, .pmx-obrow.pmx-obgrp { font-weight: 600; }
.pmx-obrow.pmx-obhid .pmx-obname { opacity: .5; }
.pmx-obrow.pmx-obabove { box-shadow: 0 2px 0 #1473e6 inset; } .pmx-obrow.pmx-obbelow { box-shadow: 0 -2px 0 #1473e6 inset; }
.pmx-obrow .pmx-ib { width: 22px; height: 22px; min-width: 22px; }
.pmx-oblock:not(.pmx-on) { opacity: .3; } .pmx-oblock:not(.pmx-on):hover { opacity: .8; }
.pmx-obtw svg { transition: transform .12s; } .pmx-obtw.pmx-open svg { transform: rotate(90deg); } .pmx[dir=rtl] .pmx-obtw:not(.pmx-open) svg { transform: rotate(180deg); }
.pmx-obsw { width: 14px; height: 11px; border: 1px solid var(--pmx-line); border-radius: 2px; box-sizing: border-box; }
.pmx-obname { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-obsq { width: 10px; height: 10px; padding: 0; border: 1.5px solid #1473e6; background: transparent; cursor: pointer; } .pmx-obsq.pmx-on { background: #1473e6; }
.pmx-obedit { width: 100%; font: inherit; padding: 1px 4px; }
.pmx-obsec { font-weight: 700; padding: 10px 10px 4px; border-top: 1px solid var(--pmx-line); }
.pmx-obempty { padding: 4px 30px; }
@media print { .pmx-dsl, .pmx-anchorbar, .pmx-arrpane, .pmx-isobar, .pmx-isoveil, .pmx-isoart { display: none; } }
.pmx-ebar .pmx-patharrow { width: 14px !important; min-width: 14px !important; padding: 0 !important; margin-inline-start: -2px; }
.pmx-ebar .pmx-ib.pmx-pathon { background: var(--pmx-brand-tint, #f3e7ed); color: var(--pmx-brand-ink, #5c0632); }
.pmx-msel.pmx-mplain:not(.pmx-ingroup) { border: 1px solid #1473e6; }

/* ----- Connectors (Stage 6): connection points, glue, routes, text, and Quick connect ----- */
.pmx-anch.pmx-on { background: #fff; border-color: #18a058; transform: none; width: 15px; height: 15px; margin: -7.5px 0 0 -7.5px; border-width: 2.5px; }
.pmx-anch.pmx-own { border-color: #c98a00; background: #ffe7a6; }
.pmx-anch.pmx-own.pmx-cur { background: #c98a00; transform: scale(1.3); }
.pmx-cnglue { position: absolute; left: 0; top: 0; pointer-events: none; z-index: 5; }
.pmx-cnglue svg { overflow: visible; display: block; }
.pmx-cnglue path { fill: none; stroke: #18a058; stroke-width: 3; opacity: .85; }
.pmx-cnbar { position: absolute; z-index: 44; display: flex; align-items: center; gap: 2px; padding: 4px 6px; border-radius: 10px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); white-space: nowrap; font: 12.5px/1 system-ui, Arial, sans-serif; }
.pmx-cnbar .pmx-muted { padding: 0 6px; } .pmx-cnbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; }
.pmx-cnb { display: inline-flex; align-items: center; gap: 5px; min-width: 30px; height: 30px; padding: 0 6px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; }
.pmx-cnb svg { width: 18px; height: 18px; }
.pmx-cnb:hover { background: var(--pmx-hover, rgba(0,0,0,.06)); }
.pmx-cnb[aria-pressed="true"] { background: var(--pmx-brand-tint, #f3e7ed); color: var(--pmx-brand-ink, #5c0632); }
.pmx[data-theme=dark] .pmx-cnb[aria-pressed="true"] { background: #3a2731; color: #f2b6d0; }
.pmx-cnmid { position: absolute; z-index: 7; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; background: #fff; border: 1.5px solid #1473e6; box-sizing: border-box; }
.pmx-cnmid.pmx-ns { cursor: ns-resize; } .pmx-cnmid.pmx-ew { cursor: ew-resize; }
.pmx-lblh { position: absolute; z-index: 12; width: 10px; height: 10px; margin: -5px 0 0 -5px; background: #ffd200; border: 1px solid #6b5200; transform: rotate(45deg); cursor: grab; box-sizing: border-box; }
.pmx-lblghost { position: absolute; z-index: 6; transform: translate(-50%, -50%); border: 1px dashed #1473e6; pointer-events: none; }
.pmx-cnte { position: absolute; z-index: 45; transform: translate(-50%, -50%); padding: 3px 6px; min-height: 22px; resize: none; overflow: hidden; border: 1px solid #1473e6; border-radius: 3px; background: #fff; color: #1f1f1f; font: 11px/1.3 system-ui, Arial, sans-serif; text-align: center; box-sizing: border-box; }
.pmx-qc { position: absolute; z-index: 8; width: 22px; height: 22px; margin: -11px 0 0 -11px; padding: 4px; border: 0; border-radius: 50%; background: transparent; cursor: pointer; display: grid; place-items: center; }
.pmx-qc svg path { fill: #1a66e5; opacity: .85; } .pmx-qc:hover svg path, .pmx-qc:focus-visible svg path { fill: #0b4fb8; opacity: 1; }
.pmx-qc:hover { background: rgba(26,102,229,.12); }
.pmx-qcbar { position: absolute; z-index: 46; display: flex; gap: 2px; padding: 4px; border-radius: 9px; background: var(--pmx-pop, #fff); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.pmx-qcbar button { width: 32px; height: 26px; display: grid; place-items: center; border: 0; border-radius: 5px; background: none; cursor: pointer; }
.pmx-qcbar button:first-child { outline: 1px solid var(--pmx-line); }
.pmx-qcbar button:hover { background: var(--pmx-hover, rgba(0,0,0,.06)); }
.pmx-qcbar path { fill: #f6e7ee; stroke: #5c0632; stroke-width: 1.2; }
@media print { .pmx-cnbar, .pmx-cnmid, .pmx-lblh, .pmx-qc, .pmx-qcbar, .pmx-cnglue, .pmx-cnte { display: none; } }

/* ----- Measuring (Stage 6A) ----- */
.pmx-msrbar .pmx-msrrecent { display: inline-flex; gap: 2px; }
.pmx-msrbar .pmx-btn { height: 32px; padding: 0 8px; display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.pmx-msrbar .pmx-btn svg { width: 16px; height: 16px; }
.pmx-msrbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; }
.pmx-msrlive path.pmx-msrguide { stroke-dasharray: 4 3; opacity: .7; }
.pmx-msrlive .pmx-msrsnap { fill: none; stroke: #0a8f5a; stroke-width: 2; }
.pmx-msrlive .pmx-msrsnapf { fill: #0a8f5a; stroke: none; }
.pmx-msrlive .pmx-msrvpbox { fill: rgba(224,161,0,.08); stroke: #c98a00; stroke-width: 1.5; stroke-dasharray: 6 4; }
.pmx-msrdlg .pmx-msrck { display: flex; align-items: center; gap: 6px; margin: 6px 0; }
.pmx-msrdlg .pmx-msrvph { margin-top: 10px; }
.pmx-msrdlg .pmx-msrvps { border: 1px solid var(--pmx-line); border-radius: 8px; margin: 6px 0 10px; }
.pmx-msrdlg .pmx-msrvps > div { display: flex; align-items: center; gap: 8px; padding: 5px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-msrdlg .pmx-msrvps > div:first-child { border-top: 0; }
.pmx-msrdlg .pmx-msrvp span:first-child { flex: 1; }
.pmx-msrebar { position: absolute; z-index: 44; display: flex; align-items: center; gap: 2px; padding: 4px 6px; border-radius: 10px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); box-shadow: 0 8px 24px rgba(0,0,0,.18); white-space: nowrap; font: 12.5px/1 system-ui, Arial, sans-serif; }
.pmx-msrebar .pmx-muted { padding: 0 6px; } .pmx-msrebar .pmx-msrval { padding: 0 6px; }
.pmx-msrebar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; }
.pmx-msrebar .pmx-btn { height: 28px; padding: 0 7px; }
.pmx-msrebar input { width: 60px; margin-left: 4px; }
.pmx-msrsw { display: inline-block; width: 12px; height: 12px; border-radius: 3px; vertical-align: -2px; }
.pmx-msrlh { position: absolute; z-index: 12; width: 10px; height: 10px; margin: -5px 0 0 -5px; background: #ffd200; border: 1px solid #6b5200; transform: rotate(45deg); cursor: grab; box-sizing: border-box; }
.pmx-msrgrp { display: flex; justify-content: space-between; padding: 10px 12px 4px; }
.pmx-msrtot { display: flex; justify-content: space-between; padding: 7px 12px; border-top: 1px solid var(--pmx-line); font-weight: 600; }
.pmx-msrrow.pmx-on { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx[data-theme=dark] .pmx-msrrow.pmx-on { background: #3a2731; }
.pmx-msrrow .pmx-msrwhere { grid-column: 2 / 4; }
@media print { .pmx-msrebar, .pmx-msrlh { display: none; } }

/* ----- Drawings already on the page: their parts (Stage 7) ----- */
.pmx-dpveil { position: absolute; left: 0; top: 0; background: rgba(255,255,255,.62); pointer-events: none; z-index: 1; }
.pmx-dpsvg { position: absolute; left: 0; top: 0; z-index: 6; overflow: visible; pointer-events: none; }
.pmx-dpsvg .pmx-dpo { fill: none; stroke: #1473e6; stroke-dasharray: 3 2; opacity: .85; }
.pmx-dpsvg .pmx-dpo.pmx-on { stroke-dasharray: none; opacity: 1; }
.pmx-dpsvg .pmx-dpbox { fill: none; stroke: #1473e6; }
.pmx-dpsvg .pmx-dph { fill: #fff; stroke: #1473e6; pointer-events: all; cursor: nwse-resize; }
.pmx-dpsvg .pmx-dprot { cursor: grab; }
.pmx-dpsvg .pmx-dphl { stroke: #1473e6; }
.pmx-dpbar { z-index: 45; }
.pmx-dpsw { display: inline-block; width: 14px; height: 14px; border-radius: 3px; border: 1px solid rgba(0,0,0,.25); vertical-align: -3px; }
.pmx-dpsw.pmx-none { background: linear-gradient(135deg, #fff 44%, #d00 45%, #d00 55%, #fff 56%); }
.pmx-dpgrid { display: grid; grid-template-columns: repeat(8, 24px); gap: 3px; padding: 6px 12px 10px; }
.pmx-dpsq { width: 22px; height: 22px; border-radius: 4px; border: 1px solid rgba(0,0,0,.2); cursor: pointer; padding: 0; }
.pmx-dpsq:hover, .pmx-dpsq:focus-visible { outline: 2px solid #1473e6; outline-offset: 1px; }
.pmx-dpgh { padding: 6px 12px 0; font-size: 11.5px; }
.pmx-dplive { z-index: 0; }
@media print { .pmx-dpveil, .pmx-dpsvg, .pmx-dpbar, .pmx-dpcrumbs { display: none; } }
/* Paste Options (Stage 8), as Office's: by the pasted item, at the screen's own size. */
.pmx-pasteopt { position: absolute; z-index: 30; font: 12.5px/1.3 system-ui, Arial, sans-serif; }
.pmx-pobtn { display: inline-flex; align-items: center; gap: 4px; padding: 3px 6px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 6px; box-shadow: var(--pmx-shadow); cursor: pointer; }
.pmx-pobtn svg { width: 16px; height: 16px; }
.pmx-pomenu { margin-top: 4px; width: 270px; padding: 6px 0; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 9px; box-shadow: var(--pmx-shadow); }
.pmx-pohead { padding: 2px 12px 6px; color: var(--pmx-slate); font-size: 12px; }
.pmx-porow { display: grid; grid-template-columns: 22px 1fr auto; align-items: center; gap: 8px; width: 100%; padding: 6px 12px; text-align: start; background: none; border: 0; color: inherit; cursor: pointer; }
.pmx-porow:hover, .pmx-porow:focus-visible { background: var(--pmx-bar); }
.pmx-porow.pmx-on { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx[data-theme=dark] .pmx-porow.pmx-on { background: #3a2731; }
.pmx-porow svg { width: 18px; height: 18px; }
.pmx-pot b { display: block; font-weight: 500; } .pmx-pot small { display: block; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-porow kbd { color: var(--pmx-slate); font: inherit; font-size: 12px; }
/* Save as picture. */
.pmx-picdlg2 { width: min(440px, calc(100vw - 32px)); }
.pmx-sppv { height: 140px; margin: 4px 0 12px; border: 1px solid var(--pmx-line); border-radius: 8px; display: grid; place-items: center; overflow: hidden; background-color: #fff; background-image: linear-gradient(45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%), linear-gradient(45deg, #e6e6e6 25%, transparent 25%, transparent 75%, #e6e6e6 75%); background-size: 14px 14px; background-position: 0 0, 7px 7px; }
.pmx-sppv.pmx-spwhite { background-image: none; }
.pmx-spimg { max-width: 100%; max-height: 130px; }
.pmx-sprow { display: grid; grid-template-columns: 110px 1fr; align-items: center; gap: 10px; margin: 6px 0; }
.pmx-sprow .pmx-seg { margin-bottom: 0; }
.pmx-sprow input[type=text] { width: 100%; }
.pmx-spinfo { margin: -2px 0 6px 120px; font-size: 12px; }
.pmx-spchk { display: inline-flex; align-items: center; gap: 6px; }

/* The ruler and tab stops (Editing Text, Stage 3). */
.pmx-tabruler { position: absolute; z-index: 59; pointer-events: auto; height: 24px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); border-radius: 4px; box-shadow: 0 2px 8px rgba(0, 0, 0, .12); font: 10px/1 system-ui, Arial, sans-serif; color: var(--pmx-slate); user-select: none; touch-action: none; cursor: default; }
.pmx-rlm { position: absolute; top: 0; bottom: 0; background: var(--pmx-line); pointer-events: auto; }
.pmx-rlt { position: absolute; bottom: 0; width: 1px; height: 3px; background: var(--pmx-slate); } .pmx-rlt2 { height: 6px; }
.pmx-rln { position: absolute; top: 5px; transform: translateX(-50%); }
.pmx-rlmk { position: absolute; z-index: 2; pointer-events: auto; width: 0; height: 0; cursor: ew-resize; }
.pmx-rlfirst { top: -1px; transform: translateX(-6px); border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 8px solid var(--pmx-brand, #5c0632); }
.pmx-rlhang, .pmx-rlright { bottom: 5px; transform: translateX(-6px); border-left: 6px solid transparent; border-right: 6px solid transparent; border-bottom: 8px solid var(--pmx-brand, #5c0632); }
.pmx-rlright { bottom: -1px; }
.pmx-rlleft { bottom: -1px; width: 11px; height: 5px; transform: translateX(-5.5px); background: var(--pmx-brand, #5c0632); }
.pmx[data-theme=dark] .pmx-rlfirst { border-top-color: #f2b6d0; } .pmx[data-theme=dark] .pmx-rlhang, .pmx[data-theme=dark] .pmx-rlright { border-bottom-color: #f2b6d0; } .pmx[data-theme=dark] .pmx-rlleft { background: #f2b6d0; }
.pmx-rlstop { position: absolute; z-index: 2; pointer-events: auto; bottom: 2px; width: 10px; height: 10px; transform: translateX(-1px); color: var(--pmx-ink); cursor: ew-resize; }
.pmx-rlstop[data-kind=R] { transform: translateX(-9px); } .pmx-rlstop[data-kind=C], .pmx-rlstop[data-kind=D] { transform: translateX(-5px); }
.pmx-rlfound { opacity: .55; cursor: default; }
.pmx-rloff { opacity: .3; }
.pmx-rltip { position: absolute; top: 28px; display: none; padding: 4px 8px; border-radius: 5px; background: #222; color: #fff; font-size: 12px; white-space: nowrap; transform: translateX(-50%); }
.pmx-rlkind { position: absolute; z-index: 1; pointer-events: auto; left: 2px; top: 1px; width: 20px; height: 20px; padding: 0; border: 1px solid var(--pmx-line); border-radius: 4px; background: var(--pmx-pop, #fff); color: var(--pmx-ink); display: grid; place-items: center; cursor: pointer; }
.pmx-tabruler.pmx-rtl .pmx-rlkind { left: auto; right: 2px; }
.pmx-fmttxt { height: 26px; padding: 0 8px; font-size: 12px; } .pmx-fmttxt[aria-pressed=true] { background: var(--pmx-brand-tint, #f3e7ed); }
.pmx-tabsdlg .pmx-tbgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 18px; margin: 6px 0 10px; }
.pmx-tabsdlg .pmx-tbcol { display: flex; flex-direction: column; gap: 6px; } .pmx-tabsdlg select { min-height: 110px; }
.pmx-tabsdlg input[type=number] { width: 90px; } .pmx-tbgrp label { display: flex; gap: 6px; align-items: center; padding: 1px 0; }
.pmx-tbbtns { display: flex; gap: 6px; }
/* The Tabs dialog over the Format bar and the ruler it is opened from. */
.pmx-veil:has(.pmx-tabsdlg) { z-index: 70; }

/* Text blocks (Editing Text, Stage 4): the turn handle. */
.pmx-tbrot { position: absolute; z-index: 8; width: calc(var(--pmx-px, 1px) * 14); height: calc(var(--pmx-px, 1px) * 14); margin-left: calc(var(--pmx-px, 1px) * -7); border-radius: 50%; background: #fff; border: calc(var(--pmx-px, 1px) * 1.5) solid #1473e6; cursor: grab; pointer-events: auto; }
.pmx-tbrot::after { content: ""; position: absolute; left: 50%; top: 100%; height: calc(var(--pmx-px, 1px) * 8); border-left: calc(var(--pmx-px, 1px) * 1.5) solid #1473e6; }

/* Alternative text for shapes and drawings (Shapes Stage 9). */
.pmx-altdlg { width: min(440px, calc(100vw - 32px)); }
.pmx-altdlg h2 { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; }
.pmx-altdlg .pmx-altkind { font-size: 13px; font-weight: 400; color: var(--pmx-slate); }
.pmx-altdlg textarea { width: 100%; box-sizing: border-box; font: inherit; padding: 6px 8px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); resize: vertical; }
.pmx-altdlg .pmx-altdeco { display: flex; gap: 8px; align-items: flex-start; margin-top: 10px; }
.pmx-altdlg .pmx-altdeco input { margin-top: 3px; }
.pmx-a11yshape { display: grid; grid-template-columns: 150px 1fr auto; gap: 8px; align-items: center; margin: 4px 0; }
.pmx-a11yshape input[type=text] { min-width: 0; padding: 4px 8px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; }
.pmx-a11ydeco { display: inline-flex; gap: 5px; align-items: center; font-size: 12px; }
.pmx-a11yshapes .pmx-small { font-size: 12px; }
.pmx-mselwrap { position: absolute; left: 0; top: 0; width: 0; height: 0; pointer-events: none; }
/* Text selected while a block is edited keeps its own colour (a new colour shows at once). */
.pmx-rev.pmx-revedit ::selection, .pmx-rev.pmx-revedit::selection { background: rgba(20, 115, 230, .28); }
/* A turned block's tracked changes, turned with it. */
.pmx-revturn { position: absolute; left: 0; top: 0; width: 0; height: 0; pointer-events: none; }
.pmx-revturn > .pmx-rev { pointer-events: auto; }
/* (Only the text itself is backed, so what the turned block crosses still shows round it; its
   change bar is left out, as it would lie across the page.) */
.pmx-revturn > .pmx-rev { background: transparent; }
.pmx-revturn > .pmx-rev span:not([style*="background"]), .pmx-revturn > .pmx-rev ins, .pmx-revturn > .pmx-rev del { background-color: #fff; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.pmx-revturn > .pmx-rev.pmx-revbar::before { display: none; }
/* Strikethrough, Highlight, and the Format painter on the Format bar (approved 5 November 2026). */
.pmx-fmtbar .pmx-hlsplit { display: inline-flex; align-items: center; }
.pmx-fmtbar .pmx-hlsplit .pmx-fmtb[data-k=fmtHl] { min-width: 26px; padding: 0 2px; }
.pmx-fmtbar .pmx-hlarrow, .pmx-fmtbar .pmx-jarrow { min-width: 14px; width: 14px; padding: 0; }
.pmx-fmtbar .pmx-hlbar { fill: #ffff00; }
.pmx-hlpop, .pmx-jpop { position: absolute; z-index: 70; width: 214px; padding: 8px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); border-radius: 10px; box-shadow: 0 6px 20px rgba(0, 0, 0, .18); font: 12.5px/1.3 system-ui, sans-serif; }
.pmx-jpop { width: 250px; padding: 6px; }
.pmx-hlh { font-weight: 700; padding: 2px 2px 7px; }
.pmx-hlsub { color: var(--pmx-slate, #666); padding: 8px 2px 5px; font-size: 11.5px; }
.pmx-hlgrid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.pmx-hlsw { height: 26px; border-radius: 5px; border: 1px solid rgba(0, 0, 0, .18); cursor: pointer; padding: 0; }
.pmx-hlsw.pmx-on { box-shadow: 0 0 0 2px var(--pmx-pop, #fff), 0 0 0 4px #1473e6; }
.pmx-hlsw:focus-visible { outline: 2px solid #1473e6; outline-offset: 2px; }
.pmx-hlrow { display: flex; gap: 8px; align-items: center; width: 100%; margin-top: 6px; padding: 6px 4px; border: 0; border-top: 1px solid var(--pmx-line, #ddd); background: none; color: inherit; font: inherit; cursor: pointer; text-align: start; }
.pmx-hlrow input[type=color] { width: 20px; height: 20px; padding: 0; border: 1px solid var(--pmx-slate, #888); border-radius: 4px; background: none; }
.pmx-hlnone { width: 18px; height: 18px; border: 1px solid var(--pmx-slate, #888); border-radius: 4px; background: linear-gradient(135deg, transparent 45%, #c8102e 46% 54%, transparent 55%); }
.pmx-jrow { display: flex; gap: 8px; width: 100%; padding: 6px 8px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; text-align: start; }
.pmx-jrow:hover, .pmx-jrow:focus-visible { background: #1473e6; color: #fff; }
.pmx-jrow small { display: block; opacity: .8; font-size: 11.5px; }
.pmx-jtick { width: 14px; flex: none; }
.pmx-rev.pmx-painting { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='%23fff' stroke='%23222' stroke-width='1.6' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='13' height='6' rx='1'/%3E%3Cpath d='M17 6h2.5v5H11v3' fill='none'/%3E%3Crect x='9.6' y='14' width='2.8' height='7' rx='.9'/%3E%3C/svg%3E") 10 21, copy; }
/* Paste options, by text pasted with its formatting (approved 5 November 2026). */
.pmx-pastechip { position: fixed; z-index: 80; font: 12px/1.3 system-ui, sans-serif; }
.pmx-pastebtn { display: inline-flex; align-items: center; gap: 2px; height: 24px; padding: 0 5px; border: 1px solid var(--pmx-line, #ddd); border-radius: 5px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); box-shadow: 0 2px 8px rgba(0, 0, 0, .15); cursor: pointer; font: inherit; }
.pmx-pastekey { color: var(--pmx-slate, #666); margin-inline-start: 2px; }
.pmx-pastemenu { position: absolute; top: 28px; left: 0; width: 300px; padding: 6px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); border-radius: 10px; box-shadow: 0 6px 20px rgba(0, 0, 0, .18); font: 12.5px/1.35 system-ui, sans-serif; }
.pmx-pasterow { display: flex; justify-content: space-between; gap: 8px; width: 100%; padding: 6px 8px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; text-align: start; cursor: pointer; }
.pmx-pasterow small { display: block; color: var(--pmx-slate, #666); }
.pmx-pasterow[aria-checked=true], .pmx-pasterow:hover, .pmx-pasterow:focus-visible { background: #1473e6; color: #fff; }
.pmx-pasterow[aria-checked=true] small, .pmx-pasterow:hover small, .pmx-pasterow:focus-visible small { color: rgba(255, 255, 255, .85); }
.pmx-pasterow kbd { font: inherit; opacity: .8; }
.pmx-pastedef { border-top: 1px solid var(--pmx-line, #ddd); border-radius: 0 0 6px 6px; margin-top: 4px; color: var(--pmx-slate, #666); }
/* Paragraph styles (approved 5 November 2026). */
.pmx-simbox { position: absolute; pointer-events: none; background: rgba(20, 115, 230, .12); outline: calc(var(--pmx-px, 1px) * 1.5) solid #1473e6; border-radius: 2px; z-index: 2; }
.pmx-simbox.pmx-simlead { background: rgba(20, 115, 230, .2); }
.pmx-simstat { font-size: 12px; padding: 0 6px; color: var(--pmx-ink); }
.pmx-fmtbar .pmx-stylebtn { height: 26px; padding: 0 6px; display: inline-flex; align-items: center; gap: 4px; font-size: 12px; max-width: 150px; }
.pmx-fmtbar .pmx-stylebtn span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-simnote { flex-basis: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 4px 6px; margin-bottom: 2px; border-radius: 6px; background: rgba(20, 115, 230, .12); color: var(--pmx-ink); font-size: 12px; }
.pmx-stylepop { position: absolute; z-index: 70; width: 330px; padding: 6px; background: var(--pmx-pop, #fff); color: var(--pmx-ink, #222); border: 1px solid var(--pmx-line, #ddd); border-radius: 10px; box-shadow: 0 6px 20px rgba(0, 0, 0, .18); font: 12.5px/1.3 system-ui, sans-serif; }
.pmx-stylerow { display: flex; justify-content: space-between; align-items: center; gap: 8px; width: 100%; padding: 6px 10px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; text-align: start; cursor: pointer; }
.pmx-stylerow[aria-checked=true] { background: rgba(20, 115, 230, .12); outline: 1px solid #1473e6; }
.pmx-stylerow:hover:not([disabled]), .pmx-stylerow:focus-visible { background: #1473e6; color: #fff; }
.pmx-stylerow[disabled] { opacity: .45; cursor: default; }
.pmx-stylecount { color: var(--pmx-slate, #666); font-size: 11.5px; }
.pmx-stylerow:hover .pmx-stylecount { color: rgba(255, 255, 255, .85); }
.pmx-stylesep { border-top: 1px solid var(--pmx-line, #ddd); margin: 5px 0; }
/* The History panel (approved 5 November 2026). */
.pmx-hist { padding: 4px 2px; font: 13px/1.35 system-ui, sans-serif; color: var(--pmx-ink); }
.pmx-histfind { width: 100%; box-sizing: border-box; margin: 2px 0 8px; padding: 5px 8px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; }
.pmx-histrow { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px; padding: 7px 8px; border-radius: 7px; cursor: pointer; }
.pmx-histrow:hover, .pmx-histrow:focus-visible { background: var(--pmx-hover, rgba(0, 0, 0, .05)); outline: none; }
.pmx-histrow.pmx-here { background: rgba(20, 115, 230, .13); outline: 1.5px solid #1473e6; }
.pmx-histrow.pmx-later { opacity: .5; }
.pmx-histlabel { flex: 1; min-width: 0; }
.pmx-histlabel small { display: block; color: var(--pmx-slate); }
.pmx-histtime { color: var(--pmx-slate); font-size: 11.5px; }
.pmx-histacts { flex-basis: 100%; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-top: 4px; }
.pmx-histwarn { flex-basis: 100%; color: var(--pmx-slate); }
.pmx-histnone { color: var(--pmx-slate); padding: 8px; }
.pmx-histshow { position: absolute; pointer-events: none; z-index: 3; background: rgba(255, 200, 0, .28); outline: calc(var(--pmx-px, 1px) * 2) solid #e0a100; border-radius: 3px; }
/* Replace Fonts and Replace Colours (replace.js). */
.pmx-rfdlg, .pmx-rcdlg { width: min(620px, 94vw); }
.pmx-mgdlg { width: min(600px, 94vw); }
.pmx-rpgrid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
@media (max-width: 640px) { .pmx-rpgrid { grid-template-columns: 1fr; } }
.pmx-rphead { font-weight: 700; margin: 10px 0 4px; }
.pmx-rpgrid > div > .pmx-rphead:first-child { margin-top: 0; }
.pmx-rplist { border: 1px solid var(--pmx-line); border-radius: 7px; background: var(--pmx-bar); overflow: hidden; max-height: 260px; overflow-y: auto; }
.pmx-rprow { display: flex; flex-direction: column; gap: 1px; padding: 6px 9px; cursor: pointer; border-radius: 6px; }
.pmx-rprow small { color: var(--pmx-slate); }
.pmx-rprow:hover, .pmx-rprow:focus-visible { background: var(--pmx-hover, rgba(0, 0, 0, .05)); outline: none; }
.pmx-rprow.pmx-on { background: #1473e6; color: #fff; }
.pmx-rprow.pmx-on small { color: rgba(255, 255, 255, .9); }
.pmx-rfprev { border: 1px solid var(--pmx-line); border-radius: 7px; padding: 7px 9px; background: #fff; color: #111; margin-top: 6px; font-size: 13px; line-height: 1.45; }
.pmx-rfprev small { display: block; color: #777; font: 11px system-ui, Arial, sans-serif; }
.pmx-rpline { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
.pmx-rcgroup { font-size: 11.5px; color: var(--pmx-slate); margin: 8px 0 2px; }
.pmx-rcrow { flex-direction: row; align-items: center; gap: 8px; }
.pmx-rcrow.pmx-on { background: rgba(20, 115, 230, .12); color: inherit; outline: 1.5px solid #1473e6; }
.pmx-rcrow.pmx-on small { color: var(--pmx-slate); }
.pmx-rcsw { width: 18px; height: 18px; border-radius: 4px; border: 1px solid var(--pmx-line); flex: none; }
.pmx-rchex { flex: 1; font-variant-numeric: tabular-nums; }
.pmx-rcpreset { margin: 8px 0 0; padding: 6px 9px; border-radius: 7px; background: rgba(224, 161, 0, .12); }
.pmx-rcpreset:empty { display: none; }
.pmx-rcmenu { position: fixed; z-index: 90; width: 330px; padding: 6px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); display: flex; flex-direction: column; }
.pmx-rcmenu button { text-align: start; padding: 6px 8px; border: 0; border-radius: 6px; background: none; color: inherit; font: inherit; cursor: pointer; display: flex; flex-direction: column; }
.pmx-rcmenu button:hover, .pmx-rcmenu button:focus-visible { background: #1473e6; color: #fff; outline: none; }
.pmx-rcmenu small { color: inherit; opacity: .8; }
.pmx-rpshow { position: absolute; pointer-events: none; z-index: 3; background: rgba(224, 161, 0, .14); outline: calc(var(--pmx-px, 1px) * 1.5) solid #e0a100; border-radius: 2px; }
/* Merge Reviewed Copies (merge.js). */
.pmx-mgorig { padding: 5px 9px; border: 1px solid var(--pmx-line); border-radius: 7px; background: var(--pmx-bar); }
.pmx-mgtable { border: 1px solid var(--pmx-line); border-radius: 7px; overflow: hidden; }
.pmx-mgrow { display: grid; grid-template-columns: minmax(0, 1fr) 90px 90px; gap: 6px; align-items: center; padding: 6px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-mgrow:first-child { border-top: 0; }
.pmx-mghead { background: var(--pmx-bar); font-size: 12px; color: var(--pmx-slate); }
.pmx-mgrow input[type=text] { width: 9em; }
.pmx-mgrow .pmx-cdot { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-inline-end: 6px; }
.pmx-linkbtn { border: 0; background: none; color: #1473e6; font: inherit; padding: 6px 0; cursor: pointer; }
.pmx[data-theme=dark] .pmx-linkbtn { color: #8ab8ff; }
.pmx-mgsum { margin-top: 10px; padding: 9px 11px; border-radius: 8px; background: rgba(224, 161, 0, .12); border: 1px solid #e0a100; }
.pmx-mgsum:empty { display: none; }
.pmx-chchips { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 2px 10px; }
.pmx-chchip { padding: 4px 10px; border-radius: 14px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); color: inherit; font: inherit; font-size: 12.5px; cursor: pointer; }
.pmx-chchip.pmx-on { background: #1473e6; border-color: #1473e6; color: #fff; }
.pmx-chchip.pmx-chclash { background: #5c0632; border-color: #5c0632; color: #fff; }
.pmx[data-theme=dark] .pmx-chchip.pmx-chclash { background: #f2b6d0; border-color: #f2b6d0; color: #18161b; }
.pmx-clash { border: 1.5px solid #e0a100; border-radius: 9px; padding: 9px 11px; margin: 0 2px 10px; }
.pmx-clashline { display: flex; gap: 7px; align-items: baseline; padding: 4px 0; }
.pmx-clashline .pmx-cdot { flex: none; width: 9px; height: 9px; border-radius: 50%; }
.pmx-clashacts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
/* Edits that keep the tags (tags.js). */
.pmx-ro { padding: 4px 2px; }
.pmx-rolist { display: flex; flex-direction: column; gap: 2px; }
.pmx-rorow { display: flex; gap: 8px; align-items: flex-start; padding: 6px 8px; border-radius: 7px; cursor: grab; }
.pmx-rorow:hover, .pmx-rorow:focus-visible { background: var(--pmx-hover, rgba(0, 0, 0, .05)); outline: none; }
.pmx-rorow.pmx-on { background: rgba(20, 115, 230, .12); outline: 1.5px solid #1473e6; }
.pmx-rorow.pmx-sel { outline: 1.5px solid #e0a100; }
.pmx-rorow.pmx-drop { box-shadow: inset 0 2px 0 #1473e6; }
.pmx-rokind { flex: none; min-width: 34px; padding: 1px 5px; border-radius: 4px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); font: 11px ui-monospace, Consolas, monospace; text-align: center; }
.pmx-rotext { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.pmx-rokept { display: block; color: #2e7d32; }
.pmx[data-theme=dark] .pmx-rokept { color: #8fd694; }
.pmx-roedit { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 4px 8px 8px 50px; }
.pmx-roshow { position: absolute; pointer-events: none; z-index: 3; background: rgba(20, 115, 230, .14); outline: calc(var(--pmx-px, 1px) * 2) solid #1473e6; border-radius: 3px; }
.pmx-a11yedits { border-inline-start: 3px solid #e0a100; padding-inline-start: 9px; margin: 8px 0; }
.pmx-a11yhead { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; padding: 4px 0; }
/* QR codes and barcodes (codes.js) */
.pmx-dlg.pmx-cddlg { width: min(780px, calc(100vw - 32px)); max-width: none; }
.pmx-cdtabs { display: flex; flex-wrap: wrap; gap: 4px; margin: 2px 0 10px; }
.pmx-cdtab { padding: 4px 10px; border-radius: 14px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; font-size: 12px; cursor: pointer; }
.pmx-cdtab.pmx-on { background: var(--pmx-accent, #5c0632); border-color: var(--pmx-accent, #5c0632); color: #fff; }
.pmx-cdtab.pmx-cdswap { border-style: dashed; }
.pmx-cdmain { display: grid; grid-template-columns: 1fr 230px; gap: 18px; }
.pmx-cdfield { display: block; margin: 0 0 8px; font-size: 13px; }
.pmx-cdfield > span { display: block; font-size: 12px; color: var(--pmx-slate); margin-bottom: 2px; }
.pmx-cdfield input[type=text], .pmx-cdfield input[type=number], .pmx-cdfield input[type=datetime-local], .pmx-cdfield textarea, .pmx-cdfield select { width: 100%; box-sizing: border-box; padding: 5px 8px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; }
.pmx-cdrow { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 14px; }
.pmx-cdinline { display: flex; gap: 6px; } .pmx-cdinline > * { flex: 1; }
.pmx-cdnote { font-size: 12px; color: var(--pmx-slate); margin: 2px 0 10px; }
.pmx-cdright { text-align: center; }
.pmx-cdprev { background: #fff; color: #000; padding: 8px; border: 1px solid var(--pmx-line); border-radius: 8px; min-height: 120px; display: flex; flex-direction: column; align-items: center; justify-content: center; margin-top: 6px; }
.pmx-cdprev svg { max-width: 100%; height: auto; display: block; }
.pmx-cdcap { font: 11px Arial, sans-serif; margin-top: 2px; }
.pmx-cderr { color: #b3261e; font-size: 12.5px; padding: 6px; }
.pmx-cdinfo { font-size: 12px; color: var(--pmx-slate); margin-top: 8px; }
.pmx-cdrb { font-size: 12px; margin-top: 6px; } .pmx-cdrb.pmx-ok { color: #2e7d32; } .pmx-cdrb.pmx-bad { color: #b3261e; }
.pmx-codebox { position: absolute; z-index: 6; border: 1.5px dashed rgba(20, 115, 230, .8); border-radius: 3px; background: rgba(20, 115, 230, .05); cursor: help; }
.pmx-codebox.pmx-warn { border-color: rgba(196, 55, 44, .9); background: rgba(196, 55, 44, .06); }
.pmx-codebox.pmx-flash { box-shadow: 0 0 0 4px rgba(20, 115, 230, .35); }
.pmx-cdcard { position: absolute; z-index: 60; width: 330px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); overflow: hidden; font-size: 13px; }
.pmx-cdband { height: 5px; background: #2e7d32; } .pmx-cdcard.pmx-warn .pmx-cdband { background: #c4372c; }
.pmx-cdbody { padding: 10px 12px; }
.pmx-cdtext { font-weight: 600; word-break: break-all; margin: 2px 0 6px; white-space: pre-wrap; }
.pmx-cdwarn { margin: 4px 0; padding: 5px 8px; border-radius: 6px; background: rgba(196, 55, 44, .1); color: #b3261e; font-size: 12px; }
.pmx-cdacts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.pmx-cdpanel { padding: 4px 2px; font-size: 13px; }
.pmx-cdrowp { padding: 7px 8px; border: 1px solid var(--pmx-line); border-radius: 7px; margin: 0 0 5px; cursor: pointer; }
.pmx-cdrowp.pmx-on { background: rgba(20, 115, 230, .12); border-color: #1473e6; }
.pmx-cdrh { display: flex; justify-content: space-between; gap: 6px; } .pmx-cdrh small { color: var(--pmx-slate); white-space: nowrap; }
.pmx-cdrt { font-size: 12px; word-break: break-all; }
@media (max-width: 640px) { .pmx-cdmain { grid-template-columns: 1fr; } }
/* Barcode fields and page authenticity codes (6 November 2026). */
.pmx-cfgroup { margin: 0 0 10px; font-size: 13px; } .pmx-cfgroup > b { display: block; font-size: 12.5px; margin-bottom: 4px; }
.pmx-cfrow { display: flex; flex-wrap: wrap; gap: 4px 16px; align-items: center; }
.pmx-cfradio { display: inline-flex; gap: 5px; align-items: center; font-size: 13px; cursor: pointer; }
.pmx-cfh { display: block; font-size: 12.5px; margin: 8px 0 4px; }
.pmx-cflist { border: 1px solid var(--pmx-line); border-radius: 7px; padding: 6px 10px; max-height: 150px; overflow: auto; margin-bottom: 6px; }
.pmx-cflist .pmx-a11ychk { display: flex; margin: 3px 0; }
.pmx-cfdlg [data-k=cfPattern] { width: 100%; box-sizing: border-box; padding: 5px 7px; margin: -4px 0 8px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bg, #fff); color: inherit; }
.pmx-acdlg { max-width: 640px; } .pmx-acdlg .pmx-a11ychk { display: flex; margin: 6px 0; }
.pmx-acsign { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: -4px 0 6px; } .pmx-acsign input[type=password] { padding: 4px 7px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bg, #fff); color: inherit; }
.pmx-acname input { max-width: 360px; }
.pmx-acfoot { margin-top: 8px; font-size: 12px; }
.pmx-accard { position: absolute; z-index: 61; left: 50%; top: 18%; transform: translateX(-50%); width: 380px; }
.pmx-accard.pmx-bad .pmx-cdband { background: #c4372c; } .pmx-accard.pmx-warn .pmx-cdband { background: #b26a00; } .pmx-accard.pmx-none .pmx-cdband { background: var(--pmx-line); }
.pmx-accard .pmx-x { float: right; border: 0; background: none; color: var(--pmx-slate); font-size: 18px; line-height: 1; cursor: pointer; }
.pmx-actitle { font-size: 15px; font-weight: 700; margin: 2px 0 8px; } .pmx-accard.pmx-ok .pmx-actitle { color: #2e7d32; } .pmx-accard.pmx-bad .pmx-actitle { color: #b3261e; } .pmx-accard.pmx-warn .pmx-actitle { color: #9a5b00; }
.pmx-acgrid { display: grid; grid-template-columns: auto 1fr; gap: 3px 12px; font-size: 12.5px; margin-bottom: 6px; } .pmx-acgrid > span { word-break: break-word; }
.pmx-acchanges { margin: 6px 0; padding: 6px 9px; border-radius: 6px; background: rgba(196, 55, 44, .1); color: #b3261e; font-size: 12px; } .pmx-acchanges > div { margin: 2px 0; }
.pmx-acdet { margin-top: 6px; font-size: 11.5px; color: var(--pmx-slate); } .pmx-acdet code { display: block; margin-top: 4px; max-height: 90px; overflow: auto; word-break: break-all; font-size: 10.5px; }
.pmx-acmark { position: absolute; z-index: 6; border: 2px solid rgba(196, 55, 44, .9); background: rgba(196, 55, 44, .12); border-radius: 2px; pointer-events: none; }
.pmx-aclist { display: flex; flex-direction: column; gap: 4px; max-height: 360px; overflow: auto; margin: 6px 0; }
.pmx-acrow { display: grid; grid-template-columns: 70px 1fr auto; gap: 8px; align-items: center; text-align: start; padding: 6px 9px; border: 1px solid var(--pmx-line); border-radius: 7px; background: none; color: inherit; cursor: pointer; font: inherit; font-size: 12.5px; }
.pmx-acrow small { color: var(--pmx-slate); } .pmx-acs-issued b { color: #2e7d32; } .pmx-acs-changed b, .pmx-acs-badSignature b { color: #b3261e; } .pmx-acs-none b { color: var(--pmx-slate); font-weight: 400; }
.pmx-acall .pmx-ok { color: #2e7d32; font-weight: 600; } .pmx-acall .pmx-bad { color: #b3261e; font-weight: 600; }
.pmx[data-theme="dark"] .pmx-acchanges, .pmx[data-theme="dark"] .pmx-cdwarn { background: rgba(255, 138, 128, .14); color: #ffb4ab; }
.pmx[data-theme="dark"] .pmx-accard.pmx-ok .pmx-actitle, .pmx[data-theme="dark"] .pmx-acs-issued b, .pmx[data-theme="dark"] .pmx-acall .pmx-ok { color: #7bd88f; }
.pmx[data-theme="dark"] .pmx-accard.pmx-bad .pmx-actitle, .pmx[data-theme="dark"] .pmx-acs-changed b, .pmx[data-theme="dark"] .pmx-acs-badSignature b, .pmx[data-theme="dark"] .pmx-acall .pmx-bad { color: #ff8a80; }
.pmx[data-theme="dark"] .pmx-accard.pmx-warn .pmx-actitle { color: #ffc46b; }
.pmx-acsign input[type=password] { flex: 0 1 220px; }

/* pdfMax manuals: the look of the manuals' text, shared by the printed manuals and the
   Reader's built-in Help. QR documentation style: Arial, black text, Title Case headings,
   decimal-numbered paragraphs, and (1), (a), (A) lists. */
.pmx-manual { font-family: Arial, "Liberation Sans", Helvetica, sans-serif; font-size: 10pt; line-height: 1.45; color: #000; counter-reset: sec; }
.pmx-manual section { counter-increment: sec; counter-reset: par; margin: 0 0 18pt; }
.pmx-manual h2 { font-size: 13pt; margin: 18pt 0 6pt; }
.pmx-manual h2::before { content: counter(sec) ". "; }
.pmx-manual h3 { font-size: 11pt; margin: 12pt 0 4pt; }
.pmx-manual h4 { font-size: 10pt; margin: 10pt 0 4pt; }
.pmx-manual p.cl { counter-increment: par; position: relative; padding-left: 3.2em; margin: 0 0 6pt; }
.pmx-manual p.cl::before { content: counter(sec) "." counter(par); position: absolute; left: 0; color: #444; }
.pmx-manual ol.qr { list-style: none; counter-reset: li; padding-left: 3.2em; margin: 0 0 6pt; }
.pmx-manual ol.qr > li { counter-increment: li; position: relative; padding-left: 2.2em; margin: 0 0 3pt; }
.pmx-manual ol.qr > li::before { content: "(" counter(li) ")"; position: absolute; left: 0; }
.pmx-manual ol.qr ol.qr > li::before { content: "(" counter(li, lower-alpha) ")"; }
.pmx-manual ol.qr ol.qr ol.qr > li::before { content: "(" counter(li, upper-alpha) ")"; }
.pmx-manual table { border-collapse: collapse; width: 100%; margin: 4pt 0 10pt; font-size: 9.5pt; }
.pmx-manual th, .pmx-manual td { border: 0.75pt solid #999; padding: 4pt 6pt; text-align: left; vertical-align: top; }
.pmx-manual th { background: #f0f0f0; }
.pmx-manual table.defs td { font-size: 9pt; }
.pmx-manual table.defs td:first-child { font-weight: bold; width: 28%; }
.pmx-manual code, .pmx-manual pre { font-family: "Liberation Mono", Consolas, monospace; font-size: 9pt; }
.pmx-manual pre { background: #f6f6f6; border: 0.75pt solid #ddd; padding: 6pt 8pt; overflow-x: auto; margin: 4pt 0 8pt; white-space: pre; }
.pmx-manual kbd { font-family: inherit; border: 0.75pt solid #999; border-bottom-width: 1.5pt; border-radius: 3px; padding: 0 3px; }
.pmx-manual mark { background: #ffe66b; }

/* pdfMax Reader built-in Help */
.pmx-helpveil { position: absolute; inset: 0; z-index: 40; background: rgba(20, 16, 24, .32); display: flex; justify-content: flex-end; }
.pmx[dir="rtl"] .pmx-helpveil { justify-content: flex-start; }
.pmx-help { width: min(860px, 100%); height: 100%; background: var(--pmx-bar); color: var(--pmx-ink); display: flex; flex-direction: column; box-shadow: var(--pmx-shadow, 0 16px 40px -8px rgba(0, 0, 0, .3)); }
.pmx-helphead { display: flex; align-items: center; gap: 8px; padding: 10px 12px; border-bottom: 1px solid var(--pmx-line); }
.pmx-helphead h2 { font-size: 15px; margin: 0 8px 0 4px; white-space: nowrap; }
.pmx-helpq { flex: 1; min-width: 0; height: 34px; padding: 0 10px; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-canvas); color: inherit; font: inherit; }
.pmx-helpx { font-size: 22px; line-height: 1; }
.pmx-helpnote { margin: 0; padding: 6px 14px; font-size: 12px; color: var(--pmx-slate); border-bottom: 1px solid var(--pmx-line); }
.pmx-helpbody { flex: 1; min-height: 0; display: flex; }
.pmx-helptoc { width: 220px; flex: none; overflow-y: auto; padding: 10px 6px 16px 12px; border-inline-end: 1px solid var(--pmx-line); background: var(--pmx-side); font-size: 13px; }
.pmx-helptoc ol { list-style: none; margin: 0; padding: 0; }
.pmx-helptoc a { display: block; padding: 5px 8px; border-radius: 6px; color: inherit; text-decoration: none; }
.pmx-helptoc a:hover { background: var(--pmx-pill); }
.pmx-helptoc a.pmx-on { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); font-weight: 600; }
.pmx-helpcount { font-size: 12px; color: var(--pmx-slate); padding: 2px 8px 6px; }
.pmx-helpmain { flex: 1; min-width: 0; overflow-y: auto; padding: 4px 22px 40px; background: #fff; scroll-behavior: auto; }
.pmx-helpmain:focus { outline: none; }
.pmx-helpempty { color: #555; padding-top: 18px; }
.pmx-help .pmx-helpflash { animation: pmx-helpflash 1.6s ease-out; }
@keyframes pmx-helpflash { 0%, 40% { background: #fff1a8; } 100% { background: transparent; } }
@media (prefers-reduced-motion: reduce) { .pmx-help .pmx-helpflash { animation: none; outline: 2px solid #e2b800; } }
@media (max-width: 640px) { .pmx-helptoc { display: none; } .pmx-helpmain { padding: 4px 14px 32px; } }
@media print { .pmx-helpveil { display: none; } }

/*! pdfMax Reader workspace | Copyright (c) 2026 Mohsen Alyafei | MIT licence */
/* Row 1: the tab strip (the Workspace, or several documents open in another layout). */
.pmx { --pmx-strip: #e9e8ec; --pmx-tick: #1473e6; }
.pmx[data-theme="dark"] { --pmx-strip: #18161b; --pmx-tick: #6aa8ff; }
.pmx-tabstrip { display: none; align-items: stretch; height: 40px; padding: 0 8px; gap: 2px; background: var(--pmx-strip); flex: none; }
.pmx.pmx-workspace .pmx-tabstrip { display: flex; }
.pmx.pmx-focus .pmx-tabstrip, .pmx.pmx-nobar .pmx-tabstrip { display: none !important; }
.pmx-sbtn { display: flex; align-items: center; gap: 8px; padding: 0 11px; margin: 4px 0; border-radius: 6px; color: var(--pmx-ink); }
.pmx-sbtn:hover { background: rgba(0, 0, 0, .06); }
.pmx[data-theme="dark"] .pmx-sbtn:hover { background: rgba(255, 255, 255, .07); }
.pmx-sbtn[aria-pressed="true"] { background: var(--pmx-bar); }
.pmx-sbtn .pmx-lab:empty { display: none; }
.pmx-ssep { width: 1px; background: var(--pmx-line); margin: 10px 4px; }
.pmx-doctabs { display: flex; align-items: stretch; gap: 2px; min-width: 0; overflow: hidden; }
.pmx-doctab { display: flex; align-items: center; gap: 8px; padding: 0 8px 0 10px; margin-top: 6px; min-width: 120px; max-width: 250px; border-radius: 8px 8px 0 0; cursor: pointer; color: var(--pmx-slate); flex: 0 1 auto; }
.pmx-doctab:hover { background: rgba(0, 0, 0, .04); }
.pmx-doctab.pmx-on { background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-doctab:focus-visible { outline-offset: -2px; }
.pmx-tabname { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pmx-tabstar, .pmx-tabx { display: inline-flex; padding: 2px; border-radius: 4px; opacity: .55; }
.pmx-tabstar svg.pmx-i, .pmx-tabx svg.pmx-i { width: 15px; height: 15px; }
.pmx-tabstar:hover, .pmx-tabx:hover { opacity: 1; background: rgba(0, 0, 0, .08); }
.pmx-tabstar.pmx-on { opacity: 1; color: #c99700; }
.pmx-tabstar.pmx-on svg.pmx-i { fill: #f2c200; }
.pmx-tabdot { width: 7px; height: 7px; border-radius: 50%; background: var(--pmx-brand-ink); flex: none; }
.pmx-doctab.pmx-newtab { min-width: 0; color: var(--pmx-ink); padding: 0 12px; margin-top: 6px; }
.pmx-create { display: flex; align-items: center; gap: 7px; padding: 0 13px; margin: 6px 2px; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-bar); font-weight: 600; }
.pmx-create:hover { border-color: var(--pmx-slate); }

/* Row 2: tool groups at the start of the bar. */
.pmx-wstools { display: none; align-items: center; gap: 2px; margin-inline-end: 6px; }
.pmx.pmx-workspace .pmx-wstools { display: flex; }
.pmx-tl { position: relative; display: inline-flex; align-items: center; gap: 7px; height: 30px; padding: 0 11px; border-radius: 6px; font-size: 14px; color: var(--pmx-ink); }
.pmx-tl > svg.pmx-i { width: 16px; height: 16px; }
.pmx.pmx-workspace .pmx-bar { height: 42px; }
.pmx-tl:hover { background: var(--pmx-pill); }
.pmx-tl:disabled { opacity: .45; cursor: default; }
.pmx-tl.pmx-on { font-weight: 600; color: var(--pmx-brand-ink); }
.pmx-tl.pmx-on::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: -6px; height: 3px; border-radius: 2px; background: var(--pmx-brand-ink); }
.pmx-wstools .pmx-vr { width: 1px; height: 22px; background: var(--pmx-line); margin: 0 6px; }
.pmx-wstools .pmx-ib:disabled { opacity: .4; }
/* The Workspace's rows take over these. */
.pmx.pmx-workspace .pmx-menubar,
.pmx.pmx-workspace .pmx-bar > [data-k="open"],
.pmx.pmx-workspace .pmx-bar > .pmx-name,
.pmx.pmx-workspace .pmx-bar > .pmx-closedoc,
.pmx.pmx-workspace .pmx-bar > .pmx-mid,
.pmx.pmx-workspace .pmx-bar > [data-k="focus"],
.pmx.pmx-workspace .pmx-bar > [data-k="edit"] { display: none !important; }

/* The view rail. */
.pmx-rail { display: none; width: 52px; flex: none; flex-direction: column; align-items: center; gap: 3px; padding: 8px 0; background: var(--pmx-bar); border-inline-start: 1px solid var(--pmx-line); z-index: 2; }
.pmx.pmx-workspace .pmx-rail { display: flex; }
.pmx.pmx-focus .pmx-rail, .pmx.pmx-nobar .pmx-rail, .pmx.pmx-athome .pmx-rail { display: none !important; }
.pmx-rail .pmx-ib { width: 36px; height: 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; }
.pmx-rail .pmx-ib:hover { background: var(--pmx-pill); }
.pmx-rail .pmx-ib:disabled { opacity: .35; cursor: default; }
.pmx-rail .pmx-ib[aria-pressed="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx-rail .pmx-railview { background: var(--pmx-ink); color: var(--pmx-bar); }
.pmx-rail .pmx-railview:hover { background: var(--pmx-ink); opacity: .88; }
.pmx-railpins { display: flex; flex-direction: column; gap: 3px; padding-bottom: 4px; border-bottom: 1px solid var(--pmx-line); }
.pmx-railpins:empty { display: none; }
.pmx-railnum { width: 40px; height: 32px; margin-top: 6px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); text-align: center; font: inherit; }
.pmx-railof { color: var(--pmx-slate); font-size: 12px; }

/* Menus. */
.pmx-viewmenu, .pmx-wsmenulist { min-width: 270px; }
.pmx-viewmenu .pmx-vrow { display: flex; align-items: center; gap: 11px; width: 100%; padding: 5px 12px 5px 10px; min-height: 28px; text-align: start; }
.pmx-viewmenu .pmx-vrow:disabled { opacity: .45; cursor: default; }
.pmx-viewmenu .pmx-ck { width: 16px; text-align: center; font-weight: 700; color: var(--pmx-tick); }
.pmx-viewmenu .pmx-vlab { flex: 1; }
.pmx-viewmenu .pmx-pin { display: inline-flex; padding: 2px; border-radius: 4px; color: var(--pmx-slate); opacity: .5; }
.pmx-viewmenu .pmx-pin:hover { opacity: 1; background: var(--pmx-pill); }
.pmx-viewmenu .pmx-pin.pmx-on { color: var(--pmx-tick); opacity: 1; }
.pmx-viewmenu .pmx-vmore { width: 100%; padding: 7px 14px; text-align: start; color: var(--pmx-tick); }
.pmx-wsmenulist .pmx-mhead { padding: 7px 14px 3px; font-size: 11.5px; font-weight: 600; color: var(--pmx-slate); }
.pmx-alltools { display: grid !important; grid-template-columns: repeat(3, minmax(180px, 1fr)); gap: 0 10px; padding: 8px; min-width: 600px; }
.pmx-narrow .pmx-alltools { grid-template-columns: 1fr; min-width: 240px; }

/* Home: the start page over the open documents. */
.pmx.pmx-athome .pmx-start { z-index: 6; background: var(--pmx-canvas); }
.pmx.pmx-athome .pmx-side, .pmx.pmx-athome .pmx-ebar, .pmx.pmx-athome .pmx-fmtbar { display: none !important; }

/* Views: a cover page's empty place; scrolling off. */
.pmx-page.pmx-coverspace { visibility: hidden; box-shadow: none !important; background: none !important; }
.pmx-pages.pmx-paged > .pmx-page:not(.pmx-shown) { display: none !important; }
/* One page at a time: the page fills the window, centred, with no scroll bar when it fits (20 px all round, as effScale allows). */
.pmx-pages.pmx-paged { padding: 20px 16px; min-height: 100%; box-sizing: border-box; justify-content: center; align-content: center; }

@media (max-width: 720px) {
  .pmx-doctab { min-width: 90px; }
  .pmx-tl { padding: 0 8px; }
  .pmx-create .pmx-lab, .pmx-sbtn .pmx-lab { display: none; }
}
.pmx-viewmenu button[aria-checked="true"]::after { content: none; }
.pmx.pmx-hastabs .pmx-tabstrip { display: flex; }
/* Dropping files: the tab a dropped file will open in; the drop menu's first choice. */
.pmx-doctab.pmx-dropghost { border: 2px dashed var(--pmx-brand-ink); background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); min-width: 200px; margin-top: 5px; pointer-events: none; }
.pmx-dropmenu .pmx-mhead { padding: 7px 14px 3px; font-size: 11.5px; font-weight: 600; color: var(--pmx-slate); max-width: 340px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-dropmenu button.pmx-def { font-weight: 600; color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-dropmenu button.pmx-always { color: var(--pmx-slate); font-size: 12.5px; }

/* Tabs as in Acrobat (wsmenu.js). */
.pmx-doctab { min-width: 150px; max-width: 240px; }
.pmx-doctab.pmx-on { box-shadow: 0 0 0 1px var(--pmx-line); clip-path: inset(-2px -2px 0 -2px); }
.pmx-tabicon { display: inline-flex; color: #c4282d; flex: none; }
.pmx-tabicon svg.pmx-i { width: 16px; height: 16px; }
.pmx-doctab.pmx-starred .pmx-tabname::after { content: " ★"; color: #d9a400; font-size: 11px; }
.pmx-doctab.pmx-plustab { min-width: 0; padding: 0 9px; color: var(--pmx-slate); }
.pmx-doctab.pmx-plustab svg.pmx-i { width: 17px; height: 17px; }
.pmx-doctab.pmx-tabdragging { opacity: .5; }
.pmx-doctab.pmx-tabdropat { box-shadow: inset 3px 0 0 var(--pmx-brand-ink); }
.pmx-doctab.pmx-tabdropat.pmx-after { box-shadow: inset -3px 0 0 var(--pmx-brand-ink); }
[dir="rtl"] .pmx-doctab.pmx-tabdropat { box-shadow: inset -3px 0 0 var(--pmx-brand-ink); }
[dir="rtl"] .pmx-doctab.pmx-tabdropat.pmx-after { box-shadow: inset 3px 0 0 var(--pmx-brand-ink); }
.pmx-mainmenu { min-width: 280px; }

/* The Ribbon layout: tabs of commands in place of the top bar and the edit bar. */
.pmx.pmx-ribbon .pmx-bar, .pmx.pmx-ribbon .pmx-ebar { display: none !important; }
.pmx .pmx-rb { flex: none; background: var(--pmx-bar); border-bottom: 1px solid var(--pmx-line); color: var(--pmx-ink); position: relative; z-index: 4; }
/* A folded ribbon opened over the page lies above the rulers and the page. */
.pmx .pmx-rb.pmx-rbpeek { z-index: 40; }
.pmx .pmx-rb[hidden] { display: none; }
.pmx .pmx-rbtabs { display: flex; align-items: flex-end; gap: 2px; padding: 4px 10px 0; min-height: 32px; box-sizing: border-box; }
.pmx .pmx-rbtab { border: 0; background: none; color: var(--pmx-slate); font-family: inherit; font-size: 13px; line-height: 1; font-weight: 500; padding: 7px 12px 8px; border-radius: 7px 7px 0 0; cursor: pointer; }
.pmx .pmx-rbtab:hover { color: var(--pmx-ink); background: var(--pmx-pill, rgba(0,0,0,.05)); }
.pmx .pmx-rbtab[aria-selected=true] { color: var(--pmx-brand-ink); box-shadow: inset 0 -2.5px 0 var(--pmx-brand); }
.pmx .pmx-rbtab:focus-visible, .pmx .pmx-rbbig:focus-visible, .pmx .pmx-rbsm:focus-visible, .pmx .pmx-rbq:focus-visible, .pmx .pmx-rbfile:focus-visible { outline: 2px solid var(--pmx-accent, #1a66e5); outline-offset: 1px; }
.pmx .pmx-rbfile { border: 0; background: var(--pmx-brand); color: #fff; font-family: inherit; font-size: 13px; line-height: 1; font-weight: 600; padding: 7px 14px; border-radius: 7px; margin: 0 8px 4px 0; cursor: pointer; }
.pmx[dir=rtl] .pmx-rbfile, [dir=rtl] .pmx .pmx-rbfile { margin: 0 0 4px 8px; }
.pmx .pmx-rbsp { flex: 1; }
.pmx .pmx-rbq { border: 0; background: none; color: var(--pmx-ink); width: 28px; height: 26px; border-radius: 6px; align-self: center; margin-bottom: 3px; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.pmx .pmx-rbq svg { width: 16px; height: 16px; }
.pmx .pmx-rbq:hover, .pmx .pmx-rbsm:hover, .pmx .pmx-rbbig:hover { background: var(--pmx-pill, rgba(0,0,0,.06)); }
.pmx .pmx-rbfind { align-self: center; margin: 0 4px 3px; display: flex; align-items: center; gap: 6px; border: 1px solid var(--pmx-line); border-radius: 8px; padding: 4px 10px; font-family: inherit; font-size: 12px; line-height: 1.2; color: var(--pmx-slate); background: var(--pmx-pop); width: 260px; white-space: nowrap; overflow: hidden; cursor: text; }
.pmx .pmx-rbfind svg { width: 14px; height: 14px; flex: none; }
.pmx .pmx-rbfold { border: 0; background: none; color: var(--pmx-slate); align-self: center; margin-bottom: 3px; width: 24px; height: 24px; cursor: pointer; transform: rotate(180deg); }
.pmx .pmx-rbfolded .pmx-rbfold { transform: none; }
.pmx .pmx-rbfold svg { width: 14px; height: 14px; }
.pmx .pmx-rbbody { display: flex; align-items: stretch; padding: 3px 4px 1px; min-height: 0; box-sizing: border-box; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; border-top: 1px solid var(--pmx-line); }
.pmx .pmx-rbfolded .pmx-rbbody { display: none; }
.pmx .pmx-rbfolded.pmx-rbpeek .pmx-rbbody { display: flex; position: absolute; left: 0; right: 0; top: 100%; background: var(--pmx-bar); box-shadow: 0 10px 24px rgba(0,0,0,.18); border-bottom: 1px solid var(--pmx-line); }
.pmx .pmx-rbgrp { display: flex; flex-direction: column; padding: 0 4px; border-inline-end: 1px solid var(--pmx-line); flex: none; }
.pmx .pmx-rbitems { display: flex; gap: 0; flex: 1; align-items: flex-start; }
.pmx .pmx-rbglab { font-size: 10.5px; color: var(--pmx-slate); text-align: center; padding-top: 1px; white-space: nowrap; }
.pmx .pmx-rbbig { display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 46px; max-width: 60px; padding: 3px 5px 2px; border: 0; border-radius: 7px; background: none; color: var(--pmx-ink); font-family: inherit; font-size: 11.5px; line-height: 1.1; text-align: center; cursor: pointer; }
.pmx .pmx-rbbig svg { width: 32px; height: 32px; stroke-width: 1.45; }
.pmx .pmx-rbcol { display: flex; flex-direction: column; gap: 0; }
.pmx .pmx-rbsm { display: flex; align-items: center; gap: 5px; height: 23px; padding: 0 6px 0 4px; border: 0; border-radius: 5px; background: none; color: var(--pmx-ink); font-family: inherit; font-size: 12px; line-height: 1; white-space: nowrap; cursor: pointer; text-align: start; }
.pmx .pmx-rbsm svg { width: 20px; height: 20px; flex: none; }
/* Style A2 (approved 3 November 2026): dark outlines, key lines and a light tint in the group's colour. */
.pmx { --pmx-rg-t: #2563eb; --pmx-rg-v: #0d9488; --pmx-rg-e: #7c3aed; --pmx-rg-c: #d97706; --pmx-rg-p: #0891b2; --pmx-rg-d: #a3134a; --pmx-rg-r: #dc2626; --pmx-rg-g: #16a34a; --pmx-rg-f: #4f46e5; --pmx-rg-ink: #30303a; }
.pmx[data-theme="dark"] { --pmx-rg-t: #6aa2ff; --pmx-rg-v: #3fd1bd; --pmx-rg-e: #b197ff; --pmx-rg-c: #fbbf45; --pmx-rg-p: #3fd0ec; --pmx-rg-d: #f07aa8; --pmx-rg-r: #ff7b7b; --pmx-rg-g: #5fdc8c; --pmx-rg-f: #9b97ff; --pmx-rg-ink: #e6e6ee; }
.pmx .pmx-rbbody .pmx-rbbig svg.pmx-i, .pmx .pmx-rbbody .pmx-rbsm svg.pmx-i { color: var(--pmx-rg-ink); }
.pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="t"] { --pmx-iacc: var(--pmx-rg-t); } .pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="v"] { --pmx-iacc: var(--pmx-rg-v); }
.pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="e"] { --pmx-iacc: var(--pmx-rg-e); } .pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="c"] { --pmx-iacc: var(--pmx-rg-c); }
.pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="p"] { --pmx-iacc: var(--pmx-rg-p); } .pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="d"] { --pmx-iacc: var(--pmx-rg-d); }
.pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="r"] { --pmx-iacc: var(--pmx-rg-r); } .pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="g"] { --pmx-iacc: var(--pmx-rg-g); }
.pmx:not(.pmx-mono) .pmx-rbgrp[data-rg="f"] { --pmx-iacc: var(--pmx-rg-f); }
.pmx .pmx-rbbig[aria-pressed=true], .pmx .pmx-rbsm[aria-pressed=true] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx .pmx-rbbig:disabled, .pmx .pmx-rbsm:disabled { opacity: .4; cursor: default; }
.pmx .pmx-rbdd .pmx-rbl::after { content: ' ▾'; font-size: 9px; color: var(--pmx-slate); }
@media (max-width: 700px) { .pmx-rbfind span { display: none; } .pmx-rbfind { width: auto; } }
@media print { .pmx-rb { display: none; } }
/* The page scroll bar (approved 4 November 2026): one page at a time. */
.pmx-pbar { position: absolute; inset-inline-end: 6px; width: 12px; border-radius: 6px; background: rgba(120, 120, 130, .16); z-index: 4; cursor: pointer; touch-action: none; }
.pmx-pbar.pmx-pover { inset-inline-end: 20px; }
.pmx-pmarks b { position: absolute; left: 3px; right: 3px; height: 1.5px; margin-top: -0.75px; background: rgba(120, 120, 130, .5); pointer-events: none; }
.pmx-pthumb { position: absolute; left: 1px; right: 1px; min-height: 18px; border-radius: 5px; background: var(--pmx-brand-ink); opacity: .55; cursor: grab; transition: top .12s; }
.pmx-pbar:hover .pmx-pthumb, .pmx-pbar.pmx-pdrag .pmx-pthumb { opacity: .8; }
.pmx-pbar.pmx-pdrag .pmx-pthumb { transition: none; cursor: grabbing; }
.pmx-pbub { position: absolute; inset-inline-end: 20px; white-space: nowrap; padding: 6px 9px; border-radius: 7px; background: var(--pmx-brand-ink); color: #fff; font: 600 12px/1 system-ui, Arial, sans-serif; pointer-events: none; opacity: 0; transition: opacity .15s; }
.pmx-pbar.pmx-pdrag .pmx-pbub, .pmx-pbar:hover .pmx-pbub { opacity: 1; }
.pmx.pmx-focus .pmx-pbar { display: none; }

/*! pdfMax Reader pages panel | Copyright (c) 2026 Mohsen Alyafei | MIT licence */
/* Hidden pages: left out of the view unless shown; dimmed with a mark in the panel. */
.pmx-pages:not(.pmx-showhidden) > .pmx-page.pmx-pghidden { display: none !important; }
.pmx-pages.pmx-showhidden > .pmx-page.pmx-pghidden { opacity: .45; }
.pmx-pages.pmx-showhidden > .pmx-page.pmx-pghidden::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(135deg, transparent 0 14px, rgba(92, 6, 50, .06) 14px 28px); pointer-events: none; }
.pmx-panel { position: relative; }
.pmx-thumb { position: relative; }
.pmx-thumb.pmx-thumbhidden canvas, .pmx-thumb.pmx-thumbhidden .pmx-tph { opacity: .4; }
.pmx-thbadge { position: absolute; top: 10px; inset-inline-end: 18px; display: inline-flex; padding: 3px; border-radius: 50%; background: var(--pmx-ink); color: var(--pmx-bar); }
.pmx-thbadge svg.pmx-i { width: 14px; height: 14px; }
.pmx-thumb.pmx-thdragging { opacity: .35; }
.pmx-thumb[draggable="true"] { cursor: grab; }
.pmx-thline { position: absolute; left: 10px; right: 10px; height: 3px; border-radius: 2px; background: var(--pmx-brand-ink); pointer-events: none; z-index: 3; }
.pmx-thline span { position: absolute; top: 5px; left: 50%; transform: translateX(-50%); white-space: nowrap; font-size: 11px; color: #fff; background: var(--pmx-brand-ink); padding: 1px 8px; border-radius: 8px; }
.pmx-thshowhid { display: flex; align-items: center; gap: 6px; margin: 4px 10px 10px; font-size: 12px; color: var(--pmx-slate); cursor: pointer; }
/* The side panel's edge, to drag it wider or narrower. */
.pmx-side { position: relative; }
.pmx-sidegrip { position: absolute; top: 0; bottom: 0; inset-inline-end: -4px; width: 8px; cursor: col-resize; z-index: 5; }
.pmx-sidegrip::after { content: ""; position: absolute; top: 0; bottom: 0; left: 3px; width: 2px; background: transparent; transition: background .15s; }
.pmx-sidegrip:hover::after, .pmx-sidegrip:focus-visible::after, .pmx.pmx-sizing .pmx-sidegrip::after { background: var(--pmx-brand-ink); }
.pmx-sidegrip:focus-visible { outline: none; }
.pmx.pmx-sizing, .pmx.pmx-sizing * { cursor: col-resize !important; user-select: none; }

/* Page labels (labels.js): the window, and the page box when labels are shown. */
.pmx-pldlg { min-width: 440px; max-width: 560px; }
.pmx-pldlg .pmx-plset { border: 1px solid var(--pmx-line); border-radius: 8px; padding: 6px 12px 10px; margin: 0 0 10px; }
.pmx-pldlg legend { font-weight: 600; padding: 0 4px; }
.pmx-plrow { display: flex; align-items: center; gap: 8px; margin: 6px 0; flex-wrap: wrap; }
.pmx-plind { margin-inline-start: 26px; }
.pmx-plnum { width: 64px; }
.pmx-plprefix { width: 110px; }
.pmx-pldlg input[type=number], .pmx-pldlg input[type=text], .pmx-pldlg select { padding: 3px 6px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: inherit; font: inherit; }
.pmx-pldlg :disabled { opacity: .5; }
.pmx-plof { color: var(--pmx-slate); }
.pmx-plsample { background: var(--pmx-pill); border-radius: 8px; padding: 8px 10px; margin: 0 0 6px; }
.pmx.pmx-labelled .pmx-pill input { text-align: center; }
.pmx-pldlg .pmx-plrow > input[type=radio] { width: auto; flex: none; margin: 0; }
.pmx-pldlg .pmx-plrow > input[type=text], .pmx-pldlg .pmx-plrow > input[type=number], .pmx-pldlg .pmx-plrow > select { flex: none; width: auto; display: inline-block; margin: 0; }
.pmx-pldlg .pmx-plrow > .pmx-plprefix { width: 120px; }
.pmx-pldlg .pmx-plrow > .pmx-plnum { width: 64px; }
.pmx-pldlg .pmx-plrow > span { flex: none; }
.pmx-pldlg .pmx-plrow > input[type=radio] + span:last-child { flex: 1; min-width: 0; }

/* Layers panel (layers.js). */
.pmx-lypanel { padding: 0 6px 12px; }
.pmx-lyhead { display: flex; align-items: center; justify-content: space-between; }
.pmx-lylist { display: flex; flex-direction: column; gap: 1px; }
.pmx-lyrow { display: flex; align-items: center; gap: 6px; min-height: 30px; padding-inline-end: 6px; border-radius: 6px; }
.pmx-lyrow:hover { background: var(--pmx-pill); }
.pmx-lyrow .pmx-lyeye { width: 28px; height: 28px; min-width: 28px; color: var(--pmx-brand-ink); }
.pmx-lyrow.pmx-lyoff .pmx-lyeye, .pmx-lyrow.pmx-lyoff .pmx-lyname { color: var(--pmx-slate); }
.pmx-lyrow .pmx-lyeye:disabled { opacity: .55; cursor: default; }
.pmx-lyname { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pmx-lytags { display: inline-flex; gap: 4px; color: var(--pmx-slate); }
.pmx-lytags svg.pmx-i { width: 15px; height: 15px; }
.pmx-lynote { margin: 12px 6px 0; font-size: 11.5px; line-height: 1.45; color: var(--pmx-slate); }
.pmx-lyprops { border-collapse: collapse; margin: 4px 0 8px; }
.pmx-lyprops th, .pmx-lyprops td { border: 1px solid var(--pmx-line); padding: 5px 9px; text-align: start; }
.pmx-lyprops th { background: var(--pmx-pill); font-weight: 600; }
.pmx-chead.pmx-lyhead { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 4px 6px; text-align: start; }

/* Replaced page colours (colours.js). */
.pmx.pmx-recoloured .pmx-page { background: var(--pmx-pagebg, #fff); }
.pmx-pcsw { display: inline-flex; align-items: center; justify-content: center; width: 34px; font: 700 11px/1 Arial, sans-serif; }
.pmx-prefnote { font-size: 12px; margin: 8px 0 0; }

/* Zoom tools (zoomtools.js). */
.pmx.pmx-zmarquee .pmx-scroll, .pmx.pmx-zmarquee .pmx-scroll * { cursor: zoom-in !important; }
.pmx.pmx-zdynamic .pmx-scroll, .pmx.pmx-zdynamic .pmx-scroll * { cursor: ns-resize !important; }
.pmx.pmx-zloupe .pmx-scroll, .pmx.pmx-zloupe .pmx-scroll * { cursor: crosshair !important; }
.pmx-marq { position: absolute; z-index: 40; border: 2px dashed #1473e6; background: rgba(20, 115, 230, .08); pointer-events: none; }
.pmx-vgroup { padding: 4px 12px 2px; font-size: 11.5px; font-weight: 600; color: var(--pmx-slate); }
.pmx-zwin { position: absolute; z-index: 45; top: 96px; right: 60px; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); overflow: hidden; }
.pmx-zwhead { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 4px 4px 4px 12px; border-bottom: 1px solid var(--pmx-line); cursor: move; }
.pmx-zwhead .pmx-ib { width: 26px; height: 26px; min-width: 26px; }
.pmx-zwfoot { display: flex; align-items: center; gap: 6px; padding: 6px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-zwfoot input[type=range] { flex: 1; accent-color: var(--pmx-brand-ink); }
.pmx-zwfoot .pmx-ib { width: 28px; height: 28px; min-width: 28px; }
.pmx-zwpc { min-width: 54px; text-align: center; font-variant-numeric: tabular-nums; }
.pmx-zwtip { padding: 0 10px 8px; font-size: 11.5px; color: var(--pmx-slate); }
.pmx-loupecv { display: block; background: #fff; }
.pmx-loupebox { position: absolute; z-index: 6; border: 2px solid #1473e6; background: rgba(20, 115, 230, .06); pointer-events: none; }
.pmx-panstage { position: relative; padding: 10px; background: var(--pmx-canvas); display: flex; justify-content: center; }
.pmx-panstage canvas { display: block; background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.2); cursor: pointer; }
.pmx-panbox { position: absolute; border: 2px solid #d42a2a; background: rgba(212, 42, 42, .06); cursor: move; }
.pmx-panhdl { position: absolute; right: -6px; bottom: -6px; width: 10px; height: 10px; background: #d42a2a; cursor: nwse-resize; }
.pmx-zwin .pmx-grow { flex: 1; }

/* Contract Check (contractcheck.js). */
.pmx-ccpanel { padding: 0 6px 14px; }
.pmx-cchead { display: flex; align-items: center; justify-content: space-between; padding: 8px 4px 4px; }
.pmx-ccbtns { display: inline-flex; gap: 2px; }
.pmx-ccbtns .pmx-ib { width: 28px; height: 28px; min-width: 28px; }
.pmx-ccsum { margin: 2px 4px 10px; padding: 10px 12px; border-radius: 10px; background: var(--pmx-brand-tint); }
.pmx-ccsum b { display: block; font-size: 14.5px; margin-bottom: 2px; }
.pmx-ccsum > span { color: var(--pmx-slate); font-size: 12px; line-height: 1.4; }
.pmx-ccchips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
.pmx-ccchips i { font-style: normal; font-size: 11.5px; padding: 1px 8px; border-radius: 10px; background: var(--pmx-bar); border: 1px solid var(--pmx-line); }
.pmx-ccgroup { border-top: 1px solid var(--pmx-line); }
.pmx-ccgh { display: flex; align-items: center; gap: 6px; width: 100%; padding: 8px 4px; font-weight: 600; text-align: start; }
.pmx-ccgh svg.pmx-i { width: 16px; height: 16px; }
.pmx-ccgt { flex: 1; min-width: 0; }
.pmx-ccn { min-width: 22px; padding: 0 7px; border-radius: 10px; background: #f6c344; color: #3a2a00; font-size: 11.5px; text-align: center; }
.pmx-ccn.pmx-ccz { background: #cfe9d2; color: #14532d; }
.pmx-ccitem { display: flex; gap: 8px; padding: 7px 6px; padding-inline-start: 28px; border-radius: 8px; cursor: pointer; position: relative; }
.pmx-ccitem:hover, .pmx-ccitem:focus-visible { background: var(--pmx-pill); }
.pmx-ccitem.pmx-ccsel { background: var(--pmx-brand-tint); box-shadow: inset 3px 0 0 var(--pmx-brand-ink); }
.pmx[dir="rtl"] .pmx-ccitem.pmx-ccsel { box-shadow: inset -3px 0 0 var(--pmx-brand-ink); }
.pmx-ccdot { width: 8px; height: 8px; border-radius: 50%; background: #e0a100; margin-top: 5px; flex: none; }
.pmx-cctx { flex: 1; min-width: 0; }
.pmx-cctx b { display: block; overflow-wrap: anywhere; }
.pmx-cctx span { display: block; font-size: 12px; color: var(--pmx-slate); }
.pmx-cctx em { font-style: normal; font-size: 11.5px; color: var(--pmx-slate); }
.pmx-ccig { width: 24px; height: 24px; min-width: 24px; opacity: 0; }
.pmx-ccitem:hover .pmx-ccig, .pmx-ccitem.pmx-ccsel .pmx-ccig, .pmx-ccig:focus-visible { opacity: 1; }
.pmx-ccig svg.pmx-i { width: 15px; height: 15px; }
.pmx-ccok { display: flex; gap: 6px; align-items: flex-start; padding: 4px 6px 8px; padding-inline-start: 28px; color: var(--pmx-slate); font-size: 12px; }
.pmx-ccok svg.pmx-i { width: 14px; height: 14px; color: #2e7d32; flex: none; margin-top: 1px; }
.pmx-ccnote { margin: 8px 4px; font-size: 12px; color: var(--pmx-slate); }
.pmx-ccmark { position: absolute; z-index: 7; background: rgba(255, 196, 0, .4); outline: 2px solid #e0a100; border-radius: 2px; pointer-events: none; }
.pmx-cccard { position: absolute; z-index: 30; background: var(--pmx-pop); color: var(--pmx-ink); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: var(--pmx-shadow); padding: 10px 12px; font-size: 13px; line-height: 1.45; }
.pmx-cccard h5 { margin: 0 0 4px; font-size: 13px; display: flex; align-items: center; gap: 6px; }
.pmx-cccard h5::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #e0a100; }
.pmx-cccard p { margin: 0 0 8px; }
.pmx-ccacts { display: flex; gap: 6px; flex-wrap: wrap; }
.pmx-ccacts .pmx-btn { height: 28px; padding: 0 10px; font-size: 12px; }
.pmx-ccdlg { min-width: 520px; max-width: 620px; }
.pmx-ccdlg fieldset { border: 1px solid var(--pmx-line); border-radius: 8px; padding: 6px 12px 10px; margin: 0 0 10px; }
.pmx-ccdlg legend { font-weight: 600; padding: 0 4px; }
.pmx-ccdlg label { display: flex; gap: 8px; align-items: flex-start; margin: 5px 0; }
.pmx-ccdlg input[type=checkbox] { flex: none; margin-top: 3px; }
.pmx-ccdlg textarea { width: 100%; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 6px 8px; font: inherit; background: var(--pmx-bar); color: inherit; }
/* Contract tools (contractfacts.js): the view menu, two languages, facts, deadlines, parties, statistics */
.pmx-cfview { display: flex; align-items: center; gap: 8px; width: calc(100% - 8px); margin: 2px 4px 8px; padding: 6px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; background: var(--pmx-bar); color: inherit; font: inherit; font-weight: 600; text-align: start; cursor: pointer; }
.pmx-cfview:hover, .pmx-cfview:focus-visible { border-color: var(--pmx-brand-ink); }
.pmx-cfview svg.pmx-i { width: 17px; height: 17px; flex: none; }
.pmx-cfview .pmx-cfc { margin-inline-start: auto; display: inline-flex; }
.pmx-cfview .pmx-cfc svg.pmx-i { width: 14px; height: 14px; }
.pmx-cfgh { cursor: default; }
.pmx-cfgh > span:first-child { flex: 1; }
.pmx-cfitem { padding-inline-start: 12px; }
.pmx-ccdot.pmx-cfplain { background: var(--pmx-line); }
.pmx-cftwo { display: grid; grid-template-columns: auto 1fr; gap: 1px 8px; margin: 3px 0 2px; font-size: 12px; }
.pmx-cftwo u { text-decoration: none; color: var(--pmx-slate); }
.pmx-cftwo q { quotes: none; font-weight: 600; overflow-wrap: anywhere; }
.pmx-cfar { font-family: "pdfMax UI Arabic", "Noto Naskh Arabic", "Segoe UI", Tahoma, serif; font-size: 1.08em; }
.pmx-cftwo q.pmx-cfar { justify-self: start; text-align: start; }
.pmx-cfbtn { margin: 0 4px 10px; }
.pmx-ccmark.pmx-cfmark2 { background: rgba(31, 122, 140, .22); outline-color: #1f7a8c; }
.pmx-cflink { position: absolute; z-index: 7; border-top: 2px dashed #1f7a8c; pointer-events: none; }
.pmx-cfdlg { min-width: min(820px, calc(100vw - 48px)); max-width: 900px; }
.pmx-cfdlg.pmx-cfnarrow { min-width: min(560px, calc(100vw - 48px)); max-width: 680px; }
.pmx-cftools { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; margin: 0 0 8px; }
.pmx-cfchip { font: inherit; font-size: 12px; padding: 2px 10px; border-radius: 12px; border: 1px solid var(--pmx-line); background: var(--pmx-bar); color: inherit; cursor: pointer; }
.pmx-cfchip.pmx-on { background: var(--pmx-brand); color: #fff; border-color: var(--pmx-brand); }
.pmx-cfsearch { margin-inline-start: auto; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 4px 8px; background: var(--pmx-bar); color: inherit; font: inherit; width: 200px; }
.pmx-cftable { max-height: 52vh; overflow: auto; }
.pmx-cfrep { border-collapse: collapse; width: 100%; font-size: 12.5px; margin: 4px 0 10px; }
.pmx-cfrep th, .pmx-cfrep td { border: 1px solid var(--pmx-line); padding: 5px 8px; text-align: start; vertical-align: top; }
.pmx-cfrep th { background: var(--pmx-pill); white-space: nowrap; position: sticky; top: 0; }
.pmx-cfrep tr:not(:first-child) { cursor: pointer; }
.pmx-cfrep tr:not(:first-child):hover td { background: var(--pmx-pill); }
.pmx-cfrep tr.pmx-cfbad td { background: rgba(246, 195, 68, .18); }
.pmx-cfrep td.pmx-cfar { text-align: right; }
.pmx-cfrep .pmx-ccdot { display: inline-block; margin: 0; margin-inline-end: 6px; vertical-align: middle; }
.pmx-cfnum { text-align: end; white-space: nowrap; }
.pmx-cfmuted { color: var(--pmx-slate); }
.pmx-cfnote { display: flex; gap: 6px; align-items: center; margin: 0; color: var(--pmx-slate); font-size: 12px; }
.pmx-cfnote .pmx-ccdot { margin: 0; }
.pmx-cfstart { display: grid; grid-template-columns: auto 170px 1fr; gap: 6px 10px; align-items: center; margin: 0 0 10px; }
.pmx-cfstart input, .pmx-cfstart select { border: 1px solid var(--pmx-line); border-radius: 7px; padding: 4px 8px; background: var(--pmx-bar); color: inherit; font: inherit; min-width: 0; }
.pmx-cfstart em { font-style: normal; color: var(--pmx-slate); font-size: 12px; }
.pmx-cfstat { display: grid; grid-template-columns: 1fr auto auto; margin: 0 4px 10px; border: 1px solid var(--pmx-line); border-radius: 8px; overflow: hidden; font-size: 13px; }
.pmx-cfstat.pmx-cfone { grid-template-columns: 1fr auto; }
.pmx-cfstat.pmx-cfplus { grid-template-columns: 1fr auto auto auto; }
.pmx-cfstat.pmx-cfone.pmx-cfplus { grid-template-columns: 1fr auto auto; }
.pmx-cfstat > div { padding: 5px 10px; border-top: 1px solid var(--pmx-line); }
.pmx-cfstat > div.pmx-cfh { font-weight: 700; background: var(--pmx-pill); border-top: 0; }
.pmx-cfstat > div.pmx-cfnum { min-width: 70px; }
.pmx-cfparty { margin: 0 4px 8px; padding: 8px 10px; border: 1px solid var(--pmx-line); border-radius: 10px; }
.pmx-cfparty > b { display: block; overflow-wrap: anywhere; }
.pmx-cfrole { display: block; font-size: 12px; color: var(--pmx-slate); }
.pmx-cfparty dl { display: grid; grid-template-columns: auto 1fr; gap: 2px 8px; margin: 6px 0 0; font-size: 12px; }
.pmx-cfparty dt { color: var(--pmx-slate); }
.pmx-cfparty dd { margin: 0; overflow-wrap: anywhere; }
.pmx-cfwarn { display: flex; gap: 6px; margin-top: 6px; padding: 5px 8px; border-radius: 7px; background: rgba(246, 195, 68, .2); font-size: 12px; cursor: pointer; }
.pmx-cfwarn .pmx-ccdot { margin-top: 4px; }
/* Submenus in the workspace menus (Contract tools) */
.pmx-wsmenulist button.pmx-hassub { display: flex; align-items: center; }
.pmx-wsmenulist .pmx-subar { margin-inline-start: auto; padding-inline-start: 12px; color: var(--pmx-slate); font-size: 15px; line-height: 1; }
.pmx-wsmenulist button.pmx-hassub.pmx-open { background: var(--pmx-pill); }
.pmx-wssub { position: absolute; z-index: 1001; min-width: 250px; }
.pmx-menu .pmx-insub { padding-inline-start: 26px; }
.pmx-ccpanel .pmx-cfstat { font-size: 12.5px; }
.pmx-ccpanel .pmx-cfstat > div { padding: 4px 8px; }
.pmx-ccpanel .pmx-cfstat > div.pmx-cfnum { min-width: 40px; }
/* The side panel as Acrobat's (approved 4 November 2026): a rail of icons, the panel beside it. */
.pmx.pmx-hasrail .pmx-side { flex-direction: row; position: relative; width: 278px; }
.pmx.pmx-hasrail .pmx-side > .pmx-tabs { flex-direction: column; flex-wrap: nowrap; align-items: center; gap: 4px; width: 46px; min-width: 46px; flex: none; padding: 8px 0; box-sizing: border-box; border-inline-end: 1px solid var(--pmx-line); overflow-y: auto; overflow-x: hidden; scrollbar-width: none; }
.pmx.pmx-hasrail .pmx-side > .pmx-tabs > button[data-tab] { flex: none; width: 34px; height: 34px; min-width: 0; }
.pmx.pmx-hasrail .pmx-side > .pmx-tabs > button[data-tab][aria-selected="true"] { background: none; color: var(--pmx-slate); }
.pmx.pmx-hasrail .pmx-side > .pmx-tabs > button.pmx-railon { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); }
.pmx.pmx-hasrail .pmx-side > .pmx-tabs > button:hover { background: rgba(0, 0, 0, .06); }
.pmx-sideflip { flex: none; width: 34px; height: 34px; margin-top: auto; border: 0; border-radius: 7px; background: none; color: var(--pmx-slate); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.pmx-sidebody { flex: 1; min-width: 0; display: flex; flex-direction: column; min-height: 0; }
.pmx-sidebody > .pmx-panel { flex: 1; min-height: 0; }
.pmx-sidehead { display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 8px 6px 6px 12px; font-weight: 700; font-size: 14px; border-bottom: 1px solid var(--pmx-line); flex: none; }
.pmx-sidetitle { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[dir="rtl"] .pmx-sidehide svg, [dir="rtl"] .pmx-sideflip svg { transform: scaleX(-1); }
/* Collapsed: the rail alone. */
.pmx.pmx-hasrail .pmx-side.pmx-hide { display: flex !important; width: 46px !important; min-width: 46px; }
.pmx.pmx-hasrail .pmx-side.pmx-hide > .pmx-sidebody, .pmx.pmx-hasrail .pmx-side.pmx-hide > .pmx-sidegrip { display: none; }
.pmx.pmx-hasrail .pmx-side.pmx-hide > .pmx-tabs { border-inline-end: 0; }

/*! pdfMax Reader picture menu | Copyright (c) 2026 Mohsen Alyafei | MIT licence */
.pmx-richmenu { min-width: 250px; padding: 5px 0; }
.pmx-richmenu > button { display: flex; align-items: center; gap: 10px; width: 100%; padding-block: 5px; padding-inline: 8px 12px; min-height: 28px; text-align: start; }
.pmx-richmenu.pmx-noticks > button > .pmx-ck { display: none; }
.pmx-richmenu > button:disabled { opacity: .45; cursor: default; }
.pmx-richmenu > button.pmx-open { background: var(--pmx-pill); }
/* The icon is always nearest the edge (left, or right in Arabic); a tick goes at the far end. */
.pmx-richmenu .pmx-ck { order: 5; width: 14px; margin-inline-start: 4px; text-align: center; font-weight: 700; color: var(--pmx-tick, #1473e6); flex: none; }
.pmx-richmenu .pmx-ic { width: 18px; flex: none; }
.pmx-richmenu svg.pmx-i { width: 16px; height: 16px; margin: 0; flex: none; }
.pmx-richmenu .pmx-ml { flex: 1; white-space: nowrap; }
.pmx-richmenu .pmx-k { color: var(--pmx-slate); font-size: 12px; margin-inline-start: 18px; white-space: nowrap; }
.pmx-richmenu .pmx-ar { color: var(--pmx-slate); margin-inline-start: 6px; }
.pmx[dir="rtl"] .pmx-richmenu .pmx-ar { transform: scaleX(-1); }
.pmx-richmenu.pmx-richsub { position: absolute; min-width: 210px; z-index: 2; }
.pmx-sizedlg .pmx-szgrid { display: grid; grid-template-columns: auto 1fr auto; gap: 8px 10px; align-items: center; }
.pmx-sizedlg .pmx-szgrid input { width: 100%; padding: 5px 8px; }
.pmx-szkeep { display: flex; align-items: center; gap: 8px; margin: 12px 0 2px; color: var(--pmx-slate); }

/* Coloured menu icons (approved Option A): one colour for each group. */
.pmx { --pmx-ig-clip: #1a66e6; --pmx-ig-edit: #7a3fc4; --pmx-ig-place: #0f8a8a; --pmx-ig-hl: #a37b00; --pmx-ig-ul: #1a66e6; --pmx-ig-st: #d42a2a; --pmx-ig-rep: #c2620f; --pmx-ig-note: #a86a00; --pmx-ig-red: #2b2830; --pmx-ig-del: #d42a2a; --pmx-ig-link: #0f8a8a; --pmx-ig-look: #2e8b3e; --pmx-ig-save: #5f5b66; --pmx-ig-brand: #5c0632; --pmx-home-fill: #f6dbe7; }
.pmx[data-theme="dark"] { --pmx-ig-clip: #7fb0ff; --pmx-ig-edit: #c4a3f2; --pmx-ig-place: #5fd4d4; --pmx-ig-hl: #ffd54a; --pmx-ig-ul: #7fb0ff; --pmx-ig-st: #ff8a8a; --pmx-ig-rep: #ffb071; --pmx-ig-note: #ffcf5a; --pmx-ig-red: #d8d4dc; --pmx-ig-del: #ff8a8a; --pmx-ig-link: #5fd4d4; --pmx-ig-look: #86d993; --pmx-ig-save: #bdb8c3; --pmx-ig-brand: #f2b6d0; --pmx-home-fill: #4a2a39; }
[data-ig="clip"] > svg.pmx-i { color: var(--pmx-ig-clip); }
[data-ig="edit"] > svg.pmx-i { color: var(--pmx-ig-edit); }
[data-ig="place"] > svg.pmx-i { color: var(--pmx-ig-place); }
[data-ig="hl"] > svg.pmx-i { color: var(--pmx-ig-hl); }
[data-ig="ul"] > svg.pmx-i { color: var(--pmx-ig-ul); }
[data-ig="st"] > svg.pmx-i { color: var(--pmx-ig-st); }
[data-ig="rep"] > svg.pmx-i { color: var(--pmx-ig-rep); }
[data-ig="note"] > svg.pmx-i { color: var(--pmx-ig-note); }
[data-ig="red"] > svg.pmx-i { color: var(--pmx-ig-red); }
[data-ig="del"] > svg.pmx-i { color: var(--pmx-ig-del); }
[data-ig="link"] > svg.pmx-i { color: var(--pmx-ig-link); }
[data-ig="look"] > svg.pmx-i { color: var(--pmx-ig-look); }
[data-ig="save"] > svg.pmx-i { color: var(--pmx-ig-save); }
.pmx-richmenu > button[data-ig]:disabled > svg.pmx-i { color: inherit; }

/* Toolbar icons by group (approved Option A), the same colours as the menus; Home in maroon with a
   soft pink fill. Preferences, under General, can turn the colours off (.pmx-mono). */
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="undo"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="redo"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="sidebar"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="more"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="commands"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="settings"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsMenu"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tbNewTab"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="print"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="save"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsPrevPage"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsNextPage"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tSelect"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="ebLine"] > svg.pmx-i { color: var(--pmx-ig-save); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsCreate"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tImage"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tUnderline"] > svg.pmx-i { color: var(--pmx-ig-clip); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="find"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="lookup"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="results"] > svg.pmx-i { color: var(--pmx-ig-look); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="sign"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="sigs"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="fields"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="fieldsMenu"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tEditText"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tTextbox"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tWordArt"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tAddText"] > svg.pmx-i { color: var(--pmx-ig-edit); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="compare"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="diffs"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="thumbs"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="outline"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsViewMenu"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vTwo"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vScroll"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vActual"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vWidth"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vHeight"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="vContent"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="rotate"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="zoomIn"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="zoomOut"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tLayout"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tLink"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="ebPages"] > svg.pmx-i { color: var(--pmx-ig-place); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="comments"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tNote"] > svg.pmx-i { color: var(--pmx-ig-note); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="changes"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tSquiggly"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="ebMarkup"] > svg.pmx-i { color: var(--pmx-ig-rep); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-tab="redact"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tRedact"] > svg.pmx-i { color: var(--pmx-ig-red); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tHighlight"] > svg.pmx-i { color: var(--pmx-ig-hl); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tStrike"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tStamp"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="del"] > svg.pmx-i { color: var(--pmx-ig-st); }
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tShapeLast"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="tShape"] > svg.pmx-i,
.pmx:not(.pmx-mono) :is(.pmx-tabstrip,.pmx-bar,.pmx-wstools,.pmx-tabs,.pmx-rail,.pmx-railpins,.pmx-ebar) [data-k="wsHome"] > svg.pmx-i { color: var(--pmx-ig-brand); }
.pmx svg.pmx-i .pmx-hf { fill: var(--pmx-home-fill, transparent); stroke: none; }
.pmx svg.pmx-i .pmx-hd { fill: currentColor; stroke-width: 1.3; }
.pmx.pmx-mono svg.pmx-i .pmx-hf { fill: none; }
/* Home as the first tab, as in Acrobat (approved Option A). */
.pmx-sbtn.pmx-wshome { margin: 6px 0 0; padding: 0 14px 0 12px; border-radius: 8px 8px 0 0; color: var(--pmx-slate); }
.pmx-sbtn.pmx-wshome[aria-pressed="true"] { background: var(--pmx-bar); color: var(--pmx-ink); }
.pmx-sbtn.pmx-wshome svg.pmx-i { width: 19px; height: 19px; }

/* Icons before the words in the drop-down menus and the tool tabs (menuicons.js). */
[data-ig="brand"] > svg.pmx-i { color: var(--pmx-ig-brand); }
.pmx-menu.pmx-iconmenu > button { gap: 9px; }
.pmx-menu.pmx-iconmenu > button > svg.pmx-i { width: 16px; height: 16px; margin: 0; }
.pmx-menu.pmx-iconmenu > button > .pmx-mic { width: 16px; flex: none; }
.pmx-menu.pmx-iconmenu > button:disabled > svg.pmx-i,
.pmx.pmx-mono .pmx-iconmenu [data-ig] > svg.pmx-i, .pmx.pmx-mono .pmx-wstools [data-ig] > svg.pmx-i { color: inherit; }

/* The page menu (pagemenu.js): its tool buttons along the top. */
.pmx-pmstrip { display: flex; align-items: center; gap: 2px; padding: 2px 6px 3px; }
.pmx-pmstrip .pmx-ib { height: 30px; min-width: 32px; padding: 0 7px; border-radius: 7px; }
.pmx-pmstrip .pmx-ib svg.pmx-i { width: 18px; height: 18px; }
.pmx-pmstrip .pmx-ib.pmx-on { background: var(--pmx-brand-tint); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--pmx-brand-ink) 35%, transparent); }
.pmx-pmstrip .pmx-vr { width: 1px; height: 18px; background: var(--pmx-line); margin: 0 5px; }
.pmx.pmx-mono .pmx-pmstrip [data-ig] > svg.pmx-i { color: inherit; }
/* The Hand tool (and Space held down): drag the page. */
.pmx.pmx-hand:not(.pmx-editing) .pmx-scroll, .pmx.pmx-hand:not(.pmx-editing) .pmx-scroll *,
.pmx.pmx-spacehand:not(.pmx-editing) .pmx-scroll, .pmx.pmx-spacehand:not(.pmx-editing) .pmx-scroll * { cursor: grab !important; user-select: none; }
.pmx.pmx-grabbing .pmx-scroll, .pmx.pmx-grabbing .pmx-scroll * { cursor: grabbing !important; }
.pmx.pmx-hand:not(.pmx-editing) .pmx-form > * { cursor: auto !important; }
/* Take a snapshot. */
.pmx.pmx-snapping .pmx-scroll, .pmx.pmx-snapping .pmx-scroll * { cursor: crosshair !important; user-select: none; }
.pmx-snapbox { position: absolute; z-index: 20; border: 1px dashed #1473e6; background: rgba(20, 115, 230, .08); pointer-events: none; }
.pmx-snapflash { position: absolute; z-index: 20; background: rgba(255, 255, 255, .75); pointer-events: none; animation: pmx-snapflash .45s ease-out forwards; }
@keyframes pmx-snapflash { to { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .pmx-snapflash { display: none; } }

/* The Attachments panel (attach.js). */
.pmx:not(.pmx-mono) .pmx-tabs [data-tab="attach"] > svg.pmx-i { color: var(--pmx-ig-clip); }
.pmx-tabs [data-tab="attach"] { position: relative; }
.pmx-tabs [data-tab="attach"][data-count]::after { content: attr(data-count); position: absolute; top: -2px; inset-inline-end: -3px; min-width: 15px; padding: 0 4px; border-radius: 8px; background: var(--pmx-brand-ink); color: var(--pmx-bar); font: 700 9.5px/14px system-ui, sans-serif; text-align: center; }
.pmx .pmx-chead.pmx-axhead { display: flex; flex-direction: row; align-items: baseline; gap: 6px; }
.pmx-axn { color: var(--pmx-slate); font-size: 12px; }
.pmx-axbar { display: flex; align-items: center; gap: 2px; padding: 2px 0 6px; }
.pmx-axbar .pmx-ib { height: 28px; min-width: 28px; padding: 0 5px; }
.pmx-axbar .pmx-ib svg.pmx-i { width: 17px; height: 17px; }
.pmx-axfind input { width: 100%; height: 30px; border: 1px solid var(--pmx-line); border-radius: 7px; padding: 0 9px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; margin-bottom: 6px; }
.pmx-axlist { display: flex; flex-direction: column; gap: 2px; }
.pmx-axrow { display: flex; align-items: flex-start; gap: 9px; width: 100%; padding: 7px 6px; border-radius: 7px; text-align: start; }
.pmx-axrow:hover { background: var(--pmx-pill); }
.pmx-axrow[aria-selected="true"] { background: var(--pmx-brand-tint); }
.pmx-axrow svg.pmx-i { width: 20px; height: 20px; margin-top: 1px; }
.pmx-axtxt { display: flex; flex-direction: column; min-width: 0; }
.pmx-axtxt b { font-weight: 600; overflow-wrap: anywhere; }
.pmx-axtxt small { color: var(--pmx-slate); font-size: 11.5px; overflow-wrap: anywhere; }
.pmx-axtxt small.pmx-axfound { color: var(--pmx-ig-look); }
.pmx-axdrop { margin-top: 10px; border: 1.5px dashed var(--pmx-line); border-radius: 8px; padding: 12px; text-align: center; color: var(--pmx-slate); font-size: 11.5px; }
.pmx-axpanel.pmx-axover .pmx-axdrop { border-color: var(--pmx-brand-ink); color: var(--pmx-brand-ink); background: var(--pmx-brand-tint); }
.pmx-axlayer { pointer-events: none; }
.pmx .pmx-axpin { position: absolute; width: 20px; height: 20px; display: grid; place-items: center; padding: 0; border-radius: 4px; background: #ffd84a; color: #5a4300; box-shadow: 0 1px 3px rgba(0, 0, 0, .3); pointer-events: auto; cursor: pointer; }
.pmx-axpin svg.pmx-i { width: 14px; height: 14px; }
.pmx-axpin:focus-visible { outline: 2px solid #1473e6; outline-offset: 1px; }

/* The Print dialog (print.js). */
.pmx .pmx-dlg.pmx-prdlg { width: min(760px, calc(100% - 24px)); padding: 16px 18px; }
.pmx-prbody { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; max-height: calc(100vh - 170px); }
.pmx-prset { overflow: auto; padding-inline-end: 4px; font-size: 13px; }
.pmx-prsec { border: 0; border-top: 1px solid var(--pmx-line); margin: 0; padding: 8px 0 6px; }
.pmx-prsec:first-child { border-top: 0; padding-top: 0; }
.pmx-prsec legend { font-weight: 600; padding: 0; margin-bottom: 4px; }
.pmx-prrow { display: flex; align-items: center; gap: 8px; margin: 4px 0; min-height: 24px; }
.pmx-prrow input[type="radio"], .pmx-prrow input[type="checkbox"] { accent-color: var(--pmx-brand-ink); margin: 0; }
.pmx-prsel { justify-content: space-between; }
.pmx-prsel select, .pmx-prnum, .pmx-prlist { height: 28px; border: 1px solid var(--pmx-line); border-radius: 6px; background: var(--pmx-bar); color: var(--pmx-ink); font: inherit; padding: 0 6px; }
.pmx-prnum { width: 64px; }
.pmx-prlist { width: 130px; }
.pmx-prlist.pmx-bad { border-color: #d42a2a; }
.pmx-prinl { display: inline-flex; align-items: center; gap: 4px; }
.pmx-prmore summary { color: var(--pmx-brand-ink); cursor: pointer; margin: 4px 0; }
.pmx-prseg { display: flex; border: 1px solid var(--pmx-line); border-radius: 7px; overflow: hidden; margin: 2px 0 8px; }
.pmx-prseg button { flex: 1; height: 28px; border-radius: 0; }
.pmx-prseg button[aria-selected="true"] { background: var(--pmx-brand-tint); color: var(--pmx-brand-ink); font-weight: 600; }
.pmx-prhint, .pmx-prnote { font-size: 11.5px; color: var(--pmx-slate); margin: 6px 0; }
.pmx-prnote { background: var(--pmx-pill); border-radius: 7px; padding: 7px 9px; }
.pmx-prview { display: flex; flex-direction: column; align-items: center; gap: 8px; background: var(--pmx-canvas); border-radius: 10px; padding: 14px 10px; }
.pmx-prframe { width: 280px; height: 350px; display: grid; place-items: center; }
.pmx-prcanvas { box-shadow: 0 1px 4px rgba(0, 0, 0, .3); background: #fff; }
.pmx-prnav { display: flex; align-items: center; gap: 8px; }
.pmx-prnav .pmx-ib { font-size: 18px; height: 28px; min-width: 28px; }
.pmx-prcap { color: var(--pmx-slate); font-size: 11.5px; text-align: center; }
@media (max-width: 720px) { .pmx-prbody { grid-template-columns: 1fr; max-height: none; } .pmx-prframe { width: 100%; height: 260px; } }

/* Fill and sign (fillsign.js). */
.pmx-view { position: relative; }
.pmx-fsbar { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); z-index: 8; display: flex; align-items: center; gap: 2px; padding: 4px 6px; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 10px; box-shadow: 0 8px 20px -10px rgba(0, 0, 0, .45); }
.pmx-fsbar .pmx-ib { height: 30px; min-width: 32px; padding: 0 6px; }
.pmx-fsbar .pmx-ib svg.pmx-i { width: 18px; height: 18px; }
.pmx-fsbar .pmx-ib[aria-pressed="true"] { background: var(--pmx-brand-tint); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--pmx-brand-ink) 35%, transparent); }
.pmx-fsbar .pmx-vr { width: 1px; height: 20px; background: var(--pmx-line); margin: 0 4px; }
.pmx .pmx-fssign { display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 10px; border-radius: 7px; background: var(--pmx-pill); font-weight: 600; }
.pmx-fssign svg.pmx-i { width: 16px; height: 16px; }
.pmx.pmx-fillsign .pmx-text { pointer-events: none; }
.pmx.pmx-fillsign .pmx-sheet { cursor: crosshair; }
.pmx-fslayer { pointer-events: none; }
.pmx-fsitem { position: absolute; pointer-events: auto; cursor: move; border: 1px solid transparent; border-radius: 2px; }
.pmx-fsitem:hover { border-color: rgba(20, 115, 230, .5); }
.pmx-fsitem.pmx-sel { border: 1px dashed #1473e6; }
.pmx-fsitem.pmx-editing { visibility: hidden; }
.pmx-fsitem:focus-visible { outline: 2px solid #1473e6; }
.pmx .pmx-fstype { position: absolute; z-index: 5; min-width: 40px; padding: 0 2px; margin: 0; border: 1px dashed #1473e6; background: rgba(255, 255, 255, .85); color: #000; font-family: Helvetica, Arial, sans-serif; line-height: 1.2; resize: none; overflow: hidden; pointer-events: auto; outline: none; }
.pmx-fsmini { position: absolute; z-index: 9; display: flex; align-items: center; gap: 2px; padding: 2px 4px; background: var(--pmx-pop); border: 1px solid var(--pmx-line); border-radius: 8px; box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .4); }
.pmx-fsmini .pmx-ib { height: 26px; min-width: 28px; padding: 0 4px; }
.pmx-fsmini .pmx-vr { width: 1px; height: 16px; background: var(--pmx-line); margin: 0 3px; }
.pmx-fscard { border: 1px solid var(--pmx-line); border-radius: 9px; padding: 9px; margin: 0 4px 9px; display: flex; flex-direction: column; gap: 4px; font-size: 12.5px; }
.pmx-fscard small { color: var(--pmx-slate); }
.pmx-fscard.pmx-dim { opacity: .55; }
.pmx .pmx-fsadd { display: flex; align-items: center; gap: 7px; padding: 5px 4px; border-radius: 6px; color: var(--pmx-brand-ink); font-weight: 600; }
.pmx-fsadd svg.pmx-i { width: 14px; height: 14px; }
.pmx-fssaved { display: flex; align-items: center; gap: 4px; background: var(--pmx-pill); border-radius: 7px; padding: 3px; }
.pmx .pmx-fsuse { flex: 1; display: flex; align-items: center; height: 38px; padding: 2px 6px; border-radius: 6px; background: #fff; }
.pmx-fsuse img { max-height: 32px; max-width: 100%; }

/* The About window (about.js). */
.pmx .pmx-dlg.pmx-about { width: min(660px, calc(100% - 24px)); padding: 0; overflow: hidden; }
.pmx-abwrap { display: grid; grid-template-columns: 200px minmax(0, 1fr); min-height: 380px; }
/* Lavender grey (approved shade 8), so the logo's maroon outline shows; a dark tint in the dark theme. */
.pmx-abside { background: #ece8f1; color: #615a6c; padding: 22px 18px; display: flex; flex-direction: column; gap: 6px; }
.pmx[data-theme="dark"] .pmx-abside { background: #28252e; color: rgba(242, 214, 226, .8); }
.pmx-ablogo { display: inline-flex; width: max-content; border-radius: 18px; filter: drop-shadow(0 4px 10px rgba(0, 0, 0, .18)); }
.pmx-abside h2 { margin: 10px 0 0; font-size: 24px; color: #5c0632; }
.pmx[data-theme="dark"] .pmx-abside h2 { color: #f2d6e2; }
.pmx-abside p { margin: 0; font-size: 12.5px; }
.pmx-abside .pmx-abtag { margin-top: auto; font-style: italic; }
.pmx-abmain { padding: 14px 18px 16px; display: flex; flex-direction: column; min-width: 0; }
.pmx-abtabs { display: flex; gap: 4px; border-bottom: 1px solid var(--pmx-line); margin-bottom: 12px; }
.pmx .pmx-abtabs button { padding: 6px 10px; border-radius: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; }
.pmx .pmx-abtabs button[aria-selected="true"] { border-color: var(--pmx-brand-ink); color: var(--pmx-brand-ink); font-weight: 600; }
.pmx-abpane { flex: 1; font-size: 13px; }
.pmx-abpane p { margin: 0 0 8px; }
.pmx-abdl { display: grid; grid-template-columns: auto 1fr; gap: 5px 14px; margin: 10px 0; font-size: 12.5px; }
.pmx-abdl dt { color: var(--pmx-slate); }
.pmx-abdl dd { margin: 0; overflow-wrap: anywhere; }
.pmx-ablinks { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 8px; }
.pmx .pmx-ablink { padding: 0; color: var(--pmx-brand-ink); font-weight: 600; font-size: 12.5px; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.pmx-ablic { max-height: 210px; overflow: auto; white-space: pre-wrap; font: 11.5px/1.5 ui-monospace, Consolas, monospace; background: var(--pmx-pill); border-radius: 8px; padding: 10px; margin: 0; }
.pmx-abfonts { list-style: none; margin: 8px 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pmx-abfonts li { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px; border-radius: 8px; background: var(--pmx-pill); }
.pmx-abfonts small { color: var(--pmx-slate); font-size: 11.5px; }
.pmx-abnote { color: var(--pmx-slate); font-size: 12px; }
.pmx-abcopy { color: var(--pmx-slate); font-size: 11.5px; margin: 10px 0 0; }
.pmx-about .pmx-acts { margin-top: 10px; }
@media (max-width: 600px) { .pmx-abwrap { grid-template-columns: 1fr; } .pmx-abside { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 10px; } .pmx-abside .pmx-abtag { margin-top: 0; } }

