/* Aera DAO: an instrument panel in the board's grammar. Every governance quantity is drawn
   as a position on a ruled track beside its exact figure: the meter (stake, coverage), the
   tally (votes against quorum) and the lamp track (a proposal on its clock). Loaded after
   board.css and terminal.css; page-ID prefixes out-rank the terminal's flattening rule. */

/* ---------- Frame ---------- */
.panel.ad-root, .aera-dao-page.ad-root { display: block; min-height: 0; padding: 0; gap: 0; background: var(--ground-fill); border-radius: 0; }
.ad-root[hidden], .ad-root [hidden] { display: none !important; }
.ad-root > * { width: auto; max-width: none; margin: 0; min-width: 0; }
.ad-root button { font-family: inherit; }
.ad-root ::selection { background: var(--selection); color: var(--text); }
.ad-root :is(dd, .ad-figure, .ad-table-wrap, .ad-description, .ad-holding-amount) { scrollbar-width: thin; scrollbar-color: var(--rule-strong) var(--ground); }
.ad-root a { text-underline-offset: 3px; overflow-wrap: anywhere; }
.ad-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.ad-root .ad-main { container-type: inline-size; padding: 24px var(--pane-x) 64px; background: transparent; }
.ad-main h2 { margin: 0; font-size: 1rem; font-weight: 500; line-height: 1.4; }
.ad-main h3 { margin: 0; font-size: .875rem; font-weight: 500; line-height: 1.4; }
.ad-main h4 { margin: 1.25rem 0 .65rem; font-size: .875rem; font-weight: 500; }
.ad-main p { max-width: 72ch; color: var(--text-muted); font-size: .8125rem; line-height: 1.55; }
.ad-root .ad-muted, .ad-root .ad-form-status { color: var(--text-muted); font-size: .8125rem; line-height: 1.55; overflow-wrap: anywhere; }
.ad-root .ad-warning { color: var(--network-label); font-size: .8125rem; line-height: 1.55; overflow-wrap: anywhere; white-space: pre-wrap; }
.ad-warning:empty, .ad-form-status:empty, .ad-muted:empty { display: none; }
.ad-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-width: 0; }
.ad-heading > h2, .ad-heading > p { margin: 0; }
.ad-section-heading { align-items: flex-end; margin-bottom: 4px; padding-bottom: 16px; border-bottom: 1px solid var(--terminal-rule); }
.ad-section-heading > div { min-width: 0; }
.ad-main .ad-section-heading p { margin-top: 4px; }
.ad-section-heading .btn { flex-shrink: 0; }
.ad-pane-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; min-height: 40px; margin-bottom: 4px; padding-bottom: 12px; border-bottom: 1px solid var(--terminal-rule); }
.ad-colhead { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-root .btn { min-height: 44px; padding-inline: 16px; font-weight: 500; }
.ad-root .btn.small-btn { padding-inline: 14px; }
.ad-root .btn:focus-visible { border-color: var(--focus); outline: none; box-shadow: none; }
.ad-root summary:focus-visible, .ad-root .ad-proposal-row:focus-visible, .ad-root .ad-row-link:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.ad-root .ad-primary { background: var(--positive); color: var(--on-positive); border-color: var(--positive); font-weight: 600; }
.ad-root .ad-primary:hover:not(:disabled) { background: var(--positive-soft); border-color: var(--positive-soft); color: var(--on-positive); }
.ad-root .ad-primary:disabled { background: var(--terminal-control); border-color: var(--rule-strong); color: var(--text-muted); opacity: 1; }
.ad-root .ad-mint-outline { border-color: rgb(var(--positive-rgb) / .55); color: var(--positive); }
.ad-root .ad-mint-outline:hover:not(:disabled) { background: rgb(var(--positive-rgb) / .08); border-color: var(--positive); color: var(--positive); }
.ad-root .ad-mint-outline:disabled { border-color: var(--rule-strong); color: var(--text-muted); }

/* ---------- Voices ---------- */
/* The board numeral: condensed Archivo, tabular. */
.ad-figure, .ad-stake-summary dd, .ad-coverage-available > strong, .ad-holding-lead .ad-holding-amount, .ad-reward-unclaimed dd, .ad-tally-figures strong, .ad-head-value {
  font-family: var(--font-display); font-stretch: 72%; font-weight: 600; font-feature-settings: "tnum" 1, "lnum" 1; letter-spacing: -.005em; color: var(--text);
}
.ad-unit { font: 400 .8125rem/1.5 var(--fontfam-term); font-stretch: 100%; letter-spacing: 0; color: var(--text-soft); white-space: nowrap; }
.ad-mono { font-family: var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; }

/* ---------- Instruments ---------- */
/* Meter: a 4px track; segments in mint, rule-bright and pink glide to their new width. */
.ad-meter { display: flex; width: 100%; height: 4px; overflow: hidden; border-radius: 0; background: var(--rule-strong); }
.ad-meter > i { display: block; flex: 0 0 auto; width: var(--w, 0%); height: 100%; min-width: 0; transition: width 420ms cubic-bezier(.16, 1, .3, 1); }
.ad-meter > i[data-tone="mint"] { background: var(--positive); }
.ad-meter > i[data-tone="soft"] { background: var(--rule-bright); }
.ad-meter > i[data-tone="pink"] { background: var(--danger-soft); }
.ad-meter > i[data-tone="amber"] { background: var(--network-label); }
.ad-meter > i + i { box-shadow: -1px 0 0 var(--ground); }
.ad-meter[data-empty="true"] { background: repeating-linear-gradient(90deg, var(--rule-strong) 0 6px, transparent 6px 10px); }
.ad-legend { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 10px 0 0; font: 400 .75rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; color: var(--text-soft); }
.ad-legend > span { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.ad-legend > span::before { content: ''; width: 8px; height: 3px; background: var(--rule-bright); }
.ad-legend > span[data-tone="mint"]::before { background: var(--positive); }
.ad-legend > span[data-tone="pink"]::before { background: var(--danger-soft); }
.ad-legend > span[data-tone="none"]::before { display: none; }
.ad-legend b { font-weight: 500; color: var(--text); }

/* Tally: For, Against and Abstain on one track with the quorum tick. */
.ad-tally { min-width: 0; }
.ad-tally-figures { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0 0 12px; }
.ad-tally-figures > div { min-width: 0; }
.ad-tally-figures span { display: block; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-tally-figures strong { display: block; margin-top: 6px; max-width: 100%; overflow-x: auto; overflow-y: hidden; white-space: nowrap; font-size: 1.75rem; line-height: 1.05; }
.ad-tally-figures [data-tone="for"] strong { color: var(--positive); }
.ad-tally-figures [data-tone="against"] strong { color: var(--danger-soft); }
.ad-tally-figures [data-tone="abstain"] strong { color: var(--text-soft); }
.ad-tally-track { position: relative; display: flex; height: 6px; margin: 0; background: var(--rule-strong); }
.ad-tally-track > i { display: block; flex: 0 0 auto; width: var(--w, 0%); height: 100%; transition: width 420ms cubic-bezier(.16, 1, .3, 1); }
.ad-tally-track > i + i { box-shadow: -1px 0 0 var(--ground); }
.ad-tally-track > i[data-tone="for"] { background: var(--positive); }
.ad-tally-track > i[data-tone="against"] { background: var(--danger-soft); }
.ad-tally-track > i[data-tone="abstain"] { background: var(--rule-bright); }
.ad-tally-quorum { position: absolute; top: -5px; bottom: -5px; left: var(--q, 100%); width: 1px; background: var(--text); transform: translateX(-.5px); transition: left 420ms cubic-bezier(.16, 1, .3, 1); }
.ad-tally-quorum > span { position: absolute; top: calc(100% + 6px); right: 0; font: 400 .6875rem/1.4 var(--fontfam-term); letter-spacing: .04em; text-transform: uppercase; color: var(--text-soft); white-space: nowrap; }
.ad-tally-quorum[data-side="left"] > span { right: auto; left: 0; }
.ad-root .ad-tally-note { margin: 28px 0 0; font-size: .75rem; }
.ad-tally-mini { display: flex; position: relative; height: 3px; background: var(--rule-strong); }
.ad-tally-mini > i { display: block; flex: 0 0 auto; width: var(--w, 0%); height: 100%; }
.ad-tally-mini > i[data-tone="for"] { background: var(--positive); }
.ad-tally-mini > i[data-tone="against"] { background: var(--danger-soft); }
.ad-tally-mini > i[data-tone="abstain"] { background: var(--rule-bright); }
.ad-tally-mini > b { position: absolute; top: -3px; bottom: -3px; left: var(--q, 100%); width: 1px; background: var(--text-soft); }

/* Lamp track: the brand's lamps as a timeline. Lit for stages passed, amber where it stands. */
.ad-lamps { display: flex; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.ad-lamps > li { position: relative; flex: 1 1 0; min-width: 0; padding: 18px 12px 0 0; }
.ad-lamps > li:last-child { flex: 0 0 auto; padding-right: 0; }
.ad-lamps > li::before { content: ''; position: absolute; left: 4px; right: 0; top: 4px; height: 1px; background: var(--rule-strong); }
.ad-lamps > li:last-child::before { display: none; }
.ad-lamps > li[data-state="done"]::before { background: var(--positive); }
.ad-lamp { position: absolute; top: 0; left: 0; width: 9px; height: 9px; border-radius: 50%; background: var(--rule-bright); box-shadow: 0 0 0 3px var(--ground); }
.ad-lamps > li[data-state="done"] .ad-lamp { background: var(--positive); }
.ad-lamps > li[data-state="current"] .ad-lamp { background: var(--network-label); box-shadow: 0 0 0 3px var(--ground), 0 0 0 4px var(--network-label); }
.ad-lamps > li[data-state="failed"] .ad-lamp { background: var(--danger-soft); }
.ad-lamps > li[data-state="static"] .ad-lamp { background: var(--text-soft); }
.ad-lamps > li[data-state="static"] .ad-stage { color: var(--text); }
.ad-lamps > li[data-state="failed"] ~ li .ad-lamp, .ad-lamps > li[data-state="failed"] ~ li::before { opacity: .5; }
.ad-stage { display: block; color: var(--text-muted); font-size: .8125rem; line-height: 1.4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ad-lamps > li[data-state="done"] .ad-stage { color: var(--text-soft); }
.ad-lamps > li[data-state="current"] .ad-stage { color: var(--text); font-weight: 500; }
.ad-lamps > li[data-state="failed"] .ad-stage { color: var(--danger-soft); font-weight: 500; }
.ad-stage-note { display: block; margin-top: 2px; font: 400 .6875rem/1.4 var(--fontfam-term); color: var(--text-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ad-segment { display: block; margin-top: 10px; padding-right: 8px; }
.ad-segment > span { display: block; color: var(--text-muted); font-size: .75rem; line-height: 1.4; }
.ad-segment > strong { display: block; margin-top: 2px; font: 400 .8125rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; color: var(--text); overflow-wrap: anywhere; }
.ad-lamps-lit > li[data-state="done"] .ad-lamp, .ad-lamps-lit > li[data-state="current"] .ad-lamp { animation: ad-lamp-on 240ms ease-out both; animation-delay: calc(var(--i, 0) * 70ms); }
.ad-lamps-lit > li[data-state="done"]::before { animation: ad-lamp-line 240ms ease-out both; animation-delay: calc(var(--i, 0) * 70ms + 60ms); }
@keyframes ad-lamp-on { from { background: var(--rule-bright); box-shadow: 0 0 0 3px var(--ground); } }
@keyframes ad-lamp-line { from { background: var(--rule-strong); } }
.ad-lamps-vertical { flex-direction: column; }
.ad-lamps-vertical > li, .ad-lamps-vertical > li:last-child { flex: 0 0 auto; padding: 0 0 22px 24px; }
.ad-lamps-vertical > li:last-child { padding-bottom: 0; }
.ad-lamps-vertical > li::before { left: 4px; right: auto; top: 6px; bottom: -6px; width: 1px; height: auto; }
.ad-lamps-vertical > li:last-child::before { display: none; }
.ad-lamps-vertical .ad-lamp { top: 4px; }
.ad-lamps-vertical .ad-stage { white-space: normal; color: var(--text-soft); }
.ad-lamps-vertical .ad-stage-note { white-space: normal; }

/* State chips in the tag voice. */
.ad-badge { display: inline-flex; align-items: center; height: 22px; padding: 0 7px; border: 1px solid var(--rule-strong); border-radius: 3px; background: transparent; color: var(--text-soft); font: 500 .6875rem/1 var(--fontfam-term); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.ad-badge[data-state="1"] { background: rgb(var(--positive-rgb) / .08); border-color: rgb(var(--positive-rgb) / .4); color: var(--positive); }
.ad-badge[data-state="4"] { border-color: rgb(var(--positive-rgb) / .4); color: var(--positive); }
.ad-badge:is([data-state="0"], [data-state="5"]) { background: rgb(245 176 86 / .08); border-color: rgb(245 176 86 / .4); color: var(--network-label); }
.ad-badge:is([data-state="2"], [data-state="3"], [data-state="6"]) { border-color: rgb(var(--danger-soft-rgb) / .4); color: var(--danger-soft); }
.ad-badge[data-state="7"] { border-color: var(--rule-bright); color: var(--text); }
.ad-status-dot { display: inline-flex; align-items: center; gap: 7px; }
.ad-status-dot::before { content: ''; flex: 0 0 6px; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.ad-tab-count { margin-left: 8px; }
.ad-root .ad-nav .aera-page-nav-link[aria-current="page"] .ad-tab-count { color: var(--on-positive); background: var(--positive); }

/* ---------- Head ---------- */
.ad-head-figure { display: grid; justify-items: end; gap: 4px; min-width: 0; max-width: 100%; text-align: right; }
.ad-head-label { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); white-space: nowrap; }
.ad-head-value { display: flex; align-items: baseline; gap: 8px; min-width: 0; max-width: 100%; margin: 0; font-size: 2.25rem; line-height: 1; color: var(--positive); }
.ad-head-value > span:first-child { display: block; min-width: 0; overflow-x: auto; overflow-y: hidden; white-space: nowrap; scrollbar-width: none; }
.ad-head-value[data-empty="true"] { color: var(--rule-bright); }
.ad-head-share { min-height: 18px; font: 400 .75rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; color: var(--text-soft); white-space: nowrap; }
.ad-head-share:empty { display: block; }
.ad-root .ad-data-strip { display: flex; justify-content: flex-end; align-items: center; gap: 12px; min-height: 44px; margin: 2px 0 0; padding: 0; border: 0; position: relative; }
/* Wide screens: the status and Details sit at the right end of the tab row, out of flow, so the head
   is only as tall as the title and a status change can never move the page. */
@media (min-width: 961px) {
  .ad-workspace-heading { position: relative; }
  .ad-root .ad-data-strip { position: absolute; top: calc(100% + 2px); right: calc(var(--pane-x) - 10px); margin: 0; }
}
.ad-root #ad-status { margin: 0; color: var(--text-soft); font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.ad-root #ad-status:not([hidden]) { display: inline-flex; align-items: center; gap: 7px; }
.ad-root #ad-status:not([hidden])::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.ad-data-strip[data-state="partial"] #ad-status, .ad-data-strip[data-state="paused"] #ad-status { color: var(--network-label); }
.ad-data-strip[data-state="paused"] #ad-status::before { animation: ad-pulse 1.6s ease-in-out infinite; }
@keyframes ad-pulse { 50% { opacity: .35; } }
.ad-root .ad-data-details { margin: 0; }
.ad-root .ad-data-details > summary, .ad-root .ad-data-details[open] > summary { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; min-width: 0; margin: 0; padding: 6px 10px; border-radius: 4px; list-style: none; cursor: pointer; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-data-details > summary::-webkit-details-marker { display: none; }
.ad-data-details > summary::after { content: ''; width: 5px; height: 5px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(45deg); margin: -3px 2px 0; }
.ad-data-details[open] > summary::after { transform: rotate(225deg); margin-top: 3px; }
.ad-root .ad-data-details > summary:hover, .ad-root .ad-data-details[open] > summary { background: var(--terminal-control); color: var(--text); }
.ad-data-popover { position: absolute; z-index: 20; top: calc(100% + 8px); right: 0; width: min(420px, calc(100vw - 32px)); padding: 20px; text-align: left; max-height: min(480px, 65vh); overflow: auto; overscroll-behavior: contain; }
.ad-data-popover h2 { margin: 0 0 12px; font-size: .9375rem; }
.ad-data-popover h3 { margin: 0 0 6px; font-size: .8125rem; font-weight: 600; }
.ad-data-popover p { margin: 0; font-size: .8125rem; }
.ad-data-popover #ad-history-details { margin: 16px 0 0; padding-top: 16px; border-top: 1px solid var(--terminal-rule); }
.ad-data-popover #ad-data-connection:empty { display: none; }
.ad-data-popover #ad-data-connection:empty + #ad-history-details { margin-top: 0; padding-top: 0; border-top: 0; }

/* ---------- Overview: the board ---------- */
.ad-dao-overview { margin-top: -24px; }
.ad-board { margin: 0 calc(-1 * var(--pane-x)); }
.ad-row {
  position: relative; display: grid; grid-template-columns: minmax(180px, 240px) minmax(0, 1.2fr) minmax(220px, 1fr) 28px; grid-template-areas: "label figure meter end";
  align-items: center; column-gap: clamp(20px, 3vw, 48px); min-height: 116px; margin: 0; padding: 18px var(--pane-x); border-bottom: 1px solid var(--terminal-rule); z-index: 0;
}
/* Rows span the page; their contents retain the workspace gutter. */
.ad-row::before { content: ''; position: absolute; inset: -1px 0; z-index: -1; pointer-events: none; box-shadow: inset 0 1px 0 transparent, inset 0 -1px 0 transparent; transition: background-color 200ms ease-out, box-shadow 200ms ease-out; }
.ad-row:hover::before { background: var(--terminal-control); box-shadow: inset 0 1px 0 var(--terminal-rule), inset 0 -1px 0 var(--terminal-rule); }
.ad-row > dt { grid-area: label; margin: 0; min-width: 0; }
.ad-row:has(:is(.ad-row-link, .ad-row-figure-link):focus-visible) { outline: 2px solid var(--focus); outline-offset: -2px; }
.ad-row > .ad-figure { grid-area: figure; position: relative; z-index: 1; margin: 0; min-width: 0; max-width: 100%; overflow-x: auto; overflow-y: hidden; white-space: nowrap; font-size: 2.75rem; line-height: 1; }
.ad-row > .ad-figure:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.ad-figure .ad-unit { margin-left: 6px; }
.ad-figure[data-empty="true"] { color: var(--rule-bright); }
.ad-row > .ad-instrument { grid-area: meter; margin: 0; min-width: 0; }
.ad-instrument .ad-legend { margin-top: 10px; }
.ad-instrument .ad-legend:first-child { margin-top: 0; }
.ad-row::after { content: ''; grid-area: end; justify-self: end; width: 12px; height: 12px; border-right: 1.5px solid var(--text-muted); border-bottom: 1.5px solid var(--text-muted); position: relative; top: 4.25px; pointer-events: none; transform: rotate(-45deg); transition: top 240ms cubic-bezier(.16, 1, .3, 1), border-color 200ms ease-out; }
.ad-row:hover::after { border-color: var(--positive); top: 0; }
.ad-main .ad-board-foot { max-width: none; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; margin: 0; padding: 12px 0 0; font: 400 .75rem/1.5 var(--fontfam-term); color: var(--text-muted); }
.ad-overview-network { font: inherit; }

/* Governance rules: requirements ledger beside the clock. */
.ad-dao-governance { margin-top: 44px; }
.ad-dao-governance .ad-section-heading { flex-wrap: wrap; }
.ad-dao-columns { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 0; row-gap: 0; }
.ad-dao-columns > section { min-width: 0; padding: 20px 0 0; }
.ad-root#aera-dao-page .ad-dao-columns > section:nth-child(odd) { padding-right: 40px; }
.ad-root#aera-dao-page .ad-dao-columns > section:nth-child(even) { padding-left: 40px; border-left: 1px solid var(--terminal-rule); }
.ad-dao-columns h3 { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0 0 4px; font-size: .9375rem; }
.ad-dao-columns h3 > span { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-dao-ledger { margin: 0; }
.ad-dao-ledger > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: baseline; gap: 16px; min-height: 48px; padding: 14px 0; border-bottom: 1px solid var(--terminal-rule); }
.ad-dao-ledger dt { color: var(--text-soft); font-size: .8125rem; line-height: 1.5; }
.ad-dao-ledger dt > span { display: block; margin-top: 3px; color: var(--text-muted); font-size: .75rem; line-height: 1.5; }
.ad-dao-ledger dd { margin: 0; text-align: right; color: var(--text); font: .875rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; white-space: nowrap; overflow-x: auto; overflow-y: hidden; }
.ad-dao-ledger dd:focus-visible { outline: 1px solid var(--text-muted); outline-offset: 2px; }
.ad-governance-timing { margin-top: 12px; }
.ad-quorum-extension { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-top: 22px; padding: 12px 0; border-top: 1px solid var(--terminal-rule); color: var(--text-muted); font-size: .75rem; line-height: 1.5; }
.ad-quorum-extension strong { font: .8125rem/1.5 var(--fontfam-term); color: var(--text); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; text-align: right; }

/* Contract control: the audit stays flat and scannable. */
.ad-root#aera-dao-page .ad-dao-page > #ad-contract-control { margin-top: 44px; padding: 20px 0 0; border: 0; border-top: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; }
.ac-audit { min-width: 0; scroll-margin-top: 80px; }
.ac-audit .ad-heading h2 { margin: 0; }
.ac-audit > p { margin: 4px 0 0; }
.ac-audit #ac-summary { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; margin-block: 20px 16px; font-size: .8125rem; line-height: 1.55; color: var(--text-soft); }
.ac-badge { display: inline-flex; align-items: center; flex-shrink: 0; height: 22px; padding: 0 7px; border: 1px solid var(--terminal-rule); border-radius: 3px; color: var(--text-muted); font: 500 .6875rem/1 var(--fontfam-term); letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.ac-badge[data-control-status="dao-controlled"] { color: var(--positive); border-color: rgb(var(--positive-rgb) / .45); }
.ac-badge[data-control-status="warning"] { color: var(--network-label); border-color: rgb(245 176 86 / .5); }
.ac-badge[data-control-status="unknown"], .ac-badge[data-control-state="unavailable"], .ac-badge[data-control-state="loading"] { color: var(--text-soft); border-style: dashed; border-color: var(--text-muted); }
.ac-evidence, .ac-observations { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px 24px; }
.ac-evidence > div, .ac-observations > div { min-width: 0; }
.ac-audit dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ac-audit dd { margin: 4px 0 0; font-family: var(--fontfam-term); font-size: .8125rem; line-height: 1.55; overflow-wrap: anywhere; }
.ac-audit .ac-address { font-family: var(--fontfam-term); font-size: .8125rem; line-height: 1.5; color: var(--text-soft); overflow-wrap: anywhere; }
.ac-audit .ac-address:hover { color: var(--text); }
.ac-audit .ac-unobserved { font-family: var(--font-sans); color: var(--text-muted); }
.ac-counts { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 0 0 20px; padding: 0; border: 0; }
.ac-counts > div { display: flex; align-items: baseline; gap: 8px; }
.ac-counts dd { margin: 0; color: var(--text); }
.ac-audit #ac-counts > p { margin: 16px 0 10px; font-size: .75rem; }
.ac-audit #ac-review { min-height: 44px; margin-bottom: 16px; }
.ac-audit #ac-inventory { padding-top: 8px; }
.ac-audit #ac-inventory > h3 { margin: 12px 0; }
.ac-group-count { color: var(--text-muted); font-size: .8125rem; font-weight: 400; }
.ad-root .ac-inventory-disclosure { margin: 0; border-block: 1px solid var(--terminal-rule); }
.ad-root .ac-inventory-disclosure > summary { min-height: 52px; font-size: .875rem; font-weight: 500; color: var(--text); }
.ac-audit .ac-contract { padding: 0; margin: 0; border: 0; border-top: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; }
.ac-audit .ac-contract > summary { display: grid; grid-template-columns: minmax(0, 1fr) 135px 142px; align-items: center; gap: 12px; min-height: 64px; margin: 0; padding: 12px 0 12px 20px; position: relative; cursor: pointer; list-style: none; }
.ac-contract > summary::-webkit-details-marker { display: none; }
.ac-contract, .ac-contract > summary { scroll-margin-top: 80px; }
.ac-contract > summary::before { content: ''; position: absolute; left: 2px; top: 27px; width: 5px; height: 5px; border-right: 1px solid var(--text-muted); border-bottom: 1px solid var(--text-muted); transform: rotate(-45deg); }
.ac-contract[open] > summary::before { transform: rotate(45deg); }
.ac-contract > summary:hover { background: var(--terminal-control); }
.ac-contract > summary > .ac-badge { justify-self: end; }
.ac-contract-name { min-width: 0; overflow-wrap: anywhere; font-size: .875rem; font-weight: 500; }
.ac-contract-kind { display: block; color: var(--text-muted); font-size: .75rem; font-weight: 400; margin-top: 4px; }
.ac-row-body { padding: 0 0 20px 20px; }
.ac-audit .ac-reasons { padding-left: 20px; color: var(--text-soft); font-size: .8125rem; line-height: 1.6; margin: 0 0 16px; }
.ac-paths { list-style: none; padding: 0; margin: 0 0 20px; }
.ac-paths > li + li { margin-top: 20px; }
.ac-path-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; font-size: .8125rem; }
.ac-path-heading strong { font-weight: 500; }
.ac-path { padding-left: 24px; margin: 10px 0 0; font-family: var(--fontfam-term); font-size: .8125rem; color: var(--text-muted); }
.ac-path > li { padding: 5px 0 5px 4px; overflow-wrap: anywhere; }
.ac-path-name { display: block; font-family: var(--font-sans); font-size: .75rem; color: var(--text-muted); }
.ac-audit .ac-other { margin: 0; padding: 14px 0; border: 0; border-block: 1px solid var(--terminal-rule); border-radius: 0; }
.ac-other > summary { font-size: .875rem; min-height: 28px; cursor: pointer; }
.ac-audit pre, .ac-block-hash { white-space: pre-wrap; overflow-wrap: anywhere; font-family: var(--fontfam-term); font-size: .8125rem; }
.ac-audit .ac-scope-note { margin-top: 20px; max-width: 88ch; font-size: .75rem; }
.ac-audit #ac-scope summary { font-size: .8125rem; cursor: pointer; }
.ac-audit #ac-scope > details { margin-bottom: 0; }
.ac-audit li, .ac-audit p { overflow-wrap: anywhere; }

/* ---------- Shared forms, tables, disclosures ---------- */
.ad-card { min-width: 0; margin: 28px 0 0; padding: 20px 0 0; border: 0; border-top: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; }
.ad-card > p { margin: 4px 0 12px; font-size: .8125rem; }
.ad-form { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.ad-form label { display: flex; flex-direction: column; position: relative; gap: 8px; min-width: 0; color: var(--text-soft); font-size: .8125rem; line-height: 1.45; }
.ad-form input, .ad-form select, .ad-form textarea { display: block; width: 100%; min-width: 0; margin: 0; padding: 10px 12px; border: 1px solid var(--rule-strong); border-radius: 4px; background: var(--terminal-control); color: var(--text); font-family: var(--fontfam-term); font-size: .875rem; line-height: 1.5; font-variant-numeric: tabular-nums slashed-zero; caret-color: var(--positive); transition: border-color 160ms ease-out; }
.ad-form input, .ad-form select { min-height: 44px; text-overflow: ellipsis; }
.ad-form select, #ad-description, #ad-vote-reason, .ad-guided-form textarea { font-family: inherit; }
.ad-form textarea { resize: vertical; }
.ad-form input::placeholder, .ad-form textarea::placeholder { color: var(--text-muted); opacity: 1; }
.ad-form input:hover:not(:disabled), .ad-form select:hover:not(:disabled), .ad-form textarea:hover:not(:disabled) { border-color: var(--rule-bright); }
.ad-form input:focus, .ad-form select:focus, .ad-form textarea:focus { border-color: var(--positive); outline: none; box-shadow: none; }
.ad-form input:disabled, .ad-form select:disabled, .ad-form textarea:disabled { color: var(--text-muted); cursor: not-allowed; opacity: .65; }
.ad-form input[type="number"] { -moz-appearance: textfield; }
.ad-form input::-webkit-outer-spin-button, .ad-form input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.ad-form h3, .ad-form p { margin: 0; }
.ad-form > button[type="submit"] { align-self: flex-start; min-height: 44px; }
.ad-field-label { display: flex; align-items: baseline; gap: 8px; }
.ad-form[data-busy] { cursor: progress; }
.ad-label-hint { color: var(--text-muted); font-size: .75rem; }
.ad-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.ad-addresses, .ad-contract-value { overflow-wrap: anywhere; font-family: var(--fontfam-term); font-size: .8125rem; line-height: 1.5; }
.ad-table-wrap { overflow-x: auto; overflow-y: hidden; max-width: 100%; margin-top: 12px; }
.ad-root table { border-collapse: collapse; width: 100%; text-align: left; font-size: .8125rem; }
.ad-root th { padding: 0 8px 10px; border-bottom: 1px solid var(--rule-strong); vertical-align: bottom; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-root td { padding: 12px 8px; border-bottom: 1px solid var(--terminal-rule); vertical-align: top; color: var(--text-soft); font-family: var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-root th:first-child, .ad-root td:first-child { padding-left: 0; }
.ad-root th:last-child, .ad-root td:last-child { padding-right: 0; }
.ad-root tbody tr:hover { background: var(--terminal-control); }
.ad-root td.ad-reason { min-width: 150px; white-space: pre-wrap; font-family: var(--font-sans); }
.ad-root details { margin: 0; }
.ad-root summary { min-height: 44px; display: flex; align-items: center; gap: 12px; cursor: pointer; padding: 8px 0; color: var(--text-soft); font-size: .8125rem; line-height: 1.5; list-style: none; }
.ad-root summary::-webkit-details-marker { display: none; }
.ad-root summary:hover { color: var(--text); }
.ad-root details[open] > summary { margin-bottom: 8px; }
.ad-disclosure { border-top: 1px solid var(--terminal-rule); }
.ad-disclosure:last-child { border-bottom: 1px solid var(--terminal-rule); }
.ad-disclosure > summary { min-height: 52px; font-size: .875rem; font-weight: 500; color: var(--text); }
.ad-root summary:not(.ad-data-details > summary):not(.ac-contract > summary)::after { content: ''; flex: 0 0 6px; width: 6px; height: 6px; margin-left: auto; margin-right: 4px; border-right: 1px solid var(--text-muted); border-bottom: 1px solid var(--text-muted); transform: rotate(45deg) translateY(-2px); transition: transform 200ms ease-out; }
.ad-root details[open] > summary:not(.ad-data-details > summary):not(.ac-contract > summary)::after { transform: rotate(225deg); }
.ad-root summary:hover::after { border-color: var(--text); }
.ad-disclosure[open] { padding-bottom: 20px; }
.ad-disclosure[open] > summary { margin-bottom: 4px; }
.ad-root .ad-metrics { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 0; }
.ad-root .ad-metric { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; min-width: 0; min-height: 0; padding: 12px 0; border: 0; border-bottom: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; }
.ad-root .ad-metric > span { margin: 0; padding: 0; background: transparent; color: var(--text-soft); font-size: .8125rem; line-height: 1.5; }
.ad-root .ad-metric strong { margin: 0; text-align: right; color: var(--text); font: 400 .8125rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 12px 0 0; color: var(--text-muted); font-size: .8125rem; }
.ad-pagination > span { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; }
.ad-connect { display: grid; gap: 12px; justify-items: start; padding: 8px 0 4px; }
.ad-connect > p { margin: 0; max-width: 44ch; }
.ad-connect .btn { padding-inline: 18px; }

/* ---------- Staking: the position beside the ticket ---------- */
.ad-staking-page { display: grid; grid-template-columns: minmax(0, 1fr) 380px; grid-template-areas: "lead ticket" "more ticket"; align-items: start; gap: 0; }
.ad-staking-position { min-width: 0; padding-right: 40px; }
.ad-staking-lead { grid-area: lead; }
.ad-staking-more { grid-area: more; }
.ad-staking-page .ad-staking-manage { grid-area: ticket; }
.ad-root#aera-dao-page .ad-staking-page .ad-staking-manage { display: block; margin: 0; padding: 0 0 0 40px; border: 0; border-left: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; }
.ad-staking-page > .ad-staking-position > .ad-pane-head { margin-bottom: 20px; }
.ad-stake-summary { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 24px; margin: 0; }
.ad-stake-summary > div { min-width: 0; }
.ad-stake-summary dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-root .ad-stake-summary dd, .ad-root .ad-stake-summary .ad-stake-owned dd { margin: 8px 0 0; font-size: 2.75rem; line-height: 1; letter-spacing: -.005em; }
#ad-staked-balance { overflow-x: auto; overflow-y: hidden; white-space: nowrap; overflow-wrap: normal; }
#ad-staked-balance:focus-visible { outline: 2px solid var(--focus); outline-offset: 4px; }
.ad-stake-summary dd > span { font: 400 .8125rem/1.5 var(--fontfam-term); font-stretch: 100%; letter-spacing: 0; color: var(--text-soft); white-space: nowrap; }
.ad-share { margin-top: 22px; }
.ad-root .ad-stake-total { margin: 10px 0 0; color: var(--text-muted); font-size: .75rem; line-height: 1.6; }
.ad-stake-total span { color: var(--text-soft); font-family: var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-stake-grant-note { margin: 8px 0 0; }
.ad-staking-rewards { margin-top: 36px; }
.ad-staking-rewards .ad-pane-head { margin-bottom: 0; }
.ad-reward-unlock { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 14px 0 6px; }
.ad-reward-unlock p { margin: 0; }
#ad-reward-countdown { color: var(--network-label); font-size: .8125rem; font-variant-numeric: tabular-nums; }
#ad-reward-countdown::before { content: ''; display: inline-block; width: 6px; height: 6px; margin-right: 8px; border-radius: 50%; background: currentColor; vertical-align: 1px; animation: ad-pulse 1.6s ease-in-out infinite; }
.ad-reward-list { margin: 0; padding: 0; list-style: none; }
.ad-reward-row { display: grid; grid-template-columns: minmax(84px, 120px) minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 16px 0; border-bottom: 1px solid var(--terminal-rule); }
.ad-reward-row h3 { margin: 0; font-size: .9375rem; overflow-wrap: anywhere; }
.ad-reward-balance { min-width: 0; }
.ad-reward-row dl { margin: 0; overflow-x: auto; overflow-y: hidden; }
.ad-reward-row dl:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.ad-reward-row dl > div { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.ad-reward-row dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-reward-row .ad-reward-unclaimed dd { margin: 0; font-size: 1.375rem; line-height: 1.1; white-space: nowrap; }
.ad-reward-status { min-height: 18px; margin: 4px 0 0; font-size: .75rem; line-height: 18px; }
.ad-root .ad-reward-status:empty { display: block; }
.ad-root .ad-reward-status { font-size: .75rem; line-height: 18px; }
.ad-reward-row .btn { min-height: 44px; padding-inline: 16px; white-space: nowrap; }
#ad-reward-lock { margin-top: 12px; }
.ad-staking-page .ad-grant { margin-top: 36px; padding: 20px 0 0; border: 0; border-top: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; scroll-margin-top: 80px; }
.ad-staking-page .ad-grant .ad-heading { margin-bottom: 8px; }
.ad-staking-page .ad-grant > p { max-width: 64ch; }
.ad-root #ad-grant-state { color: var(--text-soft); }
.ad-grant-allocation { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; margin: 12px 0 16px; }
.ad-grant-allocation > div { min-width: 0; padding-block: 12px; border-block: 1px solid var(--terminal-rule); }
.ad-grant-allocation dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-grant-allocation dd { margin: 6px 0 0; font: .9375rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-grant .btn { min-height: 44px; }
.ad-staking-settings { margin-top: 36px; }
.ad-staking-settings .ad-form { gap: 12px; }
.ad-staking-settings .ad-form h3 { font-size: .875rem; }
.ad-staking-settings .ad-card { margin-top: 12px; padding-top: 0; border-top: 0; }
.ad-staking-settings .ad-delegate-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.ad-staking-manage .ad-form { margin: 0; padding: 0; border: 0; }
.ad-staking-manage .ad-form h3 { font-size: 1rem; }
.ad-stake-modes { margin-bottom: 20px; }
.ad-root .ad-stake-modes .btn { min-height: 44px; }
.ad-root .ad-stake-modes .btn:focus-visible { border-color: var(--focus); }
#ad-stake-amount, #ad-unstake-amount { min-height: 48px; font: 400 1rem/1.5 var(--fontfam-term); font-stretch: 100%; letter-spacing: 0; font-variant-numeric: tabular-nums slashed-zero; }
.ad-staking-page .ad-staking-manage .ad-primary { align-self: stretch; min-height: 48px; font-size: .9375rem; }
.ad-ticket-line { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: .8125rem; color: var(--text-soft); }
.ad-ticket-line > span:last-child { font-family: var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; color: var(--text); }
.ad-staking-manage .ad-form > .ad-muted { font-size: .75rem; }

/* ---------- Treasury: holdings beside the fund ---------- */
.ad-reserves-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 0; }
.ad-reserves-layout > article { min-width: 0; }
.ad-root#aera-dao-page .ad-holdings { padding: 0 40px 0 0; border: 0; border-radius: 0; background: transparent; }
.ad-root#aera-dao-page .ad-insurance-section { padding: 0 0 0 40px; border-left: 1px solid var(--terminal-rule); }
.ad-reserves-layout h3 { margin: 24px 0 4px; font-size: .9375rem; }
.ad-insurance-section .ad-insurance-intro { margin: 0 0 16px; }
.ad-holdings-list { list-style: none; padding: 0; margin: 0; }
.ad-holdings-list li { display: grid; grid-template-columns: minmax(96px, 1fr) minmax(0, 1.4fr); align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid var(--terminal-rule); }
.ad-holdings-list li > div { display: grid; gap: 3px; min-width: 0; }
.ad-holdings-list strong { font-size: .9375rem; font-weight: 500; }
.ad-holdings-list li > div > span { font: var(--colhead); letter-spacing: .04em; text-transform: uppercase; color: var(--text-muted); }
.ad-holding-amount { justify-self: end; max-width: 100%; overflow-x: auto; overflow-y: hidden; white-space: nowrap; color: var(--text); font: .9375rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; }
.ad-holdings-list .ad-holding-lead { min-height: 96px; padding: 16px 0; }
.ad-holding-lead .ad-holding-amount { font-size: 2.5rem; line-height: 1; }
.ad-holding-lead strong { font-size: 1.0625rem; font-weight: 600; }
.ad-holding-amount:focus-visible, .ad-coverage-available > strong:focus-visible, .ad-treasury-page .ad-table-wrap:focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.ad-treasury-page .ad-disclosure { margin-top: 0; }
.ad-contract-list { margin: 0; display: grid; gap: 12px; }
.ad-contract-list dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-contract-list dd { margin: 4px 0 0; font: .8125rem/1.6 var(--fontfam-term); overflow-wrap: anywhere; }
.ad-coverage-available { display: grid; gap: 8px; padding: 4px 0 18px; }
.ad-coverage-available > span { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-coverage-available > strong { display: flex; align-items: baseline; gap: 8px; max-width: 100%; overflow-x: auto; overflow-y: hidden; white-space: nowrap; font-size: 2.5rem; line-height: 1; }
.ad-coverage-available > strong > span { font: 400 .8125rem/1.5 var(--fontfam-term); font-stretch: 100%; letter-spacing: 0; color: var(--text-soft); }
.ad-coverage-meter { margin: 0 0 20px; }
.ad-reserve-metrics { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px 24px; margin: 0 0 16px; }
.ad-reserve-metrics > div { min-width: 0; }
.ad-reserve-metrics dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-reserve-metrics dd { margin: 6px 0 0; font: .9375rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-coverage-asset + .ad-coverage-asset { margin-top: 24px; }
.ad-fund + .ad-fund { border-top: 1px solid var(--terminal-rule); padding-top: 24px; margin-top: 24px; }
.ad-insurance-section > .btn { margin-top: 20px; }

/* ---------- Proposals: the list beside the reading pane ---------- */
.ad-proposals-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.35fr); gap: 0; align-items: start; }
.ad-proposals-list { min-width: 0; padding-right: 40px; }
.ad-reading { min-width: 0; padding-left: 40px; border-left: 1px solid var(--terminal-rule); }
.ad-reading:has(#ad-proposal-detail:not([hidden])) #ad-proposal-guide { display: none; }
.ad-proposals-toolbar { min-height: 44px; margin: 0; padding: 8px 0; }
.ad-root .ad-history-status { display: inline-flex; align-items: center; gap: 7px; margin: 0; max-width: none; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-root .ad-history-status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--positive); }
.ad-root .ad-history-status[data-incomplete="true"] { color: var(--network-label); }
.ad-root .ad-history-status[data-incomplete="true"]::before { background: currentColor; animation: ad-pulse 1.6s ease-in-out infinite; }
#ad-proposals-count { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); white-space: nowrap; }
#ad-proposals { margin: 0; border-top: 1px solid var(--terminal-rule); }
.ad-root .ad-proposal-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title chip" "meta meta" "tally tally"; gap: 8px 16px; align-items: start; width: 100%; min-height: 88px; margin: 0; padding: 16px 12px; border: 0; border-bottom: 1px solid var(--terminal-rule); border-radius: 0; background: transparent; color: var(--text); text-align: left; text-decoration: none; cursor: pointer; transition: background-color 150ms ease-out, box-shadow 150ms ease-out; }
.ad-root .ad-proposal-row:hover { background: var(--terminal-control); box-shadow: inset 2px 0 0 var(--rule-bright); color: var(--text); text-decoration: none; }
.ad-root .ad-proposal-row[aria-current="page"] { background: var(--terminal-selected); box-shadow: inset 2px 0 0 var(--positive); }
.ad-proposal-row > .ad-badge { grid-area: chip; }
.ad-proposal-row > strong { grid-area: title; font-size: 1rem; line-height: 1.4; font-weight: 500; overflow-wrap: anywhere; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ad-proposal-row > .ad-muted { grid-area: meta; margin: 0; font: 400 .75rem/1.5 var(--fontfam-term); color: var(--text-muted); overflow-wrap: anywhere; }
.ad-proposal-row > .ad-tally-mini { grid-area: tally; margin-top: 4px; }
.ad-proposals-list .ad-pagination { padding-top: 4px; }
.ad-proposal-guide { padding-top: 8px; }
.ad-proposal-guide h3 { font-size: 1rem; }
.ad-proposal-guide > p { margin: 6px 0 22px; }
.ad-proposal-guide .ad-lamps { margin-bottom: 24px; }
.ad-guide-rules { margin: 0; padding: 0; list-style: none; display: grid; gap: 0; border-top: 1px solid var(--terminal-rule); }
.ad-guide-rules li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--terminal-rule); color: var(--text-soft); font-size: .8125rem; line-height: 1.55; }
.ad-guide-rules li::before { content: ''; width: 9px; height: 9px; margin-top: 5px; border-radius: 50%; background: var(--rule-bright); }
.ad-guide-rules b { color: var(--text); font-weight: 500; font-family: var(--fontfam-term); font-size: .8125rem; font-variant-numeric: tabular-nums slashed-zero; }
.ad-root#aera-dao-page .ad-proposals-page #ad-proposal-detail { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; scroll-margin-top: 80px; }
.ad-detail-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-bottom: 14px; }
.ad-root .ad-detail-head .ad-back { min-height: 36px; padding-inline: 10px 12px; border-color: transparent; color: var(--text-muted); font-size: .75rem; }
.ad-root .ad-detail-head .ad-back::before { content: ''; width: 7px; height: 7px; margin-right: 8px; border-left: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.ad-root .ad-detail-head .ad-back:hover { color: var(--text); border-color: var(--rule-strong); }
#ad-proposal-title { margin: 0 0 6px; font-family: var(--font-display); font-stretch: 100%; font-weight: 650; font-size: 1.5rem; line-height: 1.15; letter-spacing: -.015em; overflow-wrap: anywhere; text-wrap: balance; }
#ad-proposal-detail .ad-proposal-lifecycle { margin: 20px 0 28px; }
#ad-proposal-detail .ad-tally { margin: 0 0 8px; }
.ad-proposal-ledger { margin: 28px 0 0; }
.ad-proposal-ledger > div { display: grid; grid-template-columns: minmax(120px, .5fr) minmax(0, 1fr); gap: 12px 16px; align-items: baseline; padding: 11px 0; border-bottom: 1px solid var(--terminal-rule); }
.ad-proposal-ledger dt { color: var(--text-soft); font-size: .8125rem; line-height: 1.5; }
.ad-proposal-ledger dd { margin: 0; color: var(--text); font: .8125rem/1.5 var(--fontfam-term); font-variant-numeric: tabular-nums slashed-zero; overflow-wrap: anywhere; }
.ad-proposal-ledger dd[data-tone="mint"] { color: var(--positive); }
.ad-vote-choice { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 3px; margin: 0; padding: 3px; border: 1px solid var(--terminal-rule); border-radius: 4px; background: var(--terminal-inset); }
.ad-vote-choice > label { position: relative; display: flex; align-items: center; justify-content: center; min-height: 40px; margin: 0; padding: 0 8px; border: 1px solid transparent; border-radius: 3px; color: var(--text-muted); font-size: .8125rem; font-weight: 500; cursor: pointer; transition: color 150ms ease-out, background-color 150ms ease-out, border-color 150ms ease-out; }
.ad-vote-choice > label:hover { background: var(--terminal-control); color: var(--text); }
.ad-vote-choice input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.ad-vote-choice > label:has(input:checked) { background: var(--terminal-raised); border-color: var(--rule-strong); color: var(--text); }
.ad-vote-choice > label[data-tone="for"]:has(input:checked) { background: rgb(var(--positive-rgb) / .12); border-color: rgb(var(--positive-rgb) / .5); color: var(--positive); }
.ad-vote-choice > label[data-tone="against"]:has(input:checked) { background: rgb(var(--danger-soft-rgb) / .09); border-color: #934653; color: var(--danger-soft); }
.ad-vote-choice > label:has(input:focus-visible) { border-color: var(--focus); }
.ad-vote-choice > label:has(input:disabled) { cursor: not-allowed; opacity: .55; }
#ad-vote > .ad-primary { align-self: stretch; min-height: 48px; font-size: .9375rem; }
.ad-lifecycle { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--terminal-rule); }
.ad-lifecycle .ad-actions { margin-top: 12px; }
.ad-lifecycle .ad-form { margin-top: 16px; }
.ad-lifecycle .ad-execute-extra { margin: 0; }
.ad-lifecycle .ad-execute-extra > summary { min-height: 36px; padding: 4px 0; font-size: .8125rem; }
.ad-lifecycle .ad-execute-extra label { margin-top: 8px; max-width: 360px; }
.ad-lifecycle .ad-execute-extra p { margin-top: 8px; }
.ad-root #ad-timelock-status { margin-top: 12px; }
#ad-proposal-detail > h3 { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--terminal-rule); }
#ad-proposal-detail > h3 + * { margin-top: 12px; }
.ad-description { white-space: pre-wrap; overflow-wrap: anywhere; max-width: 72ch; max-height: 480px; margin: 12px 0 0; overflow: auto; color: var(--text-soft); font: inherit; font-size: .875rem; line-height: 1.6; }
#ad-proposal-detail > details { margin-top: 16px; }
#ad-proposal-detail > details > summary { font-weight: 500; color: var(--text); }
.ad-break { overflow-wrap: anywhere; word-break: break-word; }
.ad-action-list { padding-left: 1.35rem; margin: 0; }
.ad-action-list li { padding: 12px 8px; border-bottom: 1px solid var(--terminal-rule); }
.ad-action-list li > strong { font-weight: 500; }
.ad-action-list p { margin: 6px 0; font-size: .8125rem; }
.ad-action-list code { font-family: var(--fontfam-term); font-size: .75rem; }
.ad-action-list details { margin-top: 4px; }
.ad-action-list .ad-actions { margin-top: 8px; }
.ad-review { margin-top: 8px; padding: 16px; border: 1px solid var(--rule-strong); border-radius: 4px; background: transparent; }
.ad-review > strong { font-size: .9375rem; font-weight: 500; }
.ad-review p { margin-top: 8px; }
.ad-submitted { overflow-wrap: anywhere; margin: 16px 0 0; max-width: none; font-size: .8125rem; line-height: 1.6; padding: 14px 16px; border: 1px solid rgb(var(--positive-rgb) / .35); border-radius: 4px; background: rgb(var(--positive-rgb) / .06); color: var(--positive); }
#ad-proposal-detail, #ad-composer { scroll-margin-top: 90px; }

/* ---------- Admin: a task beside what will happen ---------- */
.ad-admin-heading { flex-wrap: wrap; }
.ad-admin-heading h2 { font-size: 1rem; }
.ad-admin-eligibility { display: grid; justify-items: end; gap: 0; min-width: 0; color: var(--text-soft); font-size: .8125rem; line-height: 1.6; text-align: right; }
.ad-admin-eligibility > p { display: inline-flex; align-items: center; gap: 8px; margin: 0; max-width: none; color: var(--text-soft); font-size: .8125rem; }
.ad-admin-eligibility > p::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--rule-bright); }
.ad-admin-eligibility > p[data-eligible="true"]::before { background: var(--positive); }
.ad-admin-eligibility > p[data-eligible="true"] { color: var(--text); }
.ad-admin-eligibility details { position: relative; }
.ad-admin-eligibility summary { width: fit-content; min-height: 36px; padding: 4px 0; margin-left: auto; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-admin-eligibility details p { margin: 4px 0 8px; max-width: 48ch; font-size: .75rem; color: var(--text-muted); }
.ad-admin-modes { display: flex; flex-wrap: wrap; gap: 4px; margin: 4px 0 28px; padding: 0; border-bottom: 1px solid var(--terminal-rule); }
.ad-admin-modes :is(button, a) { appearance: none; position: relative; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 12px; border: 0; border-radius: 4px 4px 0 0; background: transparent; font: inherit; font-size: .8125rem; font-weight: 500; color: var(--text-soft); text-decoration: none; cursor: pointer; transition: color 150ms ease-out, background-color 150ms ease-out; }
.ad-admin-modes :is(button, a)::after { content: ''; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 2px; background: transparent; transition: background-color 160ms ease-out; }
.ad-admin-modes :is(button, a):hover { background: var(--terminal-control); color: var(--text); }
.ad-admin-modes :is(button, a):is([aria-pressed="true"], [aria-current="page"]) { color: var(--text); }
.ad-admin-modes :is(button, a):is([aria-pressed="true"], [aria-current="page"])::after { background: var(--positive); }
.ad-admin-modes :is(button, a):focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
.ad-admin-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 0; align-items: start; }
.ad-admin-work { min-width: 0; padding-right: 40px; }
.ad-admin-plan { min-width: 0; padding-left: 40px; border-left: 1px solid var(--terminal-rule); }
.ad-admin-plan h3 { margin: 0 0 18px; font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.ad-admin-plan .ad-muted { margin-top: 20px; font-size: .75rem; }
.ad-root#aera-dao-page .ad-admin-page .ad-guided-form { padding: 0; max-width: 680px; border: 0; border-radius: 0; background: transparent; }
.ad-guided-form { display: grid; gap: 20px; }
.ad-guided-intro h3, .ad-admin-advanced > h3, .sc-creation > h3 { margin: 0 0 6px; font-size: 1rem; font-weight: 500; }
.ad-guided-intro > p, .ad-admin-advanced > p { margin: 0; font-size: .8125rem; line-height: 1.6; }
.ad-guided-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; }
.ad-guided-form label { display: flex; flex-direction: row; flex-wrap: wrap; gap: 8px; align-items: baseline; font-size: .8125rem; min-width: 0; }
.ad-guided-form input, .ad-guided-form select, .ad-guided-form textarea { width: 100%; min-width: 0; box-sizing: border-box; }
.ad-guided-form input, .ad-guided-form select { min-height: 44px; }
.ad-guided-form select { font-family: inherit; }
.ad-guided-form > .ad-muted { margin: -12px 0 0; overflow-wrap: anywhere; }
.ad-guided-source { display: flex; flex-wrap: wrap; gap: 8px 16px; color: var(--text-muted); font-size: .75rem; }
.ad-guided-footer { display: flex; align-items: center; gap: 24px; padding-top: 20px; border-top: 1px solid var(--terminal-rule); }
.ad-guided-footer p { margin: 0; max-width: 48ch; font-size: .75rem; color: var(--text-muted); line-height: 1.6; }
.ad-guided-footer .btn { flex-shrink: 0; min-height: 44px; margin-left: auto; }
.ad-guided-form [data-status] { margin: 0; }
.ad-admin-advanced { max-width: 900px; }
.ad-admin-advanced > p { max-width: 75ch; }
.ad-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; max-width: 640px; margin-top: 20px; }
.ad-grid > .ad-card, .ad-grid > .ad-form { margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.ad-grid > details.ad-card > summary { min-height: 44px; font-weight: 500; color: var(--text); }
#ad-arguments { display: grid; gap: 14px; }
#ad-arguments:empty { display: none; }
#ad-draft-actions { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--terminal-rule); }
#ad-create { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--terminal-rule); }
#ad-create .ad-actions { margin: 4px 0; }

/* Series Pool creation inside Admin. */
.sc-creation { max-width: 800px; min-width: 0; }
.sc-creation .sc-intro { margin: 0 0 20px; }
.sc-modes { margin-bottom: 20px; }
.sc-creation .sc-modes .btn { min-height: 38px; }
.sc-form { display: grid; gap: 20px; }
.sc-form > p { margin: 0; font-size: .8125rem; }
.sc-form > label { max-width: 360px; }
.sc-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.sc-form legend { margin: 0 0 16px; padding: 0; color: var(--text); font-size: .875rem; font-weight: 500; }
.sc-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 20px; }
.sc-form label { display: flex; flex-direction: column; gap: 8px; min-width: 0; font-size: .8125rem; color: var(--text-soft); }
.sc-form input, .sc-form select { width: 100%; min-width: 0; min-height: 44px; }
.sc-form select, .sc-form input[name="noteName"], .sc-form input[name="noteSymbol"] { font-family: inherit; }
.ad-root .sc-settings { margin: 0; padding: 0; border-top: 1px solid var(--terminal-rule); }
.sc-settings > summary { display: flex; align-items: center; min-height: 48px; cursor: pointer; font-size: .875rem; font-weight: 500; color: var(--text); gap: 12px; }
.sc-settings > summary::after { content: ''; width: 6px; height: 6px; margin-left: auto; margin-right: 4px; flex: 0 0 auto; border-right: 1px solid var(--text-muted); border-bottom: 1px solid var(--text-muted); transform: rotate(45deg); }
.sc-settings[open] > summary::after { transform: rotate(225deg); }
.sc-settings > p { margin: 0 0 16px; font-size: .8125rem; }
.sc-settings > fieldset + fieldset { margin-top: 24px; }
.sc-readiness { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.sc-readiness-item { padding: 16px 0; border-block: 1px solid var(--terminal-rule); min-width: 0; }
.sc-readiness-item h4 { margin: 0 0 8px; font-size: .875rem; }
.sc-readiness-item p { margin: 0; font-size: .8125rem; }
.sc-readiness-item .sc-ready-label { color: var(--text); }
.sc-readiness-item dl { margin: 16px 0 0; display: grid; gap: 12px; }
.sc-readiness-item dt, .sc-factory dt { font: var(--colhead); letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); }
.sc-readiness-item dd, .sc-factory dd { margin: 4px 0 0; color: var(--text-soft); font-size: .75rem; line-height: 1.6; font-family: var(--fontfam-term); overflow-wrap: anywhere; }
.sc-defaults { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.sc-defaults span { color: var(--text-muted); font-size: .75rem; }
.sc-footer { display: flex; padding-top: 16px; border-top: 1px solid var(--terminal-rule); }
.sc-footer .btn { min-height: 44px; }
.ad-root .sc-factory { margin-top: 24px; }
.sc-factory dl { display: flex; flex-wrap: wrap; gap: 24px; margin: 0; }
.sc-creation [data-error="true"], .sc-creation .sc-error { color: var(--danger); }
.sc-creation [role="status"]:empty, .sc-help:empty { display: none; }
.sc-pagination { display: flex; align-items: center; gap: 16px; margin-top: 16px; font-size: .8125rem; }

/* ---------- Responsive ---------- */
@container (max-width: 1100px) {
  .ad-staking-page { grid-template-columns: minmax(0, 1fr) 340px; }
  .ad-proposals-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); }
  .ad-proposals-list { padding-right: 28px; }
  .ad-reading { padding-left: 28px; }
}
@container (max-width: 960px) {
  .ad-row { grid-template-columns: minmax(150px, 200px) minmax(0, 1fr) 28px; grid-template-areas: "label figure end" "label meter end"; row-gap: 12px; min-height: 0; padding-block: 20px; }
  .ad-row > .ad-figure { font-size: 2.5rem; }
  .ad-staking-page { grid-template-columns: minmax(0, 1fr); grid-template-areas: "lead" "ticket" "more"; }
  .ad-staking-position { padding-right: 0; }
  .ad-root#aera-dao-page .ad-staking-page .ad-staking-manage { margin-top: 32px; padding: 28px 0 32px; border-left: 0; border-block: 1px solid var(--terminal-rule); }
  .ad-staking-more .ad-staking-rewards { margin-top: 32px; }
  .ad-proposals-layout { grid-template-columns: minmax(0, 1fr); }
  .ad-proposals-list { padding-right: 0; }
  .ad-reading { margin-top: 32px; padding: 24px 0 0; border-left: 0; border-top: 1px solid var(--terminal-rule); }
  .ad-reading:has(#ad-proposal-detail[hidden]) { display: none; }
  .ad-admin-layout { grid-template-columns: minmax(0, 1fr); }
  .ad-admin-work { padding-right: 0; }
  .ad-admin-plan { margin-top: 32px; padding: 24px 0 0; border-left: 0; border-top: 1px solid var(--terminal-rule); max-width: 680px; }
}
@container (max-width: 680px) {
  .ad-dao-columns { grid-template-columns: minmax(0, 1fr); }
  .ad-root#aera-dao-page .ad-dao-columns > section:nth-child(odd) { padding-right: 0; }
  .ad-root#aera-dao-page .ad-dao-columns > section:nth-child(even) { margin-top: 12px; padding-left: 0; border-left: 0; }
  .ad-reserves-layout { grid-template-columns: minmax(0, 1fr); }
  .ad-root#aera-dao-page .ad-holdings { padding-right: 0; }
  .ad-root#aera-dao-page .ad-insurance-section { margin-top: 32px; padding: 24px 0 0; border-left: 0; border-top: 1px solid var(--terminal-rule); }
  .ac-evidence, .ac-observations { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .ad-row { grid-template-columns: minmax(0, 1fr) 24px; grid-template-areas: "label end" "figure end" "meter end"; row-gap: 10px; }
  .ad-row > .ad-figure { font-size: 2.25rem; }
  .ad-tally-figures { gap: 12px; }
  .ad-tally-figures strong { font-size: 1.5rem; }
  .ad-lamps > li { padding-right: 8px; }
  .ad-stage { font-size: .75rem; }
  .ad-segment > span { font-size: .6875rem; }
  .ad-guided-fields { grid-template-columns: minmax(0, 1fr); }
  .ad-guided-footer { align-items: stretch; flex-direction: column; gap: 16px; }
  .ad-guided-footer .btn { margin-left: 0; }
  .ad-admin-heading { align-items: flex-start; }
  .ad-admin-eligibility { justify-items: start; text-align: left; }
  .ad-admin-eligibility summary { margin-left: 0; }
  .sc-fields, .sc-readiness { grid-template-columns: minmax(0, 1fr); }
  .sc-readiness { gap: 0; }
  .sc-readiness-item + .sc-readiness-item { border-top: 0; }
  .sc-footer .btn { width: 100%; }
}
@container (max-width: 540px) {
  .ad-reward-row { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "name button" "balance button"; gap: 6px 12px; }
  .ad-reward-row h3 { grid-area: name; }
  .ad-reward-balance { grid-area: balance; }
  .ad-reward-row .btn { grid-area: button; align-self: center; padding-inline: 12px; }
  .ad-stake-summary { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .ad-root .ad-stake-summary dd, .ad-root .ad-stake-summary .ad-stake-owned dd { font-size: 2.25rem; }
  .ad-grant-allocation { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .ad-grant-allocation > div + div { border-top: 0; }
  .ad-lamps { flex-direction: column; }
  .ad-lamps > li, .ad-lamps > li:last-child { flex: 0 0 auto; padding: 0 0 18px 24px; }
  .ad-lamps > li:last-child { padding-bottom: 0; }
  .ad-lamps > li::before { left: 4px; right: auto; top: 6px; bottom: -6px; width: 1px; height: auto; }
  .ad-lamps > li:last-child::before { display: none; }
  .ad-lamps .ad-lamp { top: 4px; }
  .ad-stage, .ad-stage-note { white-space: normal; }
  .ad-segment { margin-top: 6px; }
  .ad-proposal-ledger > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .ac-audit .ac-contract > summary { grid-template-columns: minmax(0, 1fr); }
  .ac-contract > summary > .ac-badge { grid-column: 1; grid-row: 3; justify-self: start; }
  .ac-row-body { padding-left: 0; }
  .ad-head-value { font-size: 2rem; }
  .ad-root .ad-proposal-row { padding-inline: 8px; }
  .ad-vote-choice > label { padding: 0 4px; font-size: .75rem; }
  .ad-holding-lead .ad-holding-amount { font-size: 2rem; }
  .ad-coverage-available > strong { font-size: 2rem; }
}
@media (max-width: 900px) {
  .ac-audit .ac-contract > summary { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; }
  .ac-contract > summary > .ac-address { grid-row: 2; grid-column: 1 / -1; }
  .ac-contract > summary > .ac-badge { grid-column: 2; grid-row: 1; }
}
@media (max-width: 760px) {
  .ad-head-figure { justify-items: start; text-align: left; width: 100%; }
  .ad-head-value { max-width: 100%; }
  .ad-root .ad-data-strip { justify-content: flex-start; }
  .ad-root .ad-data-details > summary { margin-left: -10px; }
  .ad-data-popover { right: auto; left: 0; }
  .ad-root .ad-main { padding-top: 20px; padding-bottom: 48px; }
  .ad-dao-overview { margin-top: -20px; }
  .ad-form input, .ad-form select, .ad-form textarea { font-size: 16px; }
  .ad-section-heading { flex-wrap: wrap; align-items: flex-start; }
  .ad-pagination { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  .ad-meter > i, .ad-tally-track > i, .ad-tally-quorum, .ad-row::before, .ad-row::after, .ad-root .ad-proposal-row, .ad-vote-choice > label, .ad-admin-modes :is(button, a) { transition: none; }
  .ad-lamps-lit > li .ad-lamp, .ad-lamps-lit > li::before, .ad-data-strip[data-state="paused"] #ad-status::before, #ad-reward-countdown::before, .ad-root .ad-history-status[data-incomplete="true"]::before { animation: none; }
}
