/* One admitted Hub navigation belongs to the shared header. Native details
   supplies disclosure semantics; its task label stays visible at every width. */
.site-header .primary-hub-main-menu { position: relative; flex: 0 1 auto; min-width: 0; font: var(--type-body)/var(--type-body-lh) var(--font-sans); }
.primary-hub-menu-trigger { display: grid; box-sizing: border-box; grid-template-columns: max-content minmax(0, 1fr) max-content; align-items: center; gap: var(--space-4); min-height: var(--control-height); min-width: var(--control-height); padding: var(--space-4) var(--space-6); border: 1px solid var(--header-border); border-radius: var(--radius); color: var(--header-ink); background: var(--control-surface); font: inherit; list-style: none; cursor: pointer; }
.primary-hub-menu-trigger::-webkit-details-marker { display: none; }
.primary-hub-menu-trigger::after { content: ''; width: var(--space-3); height: var(--space-3); margin-inline-start: var(--space-2); border-inline-end: var(--space-1) solid currentColor; border-block-end: var(--space-1) solid currentColor; transform: rotate(45deg); }
.primary-hub-main-menu[open] > .primary-hub-menu-trigger { border-color: var(--header-ink); }
.primary-hub-main-menu[open] > .primary-hub-menu-trigger::after { transform: rotate(225deg); }
.primary-hub-menu-trigger:focus-visible { outline: var(--space-1) solid var(--header-ink); outline-offset: var(--space-2); }
.primary-hub-menu-current { min-width: 0; padding-inline-start: var(--space-4); border-inline-start: 1px solid var(--header-border); color: var(--header-muted); overflow-wrap: anywhere; }
.primary-hub-navigation-host { --ink: var(--header-ink); --ink-muted: var(--header-muted); --border: var(--header-border); --action-ink: var(--header-ink); --surface: var(--header-bg); --surface-hover: var(--control-surface); position: absolute; z-index: 1; inset-inline-end: 0; inset-block-start: calc(100% + var(--space-4)); box-sizing: border-box; width: calc(var(--control-height) * 7); max-width: calc(100vw - var(--layout-gutter) * 2); max-height: calc(100dvh - var(--layout-header-height) - var(--space-16)); overflow-y: auto; overscroll-behavior: contain; padding: var(--space-4); border: 1px solid var(--header-border); border-radius: var(--radius); background: var(--header-bg); color: var(--header-ink); box-shadow: var(--shadow-lg); }
.primary-hub-navigation-host .primary-hub-nav { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-2); min-width: 0; }
.primary-hub-navigation-host .primary-hub-nav .btn { display: flex; box-sizing: border-box; width: 100%; min-height: var(--control-height); min-width: var(--control-height); max-width: 100%; font: var(--type-body)/var(--type-body-lh) var(--font-sans); color: var(--header-muted); white-space: normal; overflow-wrap: anywhere; }
.primary-hub-navigation-host .primary-hub-nav .btn[aria-current='page'] { color: var(--header-ink); border-color: var(--header-ink); background: var(--control-surface); }
.primary-hub-navigation-host .primary-hub-nav .btn:focus-visible { outline: var(--space-1) solid var(--header-ink); outline-offset: var(--space-1); }
@media (max-width: 899.98px) {
  .site-header.nota-header .nota-header-inner:has(.primary-hub-main-menu:not([hidden])) { flex-wrap: wrap; height: auto; min-height: var(--layout-header-height); gap: var(--space-4); padding-block: var(--space-2); }
  .site-header .primary-hub-main-menu { position: static; order: 1; flex: 1 1 100%; }
  .primary-hub-menu-trigger { width: 100%; }
  .primary-hub-navigation-host { inset-inline: var(--layout-gutter); inset-block-start: 100%; width: auto; max-width: none; max-height: calc(100dvh - var(--control-height) * 2 - var(--space-16)); }
}

