/* RG5 scoped pre-primitive rows, local feedback and native create overlay. */
.crmr { min-width: 0; color: var(--ink); margin-block: var(--s-4); }
.crmr-head, .crmr-detail-head, .crmr-dialog-head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); }
.crmr :is(h2,h3,h4) { margin: 0; font-family: Inter,sans-serif; }
.crmr h2 { font-size: var(--t-section); }
.crmr :is(h3,h4) { font-size: var(--t-body); }
.crmr :is(button,summary) { min-height: var(--control-height-touch); }
.crmr .icon-btn { min-width: var(--control-height-touch); }
.crmr :is(button,input,textarea,select,summary):focus-visible { outline: 2px solid var(--focus-ring); outline-offset: 2px; }
.crmr :disabled { opacity: .65; cursor: not-allowed; }
.crmr-meta, .crmr-muted, .crmr-context { color: var(--muted); font-size: var(--t-sub); line-height: 1.5; overflow-wrap: anywhere; }
.crmr-meta { margin-block: var(--s-2); }
.crmr-layout { display: grid; gap: var(--s-3); align-items: start; min-width: 0; }
.crmr-layout.has-detail { grid-template-columns: minmax(0,1fr) minmax(20rem,1fr); }
.crmr-list { min-width: 0; }
.crmr-row { display: grid; grid-template-columns: minmax(0,1fr) 8rem; align-items: center; gap: var(--s-3); width: 100%; min-width: 0; border: 0; border-bottom: 1px solid var(--line); background: var(--surface-card); padding: var(--s-3); color: var(--ink); text-align: left; font: inherit; cursor: pointer; }
.crmr-row:hover, .crmr-row.is-selected { background: var(--wash); }
.crmr-row.is-selected { box-shadow: inset 3px 0 var(--gold); }
.crmr-identity, .crmr-row-state { display: grid; gap: var(--s-1); min-width: 0; }
.crmr-identity strong, .crmr-identity > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.crmr-identity > span, .crmr-row-state { font-size: var(--t-sub); }
.crmr-row-state small { color: var(--muted); font-size: var(--t-sub); font-variant-numeric: tabular-nums; }
.crmr-detail { border: 1px solid var(--line); border-radius: var(--r-m); min-width: 0; background: var(--surface-card); overflow-wrap: anywhere; }
.crmr-detail-head { padding: var(--s-3); border-bottom: 1px solid var(--line); }
.crmr-detail-body { padding: var(--s-3); }
.crmr-detail-body > :first-child { margin-top: 0; }
.crmr-detail-actions { display: flex; flex-wrap: wrap; gap: var(--s-2); margin-block: var(--s-3); }
.crmr-note, .crmr-warning, .crmr-result { padding: var(--s-3); border-radius: var(--r-s); font-size: var(--t-sub); line-height: 1.5; overflow-wrap: anywhere; }
.crmr-note, .crmr-result { background: var(--wash); }
.crmr-warning { color: var(--warn-fg); background: var(--warn-bg); }
.crmr :is(.crmr-note,.crmr-warning) .btn { margin-inline-start: var(--s-2); }
.crmr-skeleton { display: grid; gap: var(--s-2); padding-block: var(--s-3); color: var(--muted); font-size: var(--t-sub); }
.crmr-skeleton i { min-height: 3rem; background: var(--wash); border-radius: var(--r-s); }
.crmr-actions, .crmr-history { padding-block: var(--s-3); border-top: 1px solid var(--line); }
.crmr-work-row { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); padding: var(--s-2) 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--ink); width: 100%; text-align: left; font: inherit; }
.crmr-work-row span { min-width: 0; overflow-wrap: anywhere; }
.crmr-work-row span:last-child { font-size: var(--t-sub); color: var(--muted); }
.crmr-history summary { display: flex; align-items: center; cursor: pointer; font-size: var(--t-sub); }
.crmr-history article { padding-block: var(--s-3); border-bottom: 1px solid var(--line); }
.crmr-history article p { margin-block: var(--s-1); }
.crmr-history small { color: var(--muted); font-size: var(--t-sub); }
.crmr-editor, .crmr-editor fieldset { display: grid; gap: var(--s-3); min-width: 0; }
.crmr-editor fieldset { border: 0; margin: 0; padding: 0; }
.crmr-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--s-3); }
.crmr-field { display: grid; gap: var(--s-1); min-width: 0; color: var(--muted); font-size: var(--t-sub); }
.crmr-field :is(input,select,textarea) { box-sizing: border-box; width: 100%; min-width: 0; min-height: var(--control-height-touch); border: 1px solid var(--line); border-radius: var(--r-s); background: var(--surface-card); color: var(--ink); padding: var(--s-2) var(--s-3); font: inherit; font-size: var(--t-body); }
.crmr-field textarea { min-height: 6rem; resize: vertical; }
.crmr-field-error { color: var(--bad-fg); }
.crmr [aria-invalid=true] { border-color: var(--bad-fg); }
.crmr-foot { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); padding-block: var(--s-3); border-top: 1px solid var(--line); background: var(--surface-card); }
.crmr-foot .btn-primary { margin-inline-start: auto; }
.crmr-source-review, .crmr-conflict { border: 1px solid var(--line); padding: var(--s-3); border-radius: var(--r-s); overflow-wrap: anywhere; }
.crmr-source-review h3 { margin-block-end: var(--s-2); }
.crmr-source-door { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); }
.crmr-source-note { color: var(--muted); font-size: var(--t-sub); line-height: 1.5; }
.crmr-source-note[role=alert] { color: var(--warn-fg); }
.crmr-review dl { margin-block: var(--s-3); }
.crmr-review dl > div { display: grid; grid-template-columns: 9rem minmax(0,1fr); gap: var(--s-3); padding-block: var(--s-2); border-bottom: 1px solid var(--line); font-size: var(--t-body); }
.crmr-review dt { color: var(--muted); }
.crmr-review dd { margin: 0; overflow-wrap: anywhere; }
.crmr-dialog { box-sizing: border-box; width: min(48rem,calc(100% - 2rem)); max-height: calc(100dvh - 2rem); margin-block: auto; padding: 0; border: 1px solid var(--line); border-radius: var(--r-m); background: var(--surface-card); color: var(--ink); overflow: hidden; }
.crmr-dialog[open] { display: flex; flex-direction: column; }
.crmr-dialog::backdrop { background: var(--ink); opacity: .42; }
.crmr-dialog-head { flex: 0 0 auto; padding: var(--s-3) var(--s-4); border-bottom: 1px solid var(--line); }
.crmr-dialog-body { padding: var(--s-4); min-height: 0; overflow-y: auto; }
.crmr-dialog .crmr-foot { position: sticky; bottom: 0; margin-block-end: calc(-1 * var(--s-4)); padding-block-end: max(var(--s-3),env(safe-area-inset-bottom)); }
@media(max-width:760px) { .crmr-layout.has-detail { grid-template-columns: minmax(0,1fr); } .crmr-detail { grid-row: 1; } }
@media(max-width:640px) {
  .crmr-row { grid-template-columns: minmax(0,1fr) 7rem; gap: var(--s-2); padding: var(--s-3) var(--s-2); }
  .crmr-grid { grid-template-columns: minmax(0,1fr); }
  .crmr-field :is(input,select,textarea) { font-size: 1rem; }
  .crmr-dialog { width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; border-radius: 0; }
  .crmr-dialog-body { padding: var(--s-3); }
  .crmr-dialog .crmr-foot { margin-block-end: calc(-1 * var(--s-3)); }
  .crmr-foot .btn-primary { width: 100%; margin-inline-start: 0; }
  .crmr-review dl > div { grid-template-columns: minmax(0,1fr); gap: var(--s-1); }
}
