/* Companai 3 button. .btn is the primary action; .plain/.ghost are secondary; .sm/.lg sizes. Restyles existing markup, no view changes. */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 14px;border:0;border-radius:var(--r-md);font-weight:500;font-size:var(--fs-base);letter-spacing:-.005em;white-space:nowrap;text-decoration:none;cursor:pointer;
  background:linear-gradient(180deg,var(--pri-from),var(--pri-to));color:var(--on-acc);box-shadow:var(--glow),inset 0 1px 0 var(--pri-shine);
  transition:transform var(--t-fast) var(--ease),box-shadow var(--t) var(--ease),background var(--t)}
.btn:hover{background:linear-gradient(180deg,var(--pri-from),var(--pri-to));box-shadow:var(--glow-hover),inset 0 1px 0 var(--pri-shine)}
.btn:active{transform:scale(.97)}
.btn:focus-visible{outline:none;box-shadow:var(--glow-ring)}
.btn.plain,.btn.ghost{background:var(--surface2);color:var(--ink2);box-shadow:var(--sh),inset 0 1px 0 var(--edge2)}
.btn.ghost{color:var(--acc-ink)}
.btn.plain:hover,.btn.ghost:hover{background:var(--surface3);color:var(--ink);box-shadow:var(--sh-hover)}
.btn.sm{height:28px;padding:0 10px;font-size:var(--fs-sm);border-radius:var(--r-sm)}
.btn.lg{height:40px;padding:0 18px;font-size:var(--fs-md)}
.btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none;background:var(--surface3);color:var(--muted);box-shadow:none}
.link{color:var(--acc-ink);font-weight:500;text-decoration:none;border-bottom:1px solid var(--acc-line)}
.link:hover{border-bottom-color:var(--acc)}