/* Main personal Hub. Cabinet controllers retain their independent session. */
.primary-hub { min-width: 0; color: var(--ink); font: var(--type-body)/var(--type-body-lh) var(--font-sans); }
.primary-hub:empty { display: none; }
#notary-console .primary-hub .btn, #notary-console [data-primary-legacy-view] .btn { min-height: var(--control-height); min-width: var(--control-height); }
.primary-hub .btn { min-height: var(--control-height); min-width: var(--control-height); max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
/* These are the real personal tools opened from the Hub, not duplicate forms.
   Their compact legacy controls owe the same dialog legibility/target floor. */
#notary-console dialog :is(.btn, .dlg-x) { min-height: var(--control-height); min-width: var(--control-height); }
#notary-console dialog .dlg-x { width: var(--control-height); height: var(--control-height); margin: var(--space-4) var(--space-4) 0 0; }
#notary-console dialog .btn { max-width: 100%; font-size: var(--type-body); padding: var(--space-4) var(--space-6); white-space: normal; overflow-wrap: anywhere; }
#notary-console dialog :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { min-height: var(--control-height); min-width: 0; max-width: 100%; font-size: var(--type-body); }
#notary-console dialog input[type="range"] { height: var(--control-height); padding-block: 0; }
#notary-console dialog .nselect-btn { min-height: var(--control-height); min-width: var(--control-height); max-width: 100%; font-size: var(--type-body); padding: var(--space-4) var(--space-5); }
#notary-console dialog .nselect-value { min-width: 0; white-space: normal; overflow: visible; overflow-wrap: anywhere; text-overflow: clip; }
#notary-console dialog .nselect-opt { display: flex; align-items: center; min-height: var(--control-height); font-size: var(--type-body); padding: var(--space-4) var(--space-5); overflow-wrap: anywhere; }
#notary-console dialog > .dlg-x-form + .nc-dialog-body > h3 { padding-inline-end: calc(var(--control-height) + var(--space-8)); overflow-wrap: anywhere; }
#nc-profil-form button[type="submit"] { color: var(--action-ink); border-color: var(--action-ink); background: transparent; font-weight: 700; }
#notary-console [data-primary-legacy-view] :is(input:not([type='checkbox']):not([type='radio']), select), #notary-console [data-primary-legacy-view] label:has(input:is([type='checkbox'],[type='radio'])) { min-height: var(--control-height); }
.primary-hub-toolbar, .primary-hub-nav, .primary-hub-offer-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); align-items: center; }
.primary-hub-nav .btn { min-height: var(--control-height); min-width: var(--control-height); }
.primary-hub-toolbar { scroll-margin-block-start: var(--sticky-top); justify-content: space-between; padding-block: var(--space-12); border-bottom: 1px solid var(--border); margin-bottom: var(--space-12); }
.primary-hub-person { color: var(--ink-muted); margin: 0; overflow-wrap: anywhere; }
.primary-hub-nav [aria-current='page'] { font-weight: 600; border-color: var(--action-ink); }
.primary-hub-heading { font-size: var(--type-h2); line-height: var(--type-h2-lh); margin-block: var(--space-12); }
/* Calendar information and offer facts share the same contextual service
   marks. Amounts remain neutral and readable; color never supplies the name. */
/* Search is always available; secondary fields expand in native reading flow.
   The disclosure never overlays the calendar or creates a narrow side column. */
