/* the business switcher sits where the company card sits */
.company.switch { display: block; width: calc(100% - 8px); text-align: left; position: relative; padding-right: 30px; cursor: pointer; font: inherit; color: inherit; border: 0; }
.company.switch .chev { position: absolute; right: 12px; top: 50%; width: 7px; height: 7px; margin-top: -6px; border-right: 1.5px solid var(--ink-2); border-bottom: 1.5px solid var(--ink-2); transform: rotate(45deg); }
.company.switch:hover { background: var(--hover, var(--inset)); }
.biz-menu { position: fixed; z-index: 95; width: min(300px, calc(100vw - 24px)); background: var(--surface); border-radius: var(--r-window, 14px); box-shadow: var(--shadow-lg), var(--ring); padding: 6px; display: none; }
.biz-menu.on { display: block; }
.biz-menu button { display: block; width: 100%; text-align: left; padding: 9px 10px; border-radius: 8px; font: inherit; color: inherit; }
.biz-menu button:hover, .biz-menu button.cur { background: var(--inset); }
.biz-menu strong { display: block; font-size: 12.5px; font-weight: 600; }
.biz-menu span { display: block; font-size: 10.5px; color: var(--ink-2); margin-top: 1px; }
.tbl tr.demo-hide { display: none; }
.ask .ask-short { display: none; }
.stat .ask .ask-short, .list .ask .ask-short { display: inline; }
@media (max-width: 860px) { .ask .ask-short { display: inline; } }

#main pre, #main code, #main .mono { white-space: pre-wrap; overflow-wrap: anywhere; }
#main { overflow-x: hidden; }

/* the switcher: a stacked-card edge, a short note, one gentle outline pulse on the first visit */
.company.switch { margin-bottom: 18px; box-shadow: var(--ring), 0 4px 0 -1px var(--surface), 0 4px 0 0 var(--line-strong), 0 8px 0 -2px var(--surface), 0 8px 0 -1px var(--line-strong); }
.biz-hint { display: block; margin-top: 6px; font-style: normal; font-size: 10.5px; font-weight: 600; color: var(--accent-ink); }
.biz-hint::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 8px; border: 1.5px solid currentColor; border-radius: 2px; box-shadow: 3px -3px 0 -1px var(--surface), 3px -3px 0 0 currentColor; vertical-align: -1px; }
.company.switch.nudge::after, .biz-chip.nudge::after { content: ''; position: absolute; inset: -4px; border: 2px solid var(--accent); border-radius: 14px; opacity: 0; pointer-events: none; animation: bizpulse 1.5s ease-in-out 3; }
.biz-chip.nudge::after { border-radius: 999px; inset: -3px; }
@keyframes bizpulse { 0% { opacity: 0; transform: scale(.98); } 45% { opacity: .95; transform: scale(1); } 100% { opacity: 0; transform: scale(1.02); } }
.biz-chip { display: none; position: relative; margin-left: 6px; padding: 5px 10px; border-radius: 999px; background: var(--accent-tint); color: var(--accent-ink); font: 600 11px var(--font-mono, monospace); white-space: nowrap; align-items: center; gap: 6px; }
.biz-chip::after { content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translate(-1px, -1px); }
.biz-chip.nudge::after { position: absolute; transform: none; width: auto; height: auto; border-right-width: 2px; border-bottom-width: 2px; }
@media (max-width: 860px) { .biz-chip { display: inline-flex; } }
@media (prefers-reduced-motion: reduce) { .company.switch.nudge::after, .biz-chip.nudge::after { animation: none; opacity: .9; } }
.biz-chip { margin-right: 8px; }

/* a drafted message inside the companion's answer */
.msg.it blockquote { margin-top: 8px; padding: 8px 10px; border-left: 2px solid var(--accent); background: var(--inset); border-radius: 6px; white-space: pre-line; }
.msg.it ul + p, .msg.it p + blockquote { margin-top: 8px; }

/* links the snapshot had turned into underlined text */
#main a.demo-link, #sheet a.demo-link, #pop a.demo-link { text-decoration: underline; text-underline-offset: 2px; color: inherit; }
#main a.demo-link:hover, #sheet a.demo-link:hover { color: var(--accent-ink); }
/* a label that was never a button */
.demo-static { font-size: 11px; color: var(--ink-3); }
select.demo-one { appearance: none; -webkit-appearance: none; background: none; border: 0; padding: 0; color: inherit; font: inherit; opacity: 1; }
/* the demo shows only pages with records, so the switch for all pages has nothing to do */
#sidebar [data-act="menuAll"] { display: none; }
/* an upload button carries its file field inside; the field itself stays out of sight */
label.btn input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
label.btn { position: relative; max-width: 100%; }
/* an empty header cell over the row tick boxes is not a control */
table.t th.chk:empty { cursor: default; }
