/* GovXRay export kit: the row under each chart, its popovers, the notebook
   side panel. Built on the gx-humane tokens (assets/gx-humane.css); the
   fallbacks only matter on a page that does not load gx-humane. gx-humane
   already turns every <button> into a 36px pill, so buttons here only get
   layout, never a competing shape. */

.gx-xk{margin:10px 0 0;display:flex;flex-direction:column;gap:8px;max-width:100%}
.gx-xk-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.gx-xk-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  height:32px;padding:0 12px;border:0;border-radius:var(--r-pill,999px);
  background:var(--gx-neutral-soft,rgba(29,29,31,.08));color:var(--gx-text,#1d1d1f);
  font:600 var(--fs-meta,13px)/1 var(--gx-type,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);
  cursor:pointer;white-space:nowrap;
  transition:background-color var(--gx-ease,200ms ease),color var(--gx-ease,200ms ease);
}
.gx-xk-btn:hover{background:var(--gx-primary-soft,rgba(52,199,89,.14))}
.gx-xk-btn:focus-visible{outline:2px solid var(--gx-focus,#007aff);outline-offset:2px}
.gx-xk-btn[aria-expanded="true"],.gx-xk-btn[aria-pressed="true"]{
  background:var(--gx-primary-soft,rgba(52,199,89,.14));color:var(--gx-accent-ink,#1e8e3e);
}
.gx-xk-btn:disabled{opacity:.45;cursor:not-allowed}
html body .gx-xk-btn[aria-expanded="true"],html body .gx-xk-btn[aria-pressed="true"]{
  background:var(--gx-primary-soft)!important;color:var(--gx-accent-ink)!important;
}
.gx-xk-pin::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--gx-accent,#34c759)}

.gx-xk-pop{
  padding:12px 14px;border-radius:var(--r-field,12px);
  background:var(--gx-surface-subtle,#f7f7fa);border:1px solid var(--gx-border,rgba(60,60,67,.12));
  color:var(--gx-text,#1d1d1f);display:flex;flex-direction:column;gap:8px;max-width:760px;
}
.gx-xk-pop[hidden]{display:none}
.gx-xk-pop-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.gx-xk-k{margin:0;font-weight:var(--fw-strong,600)}
.gx-xk-note,.gx-xk-status{margin:0;font-size:var(--fs-meta,13px);color:var(--gx-text-secondary,#6e6e73)}
.gx-xk-status:empty{display:none}
.gx-xk-cite{margin:0;padding:8px 10px;border-radius:var(--r-field,12px);background:var(--gx-surface,#fff);
  user-select:all;-webkit-user-select:all;overflow-wrap:anywhere}
.gx-xk-fs{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.gx-xk-opt{display:flex;gap:8px;align-items:flex-start;cursor:pointer}
.gx-xk-opt input{margin-top:3px;accent-color:var(--gx-accent,#34c759)}
.gx-xk-urlrow{flex-wrap:nowrap}
.gx-xk-url{flex:1 1 auto;min-width:0;height:32px;padding:0 10px;border-radius:var(--r-field,12px);
  border:1px solid var(--gx-border-strong,rgba(60,60,67,.24));background:var(--gx-surface,#fff);color:var(--gx-text,#1d1d1f);
  font:var(--fs-meta,13px)/1 ui-monospace,SFMono-Regular,Menlo,monospace}

/* ---- notebook side panel ---- */
.gx-nb{
  position:fixed;top:0;right:0;bottom:0;z-index:1000;width:min(420px,100vw);
  display:flex;flex-direction:column;gap:10px;padding:16px;box-sizing:border-box;overflow:auto;
  background:var(--gx-surface,#fff);color:var(--gx-text,#1d1d1f);
  border-left:1px solid var(--gx-border,rgba(60,60,67,.12));box-shadow:var(--gx-shadow-md,0 14px 36px rgba(0,0,0,.12));
}
.gx-nb[hidden]{display:none}
.gx-nb-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.gx-nb-h{margin:0}
.gx-nb-privacy,.gx-nb-info,.gx-nb-meta{margin:0;font-size:var(--fs-meta,13px);color:var(--gx-text-secondary,#6e6e73)}
.gx-nb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;flex:1 1 auto}
.gx-nb-empty{color:var(--gx-text-secondary,#6e6e73)}
.gx-nb-item{padding:12px;border-radius:var(--r-card,20px);background:var(--gx-surface-subtle,#f7f7fa);
  display:flex;flex-direction:column;gap:6px}
.gx-nb-t{margin:0;font-weight:var(--fw-strong,600)}
.gx-nb-sum{margin:0}
.gx-nb-img{display:block;width:100%;height:auto;border-radius:var(--r-field,12px);background:#fff}
.gx-nb-lab{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-meta,13px);color:var(--gx-text-secondary,#6e6e73)}
.gx-nb-note{width:100%;box-sizing:border-box;min-height:64px;padding:8px 10px;resize:vertical;
  border-radius:var(--r-field,12px);border:1px solid var(--gx-border-strong,rgba(60,60,67,.24));
  background:var(--gx-surface,#fff);color:var(--gx-text,#1d1d1f);font:inherit}
.gx-nb-acts,.gx-nb-foot{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.gx-nb-link{font-size:var(--fs-meta,13px);color:var(--gx-accent-ink,#1e8e3e)}
.gx-nb-danger{color:var(--gx-ink-danger,#c7271c)}
html body .gx-nb-danger{color:var(--gx-ink-danger)!important}
.gx-nb-foot{border-top:1px solid var(--gx-border,rgba(60,60,67,.12));padding-top:10px}
[data-nb-count]{display:inline-flex;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill,999px);
  align-items:center;justify-content:center;background:var(--gx-accent,#34c759);color:#fff;font-size:11px;font-weight:600}
[data-nb-count][hidden]{display:none}
/* Top-bar Notebook entry: icon circle only (matches theme/share). The kit used
   to write "Notebook"/"Carnet" into [data-nb-label]; that string must never show. */
#gx-nb-trigger.gx-tb-nb,
button.gx-tb-nb{
  width:36px;height:36px;min-width:36px;padding:0;justify-content:center;
  border-radius:50%;gap:0;position:relative;overflow:visible}
#gx-nb-trigger.gx-tb-nb .gx-btn-label,
#gx-nb-trigger.gx-tb-nb [data-nb-label],
button.gx-tb-nb .gx-btn-label,
button.gx-tb-nb [data-nb-label]{display:none!important}
#gx-nb-trigger.gx-tb-nb [data-nb-count],
button.gx-tb-nb [data-nb-count]{
  position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;
  border-radius:8px;font-size:10px;line-height:16px}

@media (max-width:640px){
  .gx-xk-row{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  .gx-nb{width:100vw;border-left:0}
}
@media (prefers-reduced-motion:reduce){.gx-xk-btn{transition:none}}
@media print{.gx-xk,.gx-nb{display:none!important}}
