/* css/get-agent.css — get-agent.html's own rules (buddy.html's until 2026-11-02). They were an inline <style>
   until 2026-10-22; the pages' CSP refuses inline style
   (style-src 'self', deploy/nginx/elopros.com.conf). */
/* the buddy page's own shapes. Every colour is a store token; the plate,
   level and facts are the terminal's (terminal.html), copied, not invented. */
.buddies .bud-hero { display: grid; gap: 18px; align-items: center; margin-top: 18px; }
@media (min-width: 760px) { .buddies .bud-hero { grid-template-columns: 200px minmax(0, 1fr); gap: 28px; } }
.buddies .bud-hero-art img, .buddies .bud-preview img, .buddies .bud-face {
  display: block; image-rendering: pixelated; border: 1px solid var(--store-line-2);
  border-radius: var(--r); background: var(--store-pit); box-shadow: var(--bevel), 0 6px 18px rgba(0, 0, 0, .45);
}
.buddies .bud-hero-art img { width: 120px; height: 120px; }
@media (min-width: 760px) { .buddies .bud-hero-art img { width: 200px; height: 200px; } }
.buddies .bud-hero h1 { font-family: var(--sg); font-weight: 700; font-size: clamp(2rem, 4.2vw, 3.2rem); line-height: 1.02; letter-spacing: -.045em; color: #fff; margin: 6px 0 0; }
.buddies .bud-pool { margin-top: 14px; max-width: 480px; }
/* buddy.js draws the pool line once /api/buddy answers, and takes `data-wait`
   off as it does. With script on the line holds its room from the first paint,
   so the hero does not grow under the reader (a 0.19 layout shift on the desk,
   measured 2026-10-25); with script off it stays out, as `hidden` kept it. */
.buddies .bud-pool[data-wait] { display: none; }
@media (scripting: enabled) { .buddies .bud-pool[data-wait] { display: block; visibility: hidden; } }
.buddies .bud-pool-line { font-size: .9rem; color: var(--store-muted); margin-bottom: 6px; }
.buddies .bud-pool-line b { font-family: var(--mono); color: var(--g-live); font-size: 1.05rem; }
.buddies .bud-cta { margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; }
.buddies .bud-cta .btn { min-height: 44px; }
.buddies .say { min-height: 1.2em; }

/* the level meter (terminal.html §the level meter) */
.buddies .level { position: relative; height: 14px; border: 1px solid var(--store-line);
  border-radius: var(--r); background: var(--store-pit); overflow: hidden; }
.buddies .level i { position: absolute; inset: 0 auto 0 0; width: 0;
  background: linear-gradient(90deg, var(--g-core), var(--g-live)); transition: width .4s ease; }
.buddies .level.low i { background: linear-gradient(90deg, #8a6d14, var(--store-gold)); }

/* tabs */
.buddies .bud-tabs { display: flex; gap: 2px; margin: 26px 0 0; border-bottom: 1px solid var(--store-line);
  position: sticky; top: 0; z-index: 2; background: var(--store-bg); }
.buddies .bud-tabs a { flex: 1 1 0; text-align: center; padding: 13px 8px 11px; min-height: 44px;
  font-family: var(--sg); font-weight: 700; font-size: .9rem; letter-spacing: 0; text-transform: capitalize;
  color: #9ca99a; border-bottom: 2px solid transparent; text-decoration: none; }
@media (min-width: 760px) { .buddies .bud-tabs a { flex: 0 0 auto; padding: 13px 22px 11px; } }
.buddies .bud-tabs a[aria-current="page"] { color: var(--store-ink); border-bottom-color: var(--g-live); }
.buddies .bud-pane { padding-top: 16px; }
.buddies .bud-pane, .buddies .bud-make { scroll-margin-top: 56px; }
.buddies .bud-pane[hidden] { display: none; }

/* cards */
.buddies .bud-cards { display: grid; gap: 12px; align-items: start; }
@media (min-width: 900px) { .buddies .bud-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.buddies .bud-card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 14px;
  background: var(--store-panel); border: 1px solid var(--store-line); border-left: 3px solid var(--store-line-2);
  border-radius: var(--r); padding: 14px; box-shadow: var(--bevel); }
@media (min-width: 520px) { .buddies .bud-card { grid-template-columns: 96px minmax(0, 1fr); } }
.buddies .bud-card[data-tone="live"] { border-left-color: var(--g-live); }
.buddies .bud-card[data-tone="gold"] { border-left-color: var(--store-gold); }
.buddies .bud-card[data-tone="red"] { border-left-color: var(--breach-red); }
.buddies .bud-face { width: 72px; height: 72px; }
.buddies .bud-face-link { display: block; align-self: start; }
@media (max-width: 519.98px) {
  .buddies .bud-card { grid-template-columns: 56px minmax(0, 1fr); column-gap: 12px; row-gap: 0; }
  .buddies .bud-face { width: 56px; height: 56px; grid-row: 1 / span 2; }
  .buddies .bud-face-link { grid-row: 1 / span 2; }
  .buddies .bud-main { display: contents; }
  .buddies .bud-main > * { grid-column: 1 / -1; }
  .buddies .bud-main > .bud-top, .buddies .bud-main > .bud-sub { grid-column: 2; }
}
@media (min-width: 520px) { .buddies .bud-face { width: 96px; height: 96px; } }
.buddies .bud-top { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.buddies .bud-card h3 { font-family: var(--sg); font-size: 1.12rem; font-weight: 700; margin: 0; overflow-wrap: anywhere; }
.buddies .bud-card h3 .dim { font-weight: 400; font-size: .85rem; }
.buddies .bud-sub { color: var(--store-muted); font-size: .84rem; margin: 3px 0 0; }
.buddies .chip.gold { color: var(--store-gold); border-color: rgba(201, 162, 39, .5); background: rgba(201, 162, 39, .08); }
.buddies .chip.red { color: #ff8f6b; border-color: rgba(255, 59, 48, .45); background: rgba(255, 59, 48, .07); }
.buddies .bud-now { margin: 10px 0 0; padding: 9px 11px; border-radius: var(--r); background: var(--store-pit);
  border: 1px solid var(--store-line); font-size: .9rem; line-height: 1.45; }
.buddies .bud-now b { color: var(--store-ink); }
.buddies .bud-now .why { color: var(--store-muted); }
.buddies .bud-said { list-style: none; margin: 8px 0 0; padding: 0; font-size: .86rem; }
.buddies .bud-said li { padding: 3px 0; color: var(--store-ink); overflow-wrap: anywhere; }
.buddies .bud-said li span { font-family: var(--mono); font-size: .74rem; color: var(--store-dim); margin-right: 6px; text-transform: uppercase; }
.buddies .bud-acts { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.buddies .bud-acts .btn { min-height: 44px; }
.buddies .bud-pot { margin-top: 10px; }
.buddies .bud-pot-line { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; font-size: .86rem; color: var(--store-muted); margin-bottom: 5px; }
.buddies .bud-pot-line b { font-family: var(--mono); color: var(--store-ink); }
.buddies .bud-fund { display: flex; gap: 8px; margin-top: 4px; flex-wrap: wrap; }
.buddies .bud-fund input { flex: 1 1 140px; width: auto; min-width: 0; }
.buddies .bud-empty { display: grid; gap: 8px; justify-items: start; }
.buddies .bud-empty p { margin: 0; }
.buddies .bud-more { margin-top: 12px; }

/* the maker */
.buddies .bud-make { margin-top: 12px; }
.buddies .bud-make-h { margin-top: 0; }
.buddies .bud-kinds { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.buddies .bud-kind, .buddies .bud-char, .buddies .bud-brain { text-align: left; padding: 11px 12px; min-height: 44px; cursor: pointer;
  background: var(--store-pit); color: var(--store-ink); border: 1px solid var(--store-line);
  border-radius: var(--r); font: inherit; }
.buddies .bud-kind b, .buddies .bud-char b, .buddies .bud-brain b { display: block; font-family: var(--sg); font-size: .92rem; }
.buddies .bud-kind span, .buddies .bud-char span, .buddies .bud-brain span { display: block; color: var(--store-muted); font-size: .84rem; margin-top: 2px; }
.buddies .bud-kind[aria-checked="true"], .buddies .bud-char[aria-checked="true"], .buddies .bud-brain[aria-checked="true"] {
  border-color: var(--g-live); background: var(--g-wash); box-shadow: 0 0 0 1px rgba(0, 200, 5, .25); }
.buddies .bud-kind[hidden] { display: none; }
.buddies .bud-check { display: flex; gap: 10px; align-items: flex-start; margin-top: 14px; min-height: 44px; cursor: pointer;
  font-size: .9rem; line-height: 1.45; }
.buddies .bud-check input { width: 22px; height: 22px; margin: 1px 0 0; flex: 0 0 auto; accent-color: var(--g-live); }
.buddies .bud-check span { color: var(--store-muted); }
.buddies .bud-check b { color: var(--store-ink); }

/* an own brain's plug, a day's recap, highlight clips */
.buddies .bud-plug { margin-top: 12px; padding: 12px; border: 1px dashed var(--store-line-2); border-radius: var(--r);
  background: var(--store-pit); }
.buddies .bud-plug .bud-label { margin-top: 0; }
.buddies .bud-plug p { margin: 6px 0 0; font-size: .88rem; }
.buddies .bud-cmd { margin: 8px 0 0; padding: 10px 12px; border: 1px solid var(--store-line); border-radius: var(--r-sm);
  background: var(--store-bg); font-family: var(--mono); font-size: .8rem; line-height: 1.5; color: var(--store-ink);
  white-space: pre; overflow-x: auto; user-select: all; }
.buddies .bud-plug .bud-acts { margin-top: 8px; }
.buddies .bud-plug details { margin-top: 8px; }
.buddies .bud-plug summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; color: var(--store-muted); font-size: .88rem; }
.buddies .bud-plug summary::before, .buddies .bud-fold summary::before { content: "▸"; margin-right: 8px; color: var(--g-live); }
.buddies .bud-plug details[open] > summary::before, .buddies .bud-fold[open] > summary::before { content: "▾"; }
.buddies .bud-recap { margin-top: 12px; padding: 10px 12px; border-left: 2px solid var(--g-live);
  background: var(--g-wash); border-radius: 0 var(--r) var(--r) 0; }
.buddies .bud-recap .bud-label { margin: 0 0 4px; }
.buddies .bud-recap p { margin: 0; font-size: .92rem; line-height: 1.5; }
.buddies .bud-recap ul { margin: 6px 0 0; padding-left: 18px; font-size: .88rem; color: var(--store-muted); }
.buddies .bud-recap li { padding: 2px 0; }
.buddies .bud-clips { display: flex; gap: 10px; overflow-x: auto; margin-top: 12px; padding-bottom: 4px;
  scroll-snap-type: x mandatory; }
.buddies .bud-clips.more { -webkit-mask-image: linear-gradient(90deg, #000 82%, transparent);
  mask-image: linear-gradient(90deg, #000 82%, transparent); }
.buddies .bud-clips figure { flex: 0 0 150px; margin: 0; scroll-snap-align: start; }
.buddies .bud-clips video { display: block; width: 150px; height: 267px; border-radius: var(--r);
  border: 1px solid var(--store-line); background: #000; object-fit: cover; }
.buddies .bud-clips figcaption { font-size: .84rem; color: var(--store-muted); margin-top: 4px; line-height: 1.35; }
.buddies .bud-maker { display: grid; gap: 16px; margin-top: 16px; }
@media (min-width: 760px) { .buddies .bud-maker { grid-template-columns: 210px minmax(0, 1fr); } }
.buddies .bud-preview { display: grid; gap: 10px; justify-items: center; align-content: start; }
.buddies .bud-preview img { width: 168px; height: 168px; }
@media (min-width: 760px) { .buddies .bud-preview img { width: 192px; height: 192px; } }
.buddies .bud-label { display: block; font-family: var(--sg); font-weight: 600; font-size: .82rem;
  letter-spacing: .13em; text-transform: uppercase; color: var(--store-muted); margin: 12px 0 6px; }
.buddies .bud-fields .bud-label:first-child { margin-top: 0; }
.buddies .bud-row { display: flex; gap: 8px; align-items: stretch; flex-wrap: wrap; }
.buddies input[type="text"], .buddies input[type="number"], .buddies textarea {
  width: 100%; min-height: 44px; font-family: var(--mono); font-size: 16px; color: var(--store-ink);
  background: var(--store-pit); border: 1px solid var(--store-line); border-radius: var(--r-sm); padding: 9px 12px; }
.buddies .bud-row input { flex: 1 1 180px; width: auto; min-width: 0; }
.buddies textarea { resize: vertical; font-family: var(--body); line-height: 1.4; }
.buddies input:focus, .buddies textarea:focus { outline: 2px solid var(--g-live); outline-offset: 1px; }
.buddies .bud-picks { display: flex; gap: 6px; flex-wrap: wrap; }
.buddies .bud-pick { min-height: 44px; min-width: 44px; padding: 0 12px; cursor: pointer;
  background: var(--store-pit); color: var(--store-ink); border: 1px solid var(--store-line);
  border-radius: var(--r); font-family: var(--sg); font-size: .84rem; display: inline-flex; align-items: center; gap: 7px; }
.buddies .bud-pick i { width: 14px; height: 14px; border-radius: 2px; border: 1px solid rgba(0, 0, 0, .5); display: inline-block; }
.buddies .bud-pick[aria-checked="true"] { border-color: var(--g-live); background: var(--g-wash); }
.buddies .bud-chars { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
@media (min-width: 760px) { .buddies .bud-chars { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
/* personality: "plain" takes a row of its own, so the six presets fill 2 or 3 columns */
.buddies .bud-char[data-s="plain"] { grid-column: 1 / -1; }
.buddies .bud-hint { color: var(--store-dim); font-size: .82rem; margin: 6px 0 0; }
.buddies .bud-make-acts { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.buddies .bud-make-acts .btn { min-height: 48px; flex: 1 1 200px; }

/* credit */
.buddies .plate-state { display: grid; gap: 12px; border: 1px solid var(--store-line);
  border-left: 3px solid var(--store-muted); border-radius: var(--r); background: var(--store-panel); padding: 13px 15px; }
.buddies .plate-state.is-live { border-left-color: var(--g-live); }
.buddies .plate-state .st { font-family: var(--sg); font-weight: 700; font-size: .82rem; letter-spacing: .16em;
  text-transform: uppercase; color: var(--store-ink); }
.buddies .plate-state .why { font-size: .86rem; color: var(--store-muted); line-height: 1.5; margin-top: 4px; }
.buddies .facts { display: grid; gap: 10px 20px; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  border-top: 1px solid var(--store-line); padding-top: 11px; }
.buddies .facts b { display: block; font-family: var(--mono); font-size: 1.05rem; font-variant-numeric: tabular-nums; color: var(--store-ink); }
.buddies .facts span { display: block; font-family: var(--sg); font-weight: 600; font-size: .84rem; letter-spacing: .08em;
  text-transform: uppercase; color: var(--store-muted); margin-top: 2px; }
.buddies .bud-pane > .panel { margin-top: 12px; }
.buddies .panel h2 { margin-top: 0; }
.buddies .bud-trial { border-color: rgba(0, 200, 5, .45); background: var(--g-wash); }
.buddies .bud-trial p { margin: 0 0 10px; }
.buddies .bud-presets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.buddies .bud-preset { min-height: 48px; border-radius: var(--r); border: 1px solid var(--store-line);
  background: var(--store-pit); color: var(--store-ink); font-family: var(--mono); font-size: 1rem; cursor: pointer; }
.buddies .bud-preset[aria-checked="true"] { border-color: var(--g-live); background: var(--g-wash); }
.buddies .bud-sum { margin: 14px 0 0; display: grid; gap: 4px; }
.buddies .bud-sum div { display: flex; justify-content: space-between; gap: 12px; font-size: .9rem; color: var(--store-muted); }
.buddies .bud-sum dd { margin: 0; font-family: var(--mono); color: var(--store-ink); }
.buddies .bud-sum-total { border-top: 1px solid var(--store-line); padding-top: 6px; margin-top: 2px; }
.buddies .bud-sum-total dt, .buddies .bud-sum-total dd { color: var(--store-ink); font-weight: 700; }
/* the risk box: css/money.css's .warnbox, the same box every money surface
   puts above its button (this page is a store page and does not load that
   sheet, whose kicker, label and section rules are the trade area's) */
.buddies .warnbox { border: 1px solid var(--breach-red); border-radius: var(--r); padding: 14px 16px;
  font-size: .86rem; line-height: 1.45; color: var(--store-ink); margin: 16px 0 12px;
  background: repeating-linear-gradient(-45deg, transparent 0 12px, rgba(255, 59, 48, .07) 12px 24px); }
.buddies .warnbox a.more { display: flex; align-items: center; min-height: 44px; margin-top: 2px; }
.buddies .bud-wide { width: 100%; min-height: 48px; }
.buddies .bud-fold { margin-top: 12px; }
.buddies .bud-fold summary { cursor: pointer; color: var(--store-muted); font-size: .9rem; min-height: 44px;
  display: flex; align-items: center; }

.buddies .bud-addr { white-space: normal; overflow-wrap: anywhere; }
.buddies .bud-log { list-style: none; margin: 8px 0 0; padding: 0; }
.buddies .bud-log li { display: flex; justify-content: space-between; gap: 10px; padding: 9px 0;
  border-top: 1px solid var(--store-line); font-size: .88rem; flex-wrap: wrap; }
.buddies .bud-log li span:last-child { font-family: var(--mono); color: var(--store-ink); }
.buddies .bud-log a { display: inline-flex; align-items: center; min-height: 44px; min-width: 44px; padding: 0 4px; }
.buddies .bud-log .dim { color: var(--store-dim); }
.buddies .bud-furnace .facts { border-top: 0; padding-top: 4px; }
.buddies .facts[hidden], .buddies .level[hidden], .buddies .bud-hint[hidden] { display: none; }
.buddies .bud-steps { margin: 8px 0 0; padding-left: 20px; display: grid; gap: 8px; max-width: 760px; color: var(--store-muted); }
.buddies .bud-steps b { color: var(--store-ink); }
.buddies .dim { color: var(--store-muted); }
.buddies .mono { font-family: var(--mono); }
/* Doctor Wood, on the community pane (moved here from agents.html 2026-11-02) */
.buddies .bud-doctor { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.buddies .bud-doctor img {
  width: 112px; height: 112px; flex: 0 0 auto; image-rendering: pixelated;
  border: 1px solid var(--store-line-2); border-radius: var(--r);
}
.buddies .bud-doctor > div { flex: 1 1 260px; min-width: 0; }
.buddies .bud-doctor h2 { font-size: 1rem; margin: 0 0 4px; }
.buddies .bud-doctor p { margin: 0; color: var(--store-muted); max-width: 60em; }
.buddies .bud-doctor + .bud-cards { margin-top: 12px; }
