/* L0 · V1 approved presentation. Every selector requires explicit opt-in.
 * Reuse CRUD components and the existing accessible member navigation.
 * Ownership: coordinator. Feature lots consume these tokens, never redefine them.
 */
.jm-design-v1 {
  --jm-v1-navy: #103b6b;
  --jm-v1-deep: #092b4b;
  --jm-v1-orange: #ff6500;
  --jm-v1-orange-text: #a53e00;
  --jm-v1-ink: #123858;
  --jm-v1-muted: #61728a;
  --jm-v1-line: #d7e2ed;
  --jm-v1-paper: #fff;
  --jm-v1-canvas: #f6f7f7;
  --jm-v1-soft: #eaf2fc;
  --jm-v1-warm: #fff5ec;
  --jm-v1-font: Arial, sans-serif;
  --jm-v1-radius: 13px;
  --jm-v1-radius-sm: 8px;
  --jm-v1-space-1: 4px;
  --jm-v1-space-2: 8px;
  --jm-v1-space-3: 12px;
  --jm-v1-space-4: 16px;
  --jm-v1-space-5: 20px;
  --jm-v1-space-6: 24px;
  --jm-v1-shadow: 0 3px 12px #103b6b03;
  --jm-primary: var(--jm-v1-navy);
  --jm-accent: var(--jm-v1-orange);
  --jm-accent-text: var(--jm-v1-orange-text);
  --jm-muted: var(--jm-v1-muted);
  --jm-border: var(--jm-v1-line);
}
:is(.jemimba-crud-admin #wpbody-content, .didac-webapp-shell > .didac-webapp-content, .jm-crud):is(.jm-design-v1, .jm-design-v1 > .didac-webapp-content) {
  --jm-crud-navy: var(--jm-v1-navy);
  --jm-crud-ink: var(--jm-v1-ink);
  --jm-crud-muted: var(--jm-v1-muted);
  --jm-crud-orange: var(--jm-v1-orange);
  --jm-crud-action: var(--jm-v1-navy);
  --jm-crud-action-hover: var(--jm-v1-deep);
  --jm-crud-orange-soft: var(--jm-v1-warm);
  --jm-crud-canvas: var(--jm-v1-canvas);
  --jm-crud-surface: var(--jm-v1-paper);
  --jm-crud-line: var(--jm-v1-line);
  --jm-crud-soft: var(--jm-v1-soft);
  --jm-crud-font: var(--jm-v1-font);
  --jm-crud-radius: var(--jm-v1-radius);
  --jm-crud-radius-sm: var(--jm-v1-radius-sm);
  --jm-crud-shadow: var(--jm-v1-shadow);
  background: var(--jm-v1-canvas);
  color: var(--jm-v1-ink);
  font-family: var(--jm-v1-font);
  font-size: 14px;
}
.didac-webapp-shell.jm-design-v1 { --didac-sidebar-width: 268px; font-family: var(--jm-v1-font); background: var(--jm-v1-canvas); }
.didac-webapp-shell.jm-design-v1 .didac-webapp-sidebar { background: linear-gradient(160deg,var(--jm-v1-navy),var(--jm-v1-deep)) !important; box-shadow: none; }
.didac-webapp-shell.jm-design-v1 .didac-webapp-brand-row { min-height: 100px; border-bottom: 1px solid #ffffff26; }
.didac-webapp-shell.jm-design-v1 .didac-webapp-user { background: transparent; padding: 20px; }
.didac-webapp-shell.jm-design-v1 .didac-webapp-user-avatar { width: 46px; height: 46px; flex-basis: 46px; }
.didac-webapp-shell.jm-design-v1 .didac-webapp-user-code { margin-left: 0; }
.didac-webapp-shell.jm-design-v1 .jm-member-navigation .didac-webapp-menu-heading { min-height: 50px; }
.didac-webapp-shell.jm-design-v1 .jm-member-navigation a[aria-current=page] { color: var(--jm-v1-navy) !important; background: #fff0e4 !important; border-left-color: var(--jm-v1-orange); }
:is(.jemimba-crud-admin #wpbody-content, .didac-webapp-shell > .didac-webapp-content, .jm-crud):is(.jm-design-v1, .jm-design-v1 > .didac-webapp-content) :is(h1,.didac-webapp-title) { font-size: 32px; letter-spacing: -.6px; line-height: 1.25; }
:is(.jemimba-crud-admin #wpbody-content, .didac-webapp-shell > .didac-webapp-content, .jm-crud):is(.jm-design-v1, .jm-design-v1 > .didac-webapp-content) h2 { font-size: 19px; line-height: 1.4; }
.didac-webapp-shell.jm-design-v1 .didac-webapp-panel { border-color: var(--jm-v1-line); border-radius: var(--jm-v1-radius); box-shadow: var(--jm-v1-shadow); }
.jm-design-v1 :is(a,button,input,select,textarea,summary):focus-visible { outline: 3px solid var(--jm-v1-navy); outline-offset: 3px; }
.jm-design-v1 .didac-webapp-sidebar :is(a,button,summary):focus-visible { outline-color: #fff; outline-offset: -3px; }
/* Shared asynchronous states. Callers own aria-busy and real request lifecycles. */
.jm-design-v1 .jm-ui-state { padding: 24px; border: 1px solid var(--jm-v1-line); border-radius: var(--jm-v1-radius); background: var(--jm-v1-paper); color: var(--jm-v1-ink); }
.jm-design-v1 .jm-ui-state > :last-child { margin-bottom: 0; }
.jm-design-v1 .jm-ui-state--error { border-color: #e5aeb7; background: #fff8f8; }
.jm-design-v1 .jm-ui-skeleton { display: block; min-height: 16px; border-radius: var(--jm-v1-radius-sm); background: var(--jm-v1-soft); margin-block: 12px; }
.jm-design-v1 .jm-ui-skeleton--title { width: 55%; min-height: 28px; }
.jm-design-v1 .jm-ui-skeleton--card { min-height: 100px; }
@media(max-width:640px) {
  :is(.jemimba-crud-admin #wpbody-content, .didac-webapp-shell > .didac-webapp-content, .jm-crud):is(.jm-design-v1, .jm-design-v1 > .didac-webapp-content) :is(h1,.didac-webapp-title) { font-size: 27px; }
  .jm-design-v1 .jm-ui-state { padding: 16px; }
}
