/* Shared navigation for the standalone Regional Map and Hamlet shells. */
.nec-canvas-nav { position: relative; flex: 0 0 auto; min-width: 0; }
.nec-canvas-nav > summary { display: none; }

@media (max-width: 1280px) {
  .nec-canvas-nav > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: var(--nec-control-touch);
    min-height: var(--nec-control-touch);
    padding: 0 12px;
    border: 1px solid var(--nec-line-control);
    border-radius: var(--nec-radius);
    background: var(--nec-paper);
    color: var(--nec-ink);
    font: 600 var(--nec-type-control)/1 var(--nec-font-ui);
    cursor: pointer;
    list-style: none;
  }
  .nec-canvas-nav > summary::-webkit-details-marker { display: none; }
  .nec-canvas-nav[open] > summary {
    background: var(--nec-accent-wash);
    border-color: var(--nec-accent);
  }
  .nec-canvas-nav[open] > nav {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 1000;
    display: grid;
    width: min(280px, calc(100vw - 32px));
    max-height: calc(100dvh - 80px);
    overflow-y: auto;
    gap: 4px;
    padding: 8px;
    border: 1px solid var(--nec-line);
    border-radius: var(--nec-radius-dialog);
    background: var(--nec-paper);
    box-shadow: var(--nec-shadow-overlay);
  }
  .nec-canvas-nav[open] > nav :is(a, button) {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: var(--nec-control-touch);
    padding: 8px 12px;
    border: 0;
    border-radius: var(--nec-radius);
    font: 500 var(--nec-type-control)/1.4 var(--nec-font-ui);
    text-align: left;
    text-decoration: none;
    color: var(--nec-ink);
    background: transparent;
    letter-spacing: 0;
  }
  .nec-canvas-nav[open] > nav :is(a, button):hover {
    background: var(--nec-accent-wash);
    color: var(--nec-accent-strong);
  }
  .nec-canvas-nav > nav form { margin: 0; }
}
.nec-canvas-nav :is(summary, a, button):focus-visible,
.nec-canvas-nav[open] > nav :is(a, button):focus-visible {
  outline: var(--nec-focus-ring);
  outline-offset: var(--nec-focus-offset);
}
