/* Bilathera body map. Scoped to .bmp-*; colours read from the page's tokens with brand fallbacks. */
.bmp-app{--bmp-accent:var(--accent,#e26712);--bmp-accent-ink:var(--accent-ink,#b24f0a);--bmp-fg:var(--fg,#1d1d1f);--bmp-fg2:var(--fg2,#5b5b5b);--bmp-card:var(--card,#fff);--bmp-line:var(--line,#dfe3e0);--bmp-stage:var(--stage,#e9ecea);--bmp-stage2:var(--stage2,#dde2df);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:20px;align-items:start;color:var(--bmp-fg)}
@media (max-width:860px){.bmp-app{grid-template-columns:1fr}}
.bmp-stage{position:relative;border-radius:12px;overflow:hidden;background:radial-gradient(120% 90% at 50% 28%,var(--bmp-stage),var(--bmp-stage2));height:clamp(420px,74vh,780px);touch-action:none;user-select:none;-webkit-user-select:none}
@media (max-width:860px){.bmp-stage{height:min(64vh,560px)}}
.bmp-stage canvas{display:block;width:100%;height:100%;outline:none;cursor:grab}
.bmp-msg{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--bmp-fg2);font:500 .9rem ui-monospace,Menlo,monospace}
.bmp-views{position:absolute;left:12px;top:12px;right:12px;display:flex;flex-wrap:wrap;gap:6px}
.bmp-views button,.bmp-chips button{font:600 .85rem/1.2 inherit;font-family:inherit;color:var(--bmp-fg);background:var(--bmp-card);border:1px solid var(--bmp-line);border-radius:999px;padding:8px 13px;cursor:pointer;min-height:36px}
.bmp-views .bmp-reset{margin-left:auto}
.bmp-views button[aria-pressed="true"],.bmp-chips button[aria-pressed="true"]{background:var(--bmp-fg);color:var(--bmp-card);border-color:var(--bmp-fg)}
.bmp-app button:focus-visible,.bmp-app a:focus-visible{outline:2px solid var(--bmp-accent);outline-offset:2px}
.bmp-hint{position:absolute;left:12px;bottom:10px;right:12px;margin:0;font:500 .72rem ui-monospace,Menlo,monospace;color:var(--bmp-fg2);letter-spacing:.03em;pointer-events:none}
.bmp-tip{position:absolute;pointer-events:none;background:var(--bmp-fg);color:var(--bmp-card);font:600 .8rem/1.2 inherit;font-family:inherit;padding:5px 9px;border-radius:6px;transform:translate(-50%,-150%);white-space:nowrap;z-index:2}
.bmp-panel{background:var(--bmp-card);border:1px solid var(--bmp-line);border-radius:12px;padding:18px;display:grid;gap:12px;min-width:0}
.bmp-count{margin:0;font:500 .75rem ui-monospace,Menlo,monospace;color:var(--bmp-fg2);letter-spacing:.06em;text-transform:uppercase}
.bmp-title{margin:0;font-size:1.4rem;line-height:1.15;text-wrap:balance}
.bmp-text{margin:0;color:var(--bmp-fg2);font-size:.95rem}
.bmp-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;max-height:260px;overflow:auto}
.bmp-list button{font:500 .84rem/1.25 inherit;font-family:inherit;text-align:left;color:var(--bmp-fg);background:transparent;border:1px solid var(--bmp-line);border-radius:6px;padding:6px 9px;cursor:pointer}
.bmp-list button[aria-pressed="true"]{background:var(--bmp-accent);border-color:var(--bmp-accent);color:#fff}
.bmp-note{margin:0;font-size:.92rem;color:var(--bmp-fg2);border-left:3px solid var(--bmp-accent);padding:2px 0 2px 10px}
.bmp-note b{color:var(--bmp-fg)}
.bmp-cta{justify-self:start;display:inline-block;background:var(--bmp-accent);color:#fff;text-decoration:none;font-weight:600;border-radius:6px;padding:10px 15px}
.bmp-cta.alt{background:transparent;color:var(--bmp-accent-ink);border:1.5px solid var(--bmp-accent)}
.bmp-cta.soon{background:transparent;color:var(--bmp-fg2);border:1.5px dashed var(--bmp-line);cursor:default;pointer-events:none;opacity:.85}
.bmp-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.8rem;color:var(--bmp-fg2)}
.bmp-legend i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.bmp-legend .k-group{background:#f2a066}.bmp-legend .k-pick{background:#e26712}.bmp-legend .k-deep{background:rgba(226,103,18,.35);box-shadow:inset 0 0 0 1.5px #e26712}
.bmp-chips{display:flex;flex-wrap:wrap;gap:6px;border-top:1px solid var(--bmp-line);padding-top:12px}
.bmp-app [hidden]{display:none!important}
.bmp-selbar{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;gap:10px;background:var(--bmp-card);border:1px solid var(--bmp-line);border-radius:10px;padding:8px 8px 8px 12px;font-size:.9rem;font-weight:600;box-shadow:0 4px 18px rgba(0,0,0,.08)}
.bmp-selname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bmp-selbtn{flex:none;font:600 .8rem/1.2 inherit;font-family:inherit;color:#fff;background:var(--bmp-accent);border:0;border-radius:6px;padding:8px 11px;cursor:pointer}
@media (min-width:861px){.bmp-selbtn{display:none}}
.bmp-chips.is-picked{flex-direction:row;align-items:center}
.bmp-chips.is-picked button[data-id]{flex:1 1 auto;text-align:left}
.bmp-chips .bmp-x{flex:none;width:36px;min-height:36px;padding:0;font-size:1.25rem;line-height:1;border-radius:50%;background:var(--bmp-card);color:var(--bmp-fg);border:1px solid var(--bmp-line)}
.bmp-chips .bmp-x:hover{border-color:var(--bmp-fg)}
.bmp-chips .bmp-list,.bmp-chips .bmp-note{flex:1 0 100%}
.bmp-chips .bmp-list{padding-left:12px;border-left:2px solid var(--bmp-line);margin-left:8px}