.primary-hub-filter-toolbar { display: flex; flex-wrap: wrap; min-width: 0; align-items: center; gap: var(--space-4) var(--space-6); margin-block-end: var(--space-8); }
.primary-hub-filter-toolbar > .primary-hub-filter-field--query { flex: 1 1 calc(var(--control-height) * 6); }
.primary-hub-filter-status { flex: 0 1 auto; min-width: 0; min-height: var(--control-height); display: flex; align-items: center; margin: 0; color: var(--ink-muted); font-size: var(--type-h4); overflow-wrap: anywhere; }
.primary-hub-filter-reset { flex: 0 1 auto; }
.primary-hub-filter-reset:disabled { visibility: hidden; }
.primary-hub-filter-toolbar:has(.primary-hub-filter-options[open]) > .primary-hub-filter-field { flex-basis: 100%; }
.primary-hub-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 5)), 1fr)); gap: var(--space-8); align-items: start; margin-bottom: var(--space-12); }
.primary-hub-filter-field { display: grid; min-width: 0; gap: var(--space-4); }
.primary-hub-filter-field > :is(label, span) { color: var(--ink); font-weight: 600; }
.primary-hub-filter-field :is(input:not([type='checkbox']):not([type='radio']), select) { width: 100%; min-width: 0; max-width: 100%; min-height: var(--control-height); font-size: var(--type-body); }
.primary-hub-filter-field input { box-sizing: border-box; font: inherit; color: var(--ink); background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: var(--space-4) var(--space-6); }
.primary-hub-filter-field :is(input, select):focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-filter-options { flex: 0 1 auto; min-width: 0; }
.primary-hub-filter-toolbar > .primary-hub-filter-options[open] { flex: 1 1 100%; }
.primary-hub-filter-options > summary { display: flex; align-items: center; justify-content: space-between; gap: var(--space-6); box-sizing: border-box; min-width: var(--control-height); min-height: var(--control-height); padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius); color: var(--action-ink); font-size: var(--type-body); cursor: pointer; }
.primary-hub-filter-options > summary::before { content: '+'; flex: 0 0 auto; order: 2; color: var(--ink-muted); font-size: var(--type-h3); line-height: 1; }
.primary-hub-filter-options[open] > summary::before { content: '−'; }
.primary-hub-filter-summary-label { font-weight: 600; }
.primary-hub-filter-summary-count { display: inline-grid; min-width: 1.5em; min-height: 1.5em; place-items: center; border-radius: var(--radius-sm); color: var(--action-ink); background: var(--action-tint); font-size: var(--type-h4); font-variant-numeric: tabular-nums; }
.primary-hub-filter-options > summary:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-filter-options > :not(summary) { margin-top: var(--space-8); }
.primary-hub-filter-options > .primary-hub-filters { margin-bottom: 0; padding: var(--space-8); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); }
.primary-hub-filter-detail-options { grid-column: 1 / -1; min-width: 0; margin-block-start: var(--space-4); border-block-start: 1px solid var(--border); }
.primary-hub-filter-detail-options > summary { display: flex; align-items: center; justify-content: space-between; min-height: var(--control-height); padding-block: var(--space-4); color: var(--ink); font-weight: 600; cursor: pointer; }
.primary-hub-filter-detail-options > summary::after { content: '+'; color: var(--ink-muted); font-size: var(--type-h3); line-height: 1; }
.primary-hub-filter-detail-options[open] > summary::after { content: '−'; }
.primary-hub-filter-detail-options > summary:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-filter-details { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 5)), 1fr)); gap: var(--space-8); padding-block: var(--space-8) var(--space-4); }
.primary-hub-offer-service { display: inline-flex; align-items: center; gap: var(--space-4); min-width: 0; max-width: 100%; padding: var(--space-4) var(--space-6); border: 1px solid var(--border); border-radius: var(--radius); color: var(--ink); background: var(--surface); overflow-wrap: anywhere; }
.primary-hub-offer-service::before { content: ''; flex: 0 0 var(--space-4); width: var(--space-4); height: var(--space-4); border-radius: var(--radius-xs); background: var(--action-accent); }
.primary-hub-calendar-layout { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr); gap: var(--space-12); align-items: start; }
.primary-hub-calendar { min-width: 0; }
/* Calendar focus reveals its date immediately before opening a day task. */
html:has(#pane-notaires:not([hidden]) #notary-authed:not([hidden]) [data-primary-calendar]) { scroll-behavior: auto; }
.primary-hub-view-switch { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-4); margin-block: var(--space-8); }
.primary-hub-view-switch .btn[aria-pressed='true'] { color: var(--action-ink); border-color: var(--action-ink); background: var(--action-tint); }
.primary-hub-month { display: flex; align-items: center; justify-content: space-between; gap: var(--space-8); flex-wrap: wrap; margin-bottom: var(--space-8); }
.primary-hub-month h3 { font-size: var(--type-h3); margin: 0; }
.primary-hub-calendar-scroll { min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; padding-block: var(--space-4); padding-inline: calc(var(--space-1) + var(--space-2)); }
.primary-hub-calendar-scroll:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-week, .primary-hub-grid { display: grid; min-width: calc(7 * calc(var(--control-height) * 1.25) + 6 * var(--space-4)); grid-template-columns: repeat(7, minmax(calc(var(--control-height) * 1.25), 1fr)); gap: var(--space-4); }
.primary-hub-grid[data-view='day'] { min-width: 0; grid-template-columns: minmax(0, 1fr); }
.primary-hub-grid[data-view='day'] .primary-hub-day { min-height: var(--control-height); padding: var(--space-8); }
.primary-hub-grid[data-view='day'] .primary-hub-day-services { grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 5)), 1fr)); gap: var(--space-8); }
.primary-hub-grid[data-view='day'] .primary-hub-day-service { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
.primary-hub-grid[data-view='day'] .primary-hub-day-service > :first-child { white-space: normal; overflow: visible; text-overflow: clip; }
.primary-hub-week { text-align: center; color: var(--ink-muted); font-size: var(--type-h4); margin-bottom: var(--space-4); }
.primary-hub-day { display: flex; min-width: 0; min-height: var(--control-height); aspect-ratio: 1 / 1; flex-direction: column; gap: var(--space-4); align-items: stretch; justify-content: space-between; padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); color: var(--ink); font: inherit; text-align: start; overflow-wrap: anywhere; cursor: pointer; transition: border-color var(--motion-fast) var(--ease-ui), background-color var(--motion-fast) var(--ease-ui), box-shadow var(--motion-fast) var(--ease-ui), transform var(--motion-fast) var(--ease-ui); }
.primary-hub-day:hover, .primary-hub-day[aria-pressed='true'] { border-color: var(--action-ink); background: var(--action-tint); box-shadow: var(--shadow-sm); transform: translateY(calc(var(--space-1) * -1)); }
.primary-hub-day--empty { border-style: dashed; color: var(--ink-muted); background: color-mix(in srgb, var(--surface) 70%, var(--border)); }
.primary-hub-day--empty:hover, .primary-hub-day--empty[aria-pressed='true'] { background: var(--surface-hover); }
.primary-hub-day:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-day[aria-current='date'] .primary-hub-day-number { text-decoration: underline; text-underline-offset: var(--space-4); }
.primary-hub-day-number, .primary-hub-day-count, .primary-hub-day-value { font-variant-numeric: tabular-nums; }
.primary-hub-day-number { font-size: var(--type-h3); font-weight: var(--weight-display); }
.primary-hub-day-count { color: var(--ink-muted); font-size: var(--type-h4); }
.primary-hub-day-value { color: var(--ink); font-size: var(--type-h4); font-weight: 600; white-space: normal; }
.primary-hub-day:not(.has-offers)::after { content: ''; display: block; width: var(--space-4); height: var(--space-4); border-radius: 50%; background: var(--border); opacity: .8; }
.primary-hub-day.has-offers::after { content: '›'; align-self: flex-end; color: var(--ink-muted); font-size: var(--type-h3); line-height: 1; }
.primary-hub-day-count + .primary-hub-day-value { margin-inline-start: auto; }
.primary-hub-day-services { display: grid; min-width: 0; gap: var(--space-4); margin: 0; padding: 0; list-style: none; }
.primary-hub-day-service { display: grid; min-width: 0; gap: var(--space-2); padding-inline-start: var(--space-2); border-inline-start: var(--space-1) solid var(--action-accent); color: var(--ink); font-size: var(--type-h4); line-height: var(--type-h4-lh); }
.primary-hub-day-service > :first-child { color: var(--ink); overflow-wrap: anywhere; }
.primary-hub-grid .primary-hub-day-service > :first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.primary-hub-offer { min-width: 0; padding: var(--space-8); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); overflow-wrap: anywhere; }
.primary-hub-offer h3 { font-family: var(--font-display); font-weight: var(--weight-display); font-size: var(--type-h3); margin-block: 0 var(--space-4); }
.primary-hub-offer-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-8); }
.primary-hub-offer-head > :is(h3,p) { margin: 0; }
.primary-hub-amount { color: var(--ink); font-family: var(--font-display); font-size: var(--type-h3); font-weight: var(--weight-display); font-variant-numeric: tabular-nums; margin-block: var(--space-4); }
.primary-hub-facts, .primary-hub-offer-facts { display: grid; min-width: 0; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 6)), 1fr)); gap: var(--space-6); margin-block: var(--space-8); }
.primary-hub-facts > div, .primary-hub-offer-facts > div { display: grid; min-width: 0; grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
.primary-hub-facts dt, .primary-hub-offer-facts dt { color: var(--ink-muted); }
.primary-hub-facts dd, .primary-hub-offer-facts dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.primary-hub-offer-details { min-width: 0; margin-block: var(--space-8); border-block: 1px solid var(--border); }
.primary-hub-offer-details > summary { display: list-item; list-style-position: inside; box-sizing: border-box; min-width: var(--control-height); min-height: var(--control-height); padding-block: var(--space-4); color: var(--ink); font-size: var(--type-body); cursor: pointer; }
.primary-hub-offer-details > summary:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-offer-actions .btn { flex: 1 1 auto; }
.primary-hub-state { margin-block: var(--space-12); color: var(--ink-muted); overflow-wrap: anywhere; }
.primary-hub-state[role='alert'] { color: var(--danger); }
.primary-hub-workspace { min-width: 0; }
/* Existing personal tools retain their IDs and adapters inside destination
   groups. The controller uses hidden rather than duplicating those tools. */
[data-primary-legacy-view] { min-width: 0; }
.primary-hub-calendar-tools { margin-block: var(--space-16); padding-block: var(--space-12); border-block-end: 1px solid var(--border); }
@media (min-width: 1024px) {
  .primary-hub-grid .primary-hub-day-service { grid-template-columns: minmax(0, 1fr) max-content; align-items: baseline; }
}
@media (max-width: 600px) {
  .primary-hub-filter-toolbar { align-items: stretch; }
  .primary-hub-filter-toolbar > .primary-hub-filter-field--query { flex-basis: 100%; }
  .primary-hub-filter-toolbar > .primary-hub-filter-options:not([open]) { flex: 1 1 calc(var(--control-height) * 2); }
  .primary-hub-filter-status { flex-basis: calc(var(--control-height) * 3); }
  .primary-hub-filter-reset { flex-basis: 100%; }
  .primary-hub-month .btn { flex: 1 1 auto; }
  .primary-hub-month h3 { order: -1; flex-basis: 100%; }
  .primary-hub-offer-actions .btn { flex-basis: 100%; }
}

.primary-hub-close-status { padding: var(--space-16); margin-block: var(--space-16); border: 1px solid var(--danger); border-radius: var(--radius); color: var(--ink); }

.primary-hub-title { margin-block: var(--space-12); font-size: var(--type-h1); line-height: var(--type-h1-lh); }

/* Date selection opens one native task surface. The shared dialog owns its
   top layer, inert background and blurred scrim; the calendar keeps its rail. */
.primary-hub-day-dialog { box-sizing: border-box; width: min(var(--layout-width), calc(var(--control-height) * 26), calc(100vw - var(--space-16))); max-width: calc(100vw - var(--space-16)); max-height: calc(100dvh - var(--space-16)); min-width: 0; overflow-y: auto; overscroll-behavior: contain; font: var(--type-body)/var(--type-body-lh) var(--font-sans); }
.primary-hub-day-dialog .dlg-x { font: inherit; width: var(--control-height); height: var(--control-height); min-width: var(--control-height); min-height: var(--control-height); margin: var(--space-4) var(--space-4) 0 0; }
.primary-hub-day-dialog .btn { min-width: var(--control-height); min-height: var(--control-height); max-width: 100%; font-size: var(--type-body); white-space: normal; overflow-wrap: anywhere; }
.primary-hub-day-dialog-body { display: grid; min-width: 0; gap: var(--space-8); padding: var(--pad-dialog); }
.primary-hub-day-dialog-body > h2 { min-height: var(--control-height); margin: 0; padding-inline-end: calc(var(--control-height) + var(--space-8)); font-size: var(--type-h3); line-height: var(--type-h3-lh); overflow-wrap: anywhere; }
.primary-hub-day-ranges { min-width: 0; border-block-start: 1px solid var(--border); }
.primary-hub-day-ranges > summary { display: list-item; list-style-position: inside; box-sizing: border-box; min-height: var(--control-height); padding-block: var(--space-4); color: var(--ink); font-size: var(--type-body); cursor: pointer; }
.primary-hub-day-ranges > summary:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-day-ranges .primary-hub-day-services { margin-block: var(--space-8); }
.primary-hub-day-ranges > p { margin-block: var(--space-4); color: var(--ink-muted); }
.primary-hub-act-list { display: grid; grid-auto-rows: max-content; align-content: start; min-width: 0; max-height: calc(var(--control-height) * 6); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(var(--control-height) * 6)), 1fr)); gap: var(--space-4); margin: 0; padding: var(--space-3); border: 0; }
.primary-hub-act-list > legend { margin-block-end: var(--space-4); padding: 0; color: var(--ink); font-weight: 600; }
.primary-hub-act-choice { display: grid; box-sizing: border-box; min-width: 0; min-height: var(--control-height); grid-template-columns: calc(var(--control-height) / 2) minmax(0, 1fr); align-items: start; gap: var(--space-6); padding: var(--space-6); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); color: var(--ink); font-size: var(--type-body); cursor: pointer; }
.primary-hub-act-choice:hover { border-color: var(--action-ink); background: var(--surface-hover); }
.primary-hub-act-choice:has(input:checked) { border-color: var(--action-ink); background: var(--action-tint); }
.primary-hub-act-choice:has(input:focus-visible) { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub-act-choice > input[type='radio'] { width: calc(var(--control-height) / 2); height: calc(var(--control-height) / 2); min-height: 0; margin: var(--space-2) 0 0; accent-color: var(--action-ink); }
.primary-hub-act-choice > span { display: grid; min-width: 0; gap: var(--space-2); overflow-wrap: anywhere; }
.primary-hub-act-choice-name { color: var(--ink); font-weight: 600; }
.primary-hub-act-choice-amount { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.primary-hub-act-choice-meta { color: var(--ink-muted); font-size: var(--type-h4); line-height: var(--type-h4-lh); }
.primary-hub-day-dialog .primary-hub-offer { width: 100%; box-sizing: border-box; }
@media (max-width: 600px) {
  .primary-hub-day-dialog-body { padding: var(--space-8); }
}

/* Once navigation lives in the header, the former page toolbar carries only
   its real identity caption and never reserves an empty row. */
.primary-hub-toolbar[data-primary-nav-hosted='true'] { justify-content: flex-start; padding-block: 0; border: 0; margin-block: 0 var(--space-8); gap: 0; }
.primary-hub-title:has(+ .primary-hub-toolbar[data-primary-nav-hosted='true']) { margin-block: 0 var(--space-4); }
.primary-hub-toolbar[data-primary-nav-hosted='true'] + .notary-howto { margin-block-start: var(--space-8); }
.primary-hub-navigation-host .primary-hub-nav .btn > svg { display: block; flex: 0 0 var(--space-10); width: var(--space-10); height: var(--space-10); color: currentColor; }

/* The admitted hosted task replaces the public hero's empty vertical space
   and sibling-column reservation with one compact, complete working rail. */
#pane-notaires > .wrap:has(#notary-authed:not([hidden]) .primary-hub-toolbar[data-primary-nav-hosted='true']) > .intro--hero { padding-block: 0; }
#pane-notaires > .wrap:has(#notary-authed:not([hidden]) .primary-hub-toolbar[data-primary-nav-hosted='true']) #notary-console { padding-block-start: var(--space-8); }
#pane-notaires > .wrap:has(#notary-authed:not([hidden]) .primary-hub-toolbar[data-primary-nav-hosted='true']) .notary-console-wrap { padding-inline-end: 0; }

/* Canonical text actions center their copy at specificity (0,4,0). Main
   navigation adds its explicit destination context to share one icon/text rail. */
.site-header .primary-hub-navigation-host .primary-hub-nav .btn[data-primary-destination] { justify-content: flex-start; text-align: start; gap: var(--space-6); }

/* R9 authored utilities only. Current compact calendar cells, no-marker
   register and native inline/two-layer filter/1024px row rules stay above. */
.primary-hub-search { display: grid; grid-template-columns: var(--space-10) minmax(0, 1fr) max-content; align-items: center; min-width: 0; gap: var(--space-4); padding-inline: var(--space-6) 0; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); transition: border-color var(--motion-fast) var(--ease-ui); }
.primary-hub-search > svg { width: var(--space-10); height: var(--space-10); color: var(--ink-muted); }
.primary-hub-search:hover, .primary-hub-search:focus-within { border-color: var(--action-ink); }
.primary-hub-search:has(input:focus-visible) { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub .primary-hub-search > input { width: 100%; min-width: 0; min-height: var(--control-height); border: 0; border-radius: var(--radius); padding: var(--space-4) 0; font: inherit; background: transparent; color: var(--ink); outline: none; }
.primary-hub-search > input::-webkit-search-cancel-button { display: none; }
.primary-hub-search:has([data-primary-query-clear][hidden]) { padding-inline-end: var(--space-6); }
.primary-hub-active-filters { --action-compact-type: var(--type-h4); display: flex; flex-wrap: wrap; gap: var(--space-4); margin-block: var(--space-4) var(--space-8); }
.primary-hub-active-filter { min-width: 0; max-width: min(100%, calc(var(--control-height) * 7)); color: var(--ink-muted); border: 1px dashed var(--border); }
.primary-hub-active-filter > span { min-width: 0; overflow-wrap: anywhere; white-space: normal; }
.primary-hub-active-filter > svg { flex: 0 0 var(--space-8); width: var(--space-8); height: var(--space-8); }
.primary-hub .primary-hub-icon-button { display: inline-flex; box-sizing: border-box; align-items: center; justify-content: center; flex: 0 0 var(--control-height); min-width: var(--control-height); width: var(--control-height); min-height: var(--control-height); height: var(--control-height); padding: var(--space-4); border: 1px solid var(--border); border-radius: var(--radius); background: transparent; color: var(--ink); cursor: pointer; transition: border-color var(--motion-fast) var(--ease-ui), background-color var(--motion-fast) var(--ease-ui); }
.primary-hub-icon-button > svg { display: block; width: var(--space-10); height: var(--space-10); }
.primary-hub .primary-hub-icon-button:not(:disabled):hover { border-color: var(--action-ink); background: var(--surface-hover); color: var(--action-ink); }
.primary-hub .primary-hub-icon-button:not(:disabled):active { box-shadow: inset 0 0 0 var(--space-1) var(--action-ink); }
.primary-hub .primary-hub-icon-button:focus-visible { outline: var(--space-1) solid var(--ring); outline-offset: var(--space-2); }
.primary-hub .primary-hub-icon-button:disabled { border-color: var(--border); color: var(--ink-muted); cursor: not-allowed; }
.primary-hub-search .primary-hub-icon-button { border: 0; }
.primary-hub-period-navigation { display: flex; flex: 1 1 auto; align-items: center; gap: var(--space-4); min-width: 0; }
.primary-hub-period-title { display: grid; min-width: 0; gap: var(--space-2); margin-inline-start: var(--space-4); }
.primary-hub-period-total { margin: 0; color: var(--ink-muted); font-size: var(--type-h4); line-height: var(--type-h4-lh); font-variant-numeric: tabular-nums; }
.primary-hub-today { --action-compact-type: var(--type-h4); }
.primary-hub-calendar-hint { display: none; margin: 0; color: var(--ink-muted); font-size: var(--type-h4); line-height: var(--type-h4-lh); }
.primary-hub-day:disabled { color: var(--ink-muted); border-style: dashed; cursor: not-allowed; background: transparent; }
.primary-hub-day:disabled:is(:hover, :active) { border-color: var(--border); background: transparent; box-shadow: none; }
.primary-hub-day[data-outside-month='true'] { border-style: dashed; background: transparent; }
@media (max-width: 700px) {
  .primary-hub-period-navigation { flex-wrap: wrap; }
  .primary-hub-period-title { flex: 1 1 100%; }
}
@media (max-width: 680px) {
  .primary-hub-calendar-hint:not([hidden]) { display: block; }
}
